@ozdao/martyrs 0.2.480 → 0.2.482

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 (458) hide show
  1. package/README.md +4 -13
  2. package/dist/{Media-CKk33U4A.js → Media-JBERcJWj.js} +1 -1
  3. package/dist/{Media-B1ZP3D7B.cjs → Media-p7Q8ZAQM.cjs} +1 -1
  4. package/dist/{abac-XF1JVCLI.cjs → abac-6LjoG9u-.cjs} +107 -26
  5. package/dist/{abac-BuL5pUZ4.js → abac-Cf_9lCSh.js} +107 -26
  6. package/dist/builder.cjs +8 -12
  7. package/dist/builder.js +8 -12
  8. package/dist/globals.server.cjs +1 -1
  9. package/dist/globals.server.js +1 -1
  10. package/dist/{main-BhAiwmnI.js → main-AtCVQKF9.js} +2855 -4162
  11. package/dist/main-B-we7C0w.cjs +11 -0
  12. package/dist/martyrs/src/components/Button/{Button.vue.cjs → Button.vue2.cjs} +2 -2
  13. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -0
  14. package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +2 -2
  15. package/dist/martyrs/src/components/Button/{Button.vue.cjs.map → Button.vue2.js.map} +1 -1
  16. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs +28 -7
  17. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs.map +1 -1
  18. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js +29 -8
  19. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js.map +1 -1
  20. package/dist/martyrs/src/components/Chips/Chips.vue2.cjs +5 -8
  21. package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -1
  22. package/dist/martyrs/src/components/Chips/Chips.vue2.js +6 -9
  23. package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -1
  24. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +84 -0
  25. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs.map +1 -0
  26. package/dist/martyrs/src/components/Feed/Carousel.vue.js +84 -0
  27. package/dist/martyrs/src/components/Feed/Carousel.vue.js.map +1 -0
  28. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +4 -4
  29. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  30. package/dist/martyrs/src/components/Feed/Feed.vue.js +4 -4
  31. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  32. package/dist/martyrs/src/components/Field/Field.vue.cjs +2 -1
  33. package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
  34. package/dist/martyrs/src/components/Field/Field.vue.js +2 -1
  35. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
  36. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs +203 -151
  37. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs.map +1 -1
  38. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js +204 -152
  39. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js.map +1 -1
  40. package/dist/martyrs/src/components/Popup/{Popup.vue.cjs → Popup.vue2.cjs} +2 -2
  41. package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +1 -0
  42. package/dist/martyrs/src/components/Popup/{Popup.vue.js → Popup.vue2.js} +2 -2
  43. package/dist/martyrs/src/components/Popup/{Popup.vue.cjs.map → Popup.vue2.js.map} +1 -1
  44. package/dist/martyrs/src/components/Radio/Radio.vue.cjs +2 -2
  45. package/dist/martyrs/src/components/Radio/Radio.vue.cjs.map +1 -1
  46. package/dist/martyrs/src/components/Radio/Radio.vue.js +2 -2
  47. package/dist/martyrs/src/components/Radio/Radio.vue.js.map +1 -1
  48. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs +4 -3
  49. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs.map +1 -1
  50. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js +4 -3
  51. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js.map +1 -1
  52. package/dist/martyrs/src/components/Slider/{Slider.native.vue.cjs → Slider.vue.cjs} +22 -80
  53. package/dist/martyrs/src/components/Slider/Slider.vue.cjs.map +1 -0
  54. package/dist/martyrs/src/components/Slider/{Slider.native.vue.js → Slider.vue.js} +23 -81
  55. package/dist/martyrs/src/components/Slider/Slider.vue.js.map +1 -0
  56. package/dist/martyrs/src/components/Status/Status.vue.cjs.map +1 -1
  57. package/dist/martyrs/src/components/Status/Status.vue.js.map +1 -1
  58. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs +4 -2
  59. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -1
  60. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js +4 -2
  61. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js.map +1 -1
  62. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +1 -1
  63. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +1 -1
  64. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  65. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  66. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  67. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  68. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +3 -1
  69. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
  70. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +4 -2
  71. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  72. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +22 -149
  73. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
  74. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +24 -151
  75. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
  76. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +77 -0
  77. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs.map +1 -0
  78. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +77 -0
  79. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js.map +1 -0
  80. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +121 -0
  81. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs.map +1 -0
  82. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +121 -0
  83. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js.map +1 -0
  84. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs +38 -0
  85. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs.map +1 -0
  86. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js +38 -0
  87. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js.map +1 -0
  88. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  89. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  90. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  91. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  92. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  93. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  94. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  95. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  96. package/dist/martyrs/src/modules/auth/views/router/users.cjs +23 -16
  97. package/dist/martyrs/src/modules/auth/views/router/users.cjs.map +1 -1
  98. package/dist/martyrs/src/modules/auth/views/router/users.js +23 -16
  99. package/dist/martyrs/src/modules/auth/views/router/users.js.map +1 -1
  100. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs +3 -3
  101. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs.map +1 -1
  102. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js +3 -3
  103. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
  104. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +6 -6
  105. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +5 -4
  106. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
  107. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +5 -4
  108. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
  109. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +2 -2
  110. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
  111. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +92 -62
  112. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs.map +1 -1
  113. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +93 -63
  114. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
  115. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs +82 -53
  116. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs.map +1 -1
  117. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js +82 -53
  118. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js.map +1 -1
  119. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +2 -6
  120. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs.map +1 -1
  121. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +2 -6
  122. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js.map +1 -1
  123. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  124. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  125. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  127. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  128. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  129. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
  130. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
  131. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
  132. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
  133. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +3 -9
  134. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs.map +1 -1
  135. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +3 -9
  136. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js.map +1 -1
  137. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
  138. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +5 -5
  139. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
  140. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +10 -10
  141. package/dist/martyrs/src/modules/globals/globals.client.cjs +2 -0
  142. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  143. package/dist/martyrs/src/modules/globals/globals.client.js +2 -0
  144. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  145. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.cjs +1 -1
  146. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.js +1 -1
  147. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
  148. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
  149. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
  150. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +1 -1
  151. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs +84 -0
  152. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs.map +1 -0
  153. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js +84 -0
  154. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js.map +1 -0
  155. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +2 -2
  156. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +2 -2
  157. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -2
  158. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +2 -2
  159. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
  160. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
  161. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
  162. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
  163. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +17 -0
  164. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
  165. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +17 -0
  166. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
  167. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs +70 -0
  168. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs.map +1 -0
  169. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js +70 -0
  170. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js.map +1 -0
  171. package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs +35 -0
  172. package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs.map +1 -0
  173. package/dist/martyrs/src/modules/icons/entities/IconList.vue.js +35 -0
  174. package/dist/martyrs/src/modules/icons/entities/IconList.vue.js.map +1 -0
  175. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs +1 -3
  176. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs.map +1 -1
  177. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js +1 -3
  178. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js.map +1 -1
  179. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs +1 -3
  180. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs.map +1 -1
  181. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js +1 -3
  182. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js.map +1 -1
  183. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs +1 -3
  184. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs.map +1 -1
  185. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.js +1 -3
  186. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.js.map +1 -1
  187. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs +1 -3
  188. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs.map +1 -1
  189. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.js +1 -3
  190. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.js.map +1 -1
  191. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +1 -3
  192. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +1 -1
  193. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +1 -3
  194. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js.map +1 -1
  195. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs +21 -20
  196. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs.map +1 -1
  197. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js +21 -20
  198. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js.map +1 -1
  199. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +1 -3
  200. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +1 -1
  201. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +1 -3
  202. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js.map +1 -1
  203. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs +6 -13
  204. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs.map +1 -1
  205. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js +6 -13
  206. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js.map +1 -1
  207. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs +1 -3
  208. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs.map +1 -1
  209. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.js +1 -3
  210. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.js.map +1 -1
  211. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs +1 -3
  212. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs.map +1 -1
  213. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js +1 -3
  214. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js.map +1 -1
  215. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +1 -3
  216. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -1
  217. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +41 -43
  218. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
  219. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs +8 -8
  220. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs.map +1 -1
  221. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js +8 -8
  222. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js.map +1 -1
  223. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +50 -51
  224. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
  225. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +51 -52
  226. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  227. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
  228. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
  229. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
  230. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  231. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
  232. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  233. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
  234. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
  235. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  236. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  237. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
  238. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
  239. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  240. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
  241. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  242. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  243. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
  244. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  245. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  246. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  247. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  248. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  249. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +7 -4
  250. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -1
  251. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +18 -15
  252. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -1
  253. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  254. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  255. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  256. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  257. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +2 -2
  258. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
  259. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +7 -2
  260. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs.map +1 -1
  261. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +8 -3
  262. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
  263. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +11 -12
  264. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -1
  265. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +12 -13
  266. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -1
  267. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs +33 -24
  268. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +1 -1
  269. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js +36 -27
  270. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -1
  271. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs +4 -4
  272. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs.map +1 -1
  273. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js +4 -4
  274. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js.map +1 -1
  275. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +7 -5
  276. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs.map +1 -1
  277. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js +7 -5
  278. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
  279. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  280. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  281. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +2 -2
  282. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
  283. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +2 -2
  284. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +2 -2
  285. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
  286. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +1 -1
  287. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +58 -41
  288. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  289. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +60 -43
  290. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  291. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +105 -85
  292. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs.map +1 -1
  293. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +107 -87
  294. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
  295. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +2 -2
  296. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +2 -2
  297. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +2 -2
  298. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +2 -2
  299. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +1 -1
  300. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +1 -1
  301. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +145 -0
  302. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs.map +1 -0
  303. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +145 -0
  304. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js.map +1 -0
  305. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +2 -2
  306. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
  307. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +46 -31
  308. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs.map +1 -1
  309. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +50 -35
  310. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -1
  311. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs +43 -0
  312. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs.map +1 -0
  313. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js +43 -0
  314. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js.map +1 -0
  315. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +131 -0
  316. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs.map +1 -0
  317. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +131 -0
  318. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -0
  319. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  320. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  321. package/dist/martyrs/src/modules/products/products.client.cjs +3 -3
  322. package/dist/martyrs/src/modules/products/products.client.cjs.map +1 -1
  323. package/dist/martyrs/src/modules/products/products.client.js +3 -3
  324. package/dist/martyrs/src/modules/products/products.client.js.map +1 -1
  325. package/dist/martyrs/src/modules/products/store/products.cjs +4 -0
  326. package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
  327. package/dist/martyrs/src/modules/products/store/products.js +4 -0
  328. package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
  329. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
  330. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
  331. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
  332. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  333. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
  334. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  335. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  336. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  337. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +2 -2
  338. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +2 -2
  339. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +2 -2
  340. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
  341. package/dist/martyrs.cjs.js +1 -1
  342. package/dist/martyrs.css +1 -1
  343. package/dist/martyrs.es.js +1 -1
  344. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.cjs +1 -1
  345. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
  346. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.cjs +1 -1
  347. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
  348. package/dist/organizations.server.cjs +1 -1
  349. package/dist/organizations.server.js +1 -1
  350. package/dist/products.server.cjs +111 -34
  351. package/dist/products.server.js +111 -34
  352. package/dist/style.css +196 -170
  353. package/package.json +1 -1
  354. package/src/.martyrs/chunks.json +325 -0
  355. package/src/.martyrs/filemap.json +6802 -0
  356. package/src/.martyrs/semantic-analysis.json +307 -0
  357. package/src/.martyrs/toc.json +14 -0
  358. package/src/builder/rspack/rspack.config.api.js +8 -11
  359. package/src/components/Button/Button.vue +2 -2
  360. package/src/components/Checkbox/Checkbox.vue +28 -16
  361. package/src/components/Chips/Chips.vue +4 -4
  362. package/src/components/Feed/Carousel.vue +72 -0
  363. package/src/components/Feed/Feed.vue +2 -2
  364. package/src/components/Field/Field.vue +1 -0
  365. package/src/components/PhotoViewer/PhotoViewer.vue +307 -220
  366. package/src/components/Radio/Radio.vue +2 -10
  367. package/src/components/Skeleton/Skeleton.vue +9 -12
  368. package/src/components/Slider/Slider.vue +220 -100
  369. package/src/components/Status/Status.vue +0 -1
  370. package/src/components/Tooltip/Tooltip.vue +2 -2
  371. package/src/modules/auth/views/components/pages/Profile.vue +1 -1
  372. package/src/modules/auth/views/components/pages/ProfileEdit.old.vue +189 -0
  373. package/src/modules/auth/views/components/pages/ProfileEdit.vue +19 -182
  374. package/src/modules/auth/views/components/pages/ProfileEditAccount.vue +72 -0
  375. package/src/modules/auth/views/components/pages/ProfileEditProfile.vue +110 -0
  376. package/src/modules/auth/views/components/pages/ProfileEditSidebar.vue +28 -0
  377. package/src/modules/auth/views/router/users.js +23 -12
  378. package/src/modules/community/components/blocks/FooterBlogpost.vue +3 -3
  379. package/src/modules/community/components/pages/BlogPost.vue +2 -1
  380. package/src/modules/community/components/sections/Comment.vue +161 -57
  381. package/src/modules/community/components/sections/Comments.vue +120 -63
  382. package/src/modules/community/components/sections/HotPosts.vue +7 -7
  383. package/src/modules/events/components/sections/EventsHot.vue +26 -33
  384. package/src/modules/globals/controllers/classes/abac/abac.core.js +3 -1
  385. package/src/modules/globals/controllers/classes/abac/abac.fields.js +126 -42
  386. package/src/modules/globals/controllers/classes/abac/v2/abac-core-fixed.js +313 -0
  387. package/src/modules/globals/controllers/classes/abac/v2/abac-express-fixed.js +276 -0
  388. package/src/modules/globals/controllers/classes/abac/v2/abac-fields-fixed.js +422 -0
  389. package/src/modules/globals/controllers/classes/abac/v2/abac-main-fixed.js +295 -0
  390. package/src/modules/globals/controllers/classes/abac/v2/abac-policies-fixed.js +316 -0
  391. package/src/modules/globals/controllers/classes/abac/v2/abac-ws-fixed.js +237 -0
  392. package/src/modules/globals/globals.client.js +2 -0
  393. package/src/modules/globals/views/components/blocks/CardFooter.vue +3 -3
  394. package/src/modules/globals/views/components/blocks/CardHeader.vue +1 -1
  395. package/src/modules/globals/views/components/blocks/PopupAuth.vue +66 -0
  396. package/src/modules/globals/views/mixins/mixins.js +37 -17
  397. package/src/modules/globals/views/plugins/popup.auth.plugin.js +77 -0
  398. package/src/modules/icons/entities/IconList.vue +14 -0
  399. package/src/modules/icons/navigation/IconCheck.vue +1 -3
  400. package/src/modules/icons/navigation/IconDoubleCheck.vue +1 -3
  401. package/src/modules/icons/navigation/IconLike.vue +1 -3
  402. package/src/modules/icons/navigation/IconMute.vue +1 -3
  403. package/src/modules/icons/navigation/IconPause.vue +1 -3
  404. package/src/modules/icons/navigation/IconPlay.vue +12 -15
  405. package/src/modules/icons/navigation/IconRefresh.vue +1 -3
  406. package/src/modules/icons/navigation/IconShuffle.vue +11 -26
  407. package/src/modules/icons/navigation/IconUnMute.vue +1 -3
  408. package/src/modules/icons/navigation/IconVolume.vue +1 -3
  409. package/src/modules/icons/pages/IconsPage.vue +0 -2
  410. package/src/modules/music/components/pages/AlbumDetail.vue +2 -2
  411. package/src/modules/music/components/pages/PlaylistDetail.vue +2 -2
  412. package/src/modules/music/components/pages/TrackDetail.vue +1 -1
  413. package/src/modules/music/components/player/MusicPlayer.vue +2 -2
  414. package/src/modules/notifications/components/blocks/NotificationItem.vue +6 -51
  415. package/src/modules/notifications/components/elements/NotificationBadge.vue +53 -97
  416. package/src/modules/organizations/configs/navigation.organization.config.js +8 -4
  417. package/src/modules/products/components/blocks/CardProduct.vue +8 -2
  418. package/src/modules/products/components/blocks/ProductDiscounts.vue +3 -4
  419. package/src/modules/products/components/blocks/ProductImages.vue +32 -23
  420. package/src/modules/products/components/blocks/ProductVariants.vue +6 -4
  421. package/src/modules/products/components/elements/Price.vue +3 -3
  422. package/src/modules/products/components/pages/Product.vue +32 -26
  423. package/src/modules/products/components/pages/ProductEdit.vue +95 -72
  424. package/src/modules/products/components/sections/EditRecommended.vue +131 -0
  425. package/src/modules/products/components/sections/ProductConfigurator.vue +35 -21
  426. package/src/modules/products/components/sections/ProductsPopular.vue +44 -0
  427. package/src/modules/products/components/sections/ProductsRecommended.vue +134 -0
  428. package/src/modules/products/controllers/configs/products.lookup.config.js +20 -15
  429. package/src/modules/products/controllers/products.controller.js +7 -22
  430. package/src/modules/products/models/category.model.js +28 -1
  431. package/src/modules/products/models/leftover.model.js +32 -0
  432. package/src/modules/products/models/product.model.js +37 -1
  433. package/src/modules/products/models/variant.model.js +35 -0
  434. package/src/modules/products/products.client.js +3 -3
  435. package/src/modules/products/routes/products.routes.js +1 -0
  436. package/src/modules/products/store/products.js +4 -0
  437. package/src/styles/base/all.scss +0 -38
  438. package/src/styles/base/shadow_transitions_hover_refactor.scss +20 -51
  439. package/src/styles/config.scss +51 -1
  440. package/dist/main-C75EcBpE.cjs +0 -11
  441. package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
  442. package/dist/martyrs/src/components/Popup/Popup.vue.js.map +0 -1
  443. package/dist/martyrs/src/components/Slider/Slider.native.vue.cjs.map +0 -1
  444. package/dist/martyrs/src/components/Slider/Slider.native.vue.js.map +0 -1
  445. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs +0 -2
  446. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs.map +0 -1
  447. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.js +0 -2
  448. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.js.map +0 -1
  449. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +0 -34
  450. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +0 -1
  451. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +0 -34
  452. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js.map +0 -1
  453. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs +0 -124
  454. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs.map +0 -1
  455. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js +0 -124
  456. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js.map +0 -1
  457. package/src/components/Slider/Slider.native.vue +0 -313
  458. package/src/modules/products/components/sections/PopularProducts.vue +0 -156
@@ -1,15 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- const axios = require("axios");
4
+ const vueRouter = require("vue-router");
5
+ const index = require("../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.cjs");
5
6
  const Comment = require("./Comment.vue.cjs");
7
+ const axiosInstance = require("../../../globals/views/utils/axios-instance.cjs");
6
8
  const _hoisted_1 = { id: "comments" };
7
9
  const _hoisted_2 = { class: "mn-b-medium" };
8
- const _hoisted_3 = { class: "mn-b-small" };
9
- const _hoisted_4 = {
10
- key: 1,
11
- class: "mn-b-small"
12
- };
10
+ const _hoisted_3 = { class: "mn-b-regular" };
11
+ const _hoisted_4 = { class: "mn-b-small" };
13
12
  const _sfc_main = {
14
13
  __name: "Comments",
15
14
  props: [
@@ -19,12 +18,21 @@ const _sfc_main = {
19
18
  ],
20
19
  setup(__props) {
21
20
  const props = __props;
22
- const $axios = axios.create({ baseURL: process.env.API_URL });
21
+ const route = vueRouter.useRoute();
22
+ const { proxy } = vue.getCurrentInstance();
23
23
  const comments = vue.ref([]);
24
24
  const commentContent = vue.ref("");
25
+ const DRAFT_KEY = `comment_draft_${props.type}_${props.target}`;
26
+ vue.onMounted(async () => {
27
+ const { value } = await index.Preferences.get({ key: DRAFT_KEY });
28
+ if (value) {
29
+ commentContent.value = value;
30
+ await index.Preferences.remove({ key: DRAFT_KEY });
31
+ }
32
+ });
25
33
  const fetchComments = async () => {
26
34
  try {
27
- const response = await $axios.get("/comments/read", {
35
+ const response = await axiosInstance.default.get("/comments/read", {
28
36
  params: {
29
37
  target: props.target,
30
38
  type: props.type,
@@ -38,9 +46,63 @@ const _sfc_main = {
38
46
  console.error("Error fetching comments:", error);
39
47
  }
40
48
  };
49
+ const handleCommentSubmit = async () => {
50
+ if (!commentContent.value) {
51
+ return;
52
+ }
53
+ if (!props.owner) {
54
+ await index.Preferences.set({
55
+ key: DRAFT_KEY,
56
+ value: commentContent.value
57
+ });
58
+ await proxy.$showAuth({
59
+ title: "Join the discussion",
60
+ subtitle: "To comment on this post, please sign in or create an account.",
61
+ returnUrl: route.fullPath
62
+ });
63
+ return;
64
+ }
65
+ await submitComment();
66
+ };
67
+ const submitComment = async () => {
68
+ try {
69
+ const response = await axiosInstance.default.post("/comments/create", {
70
+ target: props.target,
71
+ user: props.owner,
72
+ type: props.type,
73
+ content: commentContent.value,
74
+ creator: {
75
+ target: props.owner,
76
+ type: "User",
77
+ hidden: false
78
+ },
79
+ owner: {
80
+ target: props.owner,
81
+ type: "User"
82
+ }
83
+ });
84
+ response.data.owner = props.owner;
85
+ comments.value.push(response.data);
86
+ commentContent.value = "";
87
+ } catch (error) {
88
+ console.error(error);
89
+ }
90
+ };
41
91
  const handleReply = async (parentId, content) => {
92
+ if (!props.owner) {
93
+ await index.Preferences.set({
94
+ key: `${DRAFT_KEY}_reply_${parentId}`,
95
+ value: content
96
+ });
97
+ await proxy.$showAuth({
98
+ title: "Join the discussion",
99
+ subtitle: "To reply to this comment, please sign in or create an account.",
100
+ returnUrl: route.fullPath
101
+ });
102
+ return;
103
+ }
42
104
  try {
43
- const response = await $axios.post("/comments/create", {
105
+ const response = await axiosInstance.default.post("/comments/create", {
44
106
  content,
45
107
  target: props.target,
46
108
  type: props.type,
@@ -65,7 +127,7 @@ const _sfc_main = {
65
127
  };
66
128
  const loadMoreChildren = async (commentId, depth) => {
67
129
  try {
68
- const response = await $axios.get("/comments/read", {
130
+ const response = await axiosInstance.default.get("/comments/read", {
69
131
  params: {
70
132
  target: props.target,
71
133
  type: props.type,
@@ -97,63 +159,30 @@ const _sfc_main = {
97
159
  }
98
160
  return false;
99
161
  };
100
- const submitComment = async () => {
101
- if (!commentContent.value) {
102
- return;
103
- }
104
- try {
105
- const response = await $axios.post("/comments/create", {
106
- target: props.target,
107
- user: props.owner,
108
- type: props.type,
109
- content: commentContent.value,
110
- creator: {
111
- target: props.owner,
112
- type: "User",
113
- hidden: false
114
- },
115
- owner: {
116
- target: props.owner,
117
- type: "User"
118
- }
119
- });
120
- response.data.owner = props.owner;
121
- comments.value.push(response.data);
122
- commentContent.value = "";
123
- } catch (error) {
124
- console.error(error);
125
- }
126
- };
127
162
  fetchComments();
128
163
  return (_ctx, _cache) => {
129
164
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
130
165
  vue.createElementVNode("div", _hoisted_2, [
131
166
  vue.createElementVNode("h3", _hoisted_3, vue.toDisplayString(comments.value.length) + " comments", 1),
132
- !__props.owner ? (vue.openBlock(), vue.createElementBlock("div", {
133
- key: 0,
134
- onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$router.push({ name: "Sign In" })),
135
- class: "pd-big cursor-pointer mn-b-small bg-black t-white flex-center flex radius-big"
136
- }, _cache[2] || (_cache[2] = [
137
- vue.createElementVNode("p", { class: "t-semi uppercase" }, "Please log in to leave a comment.", -1)
138
- ]))) : vue.createCommentVNode("", true),
139
- __props.owner ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4, [
167
+ vue.createElementVNode("div", _hoisted_4, [
140
168
  vue.createElementVNode("form", {
141
- onSubmit: vue.withModifiers(submitComment, ["prevent"]),
142
- class: "bg-light radius-medium pd-medium"
169
+ onSubmit: vue.withModifiers(handleCommentSubmit, ["prevent"]),
170
+ class: "bg-white radius-medium pd-medium"
143
171
  }, [
144
172
  vue.withDirectives(vue.createElementVNode("textarea", {
145
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => commentContent.value = $event),
173
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => commentContent.value = $event),
146
174
  placeholder: "Enter your comment",
147
- class: "p-big w-100"
175
+ class: "p-big w-100",
176
+ style: { "resize": "none" }
148
177
  }, null, 512), [
149
178
  [vue.vModelText, commentContent.value]
150
179
  ]),
151
- _cache[3] || (_cache[3] = vue.createElementVNode("button", {
180
+ _cache[1] || (_cache[1] = vue.createElementVNode("button", {
152
181
  type: "submit",
153
182
  class: "mn-l-auto bg-main pd-r-regular pd-l-regular pd-thin button"
154
- }, "Send", -1))
183
+ }, " Send ", -1))
155
184
  ], 32)
156
- ])) : vue.createCommentVNode("", true)
185
+ ])
157
186
  ]),
158
187
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(comments.value, (comment) => {
159
188
  return vue.openBlock(), vue.createBlock(Comment.default, {
@@ -164,7 +193,7 @@ const _sfc_main = {
164
193
  owner: __props.owner,
165
194
  onReply: handleReply,
166
195
  onLoadMore: loadMoreChildren,
167
- class: "comment bg-light pd-medium mn-b-small radius-medium"
196
+ class: "comment mn-b-medium"
168
197
  }, null, 8, ["comment", "target", "type", "owner"]);
169
198
  }), 128))
170
199
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"Comments.vue.cjs","sources":["../../../../../../../src/modules/community/components/sections/Comments.vue"],"sourcesContent":["<template>\n <div id=\"comments\">\n <div class=\"mn-b-medium\">\n <h3 class=\"mn-b-small\">{{ comments.length }} comments</h3>\n\n <div @click=\"$router.push({name: 'Sign In'})\" class=\"pd-big cursor-pointer mn-b-small bg-black t-white flex-center flex radius-big\" v-if=\"!owner\">\n <p class=\"t-semi uppercase\">Please log in to leave a comment.</p>\n </div>\n\n <div class=\"mn-b-small\" v-if=\"owner\">\n <form @submit.prevent=\"submitComment\" class=\"bg-light radius-medium pd-medium\">\n <textarea v-model=\"commentContent\" placeholder=\"Enter your comment\" class=\"p-big w-100\"></textarea>\n <button type=\"submit\" class=\"mn-l-auto bg-main pd-r-regular pd-l-regular pd-thin button\">Send</button>\n </form>\n </div>\n </div>\n\n <Comment\n v-for=\"comment in comments\"\n :key=\"comment._id\"\n :comment=\"comment\"\n :target=\"target\"\n :type=\"type\"\n :owner=\"owner\"\n @reply=\"handleReply\"\n @load-more=\"loadMoreChildren\"\n class=\"comment bg-light pd-medium mn-b-small radius-medium\"\n />\n </div>\n</template>\n\n<script setup=\"props\">\nimport { ref } from 'vue';\nimport axios from 'axios';\n\nimport Comment from './Comment.vue';\n\nconst props = defineProps([\n 'target', \n 'owner', \n 'type'\n])\n\nconst $axios = axios.create({ baseURL: process.env.API_URL });\nconst comments = ref([]);\nconst commentContent = ref('');\n\nconst fetchComments = async () => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n format: 'tree',\n maxDepth: 2\n }\n });\n comments.value = response.data;\n } catch (error) {\n console.error('Error fetching comments:', error);\n }\n};\n\nconst handleReply = async (parentId, content) => {\n try {\n const response = await $axios.post('/comments/create', {\n content,\n target: props.target,\n type: props.type,\n user: props.owner,\n parent: parentId,\n format: 'tree',\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n const newComment = response.data;\n\n // Обновляем дерево комментариев\n updateCommentTree(comments.value, parentId, newComment);\n } catch (error) {\n console.error('Error posting reply:', error);\n }\n};\n\nconst loadMoreChildren = async (commentId, depth) => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n parentId: commentId,\n depth: depth,\n maxDepth: 10\n }\n });\n\n // Обновляем дерево комментариев\n updateCommentTree(comments.value, commentId, response.data, response.data.hasMore, true);\n } catch (error) {\n console.error('Error loading more comments:', error);\n }\n};\n\nconst updateCommentTree = (comments, parentId, newData, hasMore, isLoadMore = false) => {\n for (let i = 0; i < comments.length; i++) {\n if (comments[i]._id === parentId) {\n if (isLoadMore) {\n // Для загрузки дополнительных комментариев, добавляем их к существующим\n comments[i].children = [...comments[i].children, ...newData];\n comments[i].hasMore = hasMore;\n } else {\n // Для нового комментария, добавляем его в начало списка дочерних\n comments[i].children.push(newData);\n }\n return true;\n }\n if (comments[i].children && updateCommentTree(comments[i].children, parentId, newData, hasMore, isLoadMore)) {\n return true;\n }\n }\n return false;\n};\n\n\nconst submitComment = async () => {\n if (!commentContent.value) {\n return;\n }\n try {\n const response = await $axios.post('/comments/create', {\n target: props.target,\n user: props.owner,\n type: props.type,\n content: commentContent.value,\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n response.data.owner = props.owner;\n comments.value.push(response.data);\n\n commentContent.value = '';\n } catch (error) {\n console.error(error);\n }\n};\n\nfetchComments();\n</script>\n"],"names":["ref","comments"],"mappings":"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"}
1
+ {"version":3,"file":"Comments.vue.cjs","sources":["../../../../../../../src/modules/community/components/sections/Comments.vue"],"sourcesContent":["<template>\n <div id=\"comments\">\n <div class=\"mn-b-medium\">\n \n <h3 class=\"mn-b-regular\">{{ comments.length }} comments</h3>\n\n <div class=\"mn-b-small\">\n <form @submit.prevent=\"handleCommentSubmit\" class=\"bg-white radius-medium pd-medium\">\n <textarea \n v-model=\"commentContent\" \n placeholder=\"Enter your comment\" \n class=\"p-big w-100\"\n style=\"resize: none;\"\n ></textarea>\n <button type=\"submit\" class=\"mn-l-auto bg-main pd-r-regular pd-l-regular pd-thin button\">\n Send\n </button>\n </form>\n </div>\n </div>\n\n <Comment\n v-for=\"comment in comments\"\n :key=\"comment._id\"\n :comment=\"comment\"\n :target=\"target\"\n :type=\"type\"\n :owner=\"owner\"\n @reply=\"handleReply\"\n @load-more=\"loadMoreChildren\"\n class=\"comment mn-b-medium\"\n />\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, getCurrentInstance } from 'vue';\nimport { useRoute } from 'vue-router';\nimport { Preferences } from '@capacitor/preferences';\n\nimport Comment from './Comment.vue';\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n\nconst props = defineProps([\n 'target', \n 'owner', \n 'type'\n]);\n\nconst route = useRoute();\nconst { proxy } = getCurrentInstance();\n\nconst comments = ref([]);\nconst commentContent = ref('');\n\nconst DRAFT_KEY = `comment_draft_${props.type}_${props.target}`;\n\n// Загружаем сохраненный черновик при монтировании\nonMounted(async () => {\n // Проверяем наличие черновика\n const { value } = await Preferences.get({ key: DRAFT_KEY });\n \n if (value) {\n commentContent.value = value;\n // Очищаем черновик после загрузки\n await Preferences.remove({ key: DRAFT_KEY });\n }\n});\n\nconst fetchComments = async () => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n format: 'tree',\n maxDepth: 2\n }\n });\n comments.value = response.data;\n } catch (error) {\n console.error('Error fetching comments:', error);\n }\n};\n\nconst handleCommentSubmit = async () => {\n if (!commentContent.value) {\n return;\n }\n\n // Проверяем авторизацию\n if (!props.owner) {\n // Сохраняем черновик\n await Preferences.set({\n key: DRAFT_KEY,\n value: commentContent.value\n });\n \n // Показываем auth popup\n await proxy.$showAuth({\n title: 'Join the discussion',\n subtitle: 'To comment on this post, please sign in or create an account.',\n returnUrl: route.fullPath\n });\n \n return;\n }\n\n // Отправляем комментарий\n await submitComment();\n};\n\nconst submitComment = async () => {\n try {\n const response = await $axios.post('/comments/create', {\n target: props.target,\n user: props.owner,\n type: props.type,\n content: commentContent.value,\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n response.data.owner = props.owner;\n comments.value.push(response.data);\n\n commentContent.value = '';\n } catch (error) {\n console.error(error);\n }\n};\n\nconst handleReply = async (parentId, content) => {\n // Проверяем авторизацию для ответов\n if (!props.owner) {\n // Сохраняем черновик ответа\n await Preferences.set({\n key: `${DRAFT_KEY}_reply_${parentId}`,\n value: content\n });\n \n await proxy.$showAuth({\n title: 'Join the discussion',\n subtitle: 'To reply to this comment, please sign in or create an account.',\n returnUrl: route.fullPath\n });\n \n return;\n }\n\n try {\n const response = await $axios.post('/comments/create', {\n content,\n target: props.target,\n type: props.type,\n user: props.owner,\n parent: parentId,\n format: 'tree',\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n const newComment = response.data;\n updateCommentTree(comments.value, parentId, newComment);\n } catch (error) {\n console.error('Error posting reply:', error);\n }\n};\n\nconst loadMoreChildren = async (commentId, depth) => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n parentId: commentId,\n depth: depth,\n maxDepth: 10\n }\n });\n\n updateCommentTree(comments.value, commentId, response.data, response.data.hasMore, true);\n } catch (error) {\n console.error('Error loading more comments:', error);\n }\n};\n\nconst updateCommentTree = (comments, parentId, newData, hasMore, isLoadMore = false) => {\n for (let i = 0; i < comments.length; i++) {\n if (comments[i]._id === parentId) {\n if (isLoadMore) {\n comments[i].children = [...comments[i].children, ...newData];\n comments[i].hasMore = hasMore;\n } else {\n comments[i].children.push(newData);\n }\n return true;\n }\n if (comments[i].children && updateCommentTree(comments[i].children, parentId, newData, hasMore, isLoadMore)) {\n return true;\n }\n }\n return false;\n};\n\nfetchComments();\n</script>"],"names":["useRoute","getCurrentInstance","ref","onMounted","Preferences","$axios","comments"],"mappings":"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"}
@@ -1,13 +1,12 @@
1
- import { ref, createElementBlock, openBlock, createElementVNode, createCommentVNode, toDisplayString, withModifiers, withDirectives, vModelText, Fragment, renderList, createBlock } from "vue";
2
- import axios from "axios";
3
- import _sfc_main$1 from "./Comment.vue.js";
1
+ import { getCurrentInstance, ref, onMounted, createElementBlock, openBlock, createElementVNode, toDisplayString, withModifiers, withDirectives, vModelText, Fragment, renderList, createBlock } from "vue";
2
+ import { useRoute } from "vue-router";
3
+ import { Preferences } from "../../../../../node_modules/.pnpm/@capacitor_preferences@7.0.1_@capacitor_core@7.2.0/node_modules/@capacitor/preferences/dist/esm/index.js";
4
+ import Comment from "./Comment.vue.js";
5
+ import $axios from "../../../globals/views/utils/axios-instance.js";
4
6
  const _hoisted_1 = { id: "comments" };
5
7
  const _hoisted_2 = { class: "mn-b-medium" };
6
- const _hoisted_3 = { class: "mn-b-small" };
7
- const _hoisted_4 = {
8
- key: 1,
9
- class: "mn-b-small"
10
- };
8
+ const _hoisted_3 = { class: "mn-b-regular" };
9
+ const _hoisted_4 = { class: "mn-b-small" };
11
10
  const _sfc_main = {
12
11
  __name: "Comments",
13
12
  props: [
@@ -17,9 +16,18 @@ const _sfc_main = {
17
16
  ],
18
17
  setup(__props) {
19
18
  const props = __props;
20
- const $axios = axios.create({ baseURL: process.env.API_URL });
19
+ const route = useRoute();
20
+ const { proxy } = getCurrentInstance();
21
21
  const comments = ref([]);
22
22
  const commentContent = ref("");
23
+ const DRAFT_KEY = `comment_draft_${props.type}_${props.target}`;
24
+ onMounted(async () => {
25
+ const { value } = await Preferences.get({ key: DRAFT_KEY });
26
+ if (value) {
27
+ commentContent.value = value;
28
+ await Preferences.remove({ key: DRAFT_KEY });
29
+ }
30
+ });
23
31
  const fetchComments = async () => {
24
32
  try {
25
33
  const response = await $axios.get("/comments/read", {
@@ -36,7 +44,61 @@ const _sfc_main = {
36
44
  console.error("Error fetching comments:", error);
37
45
  }
38
46
  };
47
+ const handleCommentSubmit = async () => {
48
+ if (!commentContent.value) {
49
+ return;
50
+ }
51
+ if (!props.owner) {
52
+ await Preferences.set({
53
+ key: DRAFT_KEY,
54
+ value: commentContent.value
55
+ });
56
+ await proxy.$showAuth({
57
+ title: "Join the discussion",
58
+ subtitle: "To comment on this post, please sign in or create an account.",
59
+ returnUrl: route.fullPath
60
+ });
61
+ return;
62
+ }
63
+ await submitComment();
64
+ };
65
+ const submitComment = async () => {
66
+ try {
67
+ const response = await $axios.post("/comments/create", {
68
+ target: props.target,
69
+ user: props.owner,
70
+ type: props.type,
71
+ content: commentContent.value,
72
+ creator: {
73
+ target: props.owner,
74
+ type: "User",
75
+ hidden: false
76
+ },
77
+ owner: {
78
+ target: props.owner,
79
+ type: "User"
80
+ }
81
+ });
82
+ response.data.owner = props.owner;
83
+ comments.value.push(response.data);
84
+ commentContent.value = "";
85
+ } catch (error) {
86
+ console.error(error);
87
+ }
88
+ };
39
89
  const handleReply = async (parentId, content) => {
90
+ if (!props.owner) {
91
+ await Preferences.set({
92
+ key: `${DRAFT_KEY}_reply_${parentId}`,
93
+ value: content
94
+ });
95
+ await proxy.$showAuth({
96
+ title: "Join the discussion",
97
+ subtitle: "To reply to this comment, please sign in or create an account.",
98
+ returnUrl: route.fullPath
99
+ });
100
+ return;
101
+ }
40
102
  try {
41
103
  const response = await $axios.post("/comments/create", {
42
104
  content,
@@ -95,66 +157,33 @@ const _sfc_main = {
95
157
  }
96
158
  return false;
97
159
  };
98
- const submitComment = async () => {
99
- if (!commentContent.value) {
100
- return;
101
- }
102
- try {
103
- const response = await $axios.post("/comments/create", {
104
- target: props.target,
105
- user: props.owner,
106
- type: props.type,
107
- content: commentContent.value,
108
- creator: {
109
- target: props.owner,
110
- type: "User",
111
- hidden: false
112
- },
113
- owner: {
114
- target: props.owner,
115
- type: "User"
116
- }
117
- });
118
- response.data.owner = props.owner;
119
- comments.value.push(response.data);
120
- commentContent.value = "";
121
- } catch (error) {
122
- console.error(error);
123
- }
124
- };
125
160
  fetchComments();
126
161
  return (_ctx, _cache) => {
127
162
  return openBlock(), createElementBlock("div", _hoisted_1, [
128
163
  createElementVNode("div", _hoisted_2, [
129
164
  createElementVNode("h3", _hoisted_3, toDisplayString(comments.value.length) + " comments", 1),
130
- !__props.owner ? (openBlock(), createElementBlock("div", {
131
- key: 0,
132
- onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$router.push({ name: "Sign In" })),
133
- class: "pd-big cursor-pointer mn-b-small bg-black t-white flex-center flex radius-big"
134
- }, _cache[2] || (_cache[2] = [
135
- createElementVNode("p", { class: "t-semi uppercase" }, "Please log in to leave a comment.", -1)
136
- ]))) : createCommentVNode("", true),
137
- __props.owner ? (openBlock(), createElementBlock("div", _hoisted_4, [
165
+ createElementVNode("div", _hoisted_4, [
138
166
  createElementVNode("form", {
139
- onSubmit: withModifiers(submitComment, ["prevent"]),
140
- class: "bg-light radius-medium pd-medium"
167
+ onSubmit: withModifiers(handleCommentSubmit, ["prevent"]),
168
+ class: "bg-white radius-medium pd-medium"
141
169
  }, [
142
170
  withDirectives(createElementVNode("textarea", {
143
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => commentContent.value = $event),
171
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => commentContent.value = $event),
144
172
  placeholder: "Enter your comment",
145
- class: "p-big w-100"
173
+ class: "p-big w-100",
174
+ style: { "resize": "none" }
146
175
  }, null, 512), [
147
176
  [vModelText, commentContent.value]
148
177
  ]),
149
- _cache[3] || (_cache[3] = createElementVNode("button", {
178
+ _cache[1] || (_cache[1] = createElementVNode("button", {
150
179
  type: "submit",
151
180
  class: "mn-l-auto bg-main pd-r-regular pd-l-regular pd-thin button"
152
- }, "Send", -1))
181
+ }, " Send ", -1))
153
182
  ], 32)
154
- ])) : createCommentVNode("", true)
183
+ ])
155
184
  ]),
156
185
  (openBlock(true), createElementBlock(Fragment, null, renderList(comments.value, (comment) => {
157
- return openBlock(), createBlock(_sfc_main$1, {
186
+ return openBlock(), createBlock(Comment, {
158
187
  key: comment._id,
159
188
  comment,
160
189
  target: __props.target,
@@ -162,7 +191,7 @@ const _sfc_main = {
162
191
  owner: __props.owner,
163
192
  onReply: handleReply,
164
193
  onLoadMore: loadMoreChildren,
165
- class: "comment bg-light pd-medium mn-b-small radius-medium"
194
+ class: "comment mn-b-medium"
166
195
  }, null, 8, ["comment", "target", "type", "owner"]);
167
196
  }), 128))
168
197
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"Comments.vue.js","sources":["../../../../../../../src/modules/community/components/sections/Comments.vue"],"sourcesContent":["<template>\n <div id=\"comments\">\n <div class=\"mn-b-medium\">\n <h3 class=\"mn-b-small\">{{ comments.length }} comments</h3>\n\n <div @click=\"$router.push({name: 'Sign In'})\" class=\"pd-big cursor-pointer mn-b-small bg-black t-white flex-center flex radius-big\" v-if=\"!owner\">\n <p class=\"t-semi uppercase\">Please log in to leave a comment.</p>\n </div>\n\n <div class=\"mn-b-small\" v-if=\"owner\">\n <form @submit.prevent=\"submitComment\" class=\"bg-light radius-medium pd-medium\">\n <textarea v-model=\"commentContent\" placeholder=\"Enter your comment\" class=\"p-big w-100\"></textarea>\n <button type=\"submit\" class=\"mn-l-auto bg-main pd-r-regular pd-l-regular pd-thin button\">Send</button>\n </form>\n </div>\n </div>\n\n <Comment\n v-for=\"comment in comments\"\n :key=\"comment._id\"\n :comment=\"comment\"\n :target=\"target\"\n :type=\"type\"\n :owner=\"owner\"\n @reply=\"handleReply\"\n @load-more=\"loadMoreChildren\"\n class=\"comment bg-light pd-medium mn-b-small radius-medium\"\n />\n </div>\n</template>\n\n<script setup=\"props\">\nimport { ref } from 'vue';\nimport axios from 'axios';\n\nimport Comment from './Comment.vue';\n\nconst props = defineProps([\n 'target', \n 'owner', \n 'type'\n])\n\nconst $axios = axios.create({ baseURL: process.env.API_URL });\nconst comments = ref([]);\nconst commentContent = ref('');\n\nconst fetchComments = async () => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n format: 'tree',\n maxDepth: 2\n }\n });\n comments.value = response.data;\n } catch (error) {\n console.error('Error fetching comments:', error);\n }\n};\n\nconst handleReply = async (parentId, content) => {\n try {\n const response = await $axios.post('/comments/create', {\n content,\n target: props.target,\n type: props.type,\n user: props.owner,\n parent: parentId,\n format: 'tree',\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n const newComment = response.data;\n\n // Обновляем дерево комментариев\n updateCommentTree(comments.value, parentId, newComment);\n } catch (error) {\n console.error('Error posting reply:', error);\n }\n};\n\nconst loadMoreChildren = async (commentId, depth) => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n parentId: commentId,\n depth: depth,\n maxDepth: 10\n }\n });\n\n // Обновляем дерево комментариев\n updateCommentTree(comments.value, commentId, response.data, response.data.hasMore, true);\n } catch (error) {\n console.error('Error loading more comments:', error);\n }\n};\n\nconst updateCommentTree = (comments, parentId, newData, hasMore, isLoadMore = false) => {\n for (let i = 0; i < comments.length; i++) {\n if (comments[i]._id === parentId) {\n if (isLoadMore) {\n // Для загрузки дополнительных комментариев, добавляем их к существующим\n comments[i].children = [...comments[i].children, ...newData];\n comments[i].hasMore = hasMore;\n } else {\n // Для нового комментария, добавляем его в начало списка дочерних\n comments[i].children.push(newData);\n }\n return true;\n }\n if (comments[i].children && updateCommentTree(comments[i].children, parentId, newData, hasMore, isLoadMore)) {\n return true;\n }\n }\n return false;\n};\n\n\nconst submitComment = async () => {\n if (!commentContent.value) {\n return;\n }\n try {\n const response = await $axios.post('/comments/create', {\n target: props.target,\n user: props.owner,\n type: props.type,\n content: commentContent.value,\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n response.data.owner = props.owner;\n comments.value.push(response.data);\n\n commentContent.value = '';\n } catch (error) {\n console.error(error);\n }\n};\n\nfetchComments();\n</script>\n"],"names":["comments"],"mappings":"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"}
1
+ {"version":3,"file":"Comments.vue.js","sources":["../../../../../../../src/modules/community/components/sections/Comments.vue"],"sourcesContent":["<template>\n <div id=\"comments\">\n <div class=\"mn-b-medium\">\n \n <h3 class=\"mn-b-regular\">{{ comments.length }} comments</h3>\n\n <div class=\"mn-b-small\">\n <form @submit.prevent=\"handleCommentSubmit\" class=\"bg-white radius-medium pd-medium\">\n <textarea \n v-model=\"commentContent\" \n placeholder=\"Enter your comment\" \n class=\"p-big w-100\"\n style=\"resize: none;\"\n ></textarea>\n <button type=\"submit\" class=\"mn-l-auto bg-main pd-r-regular pd-l-regular pd-thin button\">\n Send\n </button>\n </form>\n </div>\n </div>\n\n <Comment\n v-for=\"comment in comments\"\n :key=\"comment._id\"\n :comment=\"comment\"\n :target=\"target\"\n :type=\"type\"\n :owner=\"owner\"\n @reply=\"handleReply\"\n @load-more=\"loadMoreChildren\"\n class=\"comment mn-b-medium\"\n />\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, getCurrentInstance } from 'vue';\nimport { useRoute } from 'vue-router';\nimport { Preferences } from '@capacitor/preferences';\n\nimport Comment from './Comment.vue';\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n\nconst props = defineProps([\n 'target', \n 'owner', \n 'type'\n]);\n\nconst route = useRoute();\nconst { proxy } = getCurrentInstance();\n\nconst comments = ref([]);\nconst commentContent = ref('');\n\nconst DRAFT_KEY = `comment_draft_${props.type}_${props.target}`;\n\n// Загружаем сохраненный черновик при монтировании\nonMounted(async () => {\n // Проверяем наличие черновика\n const { value } = await Preferences.get({ key: DRAFT_KEY });\n \n if (value) {\n commentContent.value = value;\n // Очищаем черновик после загрузки\n await Preferences.remove({ key: DRAFT_KEY });\n }\n});\n\nconst fetchComments = async () => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n format: 'tree',\n maxDepth: 2\n }\n });\n comments.value = response.data;\n } catch (error) {\n console.error('Error fetching comments:', error);\n }\n};\n\nconst handleCommentSubmit = async () => {\n if (!commentContent.value) {\n return;\n }\n\n // Проверяем авторизацию\n if (!props.owner) {\n // Сохраняем черновик\n await Preferences.set({\n key: DRAFT_KEY,\n value: commentContent.value\n });\n \n // Показываем auth popup\n await proxy.$showAuth({\n title: 'Join the discussion',\n subtitle: 'To comment on this post, please sign in or create an account.',\n returnUrl: route.fullPath\n });\n \n return;\n }\n\n // Отправляем комментарий\n await submitComment();\n};\n\nconst submitComment = async () => {\n try {\n const response = await $axios.post('/comments/create', {\n target: props.target,\n user: props.owner,\n type: props.type,\n content: commentContent.value,\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n response.data.owner = props.owner;\n comments.value.push(response.data);\n\n commentContent.value = '';\n } catch (error) {\n console.error(error);\n }\n};\n\nconst handleReply = async (parentId, content) => {\n // Проверяем авторизацию для ответов\n if (!props.owner) {\n // Сохраняем черновик ответа\n await Preferences.set({\n key: `${DRAFT_KEY}_reply_${parentId}`,\n value: content\n });\n \n await proxy.$showAuth({\n title: 'Join the discussion',\n subtitle: 'To reply to this comment, please sign in or create an account.',\n returnUrl: route.fullPath\n });\n \n return;\n }\n\n try {\n const response = await $axios.post('/comments/create', {\n content,\n target: props.target,\n type: props.type,\n user: props.owner,\n parent: parentId,\n format: 'tree',\n creator: {\n target: props.owner,\n type: 'User',\n hidden: false\n },\n owner: {\n target: props.owner,\n type: 'User'\n }\n });\n\n const newComment = response.data;\n updateCommentTree(comments.value, parentId, newComment);\n } catch (error) {\n console.error('Error posting reply:', error);\n }\n};\n\nconst loadMoreChildren = async (commentId, depth) => {\n try {\n const response = await $axios.get('/comments/read', {\n params: {\n target: props.target,\n type: props.type,\n user: props.owner,\n parentId: commentId,\n depth: depth,\n maxDepth: 10\n }\n });\n\n updateCommentTree(comments.value, commentId, response.data, response.data.hasMore, true);\n } catch (error) {\n console.error('Error loading more comments:', error);\n }\n};\n\nconst updateCommentTree = (comments, parentId, newData, hasMore, isLoadMore = false) => {\n for (let i = 0; i < comments.length; i++) {\n if (comments[i]._id === parentId) {\n if (isLoadMore) {\n comments[i].children = [...comments[i].children, ...newData];\n comments[i].hasMore = hasMore;\n } else {\n comments[i].children.push(newData);\n }\n return true;\n }\n if (comments[i].children && updateCommentTree(comments[i].children, parentId, newData, hasMore, isLoadMore)) {\n return true;\n }\n }\n return false;\n};\n\nfetchComments();\n</script>"],"names":["comments"],"mappings":";;;;;;;;;;;;;;;;;AA2CA,UAAM,QAAQ;AAMd,UAAM,QAAQ,SAAU;AACxB,UAAM,EAAE,MAAO,IAAG,mBAAoB;AAEtC,UAAM,WAAW,IAAI,EAAE;AACvB,UAAM,iBAAiB,IAAI,EAAE;AAE7B,UAAM,YAAY,iBAAiB,MAAM,IAAI,IAAI,MAAM,MAAM;AAG7D,cAAU,YAAY;AAEpB,YAAM,EAAE,MAAK,IAAK,MAAM,YAAY,IAAI,EAAE,KAAK,WAAW;AAE1D,UAAI,OAAO;AACT,uBAAe,QAAQ;AAEvB,cAAM,YAAY,OAAO,EAAE,KAAK,UAAS,CAAE;AAAA,MAC/C;AAAA,IACA,CAAC;AAED,UAAM,gBAAgB,YAAY;AAChC,UAAI;AACF,cAAM,WAAW,MAAM,OAAO,IAAI,kBAAkB;AAAA,UAClD,QAAQ;AAAA,YACN,QAAQ,MAAM;AAAA,YACd,MAAM,MAAM;AAAA,YACZ,MAAM,MAAM;AAAA,YACZ,QAAQ;AAAA,YACR,UAAU;AAAA,UAClB;AAAA,QACA,CAAK;AACD,iBAAS,QAAQ,SAAS;AAAA,MAC3B,SAAQ,OAAO;AACd,gBAAQ,MAAM,4BAA4B,KAAK;AAAA,MACnD;AAAA,IACA;AAEA,UAAM,sBAAsB,YAAY;AACtC,UAAI,CAAC,eAAe,OAAO;AACzB;AAAA,MACJ;AAGE,UAAI,CAAC,MAAM,OAAO;AAEhB,cAAM,YAAY,IAAI;AAAA,UACpB,KAAK;AAAA,UACL,OAAO,eAAe;AAAA,QAC5B,CAAK;AAGD,cAAM,MAAM,UAAU;AAAA,UACpB,OAAO;AAAA,UACP,UAAU;AAAA,UACV,WAAW,MAAM;AAAA,QACvB,CAAK;AAED;AAAA,MACJ;AAGE,YAAM,cAAe;AAAA,IACvB;AAEA,UAAM,gBAAgB,YAAY;AAChC,UAAI;AACF,cAAM,WAAW,MAAM,OAAO,KAAK,oBAAoB;AAAA,UACrD,QAAQ,MAAM;AAAA,UACd,MAAM,MAAM;AAAA,UACZ,MAAM,MAAM;AAAA,UACZ,SAAS,eAAe;AAAA,UACxB,SAAS;AAAA,YACP,QAAQ,MAAM;AAAA,YACd,MAAM;AAAA,YACN,QAAQ;AAAA,UACT;AAAA,UACD,OAAO;AAAA,YACL,QAAQ,MAAM;AAAA,YACd,MAAM;AAAA,UACd;AAAA,QACA,CAAK;AAED,iBAAS,KAAK,QAAQ,MAAM;AAC5B,iBAAS,MAAM,KAAK,SAAS,IAAI;AAEjC,uBAAe,QAAQ;AAAA,MACxB,SAAQ,OAAO;AACd,gBAAQ,MAAM,KAAK;AAAA,MACvB;AAAA,IACA;AAEA,UAAM,cAAc,OAAO,UAAU,YAAY;AAE/C,UAAI,CAAC,MAAM,OAAO;AAEhB,cAAM,YAAY,IAAI;AAAA,UACpB,KAAK,GAAG,SAAS,UAAU,QAAQ;AAAA,UACnC,OAAO;AAAA,QACb,CAAK;AAED,cAAM,MAAM,UAAU;AAAA,UACpB,OAAO;AAAA,UACP,UAAU;AAAA,UACV,WAAW,MAAM;AAAA,QACvB,CAAK;AAED;AAAA,MACJ;AAEE,UAAI;AACF,cAAM,WAAW,MAAM,OAAO,KAAK,oBAAoB;AAAA,UACrD;AAAA,UACA,QAAQ,MAAM;AAAA,UACd,MAAM,MAAM;AAAA,UACZ,MAAM,MAAM;AAAA,UACZ,QAAQ;AAAA,UACR,QAAQ;AAAA,UACR,SAAS;AAAA,YACP,QAAQ,MAAM;AAAA,YACd,MAAM;AAAA,YACN,QAAQ;AAAA,UACT;AAAA,UACD,OAAO;AAAA,YACL,QAAQ,MAAM;AAAA,YACd,MAAM;AAAA,UACd;AAAA,QACA,CAAK;AAED,cAAM,aAAa,SAAS;AAC5B,0BAAkB,SAAS,OAAO,UAAU,UAAU;AAAA,MACvD,SAAQ,OAAO;AACd,gBAAQ,MAAM,wBAAwB,KAAK;AAAA,MAC/C;AAAA,IACA;AAEA,UAAM,mBAAmB,OAAO,WAAW,UAAU;AACnD,UAAI;AACF,cAAM,WAAW,MAAM,OAAO,IAAI,kBAAkB;AAAA,UAClD,QAAQ;AAAA,YACN,QAAQ,MAAM;AAAA,YACd,MAAM,MAAM;AAAA,YACZ,MAAM,MAAM;AAAA,YACZ,UAAU;AAAA,YACV;AAAA,YACA,UAAU;AAAA,UAClB;AAAA,QACA,CAAK;AAED,0BAAkB,SAAS,OAAO,WAAW,SAAS,MAAM,SAAS,KAAK,SAAS,IAAI;AAAA,MACxF,SAAQ,OAAO;AACd,gBAAQ,MAAM,gCAAgC,KAAK;AAAA,MACvD;AAAA,IACA;AAEA,UAAM,oBAAoB,CAACA,WAAU,UAAU,SAAS,SAAS,aAAa,UAAU;AACtF,eAAS,IAAI,GAAG,IAAIA,UAAS,QAAQ,KAAK;AACxC,YAAIA,UAAS,CAAC,EAAE,QAAQ,UAAU;AAChC,cAAI,YAAY;AACd,YAAAA,UAAS,CAAC,EAAE,WAAW,CAAC,GAAGA,UAAS,CAAC,EAAE,UAAU,GAAG,OAAO;AAC3D,YAAAA,UAAS,CAAC,EAAE,UAAU;AAAA,UAC9B,OAAa;AACL,YAAAA,UAAS,CAAC,EAAE,SAAS,KAAK,OAAO;AAAA,UACzC;AACM,iBAAO;AAAA,QACb;AACI,YAAIA,UAAS,CAAC,EAAE,YAAY,kBAAkBA,UAAS,CAAC,EAAE,UAAU,UAAU,SAAS,SAAS,UAAU,GAAG;AAC3G,iBAAO;AAAA,QACb;AAAA,MACA;AACE,aAAO;AAAA,IACT;AAEA,kBAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,11 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- ;/* empty css */
5
- ;/* empty css */
6
- ;/* empty css */
7
- ;/* empty css */
8
- const Slider_native = require("../../../../components/Slider/Slider.native.vue.cjs");
4
+ const Carousel = require("../../../../components/Feed/Carousel.vue.cjs");
9
5
  const CardBlogpost = require("../blocks/CardBlogpost.vue.cjs");
10
6
  const blogposts = require("../../store/blogposts.cjs");
11
7
  const auth = require("../../../auth/views/store/auth.cjs");
@@ -35,7 +31,7 @@ const _sfc_main = {
35
31
  },
36
32
  setup(__props) {
37
33
  return (_ctx, _cache) => {
38
- return vue.openBlock(), vue.createBlock(Slider_native.default, {
34
+ return vue.openBlock(), vue.createBlock(Carousel.default, {
39
35
  store: {
40
36
  read: (options) => blogposts.read({
41
37
  skip: __props.skip,
@@ -1 +1 @@
1
- {"version":3,"file":"HotPosts.vue.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"HotPosts.vue.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,9 +1,5 @@
1
1
  import { createBlock, openBlock, withCtx } from "vue";
2
- /* empty css */
3
- /* empty css */
4
- /* empty css */
5
- /* empty css */
6
- import SliderNative from "../../../../components/Slider/Slider.native.vue.js";
2
+ import Carousel from "../../../../components/Feed/Carousel.vue.js";
7
3
  import _sfc_main$1 from "../blocks/CardBlogpost.vue.js";
8
4
  import { read } from "../../store/blogposts.js";
9
5
  import { state } from "../../../auth/views/store/auth.js";
@@ -33,7 +29,7 @@ const _sfc_main = {
33
29
  },
34
30
  setup(__props) {
35
31
  return (_ctx, _cache) => {
36
- return openBlock(), createBlock(SliderNative, {
32
+ return openBlock(), createBlock(Carousel, {
37
33
  store: {
38
34
  read: (options) => read({
39
35
  skip: __props.skip,
@@ -1 +1 @@
1
- {"version":3,"file":"HotPosts.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"HotPosts.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
4
  const index = require("../../../../../../node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.cjs");
5
- const Button = require("../../../../components/Button/Button.vue.cjs");
5
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
6
6
  const tickets = require("../../store/tickets.cjs");
7
7
  ;/* empty css */
8
8
  const _hoisted_1 = {
@@ -1,6 +1,6 @@
1
1
  import { ref, onMounted, onUnmounted, createElementBlock, openBlock, createVNode, createBlock, createCommentVNode, withCtx, createTextVNode, Teleport, createElementVNode } from "vue";
2
2
  import { BarcodeScanner } from "../../../../../../node_modules/.pnpm/@capacitor-mlkit_barcode-scanning@7.2.1_@capacitor_core@7.2.0/node_modules/@capacitor-mlkit/barcode-scanning/dist/esm/index.js";
3
- import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
3
+ import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
4
4
  import { actions } from "../../store/tickets.js";
5
5
  /* empty css */
6
6
  const _hoisted_1 = {
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- const Button = require("../../../../components/Button/Button.vue.cjs");
4
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
5
5
  require("../../../auth/views/store/auth.cjs");
6
6
  const tickets = require("../../store/tickets.cjs");
7
7
  const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.cjs");
@@ -1,5 +1,5 @@
1
1
  import { createBlock, openBlock, withCtx, createTextVNode, toDisplayString } from "vue";
2
- import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
2
+ import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
3
3
  import "../../../auth/views/store/auth.js";
4
4
  import { actions } from "../../store/tickets.js";
5
5
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
@@ -7,7 +7,7 @@ const Constructor = require("../../../constructor/components/sections/Constructo
7
7
  const vueDatepicker = require("../../../../../../node_modules/.pnpm/@vuepic_vue-datepicker@11.0.2_vue@3.5.13_typescript@5.8.3_/node_modules/@vuepic/vue-datepicker/dist/vue-datepicker.cjs");
8
8
  ;/* empty css */
9
9
  const Block = require("../../../../components/Block/Block.vue.cjs");
10
- const Popup = require("../../../../components/Popup/Popup.vue.cjs");
10
+ const Popup = require("../../../../components/Popup/Popup.vue2.cjs");
11
11
  const Field = require("../../../../components/Field/Field.vue.cjs");
12
12
  const BlockTags = require("../../../../components/FieldTags/BlockTags.vue.cjs");
13
13
  const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
@@ -17,7 +17,7 @@ const UploadImage = require("../../../../components/UploadImage/UploadImage.vue.
17
17
  ;/* empty css */
18
18
  require("../../../../components/EditImages/EditImages.vue.cjs");
19
19
  const Feed = require("../../../../components/Feed/Feed.vue.cjs");
20
- const Button = require("../../../../components/Button/Button.vue.cjs");
20
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
21
21
  const Card = require("../../../globals/views/components/blocks/Card.vue.cjs");
22
22
  const IconDelete = require("../../../icons/navigation/IconDelete.vue.cjs");
23
23
  const vueRouter = require("vue-router");
@@ -5,7 +5,7 @@ import _sfc_main$4 from "../../../constructor/components/sections/Constructor.vu
5
5
  import Qn from "../../../../../../node_modules/.pnpm/@vuepic_vue-datepicker@11.0.2_vue@3.5.13_typescript@5.8.3_/node_modules/@vuepic/vue-datepicker/dist/vue-datepicker.js";
6
6
  /* empty css */
7
7
  import _sfc_main$2 from "../../../../components/Block/Block.vue.js";
8
- import _sfc_main$5 from "../../../../components/Popup/Popup.vue.js";
8
+ import _sfc_main$5 from "../../../../components/Popup/Popup.vue2.js";
9
9
  import Field from "../../../../components/Field/Field.vue.js";
10
10
  import _sfc_main$6 from "../../../../components/FieldTags/BlockTags.vue.js";
11
11
  import _sfc_main$9 from "../../../../components/Checkbox/Checkbox.vue.js";
@@ -15,7 +15,7 @@ import _sfc_main$1 from "../../../../components/UploadImage/UploadImage.vue.js";
15
15
  /* empty css */
16
16
  import "../../../../components/EditImages/EditImages.vue.js";
17
17
  import _sfc_main$8 from "../../../../components/Feed/Feed.vue.js";
18
- import _sfc_main$a from "../../../../components/Button/Button.vue.js";
18
+ import _sfc_main$a from "../../../../components/Button/Button.vue2.js";
19
19
  import _sfc_main$7 from "../../../globals/views/components/blocks/Card.vue.js";
20
20
  import _sfc_main$3 from "../../../icons/navigation/IconDelete.vue.js";
21
21
  import { useRoute, useRouter } from "vue-router";
@@ -3,9 +3,9 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const Feed = require("../../../../components/Feed/Feed.vue.cjs");
5
5
  const Block = require("../../../../components/Block/Block.vue.cjs");
6
- const Popup = require("../../../../components/Popup/Popup.vue.cjs");
6
+ const Popup = require("../../../../components/Popup/Popup.vue2.cjs");
7
7
  const Field = require("../../../../components/Field/Field.vue.cjs");
8
- const Button = require("../../../../components/Button/Button.vue.cjs");
8
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
9
9
  const ButtonCheck = require("../elements/ButtonCheck.vue.cjs");
10
10
  const IconDelete = require("../../../icons/navigation/IconDelete.vue.cjs");
11
11
  const IconAdd = require("../../../icons/navigation/IconAdd.vue.cjs");
@@ -1,9 +1,9 @@
1
1
  import { ref, onMounted, createElementBlock, createCommentVNode, unref, openBlock, createElementVNode, createVNode, withCtx, Fragment, renderList, createTextVNode, createBlock, toDisplayString } from "vue";
2
2
  import _sfc_main$7 from "../../../../components/Feed/Feed.vue.js";
3
3
  import _sfc_main$3 from "../../../../components/Block/Block.vue.js";
4
- import _sfc_main$2 from "../../../../components/Popup/Popup.vue.js";
4
+ import _sfc_main$2 from "../../../../components/Popup/Popup.vue2.js";
5
5
  import Field from "../../../../components/Field/Field.vue.js";
6
- import _sfc_main$6 from "../../../../components/Button/Button.vue.js";
6
+ import _sfc_main$6 from "../../../../components/Button/Button.vue2.js";
7
7
  import _sfc_main$1 from "../elements/ButtonCheck.vue.js";
8
8
  import _sfc_main$5 from "../../../icons/navigation/IconDelete.vue.js";
9
9
  import _sfc_main$4 from "../../../icons/navigation/IconAdd.vue.js";