@ozdao/martyrs 0.2.602 → 0.2.604

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 (729) 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 +130 -81
  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/Dropdown/{Dropdown.vue2.js → Dropdown.vue.js} +2 -2
  32. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +1 -0
  33. package/dist/martyrs/src/components/Feed/Carousel.vue.js +1 -1
  34. package/dist/martyrs/src/components/Feed/Feed.vue.js +2 -2
  35. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +4 -4
  36. package/dist/martyrs/src/components/Loader/{Loader.vue2.js → Loader.vue.js} +2 -2
  37. package/dist/martyrs/src/components/Loader/Loader.vue.js.map +1 -0
  38. package/dist/martyrs/src/components/LocationMarker/{LocationMarker.vue.js → LocationMarker.vue2.js} +3 -3
  39. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.js.map +1 -0
  40. package/dist/martyrs/src/components/Media/Media.vue.js +1 -1
  41. package/dist/martyrs/src/components/Table/StatusBadge.vue.js +19 -10
  42. package/dist/martyrs/src/components/Table/StatusBadge.vue.js.map +1 -1
  43. package/dist/martyrs/src/components/Text/Text.vue.js +1 -1
  44. package/dist/martyrs/src/components/Text/Text.vue.js.map +1 -1
  45. package/dist/martyrs/src/components/UploadImage/UploadImage.vue.js +1 -1
  46. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +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 +2 -2
  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/ProfileEdit.vue.js +1 -1
  55. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +13 -13
  56. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +2 -2
  57. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
  58. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +41 -3
  59. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  60. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
  61. package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.js +34 -66
  62. package/dist/martyrs/src/modules/auth/views/components/pages/UserDashboard.vue.js.map +1 -1
  63. package/dist/martyrs/src/modules/auth/views/router/users.router.js +0 -53
  64. package/dist/martyrs/src/modules/auth/views/router/users.router.js.map +1 -1
  65. package/dist/martyrs/src/modules/auth/views/store/auth.js +1 -1
  66. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js +515 -103
  67. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
  68. package/dist/martyrs/src/modules/backoffice/configs/navigation.backoffice.config.js +1 -3
  69. package/dist/martyrs/src/modules/backoffice/configs/navigation.backoffice.config.js.map +1 -1
  70. package/dist/martyrs/src/modules/backoffice/router/backoffice.router.js +1 -32
  71. package/dist/martyrs/src/modules/backoffice/router/backoffice.router.js.map +1 -1
  72. package/dist/martyrs/src/modules/community/community.client.js +49 -8
  73. package/dist/martyrs/src/modules/community/community.client.js.map +1 -1
  74. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +10 -4
  75. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js.map +1 -1
  76. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +3 -3
  77. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  78. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +3 -3
  79. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
  80. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +28 -17
  81. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
  82. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +36 -28
  83. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js.map +1 -1
  84. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +2 -2
  85. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
  86. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js +1 -1
  87. package/dist/martyrs/src/modules/community/router/community.backoffice.router.js +21 -0
  88. package/dist/martyrs/src/modules/community/router/community.backoffice.router.js.map +1 -0
  89. package/dist/martyrs/src/modules/community/router/community.organization.router.js +70 -0
  90. package/dist/martyrs/src/modules/community/router/community.organization.router.js.map +1 -0
  91. package/dist/martyrs/src/modules/community/router/community.router.js +73 -0
  92. package/dist/martyrs/src/modules/community/router/community.router.js.map +1 -0
  93. package/dist/martyrs/src/modules/community/router/community.user.router.js +20 -0
  94. package/dist/martyrs/src/modules/community/router/community.user.router.js.map +1 -0
  95. package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.js +1 -1
  96. package/dist/martyrs/src/modules/constructor/components/elements/Textarea.vue2.js.map +1 -1
  97. package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js.map +1 -1
  98. package/dist/martyrs/src/modules/core/views/classes/core.app.js +5 -3
  99. package/dist/martyrs/src/modules/core/views/classes/core.app.js.map +1 -1
  100. package/dist/martyrs/src/modules/core/views/classes/i18n.manager.js +7 -2
  101. package/dist/martyrs/src/modules/core/views/classes/i18n.manager.js.map +1 -1
  102. package/dist/martyrs/src/modules/core/views/classes/ws.manager.js +11 -5
  103. package/dist/martyrs/src/modules/core/views/classes/ws.manager.js.map +1 -1
  104. package/dist/martyrs/src/modules/core/views/components/blocks/Card.vue.js +53 -18
  105. package/dist/martyrs/src/modules/core/views/components/blocks/Card.vue.js.map +1 -1
  106. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +2 -2
  107. package/dist/martyrs/src/modules/core/views/components/blocks/CardStat.vue.js +44 -0
  108. package/dist/martyrs/src/modules/core/views/components/blocks/CardStat.vue.js.map +1 -0
  109. package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +6 -6
  110. package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.js +2 -2
  111. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +11 -8
  112. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js.map +1 -1
  113. package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.js +5 -5
  114. package/dist/martyrs/src/modules/core/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
  115. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +14 -14
  116. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js.map +1 -1
  117. package/dist/martyrs/src/modules/core/views/components/partials/LocationSelection.vue.js +2 -2
  118. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +28 -29
  119. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js.map +1 -1
  120. package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +6 -6
  121. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js +5 -7
  122. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js.map +1 -1
  123. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js +27 -17
  124. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js.map +1 -1
  125. package/dist/martyrs/src/modules/core/views/components/sections/Walkthrough.vue.js +1 -1
  126. package/dist/martyrs/src/modules/core/views/mixins/mixins.js +3 -3
  127. package/dist/martyrs/src/modules/core/views/mixins/mixins.js.map +1 -1
  128. package/dist/martyrs/src/modules/core/views/router/addRoutes.js +2 -3
  129. package/dist/martyrs/src/modules/core/views/router/addRoutes.js.map +1 -1
  130. package/dist/martyrs/src/modules/core/views/store/core.store.js +1 -1
  131. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js +10 -0
  132. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js.map +1 -1
  133. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +4 -4
  134. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +2 -2
  135. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +3 -3
  136. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +9 -9
  137. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
  138. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +2 -2
  139. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -0
  140. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
  141. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +23 -33
  142. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js.map +1 -1
  143. package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +13 -13
  144. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
  145. package/dist/martyrs/src/modules/events/components/sections/List.vue.js +3 -3
  146. package/dist/martyrs/src/modules/events/components/sections/List.vue.js.map +1 -1
  147. package/dist/martyrs/src/modules/events/events.client.js +37 -15
  148. package/dist/martyrs/src/modules/events/events.client.js.map +1 -1
  149. package/dist/martyrs/src/modules/events/router/events.backoffice.router.js +95 -0
  150. package/dist/martyrs/src/modules/events/router/events.backoffice.router.js.map +1 -0
  151. package/dist/martyrs/src/modules/events/router/events.organization.router.js +95 -0
  152. package/dist/martyrs/src/modules/events/router/events.organization.router.js.map +1 -0
  153. package/dist/martyrs/src/modules/events/router/events.router.js +73 -364
  154. package/dist/martyrs/src/modules/events/router/events.router.js.map +1 -1
  155. package/dist/martyrs/src/modules/events/router/events.user.router.js +65 -0
  156. package/dist/martyrs/src/modules/events/router/events.user.router.js.map +1 -0
  157. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
  158. package/dist/martyrs/src/modules/governance/configs/navigation.initiative.config.js +33 -0
  159. package/dist/martyrs/src/modules/governance/configs/navigation.initiative.config.js.map +1 -0
  160. package/dist/martyrs/src/modules/governance/governance.client.js +31 -0
  161. package/dist/martyrs/src/modules/governance/governance.client.js.map +1 -0
  162. package/dist/martyrs/src/modules/governance/views/components/blocks/CardInitiativeItem.vue.js +110 -0
  163. package/dist/martyrs/src/modules/governance/views/components/blocks/CardInitiativeItem.vue.js.map +1 -0
  164. package/dist/martyrs/src/modules/governance/views/components/blocks/CardSprintItem.vue.js +105 -0
  165. package/dist/martyrs/src/modules/governance/views/components/blocks/CardSprintItem.vue.js.map +1 -0
  166. package/dist/martyrs/src/modules/governance/views/components/blocks/CardTaskItem.vue.js +110 -0
  167. package/dist/martyrs/src/modules/governance/views/components/blocks/CardTaskItem.vue.js.map +1 -0
  168. package/dist/martyrs/src/modules/governance/views/components/blocks/CardVotingItem.vue.js +106 -0
  169. package/dist/martyrs/src/modules/governance/views/components/blocks/CardVotingItem.vue.js.map +1 -0
  170. package/dist/martyrs/src/modules/governance/views/components/pages/Governance.vue.js +52 -0
  171. package/dist/martyrs/src/modules/governance/views/components/pages/Governance.vue.js.map +1 -0
  172. package/dist/martyrs/src/modules/governance/views/components/pages/Initiative.vue.js +684 -0
  173. package/dist/martyrs/src/modules/governance/views/components/pages/Initiative.vue.js.map +1 -0
  174. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeCreate.vue.js +78 -0
  175. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeCreate.vue.js.map +1 -0
  176. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeSprints.vue.js +328 -0
  177. package/dist/martyrs/src/modules/governance/views/components/pages/InitiativeSprints.vue.js.map +1 -0
  178. package/dist/martyrs/src/modules/governance/views/components/pages/Initiatives.vue.js +145 -0
  179. package/dist/martyrs/src/modules/governance/views/components/pages/Initiatives.vue.js.map +1 -0
  180. package/dist/martyrs/src/modules/governance/views/components/pages/Sprint.vue.js +258 -0
  181. package/dist/martyrs/src/modules/governance/views/components/pages/Sprint.vue.js.map +1 -0
  182. package/dist/martyrs/src/modules/governance/views/components/pages/SprintCreate.vue.js +72 -0
  183. package/dist/martyrs/src/modules/governance/views/components/pages/SprintCreate.vue.js.map +1 -0
  184. package/dist/martyrs/src/modules/governance/views/components/pages/Task.vue.js +769 -0
  185. package/dist/martyrs/src/modules/governance/views/components/pages/Task.vue.js.map +1 -0
  186. package/dist/martyrs/src/modules/governance/views/components/pages/TaskCreate.vue.js +88 -0
  187. package/dist/martyrs/src/modules/governance/views/components/pages/TaskCreate.vue.js.map +1 -0
  188. package/dist/martyrs/src/modules/governance/views/components/pages/Tasks.vue.js +291 -0
  189. package/dist/martyrs/src/modules/governance/views/components/pages/Tasks.vue.js.map +1 -0
  190. package/dist/martyrs/src/modules/governance/views/components/pages/Voting.vue.js +267 -0
  191. package/dist/martyrs/src/modules/governance/views/components/pages/Voting.vue.js.map +1 -0
  192. package/dist/martyrs/src/modules/governance/views/components/pages/VotingCreate.vue.js +90 -0
  193. package/dist/martyrs/src/modules/governance/views/components/pages/VotingCreate.vue.js.map +1 -0
  194. package/dist/martyrs/src/modules/governance/views/components/pages/Votings.vue.js +68 -0
  195. package/dist/martyrs/src/modules/governance/views/components/pages/Votings.vue.js.map +1 -0
  196. package/dist/martyrs/src/modules/governance/views/components/partials/EmptyState.vue.js +47 -0
  197. package/dist/martyrs/src/modules/governance/views/components/partials/EmptyState.vue.js.map +1 -0
  198. package/dist/martyrs/src/modules/governance/views/components/partials/LinkedEntityCard.vue.js +164 -0
  199. package/dist/martyrs/src/modules/governance/views/components/partials/LinkedEntityCard.vue.js.map +1 -0
  200. package/dist/martyrs/src/modules/governance/views/components/partials/TaskStatusBadge.vue.js +39 -0
  201. package/dist/martyrs/src/modules/governance/views/components/partials/TaskStatusBadge.vue.js.map +1 -0
  202. package/dist/martyrs/src/modules/governance/views/components/partials/VoteForm.vue.js +112 -0
  203. package/dist/martyrs/src/modules/governance/views/components/partials/VoteForm.vue.js.map +1 -0
  204. package/dist/martyrs/src/modules/governance/views/components/partials/VotingResults.vue.js +187 -0
  205. package/dist/martyrs/src/modules/governance/views/components/partials/VotingResults.vue.js.map +1 -0
  206. package/dist/martyrs/src/modules/governance/views/components/sections/FormInitiativeDetails.vue.js +555 -0
  207. package/dist/martyrs/src/modules/governance/views/components/sections/FormInitiativeDetails.vue.js.map +1 -0
  208. package/dist/martyrs/src/modules/governance/views/components/sections/FormSprintDetails.vue.js +187 -0
  209. package/dist/martyrs/src/modules/governance/views/components/sections/FormSprintDetails.vue.js.map +1 -0
  210. package/dist/martyrs/src/modules/governance/views/components/sections/FormTaskDetails.vue.js +171 -0
  211. package/dist/martyrs/src/modules/governance/views/components/sections/FormTaskDetails.vue.js.map +1 -0
  212. package/dist/martyrs/src/modules/governance/views/components/sections/FormVotingDetails.vue.js +179 -0
  213. package/dist/martyrs/src/modules/governance/views/components/sections/FormVotingDetails.vue.js.map +1 -0
  214. package/dist/martyrs/src/modules/governance/views/router/governance.router.js +502 -0
  215. package/dist/martyrs/src/modules/governance/views/router/governance.router.js.map +1 -0
  216. package/dist/martyrs/src/modules/governance/views/store/initiatives.js +119 -0
  217. package/dist/martyrs/src/modules/governance/views/store/initiatives.js.map +1 -0
  218. package/dist/martyrs/src/modules/governance/views/store/sprints.js +99 -0
  219. package/dist/martyrs/src/modules/governance/views/store/sprints.js.map +1 -0
  220. package/dist/martyrs/src/modules/governance/views/store/tasks.js +115 -0
  221. package/dist/martyrs/src/modules/governance/views/store/tasks.js.map +1 -0
  222. package/dist/martyrs/src/modules/governance/views/store/votings.js +155 -0
  223. package/dist/martyrs/src/modules/governance/views/store/votings.js.map +1 -0
  224. package/dist/martyrs/src/modules/icons/entities/IconCash.vue.js +70 -0
  225. package/dist/martyrs/src/modules/icons/entities/IconCash.vue.js.map +1 -0
  226. package/dist/martyrs/src/modules/icons/icons.client.js +1 -1
  227. package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
  228. package/dist/martyrs/src/modules/icons/{icons.router.js → router/icons.router.js} +1 -1
  229. package/dist/martyrs/src/modules/icons/router/icons.router.js.map +1 -0
  230. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +3 -3
  231. package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.js +3 -3
  232. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +2 -2
  233. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +3 -3
  234. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +1 -1
  235. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +6 -6
  236. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js.map +1 -1
  237. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
  238. package/dist/martyrs/src/modules/music/components/blocks/ActionButtons.vue.js +9 -9
  239. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +4 -4
  240. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +2 -2
  241. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +4 -4
  242. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +7 -7
  243. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +3 -3
  244. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +4 -4
  245. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +3 -3
  246. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +4 -4
  247. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +3 -3
  248. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +3 -3
  249. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +10 -10
  250. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +13 -13
  251. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +11 -11
  252. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +10 -10
  253. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +18 -18
  254. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
  255. package/dist/martyrs/src/modules/music/components/player/FullscreenPlayer.vue.js +2 -2
  256. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +4 -4
  257. package/dist/martyrs/src/modules/music/components/player/PlayerControls.vue.js +10 -10
  258. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.js +6 -6
  259. package/dist/martyrs/src/modules/music/components/sections/PopularTracks.vue.js +63 -0
  260. package/dist/martyrs/src/modules/music/components/sections/PopularTracks.vue.js.map +1 -0
  261. package/dist/martyrs/src/modules/music/music.client.js +29 -25
  262. package/dist/martyrs/src/modules/music/music.client.js.map +1 -1
  263. package/dist/martyrs/src/modules/music/{music.router.js → router/music.router.js} +16 -16
  264. package/dist/martyrs/src/modules/music/router/music.router.js.map +1 -0
  265. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +26 -27
  266. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  267. package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js +119 -60
  268. package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js.map +1 -1
  269. package/dist/martyrs/src/modules/notifications/notifications.client.js +76 -56
  270. package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
  271. package/dist/martyrs/src/modules/notifications/{notifications.router.js → router/notifications.router.js} +3 -3
  272. package/dist/martyrs/src/modules/notifications/router/notifications.router.js.map +1 -0
  273. package/dist/martyrs/src/modules/notifications/store/notifications.store.js +1 -1
  274. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.js +34 -44
  275. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.js.map +1 -1
  276. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.js +47 -57
  277. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.js.map +1 -1
  278. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js +2 -2
  279. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderItem.vue.js.map +1 -1
  280. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +2 -2
  281. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js.map +1 -1
  282. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +3 -3
  283. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +5 -5
  284. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js.map +1 -1
  285. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +7 -7
  286. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js +61 -54
  287. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js.map +1 -1
  288. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js +43 -31
  289. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js.map +1 -1
  290. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +13 -13
  291. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +3 -3
  292. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  293. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +19 -19
  294. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +7 -10
  295. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js.map +1 -1
  296. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +7 -10
  297. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js.map +1 -1
  298. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +4 -4
  299. package/dist/martyrs/src/modules/orders/orders.client.js +16 -16
  300. package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
  301. package/dist/martyrs/src/modules/orders/store/shopcart.js +1 -1
  302. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +11 -4
  303. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js.map +1 -1
  304. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +2 -2
  305. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +2 -2
  306. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +22 -15
  307. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js.map +1 -1
  308. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +2 -2
  309. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +63 -1
  310. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
  311. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +9 -3
  312. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  313. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +13 -7
  314. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
  315. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +24 -30
  316. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  317. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  318. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
  319. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  320. package/dist/martyrs/src/modules/organizations/organizations.client.js +42 -6
  321. package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
  322. package/dist/martyrs/src/modules/organizations/router/organizations.backoffice.router.js +20 -0
  323. package/dist/martyrs/src/modules/organizations/router/organizations.backoffice.router.js.map +1 -0
  324. package/dist/martyrs/src/modules/organizations/router/organizations.router.js +102 -0
  325. package/dist/martyrs/src/modules/organizations/router/organizations.router.js.map +1 -0
  326. package/dist/martyrs/src/modules/organizations/router/organizations.user.router.js +20 -0
  327. package/dist/martyrs/src/modules/organizations/router/organizations.user.router.js.map +1 -0
  328. package/dist/martyrs/src/modules/pages/pages.client.js +1 -1
  329. package/dist/martyrs/src/modules/pages/pages.client.js.map +1 -1
  330. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  331. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +3 -3
  332. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
  333. package/dist/martyrs/src/modules/pages/{pages.router.js → views/router/pages.router.js} +8 -8
  334. package/dist/martyrs/src/modules/pages/views/router/pages.router.js.map +1 -0
  335. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
  336. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js.map +1 -1
  337. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js +1 -1
  338. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  339. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +7 -7
  340. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +1 -1
  341. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +21 -21
  342. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +3 -3
  343. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  344. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +3 -3
  345. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +3 -3
  346. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +20 -20
  347. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +4 -4
  348. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +4 -4
  349. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +3 -3
  350. package/dist/martyrs/src/modules/rents/rents.client.js +1 -1
  351. package/dist/martyrs/src/modules/rents/rents.client.js.map +1 -1
  352. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +6 -6
  353. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +4 -4
  354. package/dist/martyrs/src/modules/rents/{rents.router.js → views/router/rents.router.js} +4 -4
  355. package/dist/martyrs/src/modules/rents/views/router/rents.router.js.map +1 -0
  356. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  357. package/dist/martyrs/src/modules/reports/reports.client.js +1 -1
  358. package/dist/martyrs/src/modules/reports/reports.client.js.map +1 -1
  359. package/dist/martyrs/src/modules/reports/{reports.router.js → router/reports.router.js} +1 -1
  360. package/dist/martyrs/src/modules/reports/router/reports.router.js.map +1 -0
  361. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  362. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +2 -2
  363. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +11 -11
  364. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +21 -21
  365. package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.js +68 -0
  366. package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.js.map +1 -0
  367. package/dist/martyrs/src/modules/wallet/views/router/wallet.router.js +48 -0
  368. package/dist/martyrs/src/modules/wallet/views/router/wallet.router.js.map +1 -0
  369. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js +59 -0
  370. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js.map +1 -0
  371. package/dist/martyrs/src/modules/wallet/wallet.client.js +20 -0
  372. package/dist/martyrs/src/modules/wallet/wallet.client.js.map +1 -0
  373. package/dist/martyrs.es.js +84 -41
  374. package/dist/martyrs.es10.js +126 -0
  375. package/dist/martyrs.es101.js +39 -0
  376. package/dist/martyrs.es102.js +31 -0
  377. package/dist/martyrs.es104.js +27 -0
  378. package/dist/martyrs.es105.js +8 -0
  379. package/dist/martyrs.es106.js +9 -0
  380. package/dist/martyrs.es107.js +79 -0
  381. package/dist/martyrs.es108.js +7 -0
  382. package/dist/martyrs.es109.js +121 -0
  383. package/dist/martyrs.es11.js +49 -0
  384. package/dist/martyrs.es112.js +4 -0
  385. package/dist/martyrs.es113.js +169 -0
  386. package/dist/martyrs.es114.js +460 -0
  387. package/dist/martyrs.es115.js +42 -0
  388. package/dist/martyrs.es116.js +12 -0
  389. package/dist/martyrs.es117.js +52 -0
  390. package/dist/martyrs.es118.js +14 -0
  391. package/dist/martyrs.es119.js +47 -0
  392. package/dist/martyrs.es12.js +94 -0
  393. package/dist/martyrs.es120.js +7 -0
  394. package/dist/martyrs.es121.js +131 -0
  395. package/dist/martyrs.es122.js +103 -0
  396. package/dist/martyrs.es123.js +89 -0
  397. package/dist/martyrs.es124.js +40 -0
  398. package/dist/martyrs.es125.js +14 -0
  399. package/dist/martyrs.es126.js +42 -0
  400. package/dist/martyrs.es127.js +11 -0
  401. package/dist/martyrs.es128.js +25 -0
  402. package/dist/martyrs.es129.js +7 -0
  403. package/dist/martyrs.es13.js +48 -0
  404. package/dist/martyrs.es130.js +10 -0
  405. package/dist/martyrs.es131.js +119 -0
  406. package/dist/martyrs.es132.js +20 -0
  407. package/dist/martyrs.es133.js +18 -0
  408. package/dist/martyrs.es134.js +6 -0
  409. package/dist/martyrs.es135.js +35 -0
  410. package/dist/martyrs.es136.js +12 -0
  411. package/dist/martyrs.es137.js +23 -0
  412. package/dist/martyrs.es138.js +12 -0
  413. package/dist/martyrs.es139.js +11 -0
  414. package/dist/martyrs.es14.js +101 -0
  415. package/dist/martyrs.es140.js +47 -0
  416. package/dist/martyrs.es141.js +483 -0
  417. package/dist/martyrs.es142.js +8 -0
  418. package/dist/martyrs.es143.js +4 -0
  419. package/dist/martyrs.es144.js +33 -0
  420. package/dist/martyrs.es145.js +14 -0
  421. package/dist/martyrs.es146.js +19 -0
  422. package/dist/martyrs.es147.js +22 -0
  423. package/dist/martyrs.es148.js +31 -0
  424. package/dist/martyrs.es149.js +23 -0
  425. package/dist/martyrs.es15.js +408 -0
  426. package/dist/martyrs.es16.js +58 -0
  427. package/dist/martyrs.es17.js +44 -0
  428. package/dist/martyrs.es18.js +42 -0
  429. package/dist/martyrs.es19.js +27 -0
  430. package/dist/martyrs.es2.js +88 -0
  431. package/dist/martyrs.es20.js +13 -0
  432. package/dist/martyrs.es21.js +57 -0
  433. package/dist/martyrs.es22.js +104 -0
  434. package/dist/martyrs.es23.js +178 -0
  435. package/dist/martyrs.es24.js +123 -0
  436. package/dist/martyrs.es25.js +139 -0
  437. package/dist/martyrs.es26.js +21 -0
  438. package/dist/martyrs.es27.js +60 -0
  439. package/dist/martyrs.es28.js +75 -0
  440. package/dist/martyrs.es29.js +36 -0
  441. package/dist/martyrs.es3.js +116 -0
  442. package/dist/martyrs.es30.js +348 -0
  443. package/dist/martyrs.es31.js +83 -0
  444. package/dist/martyrs.es32.js +148 -0
  445. package/dist/martyrs.es33.js +175 -0
  446. package/dist/martyrs.es34.js +66 -0
  447. package/dist/martyrs.es35.js +57 -0
  448. package/dist/martyrs.es36.js +76 -0
  449. package/dist/martyrs.es37.js +101 -0
  450. package/dist/martyrs.es38.js +39 -0
  451. package/dist/martyrs.es39.js +124 -0
  452. package/dist/martyrs.es4.js +85 -0
  453. package/dist/martyrs.es40.js +120 -0
  454. package/dist/martyrs.es41.js +229 -0
  455. package/dist/martyrs.es43.js +29 -0
  456. package/dist/martyrs.es44.js +27 -0
  457. package/dist/martyrs.es46.js +9 -0
  458. package/dist/martyrs.es48.js +18 -0
  459. package/dist/martyrs.es5.js +395 -0
  460. package/dist/martyrs.es50.js +42 -0
  461. package/dist/martyrs.es52.js +255 -0
  462. package/dist/martyrs.es54.js +8 -0
  463. package/dist/martyrs.es6.js +70 -0
  464. package/dist/martyrs.es61.js +139 -0
  465. package/dist/martyrs.es65.js +28 -0
  466. package/dist/martyrs.es68.js +33 -0
  467. package/dist/martyrs.es69.js +37 -0
  468. package/dist/martyrs.es7.js +17 -0
  469. package/dist/martyrs.es71.js +114 -0
  470. package/dist/martyrs.es73.js +83 -0
  471. package/dist/martyrs.es74.js +52 -0
  472. package/dist/martyrs.es75.js +75 -0
  473. package/dist/martyrs.es76.js +176 -0
  474. package/dist/martyrs.es77.js +31 -0
  475. package/dist/martyrs.es78.js +38 -0
  476. package/dist/martyrs.es8.js +127 -0
  477. package/dist/martyrs.es81.js +32 -0
  478. package/dist/martyrs.es86.js +37 -0
  479. package/dist/martyrs.es89.js +37 -0
  480. package/dist/martyrs.es9.js +396 -0
  481. package/dist/martyrs.es91.js +63 -0
  482. package/dist/martyrs.es92.js +35 -0
  483. package/dist/martyrs.es94.js +41 -0
  484. package/dist/martyrs.es95.js +59 -0
  485. package/dist/martyrs.es96.js +123 -0
  486. package/dist/martyrs.es97.js +43 -0
  487. package/dist/martyrs.es98.js +86 -0
  488. package/dist/martyrs.es99.js +33 -0
  489. package/dist/music.server.js +11 -11
  490. package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.4/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.js +1 -1
  491. package/dist/node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.3.0_@capacitor_core@7.4.4/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/web.js +1 -1
  492. package/dist/node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.4/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/index.js +1 -1
  493. package/dist/node_modules/.pnpm/capacitor-plugin-app-tracking-transparency@2.0.5_@capacitor_core@7.4.4/node_modules/capacitor-plugin-app-tracking-transparency/dist/esm/web.js +1 -1
  494. package/dist/notifications.server.js +16 -6
  495. package/dist/orders.server.js +264 -145
  496. package/dist/organizations.server.js +22 -6
  497. package/dist/products.server.js +7 -7
  498. package/dist/rents.server.js +4 -3
  499. package/dist/style.css +970 -986
  500. package/package.json +13 -6
  501. package/src/builder/modes/ssr.rspack.dev.js +32 -20
  502. package/src/builder/rspack/rspack.config.api.js +3 -0
  503. package/src/builder/rspack/rspack.config.base.js +9 -1
  504. package/src/builder/rspack/rspack.config.ssr.client.js +8 -5
  505. package/src/components/Block/Block.vue +1 -1
  506. package/src/components/Button/Button.vue +4 -4
  507. package/src/components/Table/StatusBadge.vue +24 -18
  508. package/src/components/Text/Text.vue +1 -1
  509. package/src/jit/core.js +72 -35
  510. package/src/jit/plugin.js +4 -3
  511. package/src/jit/rules.js +15 -15
  512. package/src/modules/TASKS.MD +30 -0
  513. package/src/modules/TASK_ACTIVITY.md +60 -0
  514. package/src/modules/TASK_MODULE_ARCH.md +391 -0
  515. package/src/modules/auth/controllers/routes/users.routes.js +8 -0
  516. package/src/modules/auth/controllers/services/users.service.js +51 -1
  517. package/src/modules/auth/views/components/blocks/PopupAuth.vue +1 -1
  518. package/src/modules/auth/views/components/pages/ProfileBlogposts.vue +25 -24
  519. package/src/modules/auth/views/components/pages/SignIn.vue +10 -1
  520. package/src/modules/auth/views/components/pages/UserDashboard.vue +35 -62
  521. package/src/modules/auth/views/router/users.router.js +0 -44
  522. package/src/modules/backoffice/components/pages/Dashboard.vue +423 -120
  523. package/src/modules/backoffice/configs/navigation.backoffice.config.js +0 -2
  524. package/src/modules/backoffice/router/backoffice.router.js +0 -25
  525. package/src/modules/community/community.client.js +54 -9
  526. package/src/modules/community/components/blocks/CardBlogpost.vue +10 -3
  527. package/src/modules/community/components/layouts/Community.vue +3 -3
  528. package/src/modules/community/components/pages/BlogPost.vue +1 -1
  529. package/src/modules/community/components/pages/CreateBlogPost.vue +19 -20
  530. package/src/modules/community/components/pages/Posts.vue +43 -28
  531. package/src/modules/community/components/sections/Comment.vue +1 -1
  532. package/src/modules/community/controllers/blog.controller.js +4 -5
  533. package/src/modules/community/models/reaction.model.js +1 -0
  534. package/src/modules/community/router/community.backoffice.router.js +16 -0
  535. package/src/modules/community/router/community.organization.router.js +56 -0
  536. package/src/modules/community/router/community.router.js +58 -106
  537. package/src/modules/community/router/community.user.router.js +15 -0
  538. package/src/modules/constructor/components/elements/Textarea.vue +1 -1
  539. package/src/modules/constructor/components/sections/Constructor.vue +1 -1
  540. package/src/modules/core/controllers/classes/core.validator.js +7 -1
  541. package/src/modules/core/controllers/classes/core.verifier.js +0 -2
  542. package/src/modules/core/controllers/classes/crud/crud.controller.js +0 -4
  543. package/src/modules/core/controllers/classes/crud/crud.service.js +1 -0
  544. package/src/modules/core/models/schemas/engagement.schema.js +19 -22
  545. package/src/modules/core/views/classes/core.app.js +6 -4
  546. package/src/modules/core/views/classes/i18n.manager.js +9 -2
  547. package/src/modules/core/views/classes/ws.manager.js +17 -7
  548. package/src/modules/core/views/components/blocks/Card.vue +47 -24
  549. package/src/modules/core/views/components/blocks/CardStat.vue +27 -0
  550. package/src/modules/core/views/components/blocks/PopupAuth.vue +1 -1
  551. package/src/modules/core/views/components/layouts/Client.vue +5 -4
  552. package/src/modules/core/views/components/partials/BottomNavigationBar.vue +5 -5
  553. package/src/modules/core/views/components/partials/Header.vue +2 -2
  554. package/src/modules/core/views/components/partials/Navigation.vue +13 -14
  555. package/src/modules/core/views/components/partials/Sidebar.vue +4 -6
  556. package/src/modules/core/views/components/sections/SectionPageTitle.vue +23 -15
  557. package/src/modules/core/views/mixins/mixins.js +4 -3
  558. package/src/modules/core/views/router/addRoutes.js +1 -2
  559. package/src/modules/core/views/utils/vue-app-renderer.js +12 -0
  560. package/src/modules/events/components/pages/EditEventTickets.vue +1 -1
  561. package/src/modules/events/components/pages/Events.vue +1 -0
  562. package/src/modules/events/components/pages/EventsBackoffice.vue +23 -48
  563. package/src/modules/events/components/sections/List.vue +2 -2
  564. package/src/modules/events/events.client.js +44 -17
  565. package/src/modules/events/router/events.backoffice.router.js +80 -0
  566. package/src/modules/events/router/events.organization.router.js +80 -0
  567. package/src/modules/events/router/events.router.js +55 -325
  568. package/src/modules/events/router/events.user.router.js +49 -0
  569. package/src/modules/governance/TASK-TRACKER.MD +534 -39
  570. package/src/modules/governance/configs/navigation.initiative.config.js +30 -0
  571. package/src/modules/governance/controllers/routes/initiatives.routes.js +55 -8
  572. package/src/modules/governance/controllers/routes/{milestones.routes.js → sprints.routes.js} +22 -22
  573. package/src/modules/governance/controllers/routes/tasks.routes.js +2 -2
  574. package/src/modules/governance/governance.client.js +1 -4
  575. package/src/modules/governance/governance.server.js +6 -6
  576. package/src/modules/governance/middlewares/initiatives.verifier.js +60 -0
  577. package/src/modules/governance/middlewares/{milestones.verifier.js → sprints.verifier.js} +10 -10
  578. package/src/modules/governance/middlewares/tasks.verifier.js +4 -4
  579. package/src/modules/governance/middlewares/votings.verifier.js +25 -7
  580. package/src/modules/governance/models/{milestone.model.js → sprint.model.js} +11 -11
  581. package/src/modules/governance/models/task.model.js +4 -4
  582. package/src/modules/governance/models/voting.model.js +10 -5
  583. package/src/modules/governance/views/components/blocks/CardInitiativeItem.vue +8 -13
  584. package/src/modules/governance/views/components/blocks/{CardMilestoneItem.vue → CardSprintItem.vue} +16 -17
  585. package/src/modules/governance/views/components/blocks/CardTaskItem.vue +7 -9
  586. package/src/modules/governance/views/components/blocks/CardVotingItem.vue +7 -9
  587. package/src/modules/governance/views/components/pages/Governance.vue +13 -34
  588. package/src/modules/governance/views/components/pages/Initiative.vue +73 -154
  589. package/src/modules/governance/views/components/pages/InitiativeCreate.vue +44 -7
  590. package/src/modules/governance/views/components/pages/{Roadmap.vue → InitiativeSprints.vue} +70 -69
  591. package/src/modules/governance/views/components/pages/Initiatives.vue +23 -108
  592. package/src/modules/governance/views/components/pages/{Milestone.vue → Sprint.vue} +43 -41
  593. package/src/modules/governance/views/components/pages/SprintCreate.vue +55 -0
  594. package/src/modules/governance/views/components/pages/Task.vue +95 -88
  595. package/src/modules/governance/views/components/pages/TaskCreate.vue +47 -9
  596. package/src/modules/governance/views/components/pages/Tasks.vue +25 -21
  597. package/src/modules/governance/views/components/pages/Voting.vue +84 -68
  598. package/src/modules/governance/views/components/pages/VotingCreate.vue +48 -8
  599. package/src/modules/governance/views/components/pages/Votings.vue +12 -57
  600. package/src/modules/governance/views/components/partials/EmptyState.vue +1 -1
  601. package/src/modules/governance/views/components/partials/LinkedEntityCard.vue +23 -11
  602. package/src/modules/governance/views/components/partials/TaskStatusBadge.vue +1 -1
  603. package/src/modules/governance/views/components/partials/VoteForm.vue +3 -3
  604. package/src/modules/governance/views/components/partials/VotingResults.vue +13 -19
  605. package/src/modules/governance/views/components/sections/FormInitiativeDetails.vue +413 -15
  606. package/src/modules/governance/views/components/sections/FormSprintDetails.vue +156 -0
  607. package/src/modules/governance/views/components/sections/FormTaskDetails.vue +125 -21
  608. package/src/modules/governance/views/components/sections/FormVotingDetails.vue +136 -17
  609. package/src/modules/governance/views/components/sections/VoteForm.vue +2 -2
  610. package/src/modules/governance/views/router/governance.router.js +255 -151
  611. package/src/modules/governance/views/store/initiatives.js +23 -2
  612. package/src/modules/governance/views/store/sprints.js +102 -0
  613. package/src/modules/governance/views/store/tasks.js +25 -9
  614. package/src/modules/governance/views/store/votings.js +106 -27
  615. package/src/modules/icons/icons.client.js +1 -1
  616. package/src/modules/inventory/components/pages/InventoryEdit.vue +1 -1
  617. package/src/modules/music/components/sections/PopularTracks.vue +52 -0
  618. package/src/modules/music/music.client.js +8 -1
  619. package/src/modules/music/router/music.router.js +13 -1
  620. package/src/modules/notifications/components/elements/NotificationBadge.vue +8 -33
  621. package/src/modules/notifications/components/sections/NotificationPreferences.vue +110 -48
  622. package/src/modules/notifications/notifications.client.js +78 -57
  623. package/src/modules/notifications/router/notifications.router.js +32 -15
  624. package/src/modules/notifications/services/notification.service.js +15 -6
  625. package/src/modules/notifications/services/web-push.service.js +2 -0
  626. package/src/modules/orders/components/blocks/CardApplication.vue +20 -40
  627. package/src/modules/orders/components/blocks/CardCustomer.vue +35 -55
  628. package/src/modules/orders/components/blocks/CardOrderItem.vue +2 -2
  629. package/src/modules/orders/components/blocks/CardOrderUser.vue +2 -2
  630. package/src/modules/orders/components/forms/FormCustomerDetails.vue +2 -2
  631. package/src/modules/orders/components/pages/Applications.vue +59 -57
  632. package/src/modules/orders/components/pages/Customers.vue +40 -27
  633. package/src/modules/orders/components/pages/OrderCreate.vue +1 -1
  634. package/src/modules/orders/components/sections/ApplicationDetails.vue +1 -4
  635. package/src/modules/orders/components/sections/CustomerDetails.vue +1 -4
  636. package/src/modules/orders/controllers/orders.controller.js +113 -0
  637. package/src/modules/orders/middlewares/applications.verifier.js +13 -37
  638. package/src/modules/orders/middlewares/customers.verifier.js +44 -121
  639. package/src/modules/orders/models/customer.model.js +0 -1
  640. package/src/modules/orders/routes/applications.routes.js +108 -50
  641. package/src/modules/orders/routes/orders.routes.js +9 -1
  642. package/src/modules/organizations/components/blocks/CardOrganization.vue +12 -4
  643. package/src/modules/organizations/components/forms/DepartmentForm.vue +9 -4
  644. package/src/modules/organizations/components/pages/Members.vue +62 -1
  645. package/src/modules/organizations/components/pages/Organization.new.vue +17 -17
  646. package/src/modules/organizations/components/pages/Organization.vue +8 -1
  647. package/src/modules/organizations/components/pages/OrganizationBackoffice.vue +1 -1
  648. package/src/modules/organizations/components/pages/OrganizationEdit.vue +11 -4
  649. package/src/modules/organizations/components/pages/Organizations.vue +33 -46
  650. package/src/modules/organizations/controllers/invites.controller.js +19 -0
  651. package/src/modules/organizations/controllers/memberships.controller.js +1 -0
  652. package/src/modules/organizations/organizations.client.js +48 -7
  653. package/src/modules/organizations/router/organizations.backoffice.router.js +15 -0
  654. package/src/modules/organizations/router/organizations.router.js +72 -112
  655. package/src/modules/organizations/router/organizations.user.router.js +15 -0
  656. package/src/modules/pages/pages.client.js +1 -1
  657. package/src/modules/pages/views/router/pages.router.js +95 -15
  658. package/src/modules/products/components/blocks/CardPosition.vue +1 -1
  659. package/src/modules/products/components/pages/Products.vue +3 -3
  660. package/src/modules/rents/controllers/services/rents.services.js +1 -0
  661. package/src/modules/rents/rents.client.js +1 -1
  662. package/src/modules/rents/views/router/rents.router.js +93 -33
  663. package/src/modules/reports/reports.client.js +1 -1
  664. package/src/modules/wallet/wallet.client.js +1 -1
  665. package/src/styles/theme.scss +5 -3
  666. package/dist/engagement.schema-fh6W1fb_.js +0 -24
  667. package/dist/main-DQm5pwFO.js +0 -8213
  668. package/dist/martyrs/dist/main-DQm5pwFO.js +0 -1080
  669. package/dist/martyrs/dist/main-DQm5pwFO.js.map +0 -1
  670. package/dist/martyrs/dist/web-n_ivHO3v.js +0 -55
  671. package/dist/martyrs/dist/web-n_ivHO3v.js.map +0 -1
  672. package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.4.4/node_modules/@capacitor/core/dist/index.js +0 -487
  673. package/dist/martyrs/node_modules/.pnpm/@capacitor_core@7.4.4/node_modules/@capacitor/core/dist/index.js.map +0 -1
  674. package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/index.js +0 -8
  675. package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/index.js.map +0 -1
  676. package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/web.js +0 -73
  677. package/dist/martyrs/node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/web.js.map +0 -1
  678. package/dist/martyrs/src/components/Address/Address.vue.js.map +0 -1
  679. package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
  680. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.js.map +0 -1
  681. package/dist/martyrs/src/components/Loader/Loader.vue2.js.map +0 -1
  682. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js.map +0 -1
  683. package/dist/martyrs/src/modules/community/community.router.js +0 -124
  684. package/dist/martyrs/src/modules/community/community.router.js.map +0 -1
  685. package/dist/martyrs/src/modules/icons/icons.router.js.map +0 -1
  686. package/dist/martyrs/src/modules/music/music.router.js.map +0 -1
  687. package/dist/martyrs/src/modules/notifications/notifications.router.js.map +0 -1
  688. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +0 -200
  689. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +0 -1
  690. package/dist/martyrs/src/modules/organizations/organizations.router.js +0 -145
  691. package/dist/martyrs/src/modules/organizations/organizations.router.js.map +0 -1
  692. package/dist/martyrs/src/modules/pages/pages.router.js.map +0 -1
  693. package/dist/martyrs/src/modules/rents/rents.router.js.map +0 -1
  694. package/dist/martyrs/src/modules/reports/reports.router.js.map +0 -1
  695. package/dist/martyrs.css +0 -1
  696. package/dist/node_modules/.pnpm/@capacitor_core@7.4.4/node_modules/@capacitor/core/dist/index.js +0 -487
  697. package/dist/node_modules/.pnpm/@capacitor_core@7.4.4/node_modules/@capacitor/core/dist/index.js.map +0 -1
  698. 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
  699. 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
  700. 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
  701. 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
  702. 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
  703. 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
  704. 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
  705. 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
  706. 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
  707. 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
  708. package/dist/web-n_ivHO3v.js +0 -54
  709. package/src/jit/.claude/settings.local.json +0 -10
  710. package/src/modules/community/community.router.js +0 -107
  711. package/src/modules/governance/governance.router.js +0 -350
  712. package/src/modules/governance/seed-governance.js +0 -348
  713. package/src/modules/governance/views/components/pages/InitiativeMilestones.vue +0 -159
  714. package/src/modules/governance/views/router/goverance.router.js +0 -290
  715. package/src/modules/governance/views/store/votes.js +0 -113
  716. package/src/modules/icons/icons.router.js +0 -29
  717. package/src/modules/marketplace/marketplace.router.js +0 -66
  718. package/src/modules/music/.claude/settings.local.json +0 -8
  719. package/src/modules/music/music.router.js +0 -188
  720. package/src/modules/notifications/notifications.router.js +0 -47
  721. package/src/modules/orders/orders.router.js +0 -255
  722. package/src/modules/organizations/organizations.router.js +0 -123
  723. package/src/modules/organizations/router/backoffice.router.js +0 -27
  724. package/src/modules/organizations/router/departments.router.js +0 -15
  725. package/src/modules/organizations/router/members.router.js +0 -20
  726. package/src/modules/pages/pages.router.js +0 -107
  727. package/src/modules/rents/rents.router.js +0 -115
  728. package/src/modules/reports/reports.router.js +0 -33
  729. package/src/modules/wallet/wallet.router.js +0 -45
@@ -1,9 +1,12 @@
1
- import { useSlots, createBlock, openBlock, resolveDynamicComponent, withCtx, createElementBlock, Fragment, renderSlot, createElementVNode, createCommentVNode, toDisplayString, withModifiers, mergeProps, createTextVNode } from "vue";
1
+ import { useSlots, createBlock, openBlock, resolveDynamicComponent, withCtx, createElementBlock, Fragment, renderSlot, createElementVNode, normalizeClass, createCommentVNode, toDisplayString, withModifiers, mergeProps, createTextVNode } from "vue";
2
2
  import Skeleton from "../../../../../components/Skeleton/Skeleton.vue2.js";
3
3
  import PlaceholderUserpic from "../../../../icons/placeholders/PlaceholderUserpic.vue.js";
4
4
  const _hoisted_1 = ["src", "alt"];
5
- const _hoisted_2 = { key: 0 };
6
- const _hoisted_3 = { key: 1 };
5
+ const _hoisted_2 = ["src", "alt"];
6
+ const _hoisted_3 = {
7
+ key: 1,
8
+ class: "t-dark t-small"
9
+ };
7
10
  const _sfc_main = {
8
11
  __name: "Card",
9
12
  props: {
@@ -13,10 +16,14 @@ const _sfc_main = {
13
16
  subtitle: String,
14
17
  action: Object,
15
18
  // Функционал
19
+ to: [String, Object],
16
20
  tag: String,
17
21
  placeholder: [String, Object],
18
22
  loading: Boolean,
19
- skeletonStructure: Array
23
+ skeletonStructure: Array,
24
+ // Классы для layout
25
+ classImage: String,
26
+ classContent: String
20
27
  },
21
28
  emits: ["click"],
22
29
  setup(__props, { emit: __emit }) {
@@ -26,7 +33,10 @@ const _sfc_main = {
26
33
  emit("click");
27
34
  };
28
35
  return (_ctx, _cache) => {
29
- return openBlock(), createBlock(resolveDynamicComponent(__props.tag || "div"), { onClick: handleClick }, {
36
+ return openBlock(), createBlock(resolveDynamicComponent(__props.to ? "router-link" : __props.tag || "div"), {
37
+ to: __props.to,
38
+ onClick: handleClick
39
+ }, {
30
40
  default: withCtx(() => [
31
41
  __props.loading ? (openBlock(), createBlock(Skeleton, {
32
42
  key: 0,
@@ -35,24 +45,49 @@ const _sfc_main = {
35
45
  loading: true
36
46
  }, null, 8, ["structure"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
37
47
  renderSlot(_ctx.$slots, "image", {}, () => [
38
- __props.photo ? (openBlock(), createElementBlock("img", {
48
+ __props.classImage ? (openBlock(), createElementBlock("div", {
39
49
  key: 0,
40
- src: (_ctx.FILE_SERVER_URL || "") + __props.photo,
41
- alt: __props.title,
42
- loading: "lazy"
43
- }, null, 8, _hoisted_1)) : __props.placeholder ? (openBlock(), createBlock(resolveDynamicComponent(__props.placeholder), { key: 1 })) : (openBlock(), createBlock(PlaceholderUserpic, {
44
- key: 2,
45
- class: "h-100"
46
- }))
50
+ class: normalizeClass(__props.classImage)
51
+ }, [
52
+ __props.photo ? (openBlock(), createElementBlock("img", {
53
+ key: 0,
54
+ src: (_ctx.FILE_SERVER_URL || "") + __props.photo,
55
+ alt: __props.title,
56
+ loading: "lazy",
57
+ class: "w-100 h-100 object-fit-cover"
58
+ }, null, 8, _hoisted_1)) : __props.placeholder ? (openBlock(), createBlock(resolveDynamicComponent(__props.placeholder), {
59
+ key: 1,
60
+ class: "i-regular",
61
+ fill: "rgb(var(--main))"
62
+ })) : (openBlock(), createBlock(PlaceholderUserpic, {
63
+ key: 2,
64
+ class: "h-100"
65
+ }))
66
+ ], 2)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
67
+ __props.photo ? (openBlock(), createElementBlock("img", {
68
+ key: 0,
69
+ src: (_ctx.FILE_SERVER_URL || "") + __props.photo,
70
+ alt: __props.title,
71
+ loading: "lazy"
72
+ }, null, 8, _hoisted_2)) : __props.placeholder ? (openBlock(), createBlock(resolveDynamicComponent(__props.placeholder), { key: 1 })) : (openBlock(), createBlock(PlaceholderUserpic, {
73
+ key: 2,
74
+ class: "h-100"
75
+ }))
76
+ ], 64))
47
77
  ]),
48
- createElementVNode("div", null, [
78
+ createElementVNode("div", {
79
+ class: normalizeClass(__props.classContent)
80
+ }, [
49
81
  renderSlot(_ctx.$slots, "header", {}, () => [
50
- __props.title ? (openBlock(), createElementBlock("p", _hoisted_2, toDisplayString(__props.title), 1)) : createCommentVNode("", true),
51
- __props.subtitle ? (openBlock(), createElementBlock("span", _hoisted_3, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true)
82
+ __props.title ? (openBlock(), createElementBlock("p", {
83
+ key: 0,
84
+ class: normalizeClass(["fw-medium t-truncate", { "mn-b-thin": __props.subtitle }])
85
+ }, toDisplayString(__props.title), 3)) : createCommentVNode("", true),
86
+ __props.subtitle ? (openBlock(), createElementBlock("p", _hoisted_3, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true)
52
87
  ]),
53
88
  renderSlot(_ctx.$slots, "default"),
54
89
  renderSlot(_ctx.$slots, "footer")
55
- ]),
90
+ ], 2),
56
91
  renderSlot(_ctx.$slots, "actions", {}, () => [
57
92
  __props.action ? (openBlock(), createElementBlock("button", {
58
93
  key: 0,
@@ -66,7 +101,7 @@ const _sfc_main = {
66
101
  ], 64))
67
102
  ]),
68
103
  _: 3
69
- });
104
+ }, 8, ["to"]);
70
105
  };
71
106
  }
72
107
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Card.vue.js","sources":["../../../../../../../../src/modules/core/views/components/blocks/Card.vue"],"sourcesContent":["<template>\n <component :is=\"tag || 'div'\" @click=\"handleClick\">\n <!-- Skeleton режим -->\n <Skeleton\n v-if=\"loading\"\n :structure=\"skeletonStructure\"\n :horizontal=\"true\"\n :loading=\"true\"\n />\n \n <!-- Обычный режим -->\n <template v-else>\n <!-- Изображение -->\n <slot name=\"image\">\n <img\n v-if=\"photo\"\n :src=\"(FILE_SERVER_URL || '') + photo\"\n :alt=\"title\"\n loading=\"lazy\"\n />\n <component\n v-else-if=\"placeholder\"\n :is=\"placeholder\"\n />\n <PlaceholderUserpic class=\"h-100\" v-else />\n </slot>\n\n <!-- Контент -->\n <div>\n <slot name=\"header\">\n <p v-if=\"title\">{{ title }}</p>\n <span v-if=\"subtitle\">{{ subtitle }}</span>\n </slot>\n \n <slot />\n \n <slot name=\"footer\" />\n </div>\n\n <!-- Действия -->\n <slot name=\"actions\">\n <button\n v-if=\"action\"\n @click.stop=\"action.method\"\n >\n <component \n v-if=\"action.label?.is\" \n :is=\"action.label.is\" \n v-bind=\"action.label.props\"\n class=\"i-medium\"\n />\n <template v-else>\n {{ action.label }}\n </template>\n </button>\n </slot>\n </template>\n </component>\n</template>\n\n<script setup>\nimport { useSlots } from 'vue'\nimport Skeleton from '@martyrs/src/components/Skeleton/Skeleton.vue'\nimport PlaceholderUserpic from '@martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue'\n\nconst props = defineProps({\n // Данные\n photo: String,\n title: String,\n subtitle: String,\n action: Object,\n \n // Функционал\n tag: String,\n placeholder: [String, Object],\n loading: Boolean,\n skeletonStructure: Array\n})\n\nconst emit = defineEmits(['click'])\nconst slots = useSlots()\n\nconst handleClick = () => {\n emit('click')\n}\n</script>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA+EA,UAAM,OAAO;AACC,aAAQ;AAEtB,UAAM,cAAc,MAAM;AACxB,WAAK,OAAO;AAAA,IACd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Card.vue.js","sources":["../../../../../../../../src/modules/core/views/components/blocks/Card.vue"],"sourcesContent":["<template>\n <component :is=\"to ? 'router-link' : (tag || 'div')\" :to=\"to\" @click=\"handleClick\">\n <!-- Skeleton режим -->\n <Skeleton\n v-if=\"loading\"\n :structure=\"skeletonStructure\"\n :horizontal=\"true\"\n :loading=\"true\"\n />\n\n <!-- Обычный режим -->\n <template v-else>\n <!-- Изображение -->\n <slot name=\"image\">\n <div v-if=\"classImage\" :class=\"classImage\">\n <img\n v-if=\"photo\"\n :src=\"(FILE_SERVER_URL || '') + photo\"\n :alt=\"title\"\n loading=\"lazy\"\n class=\"w-100 h-100 object-fit-cover\"\n />\n <component\n v-else-if=\"placeholder\"\n :is=\"placeholder\"\n class=\"i-regular\"\n :fill=\"'rgb(var(--main))'\"\n />\n <PlaceholderUserpic class=\"h-100\" v-else />\n </div>\n <template v-else>\n <img\n v-if=\"photo\"\n :src=\"(FILE_SERVER_URL || '') + photo\"\n :alt=\"title\"\n loading=\"lazy\"\n />\n <component\n v-else-if=\"placeholder\"\n :is=\"placeholder\"\n />\n <PlaceholderUserpic class=\"h-100\" v-else />\n </template>\n </slot>\n\n <!-- Контент -->\n <div :class=\"classContent\">\n <slot name=\"header\">\n <p v-if=\"title\" class=\"fw-medium t-truncate\" :class=\"{ 'mn-b-thin': subtitle }\">{{ title }}</p>\n <p v-if=\"subtitle\" class=\"t-dark t-small\">{{ subtitle }}</p>\n </slot>\n\n <slot />\n\n <slot name=\"footer\" />\n </div>\n\n <!-- Действия -->\n <slot name=\"actions\">\n <button\n v-if=\"action\"\n @click.stop=\"action.method\"\n >\n <component\n v-if=\"action.label?.is\"\n :is=\"action.label.is\"\n v-bind=\"action.label.props\"\n class=\"i-medium\"\n />\n <template v-else>\n {{ action.label }}\n </template>\n </button>\n </slot>\n </template>\n </component>\n</template>\n\n<script setup>\nimport { useSlots } from 'vue'\nimport Skeleton from '@martyrs/src/components/Skeleton/Skeleton.vue'\nimport PlaceholderUserpic from '@martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue'\n\nconst props = defineProps({\n // Данные\n photo: String,\n title: String,\n subtitle: String,\n action: Object,\n\n // Функционал\n to: [String, Object],\n tag: String,\n placeholder: [String, Object],\n loading: Boolean,\n skeletonStructure: Array,\n\n // Классы для layout\n classImage: String,\n classContent: String\n})\n\nconst emit = defineEmits(['click'])\nconst slots = useSlots()\n\nconst handleClick = () => {\n emit('click')\n}\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsGA,UAAM,OAAO;AACC,aAAQ;AAEtB,UAAM,cAAc,MAAM;AACxB,WAAK,OAAO;AAAA,IACd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,12 +1,12 @@
1
1
  import { resolveComponent, createElementBlock, createCommentVNode, openBlock, createElementVNode, createBlock, withModifiers, resolveDynamicComponent, toDisplayString, withCtx, createTextVNode, Fragment, renderList, normalizeClass } from "vue";
2
2
  import { useRouter } from "vue-router";
3
3
  import _sfc_main$1 from "../../../../../components/Tooltip/Tooltip.vue2.js";
4
- import _sfc_main$3 from "../../../../../components/Dropdown/Dropdown.vue2.js";
4
+ import _sfc_main$3 from "../../../../../components/Dropdown/Dropdown.vue.js";
5
5
  import PlaceholderUserpic from "../../../../icons/placeholders/PlaceholderUserpic.vue.js";
6
6
  import PlaceholderOrganizationPic from "../../../../icons/placeholders/PlaceholderOrganizationPic.vue.js";
7
7
  import _sfc_main$4 from "../../../../icons/navigation/IconEllipsis.vue.js";
8
8
  import _sfc_main$5 from "../../../../reports/components/sections/FormReport.vue.js";
9
- /* empty css */
9
+ /* empty css */
10
10
  import _sfc_main$2 from "../elements/PhotoStack.vue.js";
11
11
  const _hoisted_1 = {
12
12
  key: 0,
@@ -0,0 +1,44 @@
1
+ import { createElementBlock, openBlock, createElementVNode, createBlock, resolveDynamicComponent, createCommentVNode, toDisplayString } from "vue";
2
+ const _hoisted_1 = { class: "bg-light pd-medium radius-medium" };
3
+ const _hoisted_2 = { class: "flex gap-small" };
4
+ const _hoisted_3 = { class: "radius-small bg-main flex flex-center" };
5
+ const _hoisted_4 = { class: "w-100" };
6
+ const _hoisted_5 = { class: "h2 mn-b-small fw-semi" };
7
+ const _hoisted_6 = { class: "t-dark t-small mn-b-small" };
8
+ const _hoisted_7 = {
9
+ key: 0,
10
+ class: "t-green t-small mn-t-nano"
11
+ };
12
+ const _sfc_main = {
13
+ __name: "CardStat",
14
+ props: {
15
+ icon: { type: [Object, Function], required: true },
16
+ title: { type: String, required: true },
17
+ value: { type: [String, Number], default: null },
18
+ displayValue: { type: String, default: "—" },
19
+ subtitle: { type: String, default: "" }
20
+ },
21
+ setup(__props) {
22
+ return (_ctx, _cache) => {
23
+ return openBlock(), createElementBlock("div", _hoisted_1, [
24
+ createElementVNode("div", _hoisted_2, [
25
+ createElementVNode("div", _hoisted_3, [
26
+ (openBlock(), createBlock(resolveDynamicComponent(__props.icon), {
27
+ class: "i-medium mn-small",
28
+ fill: "rgb(var(--white))"
29
+ }))
30
+ ]),
31
+ createElementVNode("div", _hoisted_4, [
32
+ createElementVNode("p", _hoisted_5, toDisplayString(__props.displayValue), 1),
33
+ createElementVNode("span", _hoisted_6, toDisplayString(__props.title), 1),
34
+ __props.subtitle ? (openBlock(), createElementBlock("p", _hoisted_7, toDisplayString(__props.subtitle), 1)) : createCommentVNode("", true)
35
+ ])
36
+ ])
37
+ ]);
38
+ };
39
+ }
40
+ };
41
+ export {
42
+ _sfc_main as default
43
+ };
44
+ //# sourceMappingURL=CardStat.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CardStat.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,10 +1,10 @@
1
1
  import { ref, computed, watch, onMounted, createBlock, openBlock, withCtx, createElementVNode, createVNode, createElementBlock, createCommentVNode, toDisplayString, unref } from "vue";
2
2
  import { useI18n } from "vue-i18n";
3
3
  import _sfc_main$1 from "../../../../../components/Popup/Popup.vue.js";
4
- import Loader from "../../../../../components/Loader/Loader.vue2.js";
4
+ import Loader from "../../../../../components/Loader/Loader.vue.js";
5
5
  import Calendar from "../../../../../components/Calendar/Calendar.vue2.js";
6
- import _sfc_main$3 from "../../../../../components/Button/Button.vue.js";
7
- import _sfc_main$4 from "../../../../icons/actions/IconShopcartAdd.vue.js";
6
+ import Button from "../../../../../components/Button/Button.vue2.js";
7
+ import _sfc_main$3 from "../../../../icons/actions/IconShopcartAdd.vue.js";
8
8
  import _sfc_main$2 from "../../../../orders/components/elements/PriceTotal.vue.js";
9
9
  import { loadAvailability } from "../../../../rents/views/store/rents.store.js";
10
10
  import { useGlobalMixins } from "../../mixins/mixins.js";
@@ -149,20 +149,20 @@ const _sfc_main = {
149
149
  showVat: __props.showVat,
150
150
  vatRate: __props.vatRate
151
151
  }, null, 8, ["totalPrice", "currency", "showFees", "feesRate", "showVat", "vatRate"]),
152
- createVNode(_sfc_main$3, {
152
+ createVNode(Button, {
153
153
  onClick: confirmSelection,
154
154
  disabled: !selectedDates.value.start || !selectedDates.value.end || isLoading.value || !isAvailable.value,
155
155
  class: "h-3r w-100 bg-main button"
156
156
  }, {
157
157
  default: withCtx(() => [
158
158
  createElementVNode("div", _hoisted_3, [
159
- createVNode(_sfc_main$4, { class: "i-medium icon-button-main" }),
159
+ createVNode(_sfc_main$3, { class: "i-medium icon-button-main" }),
160
160
  createElementVNode("span", null, toDisplayString(unref(t)("addtoorder")), 1)
161
161
  ])
162
162
  ]),
163
163
  _: 1
164
164
  }, 8, ["disabled"]),
165
- __props.showCancelButton ? (openBlock(), createBlock(_sfc_main$3, {
165
+ __props.showCancelButton ? (openBlock(), createBlock(Button, {
166
166
  key: 2,
167
167
  onClick: cancelSelection,
168
168
  class: "mn-t-thin h-3r w-100 t-white bg-red button"
@@ -1,6 +1,6 @@
1
1
  import { ref, computed, onBeforeMount, onMounted, resolveComponent, createBlock, openBlock, withCtx, resolveDynamicComponent } from "vue";
2
- import { Preferences } from "../../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/index.js";
3
- import { Keyboard } from "../../../../../../../node_modules/.pnpm/@capacitor_keyboard@7.0.1_@capacitor_core@7.4.4/node_modules/@capacitor/keyboard/dist/esm/index.js";
2
+ import { Preferences } from "@capacitor/preferences";
3
+ import { Keyboard } from "@capacitor/keyboard";
4
4
  import { u as useHead } from "../../../../../../../node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.13_typescript@5.8.3_/node_modules/@unhead/vue/dist/shared/vue.-sixQ7xP.js";
5
5
  import { useI18n } from "vue-i18n";
6
6
  import { useRoute } from "vue-router";
@@ -7,12 +7,12 @@ import _sfc_main$2 from "../../../../../components/Status/Snack.vue.js";
7
7
  import _sfc_main$3 from "../../../../../components/Popup/Popup.vue.js";
8
8
  import "vue-i18n";
9
9
  /* empty css */
10
- import Loader from "../../../../../components/Loader/Loader.vue2.js";
11
- /* empty css */
10
+ import Loader from "../../../../../components/Loader/Loader.vue.js";
11
+ /* empty css */
12
12
  /* empty css */
13
13
  import _sfc_main$4 from "../partials/LocationSelection.vue.js";
14
14
  import _sfc_main$5 from "../../../../orders/components/partials/ShopCart.vue.js";
15
- import { Preferences } from "../../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.2_@capacitor_core@7.4.4/node_modules/@capacitor/preferences/dist/esm/index.js";
15
+ import { Preferences } from "@capacitor/preferences";
16
16
  /* empty css */
17
17
  const _hoisted_1 = {
18
18
  key: 0,
@@ -146,7 +146,8 @@ const _sfc_main = {
146
146
  });
147
147
  const componentKey = computed(() => {
148
148
  const significantParams = ["_id", "product", "organization", "categoryPath", "country", "state", "city"].map((param) => route.params[param]).filter(Boolean).join("-");
149
- return significantParams || route.meta.layoutKey || route.name;
149
+ const identity = route.meta.layoutKey || route.name;
150
+ return significantParams ? `${significantParams}-${identity}` : identity;
150
151
  });
151
152
  return (_ctx, _cache) => {
152
153
  const _component_router_view = resolveComponent("router-view");
@@ -242,8 +243,9 @@ const _sfc_main = {
242
243
  horizontal: true,
243
244
  navigationItems: unref(route).meta.header_navigation_items,
244
245
  stateSidebar: unref(store).core.state.isOpenSidebar,
246
+ "onUpdate:stateSidebar": _cache[2] || (_cache[2] = ($event) => unref(store).core.state.isOpenSidebar = $event),
245
247
  theme: headerTheme.value
246
- }, null, 8, ["navigationItems", "stateSidebar", "theme"])) : createCommentVNode("", true)
248
+ }, null, 40, ["navigationItems", "stateSidebar", "theme"])) : createCommentVNode("", true)
247
249
  ]),
248
250
  _: 1
249
251
  }, 8, ["theme", "logotype", "location", "headerClass", "showCart", "showProfile", "showNotifications"])) : createCommentVNode("", true),
@@ -290,7 +292,7 @@ const _sfc_main = {
290
292
  widthHidden: unref(route).meta?.sidebar_width_hidden,
291
293
  width: unref(route).meta?.sidebar_width,
292
294
  theme: headerTheme.value,
293
- onCloseSidebar: _cache[2] || (_cache[2] = () => unref(store).core.state.isOpenSidebar = false)
295
+ onCloseSidebar: _cache[4] || (_cache[4] = () => unref(store).core.state.isOpenSidebar = false)
294
296
  }, {
295
297
  header: withCtx(() => [
296
298
  unref(route).meta?.sidebar_header_component ? (openBlock(), createBlock(resolveDynamicComponent(unref(route).meta.sidebar_header_component), {
@@ -312,11 +314,12 @@ const _sfc_main = {
312
314
  }, {
313
315
  default: withCtx(() => [
314
316
  unref(route).meta?.sidebar_navigation ? (openBlock(), createBlock(resolveDynamicComponent(unref(route).meta.sidebar_navigation), {
315
- key: unref(route).meta.sidebar_navigation,
317
+ key: unref(route).meta.sidebar_navigation_items,
316
318
  navigationItems: unref(route).meta.sidebar_navigation_items,
317
319
  stateSidebar: unref(store).core.state.isOpenSidebar,
320
+ "onUpdate:stateSidebar": _cache[3] || (_cache[3] = ($event) => unref(store).core.state.isOpenSidebar = $event),
318
321
  theme: headerTheme.value
319
- }, null, 8, ["navigationItems", "stateSidebar", "theme"])) : createCommentVNode("", true)
322
+ }, null, 40, ["navigationItems", "stateSidebar", "theme"])) : createCommentVNode("", true)
320
323
  ]),
321
324
  _: 1
322
325
  })
@@ -1 +1 @@
1
- {"version":3,"file":"Client.vue.js","sources":["../../../../../../../../src/modules/core/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n <div\n class=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n id=\"app-wrapper\"\n :class=\"{\n [(route.name ? route.name.replace(/\\s+/g, '_') : route.path.replace(/\\W+/g, '_')).toLowerCase()]: true,\n 'pd-t-big': MOBILE_APP === 'ios',\n 'bg-white': headerTheme === 'light',\n 'bg-black': headerTheme === 'dark',\n }\"\n >\n <transition name=\"moveFromTop\" appear>\n <Loader class=\"pos-fixed z-index-10\" v-if=\"!page || store.core.state.loading\" :centered=\"true\" />\n </transition>\n\n <transition name=\"moveFromTop\" mode=\"out-in\">\n <section class=\"w-100 h-100\" v-if=\"FirstUse && route.meta.walkthrough\">\n <component class=\"tab\" :is=\"route.meta.walkthrough\" name=\"Walkthrough\" @updateFirstUse=\"updateFirstUse\" :slides=\"[1, 2, 3]\"> </component>\n </section>\n </transition>\n \n <transition name=\"moveFromTop\" mode=\"out-in\">\n <Status class=\"z-index-10\" v-if=\"store.core.state.error.show\" :data=\"store.core.state.error\" @close=\"store.core.state.error.show = false\" />\n </transition>\n\n <transition name=\"moveFromTop\" mode=\"out-in\">\n <Snack\n class=\"z-index-10\"\n v-if=\"store.core.state.snack.show\"\n :type=\"store.core.state.snack.type\"\n :message=\"store.core.state.snack.message\"\n :show=\"store.core.state.snack.show\"\n @close=\"store.core.state.snack.show = false\"\n />\n </transition>\n\n\n <component\n v-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\"\n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n :headerClass=\"computedHeaderClass\"\n :showCart=\"route.meta.header_show_cart ?? true\"\n :showProfile=\"route.meta.header_show_profile ?? true\"\n :showNotifications=\"route.meta.header_show_notifications ?? true\"\n >\n <component\n v-if=\"route.meta?.header_navigation\"\n :is=\"route.meta.header_navigation\"\n :horizontal=\"true\"\n :navigationItems=\"route.meta.header_navigation_items\"\n :stateSidebar=\"store.core.state.isOpenSidebar\"\n :theme=\"headerTheme\"\n />\n <template #right>\n <component v-if=\"route.meta?.header_right_component\" :is=\"route.meta.header_right_component\" :theme=\"headerTheme\" />\n </template>\n </component>\n\n\n <transition name=\"moveFromTop\" mode=\"out-in\" appear>\n <component\n v-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n :stateSidebar=\"store.core.state.isOpenSidebar\"\n />\n </transition>\n\n <Popup class=\"bg-white pd-semi w-m-33r radius-big\" @close-popup=\"closeLocationPopup\" :isPopupOpen=\"store.core.state.isOpenLocationPopup\">\n <LocationSelection />\n </Popup>\n\n <!-- class=\"flex flex-nowrap ease-in-out o-hidden pos-relative\" -->\n <section\n class=\"flex flex-nowrap h-100 pos-relative o-hidden ease-in-out\"\n id=\"screen\"\n ref=\"screen\"\n :class=\"{\n '': MOBILE_APP === 'ios',\n }\"\n >\n <ShopCart\n :class=\"{\n 'mobile:pd-t-extra': MOBILE_APP === 'ios',\n }\"\n />\n <component\n v-if=\"route.meta?.sidebar\"\n :is=\"route.meta.sidebar\"\n :stateSidebar=\"store.core.state.isOpenSidebar\"\n :widthHidden=\"route.meta?.sidebar_width_hidden\"\n :width=\"route.meta?.sidebar_width\"\n :theme=\"headerTheme\"\n @closeSidebar=\"() => (store.core.state.isOpenSidebar = false)\"\n >\n <!-- Header slot -->\n <template #header>\n <component v-if=\"route.meta?.sidebar_header_component\" :is=\"route.meta.sidebar_header_component\" :theme=\"headerTheme\" />\n </template>\n\n <!-- Navigation (default slot) -->\n <transition name=\"moveFromTop\" mode=\"out-in\">\n <component\n v-if=\"route.meta?.sidebar_navigation\"\n :is=\"route.meta.sidebar_navigation\"\n :key=\"route.meta.sidebar_navigation\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n :stateSidebar=\"store.core.state.isOpenSidebar\"\n :theme=\"headerTheme\"\n />\n </transition>\n\n <!-- Footer slot -->\n <template #footer>\n <component v-if=\"route.meta?.sidebar_footer_component\" :is=\"route.meta.sidebar_footer_component\" :theme=\"headerTheme\" :stateSidebar=\"store.core.state.isOpenSidebar\" />\n </template>\n </component>\n\t \n <div class=\"rows-[minmax(0,1fr)] z-index-1 pos-relative w-100 h-100\">\n <div class=\"o-y-scroll o-x-hidden h-100\" id=\"scrollview\" ref=\"scrollview\" @scroll=\"handleScroll\">\n <div class=\"h-min-100 pos-relative w-100\">\n <!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t<Breadcrumbs \n\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t/>\n\t\t\t</section> -->\n\n <Suspense @resolve=\"onSuspenseResolved\">\n <router-view\n class=\"h-min-100 pos-relative w-100\"\n id=\"view\"\n v-slot=\"{ Component, route }\"\n :class=\"{\n 'scroll-hide': MOBILE_APP,\n }\"\n >\n <transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n <div class=\"w-100 h-min-100\" :key=\"componentKey\">\n <component class=\"w-100 h-min-100\" ref=\"page\" :is=\"Component\" @page-loading=\"handlePageLoading\" @page-loaded=\"handlePageLoaded\" />\n <component\n v-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter\"\n ref=\"footer\"\n :is=\"route.meta.footer\"\n :theme=\"route.meta.footer_theme || 'light'\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n />\n </div>\n </transition>\n </router-view>\n </Suspense>\n </div>\n\n <component class=\"z-index-2\" id=\"player-wrapper\" v-if=\"route.meta.player\" :is=\"route.meta.player\" />\n </div>\n </div>\n </section>\n\n <router-view v-slot=\"{ Component, route }\" name=\"defaultBottom\">\n <component :is=\"Component\" />\n </router-view>\n\n <component class=\"z-index-2\" v-if=\"MOBILE_APP && route.meta.title_hide\" :is=\"route.meta.bottombar\" />\n </div>\n</template>\n\n<script setup>\nimport { computed, ref, onMounted } from 'vue';\n// Router\nimport { useRoute } from 'vue-router';\n// Store\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js';\nimport { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js';\n// Partials\nimport Status from '@martyrs/src/components/Status/Status.vue';\nimport Snack from '@martyrs/src/components/Status/Snack.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\nimport NavigationBar from '@martyrs/src/modules/core/views/components/partials/NavigationBar.vue';\nimport LocationSelection from '@martyrs/src/modules/core/views/components/partials/LocationSelection.vue';\n\nimport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n// PROPS\nconst props = defineProps({\n env: {\n type: Object,\n required: true,\n },\n app: {\n type: Object,\n required: true,\n },\n modules: {\n type: Object,\n required: true,\n },\n});\n\nconst store = useStore();\n\n/////////////////////////////\n// LOADING\n/////////////////////////////\n// State\nlet show = ref(false);\n// Preloader\nconst page = ref(null);\nconst scrollview = ref(null);\n\n// isPageLoading убран - используем core.state.loading\n\n// Обработчики событий загрузки\nfunction handlePageLoading() {\n store.core.state.loading = true;\n}\n\nfunction handlePageLoaded() {\n store.core.state.loading = false;\n}\n\n// Обработка события разрешения Suspense (когда async setup компонента завершается)\nfunction onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик\n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n store.core.state.loading = false;\n}\n/////////////////////////////\n// CREATED\n/////////////////////////////\nconst route = useRoute();\n// const router = useRouter()\n\n// Инициализация sidebar для SSR + первая загрузка\nif (route.meta?.sidebarOpenOnEnter === true) {\n store.core.state.isOpenSidebar = true;\n}\n\n// Ref Code\nconst referalCode = ref(route.query.referalCode);\n/////////////////////////////\n// Methods\n/////////////////////////////\nfunction closeLocationPopup() {\n store.core.state.isOpenLocationPopup = false;\n}\nfunction scrollTop() {\n if (scrollview.value) scrollview.value.scrollTop = 0;\n}\n// Scrolling header\nconst scrollOffset = ref(0);\nconst header = ref(null);\n\n// Режим → классы позиционирования\nconst modeClasses = {\n static: 'pos-relative',\n sticky: 'pos-sticky pos-t-0',\n fixed: 'pos-fixed pos-t-0 w-100',\n overlay: 'pos-absolute pos-t-0 w-100'\n};\n\n// isScrolled\nconst isScrolled = computed(() =>\n scrollOffset.value > (route.meta.header_scroll_threshold ?? 50)\n);\n\n// headerTheme с учётом скролла\nconst headerTheme = computed(() => {\n if (isScrolled.value && route.meta.header_scroll_theme) {\n return route.meta.header_scroll_theme;\n }\n return route.meta.header_theme || 'light';\n});\n\n// headerModeClass (overlay → fixed после скролла)\nconst headerModeClass = computed(() => {\n const mode = route.meta.header_mode || 'static';\n if (mode === 'overlay' && isScrolled.value) {\n return 'pos-fixed pos-t-0 w-100';\n }\n return modeClasses[mode];\n});\n\n// headerAppearanceClass\nconst headerAppearanceClass = computed(() => {\n const config = isScrolled.value\n ? route.meta.header_scroll_class\n : route.meta.header_class;\n\n if (config && typeof config === 'object') {\n return config[headerTheme.value];\n }\n return config;\n});\n\n// Autohide\nconst isHidden = ref(false);\nlet lastScrollY = 0;\n\n// computedHeaderClass для передачи в Header\nconst computedHeaderClass = computed(() => [\n headerModeClass.value,\n headerAppearanceClass.value,\n { 'header--hidden': isHidden.value }\n]);\n\nconst handleScroll = (event) => {\n const scrollY = event.target.scrollTop;\n scrollOffset.value = scrollY;\n\n // Autohide логика\n if (route.meta.header_autohide) {\n if (scrollY > lastScrollY && scrollY > 200) {\n isHidden.value = true;\n } else if (scrollY < lastScrollY) {\n isHidden.value = false;\n }\n lastScrollY = scrollY;\n }\n};\n/////////////////////////////\n// FIRST USE\n/////////////////////////////\nconst FirstUse = ref(false);\n\nimport { Preferences } from '@capacitor/preferences';\n\nasync function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n}\n\nconst updateFirstUse = value => {\n FirstUse.value = value;\n};\n\nconst { isPhone, isTablet } = useGlobalMixins();\n\nonMounted(async () => {\n await getFirstUse();\n\n // Закрываем sidebar на mobile (CSS уже скрыл визуально)\n if ((isPhone() || isTablet()) && store.core.state.isOpenSidebar) {\n store.core.state.isOpenSidebar = false;\n }\n\n // Регистрация единого Service Worker (PWA + push notifications)\n if ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n window.addEventListener('load', () => {\n navigator.serviceWorker\n .register('/sw.js')\n .then(registration => {\n console.log('Unified SW registered: ', registration);\n })\n .catch(registrationError => {\n console.log('SW registration failed: ', registrationError);\n });\n });\n }\n\n if (!store.core.state.position && route.meta.location) {\n store.core.state.isOpenLocationPopup = true;\n } else {\n store.core.state.isOpenLocationPopup = false;\n }\n\n if (referalCode.value) {\n localStorage.setItem('referalCode', referalCode.value);\n }\n\n if (page.value) show.value = true;\n});\n\nconst componentKey = computed(() => {\n // Собираем только значимые параметры (ID сущностей)\n const significantParams = ['_id', 'product', 'organization', 'categoryPath', 'country', 'state', 'city']\n .map(param => route.params[param])\n .filter(Boolean)\n .join('-');\n\n return significantParams || route.meta.layoutKey || route.name;\n});\n</script>\n\n<style lang=\"scss\">\n.fade-enter-active,\n.fade-leave-active {\n transition: opacity 0.5s;\n}\n\n.fade-enter,\n.fade-leave-to\n\n/* .fade-leave-active в версии 2.1.8+ */ {\n opacity: 0;\n}\n\n.fade-move,\n.fade-enter-active,\n.fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n}\n\n/* 2. declare enter from and leave to state */\n.fade-enter-from,\n.fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n}\n\n/* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n.fade-leave-active {\n position: absolute;\n}\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition:\n all 0.3s ease,\n max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh;\n}\n\n.moveFromTopAbsolute-enter-active,\n.moveFromTopAbsolute-leave-active {\n transform: translateY(0);\n opacity: 1;\n transition: all 0.5s ease;\n}\n\n.moveFromTopAbsolute-enter-from,\n.moveFromTopAbsolute-leave-to {\n position: absolute;\n transform: translateY(-1rem);\n opacity: 0;\n transition: all 0.5s ease;\n}\n\n.ScaleOut-enter-active,\n.ScaleOut-leave-active {\n opacity: 1;\n transform: scale(1);\n transition: all 0.3s ease;\n}\n\n.ScaleOut-enter-from,\n.ScaleOut-leave-to {\n opacity: 0;\n transform: scale(0.9);\n transition: all 0.3s ease;\n}\n\n.slide-fade-enter-active {\n // min-height: 100vh;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.slide-fade-leave-active {\n // min-height: 100vh;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.slide-fade-enter-from,\n.slide-fade-leave-to {\n min-height: 0;\n transform: translateX(20px);\n opacity: 0;\n left: 0;\n top: 0;\n}\n\n.scaleTransition-5px-enter-active,\n.scaleTransition-5px-leave-active {\n transform: translateY(0px);\n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n}\n\n.scaleTransition-5px-enter-from,\n.scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px);\n transition: all 0.2s ease;\n}\n\n.scaleTransition-enter-from,\n.scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px);\n transition: all 0.5s ease;\n}\n\n.scaleTransition-enter-active,\n.scaleTransition-leave-active {\n transform: translateY(0px);\n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n}\n\n.scaleTransition-enter-from,\n.scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px);\n transition: all 0.5s ease;\n}\n\n.scaleIn-enter-active,\n.scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n\n > section,\n div {\n transform-origin: 0 0;\n transform: translateZ(0px);\n transition: all 0.5s ease;\n }\n}\n\n.scaleIn-enter-from,\n.scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n\n > section,\n div {\n transform: translateZ(-30px);\n transition: all 0.5s ease;\n }\n}\n</style>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Client.vue.js","sources":["../../../../../../../../src/modules/core/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n <div\n class=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n id=\"app-wrapper\"\n :class=\"{\n [(route.name ? route.name.replace(/\\s+/g, '_') : route.path.replace(/\\W+/g, '_')).toLowerCase()]: true,\n 'pd-t-big': MOBILE_APP === 'ios',\n 'bg-white': headerTheme === 'light',\n 'bg-black': headerTheme === 'dark',\n }\"\n >\n <transition name=\"moveFromTop\" appear>\n <Loader class=\"pos-fixed z-index-10\" v-if=\"!page || store.core.state.loading\" :centered=\"true\" />\n </transition>\n\n <transition name=\"moveFromTop\" mode=\"out-in\">\n <section class=\"w-100 h-100\" v-if=\"FirstUse && route.meta.walkthrough\">\n <component class=\"tab\" :is=\"route.meta.walkthrough\" name=\"Walkthrough\" @updateFirstUse=\"updateFirstUse\" :slides=\"[1, 2, 3]\"> </component>\n </section>\n </transition>\n \n <transition name=\"moveFromTop\" mode=\"out-in\">\n <Status class=\"z-index-10\" v-if=\"store.core.state.error.show\" :data=\"store.core.state.error\" @close=\"store.core.state.error.show = false\" />\n </transition>\n\n <transition name=\"moveFromTop\" mode=\"out-in\">\n <Snack\n class=\"z-index-10\"\n v-if=\"store.core.state.snack.show\"\n :type=\"store.core.state.snack.type\"\n :message=\"store.core.state.snack.message\"\n :show=\"store.core.state.snack.show\"\n @close=\"store.core.state.snack.show = false\"\n />\n </transition>\n\n\n <component\n v-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\"\n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n :headerClass=\"computedHeaderClass\"\n :showCart=\"route.meta.header_show_cart ?? true\"\n :showProfile=\"route.meta.header_show_profile ?? true\"\n :showNotifications=\"route.meta.header_show_notifications ?? true\"\n >\n <component\n v-if=\"route.meta?.header_navigation\"\n :is=\"route.meta.header_navigation\"\n :horizontal=\"true\"\n :navigationItems=\"route.meta.header_navigation_items\"\n v-model:stateSidebar=\"store.core.state.isOpenSidebar\"\n :theme=\"headerTheme\"\n />\n <template #right>\n <component v-if=\"route.meta?.header_right_component\" :is=\"route.meta.header_right_component\" :theme=\"headerTheme\" />\n </template>\n </component>\n\n\n <transition name=\"moveFromTop\" mode=\"out-in\" appear>\n <component\n v-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n :stateSidebar=\"store.core.state.isOpenSidebar\"\n />\n </transition>\n\n <Popup class=\"bg-white pd-semi w-m-33r radius-big\" @close-popup=\"closeLocationPopup\" :isPopupOpen=\"store.core.state.isOpenLocationPopup\">\n <LocationSelection />\n </Popup>\n\n <!-- class=\"flex flex-nowrap ease-in-out o-hidden pos-relative\" -->\n <section\n class=\"flex flex-nowrap h-100 pos-relative o-hidden ease-in-out\"\n id=\"screen\"\n ref=\"screen\"\n :class=\"{\n '': MOBILE_APP === 'ios',\n }\"\n >\n <ShopCart\n :class=\"{\n 'mobile:pd-t-extra': MOBILE_APP === 'ios',\n }\"\n />\n <component\n v-if=\"route.meta?.sidebar\"\n :is=\"route.meta.sidebar\"\n :stateSidebar=\"store.core.state.isOpenSidebar\"\n :widthHidden=\"route.meta?.sidebar_width_hidden\"\n :width=\"route.meta?.sidebar_width\"\n :theme=\"headerTheme\"\n @closeSidebar=\"() => (store.core.state.isOpenSidebar = false)\"\n >\n <!-- Header slot -->\n <template #header>\n <component v-if=\"route.meta?.sidebar_header_component\" :is=\"route.meta.sidebar_header_component\" :theme=\"headerTheme\" />\n </template>\n\n <!-- Navigation (default slot) -->\n <transition name=\"moveFromTop\" mode=\"out-in\">\n <component\n v-if=\"route.meta?.sidebar_navigation\"\n :is=\"route.meta.sidebar_navigation\"\n :key=\"route.meta.sidebar_navigation_items\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n v-model:stateSidebar=\"store.core.state.isOpenSidebar\"\n :theme=\"headerTheme\"\n />\n </transition>\n\n <!-- Footer slot -->\n <template #footer>\n <component v-if=\"route.meta?.sidebar_footer_component\" :is=\"route.meta.sidebar_footer_component\" :theme=\"headerTheme\" :stateSidebar=\"store.core.state.isOpenSidebar\" />\n </template>\n </component>\n\t \n <div class=\"rows-[minmax(0,1fr)] z-index-1 pos-relative w-100 h-100\">\n <div class=\"o-y-scroll o-x-hidden h-100\" id=\"scrollview\" ref=\"scrollview\" @scroll=\"handleScroll\">\n <div class=\"h-min-100 pos-relative w-100\">\n <!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t<Breadcrumbs \n\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t/>\n\t\t\t</section> -->\n\n <Suspense @resolve=\"onSuspenseResolved\">\n <router-view\n class=\"h-min-100 pos-relative w-100\"\n id=\"view\"\n v-slot=\"{ Component, route }\"\n :class=\"{\n 'scroll-hide': MOBILE_APP,\n }\"\n >\n <transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n <div class=\"w-100 h-min-100\" :key=\"componentKey\">\n <component class=\"w-100 h-min-100\" ref=\"page\" :is=\"Component\" @page-loading=\"handlePageLoading\" @page-loaded=\"handlePageLoaded\" />\n <component\n v-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter\"\n ref=\"footer\"\n :is=\"route.meta.footer\"\n :theme=\"route.meta.footer_theme || 'light'\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n />\n </div>\n </transition>\n </router-view>\n </Suspense>\n </div>\n\n <component class=\"z-index-2\" id=\"player-wrapper\" v-if=\"route.meta.player\" :is=\"route.meta.player\" />\n </div>\n </div>\n </section>\n\n <router-view v-slot=\"{ Component, route }\" name=\"defaultBottom\">\n <component :is=\"Component\" />\n </router-view>\n\n <component class=\"z-index-2\" v-if=\"MOBILE_APP && route.meta.title_hide\" :is=\"route.meta.bottombar\" />\n </div>\n</template>\n\n<script setup>\nimport { computed, ref, onMounted } from 'vue';\n// Router\nimport { useRoute } from 'vue-router';\n// Store\nimport { useStore } from '@martyrs/src/modules/core/views/store/core.store.js';\nimport { useGlobalMixins } from '@martyrs/src/modules/core/views/mixins/mixins.js';\n// Partials\nimport Status from '@martyrs/src/components/Status/Status.vue';\nimport Snack from '@martyrs/src/components/Status/Snack.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue';\nimport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\nimport NavigationBar from '@martyrs/src/modules/core/views/components/partials/NavigationBar.vue';\nimport LocationSelection from '@martyrs/src/modules/core/views/components/partials/LocationSelection.vue';\n\nimport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n// PROPS\nconst props = defineProps({\n env: {\n type: Object,\n required: true,\n },\n app: {\n type: Object,\n required: true,\n },\n modules: {\n type: Object,\n required: true,\n },\n});\n\nconst store = useStore();\n\n/////////////////////////////\n// LOADING\n/////////////////////////////\n// State\nlet show = ref(false);\n// Preloader\nconst page = ref(null);\nconst scrollview = ref(null);\n\n// isPageLoading убран - используем core.state.loading\n\n// Обработчики событий загрузки\nfunction handlePageLoading() {\n store.core.state.loading = true;\n}\n\nfunction handlePageLoaded() {\n store.core.state.loading = false;\n}\n\n// Обработка события разрешения Suspense (когда async setup компонента завершается)\nfunction onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик\n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n store.core.state.loading = false;\n}\n/////////////////////////////\n// CREATED\n/////////////////////////////\nconst route = useRoute();\n// const router = useRouter()\n\n// Инициализация sidebar для SSR + первая загрузка\nif (route.meta?.sidebarOpenOnEnter === true) {\n store.core.state.isOpenSidebar = true;\n}\n\n// Ref Code\nconst referalCode = ref(route.query.referalCode);\n/////////////////////////////\n// Methods\n/////////////////////////////\nfunction closeLocationPopup() {\n store.core.state.isOpenLocationPopup = false;\n}\nfunction scrollTop() {\n if (scrollview.value) scrollview.value.scrollTop = 0;\n}\n// Scrolling header\nconst scrollOffset = ref(0);\nconst header = ref(null);\n\n// Режим → классы позиционирования\nconst modeClasses = {\n static: 'pos-relative',\n sticky: 'pos-sticky pos-t-0',\n fixed: 'pos-fixed pos-t-0 w-100',\n overlay: 'pos-absolute pos-t-0 w-100'\n};\n\n// isScrolled\nconst isScrolled = computed(() =>\n scrollOffset.value > (route.meta.header_scroll_threshold ?? 50)\n);\n\n// headerTheme с учётом скролла\nconst headerTheme = computed(() => {\n if (isScrolled.value && route.meta.header_scroll_theme) {\n return route.meta.header_scroll_theme;\n }\n return route.meta.header_theme || 'light';\n});\n\n// headerModeClass (overlay → fixed после скролла)\nconst headerModeClass = computed(() => {\n const mode = route.meta.header_mode || 'static';\n if (mode === 'overlay' && isScrolled.value) {\n return 'pos-fixed pos-t-0 w-100';\n }\n return modeClasses[mode];\n});\n\n// headerAppearanceClass\nconst headerAppearanceClass = computed(() => {\n const config = isScrolled.value\n ? route.meta.header_scroll_class\n : route.meta.header_class;\n\n if (config && typeof config === 'object') {\n return config[headerTheme.value];\n }\n return config;\n});\n\n// Autohide\nconst isHidden = ref(false);\nlet lastScrollY = 0;\n\n// computedHeaderClass для передачи в Header\nconst computedHeaderClass = computed(() => [\n headerModeClass.value,\n headerAppearanceClass.value,\n { 'header--hidden': isHidden.value }\n]);\n\nconst handleScroll = (event) => {\n const scrollY = event.target.scrollTop;\n scrollOffset.value = scrollY;\n\n // Autohide логика\n if (route.meta.header_autohide) {\n if (scrollY > lastScrollY && scrollY > 200) {\n isHidden.value = true;\n } else if (scrollY < lastScrollY) {\n isHidden.value = false;\n }\n lastScrollY = scrollY;\n }\n};\n/////////////////////////////\n// FIRST USE\n/////////////////////////////\nconst FirstUse = ref(false);\n\nimport { Preferences } from '@capacitor/preferences';\n\nasync function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n}\n\nconst updateFirstUse = value => {\n FirstUse.value = value;\n};\n\nconst { isPhone, isTablet } = useGlobalMixins();\n\nonMounted(async () => {\n await getFirstUse();\n\n // Закрываем sidebar на mobile (CSS уже скрыл визуально)\n if ((isPhone() || isTablet()) && store.core.state.isOpenSidebar) {\n store.core.state.isOpenSidebar = false;\n }\n\n // Регистрация единого Service Worker (PWA + push notifications)\n if ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n window.addEventListener('load', () => {\n navigator.serviceWorker\n .register('/sw.js')\n .then(registration => {\n console.log('Unified SW registered: ', registration);\n })\n .catch(registrationError => {\n console.log('SW registration failed: ', registrationError);\n });\n });\n }\n\n if (!store.core.state.position && route.meta.location) {\n store.core.state.isOpenLocationPopup = true;\n } else {\n store.core.state.isOpenLocationPopup = false;\n }\n\n if (referalCode.value) {\n localStorage.setItem('referalCode', referalCode.value);\n }\n\n if (page.value) show.value = true;\n});\n\nconst componentKey = computed(() => {\n // Собираем только значимые параметры (ID сущностей)\n const significantParams = ['_id', 'product', 'organization', 'categoryPath', 'country', 'state', 'city']\n .map(param => route.params[param])\n .filter(Boolean)\n .join('-');\n\n const identity = route.meta.layoutKey || route.name;\n return significantParams ? `${significantParams}-${identity}` : identity;\n});\n</script>\n\n<style lang=\"scss\">\n.fade-enter-active,\n.fade-leave-active {\n transition: opacity 0.5s;\n}\n\n.fade-enter,\n.fade-leave-to\n\n/* .fade-leave-active в версии 2.1.8+ */ {\n opacity: 0;\n}\n\n.fade-move,\n.fade-enter-active,\n.fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n}\n\n/* 2. declare enter from and leave to state */\n.fade-enter-from,\n.fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n}\n\n/* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n.fade-leave-active {\n position: absolute;\n}\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition:\n all 0.3s ease,\n max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh;\n}\n\n.moveFromTopAbsolute-enter-active,\n.moveFromTopAbsolute-leave-active {\n transform: translateY(0);\n opacity: 1;\n transition: all 0.5s ease;\n}\n\n.moveFromTopAbsolute-enter-from,\n.moveFromTopAbsolute-leave-to {\n position: absolute;\n transform: translateY(-1rem);\n opacity: 0;\n transition: all 0.5s ease;\n}\n\n.ScaleOut-enter-active,\n.ScaleOut-leave-active {\n opacity: 1;\n transform: scale(1);\n transition: all 0.3s ease;\n}\n\n.ScaleOut-enter-from,\n.ScaleOut-leave-to {\n opacity: 0;\n transform: scale(0.9);\n transition: all 0.3s ease;\n}\n\n.slide-fade-enter-active {\n // min-height: 100vh;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.slide-fade-leave-active {\n // min-height: 100vh;\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.slide-fade-enter-from,\n.slide-fade-leave-to {\n min-height: 0;\n transform: translateX(20px);\n opacity: 0;\n left: 0;\n top: 0;\n}\n\n.scaleTransition-5px-enter-active,\n.scaleTransition-5px-leave-active {\n transform: translateY(0px);\n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n}\n\n.scaleTransition-5px-enter-from,\n.scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px);\n transition: all 0.2s ease;\n}\n\n.scaleTransition-enter-from,\n.scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px);\n transition: all 0.5s ease;\n}\n\n.scaleTransition-enter-active,\n.scaleTransition-leave-active {\n transform: translateY(0px);\n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n}\n\n.scaleTransition-enter-from,\n.scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px);\n transition: all 0.5s ease;\n}\n\n.scaleIn-enter-active,\n.scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n\n > section,\n div {\n transform-origin: 0 0;\n transform: translateZ(0px);\n transition: all 0.5s ease;\n }\n}\n\n.scaleIn-enter-from,\n.scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n\n > section,\n div {\n transform: translateZ(-30px);\n transition: all 0.5s ease;\n }\n}\n</style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8MA,UAAM,QAAQ,SAAQ;AAMtB,QAAI,OAAO,IAAI,KAAK;AAEpB,UAAM,OAAO,IAAI,IAAI;AACrB,UAAM,aAAa,IAAI,IAAI;AAK3B,aAAS,oBAAoB;AAC3B,YAAM,KAAK,MAAM,UAAU;AAAA,IAC7B;AAEA,aAAS,mBAAmB;AAC1B,YAAM,KAAK,MAAM,UAAU;AAAA,IAC7B;AAGA,aAAS,qBAAqB;AAI5B,YAAM,KAAK,MAAM,UAAU;AAAA,IAC7B;AAIA,UAAM,QAAQ,SAAQ;AAItB,QAAI,MAAM,MAAM,uBAAuB,MAAM;AAC3C,YAAM,KAAK,MAAM,gBAAgB;AAAA,IACnC;AAGA,UAAM,cAAc,IAAI,MAAM,MAAM,WAAW;AAI/C,aAAS,qBAAqB;AAC5B,YAAM,KAAK,MAAM,sBAAsB;AAAA,IACzC;AACA,aAAS,YAAY;AACnB,UAAI,WAAW,MAAO,YAAW,MAAM,YAAY;AAAA,IACrD;AAEA,UAAM,eAAe,IAAI,CAAC;AAC1B,UAAM,SAAS,IAAI,IAAI;AAGvB,UAAM,cAAc;AAAA,MAClB,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,OAAO;AAAA,MACP,SAAS;AAAA,IACX;AAGA,UAAM,aAAa;AAAA,MAAS,MAC1B,aAAa,SAAS,MAAM,KAAK,2BAA2B;AAAA,IAC9D;AAGA,UAAM,cAAc,SAAS,MAAM;AACjC,UAAI,WAAW,SAAS,MAAM,KAAK,qBAAqB;AACtD,eAAO,MAAM,KAAK;AAAA,MACpB;AACA,aAAO,MAAM,KAAK,gBAAgB;AAAA,IACpC,CAAC;AAGD,UAAM,kBAAkB,SAAS,MAAM;AACrC,YAAM,OAAO,MAAM,KAAK,eAAe;AACvC,UAAI,SAAS,aAAa,WAAW,OAAO;AAC1C,eAAO;AAAA,MACT;AACA,aAAO,YAAY,IAAI;AAAA,IACzB,CAAC;AAGD,UAAM,wBAAwB,SAAS,MAAM;AAC3C,YAAM,SAAS,WAAW,QACtB,MAAM,KAAK,sBACX,MAAM,KAAK;AAEf,UAAI,UAAU,OAAO,WAAW,UAAU;AACxC,eAAO,OAAO,YAAY,KAAK;AAAA,MACjC;AACA,aAAO;AAAA,IACT,CAAC;AAGD,UAAM,WAAW,IAAI,KAAK;AAC1B,QAAI,cAAc;AAGlB,UAAM,sBAAsB,SAAS,MAAM;AAAA,MACzC,gBAAgB;AAAA,MAChB,sBAAsB;AAAA,MACtB,EAAE,kBAAkB,SAAS,MAAK;AAAA,IACpC,CAAC;AAED,UAAM,eAAe,CAAC,UAAU;AAC9B,YAAM,UAAU,MAAM,OAAO;AAC7B,mBAAa,QAAQ;AAGrB,UAAI,MAAM,KAAK,iBAAiB;AAC9B,YAAI,UAAU,eAAe,UAAU,KAAK;AAC1C,mBAAS,QAAQ;AAAA,QACnB,WAAW,UAAU,aAAa;AAChC,mBAAS,QAAQ;AAAA,QACnB;AACA,sBAAc;AAAA,MAChB;AAAA,IACF;AAIA,UAAM,WAAW,IAAI,KAAK;AAI1B,mBAAe,cAAc;AAC3B,YAAM,MAAM,MAAM,YAAY,IAAI,EAAE,KAAK,aAAa;AACtD,eAAS,QAAQ,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,IAAI;AAAA,IACvD;AAEA,UAAM,iBAAiB,WAAS;AAC9B,eAAS,QAAQ;AAAA,IACnB;AAEA,UAAM,EAAE,SAAS,SAAQ,IAAK,gBAAe;AAE7C,cAAU,YAAY;AACpB,YAAM,YAAW;AAGjB,WAAK,QAAO,KAAM,SAAQ,MAAO,MAAM,KAAK,MAAM,eAAe;AAC/D,cAAM,KAAK,MAAM,gBAAgB;AAAA,MACnC;AAGA,UAAI,mBAAmB,aAAa,CAAC,OAAO,gBAAgB;AAC1D,eAAO,iBAAiB,QAAQ,MAAM;AACpC,oBAAU,cACP,SAAS,QAAQ,EACjB,KAAK,kBAAgB;AACpB,oBAAQ,IAAI,2BAA2B,YAAY;AAAA,UACrD,CAAC,EACA,MAAM,uBAAqB;AAC1B,oBAAQ,IAAI,4BAA4B,iBAAiB;AAAA,UAC3D,CAAC;AAAA,QACL,CAAC;AAAA,MACH;AAEA,UAAI,CAAC,MAAM,KAAK,MAAM,YAAY,MAAM,KAAK,UAAU;AACrD,cAAM,KAAK,MAAM,sBAAsB;AAAA,MACzC,OAAO;AACL,cAAM,KAAK,MAAM,sBAAsB;AAAA,MACzC;AAEA,UAAI,YAAY,OAAO;AACrB,qBAAa,QAAQ,eAAe,YAAY,KAAK;AAAA,MACvD;AAEA,UAAI,KAAK,MAAO,MAAK,QAAQ;AAAA,IAC/B,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAElC,YAAM,oBAAoB,CAAC,OAAO,WAAW,gBAAgB,gBAAgB,WAAW,SAAS,MAAM,EACpG,IAAI,WAAS,MAAM,OAAO,KAAK,CAAC,EAChC,OAAO,OAAO,EACd,KAAK,GAAG;AAEX,YAAM,WAAW,MAAM,KAAK,aAAa,MAAM;AAC/C,aAAO,oBAAoB,GAAG,iBAAiB,IAAI,QAAQ,KAAK;AAAA,IAClE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -38,7 +38,7 @@ const _sfc_main = {
38
38
  }, [
39
39
  createElementVNode("nav", _hoisted_1, [
40
40
  createVNode(_component_router_link, {
41
- class: normalizeClass(["no-hover-color t-center fw-medium", { "t-grey": _ctx.$route.path === "/", "t-transp": _ctx.$route.path !== "/" }]),
41
+ class: normalizeClass(["no-hover-color t-center fw-medium", { "t-dark": _ctx.$route.path === "/", "t-transp": _ctx.$route.path !== "/" }]),
42
42
  to: "/"
43
43
  }, {
44
44
  default: withCtx(() => [
@@ -51,7 +51,7 @@ const _sfc_main = {
51
51
  _: 1
52
52
  }, 8, ["class"]),
53
53
  createVNode(_component_router_link, {
54
- class: normalizeClass(["no-hover-color t-center fw-medium", { "t-grey": _ctx.$route.path === "/marketplac", "t-transp": _ctx.$route.path !== "/marketplac" }]),
54
+ class: normalizeClass(["no-hover-color t-center fw-medium", { "t-dark": _ctx.$route.path === "/marketplac", "t-transp": _ctx.$route.path !== "/marketplac" }]),
55
55
  to: "/marketplac"
56
56
  }, {
57
57
  default: withCtx(() => [
@@ -64,7 +64,7 @@ const _sfc_main = {
64
64
  _: 1
65
65
  }, 8, ["class"]),
66
66
  createVNode(_component_router_link, {
67
- class: normalizeClass(["no-hover-color t-center fw-medium", { "t-grey": _ctx.$route.path === "/rents", "t-transp": _ctx.$route.path !== "/rents" }]),
67
+ class: normalizeClass(["no-hover-color t-center fw-medium", { "t-dark": _ctx.$route.path === "/rents", "t-transp": _ctx.$route.path !== "/rents" }]),
68
68
  to: "/rents"
69
69
  }, {
70
70
  default: withCtx(() => [
@@ -77,7 +77,7 @@ const _sfc_main = {
77
77
  _: 1
78
78
  }, 8, ["class"]),
79
79
  createVNode(_component_router_link, {
80
- class: normalizeClass(["no-hover-color t-center fw-medium", { "t-grey": _ctx.$route.path === "/community", "t-transp": _ctx.$route.path !== "/community" }]),
80
+ class: normalizeClass(["no-hover-color t-center fw-medium", { "t-dark": _ctx.$route.path === "/community", "t-transp": _ctx.$route.path !== "/community" }]),
81
81
  to: "/community"
82
82
  }, {
83
83
  default: withCtx(() => [
@@ -91,7 +91,7 @@ const _sfc_main = {
91
91
  }, 8, ["class"]),
92
92
  createVNode(_component_router_link, {
93
93
  class: normalizeClass(["no-hover-color t-center fw-medium", {
94
- "t-grey": _ctx.$route.path.startsWith("/auth/") || _ctx.$route.path.startsWith("/users/"),
94
+ "t-dark": _ctx.$route.path.startsWith("/auth/") || _ctx.$route.path.startsWith("/users/"),
95
95
  "t-transp": !_ctx.$route.path.startsWith("/auth/") && !_ctx.$route.path.startsWith("/users/")
96
96
  }]),
97
97
  to: state.access.status === false ? { name: "Sign In" } : { name: "User Profile", params: { _id: state.user._id } }
@@ -1 +1 @@
1
- {"version":3,"file":"BottomNavigationBar.vue.js","sources":["../../../../../../../../src/modules/core/views/components/partials/BottomNavigationBar.vue"],"sourcesContent":["<template>\n <footer ref=\"navRef\" class=\"pos-relative pd-medium bg-white\">\n <nav class=\"t-black w-100 flex-justify-between flex-v-center flex\">\n <!-- Home -->\n <router-link \n class=\"no-hover-color t-center fw-medium\" \n :class=\"{ 't-grey': $route.path === '/', 't-transp': $route.path !== '/' }\"\n to=\"/\"\n >\n <IconHome \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\"fw-semi p-small w-100\">{{t('navigation.home')}}</p>\n </router-link>\n\n <!-- Gallery -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ 't-grey': $route.path === '/marketplac', 't-transp': $route.path !== '/marketplac' }\"\n to=\"/marketplac\"\n >\n <IconCatalog \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/catalog' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\" fw-semi p-small w-100\">{{t('navigation.marketplac')}}</p>\n </router-link>\n\n <!-- Events -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ 't-grey': $route.path === '/rents', 't-transp': $route.path !== '/rents' }\"\n to=\"/rents\"\n >\n <IconShopcart \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/rents' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\" fw-semi p-small w-100\">{{t('navigation.rents')}}</p>\n </router-link>\n\n <!-- Community -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ 't-grey': $route.path === '/community', 't-transp': $route.path !== '/community' }\"\n to=\"/community\"\n >\n <IconCommunity \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/community' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\" fw-semi p-small w-100\">{{t('navigation.community')}}</p>\n </router-link>\n\n <!-- Account -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ \n 't-grey': $route.path.startsWith('/auth/') || $route.path.startsWith('/users/'),\n 't-transp': !$route.path.startsWith('/auth/') && !$route.path.startsWith('/users/')\n }\"\n :to=\"auth.state.access.status === false ? {name: 'Sign In'} : { name: 'User Profile', params: { _id: auth.state.user._id }}\"\n >\n <IconProfile \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path.startsWith('/auth/') || $route.path.startsWith('/users/') ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\"fw-semi p-small w-100\">{{t('navigation.profile')}}</p>\n </router-link>\n </nav>\n </footer>\n</template>\n\n<script setup>\nimport { ref, computed } from 'vue';\nimport { useRoute } from 'vue-router';\nimport { useI18n } from 'vue-i18n'\n\nimport IconHome from '@martyrs/src/modules/icons/entities/IconHome.vue'\nimport IconCatalog from '@martyrs/src/modules/icons/entities/IconCatalog.vue'\nimport IconShopcart from '@martyrs/src/modules/icons/entities/IconShopcart.vue'\nimport IconCommunity from '@martyrs/src/modules/icons/entities/IconCommunity.vue'\nimport IconProfile from '@martyrs/src/modules/icons/entities/IconProfile.vue'\n\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst route = useRoute();\nconst navRef = ref(null);\n\n\n\nconst { t, te } = useI18n({ messages: {\n \"en\": {\n \"navigation\": {\n \"home\": \"Home\",\n \"catalog\": \"Catalog\",\n \"rents\": \"My Rents\",\n \"community\": \"Community\",\n \"profile\": \"Profile\"\n }\n }\n}})\n</script>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAuFc,aAAQ;AACtB,UAAM,SAAS,IAAI,IAAI;AAIvB,UAAM,EAAE,GAAG,GAAE,IAAK,QAAQ,EAAE,UAAU;AAAA,MACpC,MAAM;AAAA,QACJ,cAAc;AAAA,UACZ,QAAQ;AAAA,UACR,WAAW;AAAA,UACX,SAAS;AAAA,UACT,aAAa;AAAA,UACb,WAAW;AAAA,QACjB;AAAA,MACA;AAAA,IACA,EAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"BottomNavigationBar.vue.js","sources":["../../../../../../../../src/modules/core/views/components/partials/BottomNavigationBar.vue"],"sourcesContent":["<template>\n <footer ref=\"navRef\" class=\"pos-relative pd-medium bg-white\">\n <nav class=\"t-black w-100 flex-justify-between flex-v-center flex\">\n <!-- Home -->\n <router-link \n class=\"no-hover-color t-center fw-medium\" \n :class=\"{ 't-dark': $route.path === '/', 't-transp': $route.path !== '/' }\"\n to=\"/\"\n >\n <IconHome \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\"fw-semi p-small w-100\">{{t('navigation.home')}}</p>\n </router-link>\n\n <!-- Gallery -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ 't-dark': $route.path === '/marketplac', 't-transp': $route.path !== '/marketplac' }\"\n to=\"/marketplac\"\n >\n <IconCatalog \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/catalog' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\" fw-semi p-small w-100\">{{t('navigation.marketplac')}}</p>\n </router-link>\n\n <!-- Events -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ 't-dark': $route.path === '/rents', 't-transp': $route.path !== '/rents' }\"\n to=\"/rents\"\n >\n <IconShopcart \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/rents' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\" fw-semi p-small w-100\">{{t('navigation.rents')}}</p>\n </router-link>\n\n <!-- Community -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ 't-dark': $route.path === '/community', 't-transp': $route.path !== '/community' }\"\n to=\"/community\"\n >\n <IconCommunity \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path === '/community' ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\" fw-semi p-small w-100\">{{t('navigation.community')}}</p>\n </router-link>\n\n <!-- Account -->\n <router-link \n class=\"no-hover-color t-center fw-medium\"\n :class=\"{ \n 't-dark': $route.path.startsWith('/auth/') || $route.path.startsWith('/users/'),\n 't-transp': !$route.path.startsWith('/auth/') && !$route.path.startsWith('/users/')\n }\"\n :to=\"auth.state.access.status === false ? {name: 'Sign In'} : { name: 'User Profile', params: { _id: auth.state.user._id }}\"\n >\n <IconProfile \n class=\"mn-r-auto mn-l-auto i-big mn-b-thin\"\n :fill=\"$route.path.startsWith('/auth/') || $route.path.startsWith('/users/') ? 'rgb(var(--second))' : 'currentColor'\"\n />\n <p class=\"fw-semi p-small w-100\">{{t('navigation.profile')}}</p>\n </router-link>\n </nav>\n </footer>\n</template>\n\n<script setup>\nimport { ref, computed } from 'vue';\nimport { useRoute } from 'vue-router';\nimport { useI18n } from 'vue-i18n'\n\nimport IconHome from '@martyrs/src/modules/icons/entities/IconHome.vue'\nimport IconCatalog from '@martyrs/src/modules/icons/entities/IconCatalog.vue'\nimport IconShopcart from '@martyrs/src/modules/icons/entities/IconShopcart.vue'\nimport IconCommunity from '@martyrs/src/modules/icons/entities/IconCommunity.vue'\nimport IconProfile from '@martyrs/src/modules/icons/entities/IconProfile.vue'\n\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n\nconst route = useRoute();\nconst navRef = ref(null);\n\n\n\nconst { t, te } = useI18n({ messages: {\n \"en\": {\n \"navigation\": {\n \"home\": \"Home\",\n \"catalog\": \"Catalog\",\n \"rents\": \"My Rents\",\n \"community\": \"Community\",\n \"profile\": \"Profile\"\n }\n }\n}})\n</script>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAuFc,aAAQ;AACtB,UAAM,SAAS,IAAI,IAAI;AAIvB,UAAM,EAAE,GAAG,GAAE,IAAK,QAAQ,EAAE,UAAU;AAAA,MACpC,MAAM;AAAA,QACJ,cAAc;AAAA,UACZ,QAAQ;AAAA,UACR,WAAW;AAAA,UACX,SAAS;AAAA,UACT,aAAa;AAAA,UACb,WAAW;AAAA,QACjB;AAAA,MACA;AAAA,IACA,EAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -5,11 +5,11 @@ import { useStore } from "../../store/core.store.js";
5
5
  import { actions, getters } from "../../../../orders/store/shopcart.js";
6
6
  import { state } from "../../../../auth/views/store/auth.js";
7
7
  import NotificationBadge from "../../../../notifications/components/elements/NotificationBadge.vue.js";
8
- import _sfc_main$2 from "../../../../../components/Button/Button.vue.js";
8
+ import Button from "../../../../../components/Button/Button.vue2.js";
9
9
  import Select from "../../../../../components/Select/Select.vue.js";
10
- import _sfc_main$4 from "../../../../icons/entities/IconShopcart.vue.js";
11
- import _sfc_main$5 from "../../../../icons/entities/IconProfile.vue.js";
12
- import _sfc_main$3 from "../../../../icons/navigation/IconSearch.vue.js";
10
+ import _sfc_main$3 from "../../../../icons/entities/IconShopcart.vue.js";
11
+ import _sfc_main$4 from "../../../../icons/entities/IconProfile.vue.js";
12
+ import _sfc_main$2 from "../../../../icons/navigation/IconSearch.vue.js";
13
13
  import _sfc_main$1 from "../icons/IconMenu.vue.js";
14
14
  /* empty css */
15
15
  const _hoisted_1 = { class: "flex-nowrap flex-v-center flex-justify-start flex gap-micro" };
@@ -119,7 +119,7 @@ const _sfc_main = {
119
119
  renderSlot(_ctx.$slots, "default"),
120
120
  createElementVNode("div", _hoisted_3, [
121
121
  renderSlot(_ctx.$slots, "right"),
122
- unref(router).hasRoute("Search") && unref(route).meta.header_search ? (openBlock(), createBlock(_sfc_main$2, {
122
+ unref(router).hasRoute("Search") && unref(route).meta.header_search ? (openBlock(), createBlock(Button, {
123
123
  key: 0,
124
124
  class: normalizeClass(["pd-zero bg-transparent", unref(route).meta.header_search_class]),
125
125
  "aria-label": "search",
@@ -128,15 +128,19 @@ const _sfc_main = {
128
128
  showLoader: false
129
129
  }, {
130
130
  default: withCtx(() => [
131
- createVNode(_sfc_main$3, {
131
+ createVNode(_sfc_main$2, {
132
132
  class: "i-medium",
133
133
  fill: __props.theme === "light" ? "rgb(var(--black))" : "rgb(var(--white))"
134
134
  }, null, 8, ["fill"])
135
135
  ]),
136
136
  _: 1
137
137
  }, 8, ["class", "submit"])) : createCommentVNode("", true),
138
- __props.showCart ? (openBlock(), createBlock(_sfc_main$2, {
138
+ __props.showNotifications && state.user._id ? (openBlock(), createBlock(NotificationBadge, {
139
139
  key: 1,
140
+ fill: __props.theme === "light" ? "rgb(var(--black))" : "rgb(var(--white))"
141
+ }, null, 8, ["fill"])) : createCommentVNode("", true),
142
+ __props.showCart ? (openBlock(), createBlock(Button, {
143
+ key: 2,
140
144
  class: "pd-zero mn-r-micro",
141
145
  "aria-label": "shopcart",
142
146
  submit: (a) => actions.toggleShopcart(),
@@ -145,18 +149,14 @@ const _sfc_main = {
145
149
  showLoader: false
146
150
  }, {
147
151
  default: withCtx(() => [
148
- createVNode(_sfc_main$4, {
152
+ createVNode(_sfc_main$3, {
149
153
  class: "i-medium",
150
154
  fill: __props.theme === "light" ? "rgb(var(--black))" : "rgb(var(--white))"
151
155
  }, null, 8, ["fill"])
152
156
  ]),
153
157
  _: 1
154
158
  }, 8, ["submit", "counter"])) : createCommentVNode("", true),
155
- __props.showNotifications && state.user._id ? (openBlock(), createBlock(NotificationBadge, {
156
- key: 2,
157
- fill: __props.theme === "light" ? "rgb(var(--black))" : "rgb(var(--white))"
158
- }, null, 8, ["fill"])) : createCommentVNode("", true),
159
- __props.showProfile ? (openBlock(), createBlock(_sfc_main$2, {
159
+ __props.showProfile ? (openBlock(), createBlock(Button, {
160
160
  key: 3,
161
161
  class: "pd-zero bg-transparent",
162
162
  "aria-label": "profile",
@@ -165,7 +165,7 @@ const _sfc_main = {
165
165
  showLoader: false
166
166
  }, {
167
167
  default: withCtx(() => [
168
- createVNode(_sfc_main$5, {
168
+ createVNode(_sfc_main$4, {
169
169
  class: "i-medium",
170
170
  fill: __props.theme === "light" ? "rgb(var(--black))" : "rgb(var(--white))"
171
171
  }, null, 8, ["fill"])