@ozdao/martyrs 0.2.601 → 0.2.603

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 (717) hide show
  1. package/dist/{abac-BPl9Bmf9.js → abac-Blt8bUTL.js} +3 -3
  2. package/dist/{addUserStatusFields-Cc-JpmPo.js → addUserStatusFields-CjV_sbh7.js} +2 -2
  3. package/dist/auth.server.js +57 -2
  4. package/dist/builder.js +148 -85
  5. package/dist/community.server.js +11 -11
  6. package/dist/core.server.js +2 -2
  7. package/dist/{core.verifier-gPPX_jhf.js → core.verifier-DVB2a21y.js} +6 -3
  8. package/dist/{crud-DpOXTZep.js → crud-BT5FIvQC.js} +2 -3
  9. package/dist/engagement.schema-B-Cc_NsG.js +6 -0
  10. package/dist/events.server.js +3 -3
  11. package/dist/gallery.server.js +1 -1
  12. package/dist/governance.server.js +1632 -0
  13. package/dist/icons.server.js +267 -0
  14. package/dist/inventory.server.js +6 -6
  15. package/dist/martyrs/dist/martyrs.es3.js +116 -0
  16. package/dist/martyrs/dist/martyrs.es3.js.map +1 -0
  17. package/dist/martyrs/dist/martyrs.es39.js +124 -0
  18. package/dist/martyrs/dist/martyrs.es39.js.map +1 -0
  19. package/dist/martyrs/dist/martyrs.es43.js +30 -0
  20. package/dist/martyrs/dist/martyrs.es43.js.map +1 -0
  21. package/dist/martyrs/dist/martyrs.es44.js +28 -0
  22. package/dist/martyrs/dist/martyrs.es44.js.map +1 -0
  23. package/dist/martyrs/dist/martyrs.es46.js +10 -0
  24. package/dist/martyrs/dist/martyrs.es46.js.map +1 -0
  25. package/dist/martyrs/src/components/Address/{Address.vue.js → Address.vue2.js} +2 -2
  26. package/dist/martyrs/src/components/Address/Address.vue2.js.map +1 -0
  27. package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
  28. package/dist/martyrs/src/components/Block/Block.vue.js.map +1 -1
  29. package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +8 -5
  30. package/dist/martyrs/src/components/Button/Button.vue2.js.map +1 -0
  31. package/dist/martyrs/src/components/EditImages/{EditImages.vue2.js → EditImages.vue.js} +2 -2
  32. package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +1 -0
  33. package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
  34. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +4 -4
  35. package/dist/martyrs/src/components/LocationMarker/{LocationMarker.vue.js → LocationMarker.vue2.js} +2 -2
  36. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.js.map +1 -0
  37. package/dist/martyrs/src/components/Menu/{Menu.vue2.js → Menu.vue.js} +2 -2
  38. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +1 -0
  39. package/dist/martyrs/src/components/Select/{Select.vue2.js → Select.vue.js} +2 -2
  40. package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -0
  41. package/dist/martyrs/src/components/Tab/{Tab.vue2.js → Tab.vue.js} +2 -2
  42. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +1 -0
  43. package/dist/martyrs/src/components/Table/StatusBadge.vue.js +19 -10
  44. package/dist/martyrs/src/components/Table/StatusBadge.vue.js.map +1 -1
  45. package/dist/martyrs/src/components/Text/Text.vue.js +1 -1
  46. package/dist/martyrs/src/components/Text/Text.vue.js.map +1 -1
  47. package/dist/martyrs/src/modules/auth/views/components/blocks/OtpDialog.vue.js +2 -2
  48. package/dist/martyrs/src/modules/auth/views/components/blocks/PopupAuth.vue.js +3 -3
  49. package/dist/martyrs/src/modules/auth/views/components/blocks/PopupAuth.vue.js.map +1 -1
  50. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +3 -3
  51. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  52. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +17 -21
  53. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js.map +1 -1
  54. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +13 -13
  55. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +2 -2
  56. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +3 -3
  57. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +42 -4
  58. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  59. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +3 -3
  60. package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.js +34 -66
  61. package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.js.map +1 -1
  62. package/dist/martyrs/src/modules/auth/views/router/users.router.js +0 -53
  63. package/dist/martyrs/src/modules/auth/views/router/users.router.js.map +1 -1
  64. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js +515 -103
  65. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
  66. package/dist/martyrs/src/modules/backoffice/configs/navigation.backoffice.config.js +1 -3
  67. package/dist/martyrs/src/modules/backoffice/configs/navigation.backoffice.config.js.map +1 -1
  68. package/dist/martyrs/src/modules/backoffice/router/backoffice.router.js +1 -32
  69. package/dist/martyrs/src/modules/backoffice/router/backoffice.router.js.map +1 -1
  70. package/dist/martyrs/src/modules/community/community.client.js +49 -8
  71. package/dist/martyrs/src/modules/community/community.client.js.map +1 -1
  72. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +10 -4
  73. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js.map +1 -1
  74. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +4 -4
  75. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  76. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +2 -2
  77. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
  78. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +28 -17
  79. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
  80. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +36 -28
  81. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js.map +1 -1
  82. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +2 -2
  83. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
  84. package/dist/martyrs/src/modules/community/router/community.backoffice.router.js +21 -0
  85. package/dist/martyrs/src/modules/community/router/community.backoffice.router.js.map +1 -0
  86. package/dist/martyrs/src/modules/community/router/community.organization.router.js +70 -0
  87. package/dist/martyrs/src/modules/community/router/community.organization.router.js.map +1 -0
  88. package/dist/martyrs/src/modules/community/router/community.router.js +73 -0
  89. package/dist/martyrs/src/modules/community/router/community.router.js.map +1 -0
  90. package/dist/martyrs/src/modules/community/router/community.user.router.js +20 -0
  91. package/dist/martyrs/src/modules/community/router/community.user.router.js.map +1 -0
  92. package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.js +1 -1
  93. package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.js.map +1 -1
  94. package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js.map +1 -1
  95. package/dist/martyrs/src/modules/core/views/classes/core.app.js +5 -3
  96. package/dist/martyrs/src/modules/core/views/classes/core.app.js.map +1 -1
  97. package/dist/martyrs/src/modules/core/views/classes/i18n.manager.js +7 -2
  98. package/dist/martyrs/src/modules/core/views/classes/i18n.manager.js.map +1 -1
  99. package/dist/martyrs/src/modules/core/views/classes/ws.manager.js +11 -5
  100. package/dist/martyrs/src/modules/core/views/classes/ws.manager.js.map +1 -1
  101. package/dist/martyrs/src/modules/core/views/components/blocks/Card.vue.js +53 -18
  102. package/dist/martyrs/src/modules/core/views/components/blocks/Card.vue.js.map +1 -1
  103. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +1 -1
  104. package/dist/martyrs/src/modules/core/views/components/blocks/CardStat.vue.js +44 -0
  105. package/dist/martyrs/src/modules/core/views/components/blocks/CardStat.vue.js.map +1 -0
  106. package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +5 -5
  107. package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.js +1 -1
  108. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +9 -6
  109. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js.map +1 -1
  110. package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.js +5 -5
  111. package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
  112. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +15 -15
  113. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js.map +1 -1
  114. package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.js +2 -2
  115. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +27 -28
  116. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js.map +1 -1
  117. package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +6 -6
  118. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js +5 -7
  119. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js.map +1 -1
  120. package/dist/martyrs/src/modules/core/views/components/sections/{Filters.vue2.js → Filters.vue.js} +2 -2
  121. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue.js.map +1 -0
  122. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js +28 -18
  123. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js.map +1 -1
  124. package/dist/martyrs/src/modules/core/views/mixins/mixins.js +3 -3
  125. package/dist/martyrs/src/modules/core/views/mixins/mixins.js.map +1 -1
  126. package/dist/martyrs/src/modules/core/views/router/addRoutes.js +2 -3
  127. package/dist/martyrs/src/modules/core/views/router/addRoutes.js.map +1 -1
  128. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js +10 -0
  129. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js.map +1 -1
  130. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +4 -4
  131. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +2 -2
  132. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +3 -3
  133. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +9 -9
  134. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
  135. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
  136. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -0
  137. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
  138. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +23 -33
  139. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js.map +1 -1
  140. package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +13 -13
  141. package/dist/martyrs/src/modules/events/components/sections/List.vue.js +2 -2
  142. package/dist/martyrs/src/modules/events/components/sections/List.vue.js.map +1 -1
  143. package/dist/martyrs/src/modules/events/events.client.js +37 -15
  144. package/dist/martyrs/src/modules/events/events.client.js.map +1 -1
  145. package/dist/martyrs/src/modules/events/router/events.backoffice.router.js +95 -0
  146. package/dist/martyrs/src/modules/events/router/events.backoffice.router.js.map +1 -0
  147. package/dist/martyrs/src/modules/events/router/events.organization.router.js +95 -0
  148. package/dist/martyrs/src/modules/events/router/events.organization.router.js.map +1 -0
  149. package/dist/martyrs/src/modules/events/router/events.router.js +73 -364
  150. package/dist/martyrs/src/modules/events/router/events.router.js.map +1 -1
  151. package/dist/martyrs/src/modules/events/router/events.user.router.js +65 -0
  152. package/dist/martyrs/src/modules/events/router/events.user.router.js.map +1 -0
  153. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +5 -5
  154. package/dist/martyrs/src/modules/governance/configs/navigation.initiative.config.js +33 -0
  155. package/dist/martyrs/src/modules/governance/configs/navigation.initiative.config.js.map +1 -0
  156. package/dist/martyrs/src/modules/governance/governance.client.js +31 -0
  157. package/dist/martyrs/src/modules/governance/governance.client.js.map +1 -0
  158. package/dist/martyrs/src/modules/governance/views/components/blocks/CardInitiativeItem.vue.js +110 -0
  159. package/dist/martyrs/src/modules/governance/views/components/blocks/CardInitiativeItem.vue.js.map +1 -0
  160. package/dist/martyrs/src/modules/governance/views/components/blocks/CardSprintItem.vue.js +105 -0
  161. package/dist/martyrs/src/modules/governance/views/components/blocks/CardSprintItem.vue.js.map +1 -0
  162. package/dist/martyrs/src/modules/governance/views/components/blocks/CardTaskItem.vue.js +110 -0
  163. package/dist/martyrs/src/modules/governance/views/components/blocks/CardTaskItem.vue.js.map +1 -0
  164. package/dist/martyrs/src/modules/governance/views/components/blocks/CardVotingItem.vue.js +106 -0
  165. package/dist/martyrs/src/modules/governance/views/components/blocks/CardVotingItem.vue.js.map +1 -0
  166. package/dist/martyrs/src/modules/governance/views/components/pages/Governance.vue.js +52 -0
  167. package/dist/martyrs/src/modules/governance/views/components/pages/Governance.vue.js.map +1 -0
  168. package/dist/martyrs/src/modules/governance/views/components/pages/Initiative.vue.js +684 -0
  169. package/dist/martyrs/src/modules/governance/views/components/pages/Initiative.vue.js.map +1 -0
  170. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeCreate.vue.js +78 -0
  171. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeCreate.vue.js.map +1 -0
  172. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeSprints.vue.js +328 -0
  173. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeSprints.vue.js.map +1 -0
  174. package/dist/martyrs/src/modules/governance/views/components/pages/Initiatives.vue.js +145 -0
  175. package/dist/martyrs/src/modules/governance/views/components/pages/Initiatives.vue.js.map +1 -0
  176. package/dist/martyrs/src/modules/governance/views/components/pages/Sprint.vue.js +258 -0
  177. package/dist/martyrs/src/modules/governance/views/components/pages/Sprint.vue.js.map +1 -0
  178. package/dist/martyrs/src/modules/governance/views/components/pages/SprintCreate.vue.js +72 -0
  179. package/dist/martyrs/src/modules/governance/views/components/pages/SprintCreate.vue.js.map +1 -0
  180. package/dist/martyrs/src/modules/governance/views/components/pages/Task.vue.js +769 -0
  181. package/dist/martyrs/src/modules/governance/views/components/pages/Task.vue.js.map +1 -0
  182. package/dist/martyrs/src/modules/governance/views/components/pages/TaskCreate.vue.js +88 -0
  183. package/dist/martyrs/src/modules/governance/views/components/pages/TaskCreate.vue.js.map +1 -0
  184. package/dist/martyrs/src/modules/governance/views/components/pages/Tasks.vue.js +291 -0
  185. package/dist/martyrs/src/modules/governance/views/components/pages/Tasks.vue.js.map +1 -0
  186. package/dist/martyrs/src/modules/governance/views/components/pages/Voting.vue.js +267 -0
  187. package/dist/martyrs/src/modules/governance/views/components/pages/Voting.vue.js.map +1 -0
  188. package/dist/martyrs/src/modules/governance/views/components/pages/VotingCreate.vue.js +90 -0
  189. package/dist/martyrs/src/modules/governance/views/components/pages/VotingCreate.vue.js.map +1 -0
  190. package/dist/martyrs/src/modules/governance/views/components/pages/Votings.vue.js +68 -0
  191. package/dist/martyrs/src/modules/governance/views/components/pages/Votings.vue.js.map +1 -0
  192. package/dist/martyrs/src/modules/governance/views/components/partials/EmptyState.vue.js +47 -0
  193. package/dist/martyrs/src/modules/governance/views/components/partials/EmptyState.vue.js.map +1 -0
  194. package/dist/martyrs/src/modules/governance/views/components/partials/LinkedEntityCard.vue.js +164 -0
  195. package/dist/martyrs/src/modules/governance/views/components/partials/LinkedEntityCard.vue.js.map +1 -0
  196. package/dist/martyrs/src/modules/governance/views/components/partials/TaskStatusBadge.vue.js +39 -0
  197. package/dist/martyrs/src/modules/governance/views/components/partials/TaskStatusBadge.vue.js.map +1 -0
  198. package/dist/martyrs/src/modules/governance/views/components/partials/VoteForm.vue.js +112 -0
  199. package/dist/martyrs/src/modules/governance/views/components/partials/VoteForm.vue.js.map +1 -0
  200. package/dist/martyrs/src/modules/governance/views/components/partials/VotingResults.vue.js +187 -0
  201. package/dist/martyrs/src/modules/governance/views/components/partials/VotingResults.vue.js.map +1 -0
  202. package/dist/martyrs/src/modules/governance/views/components/sections/FormInitiativeDetails.vue.js +555 -0
  203. package/dist/martyrs/src/modules/governance/views/components/sections/FormInitiativeDetails.vue.js.map +1 -0
  204. package/dist/martyrs/src/modules/governance/views/components/sections/FormSprintDetails.vue.js +187 -0
  205. package/dist/martyrs/src/modules/governance/views/components/sections/FormSprintDetails.vue.js.map +1 -0
  206. package/dist/martyrs/src/modules/governance/views/components/sections/FormTaskDetails.vue.js +171 -0
  207. package/dist/martyrs/src/modules/governance/views/components/sections/FormTaskDetails.vue.js.map +1 -0
  208. package/dist/martyrs/src/modules/governance/views/components/sections/FormVotingDetails.vue.js +179 -0
  209. package/dist/martyrs/src/modules/governance/views/components/sections/FormVotingDetails.vue.js.map +1 -0
  210. package/dist/martyrs/src/modules/governance/views/router/governance.router.js +502 -0
  211. package/dist/martyrs/src/modules/governance/views/router/governance.router.js.map +1 -0
  212. package/dist/martyrs/src/modules/governance/views/store/initiatives.js +119 -0
  213. package/dist/martyrs/src/modules/governance/views/store/initiatives.js.map +1 -0
  214. package/dist/martyrs/src/modules/governance/views/store/sprints.js +99 -0
  215. package/dist/martyrs/src/modules/governance/views/store/sprints.js.map +1 -0
  216. package/dist/martyrs/src/modules/governance/views/store/tasks.js +115 -0
  217. package/dist/martyrs/src/modules/governance/views/store/tasks.js.map +1 -0
  218. package/dist/martyrs/src/modules/governance/views/store/votings.js +155 -0
  219. package/dist/martyrs/src/modules/governance/views/store/votings.js.map +1 -0
  220. package/dist/martyrs/src/modules/icons/entities/IconCash.vue.js +70 -0
  221. package/dist/martyrs/src/modules/icons/entities/IconCash.vue.js.map +1 -0
  222. package/dist/martyrs/src/modules/icons/icons.client.js +1 -1
  223. package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
  224. package/dist/martyrs/src/modules/icons/{icons.router.js → router/icons.router.js} +1 -1
  225. package/dist/martyrs/src/modules/icons/router/icons.router.js.map +1 -0
  226. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +4 -4
  227. package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.js +3 -3
  228. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +2 -2
  229. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +4 -4
  230. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +6 -6
  231. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js.map +1 -1
  232. package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js +1 -1
  233. package/dist/martyrs/src/modules/music/components/blocks/ActionButtons.vue.js +9 -9
  234. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +4 -4
  235. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +2 -2
  236. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +4 -4
  237. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +7 -7
  238. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +4 -4
  239. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +4 -4
  240. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +3 -3
  241. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +4 -4
  242. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +4 -4
  243. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +1 -1
  244. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +9 -9
  245. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +13 -13
  246. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +9 -9
  247. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +9 -9
  248. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +16 -16
  249. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
  250. package/dist/martyrs/src/modules/music/components/player/FullscreenPlayer.vue.js +2 -2
  251. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +4 -4
  252. package/dist/martyrs/src/modules/music/components/player/PlayerControls.vue.js +10 -10
  253. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.js +6 -6
  254. package/dist/martyrs/src/modules/music/components/sections/PopularTracks.vue.js +63 -0
  255. package/dist/martyrs/src/modules/music/components/sections/PopularTracks.vue.js.map +1 -0
  256. package/dist/martyrs/src/modules/music/music.client.js +29 -25
  257. package/dist/martyrs/src/modules/music/music.client.js.map +1 -1
  258. package/dist/martyrs/src/modules/music/{music.router.js → router/music.router.js} +16 -16
  259. package/dist/martyrs/src/modules/music/router/music.router.js.map +1 -0
  260. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +26 -27
  261. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  262. package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js +118 -59
  263. package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js.map +1 -1
  264. package/dist/martyrs/src/modules/notifications/notifications.client.js +74 -54
  265. package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
  266. package/dist/martyrs/src/modules/notifications/{notifications.router.js → router/notifications.router.js} +3 -3
  267. package/dist/martyrs/src/modules/notifications/router/notifications.router.js.map +1 -0
  268. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.js +34 -44
  269. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.js.map +1 -1
  270. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.js +47 -57
  271. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.js.map +1 -1
  272. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js +2 -2
  273. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js.map +1 -1
  274. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +2 -2
  275. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js.map +1 -1
  276. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +4 -4
  277. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +6 -6
  278. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js.map +1 -1
  279. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +7 -7
  280. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js +61 -54
  281. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js.map +1 -1
  282. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js +43 -31
  283. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js.map +1 -1
  284. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +14 -14
  285. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +3 -3
  286. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  287. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +19 -19
  288. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  289. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +7 -10
  290. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js.map +1 -1
  291. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +7 -10
  292. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js.map +1 -1
  293. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +3 -3
  294. package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
  295. package/dist/martyrs/src/modules/orders/orders.client.js +16 -16
  296. package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
  297. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +11 -4
  298. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
  299. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +2 -2
  300. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +2 -2
  301. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +22 -15
  302. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js.map +1 -1
  303. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +2 -2
  304. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +63 -1
  305. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
  306. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +9 -3
  307. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  308. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +14 -8
  309. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
  310. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +24 -30
  311. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  312. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  313. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +3 -3
  314. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  315. package/dist/martyrs/src/modules/organizations/organizations.client.js +42 -6
  316. package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
  317. package/dist/martyrs/src/modules/organizations/router/organizations.backoffice.router.js +20 -0
  318. package/dist/martyrs/src/modules/organizations/router/organizations.backoffice.router.js.map +1 -0
  319. package/dist/martyrs/src/modules/organizations/router/organizations.router.js +102 -0
  320. package/dist/martyrs/src/modules/organizations/router/organizations.router.js.map +1 -0
  321. package/dist/martyrs/src/modules/organizations/router/organizations.user.router.js +20 -0
  322. package/dist/martyrs/src/modules/organizations/router/organizations.user.router.js.map +1 -0
  323. package/dist/martyrs/src/modules/pages/pages.client.js +1 -1
  324. package/dist/martyrs/src/modules/pages/pages.client.js.map +1 -1
  325. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  326. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +3 -3
  327. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
  328. package/dist/martyrs/src/modules/pages/{pages.router.js → views/router/pages.router.js} +8 -8
  329. package/dist/martyrs/src/modules/pages/views/router/pages.router.js.map +1 -0
  330. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
  331. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js.map +1 -1
  332. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  333. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +7 -7
  334. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +2 -2
  335. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +22 -22
  336. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +5 -5
  337. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  338. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +3 -3
  339. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +4 -4
  340. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +21 -21
  341. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +4 -4
  342. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +4 -4
  343. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +4 -4
  344. package/dist/martyrs/src/modules/rents/rents.client.js +1 -1
  345. package/dist/martyrs/src/modules/rents/rents.client.js.map +1 -1
  346. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +7 -7
  347. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  348. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +4 -4
  349. package/dist/martyrs/src/modules/rents/{rents.router.js → views/router/rents.router.js} +4 -4
  350. package/dist/martyrs/src/modules/rents/views/router/rents.router.js.map +1 -0
  351. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +3 -3
  352. package/dist/martyrs/src/modules/reports/reports.client.js +1 -1
  353. package/dist/martyrs/src/modules/reports/reports.client.js.map +1 -1
  354. package/dist/martyrs/src/modules/reports/{reports.router.js → router/reports.router.js} +1 -1
  355. package/dist/martyrs/src/modules/reports/router/reports.router.js.map +1 -0
  356. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
  357. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +2 -2
  358. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +13 -13
  359. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +22 -22
  360. package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.js +68 -0
  361. package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.js.map +1 -0
  362. package/dist/martyrs/src/modules/wallet/views/router/wallet.router.js +48 -0
  363. package/dist/martyrs/src/modules/wallet/views/router/wallet.router.js.map +1 -0
  364. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js +59 -0
  365. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js.map +1 -0
  366. package/dist/martyrs/src/modules/wallet/wallet.client.js +20 -0
  367. package/dist/martyrs/src/modules/wallet/wallet.client.js.map +1 -0
  368. package/dist/martyrs.es.js +84 -41
  369. package/dist/martyrs.es10.js +126 -0
  370. package/dist/martyrs.es100.js +33 -0
  371. package/dist/martyrs.es102.js +39 -0
  372. package/dist/martyrs.es103.js +31 -0
  373. package/dist/martyrs.es105.js +27 -0
  374. package/dist/martyrs.es106.js +8 -0
  375. package/dist/martyrs.es107.js +9 -0
  376. package/dist/martyrs.es108.js +79 -0
  377. package/dist/martyrs.es109.js +7 -0
  378. package/dist/martyrs.es11.js +49 -0
  379. package/dist/{web-n_ivHO3v.js → martyrs.es110.js} +1 -1
  380. package/dist/martyrs.es111.js +327 -0
  381. package/dist/martyrs.es112.js +121 -0
  382. package/dist/martyrs.es115.js +4 -0
  383. package/dist/martyrs.es116.js +25 -0
  384. package/dist/martyrs.es117.js +7 -0
  385. package/dist/martyrs.es118.js +10 -0
  386. package/dist/martyrs.es119.js +169 -0
  387. package/dist/martyrs.es12.js +94 -0
  388. package/dist/martyrs.es120.js +460 -0
  389. package/dist/martyrs.es121.js +42 -0
  390. package/dist/martyrs.es122.js +12 -0
  391. package/dist/martyrs.es123.js +52 -0
  392. package/dist/martyrs.es124.js +14 -0
  393. package/dist/martyrs.es125.js +47 -0
  394. package/dist/martyrs.es126.js +7 -0
  395. package/dist/martyrs.es127.js +131 -0
  396. package/dist/martyrs.es128.js +103 -0
  397. package/dist/martyrs.es129.js +89 -0
  398. package/dist/martyrs.es13.js +48 -0
  399. package/dist/martyrs.es130.js +40 -0
  400. package/dist/martyrs.es131.js +14 -0
  401. package/dist/martyrs.es132.js +42 -0
  402. package/dist/martyrs.es133.js +11 -0
  403. package/dist/martyrs.es134.js +6 -0
  404. package/dist/martyrs.es135.js +119 -0
  405. package/dist/martyrs.es136.js +20 -0
  406. package/dist/martyrs.es137.js +18 -0
  407. package/dist/martyrs.es138.js +35 -0
  408. package/dist/martyrs.es139.js +12 -0
  409. package/dist/martyrs.es14.js +101 -0
  410. package/dist/martyrs.es140.js +23 -0
  411. package/dist/martyrs.es141.js +12 -0
  412. package/dist/martyrs.es142.js +11 -0
  413. package/dist/martyrs.es143.js +47 -0
  414. package/dist/martyrs.es144.js +483 -0
  415. package/dist/martyrs.es145.js +8 -0
  416. package/dist/martyrs.es146.js +4 -0
  417. package/dist/martyrs.es147.js +14 -0
  418. package/dist/martyrs.es148.js +33 -0
  419. package/dist/martyrs.es149.js +19 -0
  420. package/dist/martyrs.es15.js +408 -0
  421. package/dist/martyrs.es150.js +22 -0
  422. package/dist/martyrs.es151.js +31 -0
  423. package/dist/martyrs.es152.js +23 -0
  424. package/dist/martyrs.es16.js +58 -0
  425. package/dist/martyrs.es17.js +44 -0
  426. package/dist/martyrs.es18.js +42 -0
  427. package/dist/martyrs.es19.js +27 -0
  428. package/dist/martyrs.es2.js +88 -0
  429. package/dist/martyrs.es20.js +13 -0
  430. package/dist/martyrs.es21.js +57 -0
  431. package/dist/martyrs.es22.js +104 -0
  432. package/dist/martyrs.es23.js +178 -0
  433. package/dist/martyrs.es24.js +123 -0
  434. package/dist/martyrs.es25.js +139 -0
  435. package/dist/martyrs.es26.js +21 -0
  436. package/dist/martyrs.es27.js +60 -0
  437. package/dist/martyrs.es28.js +75 -0
  438. package/dist/martyrs.es29.js +36 -0
  439. package/dist/martyrs.es3.js +116 -0
  440. package/dist/martyrs.es30.js +348 -0
  441. package/dist/martyrs.es31.js +83 -0
  442. package/dist/martyrs.es32.js +148 -0
  443. package/dist/martyrs.es33.js +175 -0
  444. package/dist/martyrs.es34.js +66 -0
  445. package/dist/martyrs.es35.js +57 -0
  446. package/dist/martyrs.es36.js +76 -0
  447. package/dist/martyrs.es37.js +101 -0
  448. package/dist/martyrs.es38.js +39 -0
  449. package/dist/martyrs.es39.js +124 -0
  450. package/dist/martyrs.es4.js +85 -0
  451. package/dist/martyrs.es40.js +120 -0
  452. package/dist/martyrs.es41.js +229 -0
  453. package/dist/martyrs.es43.js +29 -0
  454. package/dist/martyrs.es44.js +27 -0
  455. package/dist/martyrs.es46.js +9 -0
  456. package/dist/martyrs.es48.js +18 -0
  457. package/dist/martyrs.es5.js +395 -0
  458. package/dist/martyrs.es50.js +42 -0
  459. package/dist/martyrs.es52.js +255 -0
  460. package/dist/martyrs.es54.js +8 -0
  461. package/dist/martyrs.es6.js +70 -0
  462. package/dist/martyrs.es61.js +139 -0
  463. package/dist/martyrs.es65.js +28 -0
  464. package/dist/martyrs.es68.js +33 -0
  465. package/dist/martyrs.es69.js +37 -0
  466. package/dist/martyrs.es7.js +17 -0
  467. package/dist/martyrs.es71.js +114 -0
  468. package/dist/martyrs.es73.js +83 -0
  469. package/dist/martyrs.es74.js +52 -0
  470. package/dist/martyrs.es75.js +75 -0
  471. package/dist/martyrs.es76.js +176 -0
  472. package/dist/martyrs.es77.js +31 -0
  473. package/dist/martyrs.es78.js +38 -0
  474. package/dist/martyrs.es8.js +127 -0
  475. package/dist/martyrs.es81.js +32 -0
  476. package/dist/martyrs.es86.js +37 -0
  477. package/dist/martyrs.es89.js +37 -0
  478. package/dist/martyrs.es9.js +396 -0
  479. package/dist/martyrs.es91.js +63 -0
  480. package/dist/martyrs.es92.js +7 -0
  481. package/dist/martyrs.es93.js +35 -0
  482. package/dist/martyrs.es95.js +41 -0
  483. package/dist/martyrs.es96.js +59 -0
  484. package/dist/martyrs.es97.js +123 -0
  485. package/dist/martyrs.es98.js +43 -0
  486. package/dist/martyrs.es99.js +86 -0
  487. package/dist/music.server.js +11 -11
  488. package/dist/notifications.server.js +16 -6
  489. package/dist/orders.server.js +264 -145
  490. package/dist/organizations.server.js +22 -6
  491. package/dist/products.server.js +7 -7
  492. package/dist/rents.server.js +4 -3
  493. package/dist/style.css +970 -986
  494. package/package.json +13 -6
  495. package/src/builder/modes/ssr.rspack.dev.js +32 -20
  496. package/src/builder/rspack/rspack.config.api.js +3 -0
  497. package/src/builder/rspack/rspack.config.base.js +9 -1
  498. package/src/builder/rspack/rspack.config.ssr.client.js +27 -10
  499. package/src/components/Block/Block.vue +1 -1
  500. package/src/components/Button/Button.vue +4 -4
  501. package/src/components/Table/StatusBadge.vue +24 -18
  502. package/src/components/Text/Text.vue +1 -1
  503. package/src/jit/core.js +72 -35
  504. package/src/jit/plugin.js +4 -3
  505. package/src/jit/rules.js +15 -15
  506. package/src/modules/TASKS.MD +30 -0
  507. package/src/modules/TASK_ACTIVITY.md +60 -0
  508. package/src/modules/TASK_MODULE_ARCH.md +391 -0
  509. package/src/modules/auth/controllers/routes/users.routes.js +8 -0
  510. package/src/modules/auth/controllers/services/users.service.js +51 -1
  511. package/src/modules/auth/views/components/blocks/PopupAuth.vue +1 -1
  512. package/src/modules/auth/views/components/pages/ProfileBlogposts.vue +25 -24
  513. package/src/modules/auth/views/components/pages/SignIn.vue +10 -1
  514. package/src/modules/auth/views/components/pages/UserDashboard.vue +35 -62
  515. package/src/modules/auth/views/router/users.router.js +0 -44
  516. package/src/modules/backoffice/components/pages/Dashboard.vue +423 -120
  517. package/src/modules/backoffice/configs/navigation.backoffice.config.js +0 -2
  518. package/src/modules/backoffice/router/backoffice.router.js +0 -25
  519. package/src/modules/community/community.client.js +54 -9
  520. package/src/modules/community/components/blocks/CardBlogpost.vue +10 -3
  521. package/src/modules/community/components/layouts/Community.vue +3 -3
  522. package/src/modules/community/components/pages/BlogPost.vue +1 -1
  523. package/src/modules/community/components/pages/CreateBlogPost.vue +19 -20
  524. package/src/modules/community/components/pages/Posts.vue +43 -28
  525. package/src/modules/community/components/sections/Comment.vue +1 -1
  526. package/src/modules/community/controllers/blog.controller.js +4 -5
  527. package/src/modules/community/models/reaction.model.js +1 -0
  528. package/src/modules/community/router/community.backoffice.router.js +16 -0
  529. package/src/modules/community/router/community.organization.router.js +56 -0
  530. package/src/modules/community/router/community.router.js +58 -106
  531. package/src/modules/community/router/community.user.router.js +15 -0
  532. package/src/modules/constructor/components/elements/Textarea.vue +1 -1
  533. package/src/modules/constructor/components/sections/Constructor.vue +1 -1
  534. package/src/modules/core/controllers/classes/core.validator.js +7 -1
  535. package/src/modules/core/controllers/classes/core.verifier.js +0 -2
  536. package/src/modules/core/controllers/classes/crud/crud.controller.js +0 -4
  537. package/src/modules/core/controllers/classes/crud/crud.service.js +1 -0
  538. package/src/modules/core/models/schemas/engagement.schema.js +19 -22
  539. package/src/modules/core/views/classes/core.app.js +6 -4
  540. package/src/modules/core/views/classes/i18n.manager.js +9 -2
  541. package/src/modules/core/views/classes/ws.manager.js +17 -7
  542. package/src/modules/core/views/components/blocks/Card.vue +47 -24
  543. package/src/modules/core/views/components/blocks/CardStat.vue +27 -0
  544. package/src/modules/core/views/components/blocks/PopupAuth.vue +1 -1
  545. package/src/modules/core/views/components/layouts/Client.vue +5 -4
  546. package/src/modules/core/views/components/partials/BottomNavigationBar.vue +5 -5
  547. package/src/modules/core/views/components/partials/Header.vue +2 -2
  548. package/src/modules/core/views/components/partials/Navigation.vue +13 -14
  549. package/src/modules/core/views/components/partials/Sidebar.vue +4 -6
  550. package/src/modules/core/views/components/sections/SectionPageTitle.vue +23 -15
  551. package/src/modules/core/views/mixins/mixins.js +4 -3
  552. package/src/modules/core/views/router/addRoutes.js +1 -2
  553. package/src/modules/core/views/utils/vue-app-renderer.js +12 -0
  554. package/src/modules/events/components/pages/EditEventTickets.vue +1 -1
  555. package/src/modules/events/components/pages/Events.vue +1 -0
  556. package/src/modules/events/components/pages/EventsBackoffice.vue +23 -48
  557. package/src/modules/events/components/sections/List.vue +2 -2
  558. package/src/modules/events/events.client.js +44 -17
  559. package/src/modules/events/router/events.backoffice.router.js +80 -0
  560. package/src/modules/events/router/events.organization.router.js +80 -0
  561. package/src/modules/events/router/events.router.js +55 -325
  562. package/src/modules/events/router/events.user.router.js +49 -0
  563. package/src/modules/governance/TASK-TRACKER.MD +534 -39
  564. package/src/modules/governance/configs/navigation.initiative.config.js +30 -0
  565. package/src/modules/governance/controllers/routes/initiatives.routes.js +55 -8
  566. package/src/modules/governance/controllers/routes/{milestones.routes.js → sprints.routes.js} +22 -22
  567. package/src/modules/governance/controllers/routes/tasks.routes.js +2 -2
  568. package/src/modules/governance/governance.client.js +1 -4
  569. package/src/modules/governance/governance.server.js +6 -6
  570. package/src/modules/governance/middlewares/initiatives.verifier.js +60 -0
  571. package/src/modules/governance/middlewares/{milestones.verifier.js → sprints.verifier.js} +10 -10
  572. package/src/modules/governance/middlewares/tasks.verifier.js +4 -4
  573. package/src/modules/governance/middlewares/votings.verifier.js +25 -7
  574. package/src/modules/governance/models/{milestone.model.js → sprint.model.js} +11 -11
  575. package/src/modules/governance/models/task.model.js +4 -4
  576. package/src/modules/governance/models/voting.model.js +10 -5
  577. package/src/modules/governance/views/components/blocks/CardInitiativeItem.vue +8 -13
  578. package/src/modules/governance/views/components/blocks/{CardMilestoneItem.vue → CardSprintItem.vue} +16 -17
  579. package/src/modules/governance/views/components/blocks/CardTaskItem.vue +7 -9
  580. package/src/modules/governance/views/components/blocks/CardVotingItem.vue +7 -9
  581. package/src/modules/governance/views/components/pages/Governance.vue +13 -34
  582. package/src/modules/governance/views/components/pages/Initiative.vue +73 -154
  583. package/src/modules/governance/views/components/pages/InitiativeCreate.vue +44 -7
  584. package/src/modules/governance/views/components/pages/{Roadmap.vue → InitiativeSprints.vue} +70 -69
  585. package/src/modules/governance/views/components/pages/Initiatives.vue +23 -108
  586. package/src/modules/governance/views/components/pages/{Milestone.vue → Sprint.vue} +43 -41
  587. package/src/modules/governance/views/components/pages/SprintCreate.vue +55 -0
  588. package/src/modules/governance/views/components/pages/Task.vue +95 -88
  589. package/src/modules/governance/views/components/pages/TaskCreate.vue +47 -9
  590. package/src/modules/governance/views/components/pages/Tasks.vue +25 -21
  591. package/src/modules/governance/views/components/pages/Voting.vue +84 -68
  592. package/src/modules/governance/views/components/pages/VotingCreate.vue +48 -8
  593. package/src/modules/governance/views/components/pages/Votings.vue +12 -57
  594. package/src/modules/governance/views/components/partials/EmptyState.vue +1 -1
  595. package/src/modules/governance/views/components/partials/LinkedEntityCard.vue +23 -11
  596. package/src/modules/governance/views/components/partials/TaskStatusBadge.vue +1 -1
  597. package/src/modules/governance/views/components/partials/VoteForm.vue +3 -3
  598. package/src/modules/governance/views/components/partials/VotingResults.vue +13 -19
  599. package/src/modules/governance/views/components/sections/FormInitiativeDetails.vue +413 -15
  600. package/src/modules/governance/views/components/sections/FormSprintDetails.vue +156 -0
  601. package/src/modules/governance/views/components/sections/FormTaskDetails.vue +125 -21
  602. package/src/modules/governance/views/components/sections/FormVotingDetails.vue +136 -17
  603. package/src/modules/governance/views/components/sections/VoteForm.vue +2 -2
  604. package/src/modules/governance/views/router/governance.router.js +255 -151
  605. package/src/modules/governance/views/store/initiatives.js +23 -2
  606. package/src/modules/governance/views/store/sprints.js +102 -0
  607. package/src/modules/governance/views/store/tasks.js +25 -9
  608. package/src/modules/governance/views/store/votings.js +106 -27
  609. package/src/modules/icons/icons.client.js +1 -1
  610. package/src/modules/inventory/components/pages/InventoryEdit.vue +1 -1
  611. package/src/modules/music/components/sections/PopularTracks.vue +52 -0
  612. package/src/modules/music/music.client.js +8 -1
  613. package/src/modules/music/router/music.router.js +13 -1
  614. package/src/modules/notifications/components/elements/NotificationBadge.vue +8 -33
  615. package/src/modules/notifications/components/sections/NotificationPreferences.vue +110 -48
  616. package/src/modules/notifications/notifications.client.js +78 -57
  617. package/src/modules/notifications/router/notifications.router.js +32 -15
  618. package/src/modules/notifications/services/notification.service.js +15 -6
  619. package/src/modules/notifications/services/web-push.service.js +2 -0
  620. package/src/modules/orders/components/blocks/CardApplication.vue +20 -40
  621. package/src/modules/orders/components/blocks/CardCustomer.vue +35 -55
  622. package/src/modules/orders/components/blocks/CardOrderItem.vue +2 -2
  623. package/src/modules/orders/components/blocks/CardOrderUser.vue +2 -2
  624. package/src/modules/orders/components/forms/FormCustomerDetails.vue +2 -2
  625. package/src/modules/orders/components/pages/Applications.vue +59 -57
  626. package/src/modules/orders/components/pages/Customers.vue +40 -27
  627. package/src/modules/orders/components/pages/OrderCreate.vue +1 -1
  628. package/src/modules/orders/components/sections/ApplicationDetails.vue +1 -4
  629. package/src/modules/orders/components/sections/CustomerDetails.vue +1 -4
  630. package/src/modules/orders/controllers/orders.controller.js +113 -0
  631. package/src/modules/orders/middlewares/applications.verifier.js +13 -37
  632. package/src/modules/orders/middlewares/customers.verifier.js +44 -121
  633. package/src/modules/orders/models/customer.model.js +0 -1
  634. package/src/modules/orders/routes/applications.routes.js +108 -50
  635. package/src/modules/orders/routes/orders.routes.js +9 -1
  636. package/src/modules/organizations/components/blocks/CardOrganization.vue +12 -4
  637. package/src/modules/organizations/components/forms/DepartmentForm.vue +9 -4
  638. package/src/modules/organizations/components/pages/Members.vue +62 -1
  639. package/src/modules/organizations/components/pages/Organization.new.vue +17 -17
  640. package/src/modules/organizations/components/pages/Organization.vue +8 -1
  641. package/src/modules/organizations/components/pages/OrganizationBackoffice.vue +1 -1
  642. package/src/modules/organizations/components/pages/OrganizationEdit.vue +11 -4
  643. package/src/modules/organizations/components/pages/Organizations.vue +33 -46
  644. package/src/modules/organizations/controllers/invites.controller.js +19 -0
  645. package/src/modules/organizations/controllers/memberships.controller.js +1 -0
  646. package/src/modules/organizations/organizations.client.js +48 -7
  647. package/src/modules/organizations/router/organizations.backoffice.router.js +15 -0
  648. package/src/modules/organizations/router/organizations.router.js +72 -112
  649. package/src/modules/organizations/router/organizations.user.router.js +15 -0
  650. package/src/modules/pages/pages.client.js +1 -1
  651. package/src/modules/pages/views/router/pages.router.js +95 -15
  652. package/src/modules/products/components/blocks/CardPosition.vue +1 -1
  653. package/src/modules/products/components/pages/Products.vue +3 -3
  654. package/src/modules/rents/controllers/services/rents.services.js +1 -0
  655. package/src/modules/rents/rents.client.js +1 -1
  656. package/src/modules/rents/views/router/rents.router.js +93 -33
  657. package/src/modules/reports/reports.client.js +1 -1
  658. package/src/modules/wallet/wallet.client.js +1 -1
  659. package/src/styles/theme.scss +5 -3
  660. package/dist/engagement.schema-fh6W1fb_.js +0 -24
  661. package/dist/main-DQm5pwFO.js +0 -8213
  662. package/dist/martyrs/dist/main-DQm5pwFO.js +0 -1080
  663. package/dist/martyrs/dist/main-DQm5pwFO.js.map +0 -1
  664. package/dist/martyrs/dist/web-n_ivHO3v.js +0 -55
  665. package/dist/martyrs/dist/web-n_ivHO3v.js.map +0 -1
  666. package/dist/martyrs/src/components/Address/Address.vue.js.map +0 -1
  667. package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
  668. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js.map +0 -1
  669. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js.map +0 -1
  670. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
  671. package/dist/martyrs/src/components/Select/Select.vue2.js.map +0 -1
  672. package/dist/martyrs/src/components/Tab/Tab.vue2.js.map +0 -1
  673. package/dist/martyrs/src/modules/community/community.router.js +0 -124
  674. package/dist/martyrs/src/modules/community/community.router.js.map +0 -1
  675. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue2.js.map +0 -1
  676. package/dist/martyrs/src/modules/icons/icons.router.js.map +0 -1
  677. package/dist/martyrs/src/modules/music/music.router.js.map +0 -1
  678. package/dist/martyrs/src/modules/notifications/notifications.router.js.map +0 -1
  679. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +0 -200
  680. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +0 -1
  681. package/dist/martyrs/src/modules/organizations/organizations.router.js +0 -145
  682. package/dist/martyrs/src/modules/organizations/organizations.router.js.map +0 -1
  683. package/dist/martyrs/src/modules/pages/pages.router.js.map +0 -1
  684. package/dist/martyrs/src/modules/rents/rents.router.js.map +0 -1
  685. package/dist/martyrs/src/modules/reports/reports.router.js.map +0 -1
  686. package/dist/martyrs.css +0 -1
  687. package/dist/node_modules/.pnpm/@capacitor_device@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/device/dist/esm/index.js +0 -8
  688. package/dist/node_modules/.pnpm/@capacitor_device@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/device/dist/esm/index.js.map +0 -1
  689. package/dist/node_modules/.pnpm/@capacitor_device@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/device/dist/esm/web.js +0 -146
  690. package/dist/node_modules/.pnpm/@capacitor_device@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/device/dist/esm/web.js.map +0 -1
  691. package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/keyboard/dist/esm/definitions.js +0 -18
  692. package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/keyboard/dist/esm/definitions.js.map +0 -1
  693. package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/keyboard/dist/esm/index.js +0 -9
  694. package/dist/node_modules/.pnpm/@capacitor_keyboard@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/keyboard/dist/esm/index.js.map +0 -1
  695. package/dist/node_modules/.pnpm/@capacitor_push-notifications@7.0.3_@capacitor_core@7.4.4/node_modules/@capacitor/push-notifications/dist/esm/index.js +0 -6
  696. package/dist/node_modules/.pnpm/@capacitor_push-notifications@7.0.3_@capacitor_core@7.4.4/node_modules/@capacitor/push-notifications/dist/esm/index.js.map +0 -1
  697. package/src/jit/.claude/settings.local.json +0 -10
  698. package/src/modules/community/community.router.js +0 -107
  699. package/src/modules/governance/governance.router.js +0 -350
  700. package/src/modules/governance/seed-governance.js +0 -348
  701. package/src/modules/governance/views/components/pages/InitiativeMilestones.vue +0 -159
  702. package/src/modules/governance/views/router/goverance.router.js +0 -290
  703. package/src/modules/governance/views/store/votes.js +0 -113
  704. package/src/modules/icons/icons.router.js +0 -29
  705. package/src/modules/marketplace/marketplace.router.js +0 -66
  706. package/src/modules/music/.claude/settings.local.json +0 -8
  707. package/src/modules/music/music.router.js +0 -188
  708. package/src/modules/notifications/notifications.router.js +0 -47
  709. package/src/modules/orders/orders.router.js +0 -255
  710. package/src/modules/organizations/organizations.router.js +0 -123
  711. package/src/modules/organizations/router/backoffice.router.js +0 -27
  712. package/src/modules/organizations/router/departments.router.js +0 -15
  713. package/src/modules/organizations/router/members.router.js +0 -20
  714. package/src/modules/pages/pages.router.js +0 -107
  715. package/src/modules/rents/rents.router.js +0 -115
  716. package/src/modules/reports/reports.router.js +0 -33
  717. package/src/modules/wallet/wallet.router.js +0 -45
@@ -1,4 +1,4 @@
1
- import { ref, onMounted, computed, createElementBlock, openBlock, createElementVNode, createVNode, createBlock, createCommentVNode, unref, Transition, withCtx, Fragment, renderList, isMemoSame, createTextVNode } from "vue";
1
+ import { computed, ref, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, createBlock, createCommentVNode, unref, Transition, withCtx, Fragment, renderList, isMemoSame, createTextVNode } from "vue";
2
2
  import "isomorphic-dompurify";
3
3
  /* empty css */
4
4
  import _sfc_main$1 from "../../../constructor/components/sections/Constructor.vue.js";
@@ -6,7 +6,7 @@ import _sfc_main$2 from "../../../../components/Popup/Popup.vue.js";
6
6
  import _sfc_main$3 from "../../../../components/FieldTags/BlockTags.vue.js";
7
7
  import _sfc_main$6 from "../../../../components/Checkbox/Checkbox.vue.js";
8
8
  import Field from "../../../../components/Field/Field.vue.js";
9
- import _sfc_main$7 from "../../../../components/Button/Button.vue.js";
9
+ import Button from "../../../../components/Button/Button.vue2.js";
10
10
  import _sfc_main$5 from "../../../../components/Feed/Feed.vue.js";
11
11
  import _sfc_main$4 from "../../../core/views/components/blocks/Card.vue.js";
12
12
  import { useRoute, useRouter } from "vue-router";
@@ -42,6 +42,11 @@ const _sfc_main = {
42
42
  const { hasAccess } = useGlobalMixins();
43
43
  const route = useRoute();
44
44
  const router = useRouter();
45
+ const routePrefix = computed(() => {
46
+ const ctx = route.meta.context;
47
+ if (ctx === "organization") return "Organization";
48
+ return "";
49
+ });
45
50
  let post = ref(null);
46
51
  ref(null);
47
52
  const selectedTags = ref([]);
@@ -112,13 +117,13 @@ const _sfc_main = {
112
117
  post.value.name = post.value.content[0].content;
113
118
  if (route.params.url) {
114
119
  update(post.value).then((response) => {
115
- router.push({ name: "BlogPost", params: { url: response.url } });
120
+ router.push({ name: routePrefix.value + "BlogPost", params: { _id: route.params._id, url: response.url } });
116
121
  }).catch((error) => {
117
122
  console.log(error);
118
123
  });
119
124
  } else {
120
125
  create(post.value).then((response) => {
121
- router.push({ name: "BlogPost", params: { url: response.url } });
126
+ router.push({ name: routePrefix.value + "BlogPost", params: { _id: route.params._id, url: response.url } });
122
127
  }).catch((error) => {
123
128
  console.log(error);
124
129
  });
@@ -136,13 +141,13 @@ const _sfc_main = {
136
141
  if (route.params.url) {
137
142
  update(post.value).then((response) => {
138
143
  console.log(post.value);
139
- router.push({ name: "BlogPost", params: { url: response.url } });
144
+ router.push({ name: routePrefix.value + "BlogPost", params: { _id: route.params._id, url: response.url } });
140
145
  }).catch((error) => {
141
146
  console.error(error);
142
147
  });
143
148
  } else {
144
149
  create(post.value).then((response) => {
145
- router.push({ name: "BlogPost", params: { url: response.url } });
150
+ router.push({ name: routePrefix.value + "BlogPost", params: { _id: route.params._id, url: response.url } });
146
151
  }).catch((error) => {
147
152
  console.error(error);
148
153
  });
@@ -150,8 +155,15 @@ const _sfc_main = {
150
155
  }
151
156
  function onDelete() {
152
157
  if (confirm("Are you sure you want to delete this post?")) {
153
- remove(post.value._id).then((response) => {
154
- router.push({ name: "User Posts", params: { _id: post.value.creator.target._id } });
158
+ remove(post.value._id).then(() => {
159
+ const ctx = route.meta.context;
160
+ if (ctx === "organization") {
161
+ router.push({ name: "OrganizationPosts", params: { _id: route.params._id } });
162
+ } else if (ctx === "user") {
163
+ router.push({ name: "UserPosts", params: { _id: route.params._id } });
164
+ } else {
165
+ router.push({ name: "Blog" });
166
+ }
155
167
  }).catch((error) => {
156
168
  console.log(error);
157
169
  });
@@ -160,7 +172,6 @@ const _sfc_main = {
160
172
  return (_ctx, _cache) => {
161
173
  return openBlock(), createElementBlock("article", _hoisted_1, [
162
174
  createElementVNode("section", _hoisted_2, [
163
- _cache[10] || (_cache[10] = createElementVNode("div", { class: "w-full h-full" }, null, -1)),
164
175
  unref(post) ? (openBlock(), createBlock(_sfc_main$1, {
165
176
  key: 0,
166
177
  content: unref(post).content,
@@ -175,19 +186,19 @@ const _sfc_main = {
175
186
  key: 0,
176
187
  onClick: _cache[1] || (_cache[1] = ($event) => onDelete()),
177
188
  class: "mn-r-auto bg-red t-white t-black button"
178
- }, _cache[11] || (_cache[11] = [
189
+ }, _cache[10] || (_cache[10] = [
179
190
  createElementVNode("span", null, "Delete", -1)
180
191
  ]))) : createCommentVNode("", true),
181
192
  createElementVNode("button", {
182
193
  onClick: _cache[2] || (_cache[2] = ($event) => onDrafts()),
183
194
  class: "mn-l-auto bg-white t-black button"
184
- }, _cache[12] || (_cache[12] = [
195
+ }, _cache[11] || (_cache[11] = [
185
196
  createElementVNode("span", null, "To Drafts", -1)
186
197
  ])),
187
198
  createElementVNode("button", {
188
199
  onClick: _cache[3] || (_cache[3] = ($event) => openPulicationPopup()),
189
200
  class: "mn-l-thin bg-black t-white button"
190
- }, _cache[13] || (_cache[13] = [
201
+ }, _cache[12] || (_cache[12] = [
191
202
  createElementVNode("span", null, "Publish", -1)
192
203
  ]))
193
204
  ])
@@ -201,20 +212,20 @@ const _sfc_main = {
201
212
  class: "w-m-33r t-left pd-big bg-white radius-big"
202
213
  }, {
203
214
  default: withCtx(() => [
204
- _cache[15] || (_cache[15] = createElementVNode("h3", { class: "mn-b-small" }, "Final Touches", -1)),
215
+ _cache[14] || (_cache[14] = createElementVNode("h3", { class: "mn-b-small" }, "Final Touches", -1)),
205
216
  createVNode(_sfc_main$3, {
206
217
  onTagsChanged: _cache[4] || (_cache[4] = (newTags) => unref(post).tags = newTags),
207
218
  tags: unref(post).tags,
208
219
  class: "mn-b-small"
209
220
  }, null, 8, ["tags"]),
210
- _cache[16] || (_cache[16] = createElementVNode("h5", { class: "mn-b-small" }, "Add source:", -1)),
221
+ _cache[15] || (_cache[15] = createElementVNode("h5", { class: "mn-b-small" }, "Add source:", -1)),
211
222
  createVNode(Field, {
212
223
  field: unref(post).source,
213
224
  "onUpdate:field": _cache[5] || (_cache[5] = ($event) => unref(post).source = $event),
214
225
  placeholder: "Add full link to the source",
215
226
  class: "mn-b-medium bg-light radius-medium pd-small"
216
227
  }, null, 8, ["field"]),
217
- _cache[17] || (_cache[17] = createElementVNode("h5", { class: "mn-b-small" }, "Add to public", -1)),
228
+ _cache[16] || (_cache[16] = createElementVNode("h5", { class: "mn-b-small" }, "Add to public", -1)),
218
229
  selectedOrganization.value ? (openBlock(), createBlock(_sfc_main$4, {
219
230
  key: 0,
220
231
  photo: selectedOrganization.value.profile?.photo,
@@ -277,12 +288,12 @@ const _sfc_main = {
277
288
  class: "w-100"
278
289
  }, null, 8, ["radio"])
279
290
  ])) : createCommentVNode("", true),
280
- createVNode(_sfc_main$7, {
291
+ createVNode(Button, {
281
292
  submit: onSubmit,
282
293
  callback: _ctx.redirectTo,
283
294
  class: "w-100 bg-black t-white"
284
295
  }, {
285
- default: withCtx(() => _cache[14] || (_cache[14] = [
296
+ default: withCtx(() => _cache[13] || (_cache[13] = [
286
297
  createTextVNode("Publish")
287
298
  ])),
288
299
  _: 1
@@ -1 +1 @@
1
- {"version":3,"file":"CreateBlogPost.vue.js","sources":["../../../../../../../src/modules/community/components/pages/CreateBlogPost.vue"],"sourcesContent":["<template>\n <article \n class=\"w-100 bg-light radius-medium pos-relative\"\n >\n <section \n style=\"min-height: 100%;\"\n class=\"w-100 pd-big\"\n >\n <!-- Title -->\n <div \n class=\"w-full h-full\"\n >\n <!-- <Textarea \n v-if=\"post\" \n :prop=\"post\" \n :setFocus=\"true\"\n content=\"name\" \n placeholder=\"Enter post title\" \n class=\"h2\"\n /> -->\n </div>\n\n <Constructor \n v-if=\"post\" \n :content=\"post.content\"\n @update=\"update => post.content = update\"\n />\n\n </section>\n\n <transition name=\"scaleIn\" >\n <section v-if=\"post\" class=\"pd-small pos-sticky pos-l-0 pos-b-0 w-100 \">\n <div class=\"pd-thin radius-big bg-main w-100 flex-nowrap flex\">\n <button v-if=\"route.params.url\" @click=\"onDelete()\" class=\"mn-r-auto bg-red t-white t-black button\"><span>Delete</span></button>\n <button @click=\"onDrafts()\" class=\"mn-l-auto bg-white t-black button\"><span>To Drafts</span></button>\n <button @click=\"openPulicationPopup()\" class=\"mn-l-thin bg-black t-white button\"><span>Publish</span></button>\n </div>\n </section>\n </transition>\n\n <Popup \n @close-popup=\"closePublicationPopup\" \n :isPopupOpen=\"isPublicationPopup\"\n class=\"w-m-33r t-left pd-big bg-white radius-big\"\n >\n <h3 class=\"mn-b-small\">Final Touches</h3>\n \n <BlockTags\n @tags-changed=\"newTags => post.tags = newTags\"\n :tags=\"post.tags\"\n class=\"mn-b-small\"\n />\n\n <h5 class=\"mn-b-small\">Add source:</h5>\n <Field \n v-model:field=\"post.source\" \n placeholder=\"Add full link to the source\" \n class=\"mn-b-medium bg-light radius-medium pd-small\" \n />\n\n <h5 class=\"mn-b-small\">Add to public</h5>\n <Card\n v-if=\"selectedOrganization\"\n :photo=\"selectedOrganization.profile?.photo\"\n :title=\"selectedOrganization.profile?.name\"\n @click=\"() => { \n selectedOrganization = null\n }\"\n class=\"h-4r w-100 bg-light pd-thin radius-medium mn-b-thin\"\n />\n\n <section v-else class=\"mn-b-thin h-25r o-x-hidden o-y-scroll bg-light radius-big pd-small \">\n <Feed\n :showLoadMore=\"false\" \n :search=\"{\n placeholder: 'Search organization...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No organizations Found',\n description: 'Currently, there are no such organizations available.'\n }\n }\"\n :store=\"{\n read: (options) => organizations.actions.read(options),\n state: null\n }\"\n :options=\"{\n user: auth.state.user._id,\n postable: auth.state.user._id,\n lookup: ['memberships']\n }\"\n v-slot=\"{ \n items \n }\"\n >\n <Card\n v-for=\"(organization, index) in items\" \n v-memo=\"[organization._id, organization.profile.name]\"\n :photo=\"organization.profile?.photo\"\n :title=\"organization.profile?.name\"\n @click=\"() => { \n selectedOrganization = organization\n }\"\n class=\"h-4r bg-white pd-thin radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n </section>\n\n <h5 v-if=\"selectedOrganization\" class=\"mn-b-thin\">Options:</h5>\n <div v-if=\"selectedOrganization\" class=\"mn-b-medium br-grey-transp-25 br-2px pd-small radius-big\">\n <Checkbox \n :label=\"'Hide Author'\"\n :radio=\"post.creator.hidden\"\n @update:radio=\"event => post.creator.hidden = event\"\n name=\"prices\"\n class=\"w-100\"\n />\n </div>\n \n <Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-black t-white\">Publish</Button>\n </Popup>\n \n </article>\n</template>\n\n<script setup>\nimport Textarea from '@martyrs/src/modules/constructor/components/elements/Textarea.vue';\nimport Constructor from '@martyrs/src/modules/constructor/components/sections/Constructor.vue';\n\nimport Popup from '@martyrs/src/components/Popup/Popup.vue'\nimport BlockTags from '@martyrs/src/components/FieldTags/BlockTags.vue'\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'; \nimport Feed from '@martyrs/src/components/Feed/Feed.vue'\n\nimport Card from '@martyrs/src/modules/core/views/components/blocks/Card.vue';\n\nimport { ref, onMounted, watchEffect, nextTick, computed } from 'vue';\nimport { useRoute, useRouter } from 'vue-router';\nimport { VueDraggableNext } from 'vue-draggable-next';\n// Store & Router\nimport * as blog from '@martyrs/src/modules/community/store/blogposts.js';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\nimport * as organizations from '@martyrs/src/modules/organizations/store/organizations.js'\n \nimport { useGlobalMixins } from \"@martyrs/src/modules/core/views/mixins/mixins.js\"\n\nconst { hasAccess } = useGlobalMixins()\n\nconst route = useRoute();\nconst router = useRouter();\n\nlet post = ref(null);\nlet publics = ref(null);\n\nconst selectedTags = ref([]);\nconst selectedOrganization = ref(null);\n\nonMounted(async () =>{\n \n if (route.params.url) {\n const data = await blog.read({ user: auth.state.user._id, url: route.params.url });\n \n post.value = data.pop();\n\n if (!post.value) {\n router.push({name: 'notfound'})\n }\n\n if (post.value.owner.type === 'organization') {\n // Если пост принадлежит организации, проверяем права на редактирование через `hasAccess`\n const isAccess = hasAccess(post.value.owner.target._id, 'posts', 'edit', auth.state.accesses, auth.state.access.roles);\n\n if (!isAccess) {\n router.push({name: 'unauthorized'})\n }\n }\n\n if (post.value.owner.type === 'user' && post.value.creator.target._id !== auth.state.user._id) {\n router.push({name: 'unauthorized'})\n }\n } else {\n blog.clean();\n post.value = blog.state.current;\n }\n\n if (!post.value.owner) post.value.owner = {\n target: auth.state.user._id,\n type: 'user'\n }\n\n if (!post.value.creator) post.value.creator = {\n target: auth.state.user._id,\n type: 'user',\n hidden: false\n }\n\n\n if (post.value.owner.type === 'organization') selectedOrganization.value = {\n _id: post.value.owner.target._id,\n name: post.value.owner.target.profile.name,\n photo: post.value.owner.target.profile.photo\n }\n})\n// /////////////////////////////////////////\n// Publication Form\n// /////////////////////////////////////////\nconst tag = ref('');\nconst autocompleteItems = ref([\n { text: 'story' },\n { text: 'news' },\n { text: 'guide' },\n { text: 'discussion' },\n { text: 'photos' },\n]);\n\nconst filteredItems = computed(() => {\n return autocompleteItems.value.filter(i => {\n return i.text.toLowerCase().includes(tag.value.toLowerCase());\n });\n});\n\nconst filteredSuggestedItems = computed(() => {\n return autocompleteItems.value.filter(item => {\n return !selectedTags.value.some(tag => tag.text === item.text);\n });\n })\n\nfunction addTag (tag) {\n selectedTags.value.push(tag)\n}\n// /////////////////////////////////////////\n// Publication Popup\n// /////////////////////////////////////////\nconst isPublicationPopup = ref(false)\n\nfunction openPulicationPopup() {\n isPublicationPopup.value = true;\n}\nfunction closePublicationPopup() {\n isPublicationPopup.value = false;\n}\n\nfunction onDrafts() {\n\n if (selectedTags.value.length > 0) selectedTags.value.map(tag => (tag.text))\n\n post.value.status = \"draft\"\n post.value.name = post.value.content[0].content\n\n if (route.params.url) {\n blog.update(post.value)\n .then(response => {\n router.push({ name: 'BlogPost', params: { url: response.url } });\n })\n .catch(error => {\n console.log(error);\n });\n } else {\n blog.create(post.value)\n .then(response => {\n router.push({ name: 'BlogPost', params: { url: response.url } });\n })\n .catch(error => {\n console.log(error);\n });\n }\n}\n\nfunction onSubmit() {\n\n if (selectedOrganization.value) post.value.owner = {\n target: selectedOrganization.value._id,\n type: 'organization'\n }\n\n if (!selectedOrganization.value) post.value.creator.hidden = false\n if (!selectedOrganization.value) post.value.organization = post.value.creator\n\n post.value.status = \"published\"\n post.value.name = post.value.content[0].content\n\n if (route.params.url) {\n blog.update(post.value)\n .then(response => {\n console.log(post.value)\n router.push({ name: 'BlogPost', params: { url: response.url } });\n })\n .catch(error => {\n console.error(error);\n });\n } else {\n blog.create(post.value)\n .then(response => {\n router.push({ name: 'BlogPost', params: { url: response.url } });\n })\n .catch(error => {\n console.error(error);\n });\n }\n}\n\nfunction onDelete() {\n if (confirm('Are you sure you want to delete this post?')) {\n blog.remove(post.value._id)\n .then(response => {\n router.push({ name: 'User Posts', params: { _id: post.value.creator.target._id } });\n })\n .catch(error => {\n console.log(error);\n });\n }\n}\n</script>\n\n\n<style lang=\"scss\">\n\n</style>\n"],"names":["blog.read","auth.state","blog.clean","blog.state","tag","blog.update","blog.create","blog.remove"],"mappings":"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"}
1
+ {"version":3,"file":"CreateBlogPost.vue.js","sources":["../../../../../../../src/modules/community/components/pages/CreateBlogPost.vue"],"sourcesContent":["<template>\n <article \n class=\"w-100 bg-light radius-medium pos-relative\"\n >\n <section \n style=\"min-height: 100%;\"\n class=\"w-100 pd-big\"\n >\n <Constructor \n v-if=\"post\" \n :content=\"post.content\"\n @update=\"update => post.content = update\"\n />\n\n </section>\n\n <transition name=\"scaleIn\" >\n <section v-if=\"post\" class=\"pd-small pos-sticky pos-l-0 pos-b-0 w-100 \">\n <div class=\"pd-thin radius-big bg-main w-100 flex-nowrap flex\">\n <button v-if=\"route.params.url\" @click=\"onDelete()\" class=\"mn-r-auto bg-red t-white t-black button\"><span>Delete</span></button>\n <button @click=\"onDrafts()\" class=\"mn-l-auto bg-white t-black button\"><span>To Drafts</span></button>\n <button @click=\"openPulicationPopup()\" class=\"mn-l-thin bg-black t-white button\"><span>Publish</span></button>\n </div>\n </section>\n </transition>\n\n <Popup \n @close-popup=\"closePublicationPopup\" \n :isPopupOpen=\"isPublicationPopup\"\n class=\"w-m-33r t-left pd-big bg-white radius-big\"\n >\n <h3 class=\"mn-b-small\">Final Touches</h3>\n \n <BlockTags\n @tags-changed=\"newTags => post.tags = newTags\"\n :tags=\"post.tags\"\n class=\"mn-b-small\"\n />\n\n <h5 class=\"mn-b-small\">Add source:</h5>\n <Field \n v-model:field=\"post.source\" \n placeholder=\"Add full link to the source\" \n class=\"mn-b-medium bg-light radius-medium pd-small\" \n />\n\n <h5 class=\"mn-b-small\">Add to public</h5>\n <Card\n v-if=\"selectedOrganization\"\n :photo=\"selectedOrganization.profile?.photo\"\n :title=\"selectedOrganization.profile?.name\"\n @click=\"() => { \n selectedOrganization = null\n }\"\n class=\"h-4r w-100 bg-light pd-thin radius-medium mn-b-thin\"\n />\n\n <section v-else class=\"mn-b-thin h-25r o-x-hidden o-y-scroll bg-light radius-big pd-small \">\n <Feed\n :showLoadMore=\"false\" \n :search=\"{\n placeholder: 'Search organization...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No organizations Found',\n description: 'Currently, there are no such organizations available.'\n }\n }\"\n :store=\"{\n read: (options) => organizations.actions.read(options),\n state: null\n }\"\n :options=\"{\n user: auth.state.user._id,\n postable: auth.state.user._id,\n lookup: ['memberships']\n }\"\n v-slot=\"{ \n items \n }\"\n >\n <Card\n v-for=\"(organization, index) in items\" \n v-memo=\"[organization._id, organization.profile.name]\"\n :photo=\"organization.profile?.photo\"\n :title=\"organization.profile?.name\"\n @click=\"() => { \n selectedOrganization = organization\n }\"\n class=\"h-4r bg-white pd-thin radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n </section>\n\n <h5 v-if=\"selectedOrganization\" class=\"mn-b-thin\">Options:</h5>\n <div v-if=\"selectedOrganization\" class=\"mn-b-medium br-grey-transp-25 br-2px pd-small radius-big\">\n <Checkbox \n :label=\"'Hide Author'\"\n :radio=\"post.creator.hidden\"\n @update:radio=\"event => post.creator.hidden = event\"\n name=\"prices\"\n class=\"w-100\"\n />\n </div>\n \n <Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-black t-white\">Publish</Button>\n </Popup>\n \n </article>\n</template>\n\n<script setup>\nimport Textarea from '@martyrs/src/modules/constructor/components/elements/Textarea.vue';\nimport Constructor from '@martyrs/src/modules/constructor/components/sections/Constructor.vue';\n\nimport Popup from '@martyrs/src/components/Popup/Popup.vue'\nimport BlockTags from '@martyrs/src/components/FieldTags/BlockTags.vue'\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'; \nimport Feed from '@martyrs/src/components/Feed/Feed.vue'\n\nimport Card from '@martyrs/src/modules/core/views/components/blocks/Card.vue';\n\nimport { ref, onMounted, watchEffect, nextTick, computed } from 'vue';\nimport { useRoute, useRouter } from 'vue-router';\nimport { VueDraggableNext } from 'vue-draggable-next';\n// Store & Router\nimport * as blog from '@martyrs/src/modules/community/store/blogposts.js';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\nimport * as organizations from '@martyrs/src/modules/organizations/store/organizations.js'\n \nimport { useGlobalMixins } from \"@martyrs/src/modules/core/views/mixins/mixins.js\"\n\nconst { hasAccess } = useGlobalMixins()\n\nconst route = useRoute();\nconst router = useRouter();\n\nconst routePrefix = computed(() => {\n const ctx = route.meta.context\n if (ctx === 'organization') return 'Organization'\n return ''\n})\n\nlet post = ref(null);\nlet publics = ref(null);\n\nconst selectedTags = ref([]);\nconst selectedOrganization = ref(null);\n\nonMounted(async () =>{\n \n if (route.params.url) {\n const data = await blog.read({ user: auth.state.user._id, url: route.params.url });\n \n post.value = data.pop();\n\n if (!post.value) {\n router.push({name: 'notfound'})\n }\n\n if (post.value.owner.type === 'organization') {\n // Если пост принадлежит организации, проверяем права на редактирование через `hasAccess`\n const isAccess = hasAccess(post.value.owner.target._id, 'posts', 'edit', auth.state.accesses, auth.state.access.roles);\n\n if (!isAccess) {\n router.push({name: 'unauthorized'})\n }\n }\n\n if (post.value.owner.type === 'user' && post.value.creator.target._id !== auth.state.user._id) {\n router.push({name: 'unauthorized'})\n }\n } else {\n blog.clean();\n post.value = blog.state.current;\n }\n\n if (!post.value.owner) post.value.owner = {\n target: auth.state.user._id,\n type: 'user'\n }\n\n if (!post.value.creator) post.value.creator = {\n target: auth.state.user._id,\n type: 'user',\n hidden: false\n }\n\n\n if (post.value.owner.type === 'organization') selectedOrganization.value = {\n _id: post.value.owner.target._id,\n name: post.value.owner.target.profile.name,\n photo: post.value.owner.target.profile.photo\n }\n})\n// /////////////////////////////////////////\n// Publication Form\n// /////////////////////////////////////////\nconst tag = ref('');\nconst autocompleteItems = ref([\n { text: 'story' },\n { text: 'news' },\n { text: 'guide' },\n { text: 'discussion' },\n { text: 'photos' },\n]);\n\nconst filteredItems = computed(() => {\n return autocompleteItems.value.filter(i => {\n return i.text.toLowerCase().includes(tag.value.toLowerCase());\n });\n});\n\nconst filteredSuggestedItems = computed(() => {\n return autocompleteItems.value.filter(item => {\n return !selectedTags.value.some(tag => tag.text === item.text);\n });\n })\n\nfunction addTag (tag) {\n selectedTags.value.push(tag)\n}\n// /////////////////////////////////////////\n// Publication Popup\n// /////////////////////////////////////////\nconst isPublicationPopup = ref(false)\n\nfunction openPulicationPopup() {\n isPublicationPopup.value = true;\n}\nfunction closePublicationPopup() {\n isPublicationPopup.value = false;\n}\n\nfunction onDrafts() {\n\n if (selectedTags.value.length > 0) selectedTags.value.map(tag => (tag.text))\n\n post.value.status = \"draft\"\n post.value.name = post.value.content[0].content\n\n if (route.params.url) {\n blog.update(post.value)\n .then(response => {\n router.push({ name: routePrefix.value + 'BlogPost', params: { _id: route.params._id, url: response.url } });\n })\n .catch(error => {\n console.log(error);\n });\n } else {\n blog.create(post.value)\n .then(response => {\n router.push({ name: routePrefix.value + 'BlogPost', params: { _id: route.params._id, url: response.url } });\n })\n .catch(error => {\n console.log(error);\n });\n }\n}\n\nfunction onSubmit() {\n\n if (selectedOrganization.value) post.value.owner = {\n target: selectedOrganization.value._id,\n type: 'organization'\n }\n\n if (!selectedOrganization.value) post.value.creator.hidden = false\n if (!selectedOrganization.value) post.value.organization = post.value.creator\n\n post.value.status = \"published\"\n post.value.name = post.value.content[0].content\n\n if (route.params.url) {\n blog.update(post.value)\n .then(response => {\n console.log(post.value)\n router.push({ name: routePrefix.value + 'BlogPost', params: { _id: route.params._id, url: response.url } });\n })\n .catch(error => {\n console.error(error);\n });\n } else {\n blog.create(post.value)\n .then(response => {\n router.push({ name: routePrefix.value + 'BlogPost', params: { _id: route.params._id, url: response.url } });\n })\n .catch(error => {\n console.error(error);\n });\n }\n}\n\nfunction onDelete() {\n if (confirm('Are you sure you want to delete this post?')) {\n blog.remove(post.value._id)\n .then(() => {\n const ctx = route.meta.context\n if (ctx === 'organization') {\n router.push({ name: 'OrganizationPosts', params: { _id: route.params._id } })\n } else if (ctx === 'user') {\n router.push({ name: 'UserPosts', params: { _id: route.params._id } })\n } else {\n router.push({ name: 'Blog' })\n }\n })\n .catch(error => {\n console.log(error);\n });\n }\n}\n</script>\n\n\n<style lang=\"scss\">\n\n</style>\n"],"names":["blog.read","auth.state","blog.clean","blog.state","tag","blog.update","blog.create","blog.remove"],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import { onMounted, onUnmounted, createElementBlock, openBlock, createCommentVNode, createElementVNode, unref, createVNode, withCtx, Fragment, renderList, createBlock } from "vue";
1
+ import { computed, ref, watch, onMounted, onUnmounted, createElementBlock, openBlock, createBlock, createCommentVNode, createElementVNode, unref, createVNode, withCtx, Fragment, renderList } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
- import _sfc_main$2 from "../../../../components/Feed/Feed.vue.js";
4
- import _sfc_main$3 from "../blocks/CardBlogpost.vue.js";
3
+ import _sfc_main$3 from "../../../../components/Feed/Feed.vue.js";
4
+ import _sfc_main$2 from "../../../core/views/components/sections/SectionPageTitle.vue.js";
5
+ import _sfc_main$4 from "../blocks/CardBlogpost.vue.js";
5
6
  import _sfc_main$1 from "../../../icons/navigation/IconPlus.vue.js";
6
7
  import { state } from "../../../auth/views/store/auth.js";
7
8
  import { useStore } from "../../../core/views/store/core.store.js";
@@ -9,11 +10,7 @@ import { state as state$1, read } from "../../store/blogposts.js";
9
10
  import { actions } from "../../../organizations/store/organizations.js";
10
11
  import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
11
12
  const _hoisted_1 = { class: "pos-relative" };
12
- const _hoisted_2 = {
13
- key: 0,
14
- class: "pd-medium flex-v-center flex-nowrap flex"
15
- };
16
- const _hoisted_3 = { class: "w-100 rows-1 pd-thin pos-relative o-hidden" };
13
+ const _hoisted_2 = { class: "w-100 rows-1 pd-medium pos-relative o-hidden" };
17
14
  const _sfc_main = {
18
15
  __name: "Posts",
19
16
  props: {
@@ -23,17 +20,26 @@ const _sfc_main = {
23
20
  }
24
21
  },
25
22
  setup(__props) {
26
- const core = useStore();
23
+ const store = useStore();
27
24
  const route = useRoute();
28
25
  const router = useRouter();
29
26
  const { hasAccess } = useGlobalMixins();
30
- core.state.navigation_bar.actions = [{
27
+ const routePrefix = computed(() => {
28
+ const ctx = route.meta.context;
29
+ if (ctx === "organization") return "Organization";
30
+ return "";
31
+ });
32
+ const tab = ref(route.query.tab || "published");
33
+ watch(tab, (newValue) => {
34
+ router.replace({ query: { ...route.query, tab: newValue } });
35
+ });
36
+ store.core.state.navigation_bar.actions = [{
31
37
  component: _sfc_main$1,
32
38
  props: {
33
39
  fill: "rgb(var(--main))"
34
40
  },
35
41
  condition: () => state.user && state.user._id,
36
- action: () => route.params._id ? router.push({ name: "Organization_PostAdd", params: { _id: route.params._id } }) : router.push({ name: "CreateBlogPost" })
42
+ action: () => router.push({ name: routePrefix.value + "CreateBlogPost", params: { _id: route.params._id } })
37
43
  }];
38
44
  onMounted(async () => {
39
45
  if (route.params._id) {
@@ -41,22 +47,24 @@ const _sfc_main = {
41
47
  }
42
48
  });
43
49
  onUnmounted(() => {
44
- core.state.navigation_bar.actions = [];
50
+ store.core.state.navigation_bar.actions = [];
45
51
  });
46
52
  return (_ctx, _cache) => {
47
53
  return openBlock(), createElementBlock("div", _hoisted_1, [
48
- unref(route).name !== "Organization" && !_ctx.MOBILE_APP ? (openBlock(), createElementBlock("header", _hoisted_2, [
49
- _cache[3] || (_cache[3] = createElementVNode("h2", { class: "mn-r-medium" }, "Posts", -1)),
50
- unref(hasAccess)(unref(route).params._id, "posts", "create", state.accesses, state.access.roles) ? (openBlock(), createElementBlock("button", {
51
- key: 0,
52
- onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$router.push({
53
- name: unref(route).params?._id ? "Organization_PostAdd" : "CreateBlogPost"
54
- })),
55
- class: "radius-extra i-big hover:scale-[1.05] cursor-pointer t-white bg-second"
56
- }, " + ")) : createCommentVNode("", true)
57
- ])) : createCommentVNode("", true),
58
- createElementVNode("div", _hoisted_3, [
59
- createVNode(_sfc_main$2, {
54
+ !_ctx.MOBILE_APP ? (openBlock(), createBlock(_sfc_main$2, {
55
+ key: 0,
56
+ title: "Posts",
57
+ actions: unref(hasAccess)(unref(route).params._id, "posts", "create", state.accesses, state.access.roles) ? [{ method: () => _ctx.$router.push({ name: routePrefix.value + "CreateBlogPost", params: { _id: unref(route).params._id } }), label: "+", class: "radius-extra i-big hover:scale-[1.05] cursor-pointer t-white bg-second" }] : [],
58
+ tabs: unref(route).meta.context === "backoffice" ? [
59
+ { name: "Published", value: "published" },
60
+ { name: "Drafts", value: "drafts" }
61
+ ] : null,
62
+ tabs_current: tab.value,
63
+ "onUpdate:tabs_current": _cache[0] || (_cache[0] = ($event) => tab.value = $event),
64
+ class: "pd-medium pd-b-zero"
65
+ }, null, 8, ["actions", "tabs", "tabs_current"])) : createCommentVNode("", true),
66
+ createElementVNode("div", _hoisted_2, [
67
+ createVNode(_sfc_main$3, {
60
68
  search: true,
61
69
  filter: state$1.filter,
62
70
  "onUpdate:filter": _cache[1] || (_cache[1] = ($event) => state$1.filter = $event),
@@ -75,7 +83,7 @@ const _sfc_main = {
75
83
  },
76
84
  options: {
77
85
  limit: 12,
78
- status: "published",
86
+ status: tab.value === "drafts" ? "draft" : "published",
79
87
  user: state.user._id,
80
88
  owner: unref(route).params._id || null,
81
89
  search: unref(route).query.search
@@ -86,13 +94,13 @@ const _sfc_main = {
86
94
  items
87
95
  }) => [
88
96
  (openBlock(true), createElementBlock(Fragment, null, renderList(items, (item) => {
89
- return openBlock(), createBlock(_sfc_main$3, {
97
+ return openBlock(), createBlock(_sfc_main$4, {
90
98
  key: item._id,
91
99
  blogpost: item,
92
100
  user: state.user._id,
93
- class: "h-max-40r bg-light radius-medium cursor-pointer hover:scale-[1.05] ease",
101
+ class: "h-max-40r bg-light radius-medium cursor-pointer",
94
102
  onClick: ($event) => _ctx.$router.push({
95
- name: unref(route).params._id ? "Organization_BlogPost" : "BlogPost",
103
+ name: routePrefix.value + "BlogPost",
96
104
  params: {
97
105
  _id: unref(route).params._id,
98
106
  url: item.url
@@ -1 +1 @@
1
- {"version":3,"file":"Posts.vue.js","sources":["../../../../../../../src/modules/community/components/pages/Posts.vue"],"sourcesContent":["<template>\n <div class=\"pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Posts</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'posts', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_PostAdd' : 'CreateBlogPost'\n })\" \n class=\"radius-extra i-big hover:scale-[1.05] cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <div class=\"w-100 rows-1 pd-thin pos-relative o-hidden\">\n <Feed\n :search=\"true\"\n v-model:filter=\"blog.state.filter\"\n v-model:sort=\"blog.state.sort\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Blog Posts Found',\n description: 'Currently, there are no posts available in this blog.'\n }\n }\"\n :store=\"{\n read: (options) => blog.read(options),\n state: blog.state\n }\"\n :options=\"{\n limit: 12,\n status: 'published',\n user: auth.state.user._id,\n owner: route.params._id || null,\n search: route.query.search\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-1 pos-relative w-100 rows-1 gap-thin\"\n >\n <CardBlogpost \n v-for=\"item in items\" \n :key=\"item._id\" \n :blogpost=\"item\" \n :user=\"auth.state.user._id\" \n class=\"h-max-40r bg-light radius-medium cursor-pointer hover:scale-[1.05] ease\"\n @click=\"$router.push({ \n name: route.params._id ? 'Organization_BlogPost' : 'BlogPost', \n params: { \n _id: route.params._id,\n url: item.url \n } \n })\"\n />\n </Feed>\n\n </div>\n </div>\n</template>\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import CardBlogpost from '@martyrs/src/modules/community/components/blocks/CardBlogpost.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n import { useStore } from '@martyrs/src/modules/core/views/store/core.store.js';\n import * as blog from '@martyrs/src/modules/community/store/blogposts.js';\n import * as organizations from '@martyrs/src/modules/organizations/store/organizations.js';\n import { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js';\n const core = useStore();\n\n const route = useRoute()\n const router = useRouter()\n const { hasAccess } = useGlobalMixins()\n\n // Props\n const props = defineProps({\n organization: {\n type: Object,\n default: null\n }\n })\n\n\n core.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_PostAdd', params: { _id: route.params._id} }) : router.push({ name: 'CreateBlogPost' })\n }]\n\n onMounted(async () => {\n if (route.params._id) {\n await organizations.actions.read({ _id: route.params._id });\n }\n })\n\n onUnmounted(() => {\n core.state.navigation_bar.actions = [];\n });\n</script>\n\n<style lang=\"scss\">\n</style>"],"names":["IconPlus","auth.state","organizations.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAmFE,UAAM,OAAO,SAAQ;AAErB,UAAM,QAAQ,SAAQ;AACtB,UAAM,SAAS,UAAS;AACxB,UAAM,EAAE,UAAS,IAAK,gBAAe;AAWrC,SAAK,MAAM,eAAe,UAAU,CAAC;AAAA,MACnC,WAAWA;AAAAA,MACX,OAAO;AAAA,QACL,MAAM;AAAA,MACZ;AAAA,MACI,WAAW,MAAMC,MAAW,QAAQA,MAAW,KAAK;AAAA,MACpD,QAAQ,MAAM,MAAM,OAAO,MAAM,OAAO,KAAK,EAAE,MAAM,wBAAwB,QAAQ,EAAE,KAAK,MAAM,OAAO,IAAG,EAAC,CAAE,IAAI,OAAO,KAAK,EAAE,MAAM,iBAAgB,CAAE;AAAA,IAC7J,CAAG;AAED,cAAU,YAAY;AACpB,UAAI,MAAM,OAAO,KAAK;AACpB,cAAMC,QAAsB,KAAK,EAAE,KAAK,MAAM,OAAO,KAAK;AAAA,MAC5D;AAAA,IACF,CAAC;AAED,gBAAY,MAAM;AAChB,WAAK,MAAM,eAAe,UAAU,CAAA;AAAA,IACtC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Posts.vue.js","sources":["../../../../../../../src/modules/community/components/pages/Posts.vue"],"sourcesContent":["<template>\n <div class=\"pos-relative\">\n <SectionPageTitle\n v-if=\"!MOBILE_APP\"\n title=\"Posts\"\n :actions=\"hasAccess(route.params._id, 'posts', 'create', auth.state.accesses, auth.state.access.roles)\n ? [{ method: () => $router.push({ name: routePrefix + 'CreateBlogPost', params: { _id: route.params._id } }), label: '+', class: 'radius-extra i-big hover:scale-[1.05] cursor-pointer t-white bg-second' }]\n : []\"\n :tabs=\"route.meta.context === 'backoffice'\n ? [\n { name: 'Published', value: 'published' },\n { name: 'Drafts', value: 'drafts' },\n ]\n : null\"\n :tabs_current=\"tab\"\n @update:tabs_current=\"tab = $event\"\n class=\"pd-medium pd-b-zero\"\n />\n\n <div class=\"w-100 rows-1 pd-medium pos-relative o-hidden\">\n <Feed\n :search=\"true\"\n v-model:filter=\"blog.state.filter\"\n v-model:sort=\"blog.state.sort\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Blog Posts Found',\n description: 'Currently, there are no posts available in this blog.'\n }\n }\"\n :store=\"{\n read: (options) => blog.read(options),\n state: blog.state\n }\"\n :options=\"{\n limit: 12,\n status: tab === 'drafts' ? 'draft' : 'published',\n user: auth.state.user._id,\n owner: route.params._id || null,\n search: route.query.search\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-1 pos-relative w-100 rows-1 gap-thin\"\n >\n <CardBlogpost \n v-for=\"item in items\" \n :key=\"item._id\" \n :blogpost=\"item\" \n :user=\"auth.state.user._id\" \n class=\"h-max-40r bg-light radius-medium cursor-pointer\"\n @click=\"$router.push({\n name: routePrefix + 'BlogPost',\n params: {\n _id: route.params._id,\n url: item.url\n }\n })\"\n />\n </Feed>\n\n </div>\n </div>\n</template>\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n import SectionPageTitle from '@martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue'\n\n import CardBlogpost from '@martyrs/src/modules/community/components/blocks/CardBlogpost.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n import { useStore } from '@martyrs/src/modules/core/views/store/core.store.js';\n import * as blog from '@martyrs/src/modules/community/store/blogposts.js';\n import * as organizations from '@martyrs/src/modules/organizations/store/organizations.js';\n import { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js';\n const store = useStore();\n\n const route = useRoute()\n const router = useRouter()\n const { hasAccess } = useGlobalMixins()\n\n const routePrefix = computed(() => {\n const ctx = route.meta.context\n if (ctx === 'organization') return 'Organization'\n return ''\n })\n\n const tab = ref(route.query.tab || 'published')\n\n watch(tab, (newValue) => {\n router.replace({ query: { ...route.query, tab: newValue } });\n })\n\n // Props\n const props = defineProps({\n organization: {\n type: Object,\n default: null\n }\n })\n\n\n store.core.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\"\n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => router.push({ name: routePrefix.value + 'CreateBlogPost', params: { _id: route.params._id } })\n }]\n\n onMounted(async () => {\n if (route.params._id) {\n await organizations.actions.read({ _id: route.params._id });\n }\n })\n\n onUnmounted(() => {\n store.core.state.navigation_bar.actions = [];\n });\n</script>\n\n<style lang=\"scss\">\n</style>"],"names":["IconPlus","auth.state","organizations.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAsFE,UAAM,QAAQ,SAAQ;AAEtB,UAAM,QAAQ,SAAQ;AACtB,UAAM,SAAS,UAAS;AACxB,UAAM,EAAE,UAAS,IAAK,gBAAe;AAErC,UAAM,cAAc,SAAS,MAAM;AACjC,YAAM,MAAM,MAAM,KAAK;AACvB,UAAI,QAAQ,eAAgB,QAAO;AACnC,aAAO;AAAA,IACT,CAAC;AAED,UAAM,MAAM,IAAI,MAAM,MAAM,OAAO,WAAW;AAE9C,UAAM,KAAK,CAAC,aAAa;AACvB,aAAO,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,KAAK,SAAQ,GAAI;AAAA,IAC7D,CAAC;AAWD,UAAM,KAAK,MAAM,eAAe,UAAU,CAAC;AAAA,MACzC,WAAWA;AAAAA,MACX,OAAO;AAAA,QACL,MAAM;AAAA,MACZ;AAAA,MACI,WAAW,MAAMC,MAAW,QAAQA,MAAW,KAAK;AAAA,MACpD,QAAQ,MAAM,OAAO,KAAK,EAAE,MAAM,YAAY,QAAQ,kBAAkB,QAAQ,EAAE,KAAK,MAAM,OAAO,IAAG,EAAE,CAAE;AAAA,IAC/G,CAAG;AAED,cAAU,YAAY;AACpB,UAAI,MAAM,OAAO,KAAK;AACpB,cAAMC,QAAsB,KAAK,EAAE,KAAK,MAAM,OAAO,KAAK;AAAA,MAC5D;AAAA,IACF,CAAC;AAED,gBAAY,MAAM;AAChB,YAAM,KAAK,MAAM,eAAe,UAAU,CAAA;AAAA,IAC5C,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -91,7 +91,7 @@ const _sfc_main = {
91
91
  totalReplies.value > 0 ? (openBlock(), createElementBlock("button", {
92
92
  key: 0,
93
93
  onClick: toggleChildren,
94
- class: "t-grey cursor-pointer fw-medium font-second"
94
+ class: "t-dark cursor-pointer fw-medium font-second"
95
95
  }, toDisplayString(isExpanded.value ? "Hide" : totalReplies.value + (totalReplies.value === 1 ? " reply" : " replies")), 1)) : createCommentVNode("", true),
96
96
  __props.owner ? (openBlock(), createElementBlock("button", {
97
97
  key: 1,
@@ -150,7 +150,7 @@ const _sfc_main = {
150
150
  };
151
151
  }
152
152
  };
153
- const Comment = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-d265fc89"]]);
153
+ const Comment = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-c5d3aff1"]]);
154
154
  export {
155
155
  Comment as default
156
156
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Comment.vue.js","sources":["../../../../../../../src/modules/community/components/sections/Comment.vue"],"sourcesContent":["<template>\n <div class=\"comment-wrapper\">\n <div class=\"comment-content \">\n <CardHeader \n class=\"mn-b-thin mn-b-thin w-100\"\n :entity=\"comment\"\n :entityType=\"'comment'\"\n :user=\"owner\"\n :owner=\"{target: comment.owner, type: 'user'}\" \n :creator=\"{target: comment.owner, type: 'user'}\"\n :date=\"comment.createdAt\"\n />\n <div class=\"pd-t-zero\">\n <p class=\"p-regular\">{{ comment.content }}</p>\n </div>\n <div class=\"mn-t-thin flex-v-center flex-nowrap flex gap-small\">\n <button \n v-if=\"totalReplies > 0\" \n @click=\"toggleChildren\"\n class=\"t-grey cursor-pointer fw-medium font-second\"\n >\n {{ isExpanded ? 'Hide' : totalReplies + (totalReplies === 1 ? ' reply' : ' replies') }} \n </button>\n <button \n v-if=\"owner\" \n class=\"font-second cursor-pointer t-transp fw-medium\" \n @click=\"showReplyForm = true\"\n > \n Reply\n </button>\n </div>\n <div v-if=\"showReplyForm\" class=\"mn-t-small bg-white pd-thin radius-regular\">\n <textarea class=\"w-100\" v-model=\"replyContent\"></textarea>\n <div class=\"mn-l-auto gap-thin flex-nowrap flex\">\n <button class=\"bg-grey-transp-25 pd-r-regular pd-l-regular pd-thin button\" @click=\"showReplyForm = false\">Cancel</button>\n <button class=\"bg-main pd-r-regular pd-l-regular pd-thin button\" @click=\"submitReply\">Send</button>\n </div>\n </div>\n </div>\n\n <transition name=\"collapse\">\n <div v-if=\"isExpanded && comment.children && comment.children.length\" class=\"mn-t-regular comment-children\">\n <div\n v-for=\"(childComment, index) in comment.children\"\n :key=\"childComment._id\"\n class=\"child-wrapper\"\n >\n <!-- Кликабельная область с линией -->\n <div \n @click=\"toggleChildren\" \n @mouseenter=\"highlightLevel($event, true)\"\n @mouseleave=\"highlightLevel($event, false)\"\n class=\"tree-line cursor-pointer\"\n :class=\"{ 'last-child': index === comment.children.length - 1 }\"\n ></div>\n \n <Comment\n :comment=\"childComment\"\n :target=\"target\"\n :owner=\"owner\"\n @reply=\"handleReply\"\n @load-more=\"handleLoadMore\"\n class=\"child-comment mn-b-regular\"\n />\n </div>\n </div>\n </transition>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed } from 'vue';\nimport Comment from './Comment.vue';\nimport CardHeader from '@martyrs/src/modules/core/views/components/blocks/CardHeader.vue'\n\nconst props = defineProps({\n comment: {\n type: Object,\n required: true\n },\n target: {\n type: String,\n required: true\n },\n owner: {\n type: String,\n required: true\n }\n});\n\nconst emit = defineEmits(['reply', 'load-more']);\n\nconst showReplyForm = ref(false);\nconst replyContent = ref('');\nconst isExpanded = ref(shouldBeExpanded(props.comment.depth))\n\n\nconst childrenContainer = ref(null)\n\nfunction highlightLevel(event, state) {\n const wrapper = event.currentTarget?.parentElement?.parentElement;\n if (!wrapper) return;\n\n const lines = wrapper.querySelectorAll(':scope > .child-wrapper > .tree-line');\n lines.forEach(line => line.classList.toggle('hovered', state));\n} \n\nfunction shouldBeExpanded(depth) {\n return depth % 3 < 2\n}\n\nconst totalReplies = computed(() => {\n function countReplies(comment) {\n if (!comment.children || comment.children.length === 0) {\n return 0\n }\n return comment.children.length + comment.children.reduce((sum, child) => sum + countReplies(child), 0)\n }\n return countReplies(props.comment)\n})\n\nconst toggleChildren = () => {\n isExpanded.value = !isExpanded.value\n}\n\nconst submitReply = () => {\n emit('reply', props.comment._id, replyContent.value);\n replyContent.value = '';\n showReplyForm.value = false;\n};\n\nconst handleReply = (parentId, content) => {\n emit('reply', parentId, content);\n};\n\nconst handleLoadMore = (commentId, depth) => {\n emit('load-more', commentId, depth);\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.comment-children {\n margin-top: 1rem;\n}\n\n.child-wrapper {\n position: relative;\n}\n\n.child-comment {\n padding-left: 1.5rem;\n}\n\n.tree-line {\n position: absolute;\n left: calc(-1rem + 2px);\n top: -1rem;\n width: 2rem;\n height: calc(100% + 2rem);\n}\n\n.tree-line::before {\n content: '';\n position: absolute;\n left: 1rem;\n top: 0;\n width: 2px;\n height: 100%;\n border-left: 1px solid rgba(var(--grey), 1);\n transition: background 0.2s ease;\n}\n\n.tree-line::after {\n content: '';\n position: absolute;\n left: 1rem;\n top: 2rem;\n width: 1rem;\n height: 2px;\n border-bottom: 1px solid rgba(var(--grey), 1);\n transition: background 0.2s ease;\n\n}\n\n.child-wrapper {\n &:last-child {\n .tree-line::after {\n display: none;\n }\n }\n}\n\n.tree-line.last-child::before {\n height: 2rem;\n border-bottom-left-radius: 0.5rem;\n border-left: 1px solid rgba(var(--grey), 1);\n border-bottom: 1px solid rgba(var(--grey), 1);\n background: none;\n width: 1rem;\n}\n\n\n.tree-line.hovered::before,\n.tree-line.hovered::after {\n border-color: rgba(var(--second), 1);\n}\n\n.tree-line.last-child.hovered::before {\n border-color: rgba(var(--second), 1);\n}\n\n/* Анимация */\n.collapse-enter-active,\n.collapse-leave-active {\n transition: all 0.3s ease;\n}\n\n.collapse-enter-from {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n\n.collapse-leave-to {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2EA,UAAM,QAAQ;AAed,UAAM,OAAO;AAEb,UAAM,gBAAgB,IAAI,KAAK;AAC/B,UAAM,eAAe,IAAI,EAAE;AAC3B,UAAM,aAAa,IAAI,iBAAiB,MAAM,QAAQ,KAAK,CAAC;AAGlC,QAAI,IAAI;AAElC,aAAS,eAAe,OAAO,OAAO;AACpC,YAAM,UAAU,MAAM,eAAe,eAAe;AACpD,UAAI,CAAC,QAAS;AAEd,YAAM,QAAQ,QAAQ,iBAAiB,sCAAsC;AAC7E,YAAM,QAAQ,UAAQ,KAAK,UAAU,OAAO,WAAW,KAAK,CAAC;AAAA,IAC/D;AAEA,aAAS,iBAAiB,OAAO;AAC/B,aAAO,QAAQ,IAAI;AAAA,IACrB;AAEA,UAAM,eAAe,SAAS,MAAM;AAClC,eAAS,aAAa,SAAS;AAC7B,YAAI,CAAC,QAAQ,YAAY,QAAQ,SAAS,WAAW,GAAG;AACtD,iBAAO;AAAA,QACT;AACA,eAAO,QAAQ,SAAS,SAAS,QAAQ,SAAS,OAAO,CAAC,KAAK,UAAU,MAAM,aAAa,KAAK,GAAG,CAAC;AAAA,MACvG;AACA,aAAO,aAAa,MAAM,OAAO;AAAA,IACnC,CAAC;AAED,UAAM,iBAAiB,MAAM;AAC3B,iBAAW,QAAQ,CAAC,WAAW;AAAA,IACjC;AAEA,UAAM,cAAc,MAAM;AACxB,WAAK,SAAS,MAAM,QAAQ,KAAK,aAAa,KAAK;AACnD,mBAAa,QAAQ;AACrB,oBAAc,QAAQ;AAAA,IACxB;AAEA,UAAM,cAAc,CAAC,UAAU,YAAY;AACzC,WAAK,SAAS,UAAU,OAAO;AAAA,IACjC;AAEA,UAAM,iBAAiB,CAAC,WAAW,UAAU;AAC3C,WAAK,aAAa,WAAW,KAAK;AAAA,IACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Comment.vue.js","sources":["../../../../../../../src/modules/community/components/sections/Comment.vue"],"sourcesContent":["<template>\n <div class=\"comment-wrapper\">\n <div class=\"comment-content \">\n <CardHeader \n class=\"mn-b-thin mn-b-thin w-100\"\n :entity=\"comment\"\n :entityType=\"'comment'\"\n :user=\"owner\"\n :owner=\"{target: comment.owner, type: 'user'}\" \n :creator=\"{target: comment.owner, type: 'user'}\"\n :date=\"comment.createdAt\"\n />\n <div class=\"pd-t-zero\">\n <p class=\"p-regular\">{{ comment.content }}</p>\n </div>\n <div class=\"mn-t-thin flex-v-center flex-nowrap flex gap-small\">\n <button \n v-if=\"totalReplies > 0\" \n @click=\"toggleChildren\"\n class=\"t-dark cursor-pointer fw-medium font-second\"\n >\n {{ isExpanded ? 'Hide' : totalReplies + (totalReplies === 1 ? ' reply' : ' replies') }} \n </button>\n <button \n v-if=\"owner\" \n class=\"font-second cursor-pointer t-transp fw-medium\" \n @click=\"showReplyForm = true\"\n > \n Reply\n </button>\n </div>\n <div v-if=\"showReplyForm\" class=\"mn-t-small bg-white pd-thin radius-regular\">\n <textarea class=\"w-100\" v-model=\"replyContent\"></textarea>\n <div class=\"mn-l-auto gap-thin flex-nowrap flex\">\n <button class=\"bg-grey-transp-25 pd-r-regular pd-l-regular pd-thin button\" @click=\"showReplyForm = false\">Cancel</button>\n <button class=\"bg-main pd-r-regular pd-l-regular pd-thin button\" @click=\"submitReply\">Send</button>\n </div>\n </div>\n </div>\n\n <transition name=\"collapse\">\n <div v-if=\"isExpanded && comment.children && comment.children.length\" class=\"mn-t-regular comment-children\">\n <div\n v-for=\"(childComment, index) in comment.children\"\n :key=\"childComment._id\"\n class=\"child-wrapper\"\n >\n <!-- Кликабельная область с линией -->\n <div \n @click=\"toggleChildren\" \n @mouseenter=\"highlightLevel($event, true)\"\n @mouseleave=\"highlightLevel($event, false)\"\n class=\"tree-line cursor-pointer\"\n :class=\"{ 'last-child': index === comment.children.length - 1 }\"\n ></div>\n \n <Comment\n :comment=\"childComment\"\n :target=\"target\"\n :owner=\"owner\"\n @reply=\"handleReply\"\n @load-more=\"handleLoadMore\"\n class=\"child-comment mn-b-regular\"\n />\n </div>\n </div>\n </transition>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed } from 'vue';\nimport Comment from './Comment.vue';\nimport CardHeader from '@martyrs/src/modules/core/views/components/blocks/CardHeader.vue'\n\nconst props = defineProps({\n comment: {\n type: Object,\n required: true\n },\n target: {\n type: String,\n required: true\n },\n owner: {\n type: String,\n required: true\n }\n});\n\nconst emit = defineEmits(['reply', 'load-more']);\n\nconst showReplyForm = ref(false);\nconst replyContent = ref('');\nconst isExpanded = ref(shouldBeExpanded(props.comment.depth))\n\n\nconst childrenContainer = ref(null)\n\nfunction highlightLevel(event, state) {\n const wrapper = event.currentTarget?.parentElement?.parentElement;\n if (!wrapper) return;\n\n const lines = wrapper.querySelectorAll(':scope > .child-wrapper > .tree-line');\n lines.forEach(line => line.classList.toggle('hovered', state));\n} \n\nfunction shouldBeExpanded(depth) {\n return depth % 3 < 2\n}\n\nconst totalReplies = computed(() => {\n function countReplies(comment) {\n if (!comment.children || comment.children.length === 0) {\n return 0\n }\n return comment.children.length + comment.children.reduce((sum, child) => sum + countReplies(child), 0)\n }\n return countReplies(props.comment)\n})\n\nconst toggleChildren = () => {\n isExpanded.value = !isExpanded.value\n}\n\nconst submitReply = () => {\n emit('reply', props.comment._id, replyContent.value);\n replyContent.value = '';\n showReplyForm.value = false;\n};\n\nconst handleReply = (parentId, content) => {\n emit('reply', parentId, content);\n};\n\nconst handleLoadMore = (commentId, depth) => {\n emit('load-more', commentId, depth);\n};\n</script>\n\n<style lang=\"scss\" scoped>\n.comment-children {\n margin-top: 1rem;\n}\n\n.child-wrapper {\n position: relative;\n}\n\n.child-comment {\n padding-left: 1.5rem;\n}\n\n.tree-line {\n position: absolute;\n left: calc(-1rem + 2px);\n top: -1rem;\n width: 2rem;\n height: calc(100% + 2rem);\n}\n\n.tree-line::before {\n content: '';\n position: absolute;\n left: 1rem;\n top: 0;\n width: 2px;\n height: 100%;\n border-left: 1px solid rgba(var(--grey), 1);\n transition: background 0.2s ease;\n}\n\n.tree-line::after {\n content: '';\n position: absolute;\n left: 1rem;\n top: 2rem;\n width: 1rem;\n height: 2px;\n border-bottom: 1px solid rgba(var(--grey), 1);\n transition: background 0.2s ease;\n\n}\n\n.child-wrapper {\n &:last-child {\n .tree-line::after {\n display: none;\n }\n }\n}\n\n.tree-line.last-child::before {\n height: 2rem;\n border-bottom-left-radius: 0.5rem;\n border-left: 1px solid rgba(var(--grey), 1);\n border-bottom: 1px solid rgba(var(--grey), 1);\n background: none;\n width: 1rem;\n}\n\n\n.tree-line.hovered::before,\n.tree-line.hovered::after {\n border-color: rgba(var(--second), 1);\n}\n\n.tree-line.last-child.hovered::before {\n border-color: rgba(var(--second), 1);\n}\n\n/* Анимация */\n.collapse-enter-active,\n.collapse-leave-active {\n transition: all 0.3s ease;\n}\n\n.collapse-enter-from {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n\n.collapse-leave-to {\n opacity: 0;\n transform: translateY(-0.5rem);\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2EA,UAAM,QAAQ;AAed,UAAM,OAAO;AAEb,UAAM,gBAAgB,IAAI,KAAK;AAC/B,UAAM,eAAe,IAAI,EAAE;AAC3B,UAAM,aAAa,IAAI,iBAAiB,MAAM,QAAQ,KAAK,CAAC;AAGlC,QAAI,IAAI;AAElC,aAAS,eAAe,OAAO,OAAO;AACpC,YAAM,UAAU,MAAM,eAAe,eAAe;AACpD,UAAI,CAAC,QAAS;AAEd,YAAM,QAAQ,QAAQ,iBAAiB,sCAAsC;AAC7E,YAAM,QAAQ,UAAQ,KAAK,UAAU,OAAO,WAAW,KAAK,CAAC;AAAA,IAC/D;AAEA,aAAS,iBAAiB,OAAO;AAC/B,aAAO,QAAQ,IAAI;AAAA,IACrB;AAEA,UAAM,eAAe,SAAS,MAAM;AAClC,eAAS,aAAa,SAAS;AAC7B,YAAI,CAAC,QAAQ,YAAY,QAAQ,SAAS,WAAW,GAAG;AACtD,iBAAO;AAAA,QACT;AACA,eAAO,QAAQ,SAAS,SAAS,QAAQ,SAAS,OAAO,CAAC,KAAK,UAAU,MAAM,aAAa,KAAK,GAAG,CAAC;AAAA,MACvG;AACA,aAAO,aAAa,MAAM,OAAO;AAAA,IACnC,CAAC;AAED,UAAM,iBAAiB,MAAM;AAC3B,iBAAW,QAAQ,CAAC,WAAW;AAAA,IACjC;AAEA,UAAM,cAAc,MAAM;AACxB,WAAK,SAAS,MAAM,QAAQ,KAAK,aAAa,KAAK;AACnD,mBAAa,QAAQ;AACrB,oBAAc,QAAQ;AAAA,IACxB;AAEA,UAAM,cAAc,CAAC,UAAU,YAAY;AACzC,WAAK,SAAS,UAAU,OAAO;AAAA,IACjC;AAEA,UAAM,iBAAiB,CAAC,WAAW,UAAU;AAC3C,WAAK,aAAa,WAAW,KAAK;AAAA,IACpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,21 @@
1
+ const communityBackofficeRoutes = [
2
+ {
3
+ path: "",
4
+ name: "Posts",
5
+ meta: {
6
+ title: {
7
+ en: "Backoffice Community",
8
+ ru: "Управление Сообществом"
9
+ },
10
+ authorize: []
11
+ },
12
+ component: () => import(
13
+ /* webpackChunkName: 'BackofficeCommunity' */
14
+ "../components/pages/Posts.vue.js"
15
+ )
16
+ }
17
+ ];
18
+ export {
19
+ communityBackofficeRoutes as default
20
+ };
21
+ //# sourceMappingURL=community.backoffice.router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"community.backoffice.router.js","sources":["../../../../../../src/modules/community/router/community.backoffice.router.js"],"sourcesContent":["const communityBackofficeRoutes = [\n {\n path: '',\n name: 'Posts',\n meta: {\n title: {\n en: 'Backoffice Community',\n ru: 'Управление Сообществом',\n },\n authorize: [],\n },\n component: () => import(/* webpackChunkName: 'BackofficeCommunity' */ '../components/pages/Posts.vue'),\n },\n];\n\nexport default communityBackofficeRoutes;\n"],"names":[],"mappings":"AAAK,MAAC,4BAA4B;AAAA,EAChC;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,MACM,WAAW,CAAA;AAAA,IACjB;AAAA,IACI,WAAW,MAAM;AAAA;AAAA,MAAqD;AAAA,IAA+B;AAAA,EACzG;AACA;"}
@@ -0,0 +1,70 @@
1
+ const communityOrganizationRoutes = [
2
+ {
3
+ path: "",
4
+ name: "Posts",
5
+ meta: {
6
+ title: {
7
+ en: "Posts",
8
+ ru: "Посты"
9
+ }
10
+ },
11
+ component: () => import(
12
+ /* webpackChunkName: "organization-posts" */
13
+ "../components/pages/Posts.vue.js"
14
+ )
15
+ },
16
+ {
17
+ path: "create",
18
+ name: "CreateBlogPost",
19
+ meta: {
20
+ title: {
21
+ en: "Create Post",
22
+ ru: "Создать Пост"
23
+ }
24
+ },
25
+ beforeEnter: async (to, from, next) => {
26
+ const { requiresAuth } = await import("../../auth/views/middlewares/auth.validation.js");
27
+ return requiresAuth(to, from, next);
28
+ },
29
+ component: () => import(
30
+ /* webpackChunkName: 'CreateBlogPost' */
31
+ "../components/pages/CreateBlogPost.vue.js"
32
+ )
33
+ },
34
+ {
35
+ path: ":url",
36
+ name: "BlogPost",
37
+ meta: {
38
+ title: {
39
+ en: "Post",
40
+ ru: "Пост"
41
+ }
42
+ },
43
+ component: () => import(
44
+ /* webpackChunkName: 'BlogPost' */
45
+ "../components/pages/BlogPost.vue.js"
46
+ )
47
+ },
48
+ {
49
+ path: ":url/edit",
50
+ name: "EditBlogPost",
51
+ meta: {
52
+ title: {
53
+ en: "Edit Post",
54
+ ru: "Редактировать пост"
55
+ }
56
+ },
57
+ beforeEnter: async (to, from, next) => {
58
+ const { requiresAuth } = await import("../../auth/views/middlewares/auth.validation.js");
59
+ return requiresAuth(to, from, next);
60
+ },
61
+ component: () => import(
62
+ /* webpackChunkName: 'CreateBlogPost' */
63
+ "../components/pages/CreateBlogPost.vue.js"
64
+ )
65
+ }
66
+ ];
67
+ export {
68
+ communityOrganizationRoutes as default
69
+ };
70
+ //# sourceMappingURL=community.organization.router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"community.organization.router.js","sources":["../../../../../../src/modules/community/router/community.organization.router.js"],"sourcesContent":["const communityOrganizationRoutes = [\n {\n path: '',\n name: 'Posts',\n meta: {\n title: {\n en: 'Posts',\n ru: 'Посты',\n },\n },\n component: () => import(/* webpackChunkName: \"organization-posts\" */ '../components/pages/Posts.vue'),\n },\n {\n path: 'create',\n name: 'CreateBlogPost',\n meta: {\n title: {\n en: 'Create Post',\n ru: 'Создать Пост',\n },\n },\n beforeEnter: async (to, from, next) => {\n const { requiresAuth } = await import('@martyrs/src/modules/auth/views/middlewares/auth.validation.js');\n return requiresAuth(to, from, next);\n },\n component: () => import(/* webpackChunkName: 'CreateBlogPost' */ '../components/pages/CreateBlogPost.vue'),\n },\n {\n path: ':url',\n name: 'BlogPost',\n meta: {\n title: {\n en: 'Post',\n ru: 'Пост',\n },\n },\n component: () => import(/* webpackChunkName: 'BlogPost' */ '../components/pages/BlogPost.vue'),\n },\n {\n path: ':url/edit',\n name: 'EditBlogPost',\n meta: {\n title: {\n en: 'Edit Post',\n ru: 'Редактировать пост',\n },\n },\n beforeEnter: async (to, from, next) => {\n const { requiresAuth } = await import('@martyrs/src/modules/auth/views/middlewares/auth.validation.js');\n return requiresAuth(to, from, next);\n },\n component: () => import(/* webpackChunkName: 'CreateBlogPost' */ '../components/pages/CreateBlogPost.vue'),\n },\n];\n\nexport default communityOrganizationRoutes;\n"],"names":[],"mappings":"AAAK,MAAC,8BAA8B;AAAA,EAClC;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,IACA;AAAA,IACI,WAAW,MAAM;AAAA;AAAA,MAAoD;AAAA,IAA+B;AAAA,EACxG;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,IACA;AAAA,IACI,aAAa,OAAO,IAAI,MAAM,SAAS;AACrC,YAAM,EAAE,aAAY,IAAK,MAAM,OAAO,iDAAgE;AACtG,aAAO,aAAa,IAAI,MAAM,IAAI;AAAA,IACpC;AAAA,IACA,WAAW,MAAM;AAAA;AAAA,MAAgD;AAAA,IAAwC;AAAA,EAC7G;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,IACA;AAAA,IACI,WAAW,MAAM;AAAA;AAAA,MAA0C;AAAA,IAAkC;AAAA,EACjG;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,IACA;AAAA,IACI,aAAa,OAAO,IAAI,MAAM,SAAS;AACrC,YAAM,EAAE,aAAY,IAAK,MAAM,OAAO,iDAAgE;AACtG,aAAO,aAAa,IAAI,MAAM,IAAI;AAAA,IACpC;AAAA,IACA,WAAW,MAAM;AAAA;AAAA,MAAgD;AAAA,IAAwC;AAAA,EAC7G;AACA;"}
@@ -0,0 +1,73 @@
1
+ const communityRoutes = [
2
+ {
3
+ path: ":category?",
4
+ name: "Blog",
5
+ meta: {
6
+ title: {
7
+ en: "Community",
8
+ ru: "Коммьюнити"
9
+ },
10
+ title_hide: true,
11
+ hideNavigationBar: true
12
+ },
13
+ component: () => import(
14
+ /* webpackChunkName: 'Blog' */
15
+ "../components/pages/Blog.vue.js"
16
+ )
17
+ },
18
+ {
19
+ path: "posts/create",
20
+ name: "CreateBlogPost",
21
+ meta: {
22
+ title: {
23
+ en: "Create Post",
24
+ ru: "Создать Пост"
25
+ }
26
+ },
27
+ beforeEnter: async (to, from, next) => {
28
+ const { requiresAuth } = await import("../../auth/views/middlewares/auth.validation.js");
29
+ return requiresAuth(to, from, next);
30
+ },
31
+ component: () => import(
32
+ /* webpackChunkName: 'CreateBlogPost' */
33
+ "../components/pages/CreateBlogPost.vue.js"
34
+ )
35
+ },
36
+ {
37
+ path: "posts/:url",
38
+ name: "BlogPost",
39
+ meta: {
40
+ title: {
41
+ en: "Post",
42
+ ru: "Пост"
43
+ },
44
+ title_hide: false
45
+ },
46
+ component: () => import(
47
+ /* webpackChunkName: 'BlogPost' */
48
+ "../components/pages/BlogPost.vue.js"
49
+ )
50
+ },
51
+ {
52
+ path: "posts/:url/edit",
53
+ name: "EditBlogPost",
54
+ meta: {
55
+ title: {
56
+ en: "Edit Post",
57
+ ru: "Редактировать пост"
58
+ }
59
+ },
60
+ beforeEnter: async (to, from, next) => {
61
+ const { requiresAuth } = await import("../../auth/views/middlewares/auth.validation.js");
62
+ return requiresAuth(to, from, next);
63
+ },
64
+ component: () => import(
65
+ /* webpackChunkName: 'CreateBlogPost' */
66
+ "../components/pages/CreateBlogPost.vue.js"
67
+ )
68
+ }
69
+ ];
70
+ export {
71
+ communityRoutes as default
72
+ };
73
+ //# sourceMappingURL=community.router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"community.router.js","sources":["../../../../../../src/modules/community/router/community.router.js"],"sourcesContent":["const communityRoutes = [\n {\n path: ':category?',\n name: 'Blog',\n meta: {\n title: {\n en: 'Community',\n ru: 'Коммьюнити',\n },\n title_hide: true,\n hideNavigationBar: true,\n },\n component: () => import(/* webpackChunkName: 'Blog' */ '../components/pages/Blog.vue'),\n },\n {\n path: 'posts/create',\n name: 'CreateBlogPost',\n meta: {\n title: {\n en: 'Create Post',\n ru: 'Создать Пост',\n },\n },\n beforeEnter: async (to, from, next) => {\n const { requiresAuth } = await import('@martyrs/src/modules/auth/views/middlewares/auth.validation.js');\n return requiresAuth(to, from, next);\n },\n component: () => import(/* webpackChunkName: 'CreateBlogPost' */ '../components/pages/CreateBlogPost.vue'),\n },\n {\n path: 'posts/:url',\n name: 'BlogPost',\n meta: {\n title: {\n en: 'Post',\n ru: 'Пост',\n },\n title_hide: false,\n },\n component: () => import(/* webpackChunkName: 'BlogPost' */ '../components/pages/BlogPost.vue'),\n },\n {\n path: 'posts/:url/edit',\n name: 'EditBlogPost',\n meta: {\n title: {\n en: 'Edit Post',\n ru: 'Редактировать пост',\n },\n },\n beforeEnter: async (to, from, next) => {\n const { requiresAuth } = await import('@martyrs/src/modules/auth/views/middlewares/auth.validation.js');\n return requiresAuth(to, from, next);\n },\n component: () => import(/* webpackChunkName: 'CreateBlogPost' */ '../components/pages/CreateBlogPost.vue'),\n },\n];\n\nexport default communityRoutes;\n"],"names":[],"mappings":"AAAK,MAAC,kBAAkB;AAAA,EACtB;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,MACM,YAAY;AAAA,MACZ,mBAAmB;AAAA,IACzB;AAAA,IACI,WAAW,MAAM;AAAA;AAAA,MAAsC;AAAA,IAA8B;AAAA,EACzF;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,IACA;AAAA,IACI,aAAa,OAAO,IAAI,MAAM,SAAS;AACrC,YAAM,EAAE,aAAY,IAAK,MAAM,OAAO,iDAAgE;AACtG,aAAO,aAAa,IAAI,MAAM,IAAI;AAAA,IACpC;AAAA,IACA,WAAW,MAAM;AAAA;AAAA,MAAgD;AAAA,IAAwC;AAAA,EAC7G;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,MACM,YAAY;AAAA,IAClB;AAAA,IACI,WAAW,MAAM;AAAA;AAAA,MAA0C;AAAA,IAAkC;AAAA,EACjG;AAAA,EACE;AAAA,IACE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,MAAM;AAAA,MACJ,OAAO;AAAA,QACL,IAAI;AAAA,QACJ,IAAI;AAAA,MACZ;AAAA,IACA;AAAA,IACI,aAAa,OAAO,IAAI,MAAM,SAAS;AACrC,YAAM,EAAE,aAAY,IAAK,MAAM,OAAO,iDAAgE;AACtG,aAAO,aAAa,IAAI,MAAM,IAAI;AAAA,IACpC;AAAA,IACA,WAAW,MAAM;AAAA;AAAA,MAAgD;AAAA,IAAwC;AAAA,EAC7G;AACA;"}