@ozdao/martyrs 0.2.476 → 0.2.478

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 (1779) hide show
  1. package/README.md +17 -10
  2. package/dist/Media-B1ZP3D7B.cjs +1 -0
  3. package/dist/{Media-CecrG6g6.mjs → Media-CKk33U4A.js} +1 -1
  4. package/dist/abac-BuL5pUZ4.js +949 -0
  5. package/dist/abac-XF1JVCLI.cjs +948 -0
  6. package/dist/addUserStatusFields-B8g3DAuZ.js +88 -0
  7. package/dist/addUserStatusFields-DP_0f12s.cjs +104 -0
  8. package/dist/auth.server.cjs +600 -0
  9. package/dist/auth.server.js +546 -709
  10. package/dist/authJwt-DBB51Iql.cjs +73 -0
  11. package/dist/authJwt-DcYNNwcr.js +74 -0
  12. package/dist/builder.cjs +1356 -0
  13. package/dist/builder.js +1193 -1377
  14. package/dist/chats.server.cjs +106 -0
  15. package/dist/chats.server.js +99 -129
  16. package/dist/common.schema-Bw1O5_2Q.js +13 -0
  17. package/dist/common.schema-BzFEVNn3.cjs +12 -0
  18. package/dist/community.server.cjs +840 -0
  19. package/dist/community.server.js +722 -949
  20. package/dist/credentials.schema-C9FB2EyY.js +10 -0
  21. package/dist/credentials.schema-DwhGdrwC.cjs +9 -0
  22. package/dist/engagement.schema-Dh1adRsn.js +24 -0
  23. package/dist/engagement.schema-JADHu8pj.cjs +23 -0
  24. package/dist/events.server.cjs +856 -0
  25. package/dist/events.server.js +713 -916
  26. package/dist/files.server.cjs +275 -0
  27. package/dist/files.server.js +233 -315
  28. package/dist/gallery.server.cjs +270 -0
  29. package/dist/gallery.server.js +245 -311
  30. package/dist/globals.abac-Cm9e8Jdk.cjs +297 -0
  31. package/dist/globals.abac-DBV_kaOq.js +298 -0
  32. package/dist/globals.logger-Bf6rRU7j.js +156 -0
  33. package/dist/globals.logger-CZMgIMlM.cjs +155 -0
  34. package/dist/globals.observer-CDqUjVU5.js +44 -0
  35. package/dist/globals.observer-CV2wCzzh.cjs +43 -0
  36. package/dist/globals.server.cjs +446 -0
  37. package/dist/globals.server.js +376 -398
  38. package/dist/globals.verifier-CWFz5Gh2.js +614 -0
  39. package/dist/globals.verifier-D68mHEBl.cjs +613 -0
  40. package/dist/index-CsJwdsBW.js +170 -0
  41. package/dist/index-YNOkL1mu.cjs +186 -0
  42. package/dist/mailing-C11EYWm-.js +85 -0
  43. package/dist/mailing-q7sR8gCV.cjs +101 -0
  44. package/dist/{main-DmznvhMM.mjs → main-BhAiwmnI.js} +4270 -4674
  45. package/dist/main-C75EcBpE.cjs +11 -0
  46. package/dist/martyrs/src/components/Button/{Button.vue.cjs → Button.vue2.cjs} +3 -4
  47. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -0
  48. package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +3 -4
  49. package/dist/martyrs/src/components/Button/Button.vue2.js.map +1 -0
  50. package/dist/martyrs/src/components/Chips/Chips.vue2.cjs +1 -1
  51. package/dist/martyrs/src/components/Chips/Chips.vue2.js +1 -1
  52. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -1
  53. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.js.map +1 -1
  54. package/dist/martyrs/src/components/EditImages/EditImages.vue.cjs +0 -93
  55. package/dist/martyrs/src/components/EditImages/EditImages.vue.cjs.map +1 -1
  56. package/dist/martyrs/src/components/EditImages/EditImages.vue.js +1 -94
  57. package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +1 -1
  58. package/dist/martyrs/src/components/EditImages/EditImages.vue2.cjs +93 -0
  59. package/dist/martyrs/src/components/EditImages/EditImages.vue2.cjs.map +1 -1
  60. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js +94 -1
  61. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js.map +1 -1
  62. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +127 -74
  63. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  64. package/dist/martyrs/src/components/Feed/Feed.vue.js +137 -84
  65. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  66. package/dist/martyrs/src/components/Field/Field.vue.cjs +20 -22
  67. package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
  68. package/dist/martyrs/src/components/Field/Field.vue.js +21 -23
  69. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
  70. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs.map +1 -1
  71. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js.map +1 -1
  72. package/dist/martyrs/src/components/FieldPhone/all-countries.cjs +245 -1
  73. package/dist/martyrs/src/components/FieldPhone/all-countries.cjs.map +1 -1
  74. package/dist/martyrs/src/components/FieldPhone/all-countries.js +245 -1
  75. package/dist/martyrs/src/components/FieldPhone/all-countries.js.map +1 -1
  76. package/dist/martyrs/src/components/FieldPhone/click-outside.cjs.map +1 -1
  77. package/dist/martyrs/src/components/FieldPhone/click-outside.js.map +1 -1
  78. package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js +2 -2
  79. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs +451 -176
  80. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs.map +1 -1
  81. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js +451 -176
  82. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js.map +1 -1
  83. package/dist/martyrs/src/components/FieldTags/create-tags.cjs.map +1 -1
  84. package/dist/martyrs/src/components/FieldTags/create-tags.js.map +1 -1
  85. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.cjs +1 -4
  86. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.cjs.map +1 -1
  87. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.js +1 -4
  88. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.js.map +1 -1
  89. package/dist/martyrs/src/components/Loader/{Loader.vue2.cjs → Loader.vue.cjs} +2 -2
  90. package/dist/martyrs/src/components/Loader/{Loader.vue2.js.map → Loader.vue.cjs.map} +1 -1
  91. package/dist/martyrs/src/components/Loader/{Loader.vue2.js → Loader.vue.js} +2 -2
  92. package/dist/martyrs/src/components/Loader/Loader.vue.js.map +1 -0
  93. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.cjs +1 -1
  94. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.js +1 -1
  95. package/dist/martyrs/src/components/Popup/Popup.vue.cjs +27 -5
  96. package/dist/martyrs/src/components/Popup/Popup.vue.cjs.map +1 -1
  97. package/dist/martyrs/src/components/Popup/Popup.vue.js +28 -6
  98. package/dist/martyrs/src/components/Popup/Popup.vue.js.map +1 -1
  99. package/dist/martyrs/src/components/Select/Select.vue.cjs +2 -4
  100. package/dist/martyrs/src/components/Select/Select.vue.cjs.map +1 -1
  101. package/dist/martyrs/src/components/Select/Select.vue.js +2 -4
  102. package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -1
  103. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs +639 -0
  104. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs.map +1 -0
  105. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js +639 -0
  106. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js.map +1 -0
  107. package/dist/martyrs/src/components/Slider/Slider.native.vue.cjs +1 -1
  108. package/dist/martyrs/src/components/Slider/Slider.native.vue.js +1 -1
  109. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs → Tab.vue2.cjs} +2 -2
  110. package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +1 -0
  111. package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
  112. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs.map → Tab.vue2.js.map} +1 -1
  113. package/dist/martyrs/src/components/Table/Table.vue.cjs +23 -38
  114. package/dist/martyrs/src/components/Table/Table.vue.cjs.map +1 -1
  115. package/dist/martyrs/src/components/Table/Table.vue.js +24 -39
  116. package/dist/martyrs/src/components/Table/Table.vue.js.map +1 -1
  117. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +5 -5
  118. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs.map +1 -1
  119. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +5 -5
  120. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js.map +1 -1
  121. package/dist/martyrs/src/modules/auth/auth.client.cjs +5 -5
  122. package/dist/martyrs/src/modules/auth/auth.client.cjs.map +1 -1
  123. package/dist/martyrs/src/modules/auth/auth.client.js +5 -5
  124. package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
  125. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +2 -2
  126. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
  127. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +2 -2
  128. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  129. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs.map +1 -1
  130. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js.map +1 -1
  131. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +2 -2
  132. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs.map +1 -1
  133. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
  134. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +1 -1
  135. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
  136. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs.map +1 -1
  137. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
  138. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js.map +1 -1
  139. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +1 -1
  140. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
  141. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +1 -1
  142. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  143. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +3 -3
  144. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs.map +1 -1
  145. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +3 -3
  146. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js.map +1 -1
  147. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +2 -2
  148. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
  149. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +2 -2
  150. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
  151. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +2 -2
  152. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs.map +1 -1
  153. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
  154. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js.map +1 -1
  155. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +2 -2
  156. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
  157. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +2 -2
  158. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  159. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +2 -2
  160. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs.map +1 -1
  161. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
  162. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js.map +1 -1
  163. package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs.map +1 -1
  164. package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.js.map +1 -1
  165. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  166. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs.map +1 -1
  167. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  168. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js.map +1 -1
  169. package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.cjs.map +1 -1
  170. package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.js.map +1 -1
  171. package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.cjs.map +1 -1
  172. package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.js.map +1 -1
  173. package/dist/martyrs/src/modules/auth/views/router/auth.cjs +87 -98
  174. package/dist/martyrs/src/modules/auth/views/router/auth.cjs.map +1 -1
  175. package/dist/martyrs/src/modules/auth/views/router/auth.js +87 -98
  176. package/dist/martyrs/src/modules/auth/views/router/auth.js.map +1 -1
  177. package/dist/martyrs/src/modules/auth/views/router/users.cjs +105 -106
  178. package/dist/martyrs/src/modules/auth/views/router/users.cjs.map +1 -1
  179. package/dist/martyrs/src/modules/auth/views/router/users.js +105 -106
  180. package/dist/martyrs/src/modules/auth/views/router/users.js.map +1 -1
  181. package/dist/martyrs/src/modules/auth/views/store/auth.cjs +7 -1
  182. package/dist/martyrs/src/modules/auth/views/store/auth.cjs.map +1 -1
  183. package/dist/martyrs/src/modules/auth/views/store/auth.js +7 -1
  184. package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
  185. package/dist/martyrs/src/modules/auth/views/store/twofa.cjs.map +1 -1
  186. package/dist/martyrs/src/modules/auth/views/store/twofa.js.map +1 -1
  187. package/dist/martyrs/src/modules/auth/views/store/users.cjs +1 -1
  188. package/dist/martyrs/src/modules/auth/views/store/users.cjs.map +1 -1
  189. package/dist/martyrs/src/modules/auth/views/store/users.js +1 -1
  190. package/dist/martyrs/src/modules/auth/views/store/users.js.map +1 -1
  191. package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.cjs.map +1 -1
  192. package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.js.map +1 -1
  193. package/dist/martyrs/src/modules/backoffice/backoffice.client.cjs.map +1 -1
  194. package/dist/martyrs/src/modules/backoffice/backoffice.client.js.map +1 -1
  195. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +1 -1
  196. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
  197. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs +1 -1
  198. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +1 -1
  199. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +1 -1
  200. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
  201. package/dist/martyrs/src/modules/backoffice/router/backoffice.cjs +1 -4
  202. package/dist/martyrs/src/modules/backoffice/router/backoffice.cjs.map +1 -1
  203. package/dist/martyrs/src/modules/backoffice/router/backoffice.js +1 -4
  204. package/dist/martyrs/src/modules/backoffice/router/backoffice.js.map +1 -1
  205. package/dist/martyrs/src/modules/chats/chats.client.cjs.map +1 -1
  206. package/dist/martyrs/src/modules/chats/chats.client.js.map +1 -1
  207. package/dist/martyrs/src/modules/chats/store/chat.store.cjs +10 -6
  208. package/dist/martyrs/src/modules/chats/store/chat.store.cjs.map +1 -1
  209. package/dist/martyrs/src/modules/chats/store/chat.store.js +10 -6
  210. package/dist/martyrs/src/modules/chats/store/chat.store.js.map +1 -1
  211. package/dist/martyrs/src/modules/community/community.client.cjs +14 -14
  212. package/dist/martyrs/src/modules/community/community.client.cjs.map +1 -1
  213. package/dist/martyrs/src/modules/community/community.client.js +3 -3
  214. package/dist/martyrs/src/modules/community/community.client.js.map +1 -1
  215. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
  216. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs.map +1 -1
  217. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
  218. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js.map +1 -1
  219. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs.map +1 -1
  220. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
  221. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
  222. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  223. package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs.map +1 -1
  224. package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js.map +1 -1
  225. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +2 -2
  226. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
  227. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +2 -2
  228. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
  229. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +17 -11
  230. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs.map +1 -1
  231. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +17 -11
  232. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
  233. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +2 -2
  234. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs.map +1 -1
  235. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +2 -2
  236. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
  237. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
  238. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +1 -1
  239. package/dist/martyrs/src/modules/community/router/blogposts.cjs +61 -59
  240. package/dist/martyrs/src/modules/community/router/blogposts.cjs.map +1 -1
  241. package/dist/martyrs/src/modules/community/router/blogposts.js +61 -59
  242. package/dist/martyrs/src/modules/community/router/blogposts.js.map +1 -1
  243. package/dist/martyrs/src/modules/community/store/blogposts.cjs +14 -10
  244. package/dist/martyrs/src/modules/community/store/blogposts.cjs.map +1 -1
  245. package/dist/martyrs/src/modules/community/store/blogposts.js +14 -10
  246. package/dist/martyrs/src/modules/community/store/blogposts.js.map +1 -1
  247. package/dist/martyrs/src/modules/community/store/reactions.cjs.map +1 -1
  248. package/dist/martyrs/src/modules/community/store/reactions.js.map +1 -1
  249. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +5 -3
  250. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs.map +1 -1
  251. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +5 -3
  252. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js.map +1 -1
  253. package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.cjs.map +1 -1
  254. package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.js.map +1 -1
  255. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  256. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs.map +1 -1
  257. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  258. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js.map +1 -1
  259. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +2 -2
  260. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs.map +1 -1
  261. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +2 -2
  262. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js.map +1 -1
  263. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +15 -9
  264. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs.map +1 -1
  265. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +15 -9
  266. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js.map +1 -1
  267. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  268. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs.map +1 -1
  269. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  270. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
  271. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +3 -4
  272. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
  273. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +3 -4
  274. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
  275. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs.map +1 -1
  276. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
  277. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
  278. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs.map +1 -1
  279. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  280. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js.map +1 -1
  281. package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.cjs.map +1 -1
  282. package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.js.map +1 -1
  283. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +1 -1
  284. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +1 -1
  285. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs +1 -1
  286. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs.map +1 -1
  287. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js +1 -1
  288. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js.map +1 -1
  289. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs +1 -1
  290. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
  291. package/dist/martyrs/src/modules/events/components/sections/List.vue.cjs +1 -1
  292. package/dist/martyrs/src/modules/events/components/sections/List.vue.js +1 -1
  293. package/dist/martyrs/src/modules/events/events.client.cjs +17 -17
  294. package/dist/martyrs/src/modules/events/events.client.cjs.map +1 -1
  295. package/dist/martyrs/src/modules/events/events.client.js +4 -4
  296. package/dist/martyrs/src/modules/events/events.client.js.map +1 -1
  297. package/dist/martyrs/src/modules/events/router/events.cjs +11 -21
  298. package/dist/martyrs/src/modules/events/router/events.cjs.map +1 -1
  299. package/dist/martyrs/src/modules/events/router/events.js +11 -21
  300. package/dist/martyrs/src/modules/events/router/events.js.map +1 -1
  301. package/dist/martyrs/src/modules/events/store/events.cjs.map +1 -1
  302. package/dist/martyrs/src/modules/events/store/events.js.map +1 -1
  303. package/dist/martyrs/src/modules/events/store/tickets.cjs +3 -1
  304. package/dist/martyrs/src/modules/events/store/tickets.cjs.map +1 -1
  305. package/dist/martyrs/src/modules/events/store/tickets.js +3 -1
  306. package/dist/martyrs/src/modules/events/store/tickets.js.map +1 -1
  307. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs.map +1 -1
  308. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js.map +1 -1
  309. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
  310. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs.map +1 -1
  311. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
  312. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js.map +1 -1
  313. package/dist/martyrs/src/modules/gallery/gallery.client.cjs.map +1 -1
  314. package/dist/martyrs/src/modules/gallery/gallery.client.js.map +1 -1
  315. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.cjs +17 -17
  316. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.cjs.map +1 -1
  317. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.js +17 -17
  318. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.js.map +1 -1
  319. package/dist/martyrs/src/modules/gallery/router/gallery.router.cjs.map +1 -1
  320. package/dist/martyrs/src/modules/gallery/router/gallery.router.js.map +1 -1
  321. package/dist/martyrs/src/modules/gallery/store/gallery.cjs.map +1 -1
  322. package/dist/martyrs/src/modules/gallery/store/gallery.js.map +1 -1
  323. package/dist/martyrs/src/modules/globals/globals.client.cjs +24 -8
  324. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  325. package/dist/martyrs/src/modules/globals/globals.client.js +22 -6
  326. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  327. package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs +9 -7
  328. package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs.map +1 -1
  329. package/dist/martyrs/src/modules/globals/views/classes/globals.store.js +9 -7
  330. package/dist/martyrs/src/modules/globals/views/classes/globals.store.js.map +1 -1
  331. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.cjs.map +1 -1
  332. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.js.map +1 -1
  333. package/dist/martyrs/src/modules/globals/views/classes/store.cjs +2 -2
  334. package/dist/martyrs/src/modules/globals/views/classes/store.cjs.map +1 -1
  335. package/dist/martyrs/src/modules/globals/views/classes/store.js +2 -2
  336. package/dist/martyrs/src/modules/globals/views/classes/store.js.map +1 -1
  337. package/dist/martyrs/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue.cjs +1 -1
  338. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.cjs.map +1 -0
  339. package/dist/martyrs/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue.js +1 -1
  340. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.js.map +1 -0
  341. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs +308 -0
  342. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs.map +1 -0
  343. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js +308 -0
  344. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js.map +1 -0
  345. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs +61 -49
  346. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs.map +1 -1
  347. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js +62 -50
  348. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js.map +1 -1
  349. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +29 -22
  350. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
  351. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +29 -22
  352. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +1 -1
  353. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +2 -2
  354. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +2 -2
  355. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.cjs +2 -2
  356. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.cjs.map +1 -1
  357. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.js +2 -2
  358. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.js.map +1 -1
  359. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs.map +1 -1
  360. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js.map +1 -1
  361. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +3 -3
  362. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  363. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +3 -3
  364. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  365. package/dist/martyrs/src/modules/globals/views/components/partials/BottomNavigationBar.vue.cjs.map +1 -1
  366. package/dist/martyrs/src/modules/globals/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
  367. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
  368. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
  369. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
  370. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
  371. package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.cjs.map +1 -1
  372. package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.js.map +1 -1
  373. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +8 -9
  374. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
  375. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +8 -9
  376. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
  377. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
  378. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs.map +1 -1
  379. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
  380. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js.map +1 -1
  381. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs +1 -1
  382. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
  383. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js +1 -1
  384. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js.map +1 -1
  385. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
  386. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
  387. package/dist/martyrs/src/modules/globals/views/localization/get-browser-locale.cjs.map +1 -1
  388. package/dist/martyrs/src/modules/globals/views/localization/get-browser-locale.js.map +1 -1
  389. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +24 -5
  390. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
  391. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +24 -5
  392. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
  393. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs +1 -1
  394. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs.map +1 -1
  395. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js +1 -1
  396. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js.map +1 -1
  397. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs +74 -0
  398. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs.map +1 -0
  399. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js +74 -0
  400. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js.map +1 -0
  401. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs +200 -0
  402. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs.map +1 -0
  403. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js +200 -0
  404. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js.map +1 -0
  405. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.cjs +21 -0
  406. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.cjs.map +1 -0
  407. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js +21 -0
  408. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js.map +1 -0
  409. package/dist/martyrs/src/modules/globals/views/router/addRoutes.cjs +1 -4
  410. package/dist/martyrs/src/modules/globals/views/router/addRoutes.cjs.map +1 -1
  411. package/dist/martyrs/src/modules/globals/views/router/addRoutes.js +1 -4
  412. package/dist/martyrs/src/modules/globals/views/router/addRoutes.js.map +1 -1
  413. package/dist/martyrs/src/modules/globals/views/router/scrollBehavior.cjs.map +1 -1
  414. package/dist/martyrs/src/modules/globals/views/router/scrollBehavior.js.map +1 -1
  415. package/dist/martyrs/src/modules/globals/views/store/globals.cjs +4 -14
  416. package/dist/martyrs/src/modules/globals/views/store/globals.cjs.map +1 -1
  417. package/dist/martyrs/src/modules/globals/views/store/globals.js +4 -14
  418. package/dist/martyrs/src/modules/globals/views/store/globals.js.map +1 -1
  419. package/dist/martyrs/src/modules/globals/views/utils/axios-instance.cjs.map +1 -1
  420. package/dist/martyrs/src/modules/globals/views/utils/axios-instance.js.map +1 -1
  421. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs +2 -2
  422. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs.map +1 -1
  423. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js +2 -2
  424. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js.map +1 -1
  425. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs +39 -0
  426. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs.map +1 -0
  427. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.js +39 -0
  428. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.js.map +1 -0
  429. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs +57 -0
  430. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs.map +1 -0
  431. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.js +57 -0
  432. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.js.map +1 -0
  433. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs +33 -0
  434. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs.map +1 -0
  435. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.js +33 -0
  436. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.js.map +1 -0
  437. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs +33 -0
  438. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs.map +1 -0
  439. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js +33 -0
  440. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js.map +1 -0
  441. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs +35 -0
  442. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs.map +1 -0
  443. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.js +35 -0
  444. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.js.map +1 -0
  445. package/dist/martyrs/src/modules/icons/icons.client.cjs +97 -79
  446. package/dist/martyrs/src/modules/icons/icons.client.cjs.map +1 -1
  447. package/dist/martyrs/src/modules/icons/icons.client.js +140 -122
  448. package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
  449. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs +25 -0
  450. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs.map +1 -0
  451. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js +25 -0
  452. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js.map +1 -0
  453. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs +35 -0
  454. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs.map +1 -0
  455. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.js +35 -0
  456. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.js.map +1 -0
  457. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs +39 -0
  458. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs.map +1 -0
  459. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js +39 -0
  460. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js.map +1 -0
  461. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs +39 -0
  462. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs.map +1 -0
  463. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js +39 -0
  464. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js.map +1 -0
  465. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +34 -0
  466. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +1 -0
  467. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +34 -0
  468. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js.map +1 -0
  469. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +39 -0
  470. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +1 -0
  471. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +39 -0
  472. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js.map +1 -0
  473. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs +31 -0
  474. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs.map +1 -0
  475. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js +31 -0
  476. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js.map +1 -0
  477. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +39 -0
  478. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +1 -0
  479. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +39 -0
  480. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js.map +1 -0
  481. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs +31 -0
  482. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs.map +1 -0
  483. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.js +31 -0
  484. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.js.map +1 -0
  485. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs +39 -0
  486. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs.map +1 -0
  487. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js +39 -0
  488. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js.map +1 -0
  489. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs +39 -0
  490. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs.map +1 -0
  491. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js +39 -0
  492. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js.map +1 -0
  493. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +278 -0
  494. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -0
  495. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +278 -0
  496. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -0
  497. package/dist/martyrs/src/modules/icons/router/icons.router.cjs +33 -0
  498. package/dist/martyrs/src/modules/icons/router/icons.router.cjs.map +1 -0
  499. package/dist/martyrs/src/modules/icons/router/icons.router.js +33 -0
  500. package/dist/martyrs/src/modules/icons/router/icons.router.js.map +1 -0
  501. package/dist/martyrs/src/modules/icons/socials/dribbble.vue.cjs +2 -2
  502. package/dist/martyrs/src/modules/icons/socials/dribbble.vue.js +2 -2
  503. package/dist/martyrs/src/modules/icons/socials/facebook.vue.cjs +2 -2
  504. package/dist/martyrs/src/modules/icons/socials/facebook.vue.js +2 -2
  505. package/dist/martyrs/src/modules/icons/socials/instagram.vue.cjs +2 -2
  506. package/dist/martyrs/src/modules/icons/socials/instagram.vue.js +2 -2
  507. package/dist/martyrs/src/modules/icons/socials/line.vue.cjs +2 -2
  508. package/dist/martyrs/src/modules/icons/socials/line.vue.js +2 -2
  509. package/dist/martyrs/src/modules/icons/socials/linkedin.vue.cjs +2 -2
  510. package/dist/martyrs/src/modules/icons/socials/linkedin.vue.js +2 -2
  511. package/dist/martyrs/src/modules/icons/socials/reddit.vue.cjs +2 -2
  512. package/dist/martyrs/src/modules/icons/socials/reddit.vue.js +2 -2
  513. package/dist/martyrs/src/modules/icons/socials/telegram.vue.cjs +2 -2
  514. package/dist/martyrs/src/modules/icons/socials/telegram.vue.js +2 -2
  515. package/dist/martyrs/src/modules/icons/socials/twitter.vue.cjs +2 -2
  516. package/dist/martyrs/src/modules/icons/socials/twitter.vue.js +2 -2
  517. package/dist/martyrs/src/modules/icons/socials/vk.vue.cjs +2 -2
  518. package/dist/martyrs/src/modules/icons/socials/vk.vue.js +2 -2
  519. package/dist/martyrs/src/modules/icons/socials/youtube.vue.cjs +2 -2
  520. package/dist/martyrs/src/modules/icons/socials/youtube.vue.js +2 -2
  521. package/dist/martyrs/src/modules/landing/landing.client.cjs +12 -12
  522. package/dist/martyrs/src/modules/landing/landing.client.js +22 -22
  523. package/dist/martyrs/src/modules/marketplace/marketplace.client.cjs.map +1 -1
  524. package/dist/martyrs/src/modules/marketplace/marketplace.client.js.map +1 -1
  525. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +1 -1
  526. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
  527. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs.map +1 -1
  528. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js.map +1 -1
  529. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs +1 -1
  530. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs.map +1 -1
  531. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
  532. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js.map +1 -1
  533. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.cjs +0 -1
  534. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.cjs.map +1 -1
  535. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js +0 -1
  536. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js.map +1 -1
  537. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs +25 -19
  538. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs.map +1 -1
  539. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js +25 -19
  540. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js.map +1 -1
  541. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +1 -1
  542. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
  543. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +1 -1
  544. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  545. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs +1 -1
  546. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs.map +1 -1
  547. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.js +1 -1
  548. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.js.map +1 -1
  549. package/dist/martyrs/src/modules/notifications/notifications.client.cjs +18 -27
  550. package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +1 -1
  551. package/dist/martyrs/src/modules/notifications/notifications.client.js +16 -25
  552. package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
  553. package/dist/martyrs/src/modules/notifications/router/notifications.router.cjs +1 -1
  554. package/dist/martyrs/src/modules/notifications/router/notifications.router.cjs.map +1 -1
  555. package/dist/martyrs/src/modules/notifications/router/notifications.router.js +1 -1
  556. package/dist/martyrs/src/modules/notifications/router/notifications.router.js.map +1 -1
  557. package/dist/martyrs/src/modules/notifications/store/notifications.store.cjs.map +1 -1
  558. package/dist/martyrs/src/modules/notifications/store/notifications.store.js.map +1 -1
  559. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
  560. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +1 -1
  561. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
  562. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
  563. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
  564. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
  565. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  566. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  567. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +3 -5
  568. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
  569. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +3 -5
  570. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
  571. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
  572. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs.map +1 -1
  573. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  574. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js.map +1 -1
  575. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
  576. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
  577. package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.cjs +1 -1
  578. package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.cjs.map +1 -1
  579. package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.js +1 -1
  580. package/dist/martyrs/src/modules/orders/components/sections/AskToLogin.vue.js.map +1 -1
  581. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
  582. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs.map +1 -1
  583. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
  584. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js.map +1 -1
  585. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
  586. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
  587. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
  588. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
  589. package/dist/martyrs/src/modules/orders/orders.client.cjs +5 -5
  590. package/dist/martyrs/src/modules/orders/orders.client.cjs.map +1 -1
  591. package/dist/martyrs/src/modules/orders/orders.client.js +5 -5
  592. package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
  593. package/dist/martyrs/src/modules/orders/router/orders.router.cjs +2 -3
  594. package/dist/martyrs/src/modules/orders/router/orders.router.cjs.map +1 -1
  595. package/dist/martyrs/src/modules/orders/router/orders.router.js +2 -3
  596. package/dist/martyrs/src/modules/orders/router/orders.router.js.map +1 -1
  597. package/dist/martyrs/src/modules/orders/store/applications.cjs.map +1 -1
  598. package/dist/martyrs/src/modules/orders/store/applications.js.map +1 -1
  599. package/dist/martyrs/src/modules/orders/store/customers.store.cjs.map +1 -1
  600. package/dist/martyrs/src/modules/orders/store/customers.store.js.map +1 -1
  601. package/dist/martyrs/src/modules/orders/store/models/customer.cjs.map +1 -1
  602. package/dist/martyrs/src/modules/orders/store/models/customer.js.map +1 -1
  603. package/dist/martyrs/src/modules/orders/store/models/order.cjs.map +1 -1
  604. package/dist/martyrs/src/modules/orders/store/models/order.js.map +1 -1
  605. package/dist/martyrs/src/modules/orders/store/orders.cjs +23 -26
  606. package/dist/martyrs/src/modules/orders/store/orders.cjs.map +1 -1
  607. package/dist/martyrs/src/modules/orders/store/orders.js +23 -26
  608. package/dist/martyrs/src/modules/orders/store/orders.js.map +1 -1
  609. package/dist/martyrs/src/modules/orders/store/shopcart.cjs +94 -47
  610. package/dist/martyrs/src/modules/orders/store/shopcart.cjs.map +1 -1
  611. package/dist/martyrs/src/modules/orders/store/shopcart.js +94 -47
  612. package/dist/martyrs/src/modules/orders/store/shopcart.js.map +1 -1
  613. package/dist/martyrs/src/modules/orders/store/testimonials.cjs.map +1 -1
  614. package/dist/martyrs/src/modules/orders/store/testimonials.js.map +1 -1
  615. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js +16 -16
  616. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js.map +1 -1
  617. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  618. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs.map +1 -1
  619. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  620. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js.map +1 -1
  621. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
  622. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
  623. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +3 -3
  624. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs.map +1 -1
  625. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +3 -3
  626. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js.map +1 -1
  627. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  628. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs.map +1 -1
  629. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
  630. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
  631. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +5 -5
  632. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
  633. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +5 -5
  634. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  635. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
  636. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs.map +1 -1
  637. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
  638. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +1 -1
  639. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +3 -3
  640. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs.map +1 -1
  641. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +9 -9
  642. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
  643. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  644. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs.map +1 -1
  645. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  646. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  647. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs.map +1 -1
  648. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js.map +1 -1
  649. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
  650. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  651. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  652. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs.map +1 -1
  653. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  654. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
  655. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +7 -7
  656. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs.map +1 -1
  657. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  658. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js.map +1 -1
  659. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.cjs.map +1 -1
  660. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.js.map +1 -1
  661. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +225 -0
  662. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -0
  663. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +225 -0
  664. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -0
  665. package/dist/martyrs/src/modules/organizations/organizations.client.cjs +28 -28
  666. package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +1 -1
  667. package/dist/martyrs/src/modules/organizations/organizations.client.js +10 -10
  668. package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
  669. package/dist/martyrs/src/modules/organizations/router/backoffice.router.cjs +26 -23
  670. package/dist/martyrs/src/modules/organizations/router/backoffice.router.cjs.map +1 -1
  671. package/dist/martyrs/src/modules/organizations/router/backoffice.router.js +26 -23
  672. package/dist/martyrs/src/modules/organizations/router/backoffice.router.js.map +1 -1
  673. package/dist/martyrs/src/modules/organizations/router/departments.router.cjs +27 -23
  674. package/dist/martyrs/src/modules/organizations/router/departments.router.cjs.map +1 -1
  675. package/dist/martyrs/src/modules/organizations/router/departments.router.js +27 -23
  676. package/dist/martyrs/src/modules/organizations/router/departments.router.js.map +1 -1
  677. package/dist/martyrs/src/modules/organizations/router/members.router.cjs +17 -15
  678. package/dist/martyrs/src/modules/organizations/router/members.router.cjs.map +1 -1
  679. package/dist/martyrs/src/modules/organizations/router/members.router.js +17 -15
  680. package/dist/martyrs/src/modules/organizations/router/members.router.js.map +1 -1
  681. package/dist/martyrs/src/modules/organizations/router/organizations.cjs +73 -60
  682. package/dist/martyrs/src/modules/organizations/router/organizations.cjs.map +1 -1
  683. package/dist/martyrs/src/modules/organizations/router/organizations.js +73 -60
  684. package/dist/martyrs/src/modules/organizations/router/organizations.js.map +1 -1
  685. package/dist/martyrs/src/modules/organizations/store/departments.cjs +3 -1
  686. package/dist/martyrs/src/modules/organizations/store/departments.cjs.map +1 -1
  687. package/dist/martyrs/src/modules/organizations/store/departments.js +3 -1
  688. package/dist/martyrs/src/modules/organizations/store/departments.js.map +1 -1
  689. package/dist/martyrs/src/modules/organizations/store/invites.cjs.map +1 -1
  690. package/dist/martyrs/src/modules/organizations/store/invites.js.map +1 -1
  691. package/dist/martyrs/src/modules/organizations/store/memberships.cjs.map +1 -1
  692. package/dist/martyrs/src/modules/organizations/store/memberships.js.map +1 -1
  693. package/dist/martyrs/src/modules/organizations/store/organizations.cjs.map +1 -1
  694. package/dist/martyrs/src/modules/organizations/store/organizations.js.map +1 -1
  695. package/dist/martyrs/src/modules/pages/pages.client.cjs +2 -2
  696. package/dist/martyrs/src/modules/pages/pages.client.cjs.map +1 -1
  697. package/dist/martyrs/src/modules/pages/pages.client.js +2 -2
  698. package/dist/martyrs/src/modules/pages/pages.client.js.map +1 -1
  699. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  700. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  701. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.cjs.map +1 -1
  702. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.js.map +1 -1
  703. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  704. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  705. package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.cjs.map +1 -1
  706. package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.js.map +1 -1
  707. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
  708. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs.map +1 -1
  709. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  710. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js.map +1 -1
  711. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.cjs +35 -31
  712. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.cjs.map +1 -1
  713. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js +35 -31
  714. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js.map +1 -1
  715. package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs +16 -14
  716. package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs.map +1 -1
  717. package/dist/martyrs/src/modules/pages/views/router/pages.router.js +16 -14
  718. package/dist/martyrs/src/modules/pages/views/router/pages.router.js.map +1 -1
  719. package/dist/martyrs/src/modules/pages/views/store/pages.cjs +5 -2
  720. package/dist/martyrs/src/modules/pages/views/store/pages.cjs.map +1 -1
  721. package/dist/martyrs/src/modules/pages/views/store/pages.js +5 -2
  722. package/dist/martyrs/src/modules/pages/views/store/pages.js.map +1 -1
  723. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.cjs +2 -2
  724. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.cjs.map +1 -1
  725. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.js +2 -2
  726. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.js.map +1 -1
  727. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs +76 -135
  728. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs.map +1 -1
  729. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +77 -136
  730. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js.map +1 -1
  731. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +4 -4
  732. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs.map +1 -1
  733. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +4 -4
  734. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
  735. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +128 -0
  736. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -0
  737. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +128 -0
  738. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -0
  739. package/dist/martyrs/src/modules/products/components/blocks/{ImagesThumbnails.vue.cjs → ProductImages.vue.cjs} +7 -7
  740. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +1 -0
  741. package/dist/martyrs/src/modules/products/components/blocks/{ImagesThumbnails.vue.js → ProductImages.vue.js} +7 -7
  742. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -0
  743. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs +141 -0
  744. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs.map +1 -0
  745. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js +141 -0
  746. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js.map +1 -0
  747. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.cjs → elements/Image360.vue.cjs} +6 -6
  748. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.cjs.map → elements/Image360.vue.cjs.map} +1 -1
  749. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.js → elements/Image360.vue.js} +6 -6
  750. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.js.map → elements/Image360.vue.js.map} +1 -1
  751. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +19 -20
  752. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs.map +1 -1
  753. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js +20 -21
  754. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
  755. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs +71 -0
  756. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs.map +1 -0
  757. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js +71 -0
  758. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js.map +1 -0
  759. package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs +6 -6
  760. package/dist/martyrs/src/modules/products/components/elements/THC.vue.js +6 -6
  761. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.cjs +73 -0
  762. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.cjs.map +1 -0
  763. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.js +73 -0
  764. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.js.map +1 -0
  765. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.cjs +101 -0
  766. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.cjs.map +1 -0
  767. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.js +101 -0
  768. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.js.map +1 -0
  769. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.cjs +135 -0
  770. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.cjs.map +1 -0
  771. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.js +135 -0
  772. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.js.map +1 -0
  773. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.cjs +148 -0
  774. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.cjs.map +1 -0
  775. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.js +148 -0
  776. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.js.map +1 -0
  777. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +3 -3
  778. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs.map +1 -1
  779. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +3 -3
  780. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  781. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +7 -7
  782. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
  783. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +7 -7
  784. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  785. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +345 -0
  786. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs.map +1 -0
  787. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +345 -0
  788. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js.map +1 -0
  789. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +279 -55
  790. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs.map +1 -1
  791. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +282 -58
  792. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js.map +1 -1
  793. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +108 -117
  794. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  795. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +117 -126
  796. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  797. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +259 -314
  798. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs.map +1 -1
  799. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +263 -318
  800. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
  801. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +3 -3
  802. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs.map +1 -1
  803. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +3 -3
  804. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js.map +1 -1
  805. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +3 -3
  806. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  807. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +3 -3
  808. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  809. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +168 -0
  810. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs.map +1 -0
  811. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +168 -0
  812. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js.map +1 -0
  813. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +319 -0
  814. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs.map +1 -0
  815. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +319 -0
  816. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js.map +1 -0
  817. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +140 -0
  818. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs.map +1 -0
  819. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +140 -0
  820. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js.map +1 -0
  821. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +468 -0
  822. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs.map +1 -0
  823. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +468 -0
  824. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js.map +1 -0
  825. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +2 -2
  826. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs.map +1 -1
  827. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +2 -2
  828. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js.map +1 -1
  829. package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs.map +1 -1
  830. package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.js.map +1 -1
  831. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs +2 -2
  832. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs.map +1 -1
  833. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js +2 -2
  834. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js.map +1 -1
  835. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +134 -0
  836. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs.map +1 -0
  837. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +134 -0
  838. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -0
  839. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +15 -15
  840. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs.map +1 -1
  841. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +15 -15
  842. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js.map +1 -1
  843. package/dist/martyrs/src/modules/products/products.client.cjs +20 -29
  844. package/dist/martyrs/src/modules/products/products.client.cjs.map +1 -1
  845. package/dist/martyrs/src/modules/products/products.client.js +37 -46
  846. package/dist/martyrs/src/modules/products/products.client.js.map +1 -1
  847. package/dist/martyrs/src/modules/products/router/categories.router.cjs +34 -30
  848. package/dist/martyrs/src/modules/products/router/categories.router.cjs.map +1 -1
  849. package/dist/martyrs/src/modules/products/router/categories.router.js +34 -30
  850. package/dist/martyrs/src/modules/products/router/categories.router.js.map +1 -1
  851. package/dist/martyrs/src/modules/products/router/leftovers.router.cjs +42 -39
  852. package/dist/martyrs/src/modules/products/router/leftovers.router.cjs.map +1 -1
  853. package/dist/martyrs/src/modules/products/router/leftovers.router.js +42 -39
  854. package/dist/martyrs/src/modules/products/router/leftovers.router.js.map +1 -1
  855. package/dist/martyrs/src/modules/products/router/products.router.cjs +0 -1
  856. package/dist/martyrs/src/modules/products/router/products.router.cjs.map +1 -1
  857. package/dist/martyrs/src/modules/products/router/products.router.js +0 -1
  858. package/dist/martyrs/src/modules/products/router/products.router.js.map +1 -1
  859. package/dist/martyrs/src/modules/products/store/categories.cjs +7 -3
  860. package/dist/martyrs/src/modules/products/store/categories.cjs.map +1 -1
  861. package/dist/martyrs/src/modules/products/store/categories.js +7 -3
  862. package/dist/martyrs/src/modules/products/store/categories.js.map +1 -1
  863. package/dist/martyrs/src/modules/products/store/leftovers.cjs +42 -3
  864. package/dist/martyrs/src/modules/products/store/leftovers.cjs.map +1 -1
  865. package/dist/martyrs/src/modules/products/store/leftovers.js +42 -3
  866. package/dist/martyrs/src/modules/products/store/leftovers.js.map +1 -1
  867. package/dist/martyrs/src/modules/products/store/products.cjs +32 -60
  868. package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
  869. package/dist/martyrs/src/modules/products/store/products.js +32 -60
  870. package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
  871. package/dist/martyrs/src/modules/products/store/variants.store.cjs +6 -0
  872. package/dist/martyrs/src/modules/products/store/variants.store.cjs.map +1 -0
  873. package/dist/martyrs/src/modules/products/store/variants.store.js +6 -0
  874. package/dist/martyrs/src/modules/products/store/variants.store.js.map +1 -0
  875. package/dist/martyrs/src/modules/rents/rents.client.cjs.map +1 -1
  876. package/dist/martyrs/src/modules/rents/rents.client.js.map +1 -1
  877. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.cjs +1 -1
  878. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.js +1 -1
  879. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
  880. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  881. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -2
  882. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs.map +1 -1
  883. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -2
  884. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js.map +1 -1
  885. package/dist/martyrs/src/modules/rents/views/router/rents.router.cjs +3 -11
  886. package/dist/martyrs/src/modules/rents/views/router/rents.router.cjs.map +1 -1
  887. package/dist/martyrs/src/modules/rents/views/router/rents.router.js +3 -11
  888. package/dist/martyrs/src/modules/rents/views/router/rents.router.js.map +1 -1
  889. package/dist/martyrs/src/modules/rents/views/store/rents.store.cjs.map +1 -1
  890. package/dist/martyrs/src/modules/rents/views/store/rents.store.js.map +1 -1
  891. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  892. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs.map +1 -1
  893. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  894. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js.map +1 -1
  895. package/dist/martyrs/src/modules/reports/reports.client.cjs.map +1 -1
  896. package/dist/martyrs/src/modules/reports/reports.client.js.map +1 -1
  897. package/dist/martyrs/src/modules/reports/store/reports.cjs +1 -1
  898. package/dist/martyrs/src/modules/reports/store/reports.cjs.map +1 -1
  899. package/dist/martyrs/src/modules/reports/store/reports.js +1 -1
  900. package/dist/martyrs/src/modules/reports/store/reports.js.map +1 -1
  901. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +73 -50
  902. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs.map +1 -1
  903. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +74 -51
  904. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js.map +1 -1
  905. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs.map +1 -1
  906. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
  907. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +2 -2
  908. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs.map +1 -1
  909. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +2 -2
  910. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js.map +1 -1
  911. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  912. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs.map +1 -1
  913. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  914. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js.map +1 -1
  915. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +1 -1
  916. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
  917. package/dist/martyrs/src/modules/spots/router/spots.cjs +3 -9
  918. package/dist/martyrs/src/modules/spots/router/spots.cjs.map +1 -1
  919. package/dist/martyrs/src/modules/spots/router/spots.js +3 -9
  920. package/dist/martyrs/src/modules/spots/router/spots.js.map +1 -1
  921. package/dist/martyrs/src/modules/spots/spots.client.cjs +1 -1
  922. package/dist/martyrs/src/modules/spots/spots.client.cjs.map +1 -1
  923. package/dist/martyrs/src/modules/spots/spots.client.js +1 -1
  924. package/dist/martyrs/src/modules/spots/spots.client.js.map +1 -1
  925. package/dist/martyrs/src/modules/spots/store/spots.cjs.map +1 -1
  926. package/dist/martyrs/src/modules/spots/store/spots.js.map +1 -1
  927. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
  928. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
  929. package/dist/martyrs/src/modules/wallet/views/router/payments.router.cjs +26 -23
  930. package/dist/martyrs/src/modules/wallet/views/router/payments.router.cjs.map +1 -1
  931. package/dist/martyrs/src/modules/wallet/views/router/payments.router.js +26 -23
  932. package/dist/martyrs/src/modules/wallet/views/router/payments.router.js.map +1 -1
  933. package/dist/martyrs/src/modules/wallet/views/store/payments.store.cjs +2 -2
  934. package/dist/martyrs/src/modules/wallet/views/store/payments.store.cjs.map +1 -1
  935. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js +2 -2
  936. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js.map +1 -1
  937. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs +11 -12
  938. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs.map +1 -1
  939. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js +11 -12
  940. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js.map +1 -1
  941. package/dist/martyrs.cjs.js +1 -1
  942. package/dist/martyrs.css +1 -1
  943. package/dist/martyrs.es.js +1 -1
  944. package/dist/metadata.schema-CWmcDJN7.js +268 -0
  945. package/dist/metadata.schema-RlxNv46L.cjs +267 -0
  946. package/dist/node_modules/date-fns/_lib/addLeadingZeros.cjs +9 -0
  947. package/dist/node_modules/date-fns/_lib/addLeadingZeros.cjs.map +1 -0
  948. package/dist/node_modules/date-fns/_lib/addLeadingZeros.js +9 -0
  949. package/dist/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -0
  950. package/dist/node_modules/date-fns/_lib/defaultOptions.cjs +8 -0
  951. package/dist/node_modules/date-fns/_lib/defaultOptions.cjs.map +1 -0
  952. package/dist/node_modules/date-fns/_lib/defaultOptions.js +8 -0
  953. package/dist/node_modules/date-fns/_lib/defaultOptions.js.map +1 -0
  954. package/dist/node_modules/date-fns/_lib/format/formatters.cjs +653 -0
  955. package/dist/node_modules/date-fns/_lib/format/formatters.cjs.map +1 -0
  956. package/dist/node_modules/date-fns/_lib/format/formatters.js +653 -0
  957. package/dist/node_modules/date-fns/_lib/format/formatters.js.map +1 -0
  958. package/dist/node_modules/date-fns/_lib/format/lightFormatters.cjs +63 -0
  959. package/dist/node_modules/date-fns/_lib/format/lightFormatters.cjs.map +1 -0
  960. package/dist/node_modules/date-fns/_lib/format/lightFormatters.js +63 -0
  961. package/dist/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -0
  962. package/dist/node_modules/date-fns/_lib/format/longFormatters.cjs +59 -0
  963. package/dist/node_modules/date-fns/_lib/format/longFormatters.cjs.map +1 -0
  964. package/dist/node_modules/date-fns/_lib/format/longFormatters.js +59 -0
  965. package/dist/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -0
  966. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.cjs +21 -0
  967. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.cjs.map +1 -0
  968. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js +21 -0
  969. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -0
  970. package/dist/node_modules/date-fns/_lib/normalizeDates.cjs +12 -0
  971. package/dist/node_modules/date-fns/_lib/normalizeDates.cjs.map +1 -0
  972. package/dist/node_modules/date-fns/_lib/normalizeDates.js +12 -0
  973. package/dist/node_modules/date-fns/_lib/normalizeDates.js.map +1 -0
  974. package/dist/node_modules/date-fns/_lib/protectedTokens.cjs +24 -0
  975. package/dist/node_modules/date-fns/_lib/protectedTokens.cjs.map +1 -0
  976. package/dist/node_modules/date-fns/_lib/protectedTokens.js +24 -0
  977. package/dist/node_modules/date-fns/_lib/protectedTokens.js.map +1 -0
  978. package/dist/node_modules/date-fns/constants.cjs +9 -0
  979. package/dist/node_modules/date-fns/constants.cjs.map +1 -0
  980. package/dist/node_modules/date-fns/constants.js +9 -0
  981. package/dist/node_modules/date-fns/constants.js.map +1 -0
  982. package/dist/node_modules/date-fns/constructFrom.cjs +13 -0
  983. package/dist/node_modules/date-fns/constructFrom.cjs.map +1 -0
  984. package/dist/node_modules/date-fns/constructFrom.js +13 -0
  985. package/dist/node_modules/date-fns/constructFrom.js.map +1 -0
  986. package/dist/node_modules/date-fns/differenceInCalendarDays.cjs +21 -0
  987. package/dist/node_modules/date-fns/differenceInCalendarDays.cjs.map +1 -0
  988. package/dist/node_modules/date-fns/differenceInCalendarDays.js +21 -0
  989. package/dist/node_modules/date-fns/differenceInCalendarDays.js.map +1 -0
  990. package/dist/node_modules/date-fns/format.cjs +80 -0
  991. package/dist/node_modules/date-fns/format.cjs.map +1 -0
  992. package/dist/node_modules/date-fns/format.js +80 -0
  993. package/dist/node_modules/date-fns/format.js.map +1 -0
  994. package/dist/node_modules/date-fns/getDayOfYear.cjs +14 -0
  995. package/dist/node_modules/date-fns/getDayOfYear.cjs.map +1 -0
  996. package/dist/node_modules/date-fns/getDayOfYear.js +14 -0
  997. package/dist/node_modules/date-fns/getDayOfYear.js.map +1 -0
  998. package/dist/node_modules/date-fns/getISOWeek.cjs +14 -0
  999. package/dist/node_modules/date-fns/getISOWeek.cjs.map +1 -0
  1000. package/dist/node_modules/date-fns/getISOWeek.js +14 -0
  1001. package/dist/node_modules/date-fns/getISOWeek.js.map +1 -0
  1002. package/dist/node_modules/date-fns/getISOWeekYear.cjs +27 -0
  1003. package/dist/node_modules/date-fns/getISOWeekYear.cjs.map +1 -0
  1004. package/dist/node_modules/date-fns/getISOWeekYear.js +27 -0
  1005. package/dist/node_modules/date-fns/getISOWeekYear.js.map +1 -0
  1006. package/dist/node_modules/date-fns/getWeek.cjs +14 -0
  1007. package/dist/node_modules/date-fns/getWeek.cjs.map +1 -0
  1008. package/dist/node_modules/date-fns/getWeek.js +14 -0
  1009. package/dist/node_modules/date-fns/getWeek.js.map +1 -0
  1010. package/dist/node_modules/date-fns/getWeekYear.cjs +31 -0
  1011. package/dist/node_modules/date-fns/getWeekYear.cjs.map +1 -0
  1012. package/dist/node_modules/date-fns/getWeekYear.js +31 -0
  1013. package/dist/node_modules/date-fns/getWeekYear.js.map +1 -0
  1014. package/dist/node_modules/date-fns/isDate.cjs +8 -0
  1015. package/dist/node_modules/date-fns/isDate.cjs.map +1 -0
  1016. package/dist/node_modules/date-fns/isDate.js +8 -0
  1017. package/dist/node_modules/date-fns/isDate.js.map +1 -0
  1018. package/dist/node_modules/date-fns/isValid.cjs +10 -0
  1019. package/dist/node_modules/date-fns/isValid.cjs.map +1 -0
  1020. package/dist/node_modules/date-fns/isValid.js +10 -0
  1021. package/dist/node_modules/date-fns/isValid.js.map +1 -0
  1022. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.cjs +11 -0
  1023. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.cjs.map +1 -0
  1024. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +11 -0
  1025. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -0
  1026. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.cjs +21 -0
  1027. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.cjs.map +1 -0
  1028. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +21 -0
  1029. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -0
  1030. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.cjs +44 -0
  1031. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.cjs.map +1 -0
  1032. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js +44 -0
  1033. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -0
  1034. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.cjs +17 -0
  1035. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.cjs.map +1 -0
  1036. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +17 -0
  1037. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -0
  1038. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.cjs +86 -0
  1039. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.cjs.map +1 -0
  1040. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +86 -0
  1041. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -0
  1042. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.cjs +37 -0
  1043. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.cjs.map +1 -0
  1044. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js +37 -0
  1045. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +1 -0
  1046. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.cjs +13 -0
  1047. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.cjs.map +1 -0
  1048. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +13 -0
  1049. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +1 -0
  1050. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.cjs +165 -0
  1051. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.cjs.map +1 -0
  1052. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js +165 -0
  1053. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -0
  1054. package/dist/node_modules/date-fns/locale/en-US/_lib/match.cjs +123 -0
  1055. package/dist/node_modules/date-fns/locale/en-US/_lib/match.cjs.map +1 -0
  1056. package/dist/node_modules/date-fns/locale/en-US/_lib/match.js +123 -0
  1057. package/dist/node_modules/date-fns/locale/en-US/_lib/match.js.map +1 -0
  1058. package/dist/node_modules/date-fns/locale/en-US.cjs +22 -0
  1059. package/dist/node_modules/date-fns/locale/en-US.cjs.map +1 -0
  1060. package/dist/node_modules/date-fns/locale/en-US.js +22 -0
  1061. package/dist/node_modules/date-fns/locale/en-US.js.map +1 -0
  1062. package/dist/node_modules/date-fns/startOfDay.cjs +11 -0
  1063. package/dist/node_modules/date-fns/startOfDay.cjs.map +1 -0
  1064. package/dist/node_modules/date-fns/startOfDay.js +11 -0
  1065. package/dist/node_modules/date-fns/startOfDay.js.map +1 -0
  1066. package/dist/node_modules/date-fns/startOfISOWeek.cjs +9 -0
  1067. package/dist/node_modules/date-fns/startOfISOWeek.cjs.map +1 -0
  1068. package/dist/node_modules/date-fns/startOfISOWeek.js +9 -0
  1069. package/dist/node_modules/date-fns/startOfISOWeek.js.map +1 -0
  1070. package/dist/node_modules/date-fns/startOfISOWeekYear.cjs +15 -0
  1071. package/dist/node_modules/date-fns/startOfISOWeekYear.cjs.map +1 -0
  1072. package/dist/node_modules/date-fns/startOfISOWeekYear.js +15 -0
  1073. package/dist/node_modules/date-fns/startOfISOWeekYear.js.map +1 -0
  1074. package/dist/node_modules/date-fns/startOfWeek.cjs +18 -0
  1075. package/dist/node_modules/date-fns/startOfWeek.cjs.map +1 -0
  1076. package/dist/node_modules/date-fns/startOfWeek.js +18 -0
  1077. package/dist/node_modules/date-fns/startOfWeek.js.map +1 -0
  1078. package/dist/node_modules/date-fns/startOfWeekYear.cjs +20 -0
  1079. package/dist/node_modules/date-fns/startOfWeekYear.cjs.map +1 -0
  1080. package/dist/node_modules/date-fns/startOfWeekYear.js +20 -0
  1081. package/dist/node_modules/date-fns/startOfWeekYear.js.map +1 -0
  1082. package/dist/node_modules/date-fns/startOfYear.cjs +12 -0
  1083. package/dist/node_modules/date-fns/startOfYear.cjs.map +1 -0
  1084. package/dist/node_modules/date-fns/startOfYear.js +12 -0
  1085. package/dist/node_modules/date-fns/startOfYear.js.map +1 -0
  1086. package/dist/node_modules/date-fns/toDate.cjs +9 -0
  1087. package/dist/node_modules/date-fns/toDate.cjs.map +1 -0
  1088. package/dist/node_modules/date-fns/toDate.js +9 -0
  1089. package/dist/node_modules/date-fns/toDate.js.map +1 -0
  1090. package/dist/notifications.server.cjs +552 -0
  1091. package/dist/notifications.server.js +511 -621
  1092. package/dist/orders.server.cjs +820 -0
  1093. package/dist/orders.server.js +733 -838
  1094. package/dist/organizations.server.cjs +1493 -0
  1095. package/dist/organizations.server.js +1301 -1414
  1096. package/dist/ownership.schema-CCZX5vfw.js +43 -0
  1097. package/dist/ownership.schema-DCosqOc1.cjs +42 -0
  1098. package/dist/pages.server.cjs +142 -0
  1099. package/dist/pages.server.js +125 -160
  1100. package/dist/products.server.cjs +2635 -0
  1101. package/dist/products.server.js +2528 -1273
  1102. package/dist/profile.schema-DchVS-Jr.js +21 -0
  1103. package/dist/profile.schema-yQuIzngl.cjs +20 -0
  1104. package/dist/queryProcessor-B_X680wC.cjs +332 -0
  1105. package/dist/queryProcessor-CVcLPEnv.js +333 -0
  1106. package/dist/rents.server.cjs +487 -0
  1107. package/dist/rents.server.js +462 -480
  1108. package/dist/reports.server.cjs +133 -0
  1109. package/dist/reports.server.js +97 -150
  1110. package/dist/spots.server.cjs +331 -0
  1111. package/dist/spots.server.js +301 -349
  1112. package/dist/style.css +854 -724
  1113. package/dist/{tickets.controller-zEHIAe_B.js → tickets.controller-D0V0gJCA.cjs} +239 -263
  1114. package/dist/{tickets.controller-BIhfgjNb.mjs → tickets.controller-DQQcjyui.js} +222 -263
  1115. package/dist/wallet.server.cjs +528 -0
  1116. package/dist/wallet.server.js +473 -666
  1117. package/package.json +3 -2
  1118. package/src/builder/builder.js +19 -14
  1119. package/src/builder/modes/spa.dev.js +16 -39
  1120. package/src/builder/modes/spa.prod.js +15 -26
  1121. package/src/builder/modes/ssr.dev.js +123 -107
  1122. package/src/builder/modes/ssr.prod.js +19 -38
  1123. package/src/builder/modes/ssr.rspack.dev.js +70 -66
  1124. package/src/builder/modes/ssr.vite.dev.js +45 -71
  1125. package/src/builder/rspack/index.js +10 -8
  1126. package/src/builder/rspack/rspack.config.api.js +59 -0
  1127. package/src/builder/rspack/rspack.config.base.js +28 -11
  1128. package/src/builder/rspack/{rspack.config.spa.js → rspack.config.spa.client.js} +21 -26
  1129. package/src/builder/rspack/{rspack.config.client.js → rspack.config.ssr.client.js} +9 -13
  1130. package/src/builder/rspack/{rspack.config.ssr.js → rspack.config.ssr.server.js} +22 -10
  1131. package/src/builder/ssr/ssr-render-html.js +13 -12
  1132. package/src/builder/ssr/ssr-transform-webpack-stats.js +37 -25
  1133. package/src/builder/ssr/utils.js +7 -14
  1134. package/src/builder/templates/page.js +2 -2
  1135. package/src/builder/templates/screen.js +2 -2
  1136. package/src/builder/utils/hot-reload.js +1 -1
  1137. package/src/builder/vite/index.js +8 -8
  1138. package/src/builder/vite/vite.config.base.js +37 -47
  1139. package/src/builder/vite/vite.config.client.js +42 -64
  1140. package/src/builder/vite/vite.config.server.js +14 -24
  1141. package/src/builder/vite/vite.config.spa.js +37 -46
  1142. package/src/builder/vite/vite.config.ssr.js +44 -60
  1143. package/src/builder/webpack/index.js +7 -7
  1144. package/src/builder/webpack/webpack.config.base.js +54 -39
  1145. package/src/builder/webpack/webpack.config.client.js +36 -47
  1146. package/src/builder/webpack/webpack.config.server.js +23 -17
  1147. package/src/builder/webpack/webpack.config.spa.js +22 -28
  1148. package/src/builder/webpack/webpack.config.ssr.js +33 -30
  1149. package/src/components/Button/Button.vue +8 -3
  1150. package/src/components/Chips/Chips.vue +1 -1
  1151. package/src/components/Dropdown/Dropdown.vue +1 -1
  1152. package/src/components/Feed/Feed.vue +156 -63
  1153. package/src/components/Field/Field.vue +82 -75
  1154. package/src/components/FieldPhone/FieldPhone.vue +2 -2
  1155. package/src/components/FieldPhone/all-countries.js +247 -3
  1156. package/src/components/FieldPhone/click-outside.js +1 -1
  1157. package/src/components/FieldPhone/utils.js +263 -262
  1158. package/src/components/FieldTags/FieldTags.vue +375 -25
  1159. package/src/components/FieldTags/create-tags.js +15 -15
  1160. package/src/components/FieldTags/vue-tags-input.props.js +2 -9
  1161. package/src/components/Map/LoaderGMaps.js +4 -4
  1162. package/src/components/Popup/Popup.vue +142 -89
  1163. package/src/components/Select/Select.vue +2 -4
  1164. package/src/components/SelectMulti/SelectMulti.vue +911 -656
  1165. package/src/components/Table/Table.vue +21 -64
  1166. package/src/components/UploadImageMultiple/UploadImageMultiple.vue +4 -4
  1167. package/src/components/index.js +10 -10
  1168. package/src/configurator/router/configurator.router.js +10 -8
  1169. package/src/main.js +79 -80
  1170. package/src/modules/auth/auth.client.js +17 -18
  1171. package/src/modules/auth/auth.server.js +32 -42
  1172. package/src/modules/auth/controllers/middlewares/authJwt.js +16 -34
  1173. package/src/modules/auth/controllers/middlewares/authSecret.js +2 -8
  1174. package/src/modules/auth/controllers/middlewares/index.js +15 -10
  1175. package/src/modules/auth/controllers/middlewares/verifyInvites.js +13 -21
  1176. package/src/modules/auth/controllers/middlewares/verifySignUp.js +7 -16
  1177. package/src/modules/auth/controllers/middlewares/verifyUser.js +20 -31
  1178. package/src/modules/auth/controllers/middlewares/visitor.logger.js +10 -23
  1179. package/src/modules/auth/controllers/routes/auth.routes.js +9 -29
  1180. package/src/modules/auth/controllers/routes/twofa.routes.js +6 -23
  1181. package/src/modules/auth/controllers/routes/users.routes.js +8 -39
  1182. package/src/modules/auth/controllers/services/auth.service.js +49 -82
  1183. package/src/modules/auth/controllers/services/twofa.service.js +6 -13
  1184. package/src/modules/auth/controllers/services/users.service.js +31 -70
  1185. package/src/modules/auth/controllers/utils/verifyAppleIdToken.js +47 -54
  1186. package/src/modules/auth/models/request.model.js +5 -9
  1187. package/src/modules/auth/models/role.model.js +3 -7
  1188. package/src/modules/auth/models/user.model.js +39 -41
  1189. package/src/modules/auth/models/visitor.model.js +3 -6
  1190. package/src/modules/auth/views/components/layouts/Auth.vue +1 -1
  1191. package/src/modules/auth/views/components/pages/EnterCode.vue +3 -3
  1192. package/src/modules/auth/views/components/pages/EnterPassword.vue +1 -1
  1193. package/src/modules/auth/views/components/pages/Invite.vue +2 -2
  1194. package/src/modules/auth/views/components/pages/Profile.vue +3 -3
  1195. package/src/modules/auth/views/components/pages/ProfileBlogposts.vue +3 -3
  1196. package/src/modules/auth/views/components/pages/ProfileEdit.vue +3 -3
  1197. package/src/modules/auth/views/components/pages/ResetPassword.vue +3 -3
  1198. package/src/modules/auth/views/components/pages/SignIn.vue +2 -2
  1199. package/src/modules/auth/views/components/pages/SignUp.vue +3 -3
  1200. package/src/modules/auth/views/components/sections/FeaturedUsers.vue +1 -1
  1201. package/src/modules/auth/views/components/sections/ProfileEditCredentials.vue +2 -2
  1202. package/src/modules/auth/views/localization/EnterCode.json +1 -1
  1203. package/src/modules/auth/views/localization/EnterPassword.json +1 -1
  1204. package/src/modules/auth/views/localization/ResetPassword.json +1 -1
  1205. package/src/modules/auth/views/localization/SignUp.json +1 -1
  1206. package/src/modules/auth/views/middlewares/auth.validation.js +16 -29
  1207. package/src/modules/auth/views/middlewares/ownership.validation.js +9 -14
  1208. package/src/modules/auth/views/router/auth.js +66 -77
  1209. package/src/modules/auth/views/router/users.js +87 -89
  1210. package/src/modules/auth/views/store/auth.js +41 -39
  1211. package/src/modules/auth/views/store/twofa.js +44 -42
  1212. package/src/modules/auth/views/store/users.js +22 -26
  1213. package/src/modules/auth/views/validations/inputs.validation.js +53 -59
  1214. package/src/modules/backoffice/backoffice.client.js +8 -8
  1215. package/src/modules/backoffice/components/pages/Dashboard.vue +3 -3
  1216. package/src/modules/backoffice/components/partials/Sidebar.vue +2 -2
  1217. package/src/modules/backoffice/router/backoffice.js +49 -49
  1218. package/src/modules/chats/chats.client.js +9 -9
  1219. package/src/modules/chats/chats.server.js +18 -23
  1220. package/src/modules/chats/controllers/chats.controller.js +8 -15
  1221. package/src/modules/chats/models/chat.model.js +6 -9
  1222. package/src/modules/chats/routes/chats.routes.js +12 -20
  1223. package/src/modules/chats/store/chat.store.js +14 -11
  1224. package/src/modules/community/community.client.js +13 -26
  1225. package/src/modules/community/community.server.js +30 -35
  1226. package/src/modules/community/components/blocks/CardBlogpost.vue +1 -1
  1227. package/src/modules/community/components/blocks/FooterBlogpost.vue +1 -1
  1228. package/src/modules/community/components/layouts/Community.vue +6 -4
  1229. package/src/modules/community/components/pages/Blog.vue +1 -1
  1230. package/src/modules/community/components/pages/BlogPost.vue +1 -1
  1231. package/src/modules/community/components/pages/CreateBlogPost.vue +5 -5
  1232. package/src/modules/community/components/sections/Comment.vue +2 -2
  1233. package/src/modules/community/components/sections/HotPosts.vue +1 -1
  1234. package/src/modules/community/controllers/blog.controller.js +103 -139
  1235. package/src/modules/community/controllers/comments.controller.js +79 -124
  1236. package/src/modules/community/controllers/reactions.controller.js +32 -59
  1237. package/src/modules/community/controllers/utils/queryProcessor.js +13 -17
  1238. package/src/modules/community/controllers/utils/queryProcessorReactions.js +28 -34
  1239. package/src/modules/community/middlewares/server/index.js +7 -5
  1240. package/src/modules/community/middlewares/server/verifyBlogpost.js +9 -14
  1241. package/src/modules/community/models/blogpost.model.js +33 -34
  1242. package/src/modules/community/models/comment.model.js +48 -50
  1243. package/src/modules/community/models/reaction.model.js +48 -46
  1244. package/src/modules/community/router/blogposts.js +52 -50
  1245. package/src/modules/community/routes/blog.routes.js +15 -49
  1246. package/src/modules/community/routes/comments.routes.js +14 -44
  1247. package/src/modules/community/routes/reactions.routes.js +10 -43
  1248. package/src/modules/community/store/blogposts.js +54 -59
  1249. package/src/modules/community/store/reactions.js +9 -13
  1250. package/src/modules/constructor/components/elements/Embed.vue +3 -3
  1251. package/src/modules/constructor/components/elements/ImageUpload.vue +3 -3
  1252. package/src/modules/core/classes/event.js +48 -0
  1253. package/src/modules/core/classes/memory-tracker.js +1063 -0
  1254. package/src/modules/{globals/views/core → core/classes}/module-manager.js +43 -46
  1255. package/src/modules/{globals/views/core → core/classes}/module.js +52 -53
  1256. package/src/modules/core/model/Adapter.js +17 -0
  1257. package/src/modules/core/model/Adapter.mogodb.js +65 -0
  1258. package/src/modules/core/model/Adapter.postgre.js +127 -0
  1259. package/src/modules/core/model/Model.js +99 -0
  1260. package/src/modules/core/model/Schema.js +70 -0
  1261. package/src/modules/core/model/Validation.js +97 -0
  1262. package/src/modules/events/components/elements/ButtonCheck.vue +1 -1
  1263. package/src/modules/events/components/elements/ButtonJoin.vue +2 -2
  1264. package/src/modules/events/components/pages/EditEvent.vue +5 -5
  1265. package/src/modules/events/components/pages/EditEventTickets.vue +3 -3
  1266. package/src/modules/events/components/pages/Event.vue +1 -2
  1267. package/src/modules/events/components/pages/Events.vue +3 -3
  1268. package/src/modules/events/components/pages/EventsBackoffice.vue +1 -1
  1269. package/src/modules/events/components/pages/EventsSearch.vue +1 -1
  1270. package/src/modules/events/components/sections/EventsHot.vue +1 -1
  1271. package/src/modules/events/components/sections/FeaturedEvents.vue +1 -1
  1272. package/src/modules/events/controllers/events.controller.js +90 -155
  1273. package/src/modules/events/controllers/tickets.controller.js +157 -220
  1274. package/src/modules/events/controllers/utils/queryProcessor.js +117 -123
  1275. package/src/modules/events/controllers/utils/templateEmail.js +6 -7
  1276. package/src/modules/events/controllers/utils/templateTicket.js +6 -7
  1277. package/src/modules/events/events.client.js +22 -28
  1278. package/src/modules/events/events.server.js +25 -32
  1279. package/src/modules/events/middlewares/server/index.js +6 -5
  1280. package/src/modules/events/middlewares/server/verifyEvent.js +29 -31
  1281. package/src/modules/events/models/event.model.js +68 -70
  1282. package/src/modules/events/models/ticket.model.js +55 -55
  1283. package/src/modules/events/router/events.js +28 -38
  1284. package/src/modules/events/routes/events.routes.js +15 -49
  1285. package/src/modules/events/routes/tickets.routes.js +7 -21
  1286. package/src/modules/events/store/events.js +41 -50
  1287. package/src/modules/events/store/tickets.js +11 -14
  1288. package/src/modules/files/controllers/files.controller.js +5 -17
  1289. package/src/modules/files/files.server.js +13 -16
  1290. package/src/modules/files/middlewares/server/index.js +7 -5
  1291. package/src/modules/files/middlewares/server/middlewareBusboy.js +62 -123
  1292. package/src/modules/files/routes/files.routes.js +11 -40
  1293. package/src/modules/gallery/components/pages/Gallery.vue +1 -1
  1294. package/src/modules/gallery/components/sections/BackofficeGallery.vue +3 -3
  1295. package/src/modules/gallery/controllers/gallery.controller.js +27 -58
  1296. package/src/modules/gallery/gallery.client.js +11 -11
  1297. package/src/modules/gallery/gallery.server.js +18 -23
  1298. package/src/modules/gallery/models/photo.model.js +27 -29
  1299. package/src/modules/gallery/router/gallery.backoffice.router.js +14 -14
  1300. package/src/modules/gallery/router/gallery.router.js +2 -2
  1301. package/src/modules/gallery/routes/gallery.routes.js +12 -44
  1302. package/src/modules/gallery/store/gallery.js +3 -3
  1303. package/src/modules/globals/controllers/classes/abac/abac.adapter.express.js +194 -0
  1304. package/src/modules/globals/controllers/classes/abac/abac.adapter.ws.js +84 -0
  1305. package/src/modules/globals/controllers/classes/abac/abac.core.js +220 -0
  1306. package/src/modules/globals/controllers/classes/abac/abac.fields.js +376 -0
  1307. package/src/modules/globals/controllers/classes/abac/abac.js +104 -0
  1308. package/src/modules/globals/controllers/classes/abac/abac.policies.js +226 -0
  1309. package/src/modules/globals/controllers/classes/crud/crud.controller.js +314 -0
  1310. package/src/modules/globals/controllers/classes/crud/crud.core.js +230 -0
  1311. package/src/modules/globals/controllers/classes/crud/crud.events.js +209 -0
  1312. package/src/modules/globals/controllers/classes/crud/crud.js +169 -0
  1313. package/src/modules/globals/controllers/classes/crud/crud.policies.js +256 -0
  1314. package/src/modules/globals/controllers/classes/crud/crud.service.js +285 -0
  1315. package/src/modules/globals/controllers/classes/globals.abac.js +69 -120
  1316. package/src/modules/globals/controllers/classes/globals.cache.js +2 -15
  1317. package/src/modules/globals/controllers/classes/globals.crud.js +15 -43
  1318. package/src/modules/globals/controllers/classes/globals.logger.js +2 -6
  1319. package/src/modules/globals/controllers/classes/globals.observer.js +36 -43
  1320. package/src/modules/globals/controllers/classes/globals.validator.js +62 -88
  1321. package/src/modules/globals/controllers/classes/globals.verifier.js +144 -128
  1322. package/src/modules/globals/controllers/classes/globals.webhook.js +1 -3
  1323. package/src/modules/globals/controllers/classes/globals.websocket.js +29 -89
  1324. package/src/modules/globals/controllers/classes/globals.websocket.ws.js +6 -28
  1325. package/src/modules/globals/controllers/policies/globals.policies.js +34 -50
  1326. package/src/modules/globals/controllers/utils/mailing.js +26 -34
  1327. package/src/modules/globals/controllers/utils/parseCookie.js +2 -5
  1328. package/src/modules/globals/controllers/utils/queryProcessor.js +188 -127
  1329. package/src/modules/globals/controllers/utils/seo-friendly-url.js +195 -48
  1330. package/src/modules/globals/controllers/utils/sitemap.js +14 -20
  1331. package/src/modules/globals/globals.client.js +55 -53
  1332. package/src/modules/globals/globals.server.js +22 -14
  1333. package/src/modules/globals/models/schemas/common.schema.js +4 -4
  1334. package/src/modules/globals/models/schemas/credentials.schema.js +3 -3
  1335. package/src/modules/globals/models/schemas/engagement.schema.js +6 -16
  1336. package/src/modules/globals/models/schemas/metadata.schema.js +16 -20
  1337. package/src/modules/globals/models/schemas/ownership.schema.js +16 -13
  1338. package/src/modules/globals/models/schemas/profile.schema.js +6 -7
  1339. package/src/modules/globals/models/schemas/socials.schema.js +9 -9
  1340. package/src/modules/globals/views/classes/globals.store.js +25 -22
  1341. package/src/modules/globals/views/classes/globals.websocket.js +16 -16
  1342. package/src/modules/globals/views/classes/globals.websocket.ws.js +1 -1
  1343. package/src/modules/globals/views/classes/store.js +18 -19
  1344. package/src/modules/globals/views/components/blocks/BlockMultiselect.vue +364 -0
  1345. package/src/modules/globals/views/components/blocks/Card.vue +75 -46
  1346. package/src/modules/globals/views/components/blocks/CardFooter.vue +1 -1
  1347. package/src/modules/globals/views/components/blocks/CardHeader.vue +9 -8
  1348. package/src/modules/globals/views/components/elements/ButtonDate.vue +2 -2
  1349. package/src/modules/globals/views/components/layouts/App.vue +2 -2
  1350. package/src/modules/globals/views/components/layouts/Client.vue +2 -2
  1351. package/src/modules/globals/views/components/partials/BottomNavigationBar.vue +1 -1
  1352. package/src/modules/globals/views/components/partials/Footer.vue +1 -1
  1353. package/src/modules/globals/views/components/partials/Header.vue +3 -3
  1354. package/src/modules/globals/views/components/partials/LocationSelection.vue +1 -1
  1355. package/src/modules/globals/views/components/partials/Navigation.vue +11 -19
  1356. package/src/modules/globals/views/components/partials/NavigationBar.vue +3 -3
  1357. package/src/modules/globals/views/components/partials/Sidebar.vue +1 -1
  1358. package/src/modules/globals/views/localization/get-browser-locale.js +7 -12
  1359. package/src/modules/globals/views/middlewares/localization.js +3 -6
  1360. package/src/modules/globals/views/mixins/mixins.js +152 -134
  1361. package/src/modules/globals/views/plugins/alert.plugin.js +28 -28
  1362. package/src/modules/globals/views/plugins/date-picker.plugin.js +85 -0
  1363. package/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue +284 -0
  1364. package/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js +24 -0
  1365. package/src/modules/globals/views/router/addRoutes.js +15 -17
  1366. package/src/modules/globals/views/router/scrollBehavior.js +17 -13
  1367. package/src/modules/globals/views/store/globals.js +64 -78
  1368. package/src/modules/globals/views/utils/axios-instance.js +1 -1
  1369. package/src/modules/globals/views/utils/vue-app-renderer.js +23 -26
  1370. package/src/modules/governance/controllers/factories/initiatives.controller.js +23 -29
  1371. package/src/modules/governance/controllers/factories/tasks.controller.js +21 -27
  1372. package/src/modules/governance/controllers/factories/votes.controller.js +17 -21
  1373. package/src/modules/governance/controllers/factories/votings.controller.js +25 -32
  1374. package/src/modules/governance/controllers/routes/initiatives.routes.js +10 -12
  1375. package/src/modules/governance/controllers/routes/tasks.routes.js +10 -12
  1376. package/src/modules/governance/controllers/routes/votes.routes.js +8 -10
  1377. package/src/modules/governance/controllers/routes/votings.routes.js +11 -13
  1378. package/src/modules/governance/governance.client.js +7 -7
  1379. package/src/modules/governance/governance.server.js +36 -39
  1380. package/src/modules/governance/models/initiative.model.js +26 -22
  1381. package/src/modules/governance/models/milestone.model.js +86 -82
  1382. package/src/modules/governance/models/task.model.js +48 -45
  1383. package/src/modules/governance/models/vote.model.js +18 -16
  1384. package/src/modules/governance/models/voting.model.js +23 -19
  1385. package/src/modules/governance/views/router/goverance.router.js +56 -80
  1386. package/src/modules/governance/views/store/initiatives.js +8 -11
  1387. package/src/modules/governance/views/store/projects.js +57 -66
  1388. package/src/modules/governance/views/store/tasks.js +9 -14
  1389. package/src/modules/governance/views/store/votes.js +8 -13
  1390. package/src/modules/governance/views/store/votings.js +7 -11
  1391. package/src/modules/icons/actions/IconDuplicate.vue +17 -0
  1392. package/src/modules/icons/entities/IconDiscount.vue +23 -0
  1393. package/src/modules/icons/entities/IconSettings.vue +32 -0
  1394. package/src/modules/icons/icons.client.js +118 -96
  1395. package/src/modules/icons/pages/IconsPage.vue +300 -0
  1396. package/src/modules/icons/router/icons.router.js +34 -0
  1397. package/src/modules/integrations/integrations.service.js +34 -91
  1398. package/src/modules/integrations/openai/openai.globals.js +116 -0
  1399. package/src/modules/integrations/paypal/controllers/webhooks/paypal.webhook.js +15 -19
  1400. package/src/modules/integrations/stripe/controllers/services/stripe.service.js +241 -285
  1401. package/src/modules/integrations/stripe/controllers/webhooks/stripe.webhook.js +8 -17
  1402. package/src/modules/integrations/tinkoff/controllers/services/tinkoff.service.js +111 -119
  1403. package/src/modules/integrations/tinkoff/models/tinkoff.payment.model.js +12 -13
  1404. package/src/modules/inventory/inventory.server.js +23 -0
  1405. package/src/modules/inventory/models/stock.adjustment.model.js +63 -0
  1406. package/src/modules/inventory/models/stock.availability.model.js +56 -0
  1407. package/src/modules/inventory/models/stock.balance.model.js +43 -0
  1408. package/src/modules/inventory/models/stock.inventory.model.js +38 -0
  1409. package/src/modules/inventory/policies/inventory.policies.js +47 -0
  1410. package/src/modules/inventory/routes/inventory.routes.js +61 -0
  1411. package/src/modules/inventory/services/inventory.crud.js +527 -0
  1412. package/src/modules/inventory/services/inventory.verifier.js +81 -0
  1413. package/src/modules/inventory/store/ inventory.store.js +131 -0
  1414. package/src/modules/inventory/workers/inventory.availability.worker.js +300 -0
  1415. package/src/modules/landing/landing.client.js +16 -16
  1416. package/src/modules/marketplace/marketplace.client.js +12 -13
  1417. package/src/modules/marketplace/views/components/layouts/Marketplace.vue +2 -2
  1418. package/src/modules/marketplace/views/components/pages/Catalog.vue +2 -2
  1419. package/src/modules/marketplace/views/components/sections/SectionMenu.vue +2 -2
  1420. package/src/modules/marketplace/views/router/marketplace.router.js +9 -11
  1421. package/src/modules/marketplace/views/store/marketplace.js +33 -29
  1422. package/src/modules/music/components/cards/ArtistCard.vue +62 -15
  1423. package/src/modules/music/components/lists/ArtistList.vue +267 -12
  1424. package/src/modules/music/components/pages/ArtistDetail.vue +375 -189
  1425. package/src/modules/music/components/pages/ArtistForm.vue +426 -0
  1426. package/src/modules/music/components/pages/ArtistManager.vue +277 -0
  1427. package/src/modules/music/components/pages/MusicLibrary.vue +5 -8
  1428. package/src/modules/music/controllers/album.controller.js +15 -31
  1429. package/src/modules/music/controllers/artist.controller.js +29 -41
  1430. package/src/modules/music/controllers/genre.controller.js +23 -31
  1431. package/src/modules/music/controllers/music.controller.js +28 -57
  1432. package/src/modules/music/controllers/playlist.controller.js +20 -56
  1433. package/src/modules/music/controllers/search.controller.js +37 -62
  1434. package/src/modules/music/controllers/stream.controller.js +16 -32
  1435. package/src/modules/music/models/album.model.js +54 -51
  1436. package/src/modules/music/models/artist.model.js +50 -52
  1437. package/src/modules/music/models/genre.model.js +27 -31
  1438. package/src/modules/music/models/play-history.model.js +41 -42
  1439. package/src/modules/music/models/playlist.model.js +54 -54
  1440. package/src/modules/music/models/track.model.js +65 -69
  1441. package/src/modules/music/music.client.js +55 -52
  1442. package/src/modules/music/music.server.js +62 -77
  1443. package/src/modules/music/policies/music.policies.js +9 -29
  1444. package/src/modules/music/router/music.js +38 -19
  1445. package/src/modules/music/routes/album.routes.js +21 -55
  1446. package/src/modules/music/routes/artist.routes.js +22 -59
  1447. package/src/modules/music/routes/genre.routes.js +21 -53
  1448. package/src/modules/music/routes/music.routes.js +74 -113
  1449. package/src/modules/music/routes/playlist.routes.js +36 -88
  1450. package/src/modules/music/routes/search.routes.js +5 -9
  1451. package/src/modules/music/routes/stream.routes.js +23 -34
  1452. package/src/modules/music/store/albums.js +34 -34
  1453. package/src/modules/music/store/artists.js +31 -28
  1454. package/src/modules/music/store/player.js +71 -73
  1455. package/src/modules/music/store/playlists.js +37 -37
  1456. package/src/modules/music/store/search.js +25 -25
  1457. package/src/modules/music/store/tracks.js +40 -45
  1458. package/src/modules/music/websocket/streaming.handler.js +58 -76
  1459. package/src/modules/notifications/components/elements/NotificationBadge.vue +1 -1
  1460. package/src/modules/notifications/components/sections/NotificationsList.vue +1 -1
  1461. package/src/modules/notifications/controllers/notifications.controller.js +32 -62
  1462. package/src/modules/notifications/middlewares/notifications.abac.js +1 -5
  1463. package/src/modules/notifications/models/notification-log.model.js +8 -5
  1464. package/src/modules/notifications/models/notification-preference.model.js +8 -6
  1465. package/src/modules/notifications/models/notification.model.js +2 -3
  1466. package/src/modules/notifications/models/user-device.model.js +3 -5
  1467. package/src/modules/notifications/notifications.client.js +65 -75
  1468. package/src/modules/notifications/notifications.server.js +31 -44
  1469. package/src/modules/notifications/router/notifications.router.js +8 -8
  1470. package/src/modules/notifications/routes/notifications.routes.js +4 -11
  1471. package/src/modules/notifications/services/apns.service.js +4 -13
  1472. package/src/modules/notifications/services/email.service.js +4 -8
  1473. package/src/modules/notifications/services/fcm.service.js +4 -11
  1474. package/src/modules/notifications/services/notification.service.js +49 -84
  1475. package/src/modules/notifications/services/sms.service.js +4 -7
  1476. package/src/modules/notifications/services/telegram.service.js +4 -7
  1477. package/src/modules/notifications/services/web-push.service.js +14 -23
  1478. package/src/modules/notifications/services/whatsapp.service.js +4 -11
  1479. package/src/modules/notifications/store/notifications.store.js +50 -55
  1480. package/src/modules/orders/components/pages/OrderBackoffice.vue +5 -5
  1481. package/src/modules/orders/components/pages/OrderCreate.vue +6 -6
  1482. package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +5 -5
  1483. package/src/modules/orders/components/pages/Orders.vue +2 -2
  1484. package/src/modules/orders/components/partials/ShopCart.vue +3 -3
  1485. package/src/modules/orders/components/sections/AskToLogin.vue +2 -1
  1486. package/src/modules/orders/components/sections/FormAddCustomer.vue +5 -5
  1487. package/src/modules/orders/components/sections/FormDelivery.vue +2 -2
  1488. package/src/modules/orders/controllers/applications.controller.js +37 -67
  1489. package/src/modules/orders/controllers/orders.controller.js +96 -155
  1490. package/src/modules/orders/controllers/testimonials.controller.js +22 -31
  1491. package/src/modules/orders/models/application.model.js +25 -24
  1492. package/src/modules/orders/models/customer.model.js +61 -55
  1493. package/src/modules/orders/models/order.model.js +80 -81
  1494. package/src/modules/orders/models/testimonial.model.js +7 -9
  1495. package/src/modules/orders/orders.client.js +24 -26
  1496. package/src/modules/orders/orders.server.js +27 -32
  1497. package/src/modules/orders/router/orders.router.js +21 -22
  1498. package/src/modules/orders/routes/applications.routes.js +10 -40
  1499. package/src/modules/orders/routes/orders.routes.js +8 -19
  1500. package/src/modules/orders/routes/testimonials.routes.js +9 -29
  1501. package/src/modules/orders/store/applications.js +34 -39
  1502. package/src/modules/orders/store/customers.store.js +3 -3
  1503. package/src/modules/orders/store/models/customer.js +5 -5
  1504. package/src/modules/orders/store/models/order.js +4 -4
  1505. package/src/modules/orders/store/orders.js +61 -76
  1506. package/src/modules/orders/store/shopcart.js +150 -98
  1507. package/src/modules/orders/store/testimonials.js +7 -10
  1508. package/src/modules/organizations/components/elements/ButtonToggleMembership.vue +2 -2
  1509. package/src/modules/organizations/components/pages/Department.vue +1 -1
  1510. package/src/modules/organizations/components/pages/DepartmentEdit.vue +3 -3
  1511. package/src/modules/organizations/components/pages/Members.vue +6 -6
  1512. package/src/modules/organizations/components/pages/Organization.vue +9 -9
  1513. package/src/modules/organizations/components/pages/OrganizationBackoffice.vue +2 -2
  1514. package/src/modules/organizations/components/pages/OrganizationCreate.vue +2 -2
  1515. package/src/modules/organizations/components/pages/OrganizationDetails.vue +2 -2
  1516. package/src/modules/organizations/components/pages/OrganizationEdit.vue +3 -3
  1517. package/src/modules/organizations/components/pages/OrganizationPeople.vue +1 -1
  1518. package/src/modules/organizations/components/pages/Organizations.vue +2 -2
  1519. package/src/modules/organizations/components/sections/DetailsTabSection.vue +2 -2
  1520. package/src/modules/organizations/components/sections/MembersAdd.vue +1 -1
  1521. package/src/modules/organizations/components/sections/Organizations.vue +3 -3
  1522. package/src/modules/organizations/components/sections/Publics.vue +3 -3
  1523. package/src/modules/organizations/configs/navigation.organization.config.js +227 -0
  1524. package/src/modules/organizations/controllers/departments.controller.js +11 -22
  1525. package/src/modules/organizations/controllers/invites.controller.js +14 -30
  1526. package/src/modules/organizations/controllers/memberships.controller.js +21 -54
  1527. package/src/modules/organizations/controllers/organizations.controller.js +32 -83
  1528. package/src/modules/organizations/controllers/utils/addMembersQuantity.js +11 -12
  1529. package/src/modules/organizations/controllers/utils/addUserStatusFields.js +31 -41
  1530. package/src/modules/organizations/controllers/utils/lookupConfigs.js +31 -31
  1531. package/src/modules/organizations/controllers/utils/queryProcessor.js +40 -51
  1532. package/src/modules/organizations/controllers/utils/queryProcessorOrganizations.js +124 -147
  1533. package/src/modules/organizations/middlewares/verifyAccesses.js +7 -25
  1534. package/src/modules/organizations/middlewares/verifyAccessesRefactored.js +26 -51
  1535. package/src/modules/organizations/models/department.model.js +58 -59
  1536. package/src/modules/organizations/models/invite.model.js +45 -42
  1537. package/src/modules/organizations/models/membership.model.js +35 -35
  1538. package/src/modules/organizations/models/organization.model.js +65 -80
  1539. package/src/modules/organizations/models/schemas/accesses.schema.js +1 -2
  1540. package/src/modules/organizations/organizations.client.js +45 -46
  1541. package/src/modules/organizations/organizations.server.js +40 -41
  1542. package/src/modules/organizations/policies/organizations.policies.js +193 -85
  1543. package/src/modules/organizations/router/backoffice.router.js +22 -20
  1544. package/src/modules/organizations/router/departments.router.js +27 -23
  1545. package/src/modules/organizations/router/members.router.js +18 -18
  1546. package/src/modules/organizations/router/organizations.js +74 -66
  1547. package/src/modules/organizations/routes/departments.routes.js +9 -20
  1548. package/src/modules/organizations/routes/invites.routes.js +9 -31
  1549. package/src/modules/organizations/routes/memberships.routes.js +7 -23
  1550. package/src/modules/organizations/routes/organizations.routes.js +15 -40
  1551. package/src/modules/organizations/store/departments.js +13 -14
  1552. package/src/modules/organizations/store/invites.js +38 -41
  1553. package/src/modules/organizations/store/memberships.js +21 -26
  1554. package/src/modules/organizations/store/organizations.js +40 -46
  1555. package/src/modules/pages/controllers/factories/pages.factory.js +6 -27
  1556. package/src/modules/pages/controllers/routes/pages.routes.js +7 -23
  1557. package/src/modules/pages/models/page.model.js +22 -20
  1558. package/src/modules/pages/pages.client.js +12 -12
  1559. package/src/modules/pages/pages.server.js +18 -21
  1560. package/src/modules/pages/views/components/pages/Page.vue +1 -1
  1561. package/src/modules/pages/views/components/pages/Pages.vue +1 -1
  1562. package/src/modules/pages/views/components/partials/SidebarPages.vue +1 -1
  1563. package/src/modules/pages/views/router/pages.backoffice.router.js +29 -29
  1564. package/src/modules/pages/views/router/pages.router.js +16 -14
  1565. package/src/modules/pages/views/store/pages.js +12 -11
  1566. package/src/modules/pages/views/store/pages.store.js +3 -3
  1567. package/src/modules/products/components/blocks/CardLeftover.vue +1 -1
  1568. package/src/modules/products/components/blocks/CardPosition.vue +94 -157
  1569. package/src/modules/products/components/blocks/CardProduct.vue +5 -5
  1570. package/src/modules/products/components/blocks/ProductDiscounts.vue +141 -0
  1571. package/src/modules/products/components/blocks/{ImagesThumbnails.vue → ProductImages.vue} +3 -4
  1572. package/src/modules/products/components/blocks/ProductVariants.vue +125 -0
  1573. package/src/modules/products/components/elements/Price.vue +34 -37
  1574. package/src/modules/products/components/elements/QuantitySelector.vue +52 -0
  1575. package/src/modules/products/components/elements/THC.vue +6 -6
  1576. package/src/modules/products/components/forms/ColumnSettingsMenu.vue +80 -0
  1577. package/src/modules/products/components/forms/ReorderSettingsForm.vue +107 -0
  1578. package/src/modules/products/components/forms/StockAuditForm.vue +154 -0
  1579. package/src/modules/products/components/forms/StockHistoryView.vue +134 -0
  1580. package/src/modules/products/components/pages/Categories.vue +5 -5
  1581. package/src/modules/products/components/pages/CategoryEdit.vue +8 -44
  1582. package/src/modules/products/components/pages/LeftoverEdit.vue +360 -0
  1583. package/src/modules/products/components/pages/Leftovers.vue +288 -131
  1584. package/src/modules/products/components/pages/Product.vue +171 -100
  1585. package/src/modules/products/components/pages/ProductEdit.vue +329 -461
  1586. package/src/modules/products/components/pages/ProductRecommmendation.vue +2 -2
  1587. package/src/modules/products/components/pages/Products.vue +7 -7
  1588. package/src/modules/products/components/sections/EditAttributes.vue +154 -0
  1589. package/src/modules/products/components/sections/EditCategories.vue +149 -0
  1590. package/src/modules/products/components/sections/EditDiscounts.vue +308 -0
  1591. package/src/modules/products/components/sections/EditIngredients.vue +130 -0
  1592. package/src/modules/products/components/sections/EditVariants.vue +453 -0
  1593. package/src/modules/products/components/sections/FilterProducts.vue +4 -4
  1594. package/src/modules/products/components/sections/HeroRecommendation.vue +1 -1
  1595. package/src/modules/products/components/sections/PopularProducts.vue +2 -2
  1596. package/src/modules/products/components/sections/ProductConfigurator.vue +131 -0
  1597. package/src/modules/products/components/sections/SectionProduct.vue +17 -17
  1598. package/src/modules/products/controllers/categories.controller.js +45 -143
  1599. package/src/modules/products/controllers/configs/products.lookup.config.js +135 -0
  1600. package/src/modules/products/controllers/leftovers.controller.js +38 -62
  1601. package/src/modules/products/controllers/products.controller.js +103 -364
  1602. package/src/modules/products/controllers/queries/products.queries.js +112 -0
  1603. package/src/modules/products/middlewares/categories.verifier.js +94 -72
  1604. package/src/modules/products/middlewares/variants.verifier.js +226 -0
  1605. package/src/modules/products/models/category.model.js +26 -22
  1606. package/src/modules/products/models/leftover.model.js +61 -44
  1607. package/src/modules/products/models/product.model.js +54 -119
  1608. package/src/modules/products/models/schemas/discount.schema.js +33 -0
  1609. package/src/modules/products/models/schemas/ingredient.schema.js +46 -0
  1610. package/src/modules/products/models/variant.model.js +66 -0
  1611. package/src/modules/products/products.client.js +31 -41
  1612. package/src/modules/products/products.server.js +34 -35
  1613. package/src/modules/products/router/categories.router.js +34 -30
  1614. package/src/modules/products/router/leftovers.router.js +32 -30
  1615. package/src/modules/products/router/products.router.js +18 -21
  1616. package/src/modules/products/routes/categories.routes.js +13 -52
  1617. package/src/modules/products/routes/leftovers.routes.js +9 -27
  1618. package/src/modules/products/routes/products.routes.js +8 -27
  1619. package/src/modules/products/routes/variants.routes.js +102 -0
  1620. package/src/modules/products/store/categories.js +24 -23
  1621. package/src/modules/products/store/leftovers.js +53 -17
  1622. package/src/modules/products/store/products.js +73 -125
  1623. package/src/modules/products/store/variants.store.js +5 -0
  1624. package/src/modules/rents/controllers/routes/rents.routes.js +12 -21
  1625. package/src/modules/rents/controllers/services/rents.services.js +183 -239
  1626. package/src/modules/rents/models/rent.model.js +27 -17
  1627. package/src/modules/rents/rents.client.js +5 -10
  1628. package/src/modules/rents/rents.server.js +15 -21
  1629. package/src/modules/rents/views/components/pages/RentsEdit.vue +2 -2
  1630. package/src/modules/rents/views/router/rents.router.js +11 -20
  1631. package/src/modules/rents/views/store/rents.store.js +33 -33
  1632. package/src/modules/reports/components/sections/FormReport.vue +1 -1
  1633. package/src/modules/reports/controllers/reports.controller.js +17 -26
  1634. package/src/modules/reports/models/report.model.js +39 -56
  1635. package/src/modules/reports/reports.client.js +8 -8
  1636. package/src/modules/reports/reports.server.js +17 -22
  1637. package/src/modules/reports/routes/reports.routes.js +7 -28
  1638. package/src/modules/reports/store/reports.js +15 -17
  1639. package/src/modules/spots/components/blocks/CardSpot.vue +73 -58
  1640. package/src/modules/spots/components/layouts/Spots.vue +3 -3
  1641. package/src/modules/spots/components/pages/Map.vue +3 -3
  1642. package/src/modules/spots/components/pages/SpotEdit.vue +1 -1
  1643. package/src/modules/spots/controllers/queries/getIsOpenNowStage.js +49 -65
  1644. package/src/modules/spots/controllers/spots.controller.js +25 -43
  1645. package/src/modules/spots/models/spot.model.js +45 -52
  1646. package/src/modules/spots/router/spots.js +22 -26
  1647. package/src/modules/spots/routes/spots.routes.js +8 -16
  1648. package/src/modules/spots/spots.client.js +6 -6
  1649. package/src/modules/spots/spots.server.js +17 -20
  1650. package/src/modules/spots/store/spots.js +11 -14
  1651. package/src/modules/wallet/controllers/factories/payments.factory.js +15 -42
  1652. package/src/modules/wallet/controllers/factories/rewards.factory.js +56 -134
  1653. package/src/modules/wallet/controllers/routes/payments.routes.js +45 -80
  1654. package/src/modules/wallet/controllers/routes/rewards.routes.js +10 -50
  1655. package/src/modules/wallet/models/payment.model.js +26 -27
  1656. package/src/modules/wallet/models/reward.model.js +3 -4
  1657. package/src/modules/wallet/models/wallet.model.js +10 -9
  1658. package/src/modules/wallet/views/router/payments.router.js +24 -23
  1659. package/src/modules/wallet/views/store/payments.store.js +6 -6
  1660. package/src/modules/wallet/views/store/wallet.store.js +28 -35
  1661. package/src/modules/wallet/wallet.server.js +25 -27
  1662. package/src/styles/typography.scss +31 -1
  1663. package/dist/Media-DmnrxIEI.js +0 -1
  1664. package/dist/_commonjsHelpers-CUmg6egw.mjs +0 -6
  1665. package/dist/_commonjsHelpers-DHfMLFPC.js +0 -5
  1666. package/dist/addMembersQuantity-DBfuUEx_.mjs +0 -113
  1667. package/dist/addMembersQuantity-DxWjHK1K.js +0 -112
  1668. package/dist/auth.server.mjs +0 -764
  1669. package/dist/authJwt-CELQKF2s.js +0 -82
  1670. package/dist/authJwt-DnXu3BFq.mjs +0 -83
  1671. package/dist/builder.mjs +0 -1502
  1672. package/dist/chats.server.mjs +0 -137
  1673. package/dist/common.schema-C2m3O1XY.mjs +0 -20
  1674. package/dist/common.schema-O0w_rDyC.js +0 -19
  1675. package/dist/community.server.mjs +0 -1068
  1676. package/dist/credentials.schema-BmOPv6FD.js +0 -16
  1677. package/dist/credentials.schema-oOC8B5KL.mjs +0 -17
  1678. package/dist/engagement.schema-DAiXsvh1.js +0 -33
  1679. package/dist/engagement.schema-DnDD7Bn3.mjs +0 -34
  1680. package/dist/events.server.mjs +0 -1060
  1681. package/dist/files.server.mjs +0 -339
  1682. package/dist/gallery.server.mjs +0 -337
  1683. package/dist/globals.abac-Bn-4tbX8.js +0 -303
  1684. package/dist/globals.abac-DZpTRxKR.mjs +0 -304
  1685. package/dist/globals.cache-BT6q3vOf.mjs +0 -140
  1686. package/dist/globals.cache-CwWvNGFQ.js +0 -139
  1687. package/dist/globals.logger-BdjooLaD.js +0 -34
  1688. package/dist/globals.logger-DusiFsxN.mjs +0 -35
  1689. package/dist/globals.server.mjs +0 -452
  1690. package/dist/globals.verifier-BdJxc8-8.mjs +0 -609
  1691. package/dist/globals.verifier-CKYpYfQl.js +0 -608
  1692. package/dist/index-BOmxJQ5W.js +0 -205
  1693. package/dist/index-C_Fw0Umg.mjs +0 -206
  1694. package/dist/mailing-D4kWlk3_.js +0 -93
  1695. package/dist/mailing-DvCT5ijo.mjs +0 -94
  1696. package/dist/main-DxWqDgs1.js +0 -11
  1697. package/dist/martyrs/src/components/Button/Button.vue.cjs.map +0 -1
  1698. package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
  1699. package/dist/martyrs/src/components/FieldTags/vue-tags-input.cjs +0 -292
  1700. package/dist/martyrs/src/components/FieldTags/vue-tags-input.cjs.map +0 -1
  1701. package/dist/martyrs/src/components/FieldTags/vue-tags-input.js +0 -292
  1702. package/dist/martyrs/src/components/FieldTags/vue-tags-input.js.map +0 -1
  1703. package/dist/martyrs/src/components/Loader/Loader.vue2.cjs.map +0 -1
  1704. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.cjs +0 -450
  1705. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.cjs.map +0 -1
  1706. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js +0 -450
  1707. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +0 -1
  1708. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.cjs +0 -633
  1709. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.cjs.map +0 -1
  1710. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.js +0 -633
  1711. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.js.map +0 -1
  1712. package/dist/martyrs/src/components/SelectMulti/pointerMixin.cjs +0 -117
  1713. package/dist/martyrs/src/components/SelectMulti/pointerMixin.cjs.map +0 -1
  1714. package/dist/martyrs/src/components/SelectMulti/pointerMixin.js +0 -117
  1715. package/dist/martyrs/src/components/SelectMulti/pointerMixin.js.map +0 -1
  1716. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
  1717. package/dist/martyrs/src/components/Table/TableCell.vue.cjs +0 -59
  1718. package/dist/martyrs/src/components/Table/TableCell.vue.cjs.map +0 -1
  1719. package/dist/martyrs/src/components/Table/TableCell.vue.js +0 -59
  1720. package/dist/martyrs/src/components/Table/TableCell.vue.js.map +0 -1
  1721. package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.cjs.map +0 -1
  1722. package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.js.map +0 -1
  1723. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs.map +0 -1
  1724. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js.map +0 -1
  1725. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.cjs +0 -65
  1726. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.cjs.map +0 -1
  1727. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.js +0 -65
  1728. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.js.map +0 -1
  1729. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.cjs +0 -49
  1730. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.cjs.map +0 -1
  1731. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.js +0 -49
  1732. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.js.map +0 -1
  1733. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +0 -237
  1734. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs.map +0 -1
  1735. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +0 -237
  1736. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js.map +0 -1
  1737. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.cjs +0 -152
  1738. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.cjs.map +0 -1
  1739. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.js +0 -152
  1740. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.js.map +0 -1
  1741. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs +0 -120
  1742. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs.map +0 -1
  1743. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js +0 -120
  1744. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js.map +0 -1
  1745. package/dist/metadata.schema--tle-GU8.mjs +0 -282
  1746. package/dist/metadata.schema-CUkLXZ2f.js +0 -281
  1747. package/dist/notifications.server.mjs +0 -663
  1748. package/dist/orders.server.mjs +0 -926
  1749. package/dist/organizations.server.mjs +0 -1590
  1750. package/dist/ownership.schema-CNCotD3D.mjs +0 -50
  1751. package/dist/ownership.schema-MxfJlPtq.js +0 -49
  1752. package/dist/pages.server.mjs +0 -178
  1753. package/dist/products.server.mjs +0 -1381
  1754. package/dist/profile.schema-BLSuV_VC.js +0 -27
  1755. package/dist/profile.schema-BRuvQ7QV.mjs +0 -28
  1756. package/dist/queryProcessor-CVKI651_.mjs +0 -314
  1757. package/dist/queryProcessor-DSUqSk3I.js +0 -313
  1758. package/dist/rents.server.mjs +0 -506
  1759. package/dist/reports.server.mjs +0 -187
  1760. package/dist/spots.server.mjs +0 -380
  1761. package/dist/wallet.server.mjs +0 -705
  1762. package/src/builder/rspack/rspack.config.server.js +0 -30
  1763. package/src/components/FieldTags/vue-tags-input.js +0 -424
  1764. package/src/components/SelectMulti/index.js +0 -7
  1765. package/src/components/SelectMulti/multiselectMixin.js +0 -725
  1766. package/src/components/SelectMulti/pointerMixin.js +0 -143
  1767. package/src/modules/globals/views/core/event.js +0 -48
  1768. package/src/modules/icons/logos/LogotypeNunito.vue +0 -12
  1769. package/src/modules/integrations/openai/controllers/openai.controller.js +0 -89
  1770. package/src/modules/products/components/blocks/EditFilters.vue +0 -56
  1771. package/src/modules/products/components/blocks/LeftoverPositions.vue +0 -99
  1772. package/src/modules/products/components/blocks/ListPositions.vue +0 -74
  1773. package/src/modules/products/components/pages/EditLeftover.vue +0 -288
  1774. package/src/modules/products/components/pages/Product.old.vue +0 -201
  1775. package/src/modules/products/components/sections/EditModifications.vue +0 -92
  1776. package/src/modules/products/components/sections/EditProductInfo.vue +0 -106
  1777. package/src/modules/products/controllers/modifications.controller.js +0 -66
  1778. /package/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue +0 -0
  1779. /package/src/modules/products/components/{blocks/Images360.vue → elements/Image360.vue} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"ProductEdit.vue.js","sources":["../../../../../../../src/modules/products/components/pages/ProductEdit.vue"],"sourcesContent":["<template>\n\t<div class=\"for-transition w-100 cols-1 bg-white pd-thin gap-thin\">\n \n <Block v-if=\"!MOBILE_APP\" class=\"flex-nowrap gap-thin flex-v-center flex\">\n \n <h2 class=\"t-truncate mn-r-auto\">\n\t\t\t {{ route.params.product ? products.state.current.name : 'Create Product' }}\n\t\t\t</h2>\n\n\t\t\t<Button \n\t\t\t\tv-if=\"route.params.product\"\n \t:submit=\"onDelete\" \n \t:callback=\"redirectTo\"\n \tclass=\"w-10 w-max-20r w-min-8r bg-red\"\n >\n \t\tDelete \n \t</Button>\n\n <Button \n \t:submit=\"onSubmit\" \n \t:callback=\"redirectTo\"\n \tclass=\"w-10 w-max-20r w-min-8r bg-main\"\n >\n \t\tSave\n \t</Button>\n </Block>\n\n <Block\n\t\t\tplaceholder=\"The product doesn't have any images yet.\"\n\t\t\tclass=\"h-min\"\n\t\t>\n\t\t\t<EditImages \n\t\t\t\t:images=\"products.state.current.images\"\n\t\t\t\t:uploadPath=\"'photos'\" \n\t\t\t\t@update:images=\"(imagesNew) => { products.state.current.images = imagesNew }\" \n\t\t\t/>\n\t\t</Block>\n\n <div class=\"cols-2 gap-thin\">\n\n \t<Block\n \t\t\ttitle=\"Profile\"\n \t\t>\n\t\t\t\t<EditProductInfo \t\t\n\t\t\t\t\t:product=\"products.state.current\"\n\t\t\t\t/>\n\t\t\t</Block>\n\n\t\t\t<Block\n\t\t\t\ttitle=\"Categories\"\n\t\t\t\t:actions=\"[{\n\t\t label: '+',\n\t\t function: () => router.push({\n\t\t\t\t\t\tname: 'Categories', \n\t\t\t\t\t\tparams: { \n\t\t\t\t\t\t\t_id: route.params._id || products.state.current.owner.target._id\n\t\t\t\t\t\t} \n\t\t\t\t\t})\n\t\t }]\"\n\t\t class=\"h-100 h-min-30r o-y-scroll\"\n\t\t\t>\n\t\t <Tree \n\t v-if=\"categories.state.all\" \n\t :items=\"categories.state.all\" \n\t :state=\"categories.state.all\" \n\t @update=\"updateCategoriesOrder\" \n\t\t\t\t\tv-slot=\"{ item }\"\n\t\t\t\t\tclass=\"h-zero pos-relative d-block\"\n\t >\n\t \t<Checkbox \n\t\t\t name=\"categories\"\n\t\t\t class=\"w-100 mn-t-small bg-white radius-small pd-small\"\n\t\t\t :label=\"item.name\"\n\t\t\t :value=\"item._id\"\n\t\t\t :radio=\"products.state.current.category\"\n\t\t\t @update:radio=\"event => selectCategory(item, event)\"\n\t\t\t />\n\t\t </Tree>\n\t\t\t</Block>\n\n\t\t\t<Block\n\t\t\t\ttitle=\"Parameters\"\n\t\t\t\tplaceholder=\"No parameters added yet\"\n\t\t\t\t:actions=\"[{\n\t\t\t\t\tlabel: '+',\n\t\t\t\t\tfunction: () => products.state.current.information.push({name: '', value: ''})\n\t\t\t\t}]\"\n\t\t\t\tclass=\"cols-1 gap-thin\"\n\t\t\t>\n <div \n \tclass=\"gap-thin flex-nowrap flex\" \n \tv-for=\"(item, index) in products.state.current.information\" \n \t:key=\"index\"\n > \n <Field\n v-model:field=\"item.name\"\n placeholder=\"Name\"\n class=\"w-100 bg-white radius-small pd-medium\"\n /> \n <Field\n v-model:field=\"item.value\"\n placeholder=\"Value\"\n class=\"w-100 bg-white radius-small pd-medium\"\n />\n <div class=\"radius-small h-100 i-big flex-center flex aspect-1x1 bg-red\">\n\t <IconDelete \n\t \t@click=\"() => products.state.current.information.splice(index, 1)\" \n\t \tclass=\"i-medium\"\n\t />\n\t </div>\n </div>\n\t\t\t</Block>\n\n\n\t\t\t<Block\n\t\t title=\"Ingredients\"\n\t\t\t\tplaceholder=\"No ingridients added yet\"\n\t\t\t\t:actions=\"[{\n\t label: '+',\n\t function: () => openIngredientPopup()\n\t }]\"\n\t\t >\n\t\t \t<div v-if=\"products.state.current.ingredients.length > 0\" class=\"cols-1 gap-thin\">\n\t\t\t <CardPosition \n\t\t\t v-for=\"(product, index) in products.state.current.ingredients\" \n\t\t\t :key=\"product._id\" \n\t\t\t :product=\"product\"\n\t\t\t :array=\"products.state.current.ingredients\"\n\t\t\t :products=\"Products\"\n\t\t :showPrice=\"false\"\n\t\t\t @add=\"(item) => {\n\t\t\t\t\t globals.actions.add(products.state.current.ingredients, item);\n\t\t\t\t\t closeIngredientPopup();\n\t\t\t\t\t }\"\n\t\t\t\t\t @update=\"(item) => {\n\t\t\t\t\t globals.actions.update(products.state.current.ingredients, item, index);\n\t\t\t\t\t closeIngredientPopup();\n\t\t\t\t\t }\"\n\t\t\t\t\t @delete=\"(item) => {\n\t\t\t\t\t globals.actions.delete(products.state.current.ingredients, item, index);\n\t\t\t\t\t closeIngredientPopup();\n\t\t\t\t\t }\"\n\t\t\t />\n\t\t\t </div>\n\t\t </Block>\n\n\t\t <Popup \n\t title=\"Add ingredient\" \n\t @close-popup=\"closeIngredientPopup\" \n\t :isPopupOpen=\"isOpenIngredientPopup\"\n\t class=\"bg-white w-min-30r w-max-30r radius-big pd-medium\"\n\t >\n\t <div class=\"bg-light mn-b-thin h-min-20r h-max-20r o-scroll pd-medium radius-big\">\n\t <Feed\n\t :search=\"{\n\t \tclass: 'bg-white mn-b-thin'\n\t }\"\n\t :states=\"{\n\t empty: {\n\t title: 'No Products Found',\n\t description: 'Currently, there are no such products available.'\n\t }\n\t }\"\n\t :store=\"{\n\t read: (options) => products.actions.read(options),\n\t state: null\n\t }\"\n\t :options=\"{\n\t owner: route.params._id,\n\t }\"\n\t v-slot=\"{ \n\t items \n\t }\"\n\t class=\"\"\n\t >\n\t <CardOrderItem\n\t v-for=\"(product, index) in items\" :key=\"product._id\"\n\t :editable=\"false\" \n\t :product=\"product\" \n\t @click=\"() => { \n\t let p = { ...product };\n\t p.quantity = 1;\n\t p.type = 'pcs'\n\t globals.actions.add(products.state.current.ingredients,p)\n\t closeIngredientPopup();\n\t }\"\n\t class=\"bg-white pd-thin radius-medium w-100 mn-b-thin\"\n\t />\n\t </Feed>\n\t </div>\n\t </Popup>\n\n\n\t\t</div> \n\n\t\t\t<Block\n\t\t\t\ttitle=\"Localization\"\n\t\t\t\tplaceholder=\"No localizations added yet\"\n\t\t\t\t:actions=\"[{\n\t\t\t\t\tlabel: '+',\n\t\t\t\t\tfunction: () => products.state.current.localization.push({name: '', value: ''})\n\t\t\t\t}]\"\n\t\t\t>\n <div \n \tclass=\"gap-thin mn-b-thin flex-nowrap flex\" \n \tv-for=\"(item, index) in products.state.current.localization\" \n \t:key=\"index\"\n > \n <Field\n v-model:field=\"item.name\"\n placeholder=\"Название параметра\"\n class=\"w-100 bg-white radius-small pd-medium\"\n /> \n <Field\n v-model:field=\"item.value\"\n placeholder=\"Значение параметра\"\n class=\"w-100 bg-white radius-small pd-medium\"\n />\n <div class=\"radius-small pd-small flex-center flex aspect-1x1 bg-red\">\n\t <IconDelete \n\t \t@click=\"() => products.state.current.localization.splice(index, 1)\" \n\t \tclass=\"i-medium\"\n\t />\n </div>\n </div>\n\t\t\t</Block>\n\n\t\t\t<Button \n\t\t\t\tv-if=\"route.params.product\"\n \t:submit=\"onDelete\" \n \t:callback=\"redirectTo\"\n \tclass=\"bg-red w-100 mn-t-thin\"\n >\n \t\tDelete \n \t</Button>\n\n <Button \n \t:submit=\"onSubmit\" \n \t:callback=\"redirectTo\"\n \tclass=\"w-100 bg-main\"\n >\n \t\tSave\n \t</Button>\n\n\t\n\t\t\n\t\t<!-- <Block\n\t title=\"Quantity Discount\"\n\t class=\"mn-b-semi\"\n\t :actions=\"[{\n\t\t\t\tlabel: '+',\n\t\t\t\tfunction: () => products.state.current.quantityDiscount.push({name: '', value: ''})\n\t\t\t}]\"\n\t >\n\t \t<div \n \tclass=\"gap-thin mn-b-thin flex-nowrap flex\" \n \tv-for=\"(item, index) in products.state.current.quantityDiscount\" \n \t:key=\"index\"\n > \n <Field\n v-model:field=\"item.name\"\n placeholder=\"Quantity\"\n class=\"w-100 bg-white radius-small pd-medium\"\n /> \n <Field\n v-model:field=\"item.value\"\n placeholder=\"Discount\"\n class=\"w-100 bg-white radius-small pd-medium\"\n />\n <div class=\"radius-small pd-small flex-center flex aspect-1x1 bg-red\">\n <IconDelete \n \t@click=\"() => products.state.current.quantityDiscount.splice(index, 1)\" \n \tclass=\"i-medium\"\n />\n </div>\n </div>\n\t\t</Block> -->\n\n\t\t<!-- <EditModifications\n\t\t\t:product=\"products.state.current\"\n\t\t/> -->\n\n\n\n\t\t\n\n</div>\n\t\n</template>\n\n<script setup>\n\t// Import libs\n\timport { reactive, computed, onMounted, ref } from 'vue'\n\timport { useRoute, useRouter } from 'vue-router'\n\t// Import components\n\timport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\n\timport Block from '@martyrs/src/components/Block/Block.vue';\n\timport Tab from \"@martyrs/src/components/Tab/Tab.vue\";\n\timport Field from \"@martyrs/src/components/Field/Field.vue\";\n\timport Checkbox from \"@martyrs/src/components/Checkbox/Checkbox.vue\";\n\timport Button from \"@martyrs/src/components/Button/Button.vue\";\n\timport Popup from \"@martyrs/src/components/Popup/Popup.vue\";\n\timport Feed from \"@martyrs/src/components/Feed/Feed.vue\";\n\timport Tree from \"@martyrs/src/components/Tree/Tree.vue\";\n\n\timport EditImages from '@martyrs/src/components/EditImages/EditImages.vue';\n\n\timport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\n\n \timport CardPosition from '@martyrs/src/modules/products/components/blocks/CardPosition.vue';\n import CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n\n\n\timport EditProductInfo from '@martyrs/src/modules/products/components/sections/EditProductInfo.vue';\n import EditModifications from '@martyrs/src/modules/products/components/sections/EditModifications.vue';\n \n\t// Accessing router and store\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals';\n\timport * as auth from '@martyrs/src/modules/auth/views/store/auth';\n \timport * as products from '@martyrs/src/modules/products/store/products';\n import * as categories from '@martyrs/src/modules/products/store/categories';\n\n\timport { setError } from '@martyrs/src/modules/globals/views/store/globals'\n\t\n\tconst route = useRoute()\n\tconst router = useRouter()\n\n const Products = ref(products.state.all);\n const isOpenIngredientPopup = ref(false);\n\n\n function openIngredientPopup(member) {\n\t isOpenIngredientPopup.value = true;\n\t // if (typeof member === \"number\") selectedMember.value = member;\n\t}\n\n\tfunction closeIngredientPopup() {\n\t isOpenIngredientPopup.value = false;\n\t // selectedMember.value = null;\n\t}\n\n onMounted(async() => { \n\t products.mutations.resetProduct();\n\n \tif (route.params.product) {\n\t\t await products.actions.read({ _id: route.params.product });\n\t } \n\n\t if (!products.state.current.ingredients) {\n\t \tproducts.state.current.ingredients = []\n\t }\n\n \t// Data prefetching\n\t \tcategories.state.all = await categories.actions.read({\n user: auth.state.user._id,\n rootOnly: true,\n excludeChildren: false,\n limit: 100\n })\n\n try {\n const productsResponse = await products.actions.read({\n organization: route.params._id,\n limit: 100\n });\n Products.value = productsResponse;\n } catch (error) {\n console.error('error');\n }\n })\n\n\tfunction onImagesUpdate(newImages) {\n\t products.state.current.images = newImages;\n\t}\n\t\n\tasync function onSubmit() {\n\t try {\n\t if (route.params.product) {\n\t await products.actions.update(route.params.product, products.state.current)\n\t } else {\n\t products.state.current.owner = {\n\t target: route.params._id || auth.state.user._id,\n\t type: route.params._id ? 'organization' : 'user'\n\t }\n\t \n\t products.state.current.creator = {\n\t target: auth.state.user._id,\n\t type: 'user',\n\t hidden: false\n\t }\n\t await products.actions.create(products.state.current)\n\t }\n\t } catch (error) {\n\t \tsetError({ response: { data: { errorCode: \"PRODUCT_NOT_CREATED\" }} })\n\t console.error('Product creation error:', error)\n\t // Здесь можно добавить обработку ошибки, например:\n\t // - показать уведомление пользователю\n\t // - отправить ошибку в систему мониторинга\n\t // - выполнить откат изменений при необходимости\n\t }\n\t}\n\n\tfunction onDelete() {\n\t\tproducts.actions.deleteProduct(products.state.current._id)\n\t}\n\n\tfunction redirectTo () {\n\t\trouter.push({\n\t\t\tname: 'Organization', \n\t\t\tparams: { \n\t\t\t\t_id: route.params._id\n\t\t\t} \n\t\t})\n\t}\n\n\tasync function updateCategoriesOrder(category) {\n try {\n // Получаем все категории и преобразуем их в плоский массив\n const allCategories = categories.state.all;\n const flattenedCategories = flattenCategoryTree(allCategories);\n \n // Обновляем порядок для всех категорий\n console.log('flated', flattenedCategories)\n await categories.actions.updateOrder(flattenedCategories);\n \n console.log('Categories order updated successfully');\n } catch (error) {\n console.error('Error updating categories order:', error);\n throw error;\n }\n }\n\n function selectCategory (item, event) {\n \t// products.state.current.category.push(item)\n \tproducts.state.current.category = event\n\n \tconsole.log('state catgories', products.state.current.category)\n\n\t const isSelected = products.state.current.category.includes(item._id);\n\t \n\t if (!isSelected) {\n\t // Если снимаем галочку с родителя, отключаем всех детей\n\t unselectChildren(item.children);\n\t } else {\n\t // Если включаем дочерний, включаем всех родителей\n\t selectParents(item._id, categories.state.all);\n\t }\n\t};\n\n\t// Выключаем всех дочерних при отключении родителя\n\tconst unselectChildren = (children) => {\n\t if (!children) return;\n\t children.forEach(child => {\n\t const index = products.state.current.category.indexOf(child._id);\n\t if (index !== -1) {\n\t products.state.current.category.splice(index, 1);\n\t }\n\t if (child.children?.length) {\n\t unselectChildren(child.children);\n\t }\n\t });\n\t};\n\n\t// Включаем всех родителей при выборе дочернего\n\tconst selectParents = (categoryId, items) => {\n\t // Функция для поиска прямого родителя и его ID\n\t const findParent = (childId, itemsToSearch) => {\n\t for (const item of itemsToSearch) {\n\t // Если текущий элемент содержит искомый ID в своих детях\n\t if (item.children?.some(child => child._id === childId)) {\n\t return item._id;\n\t }\n\t \n\t // Рекурсивно ищем в дочерних элементах\n\t if (item.children?.length) {\n\t const foundInChildren = findParent(childId, item.children);\n\t if (foundInChildren) return foundInChildren;\n\t }\n\t }\n\t return null; // Родитель не найден\n\t };\n\t \n\t // Рекурсивно находим всех предков и добавляем их в список\n\t let currentId = categoryId;\n\t let parentId;\n\t \n\t // Пока находим родителей, продолжаем подниматься вверх по дереву\n\t while ((parentId = findParent(currentId, items))) {\n\t if (!products.state.current.category.includes(parentId)) {\n\t products.state.current.category.push(parentId);\n\t }\n\t currentId = parentId; // Переходим к родителю более высокого уровня\n\t }\n\t};\n</script>\n\n<style lang=\"scss\">\n\t.main-photo {\n\t\tmax-width: 50%;\n\t\timg { width: 100%; }\n\t}\n</style>\n"],"names":["products.state","products.mutations","products.actions","categories.state","categories.actions","auth.state"],"mappings":"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"}
1
+ {"version":3,"file":"ProductEdit.vue.js","sources":["../../../../../../../src/modules/products/components/pages/ProductEdit.vue"],"sourcesContent":["<template>\n <div v-if=\"isPageLoaded\" class=\"w-100 bg-white pd-thin gap-thin\">\n \n <Block v-if=\"!MOBILE_APP\" class=\"flex-nowrap gap-thin flex-v-center flex\">\n <h2 class=\"t-truncate mn-r-auto\">\n {{ route.params.product ? products.state.current.name : 'Create Product' }}\n </h2>\n\n <Button \n v-if=\"route.params.product\"\n :submit=\"onDelete\" \n :callback=\"redirectTo\"\n class=\"w-10 w-max-20r w-min-8r bg-red\"\n >\n Delete \n </Button>\n\n <Button \n :submit=\"onSubmit\" \n :callback=\"redirectTo\"\n class=\"w-10 w-max-20r w-min-8r bg-main\"\n >\n Save\n </Button>\n </Block>\n\n <!-- Tab Navigation -->\n <Tab\n v-model:selected=\"activeTab\"\n v-if=\"route.params.product\"\n :tabs=\"[\n { label: 'Details', value: 'details' },\n { label: 'Variants', value: 'variants' },\n { label: 'Discounts', value: 'discounts' },\n { label: 'Localization', value: 'localization' }\n ]\"\n class=\"flex-child-default bg-light radius-medium h-max pd-thin o-x-scroll\"\n />\n\n <!-- Tab Content -->\n <div v-if=\"activeTab === 'details'\" class=\"cols-1 gap-thin\">\n <!-- Product Images -->\n <Block\n placeholder=\"The product doesn't have any images yet.\"\n class=\"h-min\"\n >\n <EditImages \n :images=\"products.state.current.images\"\n :uploadPath=\"'photos'\" \n @update:images=\"(imagesNew) => { products.state.current.images = imagesNew }\" \n />\n </Block>\n\n <!-- Product Profile -->\n <Block title=\"Profile\">\n <div class=\"mn-b-thin flex-nowrap flex gap-thin\">\n <Select \n v-model:select=\"products.state.current.status\"\n label=\"Status\"\n :options=\"[\n 'draft', \n 'published',\n 'featured',\n 'archived',\n 'removed'\n ]\"\n placeholder=\"Display product\"\n class=\"pos-relative w-100 bg-white radius-small pd-medium\"\n />\n <Select \n v-model:select=\"products.state.current.listing\"\n label=\"Type\"\n :options=\"[\n 'sale', \n 'rent',\n ]\"\n placeholder=\"Type of listing\"\n class=\"pos-relative w-100 bg-white radius-small pd-medium\"\n />\n </div>\n\n <Field \n v-model:field=\"products.state.current.name\" \n placeholder=\"Enter product name\"\n class=\"w-100 mn-b-thin bg-white radius-small pd-medium\"\n />\n <Field\n v-model:field=\"products.state.current.description\" \n placeholder=\"Enter product description\" \n class=\"w-100 bg-white radius-small pd-medium\"\n type=\"textarea\"\n />\n </Block>\n <!-- Categories -->\n <Block title=\"Categories\">\n <BlockMultiselect\n v-model=\"products.state.current.category\"\n placeholder=\"Search categories...\"\n :multiple=\"true\"\n :transform=\"(item) => ({ _id: item._id, name: item.name })\"\n :store=\"{\n read: (options) => categories.actions.read(options),\n state: categories.state\n }\"\n :options=\"{\n rootOnly: false,\n excludeChildren: false,\n limit: 50\n }\"\n :skeleton=\"{\n\t\t\t\t hide: false,\n\t\t\t\t horizontal: true,\n\t\t\t\t structure: [\n\t\t\t\t { block: 'text', size: 'large' }\n\t\t\t\t ]\n\t\t\t\t }\"\n :states=\"{\n empty: {\n title: 'No categories found',\n description: 'Try different search terms or create a new category'\n }\n }\"\n key=\"_id\"\n :label=\"item => item.name\"\n classSearch=\"bg-white radius-small\"\n classSelected=\"bg-white pd-small radius-small mn-b-thin\"\n classDropdown=\"bg-white pd-small radius-medium bs-light\"\n classItem=\"pd-small radius-small hover-bg-light cursor-pointer mn-b-thin\"\n \tclassFeed=\"h-max-30r o-scroll\"\n >\n <!-- Слот для выбранных категорий -->\n <template #selected=\"{ item, clear }\">\n\t\t\t\t\t <div class=\"flex-nowrap flex-v-center flex gap-thin\">\n\t\t\t\t\t <span class=\"t-medium\">{{ item?.name || item }}</span>\n\t\t\t\t\t <button \n\t\t\t\t\t @click.stop=\"clear\"\n\t\t\t\t\t class=\"i-small pd-micro bg-red radius-extra flex-center flex aspect-1x1 hover-scale-1\"\n\t\t\t\t\t >\n\t\t\t\t\t <IconCross class=\"i-micro fill-white\" />\n\t\t\t\t\t </button>\n\t\t\t\t\t </div>\n\t\t\t\t\t</template>\n \n <!-- Слот для элементов в списке -->\n <template #item=\"{ item }\">\n <div class=\"flex-nowrap flex-v-center flex\">\n <img \n v-if=\"item.photo\" \n :src=\"(FILE_SERVER_URL || '') + item.photo\"\n class=\"i-medium radius-small object-fit-cover mn-r-thin\"\n />\n <div class=\"w-100\">\n <p class=\"t-medium\">{{ item.name }}</p>\n <p v-if=\"item.description\" class=\"t-small t-transp\">{{ item.description }}</p>\n </div>\n </div>\n </template>\n </BlockMultiselect>\n </Block>\n\n\n <!-- Attributes -->\n <EditAttributes \n v-model:attributes=\"products.state.current.attributes\" \n />\n </div>\n\n <!-- Variants Tab -->\n <EditVariants\n\t\t\tv-if=\"activeTab === 'variants'\"\n v-model:variants=\"products.state.current.variants\" \n />\n\n <!-- Discounts Tab -->\n <EditDiscounts\n\t\t\tv-if=\"activeTab === 'discounts'\"\n v-model:discounts=\"products.state.current.discounts\"\n />\n\n <!-- Localization Tab -->\n <Block\n\t\t v-if=\"activeTab === 'localization'\"\n title=\"Localization\"\n placeholder=\"No localizations added yet\"\n :actions=\"[{\n label: '+',\n function: () => products.state.current.translations.push({locale: '', name: '', description: ''})\n }]\"\n >\n <div \n class=\"gap-thin mn-b-thin flex-nowrap flex\" \n v-for=\"(item, index) in products.state.current.translations\" \n :key=\"index\"\n > \n <Field\n v-model:field=\"item.locale\"\n placeholder=\"Locale (en, ru, etc.)\"\n class=\"w-30 bg-white radius-small pd-medium\"\n /> \n <Field\n v-model:field=\"item.name\"\n placeholder=\"Product name\"\n class=\"w-100 bg-white radius-small pd-medium\"\n />\n <Field\n v-model:field=\"item.description\"\n placeholder=\"Product description\"\n class=\"w-100 bg-white radius-small pd-medium\"\n />\n <div class=\"radius-small pd-small flex-center flex aspect-1x1 bg-red cursor-pointer hover-scale-1\">\n <IconDelete \n @click=\"() => products.state.current.translations.splice(index, 1)\" \n class=\"i-medium\"\n />\n </div>\n </div>\n </Block>\n\n <!-- Bottom Action Buttons -->\n <div class=\"flex-nowrap flex gap-thin\">\n <Button \n v-if=\"route.params.product\"\n :submit=\"onDelete\" \n :callback=\"redirectTo\"\n class=\"bg-red t-white w-100\"\n >\n Delete \n </Button>\n\n <Button \n :submit=\"onSubmit\" \n :callback=\"redirectTo\"\n class=\"w-100 bg-main\"\n >\n Save\n </Button>\n </div>\n </div>\n</template>\n\n<script setup>\n// Import libs\nimport { reactive, computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\n\n// Import components\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Tab from \"@martyrs/src/components/Tab/Tab.vue\";\nimport Field from \"@martyrs/src/components/Field/Field.vue\";\nimport Select from '@martyrs/src/components/Select/Select.vue';\nimport Checkbox from \"@martyrs/src/components/Checkbox/Checkbox.vue\";\nimport Button from \"@martyrs/src/components/Button/Button.vue\";\nimport Tree from \"@martyrs/src/components/Tree/Tree.vue\";\nimport EditImages from '@martyrs/src/components/EditImages/EditImages.vue';\n\nimport BlockMultiselect from '@martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\n\nimport EditVariants from '@martyrs/src/modules/products/components/sections/EditVariants.vue';\nimport EditAttributes from '@martyrs/src/modules/products/components/sections/EditAttributes.vue';\nimport EditDiscounts from '@martyrs/src/modules/products/components/sections/EditDiscounts.vue';\nimport EditCategories from '@martyrs/src/modules/products/components/sections/EditCategories.vue';\n\n\n// Accessing router and store\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\nimport * as products from '@martyrs/src/modules/products/store/products.js';\nimport * as categories from '@martyrs/src/modules/products/store/categories.js';\n\nimport { setError } from '@martyrs/src/modules/globals/views/store/globals.js'\n\nconst route = useRoute()\nconst router = useRouter()\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\nlet isPageLoaded = ref(false)\nlet activeTab = ref('details')\n\nonMounted(async() => { \n emits('page-loading');\n\n products.mutations.resetProduct();\n\n if (route.params.product) {\n await products.actions.read({ _id: route.params.product, lookup: ['variants','categories'] });\n } else {\n // Создаем дефолтный вариант для нового товара\n if (!products.state.current.variants || products.state.current.variants.length === 0) {\n products.state.current.variants = [{\n name: 'Default',\n sku: '',\n images: [],\n price: 0,\n cost: 0,\n quantity: 1,\n unit: 'pcs',\n available: 0,\n ingredients: [],\n attributes: []\n }];\n }\n }\n\n // Убедимся, что массивы инициализированы\n if (!products.state.current.translations) {\n products.state.current.translations = []\n }\n if (!products.state.current.discounts) {\n products.state.current.discounts = []\n }\n\n try {\n // Data prefetching\n categories.state.all = await categories.actions.read({\n user: auth.state.user._id,\n rootOnly: true,\n excludeChildren: false,\n limit: 100\n })\n } catch (error) {\n console.error('error loading categories:', error);\n }\n\n emits('page-loaded');\n isPageLoaded.value = true\n})\n\nasync function onSubmit() {\n try {\n // Проверка на наличие хотя бы одного варианта\n if (!products.state.current.variants || products.state.current.variants.length === 0) {\n setError({ response: { data: { errorCode: \"PRODUCT_MUST_HAVE_VARIANT\" }} })\n return;\n }\n\n if (route.params.product) {\n await products.actions.update(route.params.product, products.state.current)\n } else {\n products.state.current.owner = {\n target: route.params._id || auth.state.user._id,\n type: route.params._id ? 'organization' : 'user'\n }\n \n products.state.current.creator = {\n target: auth.state.user._id,\n type: 'user',\n hidden: false\n }\n await products.actions.create(products.state.current)\n }\n \n redirectTo()\n } catch (error) {\n setError({ response: { data: { errorCode: \"PRODUCT_NOT_CREATED\" }} })\n console.error('Product creation error:', error)\n }\n}\n\nfunction onDelete() {\n products.actions.deleteProduct(products.state.current._id)\n}\n\nfunction redirectTo() {\n router.push({\n name: route.params._id ? 'Organization' : 'Products', \n params: route.params._id ? { _id: route.params._id } : {}\n })\n}\n</script>"],"names":["products.mutations","products.actions","products.state","categories.state","categories.actions","auth.state"],"mappings":"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"}
@@ -3,7 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const vueRouter = require("vue-router");
5
5
  const vueI18n = require("vue-i18n");
6
- const Loader = require("../../../../components/Loader/Loader.vue2.cjs");
6
+ const Loader = require("../../../../components/Loader/Loader.vue.cjs");
7
7
  ;/* empty css */
8
8
  const FieldBig = require("../../../../components/FieldBig/FieldBig.vue.cjs");
9
9
  const SectionProduct = require("../sections/SectionProduct.vue.cjs");
@@ -92,13 +92,13 @@ const _sfc_main = {
92
92
  vue.createVNode(SectionProduct.default, {
93
93
  product: products.state.current,
94
94
  recommendation: products.state.current.recommendation,
95
- class: "bg-dark-transp-50 pd-big radius-big"
95
+ class: "bg-dark-transp-50 pd-big radius-medium"
96
96
  }, null, 8, ["product", "recommendation"])
97
97
  ])) : vue.createCommentVNode("", true)
98
98
  ]);
99
99
  };
100
100
  }
101
101
  };
102
- const ProductRecommendation = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-0927c2d0"]]);
102
+ const ProductRecommendation = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-ea639d49"]]);
103
103
  exports.default = ProductRecommendation;
104
104
  //# sourceMappingURL=ProductRecommmendation.vue.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProductRecommmendation.vue.cjs","sources":["../../../../../../../src/modules/products/components/pages/ProductRecommmendation.vue"],"sourcesContent":["<template>\n <div id=\"product-recommendation\" class=\"h-min-100 pd-thin t-white bg-black\">\n <Loader v-if=\"loading\" :status=\"loadingText\" class=\"pos-fixed\"/>\n\n <div v-if=\"!loading && !showInput\" class=\"section\">\n\n <div v-if=\"!loading\" class=\"mn-b-thin\">\n <FieldBig \n :input=\"inputValue\" \n :loopTyping=\"false\"\n :enableTyping=\"false\"\n :placeholder=\"t('placeholder')\"\n :action=\"t('action')\"\n @update:input=\"inputValue = $event\"\n @action=\"submitInput\"\n class=\"t-white bg-dark-transp-50 w-100\"\n />\n </div>\n\n <SectionProduct \n :product=\"products.state.current\" \n :recommendation=\"products.state.current.recommendation\" \n class=\"bg-dark-transp-50 pd-big radius-big\"\n />\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, watchEffect } from 'vue'\nimport { useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport Loader from '@martyrs/src/components/Loader/Loader.vue'\nimport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\nimport FieldBig from \"@martyrs/src/components/FieldBig/FieldBig.vue\";\nimport SectionProduct from '@martyrs/src/modules/products/components/sections/SectionProduct.vue'\nimport HeroRecommendation from '@martyrs/src/modules/products/components/sections/HeroRecommendation.vue'\n\nimport * as products from '@martyrs/src/modules/products/store/products';\n\nconst router = useRouter()\nconst loading = ref(true)\nconst showInput = ref(false)\nconst loadingTexts = ref([\n \"Loading all we know about the buds\",\n \"Processing the cannabis universe\",\n \"Creating a strain of knowledge\",\n \"Harvesting taste insights\",\n])\n\nconst text = {\n messages: {\n en: {\n TITLE: \"Increase Your High,<br><b class='t-white'>Powered by AI Budtender</b>\",\n DESCRIPTION: \"AI's got your chill, bro. We're picking out the most cosmic weed strains based on your desired vibe:\",\n placeholder: 'Describe your desired high, bro...',\n action: \"Transmit →\",\n },\n ru: {\n TITLE: \"Персональный Накур,<br><b class='t-white'>Напрямую от AI</b>\",\n DESCRIPTION: \"AI на страже твоего релакса, бро. Мы подбираем самые космические сорта травы, исходя из твоего желаемого настроения:\",\n placeholder: 'Опиши свой желамый хай, bro...',\n action: \"Передать →\",\n }\n }\n}\n\nconst { t } = useI18n(text)\n\nconst loadingText = ref(loadingTexts.value[0])\n\nlet mood = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nwatchEffect(async () => {\n mood.value = router.currentRoute.value.query.mood || t('Recommend me something')\n loading.value = true\n await products.actions.submitMood(mood.value)\n loading.value = false\n})\n\nonMounted(async () => {\n // await products.actions.submitMood(mood.value)\n // loading.value = false\n})\n\nsetInterval(() => {\n const index = loadingTexts.value.indexOf(loadingText.value)\n loadingText.value = loadingTexts.value[(index + 1) % loadingTexts.value.length]\n}, 2000)\n\nlet inputValue = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nfunction submitInput() {\n router.push({ name: 'Product Recommmendation', query: { mood: inputValue.value } })\n}\n\n\nfunction tryAgain() {\n loading.value = true\n showInput.value = true\n}\n\nfunction hideInput() {\n showInput.value = false\n}\n</script>\n\n<style scoped>\n/* Add your styles here */\n</style>\n"],"names":["useRouter","ref","useI18n","watchEffect","products.actions","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,UAAM,SAASA,UAAS,UAAA;AACxB,UAAM,UAAUC,IAAG,IAAC,IAAI;AACxB,UAAM,YAAYA,IAAG,IAAC,KAAK;AAC3B,UAAM,eAAeA,IAAAA,IAAI;AAAA,MACrB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,CAAC;AAED,UAAM,OAAO;AAAA,MACT,UAAU;AAAA,QACN,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACX;AAAA,QACD,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACpB;AAAA,MACA;AAAA,IACA;AAEA,UAAM,EAAE,EAAC,IAAKC,QAAAA,QAAQ,IAAI;AAE1B,UAAM,cAAcD,IAAG,IAAC,aAAa,MAAM,CAAC,CAAC;AAE7C,QAAI,OAAOA,IAAAA,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAElFE,QAAAA,YAAY,YAAY;AACpB,WAAK,QAAQ,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB;AAC/E,cAAQ,QAAQ;AAChB,YAAMC,SAAgB,QAAC,WAAW,KAAK,KAAK;AAC5C,cAAQ,QAAQ;AAAA,IACpB,CAAC;AAEDC,QAAAA,UAAU,YAAY;AAAA,IAGtB,CAAC;AAED,gBAAY,MAAM;AACd,YAAM,QAAQ,aAAa,MAAM,QAAQ,YAAY,KAAK;AAC1D,kBAAY,QAAQ,aAAa,OAAO,QAAQ,KAAK,aAAa,MAAM,MAAM;AAAA,IAClF,GAAG,GAAI;AAEP,QAAI,aAAaJ,IAAAA,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAExF,aAAS,cAAc;AACnB,aAAO,KAAK,EAAE,MAAM,2BAA2B,OAAO,EAAE,MAAM,WAAW,QAAS,CAAA;AAAA,IACtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ProductRecommmendation.vue.cjs","sources":["../../../../../../../src/modules/products/components/pages/ProductRecommmendation.vue"],"sourcesContent":["<template>\n <div id=\"product-recommendation\" class=\"h-min-100 pd-thin t-white bg-black\">\n <Loader v-if=\"loading\" :status=\"loadingText\" class=\"pos-fixed\"/>\n\n <div v-if=\"!loading && !showInput\" class=\"section\">\n\n <div v-if=\"!loading\" class=\"mn-b-thin\">\n <FieldBig \n :input=\"inputValue\" \n :loopTyping=\"false\"\n :enableTyping=\"false\"\n :placeholder=\"t('placeholder')\"\n :action=\"t('action')\"\n @update:input=\"inputValue = $event\"\n @action=\"submitInput\"\n class=\"t-white bg-dark-transp-50 w-100\"\n />\n </div>\n\n <SectionProduct \n :product=\"products.state.current\" \n :recommendation=\"products.state.current.recommendation\" \n class=\"bg-dark-transp-50 pd-big radius-medium\"\n />\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, watchEffect } from 'vue'\nimport { useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport Loader from '@martyrs/src/components/Loader/Loader.vue'\nimport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\nimport FieldBig from \"@martyrs/src/components/FieldBig/FieldBig.vue\";\nimport SectionProduct from '@martyrs/src/modules/products/components/sections/SectionProduct.vue'\nimport HeroRecommendation from '@martyrs/src/modules/products/components/sections/HeroRecommendation.vue'\n\nimport * as products from '@martyrs/src/modules/products/store/products.js';\n\nconst router = useRouter()\nconst loading = ref(true)\nconst showInput = ref(false)\nconst loadingTexts = ref([\n \"Loading all we know about the buds\",\n \"Processing the cannabis universe\",\n \"Creating a strain of knowledge\",\n \"Harvesting taste insights\",\n])\n\nconst text = {\n messages: {\n en: {\n TITLE: \"Increase Your High,<br><b class='t-white'>Powered by AI Budtender</b>\",\n DESCRIPTION: \"AI's got your chill, bro. We're picking out the most cosmic weed strains based on your desired vibe:\",\n placeholder: 'Describe your desired high, bro...',\n action: \"Transmit →\",\n },\n ru: {\n TITLE: \"Персональный Накур,<br><b class='t-white'>Напрямую от AI</b>\",\n DESCRIPTION: \"AI на страже твоего релакса, бро. Мы подбираем самые космические сорта травы, исходя из твоего желаемого настроения:\",\n placeholder: 'Опиши свой желамый хай, bro...',\n action: \"Передать →\",\n }\n }\n}\n\nconst { t } = useI18n(text)\n\nconst loadingText = ref(loadingTexts.value[0])\n\nlet mood = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nwatchEffect(async () => {\n mood.value = router.currentRoute.value.query.mood || t('Recommend me something')\n loading.value = true\n await products.actions.submitMood(mood.value)\n loading.value = false\n})\n\nonMounted(async () => {\n // await products.actions.submitMood(mood.value)\n // loading.value = false\n})\n\nsetInterval(() => {\n const index = loadingTexts.value.indexOf(loadingText.value)\n loadingText.value = loadingTexts.value[(index + 1) % loadingTexts.value.length]\n}, 2000)\n\nlet inputValue = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nfunction submitInput() {\n router.push({ name: 'Product Recommmendation', query: { mood: inputValue.value } })\n}\n\n\nfunction tryAgain() {\n loading.value = true\n showInput.value = true\n}\n\nfunction hideInput() {\n showInput.value = false\n}\n</script>\n\n<style scoped>\n/* Add your styles here */\n</style>\n"],"names":["useRouter","ref","useI18n","watchEffect","products.actions","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,UAAM,SAASA,UAAS,UAAA;AACxB,UAAM,UAAUC,IAAG,IAAC,IAAI;AACxB,UAAM,YAAYA,IAAG,IAAC,KAAK;AAC3B,UAAM,eAAeA,IAAAA,IAAI;AAAA,MACrB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,CAAC;AAED,UAAM,OAAO;AAAA,MACT,UAAU;AAAA,QACN,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACX;AAAA,QACD,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACpB;AAAA,MACA;AAAA,IACA;AAEA,UAAM,EAAE,EAAC,IAAKC,QAAAA,QAAQ,IAAI;AAE1B,UAAM,cAAcD,IAAG,IAAC,aAAa,MAAM,CAAC,CAAC;AAE7C,QAAI,OAAOA,IAAAA,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAElFE,QAAAA,YAAY,YAAY;AACpB,WAAK,QAAQ,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB;AAC/E,cAAQ,QAAQ;AAChB,YAAMC,SAAgB,QAAC,WAAW,KAAK,KAAK;AAC5C,cAAQ,QAAQ;AAAA,IACpB,CAAC;AAEDC,QAAAA,UAAU,YAAY;AAAA,IAGtB,CAAC;AAED,gBAAY,MAAM;AACd,YAAM,QAAQ,aAAa,MAAM,QAAQ,YAAY,KAAK;AAC1D,kBAAY,QAAQ,aAAa,OAAO,QAAQ,KAAK,aAAa,MAAM,MAAM;AAAA,IAClF,GAAG,GAAI;AAEP,QAAI,aAAaJ,IAAAA,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAExF,aAAS,cAAc;AACnB,aAAO,KAAK,EAAE,MAAM,2BAA2B,OAAO,EAAE,MAAM,WAAW,QAAS,CAAA;AAAA,IACtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { ref, watchEffect, onMounted, createElementBlock, openBlock, createBlock, createCommentVNode, createVNode, unref, isRef } from "vue";
2
2
  import { useRouter } from "vue-router";
3
3
  import { useI18n } from "vue-i18n";
4
- import Loader from "../../../../components/Loader/Loader.vue2.js";
4
+ import Loader from "../../../../components/Loader/Loader.vue.js";
5
5
  /* empty css */
6
6
  import _sfc_main$1 from "../../../../components/FieldBig/FieldBig.vue.js";
7
7
  import _sfc_main$2 from "../sections/SectionProduct.vue.js";
@@ -90,14 +90,14 @@ const _sfc_main = {
90
90
  createVNode(_sfc_main$2, {
91
91
  product: state.current,
92
92
  recommendation: state.current.recommendation,
93
- class: "bg-dark-transp-50 pd-big radius-big"
93
+ class: "bg-dark-transp-50 pd-big radius-medium"
94
94
  }, null, 8, ["product", "recommendation"])
95
95
  ])) : createCommentVNode("", true)
96
96
  ]);
97
97
  };
98
98
  }
99
99
  };
100
- const ProductRecommendation = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-0927c2d0"]]);
100
+ const ProductRecommendation = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-ea639d49"]]);
101
101
  export {
102
102
  ProductRecommendation as default
103
103
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ProductRecommmendation.vue.js","sources":["../../../../../../../src/modules/products/components/pages/ProductRecommmendation.vue"],"sourcesContent":["<template>\n <div id=\"product-recommendation\" class=\"h-min-100 pd-thin t-white bg-black\">\n <Loader v-if=\"loading\" :status=\"loadingText\" class=\"pos-fixed\"/>\n\n <div v-if=\"!loading && !showInput\" class=\"section\">\n\n <div v-if=\"!loading\" class=\"mn-b-thin\">\n <FieldBig \n :input=\"inputValue\" \n :loopTyping=\"false\"\n :enableTyping=\"false\"\n :placeholder=\"t('placeholder')\"\n :action=\"t('action')\"\n @update:input=\"inputValue = $event\"\n @action=\"submitInput\"\n class=\"t-white bg-dark-transp-50 w-100\"\n />\n </div>\n\n <SectionProduct \n :product=\"products.state.current\" \n :recommendation=\"products.state.current.recommendation\" \n class=\"bg-dark-transp-50 pd-big radius-big\"\n />\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, watchEffect } from 'vue'\nimport { useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport Loader from '@martyrs/src/components/Loader/Loader.vue'\nimport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\nimport FieldBig from \"@martyrs/src/components/FieldBig/FieldBig.vue\";\nimport SectionProduct from '@martyrs/src/modules/products/components/sections/SectionProduct.vue'\nimport HeroRecommendation from '@martyrs/src/modules/products/components/sections/HeroRecommendation.vue'\n\nimport * as products from '@martyrs/src/modules/products/store/products';\n\nconst router = useRouter()\nconst loading = ref(true)\nconst showInput = ref(false)\nconst loadingTexts = ref([\n \"Loading all we know about the buds\",\n \"Processing the cannabis universe\",\n \"Creating a strain of knowledge\",\n \"Harvesting taste insights\",\n])\n\nconst text = {\n messages: {\n en: {\n TITLE: \"Increase Your High,<br><b class='t-white'>Powered by AI Budtender</b>\",\n DESCRIPTION: \"AI's got your chill, bro. We're picking out the most cosmic weed strains based on your desired vibe:\",\n placeholder: 'Describe your desired high, bro...',\n action: \"Transmit →\",\n },\n ru: {\n TITLE: \"Персональный Накур,<br><b class='t-white'>Напрямую от AI</b>\",\n DESCRIPTION: \"AI на страже твоего релакса, бро. Мы подбираем самые космические сорта травы, исходя из твоего желаемого настроения:\",\n placeholder: 'Опиши свой желамый хай, bro...',\n action: \"Передать →\",\n }\n }\n}\n\nconst { t } = useI18n(text)\n\nconst loadingText = ref(loadingTexts.value[0])\n\nlet mood = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nwatchEffect(async () => {\n mood.value = router.currentRoute.value.query.mood || t('Recommend me something')\n loading.value = true\n await products.actions.submitMood(mood.value)\n loading.value = false\n})\n\nonMounted(async () => {\n // await products.actions.submitMood(mood.value)\n // loading.value = false\n})\n\nsetInterval(() => {\n const index = loadingTexts.value.indexOf(loadingText.value)\n loadingText.value = loadingTexts.value[(index + 1) % loadingTexts.value.length]\n}, 2000)\n\nlet inputValue = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nfunction submitInput() {\n router.push({ name: 'Product Recommmendation', query: { mood: inputValue.value } })\n}\n\n\nfunction tryAgain() {\n loading.value = true\n showInput.value = true\n}\n\nfunction hideInput() {\n showInput.value = false\n}\n</script>\n\n<style scoped>\n/* Add your styles here */\n</style>\n"],"names":["products.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,UAAM,SAAS,UAAS;AACxB,UAAM,UAAU,IAAI,IAAI;AACxB,UAAM,YAAY,IAAI,KAAK;AAC3B,UAAM,eAAe,IAAI;AAAA,MACrB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,CAAC;AAED,UAAM,OAAO;AAAA,MACT,UAAU;AAAA,QACN,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACX;AAAA,QACD,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACpB;AAAA,MACA;AAAA,IACA;AAEA,UAAM,EAAE,EAAC,IAAK,QAAQ,IAAI;AAE1B,UAAM,cAAc,IAAI,aAAa,MAAM,CAAC,CAAC;AAE7C,QAAI,OAAO,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAElF,gBAAY,YAAY;AACpB,WAAK,QAAQ,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB;AAC/E,cAAQ,QAAQ;AAChB,YAAMA,QAAiB,WAAW,KAAK,KAAK;AAC5C,cAAQ,QAAQ;AAAA,IACpB,CAAC;AAED,cAAU,YAAY;AAAA,IAGtB,CAAC;AAED,gBAAY,MAAM;AACd,YAAM,QAAQ,aAAa,MAAM,QAAQ,YAAY,KAAK;AAC1D,kBAAY,QAAQ,aAAa,OAAO,QAAQ,KAAK,aAAa,MAAM,MAAM;AAAA,IAClF,GAAG,GAAI;AAEP,QAAI,aAAa,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAExF,aAAS,cAAc;AACnB,aAAO,KAAK,EAAE,MAAM,2BAA2B,OAAO,EAAE,MAAM,WAAW,QAAS,CAAA;AAAA,IACtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ProductRecommmendation.vue.js","sources":["../../../../../../../src/modules/products/components/pages/ProductRecommmendation.vue"],"sourcesContent":["<template>\n <div id=\"product-recommendation\" class=\"h-min-100 pd-thin t-white bg-black\">\n <Loader v-if=\"loading\" :status=\"loadingText\" class=\"pos-fixed\"/>\n\n <div v-if=\"!loading && !showInput\" class=\"section\">\n\n <div v-if=\"!loading\" class=\"mn-b-thin\">\n <FieldBig \n :input=\"inputValue\" \n :loopTyping=\"false\"\n :enableTyping=\"false\"\n :placeholder=\"t('placeholder')\"\n :action=\"t('action')\"\n @update:input=\"inputValue = $event\"\n @action=\"submitInput\"\n class=\"t-white bg-dark-transp-50 w-100\"\n />\n </div>\n\n <SectionProduct \n :product=\"products.state.current\" \n :recommendation=\"products.state.current.recommendation\" \n class=\"bg-dark-transp-50 pd-big radius-medium\"\n />\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, watchEffect } from 'vue'\nimport { useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\nimport Loader from '@martyrs/src/components/Loader/Loader.vue'\nimport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\nimport FieldBig from \"@martyrs/src/components/FieldBig/FieldBig.vue\";\nimport SectionProduct from '@martyrs/src/modules/products/components/sections/SectionProduct.vue'\nimport HeroRecommendation from '@martyrs/src/modules/products/components/sections/HeroRecommendation.vue'\n\nimport * as products from '@martyrs/src/modules/products/store/products.js';\n\nconst router = useRouter()\nconst loading = ref(true)\nconst showInput = ref(false)\nconst loadingTexts = ref([\n \"Loading all we know about the buds\",\n \"Processing the cannabis universe\",\n \"Creating a strain of knowledge\",\n \"Harvesting taste insights\",\n])\n\nconst text = {\n messages: {\n en: {\n TITLE: \"Increase Your High,<br><b class='t-white'>Powered by AI Budtender</b>\",\n DESCRIPTION: \"AI's got your chill, bro. We're picking out the most cosmic weed strains based on your desired vibe:\",\n placeholder: 'Describe your desired high, bro...',\n action: \"Transmit →\",\n },\n ru: {\n TITLE: \"Персональный Накур,<br><b class='t-white'>Напрямую от AI</b>\",\n DESCRIPTION: \"AI на страже твоего релакса, бро. Мы подбираем самые космические сорта травы, исходя из твоего желаемого настроения:\",\n placeholder: 'Опиши свой желамый хай, bro...',\n action: \"Передать →\",\n }\n }\n}\n\nconst { t } = useI18n(text)\n\nconst loadingText = ref(loadingTexts.value[0])\n\nlet mood = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nwatchEffect(async () => {\n mood.value = router.currentRoute.value.query.mood || t('Recommend me something')\n loading.value = true\n await products.actions.submitMood(mood.value)\n loading.value = false\n})\n\nonMounted(async () => {\n // await products.actions.submitMood(mood.value)\n // loading.value = false\n})\n\nsetInterval(() => {\n const index = loadingTexts.value.indexOf(loadingText.value)\n loadingText.value = loadingTexts.value[(index + 1) % loadingTexts.value.length]\n}, 2000)\n\nlet inputValue = ref(router.currentRoute.value.query.mood || t('Recommend me something'))\n\nfunction submitInput() {\n router.push({ name: 'Product Recommmendation', query: { mood: inputValue.value } })\n}\n\n\nfunction tryAgain() {\n loading.value = true\n showInput.value = true\n}\n\nfunction hideInput() {\n showInput.value = false\n}\n</script>\n\n<style scoped>\n/* Add your styles here */\n</style>\n"],"names":["products.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAwCA,UAAM,SAAS,UAAS;AACxB,UAAM,UAAU,IAAI,IAAI;AACxB,UAAM,YAAY,IAAI,KAAK;AAC3B,UAAM,eAAe,IAAI;AAAA,MACrB;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACJ,CAAC;AAED,UAAM,OAAO;AAAA,MACT,UAAU;AAAA,QACN,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACX;AAAA,QACD,IAAI;AAAA,UACA,OAAO;AAAA,UACP,aAAa;AAAA,UACb,aAAa;AAAA,UACb,QAAQ;AAAA,QACpB;AAAA,MACA;AAAA,IACA;AAEA,UAAM,EAAE,EAAC,IAAK,QAAQ,IAAI;AAE1B,UAAM,cAAc,IAAI,aAAa,MAAM,CAAC,CAAC;AAE7C,QAAI,OAAO,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAElF,gBAAY,YAAY;AACpB,WAAK,QAAQ,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB;AAC/E,cAAQ,QAAQ;AAChB,YAAMA,QAAiB,WAAW,KAAK,KAAK;AAC5C,cAAQ,QAAQ;AAAA,IACpB,CAAC;AAED,cAAU,YAAY;AAAA,IAGtB,CAAC;AAED,gBAAY,MAAM;AACd,YAAM,QAAQ,aAAa,MAAM,QAAQ,YAAY,KAAK;AAC1D,kBAAY,QAAQ,aAAa,OAAO,QAAQ,KAAK,aAAa,MAAM,MAAM;AAAA,IAClF,GAAG,GAAI;AAEP,QAAI,aAAa,IAAI,OAAO,aAAa,MAAM,MAAM,QAAQ,EAAE,wBAAwB,CAAC;AAExF,aAAS,cAAc;AACnB,aAAO,KAAK,EAAE,MAAM,2BAA2B,OAAO,EAAE,MAAM,WAAW,QAAS,CAAA;AAAA,IACtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -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 vueRouter = require("vue-router");
5
- const Tab = require("../../../../components/Tab/Tab.vue.cjs");
5
+ const Tab = require("../../../../components/Tab/Tab.vue2.cjs");
6
6
  const Feed = require("../../../../components/Feed/Feed.vue.cjs");
7
7
  ;/* empty css */
8
8
  require("vue-i18n");
@@ -21,9 +21,9 @@ const _hoisted_2 = {
21
21
  key: 0,
22
22
  class: "pd-medium flex-v-center flex-nowrap flex"
23
23
  };
24
- const _hoisted_3 = { class: "cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin" };
24
+ const _hoisted_3 = { class: "cols-2-1_3 br-1px br-solid br-light h-100 z-index-3 pos-relative radius-medium" };
25
25
  const _hoisted_4 = { class: "o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative" };
26
- const _hoisted_5 = { class: "w-100 h-max pos-relative o-hidden" };
26
+ const _hoisted_5 = { class: "w-100 pd-thin h-max pos-relative o-hidden" };
27
27
  const _hoisted_6 = { class: "pos-relative w-100 z-index-3 radius-tl-big radius-tr-big" };
28
28
  const _sfc_main = {
29
29
  __name: "Products",
@@ -1 +1 @@
1
- {"version":3,"file":"Products.vue.cjs","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"products.state.filter\"\n :options=\"products.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"w-100 h-max pos-relative o-hidden\">\n <slot></slot>\n <div class=\"pos-relative w-100 z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"debouncedSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light mn-b-thin h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"products.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(products.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 pos-relative w-100 rows-1 gap-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as products from '@martyrs/src/modules/products/store/products';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace';\n import * as categories from '@martyrs/src/modules/products/store/categories';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n products.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n products.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n products.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n products.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = products.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n products.state.filter.options[index] = categoryOption;\n } else {\n products.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => products.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => products.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((search) => {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n}, 500);\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["useRoute","useRouter","ref","products.state","watch","globals.state","IconPlus","auth.state","onMounted","categories.actions","onUnmounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsIE,UAAM,QAAQA,UAAQ,SAAA;AACtB,UAAM,SAASC,UAAS,UAAA;AAGxB,UAAM,cAAcC,IAAG,IAAC,MAAM,MAAM,cAAc,MAAM,MAAM,cAAc,KAAK;AAEjF,QAAI,MAAM,SAAS,eAAgB,OAAM,MAAM,cAAc,YAAY;AAEzE,QAAI,MAAM,OAAO;AACf,YAAM,QAAQ,MAAM;AAEpBC,eAAAA,MAAe,OAAO,SAAS,aAAa,MAAM,aAAa,MAAM,WAAW,MAAM,GAAG,IAAI,CAAE;AAC/FA,eAAAA,MAAe,OAAO,SAAS,SAAS,MAAM,SAAS,MAAM,OAAO,MAAM,GAAG,IAAI,CAAE;AACnFA,eAAAA,MAAe,OAAO,SAAS,WAAW,MAAM,WAAW,MAAM,SAAS,MAAM,GAAG,IAAI,CAAE;AACzFA,eAAAA,MAAe,OAAO,SAAS,QAAQ,MAAM,QAAQ,MAAM,MAAM,MAAM,GAAG,IAAI,CAAE;AAAA,IACpF;AAGEC,cAAM,aAAa,CAAC,aAAa;AAC/B,UAAI,MAAM,SAAS,eAAgB,QAAO,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,aAAa,SAAU,EAAA,CAAE;AAAA,IAC1G,CAAG;AAEDC,kBAAc,eAAe,UAAU,CAAC;AAAA,MACtC,WAAWC,SAAQ;AAAA,MACnB,OAAO;AAAA,QACL,MAAM;AAAA,MACP;AAAA,MACD,WAAW,MAAMC,KAAU,MAAC,QAAQA,KAAU,MAAC,KAAK;AAAA,MACpD,QAAQ,MAAM,MAAM,OAAO,MAAM,OAAO,KAAK,EAAE,MAAM,2BAA2B,QAAQ,EAAE,KAAK,MAAM,OAAO,IAAG,EAAG,CAAA,IAAI,OAAO,KAAK,EAAE,MAAM,aAAc,CAAA;AAAA,IAC5J,CAAG,GAEDC,IAAAA,UAAU,YAAY;AACpB,UAAI,mBAAmB,MAAMC,WAAkB,QAAC,KAAK,EAAC,UAAS,KAAI,CAAC;AAEpE,yBAAmB,iBAAiB,IAAI,eAAa;AAAA,QACnD,OAAO,SAAS;AAAA,QAChB,OAAO,SAAS;AAAA,MACtB,EAAM;AAEF,YAAM,QAAQN,eAAe,OAAO,QAAQ,UAAU,YAAU,OAAO,UAAU,YAAY;AAE7F,YAAM,iBAAiB;AAAA,QACrB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,SAAS;AAAA,MACV;AAED,UAAI,UAAU,IAAI;AACdA,iBAAAA,MAAe,OAAO,QAAQ,KAAK,IAAI;AAAA,MAC/C,OAAW;AACHA,iBAAAA,MAAe,OAAO,QAAQ,QAAQ,cAAc;AAAA,MAC5D;AAAA,IACG,CAAA;AAEDO,QAAAA,YAAY,MAAM;AAChBL,oBAAc,eAAe,UAAU,CAAE;AAAA,IAC7C,CAAG;AAEDD,QAAAA,MAAM,MAAMD,SAAc,MAAC,MAAM,CAAC,cAAc,iBAAiB;AAC/D,UAAI,QAAQ,EAAE,GAAG,MAAM,MAAK;AAE5B,YAAM,YAAY,aAAa;AAC/B,YAAM,YAAY,aAAa;AAG/B,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC5B,GAAK,EAAE,MAAM,MAAM;AAGjBC,QAAK,MAAC,MAAMD,SAAAA,MAAe,OAAO,UAAU,CAAC,gBAAgB,mBAAmB;AAE9E,YAAM,QAAQ,EAAE,GAAG,MAAM,MAAO;AAGhC,aAAO,KAAK,cAAc,EAAE,QAAQ,SAAO;AACzC,YAAI,MAAM,GAAG,GAAG;AACd,iBAAO,MAAM,GAAG;AAAA,QACxB;AAAA,MACA,CAAK;AAGD,YAAM,iBAAiB,OAAO;AAAA,QAC5B,OAAO,QAAQ,cAAc,EAC1B,OAAO,CAAC,CAAC,KAAK,KAAK,MAAM,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,CAAC,EACjE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,MAAM,KAAK,GAAG,CAAC,CAAC;AAAA,MAChD;AAED,aAAO,MAAM;AACb,aAAO,OAAO,OAAO,cAAc;AAGnC,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC5B,GAAK,EAAE,MAAM,KAAM,CAAA;AAGnB,aAAS,SAAS,IAAI,OAAO;AAC3B,UAAI,YAAY;AAChB,aAAO,IAAI,SAAS;AAClB,qBAAa,SAAS;AACtB,oBAAY,WAAW,MAAM,GAAG,GAAG,IAAI,GAAG,KAAK;AAAA,MAChD;AAAA,IACH;AAEA,UAAM,kBAAkB,SAAS,CAAC,WAAW;AAC5C,UAAI,QAAQ,EAAE,GAAG,MAAM,MAAK;AAE3B,YAAM,SAAS;AAEf,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC1B,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Products.vue.cjs","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-1px br-solid br-light h-100 z-index-3 pos-relative radius-medium\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"products.state.filter\"\n :options=\"products.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"w-100 pd-thin h-max pos-relative o-hidden\">\n <slot></slot>\n <div class=\"pos-relative w-100 z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"debouncedSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light mn-b-thin h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"products.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(products.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 pos-relative w-100 rows-1 gap-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n import * as products from '@martyrs/src/modules/products/store/products.js';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace.js';\n import * as categories from '@martyrs/src/modules/products/store/categories.js';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n products.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n products.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n products.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n products.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = products.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n products.state.filter.options[index] = categoryOption;\n } else {\n products.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => products.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => products.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((search) => {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n}, 500);\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["useRoute","useRouter","ref","products.state","watch","globals.state","IconPlus","auth.state","onMounted","categories.actions","onUnmounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsIE,UAAM,QAAQA,UAAQ,SAAA;AACtB,UAAM,SAASC,UAAS,UAAA;AAGxB,UAAM,cAAcC,IAAG,IAAC,MAAM,MAAM,cAAc,MAAM,MAAM,cAAc,KAAK;AAEjF,QAAI,MAAM,SAAS,eAAgB,OAAM,MAAM,cAAc,YAAY;AAEzE,QAAI,MAAM,OAAO;AACf,YAAM,QAAQ,MAAM;AAEpBC,eAAAA,MAAe,OAAO,SAAS,aAAa,MAAM,aAAa,MAAM,WAAW,MAAM,GAAG,IAAI,CAAE;AAC/FA,eAAAA,MAAe,OAAO,SAAS,SAAS,MAAM,SAAS,MAAM,OAAO,MAAM,GAAG,IAAI,CAAE;AACnFA,eAAAA,MAAe,OAAO,SAAS,WAAW,MAAM,WAAW,MAAM,SAAS,MAAM,GAAG,IAAI,CAAE;AACzFA,eAAAA,MAAe,OAAO,SAAS,QAAQ,MAAM,QAAQ,MAAM,MAAM,MAAM,GAAG,IAAI,CAAE;AAAA,IACpF;AAGEC,cAAM,aAAa,CAAC,aAAa;AAC/B,UAAI,MAAM,SAAS,eAAgB,QAAO,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,aAAa,SAAU,EAAA,CAAE;AAAA,IAC1G,CAAG;AAEDC,kBAAc,eAAe,UAAU,CAAC;AAAA,MACtC,WAAWC,SAAQ;AAAA,MACnB,OAAO;AAAA,QACL,MAAM;AAAA,MACP;AAAA,MACD,WAAW,MAAMC,KAAU,MAAC,QAAQA,KAAU,MAAC,KAAK;AAAA,MACpD,QAAQ,MAAM,MAAM,OAAO,MAAM,OAAO,KAAK,EAAE,MAAM,2BAA2B,QAAQ,EAAE,KAAK,MAAM,OAAO,IAAG,EAAG,CAAA,IAAI,OAAO,KAAK,EAAE,MAAM,aAAc,CAAA;AAAA,IAC5J,CAAG,GAEDC,IAAAA,UAAU,YAAY;AACpB,UAAI,mBAAmB,MAAMC,WAAkB,QAAC,KAAK,EAAC,UAAS,KAAI,CAAC;AAEpE,yBAAmB,iBAAiB,IAAI,eAAa;AAAA,QACnD,OAAO,SAAS;AAAA,QAChB,OAAO,SAAS;AAAA,MACtB,EAAM;AAEF,YAAM,QAAQN,eAAe,OAAO,QAAQ,UAAU,YAAU,OAAO,UAAU,YAAY;AAE7F,YAAM,iBAAiB;AAAA,QACrB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,SAAS;AAAA,MACV;AAED,UAAI,UAAU,IAAI;AACdA,iBAAAA,MAAe,OAAO,QAAQ,KAAK,IAAI;AAAA,MAC/C,OAAW;AACHA,iBAAAA,MAAe,OAAO,QAAQ,QAAQ,cAAc;AAAA,MAC5D;AAAA,IACG,CAAA;AAEDO,QAAAA,YAAY,MAAM;AAChBL,oBAAc,eAAe,UAAU,CAAE;AAAA,IAC7C,CAAG;AAEDD,QAAAA,MAAM,MAAMD,SAAc,MAAC,MAAM,CAAC,cAAc,iBAAiB;AAC/D,UAAI,QAAQ,EAAE,GAAG,MAAM,MAAK;AAE5B,YAAM,YAAY,aAAa;AAC/B,YAAM,YAAY,aAAa;AAG/B,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC5B,GAAK,EAAE,MAAM,MAAM;AAGjBC,QAAK,MAAC,MAAMD,SAAAA,MAAe,OAAO,UAAU,CAAC,gBAAgB,mBAAmB;AAE9E,YAAM,QAAQ,EAAE,GAAG,MAAM,MAAO;AAGhC,aAAO,KAAK,cAAc,EAAE,QAAQ,SAAO;AACzC,YAAI,MAAM,GAAG,GAAG;AACd,iBAAO,MAAM,GAAG;AAAA,QACxB;AAAA,MACA,CAAK;AAGD,YAAM,iBAAiB,OAAO;AAAA,QAC5B,OAAO,QAAQ,cAAc,EAC1B,OAAO,CAAC,CAAC,KAAK,KAAK,MAAM,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,CAAC,EACjE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,MAAM,KAAK,GAAG,CAAC,CAAC;AAAA,MAChD;AAED,aAAO,MAAM;AACb,aAAO,OAAO,OAAO,cAAc;AAGnC,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC5B,GAAK,EAAE,MAAM,KAAM,CAAA;AAGnB,aAAS,SAAS,IAAI,OAAO;AAC3B,UAAI,YAAY;AAChB,aAAO,IAAI,SAAS;AAClB,qBAAa,SAAS;AACtB,oBAAY,WAAW,MAAM,GAAG,GAAG,IAAI,GAAG,KAAK;AAAA,MAChD;AAAA,IACH;AAEA,UAAM,kBAAkB,SAAS,CAAC,WAAW;AAC5C,UAAI,QAAQ,EAAE,GAAG,MAAM,MAAK;AAE3B,YAAM,SAAS;AAEf,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC1B,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { ref, watch, onMounted, onUnmounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createElementVNode, unref, createVNode, renderSlot, withCtx, Fragment, renderList } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
- import _sfc_main$2 from "../../../../components/Tab/Tab.vue.js";
3
+ import _sfc_main$2 from "../../../../components/Tab/Tab.vue2.js";
4
4
  import _sfc_main$5 from "../../../../components/Feed/Feed.vue.js";
5
5
  /* empty css */
6
6
  import "vue-i18n";
@@ -19,9 +19,9 @@ const _hoisted_2 = {
19
19
  key: 0,
20
20
  class: "pd-medium flex-v-center flex-nowrap flex"
21
21
  };
22
- const _hoisted_3 = { class: "cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin" };
22
+ const _hoisted_3 = { class: "cols-2-1_3 br-1px br-solid br-light h-100 z-index-3 pos-relative radius-medium" };
23
23
  const _hoisted_4 = { class: "o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative" };
24
- const _hoisted_5 = { class: "w-100 h-max pos-relative o-hidden" };
24
+ const _hoisted_5 = { class: "w-100 pd-thin h-max pos-relative o-hidden" };
25
25
  const _hoisted_6 = { class: "pos-relative w-100 z-index-3 radius-tl-big radius-tr-big" };
26
26
  const _sfc_main = {
27
27
  __name: "Products",
@@ -1 +1 @@
1
- {"version":3,"file":"Products.vue.js","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"products.state.filter\"\n :options=\"products.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"w-100 h-max pos-relative o-hidden\">\n <slot></slot>\n <div class=\"pos-relative w-100 z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"debouncedSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light mn-b-thin h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"products.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(products.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 pos-relative w-100 rows-1 gap-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as products from '@martyrs/src/modules/products/store/products';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace';\n import * as categories from '@martyrs/src/modules/products/store/categories';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n products.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n products.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n products.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n products.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = products.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n products.state.filter.options[index] = categoryOption;\n } else {\n products.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => products.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => products.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((search) => {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n}, 500);\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["products.state","globals.state","IconPlus","auth.state","categories.actions"],"mappings":"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"}
1
+ {"version":3,"file":"Products.vue.js","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-1px br-solid br-light h-100 z-index-3 pos-relative radius-medium\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"products.state.filter\"\n :options=\"products.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"w-100 pd-thin h-max pos-relative o-hidden\">\n <slot></slot>\n <div class=\"pos-relative w-100 z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"debouncedSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light mn-b-thin h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"products.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(products.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 pos-relative w-100 rows-1 gap-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n import * as products from '@martyrs/src/modules/products/store/products.js';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace.js';\n import * as categories from '@martyrs/src/modules/products/store/categories.js';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n products.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n products.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n products.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n products.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = products.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n products.state.filter.options[index] = categoryOption;\n } else {\n products.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => products.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => products.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\nfunction debounce(fn, delay) {\n let timeoutId = null;\n return (...args) => {\n clearTimeout(timeoutId);\n timeoutId = setTimeout(() => fn(...args), delay);\n };\n}\n\nconst debouncedSearch = debounce((search) => {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n}, 500);\n\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["products.state","globals.state","IconPlus","auth.state","categories.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsIE,UAAM,QAAQ,SAAQ;AACtB,UAAM,SAAS,UAAS;AAGxB,UAAM,cAAc,IAAI,MAAM,MAAM,cAAc,MAAM,MAAM,cAAc,KAAK;AAEjF,QAAI,MAAM,SAAS,eAAgB,OAAM,MAAM,cAAc,YAAY;AAEzE,QAAI,MAAM,OAAO;AACf,YAAM,QAAQ,MAAM;AAEpBA,YAAe,OAAO,SAAS,aAAa,MAAM,aAAa,MAAM,WAAW,MAAM,GAAG,IAAI,CAAE;AAC/FA,YAAe,OAAO,SAAS,SAAS,MAAM,SAAS,MAAM,OAAO,MAAM,GAAG,IAAI,CAAE;AACnFA,YAAe,OAAO,SAAS,WAAW,MAAM,WAAW,MAAM,SAAS,MAAM,GAAG,IAAI,CAAE;AACzFA,YAAe,OAAO,SAAS,QAAQ,MAAM,QAAQ,MAAM,MAAM,MAAM,GAAG,IAAI,CAAE;AAAA,IACpF;AAGE,UAAM,aAAa,CAAC,aAAa;AAC/B,UAAI,MAAM,SAAS,eAAgB,QAAO,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,aAAa,SAAU,EAAA,CAAE;AAAA,IAC1G,CAAG;AAEDC,YAAc,eAAe,UAAU,CAAC;AAAA,MACtC,WAAWC;AAAAA,MACX,OAAO;AAAA,QACL,MAAM;AAAA,MACP;AAAA,MACD,WAAW,MAAMC,QAAW,QAAQA,QAAW,KAAK;AAAA,MACpD,QAAQ,MAAM,MAAM,OAAO,MAAM,OAAO,KAAK,EAAE,MAAM,2BAA2B,QAAQ,EAAE,KAAK,MAAM,OAAO,IAAG,EAAG,CAAA,IAAI,OAAO,KAAK,EAAE,MAAM,aAAc,CAAA;AAAA,IAC5J,CAAG,GAED,UAAU,YAAY;AACpB,UAAI,mBAAmB,MAAMC,QAAmB,KAAK,EAAC,UAAS,KAAI,CAAC;AAEpE,yBAAmB,iBAAiB,IAAI,eAAa;AAAA,QACnD,OAAO,SAAS;AAAA,QAChB,OAAO,SAAS;AAAA,MACtB,EAAM;AAEF,YAAM,QAAQJ,MAAe,OAAO,QAAQ,UAAU,YAAU,OAAO,UAAU,YAAY;AAE7F,YAAM,iBAAiB;AAAA,QACrB,OAAO;AAAA,QACP,OAAO;AAAA,QACP,SAAS;AAAA,MACV;AAED,UAAI,UAAU,IAAI;AACdA,cAAe,OAAO,QAAQ,KAAK,IAAI;AAAA,MAC/C,OAAW;AACHA,cAAe,OAAO,QAAQ,QAAQ,cAAc;AAAA,MAC5D;AAAA,IACG,CAAA;AAED,gBAAY,MAAM;AAChBC,cAAc,eAAe,UAAU,CAAE;AAAA,IAC7C,CAAG;AAED,UAAM,MAAMD,MAAe,MAAM,CAAC,cAAc,iBAAiB;AAC/D,UAAI,QAAQ,EAAE,GAAG,MAAM,MAAK;AAE5B,YAAM,YAAY,aAAa;AAC/B,YAAM,YAAY,aAAa;AAG/B,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC5B,GAAK,EAAE,MAAM,MAAM;AAGjB,UAAM,MAAMA,MAAe,OAAO,UAAU,CAAC,gBAAgB,mBAAmB;AAE9E,YAAM,QAAQ,EAAE,GAAG,MAAM,MAAO;AAGhC,aAAO,KAAK,cAAc,EAAE,QAAQ,SAAO;AACzC,YAAI,MAAM,GAAG,GAAG;AACd,iBAAO,MAAM,GAAG;AAAA,QACxB;AAAA,MACA,CAAK;AAGD,YAAM,iBAAiB,OAAO;AAAA,QAC5B,OAAO,QAAQ,cAAc,EAC1B,OAAO,CAAC,CAAC,KAAK,KAAK,MAAM,MAAM,QAAQ,KAAK,KAAK,MAAM,SAAS,CAAC,EACjE,IAAI,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,MAAM,KAAK,GAAG,CAAC,CAAC;AAAA,MAChD;AAED,aAAO,MAAM;AACb,aAAO,OAAO,OAAO,cAAc;AAGnC,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC5B,GAAK,EAAE,MAAM,KAAM,CAAA;AAGnB,aAAS,SAAS,IAAI,OAAO;AAC3B,UAAI,YAAY;AAChB,aAAO,IAAI,SAAS;AAClB,qBAAa,SAAS;AACtB,oBAAY,WAAW,MAAM,GAAG,GAAG,IAAI,GAAG,KAAK;AAAA,MAChD;AAAA,IACH;AAEA,UAAM,kBAAkB,SAAS,CAAC,WAAW;AAC5C,UAAI,QAAQ,EAAE,GAAG,MAAM,MAAK;AAE3B,YAAM,SAAS;AAEf,aAAO,QAAQ,EAAE,OAAO;AAAA,IAC1B,GAAG,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,168 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const vue = require("vue");
4
+ const Block = require("../../../../components/Block/Block.vue.cjs");
5
+ const Field = require("../../../../components/Field/Field.vue.cjs");
6
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
7
+ const Popup = require("../../../../components/Popup/Popup.vue.cjs");
8
+ const IconEdit = require("../../../icons/navigation/IconEdit.vue.cjs");
9
+ const IconDelete = require("../../../icons/navigation/IconDelete.vue.cjs");
10
+ const _hoisted_1 = {
11
+ key: 0,
12
+ class: "cols-1 gap-thin"
13
+ };
14
+ const _hoisted_2 = { class: "w-100" };
15
+ const _hoisted_3 = { class: "p-medium mn-b-thin t-medium d-block" };
16
+ const _hoisted_4 = { class: "t-medium t-transp" };
17
+ const _hoisted_5 = { class: "flex gap-thin" };
18
+ const _hoisted_6 = ["onClick"];
19
+ const _hoisted_7 = ["onClick"];
20
+ const _hoisted_8 = { class: "cols-1 gap-thin" };
21
+ const _hoisted_9 = { class: "flex gap-thin mn-t-medium" };
22
+ const _sfc_main = {
23
+ __name: "EditAttributes",
24
+ props: {
25
+ "attributes": {},
26
+ "attributesModifiers": {}
27
+ },
28
+ emits: ["update:attributes"],
29
+ setup(__props) {
30
+ const attributes = vue.useModel(__props, "attributes");
31
+ const isAttributePopupOpen = vue.ref(false);
32
+ const editingAttributeIndex = vue.ref(null);
33
+ const currentAttribute = vue.reactive({
34
+ name: "",
35
+ value: ""
36
+ });
37
+ function openAttributePopup(index) {
38
+ if (index !== void 0) {
39
+ editingAttributeIndex.value = index;
40
+ const attribute = attributes.value[index];
41
+ Object.assign(currentAttribute, {
42
+ name: attribute.name || "",
43
+ value: attribute.value || ""
44
+ });
45
+ } else {
46
+ editingAttributeIndex.value = null;
47
+ Object.assign(currentAttribute, {
48
+ name: "",
49
+ value: ""
50
+ });
51
+ }
52
+ isAttributePopupOpen.value = true;
53
+ }
54
+ function closeAttributePopup() {
55
+ isAttributePopupOpen.value = false;
56
+ editingAttributeIndex.value = null;
57
+ }
58
+ function saveAttribute() {
59
+ if (!currentAttribute.name) {
60
+ alert("Parameter name is required");
61
+ return;
62
+ }
63
+ const attributeToSave = {
64
+ name: currentAttribute.name,
65
+ value: currentAttribute.value
66
+ };
67
+ if (editingAttributeIndex.value !== null) {
68
+ attributes.value.splice(editingAttributeIndex.value, 1, attributeToSave);
69
+ } else {
70
+ attributes.value.push(attributeToSave);
71
+ }
72
+ closeAttributePopup();
73
+ }
74
+ return (_ctx, _cache) => {
75
+ return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [
76
+ vue.createVNode(Block.default, {
77
+ title: "Parameters",
78
+ placeholder: "No parameters added yet",
79
+ actions: [{
80
+ label: "+",
81
+ function: () => openAttributePopup()
82
+ }]
83
+ }, {
84
+ default: vue.withCtx(() => [
85
+ attributes.value.length > 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
86
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(attributes.value, (attribute, index) => {
87
+ return vue.openBlock(), vue.createElementBlock("div", {
88
+ key: index,
89
+ class: "bg-white radius-small pd-small flex-nowrap flex-v-center flex gap-thin"
90
+ }, [
91
+ vue.createElementVNode("div", _hoisted_2, [
92
+ vue.createElementVNode("p", _hoisted_3, vue.toDisplayString(attribute.name || "Unnamed parameter"), 1),
93
+ vue.createElementVNode("p", _hoisted_4, vue.toDisplayString(attribute.value || "No value"), 1)
94
+ ]),
95
+ vue.createElementVNode("div", _hoisted_5, [
96
+ vue.createElementVNode("div", {
97
+ onClick: () => openAttributePopup(index),
98
+ class: "radius-small pd-small flex-center flex aspect-1x1 bg-light cursor-pointer hover-scale-1"
99
+ }, [
100
+ vue.createVNode(IconEdit.default, { class: "i-regular" })
101
+ ], 8, _hoisted_6),
102
+ vue.createElementVNode("div", {
103
+ onClick: () => attributes.value.splice(index, 1),
104
+ class: "radius-small pd-small flex-center flex aspect-1x1 bg-red cursor-pointer hover-scale-1"
105
+ }, [
106
+ vue.createVNode(IconDelete.default, { class: "i-regular" })
107
+ ], 8, _hoisted_7)
108
+ ])
109
+ ]);
110
+ }), 128))
111
+ ])) : vue.createCommentVNode("", true)
112
+ ]),
113
+ _: 1
114
+ }, 8, ["actions"]),
115
+ vue.createVNode(Popup.default, {
116
+ title: "Edit Parameter",
117
+ onClosePopup: closeAttributePopup,
118
+ isPopupOpen: isAttributePopupOpen.value,
119
+ class: "bg-white w-max-40r radius-medium pd-medium"
120
+ }, {
121
+ default: vue.withCtx(() => [
122
+ vue.createElementVNode("div", _hoisted_8, [
123
+ vue.createVNode(Field.default, {
124
+ field: currentAttribute.name,
125
+ "onUpdate:field": _cache[0] || (_cache[0] = ($event) => currentAttribute.name = $event),
126
+ label: "Name",
127
+ placeholder: "Parameter Name",
128
+ class: "w-100 bg-light radius-small pd-small"
129
+ }, null, 8, ["field"]),
130
+ vue.createVNode(Field.default, {
131
+ field: currentAttribute.value,
132
+ "onUpdate:field": _cache[1] || (_cache[1] = ($event) => currentAttribute.value = $event),
133
+ label: "Value",
134
+ placeholder: "Parameter Value",
135
+ class: "w-100 bg-light radius-small pd-small"
136
+ }, null, 8, ["field"]),
137
+ vue.createElementVNode("div", _hoisted_9, [
138
+ vue.createVNode(Button.default, {
139
+ showSuccess: false,
140
+ showLoader: false,
141
+ class: "bg-red t-white w-100",
142
+ onClick: closeAttributePopup
143
+ }, {
144
+ default: vue.withCtx(() => _cache[2] || (_cache[2] = [
145
+ vue.createTextVNode(" Cancel ")
146
+ ])),
147
+ _: 1
148
+ }),
149
+ vue.createVNode(Button.default, {
150
+ class: "bg-main w-100",
151
+ onClick: saveAttribute
152
+ }, {
153
+ default: vue.withCtx(() => _cache[3] || (_cache[3] = [
154
+ vue.createTextVNode(" Save ")
155
+ ])),
156
+ _: 1
157
+ })
158
+ ])
159
+ ])
160
+ ]),
161
+ _: 1
162
+ }, 8, ["isPopupOpen"])
163
+ ], 64);
164
+ };
165
+ }
166
+ };
167
+ exports.default = _sfc_main;
168
+ //# sourceMappingURL=EditAttributes.vue.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EditAttributes.vue.cjs","sources":["../../../../../../../src/modules/products/components/sections/EditAttributes.vue"],"sourcesContent":["<template>\n <Block\n title=\"Parameters\"\n placeholder=\"No parameters added yet\"\n :actions=\"[{\n label: '+',\n function: () => openAttributePopup()\n }]\"\n >\n <div v-if=\"attributes.length > 0\" class=\"cols-1 gap-thin\">\n <div\n v-for=\"(attribute, index) in attributes\"\n :key=\"index\"\n class=\"bg-white radius-small pd-small flex-nowrap flex-v-center flex gap-thin\"\n >\n <div class=\"w-100\">\n <p class=\"p-medium mn-b-thin t-medium d-block\">{{ attribute.name || 'Unnamed parameter' }}</p>\n <p class=\"t-medium t-transp\">{{ attribute.value || 'No value' }}</p>\n </div>\n \n <div class=\"flex gap-thin\">\n <div @click=\"() => openAttributePopup(index)\" class=\"radius-small pd-small flex-center flex aspect-1x1 bg-light cursor-pointer hover-scale-1\">\n <IconEdit\n class=\"i-regular\"\n />\n </div>\n <div @click=\"() => attributes.splice(index, 1)\" class=\"radius-small pd-small flex-center flex aspect-1x1 bg-red cursor-pointer hover-scale-1\">\n <IconDelete\n class=\"i-regular\"\n />\n </div>\n </div>\n </div>\n </div>\n </Block>\n\n <Popup\n title=\"Edit Parameter\"\n @close-popup=\"closeAttributePopup\"\n :isPopupOpen=\"isAttributePopupOpen\"\n class=\"bg-white w-max-40r radius-medium pd-medium\"\n >\n <div class=\"cols-1 gap-thin\">\n <Field\n v-model:field=\"currentAttribute.name\"\n label=\"Name\"\n placeholder=\"Parameter Name\"\n class=\"w-100 bg-light radius-small pd-small\"\n />\n\n <Field\n v-model:field=\"currentAttribute.value\"\n label=\"Value\"\n placeholder=\"Parameter Value\"\n class=\"w-100 bg-light radius-small pd-small\"\n />\n\n <div class=\"flex gap-thin mn-t-medium\">\n <Button\n :showSuccess=\"false\"\n :showLoader=\"false\"\n class=\"bg-red t-white w-100\"\n @click=\"closeAttributePopup\"\n >\n Cancel\n </Button>\n <Button\n class=\"bg-main w-100\"\n @click=\"saveAttribute\"\n >\n Save\n </Button>\n </div>\n </div>\n </Popup>\n</template>\n\n<script setup>\nimport { ref, reactive, defineModel } from 'vue';\nimport Block from '@martyrs/src/components/Block/Block.vue';\nimport Field from '@martyrs/src/components/Field/Field.vue';\nimport Button from '@martyrs/src/components/Button/Button.vue';\nimport Popup from '@martyrs/src/components/Popup/Popup.vue';\nimport IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue';\nimport IconDelete from '@martyrs/src/modules/icons/navigation/IconDelete.vue';\n\n// Используем defineModel для работы с v-model в родительском компоненте\nconst attributes = defineModel('attributes');\n\n// Локальное состояние\nconst isAttributePopupOpen = ref(false);\nconst editingAttributeIndex = ref(null);\nconst currentAttribute = reactive({\n name: '',\n value: ''\n});\n\n// Функция открытия попапа добавления/редактирования\nfunction openAttributePopup(index) {\n // Если передан индекс, это редактирование существующего атрибута\n if (index !== undefined) {\n editingAttributeIndex.value = index;\n const attribute = attributes.value[index];\n \n // Копируем данные в currentAttribute\n Object.assign(currentAttribute, {\n name: attribute.name || '',\n value: attribute.value || ''\n });\n } else {\n // Сброс данных при создании нового атрибута\n editingAttributeIndex.value = null;\n Object.assign(currentAttribute, {\n name: '',\n value: ''\n });\n }\n \n isAttributePopupOpen.value = true;\n}\n\n// Закрытие попапа\nfunction closeAttributePopup() {\n isAttributePopupOpen.value = false;\n editingAttributeIndex.value = null;\n}\n\n// Сохранение атрибута\nfunction saveAttribute() {\n // Проверка на основные поля\n if (!currentAttribute.name) {\n alert('Parameter name is required');\n return;\n }\n\n // Создаем копию текущего атрибута для сохранения\n const attributeToSave = {\n name: currentAttribute.name,\n value: currentAttribute.value\n };\n\n // Если редактируем существующий атрибут\n if (editingAttributeIndex.value !== null) {\n // Обновляем существующий атрибут\n attributes.value.splice(editingAttributeIndex.value, 1, attributeToSave);\n } else {\n // Добавляем новый атрибут\n attributes.value.push(attributeToSave);\n }\n\n // Закрываем попап\n closeAttributePopup();\n}\n</script>"],"names":["_useModel","ref","reactive"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuFA,UAAM,aAAaA,IAAAA,SAAW,SAAC,YAAY;AAG3C,UAAM,uBAAuBC,IAAG,IAAC,KAAK;AACtC,UAAM,wBAAwBA,IAAG,IAAC,IAAI;AACtC,UAAM,mBAAmBC,IAAAA,SAAS;AAAA,MAChC,MAAM;AAAA,MACN,OAAO;AAAA,IACT,CAAC;AAGD,aAAS,mBAAmB,OAAO;AAEjC,UAAI,UAAU,QAAW;AACvB,8BAAsB,QAAQ;AAC9B,cAAM,YAAY,WAAW,MAAM,KAAK;AAGxC,eAAO,OAAO,kBAAkB;AAAA,UAC9B,MAAM,UAAU,QAAQ;AAAA,UACxB,OAAO,UAAU,SAAS;AAAA,QAChC,CAAK;AAAA,MACL,OAAS;AAEL,8BAAsB,QAAQ;AAC9B,eAAO,OAAO,kBAAkB;AAAA,UAC9B,MAAM;AAAA,UACN,OAAO;AAAA,QACb,CAAK;AAAA,MACL;AAEE,2BAAqB,QAAQ;AAAA,IAC/B;AAGA,aAAS,sBAAsB;AAC7B,2BAAqB,QAAQ;AAC7B,4BAAsB,QAAQ;AAAA,IAChC;AAGA,aAAS,gBAAgB;AAEvB,UAAI,CAAC,iBAAiB,MAAM;AAC1B,cAAM,4BAA4B;AAClC;AAAA,MACJ;AAGE,YAAM,kBAAkB;AAAA,QACtB,MAAM,iBAAiB;AAAA,QACvB,OAAO,iBAAiB;AAAA,MACzB;AAGD,UAAI,sBAAsB,UAAU,MAAM;AAExC,mBAAW,MAAM,OAAO,sBAAsB,OAAO,GAAG,eAAe;AAAA,MAC3E,OAAS;AAEL,mBAAW,MAAM,KAAK,eAAe;AAAA,MACzC;AAGE,0BAAqB;AAAA,IACvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}