@ozdao/martyrs 0.2.477 → 0.2.479

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 (1711) 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 -399
  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/Block/Block.vue.cjs +1 -1
  47. package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
  48. package/dist/martyrs/src/components/Button/Button.vue2.cjs +0 -1
  49. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -1
  50. package/dist/martyrs/src/components/Button/Button.vue2.js +0 -1
  51. package/dist/martyrs/src/components/Button/Button.vue2.js.map +1 -1
  52. package/dist/martyrs/src/components/Chips/{Chips.vue.cjs → Chips.vue2.cjs} +3 -3
  53. package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -0
  54. package/dist/martyrs/src/components/Chips/{Chips.vue.js → Chips.vue2.js} +3 -3
  55. package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -0
  56. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs → Dropdown.vue2.cjs} +2 -2
  57. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -0
  58. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.js → Dropdown.vue2.js} +2 -2
  59. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.js.map +1 -0
  60. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +127 -74
  61. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  62. package/dist/martyrs/src/components/Feed/Feed.vue.js +136 -83
  63. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  64. package/dist/martyrs/src/components/Field/Field.vue.cjs +20 -22
  65. package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
  66. package/dist/martyrs/src/components/Field/Field.vue.js +21 -23
  67. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
  68. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs.map +1 -1
  69. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js.map +1 -1
  70. package/dist/martyrs/src/components/FieldPhone/all-countries.cjs +245 -1
  71. package/dist/martyrs/src/components/FieldPhone/all-countries.cjs.map +1 -1
  72. package/dist/martyrs/src/components/FieldPhone/all-countries.js +245 -1
  73. package/dist/martyrs/src/components/FieldPhone/all-countries.js.map +1 -1
  74. package/dist/martyrs/src/components/FieldPhone/click-outside.cjs.map +1 -1
  75. package/dist/martyrs/src/components/FieldPhone/click-outside.js.map +1 -1
  76. package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js +2 -2
  77. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs +451 -176
  78. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs.map +1 -1
  79. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js +451 -176
  80. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js.map +1 -1
  81. package/dist/martyrs/src/components/FieldTags/create-tags.cjs.map +1 -1
  82. package/dist/martyrs/src/components/FieldTags/create-tags.js.map +1 -1
  83. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.cjs +1 -4
  84. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.cjs.map +1 -1
  85. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.js +1 -4
  86. package/dist/martyrs/src/components/FieldTags/vue-tags-input.props.js.map +1 -1
  87. package/dist/martyrs/src/components/Menu/{Menu.vue.cjs → Menu.vue2.cjs} +2 -2
  88. package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +1 -0
  89. package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
  90. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
  91. package/dist/martyrs/src/components/Popup/Popup.vue2.cjs +27 -5
  92. package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +1 -1
  93. package/dist/martyrs/src/components/Popup/Popup.vue2.js +28 -6
  94. package/dist/martyrs/src/components/Popup/Popup.vue2.js.map +1 -1
  95. package/dist/martyrs/src/components/Select/Select.vue.cjs +2 -4
  96. package/dist/martyrs/src/components/Select/Select.vue.cjs.map +1 -1
  97. package/dist/martyrs/src/components/Select/Select.vue.js +2 -4
  98. package/dist/martyrs/src/components/Select/Select.vue.js.map +1 -1
  99. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs +639 -0
  100. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs.map +1 -0
  101. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js +639 -0
  102. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.js.map +1 -0
  103. package/dist/martyrs/src/components/Table/Table.vue.cjs +23 -38
  104. package/dist/martyrs/src/components/Table/Table.vue.cjs.map +1 -1
  105. package/dist/martyrs/src/components/Table/Table.vue.js +24 -39
  106. package/dist/martyrs/src/components/Table/Table.vue.js.map +1 -1
  107. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs → Tooltip.vue2.cjs} +2 -2
  108. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -0
  109. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.js → Tooltip.vue2.js} +2 -2
  110. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs.map → Tooltip.vue2.js.map} +1 -1
  111. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +4 -4
  112. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs.map +1 -1
  113. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +4 -4
  114. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js.map +1 -1
  115. package/dist/martyrs/src/modules/auth/auth.client.cjs +5 -5
  116. package/dist/martyrs/src/modules/auth/auth.client.cjs.map +1 -1
  117. package/dist/martyrs/src/modules/auth/auth.client.js +5 -5
  118. package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
  119. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
  120. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  121. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs.map +1 -1
  122. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js.map +1 -1
  123. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs.map +1 -1
  124. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +1 -1
  125. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs.map +1 -1
  126. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js.map +1 -1
  127. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
  128. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
  129. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  130. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  131. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +2 -2
  132. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs.map +1 -1
  133. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +2 -2
  134. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js.map +1 -1
  135. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
  136. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
  137. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs.map +1 -1
  138. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js.map +1 -1
  139. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
  140. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  141. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs.map +1 -1
  142. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js.map +1 -1
  143. package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.cjs.map +1 -1
  144. package/dist/martyrs/src/modules/auth/views/components/sections/FeaturedUsers.vue.js.map +1 -1
  145. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs.map +1 -1
  146. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js.map +1 -1
  147. package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.cjs.map +1 -1
  148. package/dist/martyrs/src/modules/auth/views/middlewares/auth.validation.js.map +1 -1
  149. package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.cjs.map +1 -1
  150. package/dist/martyrs/src/modules/auth/views/middlewares/ownership.validation.js.map +1 -1
  151. package/dist/martyrs/src/modules/auth/views/router/auth.cjs +87 -98
  152. package/dist/martyrs/src/modules/auth/views/router/auth.cjs.map +1 -1
  153. package/dist/martyrs/src/modules/auth/views/router/auth.js +87 -98
  154. package/dist/martyrs/src/modules/auth/views/router/auth.js.map +1 -1
  155. package/dist/martyrs/src/modules/auth/views/router/users.cjs +105 -106
  156. package/dist/martyrs/src/modules/auth/views/router/users.cjs.map +1 -1
  157. package/dist/martyrs/src/modules/auth/views/router/users.js +105 -106
  158. package/dist/martyrs/src/modules/auth/views/router/users.js.map +1 -1
  159. package/dist/martyrs/src/modules/auth/views/store/auth.cjs +7 -1
  160. package/dist/martyrs/src/modules/auth/views/store/auth.cjs.map +1 -1
  161. package/dist/martyrs/src/modules/auth/views/store/auth.js +7 -1
  162. package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
  163. package/dist/martyrs/src/modules/auth/views/store/twofa.cjs.map +1 -1
  164. package/dist/martyrs/src/modules/auth/views/store/twofa.js.map +1 -1
  165. package/dist/martyrs/src/modules/auth/views/store/users.cjs +1 -1
  166. package/dist/martyrs/src/modules/auth/views/store/users.cjs.map +1 -1
  167. package/dist/martyrs/src/modules/auth/views/store/users.js +1 -1
  168. package/dist/martyrs/src/modules/auth/views/store/users.js.map +1 -1
  169. package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.cjs.map +1 -1
  170. package/dist/martyrs/src/modules/auth/views/validations/inputs.validation.js.map +1 -1
  171. package/dist/martyrs/src/modules/backoffice/backoffice.client.cjs.map +1 -1
  172. package/dist/martyrs/src/modules/backoffice/backoffice.client.js.map +1 -1
  173. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +1 -1
  174. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
  175. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs +1 -1
  176. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +1 -1
  177. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +1 -1
  178. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
  179. package/dist/martyrs/src/modules/backoffice/router/backoffice.cjs +1 -4
  180. package/dist/martyrs/src/modules/backoffice/router/backoffice.cjs.map +1 -1
  181. package/dist/martyrs/src/modules/backoffice/router/backoffice.js +1 -4
  182. package/dist/martyrs/src/modules/backoffice/router/backoffice.js.map +1 -1
  183. package/dist/martyrs/src/modules/chats/chats.client.cjs.map +1 -1
  184. package/dist/martyrs/src/modules/chats/chats.client.js.map +1 -1
  185. package/dist/martyrs/src/modules/chats/store/chat.store.cjs +10 -6
  186. package/dist/martyrs/src/modules/chats/store/chat.store.cjs.map +1 -1
  187. package/dist/martyrs/src/modules/chats/store/chat.store.js +10 -6
  188. package/dist/martyrs/src/modules/chats/store/chat.store.js.map +1 -1
  189. package/dist/martyrs/src/modules/community/community.client.cjs +14 -14
  190. package/dist/martyrs/src/modules/community/community.client.cjs.map +1 -1
  191. package/dist/martyrs/src/modules/community/community.client.js +3 -3
  192. package/dist/martyrs/src/modules/community/community.client.js.map +1 -1
  193. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
  194. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
  195. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs.map +1 -1
  196. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
  197. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
  198. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  199. package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs.map +1 -1
  200. package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js.map +1 -1
  201. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
  202. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
  203. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
  204. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
  205. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +16 -10
  206. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs.map +1 -1
  207. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +16 -10
  208. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js.map +1 -1
  209. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +2 -2
  210. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs.map +1 -1
  211. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +2 -2
  212. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
  213. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
  214. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +1 -1
  215. package/dist/martyrs/src/modules/community/router/blogposts.cjs +61 -59
  216. package/dist/martyrs/src/modules/community/router/blogposts.cjs.map +1 -1
  217. package/dist/martyrs/src/modules/community/router/blogposts.js +61 -59
  218. package/dist/martyrs/src/modules/community/router/blogposts.js.map +1 -1
  219. package/dist/martyrs/src/modules/community/store/blogposts.cjs +14 -10
  220. package/dist/martyrs/src/modules/community/store/blogposts.cjs.map +1 -1
  221. package/dist/martyrs/src/modules/community/store/blogposts.js +14 -10
  222. package/dist/martyrs/src/modules/community/store/blogposts.js.map +1 -1
  223. package/dist/martyrs/src/modules/community/store/reactions.cjs.map +1 -1
  224. package/dist/martyrs/src/modules/community/store/reactions.js.map +1 -1
  225. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +5 -3
  226. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs.map +1 -1
  227. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +5 -3
  228. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js.map +1 -1
  229. package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.cjs.map +1 -1
  230. package/dist/martyrs/src/modules/constructor/components/elements/ImageUpload.vue.js.map +1 -1
  231. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
  232. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
  233. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs.map +1 -1
  234. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js.map +1 -1
  235. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  236. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs.map +1 -1
  237. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  238. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js.map +1 -1
  239. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +12 -6
  240. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs.map +1 -1
  241. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +12 -6
  242. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js.map +1 -1
  243. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs.map +1 -1
  244. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js.map +1 -1
  245. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +3 -4
  246. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
  247. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +3 -4
  248. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
  249. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs.map +1 -1
  250. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js.map +1 -1
  251. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs.map +1 -1
  252. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js.map +1 -1
  253. package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.cjs.map +1 -1
  254. package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.js.map +1 -1
  255. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +1 -1
  256. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +1 -1
  257. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs +1 -1
  258. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.cjs.map +1 -1
  259. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js +1 -1
  260. package/dist/martyrs/src/modules/events/components/sections/FeaturedEvents.vue.js.map +1 -1
  261. package/dist/martyrs/src/modules/events/events.client.cjs +17 -17
  262. package/dist/martyrs/src/modules/events/events.client.cjs.map +1 -1
  263. package/dist/martyrs/src/modules/events/events.client.js +4 -4
  264. package/dist/martyrs/src/modules/events/events.client.js.map +1 -1
  265. package/dist/martyrs/src/modules/events/router/events.cjs +11 -21
  266. package/dist/martyrs/src/modules/events/router/events.cjs.map +1 -1
  267. package/dist/martyrs/src/modules/events/router/events.js +11 -21
  268. package/dist/martyrs/src/modules/events/router/events.js.map +1 -1
  269. package/dist/martyrs/src/modules/events/store/events.cjs.map +1 -1
  270. package/dist/martyrs/src/modules/events/store/events.js.map +1 -1
  271. package/dist/martyrs/src/modules/events/store/tickets.cjs +3 -1
  272. package/dist/martyrs/src/modules/events/store/tickets.cjs.map +1 -1
  273. package/dist/martyrs/src/modules/events/store/tickets.js +3 -1
  274. package/dist/martyrs/src/modules/events/store/tickets.js.map +1 -1
  275. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs.map +1 -1
  276. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js.map +1 -1
  277. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
  278. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs.map +1 -1
  279. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
  280. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js.map +1 -1
  281. package/dist/martyrs/src/modules/gallery/gallery.client.cjs.map +1 -1
  282. package/dist/martyrs/src/modules/gallery/gallery.client.js.map +1 -1
  283. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.cjs +17 -17
  284. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.cjs.map +1 -1
  285. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.js +17 -17
  286. package/dist/martyrs/src/modules/gallery/router/gallery.backoffice.router.js.map +1 -1
  287. package/dist/martyrs/src/modules/gallery/router/gallery.router.cjs.map +1 -1
  288. package/dist/martyrs/src/modules/gallery/router/gallery.router.js.map +1 -1
  289. package/dist/martyrs/src/modules/gallery/store/gallery.cjs.map +1 -1
  290. package/dist/martyrs/src/modules/gallery/store/gallery.js.map +1 -1
  291. package/dist/martyrs/src/modules/globals/globals.client.cjs +24 -8
  292. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  293. package/dist/martyrs/src/modules/globals/globals.client.js +22 -6
  294. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  295. package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs +9 -7
  296. package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs.map +1 -1
  297. package/dist/martyrs/src/modules/globals/views/classes/globals.store.js +9 -7
  298. package/dist/martyrs/src/modules/globals/views/classes/globals.store.js.map +1 -1
  299. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.cjs.map +1 -1
  300. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.js.map +1 -1
  301. package/dist/martyrs/src/modules/globals/views/classes/store.cjs +2 -2
  302. package/dist/martyrs/src/modules/globals/views/classes/store.cjs.map +1 -1
  303. package/dist/martyrs/src/modules/globals/views/classes/store.js +2 -2
  304. package/dist/martyrs/src/modules/globals/views/classes/store.js.map +1 -1
  305. package/dist/martyrs/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue.cjs +1 -1
  306. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.cjs.map +1 -0
  307. package/dist/martyrs/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue.js +1 -1
  308. package/dist/martyrs/src/modules/globals/views/components/blocks/AlertDialog.vue.js.map +1 -0
  309. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs +308 -0
  310. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs.map +1 -0
  311. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js +308 -0
  312. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js.map +1 -0
  313. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs +61 -49
  314. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs.map +1 -1
  315. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js +62 -50
  316. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js.map +1 -1
  317. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
  318. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
  319. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
  320. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +1 -1
  321. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.cjs +2 -2
  322. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.cjs.map +1 -1
  323. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.js +2 -2
  324. package/dist/martyrs/src/modules/globals/views/components/elements/ButtonDate.vue.js.map +1 -1
  325. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs.map +1 -1
  326. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js.map +1 -1
  327. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +1 -1
  328. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  329. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +1 -1
  330. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  331. package/dist/martyrs/src/modules/globals/views/components/partials/BottomNavigationBar.vue.cjs.map +1 -1
  332. package/dist/martyrs/src/modules/globals/views/components/partials/BottomNavigationBar.vue.js.map +1 -1
  333. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
  334. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
  335. package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.cjs.map +1 -1
  336. package/dist/martyrs/src/modules/globals/views/components/partials/LocationSelection.vue.js.map +1 -1
  337. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +9 -10
  338. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
  339. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +9 -10
  340. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
  341. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs.map +1 -1
  342. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js.map +1 -1
  343. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs +1 -1
  344. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
  345. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js +1 -1
  346. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js.map +1 -1
  347. package/dist/martyrs/src/modules/globals/views/localization/get-browser-locale.cjs.map +1 -1
  348. package/dist/martyrs/src/modules/globals/views/localization/get-browser-locale.js.map +1 -1
  349. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +24 -5
  350. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
  351. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +24 -5
  352. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
  353. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs +1 -1
  354. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.cjs.map +1 -1
  355. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js +1 -1
  356. package/dist/martyrs/src/modules/globals/views/plugins/alert.plugin.js.map +1 -1
  357. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs +74 -0
  358. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.cjs.map +1 -0
  359. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js +74 -0
  360. package/dist/martyrs/src/modules/globals/views/plugins/date-picker.plugin.js.map +1 -0
  361. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs +200 -0
  362. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.cjs.map +1 -0
  363. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js +200 -0
  364. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue.js.map +1 -0
  365. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.cjs +21 -0
  366. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.cjs.map +1 -0
  367. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js +21 -0
  368. package/dist/martyrs/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js.map +1 -0
  369. package/dist/martyrs/src/modules/globals/views/router/addRoutes.cjs +1 -4
  370. package/dist/martyrs/src/modules/globals/views/router/addRoutes.cjs.map +1 -1
  371. package/dist/martyrs/src/modules/globals/views/router/addRoutes.js +1 -4
  372. package/dist/martyrs/src/modules/globals/views/router/addRoutes.js.map +1 -1
  373. package/dist/martyrs/src/modules/globals/views/router/scrollBehavior.cjs.map +1 -1
  374. package/dist/martyrs/src/modules/globals/views/router/scrollBehavior.js.map +1 -1
  375. package/dist/martyrs/src/modules/globals/views/store/globals.cjs +4 -14
  376. package/dist/martyrs/src/modules/globals/views/store/globals.cjs.map +1 -1
  377. package/dist/martyrs/src/modules/globals/views/store/globals.js +4 -14
  378. package/dist/martyrs/src/modules/globals/views/store/globals.js.map +1 -1
  379. package/dist/martyrs/src/modules/globals/views/utils/axios-instance.cjs.map +1 -1
  380. package/dist/martyrs/src/modules/globals/views/utils/axios-instance.js.map +1 -1
  381. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs +2 -2
  382. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs.map +1 -1
  383. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js +2 -2
  384. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js.map +1 -1
  385. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs +39 -0
  386. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.cjs.map +1 -0
  387. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.js +39 -0
  388. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.js.map +1 -0
  389. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs +57 -0
  390. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.cjs.map +1 -0
  391. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.js +57 -0
  392. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.js.map +1 -0
  393. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs +33 -0
  394. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.cjs.map +1 -0
  395. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.js +33 -0
  396. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.js.map +1 -0
  397. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs +33 -0
  398. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.cjs.map +1 -0
  399. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js +33 -0
  400. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js.map +1 -0
  401. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs +35 -0
  402. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.cjs.map +1 -0
  403. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.js +35 -0
  404. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.js.map +1 -0
  405. package/dist/martyrs/src/modules/icons/icons.client.cjs +97 -79
  406. package/dist/martyrs/src/modules/icons/icons.client.cjs.map +1 -1
  407. package/dist/martyrs/src/modules/icons/icons.client.js +140 -122
  408. package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
  409. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs +25 -0
  410. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs.map +1 -0
  411. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js +25 -0
  412. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js.map +1 -0
  413. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs +35 -0
  414. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.cjs.map +1 -0
  415. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.js +35 -0
  416. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.js.map +1 -0
  417. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs +39 -0
  418. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs.map +1 -0
  419. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js +39 -0
  420. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js.map +1 -0
  421. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs +39 -0
  422. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs.map +1 -0
  423. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js +39 -0
  424. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js.map +1 -0
  425. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +34 -0
  426. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +1 -0
  427. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +34 -0
  428. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js.map +1 -0
  429. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +39 -0
  430. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +1 -0
  431. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +39 -0
  432. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js.map +1 -0
  433. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs +31 -0
  434. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs.map +1 -0
  435. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js +31 -0
  436. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js.map +1 -0
  437. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +39 -0
  438. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +1 -0
  439. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +39 -0
  440. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js.map +1 -0
  441. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs +31 -0
  442. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.cjs.map +1 -0
  443. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.js +31 -0
  444. package/dist/martyrs/src/modules/icons/navigation/IconSend.vue.js.map +1 -0
  445. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs +39 -0
  446. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs.map +1 -0
  447. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js +39 -0
  448. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js.map +1 -0
  449. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs +39 -0
  450. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs.map +1 -0
  451. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js +39 -0
  452. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js.map +1 -0
  453. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +278 -0
  454. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -0
  455. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +278 -0
  456. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -0
  457. package/dist/martyrs/src/modules/icons/router/icons.router.cjs +33 -0
  458. package/dist/martyrs/src/modules/icons/router/icons.router.cjs.map +1 -0
  459. package/dist/martyrs/src/modules/icons/router/icons.router.js +33 -0
  460. package/dist/martyrs/src/modules/icons/router/icons.router.js.map +1 -0
  461. package/dist/martyrs/src/modules/icons/socials/dribbble.vue.cjs +2 -2
  462. package/dist/martyrs/src/modules/icons/socials/dribbble.vue.js +2 -2
  463. package/dist/martyrs/src/modules/icons/socials/facebook.vue.cjs +2 -2
  464. package/dist/martyrs/src/modules/icons/socials/facebook.vue.js +2 -2
  465. package/dist/martyrs/src/modules/icons/socials/instagram.vue.cjs +2 -2
  466. package/dist/martyrs/src/modules/icons/socials/instagram.vue.js +2 -2
  467. package/dist/martyrs/src/modules/icons/socials/line.vue.cjs +2 -2
  468. package/dist/martyrs/src/modules/icons/socials/line.vue.js +2 -2
  469. package/dist/martyrs/src/modules/icons/socials/linkedin.vue.cjs +2 -2
  470. package/dist/martyrs/src/modules/icons/socials/linkedin.vue.js +2 -2
  471. package/dist/martyrs/src/modules/icons/socials/reddit.vue.cjs +2 -2
  472. package/dist/martyrs/src/modules/icons/socials/reddit.vue.js +2 -2
  473. package/dist/martyrs/src/modules/icons/socials/telegram.vue.cjs +2 -2
  474. package/dist/martyrs/src/modules/icons/socials/telegram.vue.js +2 -2
  475. package/dist/martyrs/src/modules/icons/socials/twitter.vue.cjs +2 -2
  476. package/dist/martyrs/src/modules/icons/socials/twitter.vue.js +2 -2
  477. package/dist/martyrs/src/modules/icons/socials/vk.vue.cjs +2 -2
  478. package/dist/martyrs/src/modules/icons/socials/vk.vue.js +2 -2
  479. package/dist/martyrs/src/modules/icons/socials/youtube.vue.cjs +2 -2
  480. package/dist/martyrs/src/modules/icons/socials/youtube.vue.js +2 -2
  481. package/dist/martyrs/src/modules/landing/landing.client.cjs +12 -12
  482. package/dist/martyrs/src/modules/landing/landing.client.js +22 -22
  483. package/dist/martyrs/src/modules/marketplace/marketplace.client.cjs.map +1 -1
  484. package/dist/martyrs/src/modules/marketplace/marketplace.client.js.map +1 -1
  485. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +1 -1
  486. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
  487. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs.map +1 -1
  488. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js.map +1 -1
  489. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs.map +1 -1
  490. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js.map +1 -1
  491. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.cjs +0 -1
  492. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.cjs.map +1 -1
  493. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js +0 -1
  494. package/dist/martyrs/src/modules/marketplace/views/router/marketplace.router.js.map +1 -1
  495. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs +25 -19
  496. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.cjs.map +1 -1
  497. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js +25 -19
  498. package/dist/martyrs/src/modules/marketplace/views/store/marketplace.js.map +1 -1
  499. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +1 -1
  500. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
  501. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +1 -1
  502. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  503. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs +1 -1
  504. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.cjs.map +1 -1
  505. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.js +1 -1
  506. package/dist/martyrs/src/modules/notifications/components/sections/NotificationsList.vue.js.map +1 -1
  507. package/dist/martyrs/src/modules/notifications/notifications.client.cjs +18 -27
  508. package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +1 -1
  509. package/dist/martyrs/src/modules/notifications/notifications.client.js +16 -25
  510. package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
  511. package/dist/martyrs/src/modules/notifications/router/notifications.router.cjs +1 -1
  512. package/dist/martyrs/src/modules/notifications/router/notifications.router.cjs.map +1 -1
  513. package/dist/martyrs/src/modules/notifications/router/notifications.router.js +1 -1
  514. package/dist/martyrs/src/modules/notifications/router/notifications.router.js.map +1 -1
  515. package/dist/martyrs/src/modules/notifications/store/notifications.store.cjs.map +1 -1
  516. package/dist/martyrs/src/modules/notifications/store/notifications.store.js.map +1 -1
  517. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +1 -1
  518. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +1 -1
  519. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
  520. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs.map +1 -1
  521. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
  522. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js.map +1 -1
  523. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
  524. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  525. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -3
  526. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
  527. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -3
  528. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
  529. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs.map +1 -1
  530. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js.map +1 -1
  531. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
  532. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
  533. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs.map +1 -1
  534. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js.map +1 -1
  535. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
  536. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
  537. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
  538. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
  539. package/dist/martyrs/src/modules/orders/orders.client.cjs +5 -5
  540. package/dist/martyrs/src/modules/orders/orders.client.cjs.map +1 -1
  541. package/dist/martyrs/src/modules/orders/orders.client.js +5 -5
  542. package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
  543. package/dist/martyrs/src/modules/orders/router/orders.router.cjs +2 -3
  544. package/dist/martyrs/src/modules/orders/router/orders.router.cjs.map +1 -1
  545. package/dist/martyrs/src/modules/orders/router/orders.router.js +2 -3
  546. package/dist/martyrs/src/modules/orders/router/orders.router.js.map +1 -1
  547. package/dist/martyrs/src/modules/orders/store/applications.cjs.map +1 -1
  548. package/dist/martyrs/src/modules/orders/store/applications.js.map +1 -1
  549. package/dist/martyrs/src/modules/orders/store/customers.store.cjs.map +1 -1
  550. package/dist/martyrs/src/modules/orders/store/customers.store.js.map +1 -1
  551. package/dist/martyrs/src/modules/orders/store/models/customer.cjs.map +1 -1
  552. package/dist/martyrs/src/modules/orders/store/models/customer.js.map +1 -1
  553. package/dist/martyrs/src/modules/orders/store/models/order.cjs.map +1 -1
  554. package/dist/martyrs/src/modules/orders/store/models/order.js.map +1 -1
  555. package/dist/martyrs/src/modules/orders/store/orders.cjs +23 -26
  556. package/dist/martyrs/src/modules/orders/store/orders.cjs.map +1 -1
  557. package/dist/martyrs/src/modules/orders/store/orders.js +23 -26
  558. package/dist/martyrs/src/modules/orders/store/orders.js.map +1 -1
  559. package/dist/martyrs/src/modules/orders/store/shopcart.cjs +94 -47
  560. package/dist/martyrs/src/modules/orders/store/shopcart.cjs.map +1 -1
  561. package/dist/martyrs/src/modules/orders/store/shopcart.js +94 -47
  562. package/dist/martyrs/src/modules/orders/store/shopcart.js.map +1 -1
  563. package/dist/martyrs/src/modules/orders/store/testimonials.cjs.map +1 -1
  564. package/dist/martyrs/src/modules/orders/store/testimonials.js.map +1 -1
  565. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
  566. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
  567. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js +16 -16
  568. package/dist/martyrs/src/modules/organizations/components/blocks/Socials.vue.js.map +1 -1
  569. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs.map +1 -1
  570. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js.map +1 -1
  571. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs.map +1 -1
  572. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js.map +1 -1
  573. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs.map +1 -1
  574. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js.map +1 -1
  575. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +2 -2
  576. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs.map +1 -1
  577. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +2 -2
  578. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js.map +1 -1
  579. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +5 -5
  580. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
  581. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +5 -5
  582. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  583. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +2 -2
  584. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs.map +1 -1
  585. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +2 -2
  586. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js.map +1 -1
  587. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
  588. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs.map +1 -1
  589. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +8 -8
  590. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
  591. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs.map +1 -1
  592. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  593. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +2 -2
  594. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs.map +1 -1
  595. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +2 -2
  596. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js.map +1 -1
  597. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs.map +1 -1
  598. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js.map +1 -1
  599. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +5 -5
  600. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs.map +1 -1
  601. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js.map +1 -1
  602. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.cjs.map +1 -1
  603. package/dist/martyrs/src/modules/organizations/components/sections/Publics.vue.js.map +1 -1
  604. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +225 -0
  605. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -0
  606. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +225 -0
  607. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -0
  608. package/dist/martyrs/src/modules/organizations/organizations.client.cjs +28 -28
  609. package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +1 -1
  610. package/dist/martyrs/src/modules/organizations/organizations.client.js +10 -10
  611. package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
  612. package/dist/martyrs/src/modules/organizations/router/backoffice.router.cjs +26 -23
  613. package/dist/martyrs/src/modules/organizations/router/backoffice.router.cjs.map +1 -1
  614. package/dist/martyrs/src/modules/organizations/router/backoffice.router.js +26 -23
  615. package/dist/martyrs/src/modules/organizations/router/backoffice.router.js.map +1 -1
  616. package/dist/martyrs/src/modules/organizations/router/departments.router.cjs +27 -23
  617. package/dist/martyrs/src/modules/organizations/router/departments.router.cjs.map +1 -1
  618. package/dist/martyrs/src/modules/organizations/router/departments.router.js +27 -23
  619. package/dist/martyrs/src/modules/organizations/router/departments.router.js.map +1 -1
  620. package/dist/martyrs/src/modules/organizations/router/members.router.cjs +17 -15
  621. package/dist/martyrs/src/modules/organizations/router/members.router.cjs.map +1 -1
  622. package/dist/martyrs/src/modules/organizations/router/members.router.js +17 -15
  623. package/dist/martyrs/src/modules/organizations/router/members.router.js.map +1 -1
  624. package/dist/martyrs/src/modules/organizations/router/organizations.cjs +73 -60
  625. package/dist/martyrs/src/modules/organizations/router/organizations.cjs.map +1 -1
  626. package/dist/martyrs/src/modules/organizations/router/organizations.js +73 -60
  627. package/dist/martyrs/src/modules/organizations/router/organizations.js.map +1 -1
  628. package/dist/martyrs/src/modules/organizations/store/departments.cjs +3 -1
  629. package/dist/martyrs/src/modules/organizations/store/departments.cjs.map +1 -1
  630. package/dist/martyrs/src/modules/organizations/store/departments.js +3 -1
  631. package/dist/martyrs/src/modules/organizations/store/departments.js.map +1 -1
  632. package/dist/martyrs/src/modules/organizations/store/invites.cjs.map +1 -1
  633. package/dist/martyrs/src/modules/organizations/store/invites.js.map +1 -1
  634. package/dist/martyrs/src/modules/organizations/store/memberships.cjs.map +1 -1
  635. package/dist/martyrs/src/modules/organizations/store/memberships.js.map +1 -1
  636. package/dist/martyrs/src/modules/organizations/store/organizations.cjs.map +1 -1
  637. package/dist/martyrs/src/modules/organizations/store/organizations.js.map +1 -1
  638. package/dist/martyrs/src/modules/pages/pages.client.cjs +2 -2
  639. package/dist/martyrs/src/modules/pages/pages.client.cjs.map +1 -1
  640. package/dist/martyrs/src/modules/pages/pages.client.js +2 -2
  641. package/dist/martyrs/src/modules/pages/pages.client.js.map +1 -1
  642. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.cjs.map +1 -1
  643. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.js.map +1 -1
  644. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  645. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  646. package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.cjs.map +1 -1
  647. package/dist/martyrs/src/modules/pages/views/components/pages/Pages.vue.js.map +1 -1
  648. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs.map +1 -1
  649. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js.map +1 -1
  650. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.cjs +35 -31
  651. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.cjs.map +1 -1
  652. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js +35 -31
  653. package/dist/martyrs/src/modules/pages/views/router/pages.backoffice.router.js.map +1 -1
  654. package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs +16 -14
  655. package/dist/martyrs/src/modules/pages/views/router/pages.router.cjs.map +1 -1
  656. package/dist/martyrs/src/modules/pages/views/router/pages.router.js +16 -14
  657. package/dist/martyrs/src/modules/pages/views/router/pages.router.js.map +1 -1
  658. package/dist/martyrs/src/modules/pages/views/store/pages.cjs +5 -2
  659. package/dist/martyrs/src/modules/pages/views/store/pages.cjs.map +1 -1
  660. package/dist/martyrs/src/modules/pages/views/store/pages.js +5 -2
  661. package/dist/martyrs/src/modules/pages/views/store/pages.js.map +1 -1
  662. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.cjs +2 -2
  663. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.cjs.map +1 -1
  664. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.js +2 -2
  665. package/dist/martyrs/src/modules/products/components/blocks/CardLeftover.vue.js.map +1 -1
  666. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs +76 -135
  667. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs.map +1 -1
  668. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +77 -136
  669. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js.map +1 -1
  670. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +4 -4
  671. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs.map +1 -1
  672. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +4 -4
  673. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
  674. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +128 -0
  675. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -0
  676. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +128 -0
  677. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -0
  678. package/dist/martyrs/src/modules/products/components/blocks/{ImagesThumbnails.vue.cjs → ProductImages.vue.cjs} +7 -7
  679. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +1 -0
  680. package/dist/martyrs/src/modules/products/components/blocks/{ImagesThumbnails.vue.js → ProductImages.vue.js} +7 -7
  681. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -0
  682. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs +141 -0
  683. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs.map +1 -0
  684. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js +141 -0
  685. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js.map +1 -0
  686. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.cjs → elements/Image360.vue.cjs} +5 -5
  687. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.cjs.map → elements/Image360.vue.cjs.map} +1 -1
  688. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.js → elements/Image360.vue.js} +5 -5
  689. package/dist/martyrs/src/modules/products/components/{blocks/Images360.vue.js.map → elements/Image360.vue.js.map} +1 -1
  690. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +19 -20
  691. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs.map +1 -1
  692. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js +20 -21
  693. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
  694. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs +71 -0
  695. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs.map +1 -0
  696. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js +71 -0
  697. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js.map +1 -0
  698. package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs +6 -6
  699. package/dist/martyrs/src/modules/products/components/elements/THC.vue.js +6 -6
  700. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.cjs +73 -0
  701. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.cjs.map +1 -0
  702. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.js +73 -0
  703. package/dist/martyrs/src/modules/products/components/forms/ColumnSettingsMenu.vue.js.map +1 -0
  704. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.cjs +101 -0
  705. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.cjs.map +1 -0
  706. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.js +101 -0
  707. package/dist/martyrs/src/modules/products/components/forms/ReorderSettingsForm.vue.js.map +1 -0
  708. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.cjs +135 -0
  709. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.cjs.map +1 -0
  710. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.js +135 -0
  711. package/dist/martyrs/src/modules/products/components/forms/StockAuditForm.vue.js.map +1 -0
  712. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.cjs +148 -0
  713. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.cjs.map +1 -0
  714. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.js +148 -0
  715. package/dist/martyrs/src/modules/products/components/forms/StockHistoryView.vue.js.map +1 -0
  716. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +2 -2
  717. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs.map +1 -1
  718. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +2 -2
  719. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  720. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +6 -6
  721. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
  722. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +6 -6
  723. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  724. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +345 -0
  725. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs.map +1 -0
  726. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +345 -0
  727. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js.map +1 -0
  728. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +279 -55
  729. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs.map +1 -1
  730. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +282 -58
  731. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js.map +1 -1
  732. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +107 -116
  733. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  734. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +116 -125
  735. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  736. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +257 -312
  737. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs.map +1 -1
  738. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +262 -317
  739. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
  740. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +2 -2
  741. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs.map +1 -1
  742. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +2 -2
  743. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js.map +1 -1
  744. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +2 -2
  745. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  746. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +2 -2
  747. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  748. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +168 -0
  749. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs.map +1 -0
  750. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +168 -0
  751. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js.map +1 -0
  752. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +319 -0
  753. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs.map +1 -0
  754. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +319 -0
  755. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js.map +1 -0
  756. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +140 -0
  757. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs.map +1 -0
  758. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +140 -0
  759. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js.map +1 -0
  760. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +468 -0
  761. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs.map +1 -0
  762. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +468 -0
  763. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js.map +1 -0
  764. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +2 -2
  765. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs.map +1 -1
  766. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +2 -2
  767. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js.map +1 -1
  768. package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.cjs.map +1 -1
  769. package/dist/martyrs/src/modules/products/components/sections/HeroRecommendation.vue.js.map +1 -1
  770. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs +1 -1
  771. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs.map +1 -1
  772. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js +1 -1
  773. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js.map +1 -1
  774. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +134 -0
  775. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs.map +1 -0
  776. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +134 -0
  777. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -0
  778. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +13 -13
  779. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs.map +1 -1
  780. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +13 -13
  781. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js.map +1 -1
  782. package/dist/martyrs/src/modules/products/products.client.cjs +20 -29
  783. package/dist/martyrs/src/modules/products/products.client.cjs.map +1 -1
  784. package/dist/martyrs/src/modules/products/products.client.js +37 -46
  785. package/dist/martyrs/src/modules/products/products.client.js.map +1 -1
  786. package/dist/martyrs/src/modules/products/router/categories.router.cjs +34 -30
  787. package/dist/martyrs/src/modules/products/router/categories.router.cjs.map +1 -1
  788. package/dist/martyrs/src/modules/products/router/categories.router.js +34 -30
  789. package/dist/martyrs/src/modules/products/router/categories.router.js.map +1 -1
  790. package/dist/martyrs/src/modules/products/router/leftovers.router.cjs +42 -39
  791. package/dist/martyrs/src/modules/products/router/leftovers.router.cjs.map +1 -1
  792. package/dist/martyrs/src/modules/products/router/leftovers.router.js +42 -39
  793. package/dist/martyrs/src/modules/products/router/leftovers.router.js.map +1 -1
  794. package/dist/martyrs/src/modules/products/router/products.router.cjs +0 -1
  795. package/dist/martyrs/src/modules/products/router/products.router.cjs.map +1 -1
  796. package/dist/martyrs/src/modules/products/router/products.router.js +0 -1
  797. package/dist/martyrs/src/modules/products/router/products.router.js.map +1 -1
  798. package/dist/martyrs/src/modules/products/store/categories.cjs +7 -3
  799. package/dist/martyrs/src/modules/products/store/categories.cjs.map +1 -1
  800. package/dist/martyrs/src/modules/products/store/categories.js +7 -3
  801. package/dist/martyrs/src/modules/products/store/categories.js.map +1 -1
  802. package/dist/martyrs/src/modules/products/store/leftovers.cjs +42 -3
  803. package/dist/martyrs/src/modules/products/store/leftovers.cjs.map +1 -1
  804. package/dist/martyrs/src/modules/products/store/leftovers.js +42 -3
  805. package/dist/martyrs/src/modules/products/store/leftovers.js.map +1 -1
  806. package/dist/martyrs/src/modules/products/store/products.cjs +32 -60
  807. package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
  808. package/dist/martyrs/src/modules/products/store/products.js +32 -60
  809. package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
  810. package/dist/martyrs/src/modules/products/store/variants.store.cjs +6 -0
  811. package/dist/martyrs/src/modules/products/store/variants.store.cjs.map +1 -0
  812. package/dist/martyrs/src/modules/products/store/variants.store.js +6 -0
  813. package/dist/martyrs/src/modules/products/store/variants.store.js.map +1 -0
  814. package/dist/martyrs/src/modules/rents/rents.client.cjs.map +1 -1
  815. package/dist/martyrs/src/modules/rents/rents.client.js.map +1 -1
  816. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -2
  817. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs.map +1 -1
  818. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -2
  819. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js.map +1 -1
  820. package/dist/martyrs/src/modules/rents/views/router/rents.router.cjs +3 -11
  821. package/dist/martyrs/src/modules/rents/views/router/rents.router.cjs.map +1 -1
  822. package/dist/martyrs/src/modules/rents/views/router/rents.router.js +3 -11
  823. package/dist/martyrs/src/modules/rents/views/router/rents.router.js.map +1 -1
  824. package/dist/martyrs/src/modules/rents/views/store/rents.store.cjs.map +1 -1
  825. package/dist/martyrs/src/modules/rents/views/store/rents.store.js.map +1 -1
  826. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs.map +1 -1
  827. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js.map +1 -1
  828. package/dist/martyrs/src/modules/reports/reports.client.cjs.map +1 -1
  829. package/dist/martyrs/src/modules/reports/reports.client.js.map +1 -1
  830. package/dist/martyrs/src/modules/reports/store/reports.cjs +1 -1
  831. package/dist/martyrs/src/modules/reports/store/reports.cjs.map +1 -1
  832. package/dist/martyrs/src/modules/reports/store/reports.js +1 -1
  833. package/dist/martyrs/src/modules/reports/store/reports.js.map +1 -1
  834. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +74 -51
  835. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs.map +1 -1
  836. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +75 -52
  837. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js.map +1 -1
  838. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
  839. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs.map +1 -1
  840. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  841. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js.map +1 -1
  842. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
  843. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs.map +1 -1
  844. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  845. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js.map +1 -1
  846. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs.map +1 -1
  847. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js.map +1 -1
  848. package/dist/martyrs/src/modules/spots/router/spots.cjs +3 -9
  849. package/dist/martyrs/src/modules/spots/router/spots.cjs.map +1 -1
  850. package/dist/martyrs/src/modules/spots/router/spots.js +3 -9
  851. package/dist/martyrs/src/modules/spots/router/spots.js.map +1 -1
  852. package/dist/martyrs/src/modules/spots/spots.client.cjs +1 -1
  853. package/dist/martyrs/src/modules/spots/spots.client.cjs.map +1 -1
  854. package/dist/martyrs/src/modules/spots/spots.client.js +1 -1
  855. package/dist/martyrs/src/modules/spots/spots.client.js.map +1 -1
  856. package/dist/martyrs/src/modules/spots/store/spots.cjs.map +1 -1
  857. package/dist/martyrs/src/modules/spots/store/spots.js.map +1 -1
  858. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +3 -3
  859. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +3 -3
  860. package/dist/martyrs/src/modules/wallet/views/router/payments.router.cjs +26 -23
  861. package/dist/martyrs/src/modules/wallet/views/router/payments.router.cjs.map +1 -1
  862. package/dist/martyrs/src/modules/wallet/views/router/payments.router.js +26 -23
  863. package/dist/martyrs/src/modules/wallet/views/router/payments.router.js.map +1 -1
  864. package/dist/martyrs/src/modules/wallet/views/store/payments.store.cjs +2 -2
  865. package/dist/martyrs/src/modules/wallet/views/store/payments.store.cjs.map +1 -1
  866. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js +2 -2
  867. package/dist/martyrs/src/modules/wallet/views/store/payments.store.js.map +1 -1
  868. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs +11 -12
  869. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.cjs.map +1 -1
  870. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js +11 -12
  871. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js.map +1 -1
  872. package/dist/martyrs.cjs.js +1 -1
  873. package/dist/martyrs.css +1 -1
  874. package/dist/martyrs.es.js +1 -1
  875. package/dist/metadata.schema-CWmcDJN7.js +268 -0
  876. package/dist/metadata.schema-RlxNv46L.cjs +267 -0
  877. package/dist/node_modules/date-fns/_lib/addLeadingZeros.cjs +9 -0
  878. package/dist/node_modules/date-fns/_lib/addLeadingZeros.cjs.map +1 -0
  879. package/dist/node_modules/date-fns/_lib/addLeadingZeros.js +9 -0
  880. package/dist/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -0
  881. package/dist/node_modules/date-fns/_lib/defaultOptions.cjs +8 -0
  882. package/dist/node_modules/date-fns/_lib/defaultOptions.cjs.map +1 -0
  883. package/dist/node_modules/date-fns/_lib/defaultOptions.js +8 -0
  884. package/dist/node_modules/date-fns/_lib/defaultOptions.js.map +1 -0
  885. package/dist/node_modules/date-fns/_lib/format/formatters.cjs +653 -0
  886. package/dist/node_modules/date-fns/_lib/format/formatters.cjs.map +1 -0
  887. package/dist/node_modules/date-fns/_lib/format/formatters.js +653 -0
  888. package/dist/node_modules/date-fns/_lib/format/formatters.js.map +1 -0
  889. package/dist/node_modules/date-fns/_lib/format/lightFormatters.cjs +63 -0
  890. package/dist/node_modules/date-fns/_lib/format/lightFormatters.cjs.map +1 -0
  891. package/dist/node_modules/date-fns/_lib/format/lightFormatters.js +63 -0
  892. package/dist/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -0
  893. package/dist/node_modules/date-fns/_lib/format/longFormatters.cjs +59 -0
  894. package/dist/node_modules/date-fns/_lib/format/longFormatters.cjs.map +1 -0
  895. package/dist/node_modules/date-fns/_lib/format/longFormatters.js +59 -0
  896. package/dist/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -0
  897. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.cjs +21 -0
  898. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.cjs.map +1 -0
  899. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js +21 -0
  900. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -0
  901. package/dist/node_modules/date-fns/_lib/normalizeDates.cjs +12 -0
  902. package/dist/node_modules/date-fns/_lib/normalizeDates.cjs.map +1 -0
  903. package/dist/node_modules/date-fns/_lib/normalizeDates.js +12 -0
  904. package/dist/node_modules/date-fns/_lib/normalizeDates.js.map +1 -0
  905. package/dist/node_modules/date-fns/_lib/protectedTokens.cjs +24 -0
  906. package/dist/node_modules/date-fns/_lib/protectedTokens.cjs.map +1 -0
  907. package/dist/node_modules/date-fns/_lib/protectedTokens.js +24 -0
  908. package/dist/node_modules/date-fns/_lib/protectedTokens.js.map +1 -0
  909. package/dist/node_modules/date-fns/constants.cjs +9 -0
  910. package/dist/node_modules/date-fns/constants.cjs.map +1 -0
  911. package/dist/node_modules/date-fns/constants.js +9 -0
  912. package/dist/node_modules/date-fns/constants.js.map +1 -0
  913. package/dist/node_modules/date-fns/constructFrom.cjs +13 -0
  914. package/dist/node_modules/date-fns/constructFrom.cjs.map +1 -0
  915. package/dist/node_modules/date-fns/constructFrom.js +13 -0
  916. package/dist/node_modules/date-fns/constructFrom.js.map +1 -0
  917. package/dist/node_modules/date-fns/differenceInCalendarDays.cjs +21 -0
  918. package/dist/node_modules/date-fns/differenceInCalendarDays.cjs.map +1 -0
  919. package/dist/node_modules/date-fns/differenceInCalendarDays.js +21 -0
  920. package/dist/node_modules/date-fns/differenceInCalendarDays.js.map +1 -0
  921. package/dist/node_modules/date-fns/format.cjs +80 -0
  922. package/dist/node_modules/date-fns/format.cjs.map +1 -0
  923. package/dist/node_modules/date-fns/format.js +80 -0
  924. package/dist/node_modules/date-fns/format.js.map +1 -0
  925. package/dist/node_modules/date-fns/getDayOfYear.cjs +14 -0
  926. package/dist/node_modules/date-fns/getDayOfYear.cjs.map +1 -0
  927. package/dist/node_modules/date-fns/getDayOfYear.js +14 -0
  928. package/dist/node_modules/date-fns/getDayOfYear.js.map +1 -0
  929. package/dist/node_modules/date-fns/getISOWeek.cjs +14 -0
  930. package/dist/node_modules/date-fns/getISOWeek.cjs.map +1 -0
  931. package/dist/node_modules/date-fns/getISOWeek.js +14 -0
  932. package/dist/node_modules/date-fns/getISOWeek.js.map +1 -0
  933. package/dist/node_modules/date-fns/getISOWeekYear.cjs +27 -0
  934. package/dist/node_modules/date-fns/getISOWeekYear.cjs.map +1 -0
  935. package/dist/node_modules/date-fns/getISOWeekYear.js +27 -0
  936. package/dist/node_modules/date-fns/getISOWeekYear.js.map +1 -0
  937. package/dist/node_modules/date-fns/getWeek.cjs +14 -0
  938. package/dist/node_modules/date-fns/getWeek.cjs.map +1 -0
  939. package/dist/node_modules/date-fns/getWeek.js +14 -0
  940. package/dist/node_modules/date-fns/getWeek.js.map +1 -0
  941. package/dist/node_modules/date-fns/getWeekYear.cjs +31 -0
  942. package/dist/node_modules/date-fns/getWeekYear.cjs.map +1 -0
  943. package/dist/node_modules/date-fns/getWeekYear.js +31 -0
  944. package/dist/node_modules/date-fns/getWeekYear.js.map +1 -0
  945. package/dist/node_modules/date-fns/isDate.cjs +8 -0
  946. package/dist/node_modules/date-fns/isDate.cjs.map +1 -0
  947. package/dist/node_modules/date-fns/isDate.js +8 -0
  948. package/dist/node_modules/date-fns/isDate.js.map +1 -0
  949. package/dist/node_modules/date-fns/isValid.cjs +10 -0
  950. package/dist/node_modules/date-fns/isValid.cjs.map +1 -0
  951. package/dist/node_modules/date-fns/isValid.js +10 -0
  952. package/dist/node_modules/date-fns/isValid.js.map +1 -0
  953. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.cjs +11 -0
  954. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.cjs.map +1 -0
  955. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +11 -0
  956. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -0
  957. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.cjs +21 -0
  958. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.cjs.map +1 -0
  959. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +21 -0
  960. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -0
  961. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.cjs +44 -0
  962. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.cjs.map +1 -0
  963. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js +44 -0
  964. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -0
  965. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.cjs +17 -0
  966. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.cjs.map +1 -0
  967. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +17 -0
  968. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -0
  969. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.cjs +86 -0
  970. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.cjs.map +1 -0
  971. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +86 -0
  972. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -0
  973. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.cjs +37 -0
  974. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.cjs.map +1 -0
  975. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js +37 -0
  976. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +1 -0
  977. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.cjs +13 -0
  978. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.cjs.map +1 -0
  979. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +13 -0
  980. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +1 -0
  981. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.cjs +165 -0
  982. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.cjs.map +1 -0
  983. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js +165 -0
  984. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -0
  985. package/dist/node_modules/date-fns/locale/en-US/_lib/match.cjs +123 -0
  986. package/dist/node_modules/date-fns/locale/en-US/_lib/match.cjs.map +1 -0
  987. package/dist/node_modules/date-fns/locale/en-US/_lib/match.js +123 -0
  988. package/dist/node_modules/date-fns/locale/en-US/_lib/match.js.map +1 -0
  989. package/dist/node_modules/date-fns/locale/en-US.cjs +22 -0
  990. package/dist/node_modules/date-fns/locale/en-US.cjs.map +1 -0
  991. package/dist/node_modules/date-fns/locale/en-US.js +22 -0
  992. package/dist/node_modules/date-fns/locale/en-US.js.map +1 -0
  993. package/dist/node_modules/date-fns/startOfDay.cjs +11 -0
  994. package/dist/node_modules/date-fns/startOfDay.cjs.map +1 -0
  995. package/dist/node_modules/date-fns/startOfDay.js +11 -0
  996. package/dist/node_modules/date-fns/startOfDay.js.map +1 -0
  997. package/dist/node_modules/date-fns/startOfISOWeek.cjs +9 -0
  998. package/dist/node_modules/date-fns/startOfISOWeek.cjs.map +1 -0
  999. package/dist/node_modules/date-fns/startOfISOWeek.js +9 -0
  1000. package/dist/node_modules/date-fns/startOfISOWeek.js.map +1 -0
  1001. package/dist/node_modules/date-fns/startOfISOWeekYear.cjs +15 -0
  1002. package/dist/node_modules/date-fns/startOfISOWeekYear.cjs.map +1 -0
  1003. package/dist/node_modules/date-fns/startOfISOWeekYear.js +15 -0
  1004. package/dist/node_modules/date-fns/startOfISOWeekYear.js.map +1 -0
  1005. package/dist/node_modules/date-fns/startOfWeek.cjs +18 -0
  1006. package/dist/node_modules/date-fns/startOfWeek.cjs.map +1 -0
  1007. package/dist/node_modules/date-fns/startOfWeek.js +18 -0
  1008. package/dist/node_modules/date-fns/startOfWeek.js.map +1 -0
  1009. package/dist/node_modules/date-fns/startOfWeekYear.cjs +20 -0
  1010. package/dist/node_modules/date-fns/startOfWeekYear.cjs.map +1 -0
  1011. package/dist/node_modules/date-fns/startOfWeekYear.js +20 -0
  1012. package/dist/node_modules/date-fns/startOfWeekYear.js.map +1 -0
  1013. package/dist/node_modules/date-fns/startOfYear.cjs +12 -0
  1014. package/dist/node_modules/date-fns/startOfYear.cjs.map +1 -0
  1015. package/dist/node_modules/date-fns/startOfYear.js +12 -0
  1016. package/dist/node_modules/date-fns/startOfYear.js.map +1 -0
  1017. package/dist/node_modules/date-fns/toDate.cjs +9 -0
  1018. package/dist/node_modules/date-fns/toDate.cjs.map +1 -0
  1019. package/dist/node_modules/date-fns/toDate.js +9 -0
  1020. package/dist/node_modules/date-fns/toDate.js.map +1 -0
  1021. package/dist/notifications.server.cjs +552 -0
  1022. package/dist/notifications.server.js +511 -621
  1023. package/dist/orders.server.cjs +820 -0
  1024. package/dist/orders.server.js +733 -838
  1025. package/dist/organizations.server.cjs +1493 -0
  1026. package/dist/organizations.server.js +1301 -1414
  1027. package/dist/ownership.schema-CCZX5vfw.js +43 -0
  1028. package/dist/ownership.schema-DCosqOc1.cjs +42 -0
  1029. package/dist/pages.server.cjs +142 -0
  1030. package/dist/pages.server.js +125 -160
  1031. package/dist/products.server.cjs +2635 -0
  1032. package/dist/products.server.js +2528 -1273
  1033. package/dist/profile.schema-DchVS-Jr.js +21 -0
  1034. package/dist/profile.schema-yQuIzngl.cjs +20 -0
  1035. package/dist/queryProcessor-B_X680wC.cjs +332 -0
  1036. package/dist/queryProcessor-CVcLPEnv.js +333 -0
  1037. package/dist/rents.server.cjs +487 -0
  1038. package/dist/rents.server.js +462 -480
  1039. package/dist/reports.server.cjs +133 -0
  1040. package/dist/reports.server.js +97 -150
  1041. package/dist/spots.server.cjs +331 -0
  1042. package/dist/spots.server.js +301 -349
  1043. package/dist/style.css +854 -724
  1044. package/dist/{tickets.controller-zEHIAe_B.js → tickets.controller-D0V0gJCA.cjs} +239 -263
  1045. package/dist/{tickets.controller-BIhfgjNb.mjs → tickets.controller-DQQcjyui.js} +222 -263
  1046. package/dist/wallet.server.cjs +528 -0
  1047. package/dist/wallet.server.js +473 -666
  1048. package/package.json +7 -6
  1049. package/src/builder/builder.js +19 -14
  1050. package/src/builder/modes/spa.dev.js +16 -39
  1051. package/src/builder/modes/spa.prod.js +15 -26
  1052. package/src/builder/modes/ssr.dev.js +123 -107
  1053. package/src/builder/modes/ssr.prod.js +19 -38
  1054. package/src/builder/modes/ssr.rspack.dev.js +70 -66
  1055. package/src/builder/modes/ssr.vite.dev.js +45 -71
  1056. package/src/builder/rspack/index.js +10 -8
  1057. package/src/builder/rspack/rspack.config.api.js +59 -0
  1058. package/src/builder/rspack/rspack.config.base.js +28 -11
  1059. package/src/builder/rspack/{rspack.config.spa.js → rspack.config.spa.client.js} +21 -26
  1060. package/src/builder/rspack/{rspack.config.client.js → rspack.config.ssr.client.js} +9 -13
  1061. package/src/builder/rspack/{rspack.config.ssr.js → rspack.config.ssr.server.js} +22 -10
  1062. package/src/builder/ssr/ssr-render-html.js +13 -12
  1063. package/src/builder/ssr/ssr-transform-webpack-stats.js +37 -25
  1064. package/src/builder/ssr/utils.js +7 -14
  1065. package/src/builder/templates/page.js +2 -2
  1066. package/src/builder/templates/screen.js +2 -2
  1067. package/src/builder/utils/hot-reload.js +1 -1
  1068. package/src/builder/vite/index.js +8 -8
  1069. package/src/builder/vite/vite.config.base.js +37 -47
  1070. package/src/builder/vite/vite.config.client.js +42 -64
  1071. package/src/builder/vite/vite.config.server.js +14 -24
  1072. package/src/builder/vite/vite.config.spa.js +37 -46
  1073. package/src/builder/vite/vite.config.ssr.js +44 -60
  1074. package/src/builder/webpack/index.js +7 -7
  1075. package/src/builder/webpack/webpack.config.base.js +54 -39
  1076. package/src/builder/webpack/webpack.config.client.js +36 -47
  1077. package/src/builder/webpack/webpack.config.server.js +23 -17
  1078. package/src/builder/webpack/webpack.config.spa.js +22 -28
  1079. package/src/builder/webpack/webpack.config.ssr.js +33 -30
  1080. package/src/components/Button/Button.vue +8 -3
  1081. package/src/components/Chips/Chips.vue +1 -1
  1082. package/src/components/Dropdown/Dropdown.vue +1 -1
  1083. package/src/components/Feed/Feed.vue +156 -63
  1084. package/src/components/Field/Field.vue +82 -75
  1085. package/src/components/FieldPhone/FieldPhone.vue +2 -2
  1086. package/src/components/FieldPhone/all-countries.js +247 -3
  1087. package/src/components/FieldPhone/click-outside.js +1 -1
  1088. package/src/components/FieldPhone/utils.js +263 -262
  1089. package/src/components/FieldTags/FieldTags.vue +375 -25
  1090. package/src/components/FieldTags/create-tags.js +15 -15
  1091. package/src/components/FieldTags/vue-tags-input.props.js +2 -9
  1092. package/src/components/Map/LoaderGMaps.js +4 -4
  1093. package/src/components/Popup/Popup.vue +142 -89
  1094. package/src/components/Select/Select.vue +2 -4
  1095. package/src/components/SelectMulti/SelectMulti.vue +911 -656
  1096. package/src/components/Table/Table.vue +21 -64
  1097. package/src/components/UploadImageMultiple/UploadImageMultiple.vue +4 -4
  1098. package/src/components/index.js +10 -10
  1099. package/src/configurator/router/configurator.router.js +10 -8
  1100. package/src/main.js +79 -80
  1101. package/src/modules/auth/auth.client.js +17 -18
  1102. package/src/modules/auth/auth.server.js +32 -42
  1103. package/src/modules/auth/controllers/middlewares/authJwt.js +16 -34
  1104. package/src/modules/auth/controllers/middlewares/authSecret.js +2 -8
  1105. package/src/modules/auth/controllers/middlewares/index.js +15 -10
  1106. package/src/modules/auth/controllers/middlewares/verifyInvites.js +13 -21
  1107. package/src/modules/auth/controllers/middlewares/verifySignUp.js +7 -16
  1108. package/src/modules/auth/controllers/middlewares/verifyUser.js +20 -31
  1109. package/src/modules/auth/controllers/middlewares/visitor.logger.js +10 -23
  1110. package/src/modules/auth/controllers/routes/auth.routes.js +9 -29
  1111. package/src/modules/auth/controllers/routes/twofa.routes.js +6 -23
  1112. package/src/modules/auth/controllers/routes/users.routes.js +8 -39
  1113. package/src/modules/auth/controllers/services/auth.service.js +49 -82
  1114. package/src/modules/auth/controllers/services/twofa.service.js +6 -13
  1115. package/src/modules/auth/controllers/services/users.service.js +31 -70
  1116. package/src/modules/auth/controllers/utils/verifyAppleIdToken.js +47 -54
  1117. package/src/modules/auth/models/request.model.js +5 -9
  1118. package/src/modules/auth/models/role.model.js +3 -7
  1119. package/src/modules/auth/models/user.model.js +39 -41
  1120. package/src/modules/auth/models/visitor.model.js +3 -6
  1121. package/src/modules/auth/views/components/layouts/Auth.vue +1 -1
  1122. package/src/modules/auth/views/components/pages/EnterCode.vue +3 -3
  1123. package/src/modules/auth/views/components/pages/EnterPassword.vue +1 -1
  1124. package/src/modules/auth/views/components/pages/Invite.vue +2 -2
  1125. package/src/modules/auth/views/components/pages/Profile.vue +3 -3
  1126. package/src/modules/auth/views/components/pages/ProfileBlogposts.vue +3 -3
  1127. package/src/modules/auth/views/components/pages/ProfileEdit.vue +3 -3
  1128. package/src/modules/auth/views/components/pages/ResetPassword.vue +3 -3
  1129. package/src/modules/auth/views/components/pages/SignIn.vue +2 -2
  1130. package/src/modules/auth/views/components/pages/SignUp.vue +3 -3
  1131. package/src/modules/auth/views/components/sections/FeaturedUsers.vue +1 -1
  1132. package/src/modules/auth/views/components/sections/ProfileEditCredentials.vue +2 -2
  1133. package/src/modules/auth/views/localization/EnterCode.json +1 -1
  1134. package/src/modules/auth/views/localization/EnterPassword.json +1 -1
  1135. package/src/modules/auth/views/localization/ResetPassword.json +1 -1
  1136. package/src/modules/auth/views/localization/SignUp.json +1 -1
  1137. package/src/modules/auth/views/middlewares/auth.validation.js +16 -29
  1138. package/src/modules/auth/views/middlewares/ownership.validation.js +9 -14
  1139. package/src/modules/auth/views/router/auth.js +66 -77
  1140. package/src/modules/auth/views/router/users.js +87 -89
  1141. package/src/modules/auth/views/store/auth.js +41 -39
  1142. package/src/modules/auth/views/store/twofa.js +44 -42
  1143. package/src/modules/auth/views/store/users.js +22 -26
  1144. package/src/modules/auth/views/validations/inputs.validation.js +53 -59
  1145. package/src/modules/backoffice/backoffice.client.js +8 -8
  1146. package/src/modules/backoffice/components/pages/Dashboard.vue +3 -3
  1147. package/src/modules/backoffice/components/partials/Sidebar.vue +2 -2
  1148. package/src/modules/backoffice/router/backoffice.js +49 -49
  1149. package/src/modules/chats/chats.client.js +9 -9
  1150. package/src/modules/chats/chats.server.js +18 -23
  1151. package/src/modules/chats/controllers/chats.controller.js +8 -15
  1152. package/src/modules/chats/models/chat.model.js +6 -9
  1153. package/src/modules/chats/routes/chats.routes.js +12 -20
  1154. package/src/modules/chats/store/chat.store.js +14 -11
  1155. package/src/modules/community/community.client.js +13 -26
  1156. package/src/modules/community/community.server.js +30 -35
  1157. package/src/modules/community/components/blocks/FooterBlogpost.vue +1 -1
  1158. package/src/modules/community/components/layouts/Community.vue +6 -4
  1159. package/src/modules/community/components/pages/Blog.vue +1 -1
  1160. package/src/modules/community/components/pages/BlogPost.vue +1 -1
  1161. package/src/modules/community/components/pages/CreateBlogPost.vue +5 -5
  1162. package/src/modules/community/components/sections/Comment.vue +2 -2
  1163. package/src/modules/community/components/sections/HotPosts.vue +1 -1
  1164. package/src/modules/community/controllers/blog.controller.js +103 -139
  1165. package/src/modules/community/controllers/comments.controller.js +79 -124
  1166. package/src/modules/community/controllers/reactions.controller.js +32 -59
  1167. package/src/modules/community/controllers/utils/queryProcessor.js +13 -17
  1168. package/src/modules/community/controllers/utils/queryProcessorReactions.js +28 -34
  1169. package/src/modules/community/middlewares/server/index.js +7 -5
  1170. package/src/modules/community/middlewares/server/verifyBlogpost.js +9 -14
  1171. package/src/modules/community/models/blogpost.model.js +33 -34
  1172. package/src/modules/community/models/comment.model.js +48 -50
  1173. package/src/modules/community/models/reaction.model.js +48 -46
  1174. package/src/modules/community/router/blogposts.js +52 -50
  1175. package/src/modules/community/routes/blog.routes.js +15 -49
  1176. package/src/modules/community/routes/comments.routes.js +14 -44
  1177. package/src/modules/community/routes/reactions.routes.js +10 -43
  1178. package/src/modules/community/store/blogposts.js +54 -59
  1179. package/src/modules/community/store/reactions.js +9 -13
  1180. package/src/modules/constructor/components/elements/Embed.vue +3 -3
  1181. package/src/modules/constructor/components/elements/ImageUpload.vue +3 -3
  1182. package/src/modules/core/classes/event.js +48 -0
  1183. package/src/modules/core/classes/memory-tracker.js +1063 -0
  1184. package/src/modules/{globals/views/core → core/classes}/module-manager.js +43 -46
  1185. package/src/modules/{globals/views/core → core/classes}/module.js +52 -53
  1186. package/src/modules/core/model/Adapter.js +17 -0
  1187. package/src/modules/core/model/Adapter.mogodb.js +65 -0
  1188. package/src/modules/core/model/Adapter.postgre.js +127 -0
  1189. package/src/modules/core/model/Model.js +99 -0
  1190. package/src/modules/core/model/Schema.js +70 -0
  1191. package/src/modules/core/model/Validation.js +97 -0
  1192. package/src/modules/events/components/elements/ButtonCheck.vue +1 -1
  1193. package/src/modules/events/components/elements/ButtonJoin.vue +2 -2
  1194. package/src/modules/events/components/pages/EditEvent.vue +5 -5
  1195. package/src/modules/events/components/pages/EditEventTickets.vue +3 -3
  1196. package/src/modules/events/components/pages/Event.vue +1 -2
  1197. package/src/modules/events/components/pages/Events.vue +3 -3
  1198. package/src/modules/events/components/pages/EventsBackoffice.vue +1 -1
  1199. package/src/modules/events/components/pages/EventsSearch.vue +1 -1
  1200. package/src/modules/events/components/sections/EventsHot.vue +1 -1
  1201. package/src/modules/events/components/sections/FeaturedEvents.vue +1 -1
  1202. package/src/modules/events/controllers/events.controller.js +90 -155
  1203. package/src/modules/events/controllers/tickets.controller.js +157 -220
  1204. package/src/modules/events/controllers/utils/queryProcessor.js +117 -123
  1205. package/src/modules/events/controllers/utils/templateEmail.js +6 -7
  1206. package/src/modules/events/controllers/utils/templateTicket.js +6 -7
  1207. package/src/modules/events/events.client.js +22 -28
  1208. package/src/modules/events/events.server.js +25 -32
  1209. package/src/modules/events/middlewares/server/index.js +6 -5
  1210. package/src/modules/events/middlewares/server/verifyEvent.js +29 -31
  1211. package/src/modules/events/models/event.model.js +68 -70
  1212. package/src/modules/events/models/ticket.model.js +55 -55
  1213. package/src/modules/events/router/events.js +28 -38
  1214. package/src/modules/events/routes/events.routes.js +15 -49
  1215. package/src/modules/events/routes/tickets.routes.js +7 -21
  1216. package/src/modules/events/store/events.js +41 -50
  1217. package/src/modules/events/store/tickets.js +11 -14
  1218. package/src/modules/files/controllers/files.controller.js +5 -17
  1219. package/src/modules/files/files.server.js +13 -16
  1220. package/src/modules/files/middlewares/server/index.js +7 -5
  1221. package/src/modules/files/middlewares/server/middlewareBusboy.js +62 -123
  1222. package/src/modules/files/routes/files.routes.js +11 -40
  1223. package/src/modules/gallery/components/pages/Gallery.vue +1 -1
  1224. package/src/modules/gallery/components/sections/BackofficeGallery.vue +3 -3
  1225. package/src/modules/gallery/controllers/gallery.controller.js +27 -58
  1226. package/src/modules/gallery/gallery.client.js +11 -11
  1227. package/src/modules/gallery/gallery.server.js +18 -23
  1228. package/src/modules/gallery/models/photo.model.js +27 -29
  1229. package/src/modules/gallery/router/gallery.backoffice.router.js +14 -14
  1230. package/src/modules/gallery/router/gallery.router.js +2 -2
  1231. package/src/modules/gallery/routes/gallery.routes.js +12 -44
  1232. package/src/modules/gallery/store/gallery.js +3 -3
  1233. package/src/modules/globals/controllers/classes/abac/abac.adapter.express.js +194 -0
  1234. package/src/modules/globals/controllers/classes/abac/abac.adapter.ws.js +84 -0
  1235. package/src/modules/globals/controllers/classes/abac/abac.core.js +220 -0
  1236. package/src/modules/globals/controllers/classes/abac/abac.fields.js +376 -0
  1237. package/src/modules/globals/controllers/classes/abac/abac.js +104 -0
  1238. package/src/modules/globals/controllers/classes/abac/abac.policies.js +226 -0
  1239. package/src/modules/globals/controllers/classes/crud/crud.controller.js +314 -0
  1240. package/src/modules/globals/controllers/classes/crud/crud.core.js +230 -0
  1241. package/src/modules/globals/controllers/classes/crud/crud.events.js +209 -0
  1242. package/src/modules/globals/controllers/classes/crud/crud.js +169 -0
  1243. package/src/modules/globals/controllers/classes/crud/crud.policies.js +256 -0
  1244. package/src/modules/globals/controllers/classes/crud/crud.service.js +285 -0
  1245. package/src/modules/globals/controllers/classes/globals.abac.js +69 -120
  1246. package/src/modules/globals/controllers/classes/globals.cache.js +2 -15
  1247. package/src/modules/globals/controllers/classes/globals.crud.js +15 -43
  1248. package/src/modules/globals/controllers/classes/globals.logger.js +2 -6
  1249. package/src/modules/globals/controllers/classes/globals.observer.js +36 -43
  1250. package/src/modules/globals/controllers/classes/globals.validator.js +62 -88
  1251. package/src/modules/globals/controllers/classes/globals.verifier.js +144 -128
  1252. package/src/modules/globals/controllers/classes/globals.webhook.js +1 -3
  1253. package/src/modules/globals/controllers/classes/globals.websocket.js +29 -89
  1254. package/src/modules/globals/controllers/classes/globals.websocket.ws.js +6 -28
  1255. package/src/modules/globals/controllers/policies/globals.policies.js +33 -50
  1256. package/src/modules/globals/controllers/utils/mailing.js +26 -34
  1257. package/src/modules/globals/controllers/utils/parseCookie.js +2 -5
  1258. package/src/modules/globals/controllers/utils/queryProcessor.js +188 -127
  1259. package/src/modules/globals/controllers/utils/seo-friendly-url.js +195 -48
  1260. package/src/modules/globals/controllers/utils/sitemap.js +14 -20
  1261. package/src/modules/globals/globals.client.js +55 -53
  1262. package/src/modules/globals/globals.server.js +22 -14
  1263. package/src/modules/globals/models/schemas/common.schema.js +4 -4
  1264. package/src/modules/globals/models/schemas/credentials.schema.js +3 -3
  1265. package/src/modules/globals/models/schemas/engagement.schema.js +6 -16
  1266. package/src/modules/globals/models/schemas/metadata.schema.js +16 -20
  1267. package/src/modules/globals/models/schemas/ownership.schema.js +16 -13
  1268. package/src/modules/globals/models/schemas/profile.schema.js +6 -7
  1269. package/src/modules/globals/models/schemas/socials.schema.js +9 -9
  1270. package/src/modules/globals/views/classes/globals.store.js +25 -22
  1271. package/src/modules/globals/views/classes/globals.websocket.js +16 -16
  1272. package/src/modules/globals/views/classes/globals.websocket.ws.js +1 -1
  1273. package/src/modules/globals/views/classes/store.js +18 -19
  1274. package/src/modules/globals/views/components/blocks/BlockMultiselect.vue +364 -0
  1275. package/src/modules/globals/views/components/blocks/Card.vue +75 -46
  1276. package/src/modules/globals/views/components/blocks/CardFooter.vue +1 -1
  1277. package/src/modules/globals/views/components/blocks/CardHeader.vue +0 -1
  1278. package/src/modules/globals/views/components/elements/ButtonDate.vue +2 -2
  1279. package/src/modules/globals/views/components/layouts/App.vue +2 -2
  1280. package/src/modules/globals/views/components/layouts/Client.vue +2 -2
  1281. package/src/modules/globals/views/components/partials/BottomNavigationBar.vue +1 -1
  1282. package/src/modules/globals/views/components/partials/Footer.vue +1 -1
  1283. package/src/modules/globals/views/components/partials/Header.vue +3 -3
  1284. package/src/modules/globals/views/components/partials/LocationSelection.vue +1 -1
  1285. package/src/modules/globals/views/components/partials/Navigation.vue +11 -19
  1286. package/src/modules/globals/views/components/partials/NavigationBar.vue +3 -3
  1287. package/src/modules/globals/views/components/partials/Sidebar.vue +1 -1
  1288. package/src/modules/globals/views/localization/get-browser-locale.js +7 -12
  1289. package/src/modules/globals/views/middlewares/localization.js +3 -6
  1290. package/src/modules/globals/views/mixins/mixins.js +152 -134
  1291. package/src/modules/globals/views/plugins/alert.plugin.js +28 -28
  1292. package/src/modules/globals/views/plugins/date-picker.plugin.js +85 -0
  1293. package/src/modules/globals/views/plugins/store-debugger/StoreDebugger.vue +284 -0
  1294. package/src/modules/globals/views/plugins/store-debugger/store-debugger.plugin.js +24 -0
  1295. package/src/modules/globals/views/router/addRoutes.js +15 -17
  1296. package/src/modules/globals/views/router/scrollBehavior.js +17 -13
  1297. package/src/modules/globals/views/store/globals.js +64 -78
  1298. package/src/modules/globals/views/utils/axios-instance.js +1 -1
  1299. package/src/modules/globals/views/utils/vue-app-renderer.js +23 -26
  1300. package/src/modules/governance/controllers/factories/initiatives.controller.js +23 -29
  1301. package/src/modules/governance/controllers/factories/tasks.controller.js +21 -27
  1302. package/src/modules/governance/controllers/factories/votes.controller.js +17 -21
  1303. package/src/modules/governance/controllers/factories/votings.controller.js +25 -32
  1304. package/src/modules/governance/controllers/routes/initiatives.routes.js +10 -12
  1305. package/src/modules/governance/controllers/routes/tasks.routes.js +10 -12
  1306. package/src/modules/governance/controllers/routes/votes.routes.js +8 -10
  1307. package/src/modules/governance/controllers/routes/votings.routes.js +11 -13
  1308. package/src/modules/governance/governance.client.js +7 -7
  1309. package/src/modules/governance/governance.server.js +36 -39
  1310. package/src/modules/governance/models/initiative.model.js +26 -22
  1311. package/src/modules/governance/models/milestone.model.js +86 -82
  1312. package/src/modules/governance/models/task.model.js +48 -45
  1313. package/src/modules/governance/models/vote.model.js +18 -16
  1314. package/src/modules/governance/models/voting.model.js +23 -19
  1315. package/src/modules/governance/views/router/goverance.router.js +56 -80
  1316. package/src/modules/governance/views/store/initiatives.js +8 -11
  1317. package/src/modules/governance/views/store/projects.js +57 -66
  1318. package/src/modules/governance/views/store/tasks.js +9 -14
  1319. package/src/modules/governance/views/store/votes.js +8 -13
  1320. package/src/modules/governance/views/store/votings.js +7 -11
  1321. package/src/modules/icons/actions/IconDuplicate.vue +17 -0
  1322. package/src/modules/icons/entities/IconDiscount.vue +23 -0
  1323. package/src/modules/icons/entities/IconSettings.vue +32 -0
  1324. package/src/modules/icons/icons.client.js +118 -96
  1325. package/src/modules/icons/pages/IconsPage.vue +300 -0
  1326. package/src/modules/icons/router/icons.router.js +34 -0
  1327. package/src/modules/integrations/integrations.service.js +34 -91
  1328. package/src/modules/integrations/openai/openai.globals.js +116 -0
  1329. package/src/modules/integrations/paypal/controllers/webhooks/paypal.webhook.js +15 -19
  1330. package/src/modules/integrations/stripe/controllers/services/stripe.service.js +241 -285
  1331. package/src/modules/integrations/stripe/controllers/webhooks/stripe.webhook.js +8 -17
  1332. package/src/modules/integrations/tinkoff/controllers/services/tinkoff.service.js +111 -119
  1333. package/src/modules/integrations/tinkoff/models/tinkoff.payment.model.js +12 -13
  1334. package/src/modules/inventory/inventory.server.js +23 -0
  1335. package/src/modules/inventory/models/stock.adjustment.model.js +63 -0
  1336. package/src/modules/inventory/models/stock.availability.model.js +56 -0
  1337. package/src/modules/inventory/models/stock.balance.model.js +43 -0
  1338. package/src/modules/inventory/models/stock.inventory.model.js +38 -0
  1339. package/src/modules/inventory/policies/inventory.policies.js +47 -0
  1340. package/src/modules/inventory/routes/inventory.routes.js +61 -0
  1341. package/src/modules/inventory/services/inventory.crud.js +527 -0
  1342. package/src/modules/inventory/services/inventory.verifier.js +81 -0
  1343. package/src/modules/inventory/store/ inventory.store.js +131 -0
  1344. package/src/modules/inventory/workers/inventory.availability.worker.js +300 -0
  1345. package/src/modules/landing/landing.client.js +16 -16
  1346. package/src/modules/marketplace/marketplace.client.js +12 -13
  1347. package/src/modules/marketplace/views/components/layouts/Marketplace.vue +2 -2
  1348. package/src/modules/marketplace/views/components/pages/Catalog.vue +2 -2
  1349. package/src/modules/marketplace/views/components/sections/SectionMenu.vue +2 -2
  1350. package/src/modules/marketplace/views/router/marketplace.router.js +9 -11
  1351. package/src/modules/marketplace/views/store/marketplace.js +33 -29
  1352. package/src/modules/music/components/cards/ArtistCard.vue +62 -15
  1353. package/src/modules/music/components/lists/ArtistList.vue +267 -12
  1354. package/src/modules/music/components/pages/ArtistDetail.vue +375 -189
  1355. package/src/modules/music/components/pages/ArtistForm.vue +426 -0
  1356. package/src/modules/music/components/pages/ArtistManager.vue +277 -0
  1357. package/src/modules/music/components/pages/MusicLibrary.vue +5 -8
  1358. package/src/modules/music/controllers/album.controller.js +15 -31
  1359. package/src/modules/music/controllers/artist.controller.js +29 -41
  1360. package/src/modules/music/controllers/genre.controller.js +23 -31
  1361. package/src/modules/music/controllers/music.controller.js +28 -57
  1362. package/src/modules/music/controllers/playlist.controller.js +20 -56
  1363. package/src/modules/music/controllers/search.controller.js +37 -62
  1364. package/src/modules/music/controllers/stream.controller.js +16 -32
  1365. package/src/modules/music/models/album.model.js +54 -51
  1366. package/src/modules/music/models/artist.model.js +50 -52
  1367. package/src/modules/music/models/genre.model.js +27 -31
  1368. package/src/modules/music/models/play-history.model.js +41 -42
  1369. package/src/modules/music/models/playlist.model.js +54 -54
  1370. package/src/modules/music/models/track.model.js +65 -69
  1371. package/src/modules/music/music.client.js +55 -52
  1372. package/src/modules/music/music.server.js +62 -77
  1373. package/src/modules/music/policies/music.policies.js +9 -29
  1374. package/src/modules/music/router/music.js +38 -19
  1375. package/src/modules/music/routes/album.routes.js +21 -55
  1376. package/src/modules/music/routes/artist.routes.js +22 -59
  1377. package/src/modules/music/routes/genre.routes.js +21 -53
  1378. package/src/modules/music/routes/music.routes.js +74 -113
  1379. package/src/modules/music/routes/playlist.routes.js +36 -88
  1380. package/src/modules/music/routes/search.routes.js +5 -9
  1381. package/src/modules/music/routes/stream.routes.js +23 -34
  1382. package/src/modules/music/store/albums.js +34 -34
  1383. package/src/modules/music/store/artists.js +31 -28
  1384. package/src/modules/music/store/player.js +71 -73
  1385. package/src/modules/music/store/playlists.js +37 -37
  1386. package/src/modules/music/store/search.js +25 -25
  1387. package/src/modules/music/store/tracks.js +40 -45
  1388. package/src/modules/music/websocket/streaming.handler.js +58 -76
  1389. package/src/modules/notifications/components/elements/NotificationBadge.vue +1 -1
  1390. package/src/modules/notifications/components/sections/NotificationsList.vue +1 -1
  1391. package/src/modules/notifications/controllers/notifications.controller.js +32 -62
  1392. package/src/modules/notifications/middlewares/notifications.abac.js +1 -5
  1393. package/src/modules/notifications/models/notification-log.model.js +8 -5
  1394. package/src/modules/notifications/models/notification-preference.model.js +8 -6
  1395. package/src/modules/notifications/models/notification.model.js +2 -3
  1396. package/src/modules/notifications/models/user-device.model.js +3 -5
  1397. package/src/modules/notifications/notifications.client.js +65 -75
  1398. package/src/modules/notifications/notifications.server.js +31 -44
  1399. package/src/modules/notifications/router/notifications.router.js +8 -8
  1400. package/src/modules/notifications/routes/notifications.routes.js +4 -11
  1401. package/src/modules/notifications/services/apns.service.js +4 -13
  1402. package/src/modules/notifications/services/email.service.js +4 -8
  1403. package/src/modules/notifications/services/fcm.service.js +4 -11
  1404. package/src/modules/notifications/services/notification.service.js +49 -84
  1405. package/src/modules/notifications/services/sms.service.js +4 -7
  1406. package/src/modules/notifications/services/telegram.service.js +4 -7
  1407. package/src/modules/notifications/services/web-push.service.js +14 -23
  1408. package/src/modules/notifications/services/whatsapp.service.js +4 -11
  1409. package/src/modules/notifications/store/notifications.store.js +50 -55
  1410. package/src/modules/orders/components/pages/OrderBackoffice.vue +5 -5
  1411. package/src/modules/orders/components/pages/OrderCreate.vue +6 -6
  1412. package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +5 -5
  1413. package/src/modules/orders/components/pages/Orders.vue +2 -2
  1414. package/src/modules/orders/components/partials/ShopCart.vue +3 -3
  1415. package/src/modules/orders/components/sections/FormAddCustomer.vue +5 -5
  1416. package/src/modules/orders/components/sections/FormDelivery.vue +2 -2
  1417. package/src/modules/orders/controllers/applications.controller.js +37 -67
  1418. package/src/modules/orders/controllers/orders.controller.js +96 -155
  1419. package/src/modules/orders/controllers/testimonials.controller.js +22 -31
  1420. package/src/modules/orders/models/application.model.js +25 -24
  1421. package/src/modules/orders/models/customer.model.js +61 -55
  1422. package/src/modules/orders/models/order.model.js +80 -81
  1423. package/src/modules/orders/models/testimonial.model.js +7 -9
  1424. package/src/modules/orders/orders.client.js +24 -26
  1425. package/src/modules/orders/orders.server.js +27 -32
  1426. package/src/modules/orders/router/orders.router.js +21 -22
  1427. package/src/modules/orders/routes/applications.routes.js +10 -40
  1428. package/src/modules/orders/routes/orders.routes.js +8 -19
  1429. package/src/modules/orders/routes/testimonials.routes.js +9 -29
  1430. package/src/modules/orders/store/applications.js +34 -39
  1431. package/src/modules/orders/store/customers.store.js +3 -3
  1432. package/src/modules/orders/store/models/customer.js +5 -5
  1433. package/src/modules/orders/store/models/order.js +4 -4
  1434. package/src/modules/orders/store/orders.js +61 -76
  1435. package/src/modules/orders/store/shopcart.js +150 -98
  1436. package/src/modules/orders/store/testimonials.js +7 -10
  1437. package/src/modules/organizations/components/elements/ButtonToggleMembership.vue +2 -2
  1438. package/src/modules/organizations/components/pages/Department.vue +1 -1
  1439. package/src/modules/organizations/components/pages/DepartmentEdit.vue +3 -3
  1440. package/src/modules/organizations/components/pages/Members.vue +6 -6
  1441. package/src/modules/organizations/components/pages/Organization.vue +9 -9
  1442. package/src/modules/organizations/components/pages/OrganizationBackoffice.vue +2 -2
  1443. package/src/modules/organizations/components/pages/OrganizationCreate.vue +2 -2
  1444. package/src/modules/organizations/components/pages/OrganizationDetails.vue +2 -2
  1445. package/src/modules/organizations/components/pages/OrganizationEdit.vue +3 -3
  1446. package/src/modules/organizations/components/pages/OrganizationPeople.vue +1 -1
  1447. package/src/modules/organizations/components/pages/Organizations.vue +2 -2
  1448. package/src/modules/organizations/components/sections/DetailsTabSection.vue +2 -2
  1449. package/src/modules/organizations/components/sections/MembersAdd.vue +1 -1
  1450. package/src/modules/organizations/components/sections/Organizations.vue +3 -3
  1451. package/src/modules/organizations/components/sections/Publics.vue +3 -3
  1452. package/src/modules/organizations/configs/navigation.organization.config.js +227 -0
  1453. package/src/modules/organizations/controllers/departments.controller.js +11 -22
  1454. package/src/modules/organizations/controllers/invites.controller.js +14 -30
  1455. package/src/modules/organizations/controllers/memberships.controller.js +21 -54
  1456. package/src/modules/organizations/controllers/organizations.controller.js +32 -83
  1457. package/src/modules/organizations/controllers/utils/addMembersQuantity.js +11 -12
  1458. package/src/modules/organizations/controllers/utils/addUserStatusFields.js +31 -41
  1459. package/src/modules/organizations/controllers/utils/lookupConfigs.js +31 -31
  1460. package/src/modules/organizations/controllers/utils/queryProcessor.js +40 -51
  1461. package/src/modules/organizations/controllers/utils/queryProcessorOrganizations.js +124 -147
  1462. package/src/modules/organizations/middlewares/verifyAccesses.js +7 -25
  1463. package/src/modules/organizations/middlewares/verifyAccessesRefactored.js +26 -51
  1464. package/src/modules/organizations/models/department.model.js +58 -59
  1465. package/src/modules/organizations/models/invite.model.js +45 -42
  1466. package/src/modules/organizations/models/membership.model.js +35 -35
  1467. package/src/modules/organizations/models/organization.model.js +65 -80
  1468. package/src/modules/organizations/models/schemas/accesses.schema.js +1 -2
  1469. package/src/modules/organizations/organizations.client.js +45 -46
  1470. package/src/modules/organizations/organizations.server.js +40 -41
  1471. package/src/modules/organizations/policies/organizations.policies.js +193 -85
  1472. package/src/modules/organizations/router/backoffice.router.js +22 -20
  1473. package/src/modules/organizations/router/departments.router.js +27 -23
  1474. package/src/modules/organizations/router/members.router.js +18 -18
  1475. package/src/modules/organizations/router/organizations.js +74 -66
  1476. package/src/modules/organizations/routes/departments.routes.js +9 -20
  1477. package/src/modules/organizations/routes/invites.routes.js +9 -31
  1478. package/src/modules/organizations/routes/memberships.routes.js +7 -23
  1479. package/src/modules/organizations/routes/organizations.routes.js +15 -40
  1480. package/src/modules/organizations/store/departments.js +13 -14
  1481. package/src/modules/organizations/store/invites.js +38 -41
  1482. package/src/modules/organizations/store/memberships.js +21 -26
  1483. package/src/modules/organizations/store/organizations.js +40 -46
  1484. package/src/modules/pages/controllers/factories/pages.factory.js +6 -27
  1485. package/src/modules/pages/controllers/routes/pages.routes.js +7 -23
  1486. package/src/modules/pages/models/page.model.js +22 -20
  1487. package/src/modules/pages/pages.client.js +12 -12
  1488. package/src/modules/pages/pages.server.js +18 -21
  1489. package/src/modules/pages/views/components/pages/Page.vue +1 -1
  1490. package/src/modules/pages/views/components/pages/Pages.vue +1 -1
  1491. package/src/modules/pages/views/components/partials/SidebarPages.vue +1 -1
  1492. package/src/modules/pages/views/router/pages.backoffice.router.js +29 -29
  1493. package/src/modules/pages/views/router/pages.router.js +16 -14
  1494. package/src/modules/pages/views/store/pages.js +12 -11
  1495. package/src/modules/pages/views/store/pages.store.js +3 -3
  1496. package/src/modules/products/components/blocks/CardLeftover.vue +1 -1
  1497. package/src/modules/products/components/blocks/CardPosition.vue +94 -157
  1498. package/src/modules/products/components/blocks/CardProduct.vue +5 -5
  1499. package/src/modules/products/components/blocks/ProductDiscounts.vue +141 -0
  1500. package/src/modules/products/components/blocks/{ImagesThumbnails.vue → ProductImages.vue} +3 -4
  1501. package/src/modules/products/components/blocks/ProductVariants.vue +125 -0
  1502. package/src/modules/products/components/elements/Price.vue +34 -37
  1503. package/src/modules/products/components/elements/QuantitySelector.vue +52 -0
  1504. package/src/modules/products/components/elements/THC.vue +6 -6
  1505. package/src/modules/products/components/forms/ColumnSettingsMenu.vue +80 -0
  1506. package/src/modules/products/components/forms/ReorderSettingsForm.vue +107 -0
  1507. package/src/modules/products/components/forms/StockAuditForm.vue +154 -0
  1508. package/src/modules/products/components/forms/StockHistoryView.vue +134 -0
  1509. package/src/modules/products/components/pages/Categories.vue +5 -5
  1510. package/src/modules/products/components/pages/CategoryEdit.vue +8 -44
  1511. package/src/modules/products/components/pages/LeftoverEdit.vue +360 -0
  1512. package/src/modules/products/components/pages/Leftovers.vue +288 -131
  1513. package/src/modules/products/components/pages/Product.vue +171 -100
  1514. package/src/modules/products/components/pages/ProductEdit.vue +329 -461
  1515. package/src/modules/products/components/pages/ProductRecommmendation.vue +2 -2
  1516. package/src/modules/products/components/pages/Products.vue +7 -7
  1517. package/src/modules/products/components/sections/EditAttributes.vue +154 -0
  1518. package/src/modules/products/components/sections/EditCategories.vue +149 -0
  1519. package/src/modules/products/components/sections/EditDiscounts.vue +308 -0
  1520. package/src/modules/products/components/sections/EditIngredients.vue +130 -0
  1521. package/src/modules/products/components/sections/EditVariants.vue +453 -0
  1522. package/src/modules/products/components/sections/FilterProducts.vue +4 -4
  1523. package/src/modules/products/components/sections/HeroRecommendation.vue +1 -1
  1524. package/src/modules/products/components/sections/PopularProducts.vue +2 -2
  1525. package/src/modules/products/components/sections/ProductConfigurator.vue +131 -0
  1526. package/src/modules/products/components/sections/SectionProduct.vue +17 -17
  1527. package/src/modules/products/controllers/categories.controller.js +45 -143
  1528. package/src/modules/products/controllers/configs/products.lookup.config.js +135 -0
  1529. package/src/modules/products/controllers/leftovers.controller.js +38 -62
  1530. package/src/modules/products/controllers/products.controller.js +103 -364
  1531. package/src/modules/products/controllers/queries/products.queries.js +112 -0
  1532. package/src/modules/products/middlewares/categories.verifier.js +94 -72
  1533. package/src/modules/products/middlewares/variants.verifier.js +226 -0
  1534. package/src/modules/products/models/category.model.js +26 -22
  1535. package/src/modules/products/models/leftover.model.js +61 -44
  1536. package/src/modules/products/models/product.model.js +54 -119
  1537. package/src/modules/products/models/schemas/discount.schema.js +33 -0
  1538. package/src/modules/products/models/schemas/ingredient.schema.js +46 -0
  1539. package/src/modules/products/models/variant.model.js +66 -0
  1540. package/src/modules/products/products.client.js +31 -41
  1541. package/src/modules/products/products.server.js +34 -35
  1542. package/src/modules/products/router/categories.router.js +34 -30
  1543. package/src/modules/products/router/leftovers.router.js +32 -30
  1544. package/src/modules/products/router/products.router.js +18 -21
  1545. package/src/modules/products/routes/categories.routes.js +13 -52
  1546. package/src/modules/products/routes/leftovers.routes.js +9 -27
  1547. package/src/modules/products/routes/products.routes.js +8 -27
  1548. package/src/modules/products/routes/variants.routes.js +102 -0
  1549. package/src/modules/products/store/categories.js +24 -23
  1550. package/src/modules/products/store/leftovers.js +53 -17
  1551. package/src/modules/products/store/products.js +73 -125
  1552. package/src/modules/products/store/variants.store.js +5 -0
  1553. package/src/modules/rents/controllers/routes/rents.routes.js +12 -21
  1554. package/src/modules/rents/controllers/services/rents.services.js +183 -239
  1555. package/src/modules/rents/models/rent.model.js +27 -17
  1556. package/src/modules/rents/rents.client.js +5 -10
  1557. package/src/modules/rents/rents.server.js +15 -21
  1558. package/src/modules/rents/views/components/pages/RentsEdit.vue +2 -2
  1559. package/src/modules/rents/views/router/rents.router.js +11 -20
  1560. package/src/modules/rents/views/store/rents.store.js +33 -33
  1561. package/src/modules/reports/components/sections/FormReport.vue +1 -1
  1562. package/src/modules/reports/controllers/reports.controller.js +17 -26
  1563. package/src/modules/reports/models/report.model.js +39 -56
  1564. package/src/modules/reports/reports.client.js +8 -8
  1565. package/src/modules/reports/reports.server.js +17 -22
  1566. package/src/modules/reports/routes/reports.routes.js +7 -28
  1567. package/src/modules/reports/store/reports.js +15 -17
  1568. package/src/modules/spots/components/blocks/CardSpot.vue +73 -58
  1569. package/src/modules/spots/components/layouts/Spots.vue +3 -3
  1570. package/src/modules/spots/components/pages/Map.vue +3 -3
  1571. package/src/modules/spots/components/pages/SpotEdit.vue +1 -1
  1572. package/src/modules/spots/controllers/queries/getIsOpenNowStage.js +49 -65
  1573. package/src/modules/spots/controllers/spots.controller.js +25 -43
  1574. package/src/modules/spots/models/spot.model.js +45 -52
  1575. package/src/modules/spots/router/spots.js +22 -26
  1576. package/src/modules/spots/routes/spots.routes.js +8 -16
  1577. package/src/modules/spots/spots.client.js +6 -6
  1578. package/src/modules/spots/spots.server.js +17 -20
  1579. package/src/modules/spots/store/spots.js +11 -14
  1580. package/src/modules/wallet/controllers/factories/payments.factory.js +15 -42
  1581. package/src/modules/wallet/controllers/factories/rewards.factory.js +56 -134
  1582. package/src/modules/wallet/controllers/routes/payments.routes.js +45 -80
  1583. package/src/modules/wallet/controllers/routes/rewards.routes.js +10 -50
  1584. package/src/modules/wallet/models/payment.model.js +26 -27
  1585. package/src/modules/wallet/models/reward.model.js +3 -4
  1586. package/src/modules/wallet/models/wallet.model.js +10 -9
  1587. package/src/modules/wallet/views/router/payments.router.js +24 -23
  1588. package/src/modules/wallet/views/store/payments.store.js +6 -6
  1589. package/src/modules/wallet/views/store/wallet.store.js +28 -35
  1590. package/src/modules/wallet/wallet.server.js +25 -27
  1591. package/src/styles/typography.scss +24 -0
  1592. package/dist/Media-DmnrxIEI.js +0 -1
  1593. package/dist/_commonjsHelpers-CUmg6egw.mjs +0 -6
  1594. package/dist/_commonjsHelpers-DHfMLFPC.js +0 -5
  1595. package/dist/addMembersQuantity-DBfuUEx_.mjs +0 -113
  1596. package/dist/addMembersQuantity-DxWjHK1K.js +0 -112
  1597. package/dist/auth.server.mjs +0 -764
  1598. package/dist/authJwt-CELQKF2s.js +0 -82
  1599. package/dist/authJwt-DnXu3BFq.mjs +0 -83
  1600. package/dist/builder.mjs +0 -1502
  1601. package/dist/chats.server.mjs +0 -137
  1602. package/dist/common.schema-C2m3O1XY.mjs +0 -20
  1603. package/dist/common.schema-O0w_rDyC.js +0 -19
  1604. package/dist/community.server.mjs +0 -1068
  1605. package/dist/credentials.schema-BmOPv6FD.js +0 -16
  1606. package/dist/credentials.schema-oOC8B5KL.mjs +0 -17
  1607. package/dist/engagement.schema-DAiXsvh1.js +0 -33
  1608. package/dist/engagement.schema-DnDD7Bn3.mjs +0 -34
  1609. package/dist/events.server.mjs +0 -1060
  1610. package/dist/files.server.mjs +0 -339
  1611. package/dist/gallery.server.mjs +0 -337
  1612. package/dist/globals.abac-Bn-4tbX8.js +0 -303
  1613. package/dist/globals.abac-DZpTRxKR.mjs +0 -304
  1614. package/dist/globals.cache-BT6q3vOf.mjs +0 -140
  1615. package/dist/globals.cache-CwWvNGFQ.js +0 -139
  1616. package/dist/globals.logger-BdjooLaD.js +0 -34
  1617. package/dist/globals.logger-DusiFsxN.mjs +0 -35
  1618. package/dist/globals.server.mjs +0 -453
  1619. package/dist/globals.verifier-BdJxc8-8.mjs +0 -609
  1620. package/dist/globals.verifier-CKYpYfQl.js +0 -608
  1621. package/dist/index-BOmxJQ5W.js +0 -205
  1622. package/dist/index-C_Fw0Umg.mjs +0 -206
  1623. package/dist/mailing-D4kWlk3_.js +0 -93
  1624. package/dist/mailing-DvCT5ijo.mjs +0 -94
  1625. package/dist/main-DxWqDgs1.js +0 -11
  1626. package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
  1627. package/dist/martyrs/src/components/Chips/Chips.vue.js.map +0 -1
  1628. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.cjs.map +0 -1
  1629. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +0 -1
  1630. package/dist/martyrs/src/components/FieldTags/vue-tags-input.cjs +0 -292
  1631. package/dist/martyrs/src/components/FieldTags/vue-tags-input.cjs.map +0 -1
  1632. package/dist/martyrs/src/components/FieldTags/vue-tags-input.js +0 -292
  1633. package/dist/martyrs/src/components/FieldTags/vue-tags-input.js.map +0 -1
  1634. package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +0 -1
  1635. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
  1636. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.cjs +0 -450
  1637. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.cjs.map +0 -1
  1638. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js +0 -450
  1639. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +0 -1
  1640. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.cjs +0 -633
  1641. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.cjs.map +0 -1
  1642. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.js +0 -633
  1643. package/dist/martyrs/src/components/SelectMulti/multiselectMixin.js.map +0 -1
  1644. package/dist/martyrs/src/components/SelectMulti/pointerMixin.cjs +0 -117
  1645. package/dist/martyrs/src/components/SelectMulti/pointerMixin.cjs.map +0 -1
  1646. package/dist/martyrs/src/components/SelectMulti/pointerMixin.js +0 -117
  1647. package/dist/martyrs/src/components/SelectMulti/pointerMixin.js.map +0 -1
  1648. package/dist/martyrs/src/components/Table/TableCell.vue.cjs +0 -59
  1649. package/dist/martyrs/src/components/Table/TableCell.vue.cjs.map +0 -1
  1650. package/dist/martyrs/src/components/Table/TableCell.vue.js +0 -59
  1651. package/dist/martyrs/src/components/Table/TableCell.vue.js.map +0 -1
  1652. package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +0 -1
  1653. package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.cjs.map +0 -1
  1654. package/dist/martyrs/src/modules/globals/views/plugins/AlertDialog.vue.js.map +0 -1
  1655. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs.map +0 -1
  1656. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js.map +0 -1
  1657. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.cjs +0 -65
  1658. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.cjs.map +0 -1
  1659. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.js +0 -65
  1660. package/dist/martyrs/src/modules/products/components/blocks/LeftoverPositions.vue.js.map +0 -1
  1661. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.cjs +0 -49
  1662. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.cjs.map +0 -1
  1663. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.js +0 -49
  1664. package/dist/martyrs/src/modules/products/components/blocks/ListPositions.vue.js.map +0 -1
  1665. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +0 -237
  1666. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs.map +0 -1
  1667. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +0 -237
  1668. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js.map +0 -1
  1669. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.cjs +0 -152
  1670. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.cjs.map +0 -1
  1671. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.js +0 -152
  1672. package/dist/martyrs/src/modules/products/components/sections/EditModifications.vue.js.map +0 -1
  1673. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs +0 -120
  1674. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs.map +0 -1
  1675. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js +0 -120
  1676. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js.map +0 -1
  1677. package/dist/metadata.schema--tle-GU8.mjs +0 -282
  1678. package/dist/metadata.schema-CUkLXZ2f.js +0 -281
  1679. package/dist/notifications.server.mjs +0 -663
  1680. package/dist/orders.server.mjs +0 -926
  1681. package/dist/organizations.server.mjs +0 -1590
  1682. package/dist/ownership.schema-CNCotD3D.mjs +0 -50
  1683. package/dist/ownership.schema-MxfJlPtq.js +0 -49
  1684. package/dist/pages.server.mjs +0 -178
  1685. package/dist/products.server.mjs +0 -1381
  1686. package/dist/profile.schema-BLSuV_VC.js +0 -27
  1687. package/dist/profile.schema-BRuvQ7QV.mjs +0 -28
  1688. package/dist/queryProcessor-CVKI651_.mjs +0 -314
  1689. package/dist/queryProcessor-DSUqSk3I.js +0 -313
  1690. package/dist/rents.server.mjs +0 -506
  1691. package/dist/reports.server.mjs +0 -187
  1692. package/dist/spots.server.mjs +0 -380
  1693. package/dist/wallet.server.mjs +0 -705
  1694. package/src/builder/rspack/rspack.config.server.js +0 -30
  1695. package/src/components/FieldTags/vue-tags-input.js +0 -424
  1696. package/src/components/SelectMulti/index.js +0 -7
  1697. package/src/components/SelectMulti/multiselectMixin.js +0 -725
  1698. package/src/components/SelectMulti/pointerMixin.js +0 -143
  1699. package/src/modules/globals/views/core/event.js +0 -48
  1700. package/src/modules/icons/logos/LogotypeNunito.vue +0 -12
  1701. package/src/modules/integrations/openai/controllers/openai.controller.js +0 -89
  1702. package/src/modules/products/components/blocks/EditFilters.vue +0 -56
  1703. package/src/modules/products/components/blocks/LeftoverPositions.vue +0 -99
  1704. package/src/modules/products/components/blocks/ListPositions.vue +0 -74
  1705. package/src/modules/products/components/pages/EditLeftover.vue +0 -288
  1706. package/src/modules/products/components/pages/Product.old.vue +0 -201
  1707. package/src/modules/products/components/sections/EditModifications.vue +0 -92
  1708. package/src/modules/products/components/sections/EditProductInfo.vue +0 -106
  1709. package/src/modules/products/controllers/modifications.controller.js +0 -66
  1710. /package/src/modules/globals/views/{plugins → components/blocks}/AlertDialog.vue +0 -0
  1711. /package/src/modules/products/components/{blocks/Images360.vue → elements/Image360.vue} +0 -0
@@ -8,7 +8,7 @@ import _sfc_main$3 from "../blocks/CardOrderItem.vue.js";
8
8
  import _sfc_main$5 from "../../../organizations/components/blocks/CardOrganization.vue.js";
9
9
  import _sfc_main$6 from "../../../chats/components/pages/ChatPage.vue.js";
10
10
  import _sfc_main$4 from "../elements/PriceTotal.vue.js";
11
- /* empty css */
11
+ /* empty css */
12
12
  import { state } from "../../../globals/views/store/globals.js";
13
13
  import { state as state$1 } from "../../../auth/views/store/auth.js";
14
14
  import { actions, state as state$2, getters, mutations } from "../../store/orders.js";
@@ -383,7 +383,7 @@ const _sfc_main = {
383
383
  };
384
384
  }
385
385
  };
386
- const OrderBackoffice = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-529cceb6"]]);
386
+ const OrderBackoffice = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-3da4557c"]]);
387
387
  export {
388
388
  OrderBackoffice as default
389
389
  };
@@ -1 +1 @@
1
- {"version":3,"file":"OrderBackoffice.vue.js","sources":["../../../../../../../src/modules/orders/components/pages/OrderBackoffice.vue"],"sourcesContent":["<template>\n\t<div v-if=\"order && orderOrganization\" class=\"pd-thin bg-white\"> \n\n\t <div v-if=\"order\" class=\"mn-b-thin pos-relative w-100 bg-main radius-medium pd-medium\">\n\t \t<div class=\"mn-b-small flex-nowrap flex\">\n\t\t \t<p class=\"t-medium p-medium\">\n\t\t \tOrder No: <span class=\"p-small t-transp\">#{{order._id}}</span>\n\t\t </p>\n\t\t\t</div>\n\n \t<div class=\"flex-nowrap flex gap-thin pos-relative \">\n\t <div v-for=\"(status, index) in globals.state.options.orders.statuses\" :key=\"index\" class=\"w-20\">\n\t <div\n\t \tclass=\"bg-white br-anim br-glow radius-extra h-1r w-100\"\n\t :class=\"\n\t\t\t\t { 'br-glow-anim': isActiveStatus(index) },\n\t\t\t\t { 't-transp': !isActiveStatus(index) },\n\t\t\t\t { 'blink': order.status === status.value && getNextStatus(order.status) }\n\t\t\t\t \"\n\t />\n\t <div \n\t \t:class=\"{ 't-transp': !isActiveStatus(index) }\"\n\t\t\t\t class=\"mn-t-thin p-small t-medium uppercase\">{{ status.value }}</div>\n\t \t</div>\n\t\t </div>\n\t </div>\n\n \t <Popup \n title=\"Change payment\" \n @close-popup=\"closePaymentPopup\" \n :isPopupOpen=\"isOpenPaymentPopup\"\n class=\"bg-light w-min-25r w-max-25r radius-medium pd-big\"\n >\n \t<Select \n v-model:select=\"selectedPayments.type\"\n :property=\"'value'\"\n label=\"Type\"\n :options=\"[\n {name: 'Cash', value: 'cash'}, \n {name: 'Card', value: 'card'}, \n {name: 'Bank Transfer', value: 'bank'},\n ]\"\n placeholder=\"Select type of payment\" \n size=\"small\"\n class=\"bg-white mn-b-thin pd-regular radius-small w-100\"\n />\n\n <Select \n v-model:select=\"selectedPayments.status\"\n :property=\"'value'\"\n label=\"Status\"\n :options=\"[\n {name: 'Unpaid', value: 'unpaid'}, \n {name: 'Paid', value: 'paid'}, \n {name: 'Refunded', value: 'refunded'},\n ]\"\n placeholder=\"Select status of payment\" \n size=\"small\"\n class=\"bg-white mn-b-small pd-regular radius-small w-100\"\n />\n\n\n <Button :submit=\"changePaymentStatus\" class=\"t-white w-100 bg-second\">\n\t\t\t\t<span>Change Status</span>\n\t\t\t</Button>\n\t \t</Popup>\n\n\t <Popup \n title=\"Change order status\" \n @close-popup=\"closeStatusPopup\" \n :isPopupOpen=\"isOpeStatusPopup\"\n class=\"bg-light w-min-30r w-max-30r radius-medium pd-big\"\n >\n\n\t\t\t<!-- Добавить выбор примерного времени -->\n\n \t<ul class=\"flex gap-thin flex-column mn-b-thin\">\n \t\t\t<CardOrderItem\n \t\t\t\tv-for=\"(product, index) in order.positions\" :key=\"product._id\"\n \t\t\t\t:editable=\"true\" \n \t\t\t\t:product=\"product\" \n \t\t\t\t:increase=\"product => orders.mutations.incrementItemQuantity(order, product._id)\"\n\t :decrease=\"product => orders.mutations.decrementItemQuantity(order, product._id)\"\n\t :remove=\"product => orders.mutations.removeProduct(order, product._id)\"\n\t @updateRentDates=\"(product, dates) => shopcart.actions.updateRentDates({ positions: order.positions, productId: product._id, dates })\"\n \t\t\t\tclass=\"bg-white radius-small pd-small\"\n \t\t\t/>\n </ul>\n \n <PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders?.showFees\"\n :feesRate=\"globals.state.options?.orders?.feesRate || 0\"\n :showVat=\"globals.state.options?.orders?.showVat\"\n :vatRate=\"globals.state.options?.orders?.vatRate || 0\"\n />\n\n \t<Button :submit=\"setNextStatus\" class=\"t-white w-100 bg-second\">\n\t\t\t\t<span>{{'Confirm Changing to ' + (getNextStatus(order.status)).label}}</span>\n\t\t\t</Button>\n\t \t</Popup>\n\n\n\t \n\t <div v-if=\"order\" class=\"gap-thin cols-2\">\n\n\t <div class=\"w-100\">\n\n\n\t\t <CardOrganization \n\t\t \tv-if=\"orderOrganization[0]\"\n\t\t :organization=\"orderOrganization[0]\"\n\t\t :showRating=\"true\"\n\t\t :showFollowers=\"false\"\n\t\t :showProducts=\"false\"\n\t\t class=\"bg-light mn-b-thin w-100 o-hidden radius-medium pd-small \"\n\t\t />\n\n\n\t\t <div \n\t\t \tclass=\"mn-b-thin bg-light w-100 o-hidden radius-medium \"\n\t\t >\n\t\t \t<div class=\"pd-small flex-nowrap flex\">\n\t\t\t \t<div class=\"mn-r-auto\">\n\t\t\t\t \t<span class=\"d-block t-medium p-medium\">Order is</span>\n\t\t\t\t\t <span class=\" t-lh-075 h2 d-block mn-b-small\">{{order.status}}</span>\n\t\t\t\t\t <p class=\"pd-t-nano pd-b-nano pd-r-thin pd-l-thin radius-extra bg-black t-white w-max\">{{formatDate(order.updatedAt, {language: locale })}}</p>\n\t\t\t\t\t </div>\n\t\t\t\t\t <!-- <div class=\"t-right\">\n\t\t\t\t\t \tCancel order<br>\n\t\t\t\t\t \tExchange item\n\t\t\t\t\t \t<hr class=\"mn-b-thin mn-t-thin\">\n\t\t\t\t\t \tFor Delivery Queries Contact Us\n\t\t\t\t\t \t\n\t\t\t\t\t </div> -->\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div v-if=\"order.customer.target?.number\" class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"w-100 t-medium p-medium\">\n\t\t\t \tPhone\n\t\t\t </p>\n\n\t\t\t <p class=\"w-100 t-right \">\n\t\t\t \t{{order.customer.target?.number || 'Not specified'}}\n\t\t\t </p>\n\t\t\t </div>\n\n\t\t\t <div class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"t-medium p-medium\">\n\t\t\t \tAddress\n\t\t\t </p>\n\n\t\t\t <p class=\"w-100 t-right\">\n\t\t\t {{order.delivery.address || (order.delivery.spot[0].profile.name + ', ' + order.delivery.spot[0].address) || 'Not specified'}} \n\t\t\t </p>\n\t\t\t </div>\n\n\t\t\t <div class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"t-medium p-medium\">\n\t\t\t \tDelivery\n\t\t\t </p>\n\n\t\t\t <p class=\"w-100 t-right \">\n\t\t\t {{order.delivery.type ? order.delivery.type : 'Not specified'}} \n\t\t\t </p>\n\t\t\t </div>\n\n\t\t\t <div class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"mn-r-auto t-medium p-medium\">\n\t\t\t \tPayment\n\t\t\t </p>\n\n\n\t\t\t <p class=\"w-max t-right\">\n\t\t\t {{order.payment.type ? order.payment.type : 'Not specified'}} \n\t\t\t </p>\n\n\t\t\t <p @click=\"route.meta.context !== 'user' && route.meta.context !== 'root' ? openPaymentPopup : console.log('hello')\" class=\"w-max pd-thin radius-small bg-second t-white mn-l-thin cursor-pointer hover-bg-black t-right\">\n\t\t\t {{order.payment.status ? order.payment.status : 'Unpaid'}} \n\t\t\t </p>\n\t\t\t </div>\n\n\n\t\t\t\t</div>\n\n\t\t\t\t<div v-if=\"route.meta.context !== 'user' && route.meta.context !== 'root'\" class=\"o-y-scroll bg-light pd-thin mn-b-thin pd-thin radius-medium flex-nowrap flex\">\n\t\t \t\t<div class=\"flex-child-default mn-r-small w-max flex-v-center gap-thin flex-nowrap flex pd-thin radius-small bg-light-transp-20\">\n\t\t \t\t\t<IconTime class=\"i-semi t-transp\" fill=\"rgb(var(--black)\" />\n\t\t <p class=\"t-medium mn-r-auto\"><span class=\"p-small t-transp\">Estimated Reaction</span><br>{{formatDate(order.deadline, { language: locale })}}</p>\n\t\t\t \t</div>\n\t\t\t \t<button v-if=\"getNextStatus(order.status)\" @click=\"openStatusPopup\" class=\"flex-child-default mn-l-auto bg-black t-white button\"> \n\t\t\t\t Mark as {{ (getNextStatus(order.status)).label }} \n\t\t\t\t </button>\n\t\t \t</div>\n\n\t\t\t<div class=\"bg-light radius-medium pd-medium mn-r-bold w-100\">\n\t\t <h3 class=\"mn-b-small\">Chat With Us</h3>\n\n\t\t <ChatPage\n\t\t \t:username=\"['Order', 'UserOrder'].includes(route.name) ? (order.user?.name || 'User') : 'Support'\"\n\t\t \t:user=\"auth.state.user._id\"\n\t\t \t:chatID=\"route.params.order\"\n\t\t \tclass=\"radius-semi bs-black bg-light o-hidden\"\n\t\t />\n\n\t </div>\n\t \t<!-- <StatusHistory \n\t \t\tv-if=\"orders.state.current.status_history\"\n\t \t\t:statuses=\"statuses\"\n\t \t\t:statusHistory=\"orders.state.current.status_history\"\n\t \t\t:statusCurrent=\"orders.state.current.status\"\n\t \t\t:edit=\"route.name === 'Order Edit'\"\n\t \t/> -->\n\n\t <!-- \t<button \n\t \t@click=\"requestPayment(order)\"\n\t \tv-if=\"\n\t \t\torder.status === 'Подтвержден' \n\t \t\t&& order.payment.type === 'Online'\n\t \t\t&& payment.Status !== 'CONFIRMED'\n\t \t\t&& payment.Status !== 'REFUNDED'\n\t \t\" \n\t \tclass='w-100 button'>Оплатить заказ</button> -->\n\t \t<span class=\"t-transp\" v-if=\"payment && payment.Status === 'CONFIRMED'\">Paid</span> \n\t </div> \n\n\t <div class=\"bg-light radius-medium pd-medium w-100\">\n\t \t\t<h3 class=\"mn-b-small\">Order Summary</h3>\n\n\t \t\t<ul class=\"flex gap-thin flex-column mn-b-thin\">\n\t \t\t\t<CardOrderItem\n\t \t\t\t\tv-for=\"(product, index) in order.positions\" :key=\"product._id\"\n\t \t\t\t\t:editable=\"false\" \n\t \t\t\t\t:product=\"product\" \n\t \t\t\t\tclass=\"bg-white radius-small pd-small\"\n\t \t\t\t/>\n\t </ul>\n\t \n\t <PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :deliveryRate=\"deliveryCost\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders?.showFees\"\n :feesRate=\"globals.state.options?.orders?.feesRate || 0\"\n :showVat=\"globals.state.options?.orders?.showVat\"\n :vatRate=\"globals.state.options?.orders?.vatRate || 0\"\n\t\t\t\t :showDeliveryFee=\"globals.state.options?.orders.showDeliveryFee\"\n\n />\n \t</div>\n\n\t \n\t </div>\n\t</div>\t\t\n\n</template>\n\n\n<script setup=\"props\">\n\timport { computed, ref, onMounted } from 'vue'\n\timport { useRouter, useRoute } from 'vue-router'\n\n\timport Button from '@martyrs/src/components/Button/Button.vue'\n\timport Select from '@martyrs/src/components/Select/Select.vue'\n\timport Popup from \"@martyrs/src/components/Popup/Popup.vue\";\n\n\timport IconTime from '@martyrs/src/modules/icons/entities/IconTime.vue'\n\n\t// Block\n\timport CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n\timport CardOrganization from '@martyrs/src/modules/organizations/components/blocks/CardOrganization.vue'\n\n\timport ChatPage from '@martyrs/src/modules/chats/components/pages/ChatPage.vue';\n\n\timport StatusHistory from '@martyrs/src/modules/orders/components/blocks/StatusHistory.vue'\n\timport PriceTotal from '@martyrs/src/modules/orders/components/elements/PriceTotal.vue';\n\timport FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n\n\timport * as globals \tfrom '@martyrs/src/modules/globals/views/store/globals'\n\timport * as auth from '@martyrs/src/modules/auth/views/store/auth'\n\timport * as orders \tfrom '@martyrs/src/modules/orders/store/orders'\n\timport * as products \tfrom '@martyrs/src/modules/products/store/products'\n\timport * as organizations \tfrom '@martyrs/src/modules/organizations/store/organizations'\n\n\timport { useI18n } from 'vue-i18n';\n\t\n\tconst { locale } = useI18n();\n\n\tconst router = useRouter()\n\tconst route = useRoute()\n\n\tconst order = ref(null)\n\tconst productsOrganization = ref(null)\n\tconst orderOrganization = ref(null)\n\n\tconst statuses = globals.state.options.orders.statuses\n\tconst statusLabels = ['Created', 'Confirmed', 'Preparing', 'In use', 'Finished'];\n\n if (route.meta.context === 'user' && \n auth.state.user && \n route.params._id !== auth.state.user?._id && \n !auth.state.access?.roles?.includes('ROLE_MODERATOR') && \n !auth.state.access?.roles?.includes('ROLE_ADMIN')) {\n router.push('/401');\n }\n\n\tconst isOpeStatusPopup = ref(false);\n\tconst selectedMember = ref(null);\n\n\tfunction openStatusPopup(member) {\n\t isOpeStatusPopup.value = true;\n\t if (typeof member === \"number\") selectedMember.value = member;\n\t}\n\n\tfunction closeStatusPopup() {\n\t isOpeStatusPopup.value = false;\n\t selectedMember.value = null;\n\t}\n\n\tconst isOpenPaymentPopup = ref(false);\n\n\tconst selectedPayments = ref({\n\t\ttype: null,\n\t\tstatus: null\n\t});\n\n\tfunction openPaymentPopup() {\n\t selectedPayments.value.type = order.value.payment.type\n\t selectedPayments.value.status = order.value.payment.status\n\n\t isOpenPaymentPopup.value = true;\n\t}\n\n\tfunction closePaymentPopup() {\n\t isOpenPaymentPopup.value = false;\n\t}\n\n\tonMounted(async()=>{\n\t\torder.value = await orders.actions.read({_id: route.params.order})\n\t\torder.value = order.value[0]\n\n\t orderOrganization.value = await organizations.actions.read({\n\t _id: order.value?.owner.target._id,\n\t location: globals.state.position?.location,\n\t lookup: ['spots']\n\t });\n\n\t})\n\n\nconst deliveryCost = computed(() => {\n const type = orders.state.current.delivery.type\n const distance = orderOrganization.value[0]?.distance || 0\n const config = globals.state.options?.orders?.delivery_formula || {}\n\n return orders.getters.getDeliveryPrice(type, distance, config)\n})\n\n\tlet cartTotalPrice = computed(() => {\n return Number(order.value?.positions.reduce((total, product) => {\n // Проверяем тип листинга\n if (product.listing === 'rent') {\n const start = new Date(product.date.start)\n const end = new Date(product.date.end)\n const diffTime = Math.abs(end - start)\n return total + product.price * (Math.ceil(diffTime / (1000 * 60 * 60 * 24)) + 1);\n } else {\n // Для обычных товаров умножаем на количество\n return total + product.price * (product.quantity || 1);\n }\n }, 0));\n })\n\n\n let cartTotalAmount = computed(() => {\n return Number(order.value?.positions.reduce((total, product) => {\n return total + product.quantity;\n }, 0));\n })\n\n // Функция установки нового статуса\n\tasync function setStatus (newStatus) {\n\t orders.state.current.status = newStatus\n\n\t await orders.actions.update(orders.state.current)\n\t} \n\n\n\tfunction getNextStatus(currentStatus) {\n\t const currentIndex = globals.state.options.orders.statuses.findIndex(status => status.value === currentStatus);\n\n\t if (currentIndex !== -1 && currentIndex + 1 < statuses.length) {\n\t return globals.state.options.orders.statuses[currentIndex + 1];\n\t }\n\t return null; // If next status doesn't exist\n\t}\n\n\tconst isActiveStatus = (index) => {\n\t return globals.state.options.orders.statuses.slice(index).some(status => status.value === order.value.status);\n\t};\n\n async function changePaymentStatus() {\n if (selectedPayments.value.status && selectedPayments.value.type) {\n orders.state.current.payment = selectedPayments.value;\n\n await orders.actions.update(orders.state.current)\n } else {\n console.error('Payment status is void. Must handle somehow.');\n }\n\n\t\tclosePaymentPopup()\n }\n\n async function setNextStatus() {\n const nextStatus = getNextStatus(orders.state.current.status);\n\n if (nextStatus) {\n orders.state.current.status = nextStatus.value;\n\n await orders.actions.update(orders.state.current)\n } else {\n console.error('Next status is void. Must handle somehow.');\n }\n\n\t\tcloseStatusPopup()\n }\n\n async function cancelOrder() {\n \talert()\n\n orders.state.current.status = 'canceled';\n\n await orders.actions.update(orders.state.current)\n}\n\n\n async function confirmOrder() {\n \talert()\n\n orders.state.current.status = 'confirmed';\n\n await orders.actions.update(orders.state.current)\n\t}\n\n\tfunction calculateDeliveryTime(distance, date) {\n\t if (!distance) {\n\t return null;\n\t }\n\n\t const basePreparationTime = 10 * 60 * 1000; // Convert to milliseconds\n\t const travelTime = Math.ceil((15 + 5 + 3 * distance) / 5) * 5 * 60 * 1000;\n\n\t // Преобразование даты начала в миллисекунды и добавление времени подготовки и доставки\n\t const startTime = new Date(date).getTime();\n\t const estimatedDeliveryTime = new Date(startTime + basePreparationTime + travelTime);\n\n\t return estimatedDeliveryTime;\n\t}\n\n\n</script>\n\n<style lang=\"scss\" scoped>\n\t.blink {\n\t animation: blink-animation 1s ease infinite;\n\t}\n\n\t@keyframes blink-animation {\n\t 0%, 100% {\n\t opacity: 1;\n\t }\n\t 50% {\n\t opacity: 0.8;\n\t }\n\t}\n</style>"],"names":["globals.state","auth.state","orders.actions","organizations.actions","_a","orders.state","orders.getters"],"mappings":"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"}
1
+ {"version":3,"file":"OrderBackoffice.vue.js","sources":["../../../../../../../src/modules/orders/components/pages/OrderBackoffice.vue"],"sourcesContent":["<template>\n\t<div v-if=\"order && orderOrganization\" class=\"pd-thin bg-white\"> \n\n\t <div v-if=\"order\" class=\"mn-b-thin pos-relative w-100 bg-main radius-medium pd-medium\">\n\t \t<div class=\"mn-b-small flex-nowrap flex\">\n\t\t \t<p class=\"t-medium p-medium\">\n\t\t \tOrder No: <span class=\"p-small t-transp\">#{{order._id}}</span>\n\t\t </p>\n\t\t\t</div>\n\n \t<div class=\"flex-nowrap flex gap-thin pos-relative \">\n\t <div v-for=\"(status, index) in globals.state.options.orders.statuses\" :key=\"index\" class=\"w-20\">\n\t <div\n\t \tclass=\"bg-white br-anim br-glow radius-extra h-1r w-100\"\n\t :class=\"\n\t\t\t\t { 'br-glow-anim': isActiveStatus(index) },\n\t\t\t\t { 't-transp': !isActiveStatus(index) },\n\t\t\t\t { 'blink': order.status === status.value && getNextStatus(order.status) }\n\t\t\t\t \"\n\t />\n\t <div \n\t \t:class=\"{ 't-transp': !isActiveStatus(index) }\"\n\t\t\t\t class=\"mn-t-thin p-small t-medium uppercase\">{{ status.value }}</div>\n\t \t</div>\n\t\t </div>\n\t </div>\n\n \t <Popup \n title=\"Change payment\" \n @close-popup=\"closePaymentPopup\" \n :isPopupOpen=\"isOpenPaymentPopup\"\n class=\"bg-light w-min-25r w-max-25r radius-medium pd-big\"\n >\n \t<Select \n v-model:select=\"selectedPayments.type\"\n :property=\"'value'\"\n label=\"Type\"\n :options=\"[\n {name: 'Cash', value: 'cash'}, \n {name: 'Card', value: 'card'}, \n {name: 'Bank Transfer', value: 'bank'},\n ]\"\n placeholder=\"Select type of payment\" \n size=\"small\"\n class=\"bg-white mn-b-thin pd-regular radius-small w-100\"\n />\n\n <Select \n v-model:select=\"selectedPayments.status\"\n :property=\"'value'\"\n label=\"Status\"\n :options=\"[\n {name: 'Unpaid', value: 'unpaid'}, \n {name: 'Paid', value: 'paid'}, \n {name: 'Refunded', value: 'refunded'},\n ]\"\n placeholder=\"Select status of payment\" \n size=\"small\"\n class=\"bg-white mn-b-small pd-regular radius-small w-100\"\n />\n\n\n <Button :submit=\"changePaymentStatus\" class=\"t-white w-100 bg-second\">\n\t\t\t\t<span>Change Status</span>\n\t\t\t</Button>\n\t \t</Popup>\n\n\t <Popup \n title=\"Change order status\" \n @close-popup=\"closeStatusPopup\" \n :isPopupOpen=\"isOpeStatusPopup\"\n class=\"bg-light w-min-30r w-max-30r radius-medium pd-big\"\n >\n\n\t\t\t<!-- Добавить выбор примерного времени -->\n\n \t<ul class=\"flex gap-thin flex-column mn-b-thin\">\n \t\t\t<CardOrderItem\n \t\t\t\tv-for=\"(product, index) in order.positions\" :key=\"product._id\"\n \t\t\t\t:editable=\"true\" \n \t\t\t\t:product=\"product\" \n \t\t\t\t:increase=\"product => orders.mutations.incrementItemQuantity(order, product._id)\"\n\t :decrease=\"product => orders.mutations.decrementItemQuantity(order, product._id)\"\n\t :remove=\"product => orders.mutations.removeProduct(order, product._id)\"\n\t @updateRentDates=\"(product, dates) => shopcart.actions.updateRentDates({ positions: order.positions, productId: product._id, dates })\"\n \t\t\t\tclass=\"bg-white radius-small pd-small\"\n \t\t\t/>\n </ul>\n \n <PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders?.showFees\"\n :feesRate=\"globals.state.options?.orders?.feesRate || 0\"\n :showVat=\"globals.state.options?.orders?.showVat\"\n :vatRate=\"globals.state.options?.orders?.vatRate || 0\"\n />\n\n \t<Button :submit=\"setNextStatus\" class=\"t-white w-100 bg-second\">\n\t\t\t\t<span>{{'Confirm Changing to ' + (getNextStatus(order.status)).label}}</span>\n\t\t\t</Button>\n\t \t</Popup>\n\n\n\t \n\t <div v-if=\"order\" class=\"gap-thin cols-2\">\n\n\t <div class=\"w-100\">\n\n\n\t\t <CardOrganization \n\t\t \tv-if=\"orderOrganization[0]\"\n\t\t :organization=\"orderOrganization[0]\"\n\t\t :showRating=\"true\"\n\t\t :showFollowers=\"false\"\n\t\t :showProducts=\"false\"\n\t\t class=\"bg-light mn-b-thin w-100 o-hidden radius-medium pd-small \"\n\t\t />\n\n\n\t\t <div \n\t\t \tclass=\"mn-b-thin bg-light w-100 o-hidden radius-medium \"\n\t\t >\n\t\t \t<div class=\"pd-small flex-nowrap flex\">\n\t\t\t \t<div class=\"mn-r-auto\">\n\t\t\t\t \t<span class=\"d-block t-medium p-medium\">Order is</span>\n\t\t\t\t\t <span class=\" t-lh-075 h2 d-block mn-b-small\">{{order.status}}</span>\n\t\t\t\t\t <p class=\"pd-t-nano pd-b-nano pd-r-thin pd-l-thin radius-extra bg-black t-white w-max\">{{formatDate(order.updatedAt, {language: locale })}}</p>\n\t\t\t\t\t </div>\n\t\t\t\t\t <!-- <div class=\"t-right\">\n\t\t\t\t\t \tCancel order<br>\n\t\t\t\t\t \tExchange item\n\t\t\t\t\t \t<hr class=\"mn-b-thin mn-t-thin\">\n\t\t\t\t\t \tFor Delivery Queries Contact Us\n\t\t\t\t\t \t\n\t\t\t\t\t </div> -->\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div v-if=\"order.customer.target?.number\" class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"w-100 t-medium p-medium\">\n\t\t\t \tPhone\n\t\t\t </p>\n\n\t\t\t <p class=\"w-100 t-right \">\n\t\t\t \t{{order.customer.target?.number || 'Not specified'}}\n\t\t\t </p>\n\t\t\t </div>\n\n\t\t\t <div class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"t-medium p-medium\">\n\t\t\t \tAddress\n\t\t\t </p>\n\n\t\t\t <p class=\"w-100 t-right\">\n\t\t\t {{order.delivery.address || (order.delivery.spot[0].profile.name + ', ' + order.delivery.spot[0].address) || 'Not specified'}} \n\t\t\t </p>\n\t\t\t </div>\n\n\t\t\t <div class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"t-medium p-medium\">\n\t\t\t \tDelivery\n\t\t\t </p>\n\n\t\t\t <p class=\"w-100 t-right \">\n\t\t\t {{order.delivery.type ? order.delivery.type : 'Not specified'}} \n\t\t\t </p>\n\t\t\t </div>\n\n\t\t\t <div class=\"pd-small flex flex-nowrap flex-v-center br-t br-black-transp-10 br-solid\">\n\t\t\t \t<p class=\"mn-r-auto t-medium p-medium\">\n\t\t\t \tPayment\n\t\t\t </p>\n\n\n\t\t\t <p class=\"w-max t-right\">\n\t\t\t {{order.payment.type ? order.payment.type : 'Not specified'}} \n\t\t\t </p>\n\n\t\t\t <p @click=\"route.meta.context !== 'user' && route.meta.context !== 'root' ? openPaymentPopup : console.log('hello')\" class=\"w-max pd-thin radius-small bg-second t-white mn-l-thin cursor-pointer hover-bg-black t-right\">\n\t\t\t {{order.payment.status ? order.payment.status : 'Unpaid'}} \n\t\t\t </p>\n\t\t\t </div>\n\n\n\t\t\t\t</div>\n\n\t\t\t\t<div v-if=\"route.meta.context !== 'user' && route.meta.context !== 'root'\" class=\"o-y-scroll bg-light pd-thin mn-b-thin pd-thin radius-medium flex-nowrap flex\">\n\t\t \t\t<div class=\"flex-child-default mn-r-small w-max flex-v-center gap-thin flex-nowrap flex pd-thin radius-small bg-light-transp-20\">\n\t\t \t\t\t<IconTime class=\"i-semi t-transp\" fill=\"rgb(var(--black)\" />\n\t\t <p class=\"t-medium mn-r-auto\"><span class=\"p-small t-transp\">Estimated Reaction</span><br>{{formatDate(order.deadline, { language: locale })}}</p>\n\t\t\t \t</div>\n\t\t\t \t<button v-if=\"getNextStatus(order.status)\" @click=\"openStatusPopup\" class=\"flex-child-default mn-l-auto bg-black t-white button\"> \n\t\t\t\t Mark as {{ (getNextStatus(order.status)).label }} \n\t\t\t\t </button>\n\t\t \t</div>\n\n\t\t\t<div class=\"bg-light radius-medium pd-medium mn-r-bold w-100\">\n\t\t <h3 class=\"mn-b-small\">Chat With Us</h3>\n\n\t\t <ChatPage\n\t\t \t:username=\"['Order', 'UserOrder'].includes(route.name) ? (order.user?.name || 'User') : 'Support'\"\n\t\t \t:user=\"auth.state.user._id\"\n\t\t \t:chatID=\"route.params.order\"\n\t\t \tclass=\"radius-semi bs-black bg-light o-hidden\"\n\t\t />\n\n\t </div>\n\t \t<!-- <StatusHistory \n\t \t\tv-if=\"orders.state.current.status_history\"\n\t \t\t:statuses=\"statuses\"\n\t \t\t:statusHistory=\"orders.state.current.status_history\"\n\t \t\t:statusCurrent=\"orders.state.current.status\"\n\t \t\t:edit=\"route.name === 'Order Edit'\"\n\t \t/> -->\n\n\t <!-- \t<button \n\t \t@click=\"requestPayment(order)\"\n\t \tv-if=\"\n\t \t\torder.status === 'Подтвержден' \n\t \t\t&& order.payment.type === 'Online'\n\t \t\t&& payment.Status !== 'CONFIRMED'\n\t \t\t&& payment.Status !== 'REFUNDED'\n\t \t\" \n\t \tclass='w-100 button'>Оплатить заказ</button> -->\n\t \t<span class=\"t-transp\" v-if=\"payment && payment.Status === 'CONFIRMED'\">Paid</span> \n\t </div> \n\n\t <div class=\"bg-light radius-medium pd-medium w-100\">\n\t \t\t<h3 class=\"mn-b-small\">Order Summary</h3>\n\n\t \t\t<ul class=\"flex gap-thin flex-column mn-b-thin\">\n\t \t\t\t<CardOrderItem\n\t \t\t\t\tv-for=\"(product, index) in order.positions\" :key=\"product._id\"\n\t \t\t\t\t:editable=\"false\" \n\t \t\t\t\t:product=\"product\" \n\t \t\t\t\tclass=\"bg-white radius-small pd-small\"\n\t \t\t\t/>\n\t </ul>\n\t \n\t <PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :deliveryRate=\"deliveryCost\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders?.showFees\"\n :feesRate=\"globals.state.options?.orders?.feesRate || 0\"\n :showVat=\"globals.state.options?.orders?.showVat\"\n :vatRate=\"globals.state.options?.orders?.vatRate || 0\"\n\t\t\t\t :showDeliveryFee=\"globals.state.options?.orders.showDeliveryFee\"\n\n />\n \t</div>\n\n\t \n\t </div>\n\t</div>\t\t\n\n</template>\n\n\n<script setup=\"props\">\n\timport { computed, ref, onMounted } from 'vue'\n\timport { useRouter, useRoute } from 'vue-router'\n\n\timport Button from '@martyrs/src/components/Button/Button.vue'\n\timport Select from '@martyrs/src/components/Select/Select.vue'\n\timport Popup from \"@martyrs/src/components/Popup/Popup.vue\";\n\n\timport IconTime from '@martyrs/src/modules/icons/entities/IconTime.vue'\n\n\t// Block\n\timport CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n\timport CardOrganization from '@martyrs/src/modules/organizations/components/blocks/CardOrganization.vue'\n\n\timport ChatPage from '@martyrs/src/modules/chats/components/pages/ChatPage.vue';\n\n\timport StatusHistory from '@martyrs/src/modules/orders/components/blocks/StatusHistory.vue'\n\timport PriceTotal from '@martyrs/src/modules/orders/components/elements/PriceTotal.vue';\n\timport FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n\n\timport * as globals \tfrom '@martyrs/src/modules/globals/views/store/globals.js'\n\timport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\n\timport * as orders \tfrom '@martyrs/src/modules/orders/store/orders.js'\n\timport * as products \tfrom '@martyrs/src/modules/products/store/products.js'\n\timport * as organizations \tfrom '@martyrs/src/modules/organizations/store/organizations.js'\n\n\timport { useI18n } from 'vue-i18n';\n\t\n\tconst { locale } = useI18n();\n\n\tconst router = useRouter()\n\tconst route = useRoute()\n\n\tconst order = ref(null)\n\tconst productsOrganization = ref(null)\n\tconst orderOrganization = ref(null)\n\n\tconst statuses = globals.state.options.orders.statuses\n\tconst statusLabels = ['Created', 'Confirmed', 'Preparing', 'In use', 'Finished'];\n\n if (route.meta.context === 'user' && \n auth.state.user && \n route.params._id !== auth.state.user?._id && \n !auth.state.access?.roles?.includes('ROLE_MODERATOR') && \n !auth.state.access?.roles?.includes('ROLE_ADMIN')) {\n router.push('/401');\n }\n\n\tconst isOpeStatusPopup = ref(false);\n\tconst selectedMember = ref(null);\n\n\tfunction openStatusPopup(member) {\n\t isOpeStatusPopup.value = true;\n\t if (typeof member === \"number\") selectedMember.value = member;\n\t}\n\n\tfunction closeStatusPopup() {\n\t isOpeStatusPopup.value = false;\n\t selectedMember.value = null;\n\t}\n\n\tconst isOpenPaymentPopup = ref(false);\n\n\tconst selectedPayments = ref({\n\t\ttype: null,\n\t\tstatus: null\n\t});\n\n\tfunction openPaymentPopup() {\n\t selectedPayments.value.type = order.value.payment.type\n\t selectedPayments.value.status = order.value.payment.status\n\n\t isOpenPaymentPopup.value = true;\n\t}\n\n\tfunction closePaymentPopup() {\n\t isOpenPaymentPopup.value = false;\n\t}\n\n\tonMounted(async()=>{\n\t\torder.value = await orders.actions.read({_id: route.params.order})\n\t\torder.value = order.value[0]\n\n\t orderOrganization.value = await organizations.actions.read({\n\t _id: order.value?.owner.target._id,\n\t location: globals.state.position?.location,\n\t lookup: ['spots']\n\t });\n\n\t})\n\n\nconst deliveryCost = computed(() => {\n const type = orders.state.current.delivery.type\n const distance = orderOrganization.value[0]?.distance || 0\n const config = globals.state.options?.orders?.delivery_formula || {}\n\n return orders.getters.getDeliveryPrice(type, distance, config)\n})\n\n\tlet cartTotalPrice = computed(() => {\n return Number(order.value?.positions.reduce((total, product) => {\n // Проверяем тип листинга\n if (product.listing === 'rent') {\n const start = new Date(product.date.start)\n const end = new Date(product.date.end)\n const diffTime = Math.abs(end - start)\n return total + product.price * (Math.ceil(diffTime / (1000 * 60 * 60 * 24)) + 1);\n } else {\n // Для обычных товаров умножаем на количество\n return total + product.price * (product.quantity || 1);\n }\n }, 0));\n })\n\n\n let cartTotalAmount = computed(() => {\n return Number(order.value?.positions.reduce((total, product) => {\n return total + product.quantity;\n }, 0));\n })\n\n // Функция установки нового статуса\n\tasync function setStatus (newStatus) {\n\t orders.state.current.status = newStatus\n\n\t await orders.actions.update(orders.state.current)\n\t} \n\n\n\tfunction getNextStatus(currentStatus) {\n\t const currentIndex = globals.state.options.orders.statuses.findIndex(status => status.value === currentStatus);\n\n\t if (currentIndex !== -1 && currentIndex + 1 < statuses.length) {\n\t return globals.state.options.orders.statuses[currentIndex + 1];\n\t }\n\t return null; // If next status doesn't exist\n\t}\n\n\tconst isActiveStatus = (index) => {\n\t return globals.state.options.orders.statuses.slice(index).some(status => status.value === order.value.status);\n\t};\n\n async function changePaymentStatus() {\n if (selectedPayments.value.status && selectedPayments.value.type) {\n orders.state.current.payment = selectedPayments.value;\n\n await orders.actions.update(orders.state.current)\n } else {\n console.error('Payment status is void. Must handle somehow.');\n }\n\n\t\tclosePaymentPopup()\n }\n\n async function setNextStatus() {\n const nextStatus = getNextStatus(orders.state.current.status);\n\n if (nextStatus) {\n orders.state.current.status = nextStatus.value;\n\n await orders.actions.update(orders.state.current)\n } else {\n console.error('Next status is void. Must handle somehow.');\n }\n\n\t\tcloseStatusPopup()\n }\n\n async function cancelOrder() {\n \talert()\n\n orders.state.current.status = 'canceled';\n\n await orders.actions.update(orders.state.current)\n}\n\n\n async function confirmOrder() {\n \talert()\n\n orders.state.current.status = 'confirmed';\n\n await orders.actions.update(orders.state.current)\n\t}\n\n\tfunction calculateDeliveryTime(distance, date) {\n\t if (!distance) {\n\t return null;\n\t }\n\n\t const basePreparationTime = 10 * 60 * 1000; // Convert to milliseconds\n\t const travelTime = Math.ceil((15 + 5 + 3 * distance) / 5) * 5 * 60 * 1000;\n\n\t // Преобразование даты начала в миллисекунды и добавление времени подготовки и доставки\n\t const startTime = new Date(date).getTime();\n\t const estimatedDeliveryTime = new Date(startTime + basePreparationTime + travelTime);\n\n\t return estimatedDeliveryTime;\n\t}\n\n\n</script>\n\n<style lang=\"scss\" scoped>\n\t.blink {\n\t animation: blink-animation 1s ease infinite;\n\t}\n\n\t@keyframes blink-animation {\n\t 0%, 100% {\n\t opacity: 1;\n\t }\n\t 50% {\n\t opacity: 0.8;\n\t }\n\t}\n</style>"],"names":["globals.state","auth.state","orders.actions","organizations.actions","_a","orders.state","orders.getters"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrderCreate.vue.cjs","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreate.vue"],"sourcesContent":["<template>\n\n<section class=\"bg-white pd-thin\">\n\n\t<!-- Ask to login -->\n\t<AskToLogin class=\"mn-b-thin\" v-if=\"auth.state.access.status === false\" /> \n\n\t<!-- Empty State -->\n\t<EmptyState \n\t\tv-if=\"shopcart.state.positions < 1\" \n\t/>\t\n\t<Succes \n\t\tv-if=\"order.status === true && shopcart.state.positions.length > 0\" \n\t\t:order=\"order\" \n\t/>\n\t<!-- Уведомления о минимальной сумме заказа и времени работы -->\n\t<div v-if=\"shopcart.state.positions.length > 0\" class=\"w-100 gap-thin cols-1 mn-b-thin\">\n\t\t<div v-if=\"!isOpen\" class=\"bg-fifth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ This spot is currently closed. You can place an order, but it will be processed when the spot opens.</p>\n\t\t</div>\n\t\t<div v-if=\"cartTotalPrice < minOrderAmount\" class=\"bg-fourth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ Minimum order amount is {{ formatPrice(minOrderAmount) }}. Your current total is {{ formatPrice(cartTotalPrice) }}.</p>\n\t\t</div>\n\t</div>\n\t<!-- Order form -->\n\t<div class=\"gap-small mn-b-thin cols-2\">\n\t\t<!-- Order Form -->\n\t\t<div\n\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\" \n\t\t\tclass=\"rows-1 gap-thin\"\n\t\t>\n\t\t\t<FormCustomerDetails\n\t\t\t\t:customer=\"orders.state.current.customer\"\n\t\t\t/>\n\t\t\t<FormPayment \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t<FormDelivery \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t\n\t\t</div>\n\n\t\t<!-- Order positions -->\n\t\t<div \n\t\t\tv-if=\"shopcart.state.positions.length > 0\" \n\t\t\tclass=\"bg-white br-solid br-light br-1px pd-medium radius-medium\"\n\t\t>\n\t\t\t<h4 class=\"font-second mn-b-thin\">Your Order</h4>\n\n\t\t\t<ul class=\"flex gap-thin flex-wrap mn-b-thin\">\n\t\t\t\t<CardOrderItem \n\t\t\t\t\tv-for=\"product in shopcart.state.positions\" \n\t\t\t\t\t:key=\"product._id\" \n\t\t\t\t\t:editable=\"true\" \n\t\t\t\t\t:product=\"product\" \n\t :increase=\"product => shopcart.actions.incrementItemQuantity(product._id)\"\n\t :decrease=\"product => shopcart.actions.decrementItemQuantity(product._id)\"\n\t :remove=\"product => shopcart.actions.removeProduct(product._id)\"\n\t\t\t\t\t@updateRentDates=\"(product, dates) => shopcart.actions.updateRentDates({ productId: product._id, dates })\"\n\t class=\"w-100 bg-white \"\n\t />\n\t\t\t</ul>\n\n\t\t\t\t<div \n\t\t\t\tclass=\"mn-b-thin\"\n\t\t\t>\t\n\t\t\t\t<PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :deliveryRate=\"deliveryCost\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders.showFees\"\n :feesRate=\"globals.state.options?.orders.feesRate || 0\"\n :showVat=\"globals.state.options?.orders.showVat\"\n :vatRate=\"globals.state.options?.orders.vatRate || 0\"\n :showDeliveryFee=\"globals.state.options?.orders.showDeliveryFee\"\n />\n\t\t\t</div>\n\t\t\t<!-- Send order -->\n\t\t <Button\n v-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n :submit=\"() => handleCreate()\"\n class=\"bg-main mn-b-small pd-small radius-big w-100 button\"\n :disabled=\"\n\t\t errorName \n\t\t || errorPhoneOrMessenger \n\t\t || errorCity \n\t\t || errorAddress \n\t\t || errorDelivery \n\t\t || errorPayment\n\t\t || isLocationLoading\n\t\t || cartTotalPrice < minOrderAmount\n\t\t \"\n >\n <span>Place an Order</span>\n </Button>\n\n\t\t <p class='mn-b-thin'>\n\t\t\t\tI agree that placing the order places me under an obligation to make a payment in accordance with <a class=\"t-semi font-second t-second\" href=\"/legal/terms-of-use\" target=\"_blank\">Terms of Use.</a>\n\t\t\t</p>\n\t\t\t<p >\n\t\t\t\t\n\t\t\t</p>\n\t\t</div>\n\n\t</div>\n\n\t\n\t\n</section>\n\n</template>\n\n\n<script setup>\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import components\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Block\nimport CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n// Sections\nimport AskToLogin from '@martyrs/src/modules/orders/components/sections/AskToLogin.vue'\nimport Succes from '@martyrs/src/modules/orders/components/sections/Succes.vue'\nimport EmptyState from '@martyrs/src/modules/orders/components/sections/EmptyState.vue'\n\nimport PriceTotal from '@martyrs/src/modules/orders/components/elements/PriceTotal.vue';\n\nimport FormCustomerDetails from '@martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue'\nimport FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\nimport FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import libs\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport { ref, computed, onMounted, watch } from 'vue'\nimport { useRoute,useRouter } from 'vue-router'\nimport { useGlobalMixins } from \"@martyrs/src/modules/globals/views/mixins/mixins.js\"\n\n// Store\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth';\nimport * as shopcart from '@martyrs/src/modules/orders/store/shopcart';\nimport * as organizations from '@martyrs/src/modules/organizations/store/organizations';\nimport * as orders from '@martyrs/src/modules/orders/store/orders';\nimport * as users from '@martyrs/src/modules/auth/views/store/users';\n\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Variables and computed\n//////////////////////////////////////////////////////////////////////////////////////////////////\nconst isLocationLoading = ref(false)\n// Accessing router and store\nconst route = useRoute()\nconst router = useRouter()\nconst { returnCurrency, formatPrice } = useGlobalMixins()\n// COMPUTED\nconst order = computed(() => orders.state.current)\nconst user = computed(() => users.state.current)\n\nconst cartTotalPrice = shopcart.getters.cartTotalPrice\n\nconst deliveryCost = computed(() => {\n const type = orders.state.current.delivery.type\n const distance = orderOrganization.value[0]?.distance || 0\n const config = globals.state.options?.orders?.delivery_formula || {}\n\n return orders.getters.getDeliveryPrice(type, distance, config)\n})\n\n// Organization\nconst orderOrganization = ref({})\nconst spotOrganization = ref({})\nconst isOpen = ref(true)\n\n// Новые переменные для проверки минимальной суммы заказа и времени работы\nconst minOrderAmount = ref(0)\n\nfunction checkIsOpenNow(worktime) {\n try {\n console.log('[checkIsOpenNow] worktime:', worktime);\n\n if (\n !worktime ||\n typeof worktime !== 'object' ||\n Array.isArray(worktime) ||\n !worktime.regular\n ) {\n console.log('[checkIsOpenNow] invalid, returning true');\n return true;\n }\n\n const now = new Date();\n const currentDay = now.getDay();\n const currentTime = `${String(now.getHours()).padStart(2, '0')}:${String(now.getMinutes()).padStart(2, '0')}`;\n const today = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n\n console.log('[checkIsOpenNow] currentDay:', currentDay);\n console.log('[checkIsOpenNow] currentTime:', currentTime);\n\n const specialDay = worktime.special?.find(s => {\n const d = new Date(s.date);\n return (\n d.getFullYear() === today.getFullYear() &&\n d.getMonth() === today.getMonth() &&\n d.getDate() === today.getDate()\n );\n });\n\n if (specialDay) {\n console.log('[checkIsOpenNow] specialDay:', specialDay);\n if (!specialDay.isOpen) return false;\n return specialDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n }\n\n const regularDay = worktime.regular.find(d => d.dayOfWeek === currentDay);\n if (!regularDay || !regularDay.isOpen) return false;\n\n return regularDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n } catch (err) {\n console.error('[checkIsOpenNow] error:', err);\n return true;\n }\n}\n\n\nif (!globals.state.options.orders.allowUnauthenticatedOrders && !auth.state.user._id) { \n\trouter.push({name: 'Sign In'})\t\n}\n\n\norders.mutations.resetOrder()\n\nonMounted(async()=> {\n\temits('page-loading');\n\n\tisLocationLoading.value = true\n\n\tif (auth.state.user._id) {\n\t\tlet data = await users.actions.read({ _id:auth.state.user._id, user: auth.state.user._id });\n\n\t\torders.state.current.customer.profile.name = users.state.current.profile.name\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t}\n\t\n\torderOrganization.value = await organizations.actions.read({\n\t _id: shopcart.state.organization,\n\t location: globals.state.position?.location,\n\t lookup: ['spots']\n\t})\n\t\n\t// Получаем информацию о минимальной сумме заказа и времени работы из spot\n\tif (orderOrganization.value && orderOrganization.value[0]?.spots?.length > 0) {\n\t spotOrganization.value = orderOrganization.value[0].spots[0];\n\t\tisOpen.value = checkIsOpenNow(spotOrganization.value.worktime);\n\t console.log(spotOrganization.value)\n\t minOrderAmount.value = spotOrganization.value.minorder || 0;\n\t}\n\n\n\t\n \tisLocationLoading.value = false\n emits('page-loaded');\n\n if (typeof gtag === 'function') {\n gtag('event', 'begin_checkout', {\n currency: returnCurrency(), // Замените на вашу валюту\n value: cartTotalPrice || 0,\n items: shopcart.state.positions.map(item => ({\n item_id: item.product?._id,\n item_name: item.product?.name,\n price: item.price || 0,\n quantity: item.quantity || 1,\n item_category: item.product?.category || '',\n item_brand: orderOrganization.value.profile?.name || ''\n })),\n organization: orderOrganization.value.profile?.name || '',\n location: globals.state.position?.location || 'unknown'\n });\n }\n})\n\n\nwatch(\n () => orders.state.current.delivery,\n async (newVal) => {\n if (newVal?.location) {\n \tisLocationLoading.value = true\n\n orderOrganization.value = await organizations.actions.read({\n _id: shopcart.state.organization,\n location: newVal.location,\n lookup: ['spots']\n })\n \n isLocationLoading.value = false\n }\n },\n { deep: true }\n)\n\n\n/////////////////////////////\n// Store Verification\n/////////////////////////////\nconst errorName = computed(() => {\n if (orders.state.current.customer.name?.length < 2) { return true } else { return false }\n});\n\nconst errorPhoneOrMessenger = computed(() => {\n const hasMessengerType = orders.state.current.customer.messenger?.type;\n const hasMessengerValue = orders.state.current.customer.messenger?.value?.length >\t 2;\n const hasPhone = orders.state.current.customer.number?.length > 0;\n // Ошибка, если нет ни номера телефона, ни корректного типа и значения мессенджера\n return !hasPhone && !(hasMessengerType && hasMessengerValue);\n});\n\nconst errorAddress = computed(() => {\n const type = orders.state.current.delivery.type;\n if (type === \"pickup\") {\n return !orders.state.current.delivery.spot;\n } else if (type === \"courier\" || type === \"mail\") {\n const address = orders.state.current.delivery.address;\n return !address || typeof address !== 'string' || address.length < 2;\n }\n return false;\n});\n\nconst errorDelivery = computed(() => {\n if (orders.state.current.delivery.type) {return false } else {return true } \n})\n\nconst errorPayment = computed(() => {\n if (orders.state.current.payment.type) { return false } else {return true } \n})\n/////////////////////////////\n// Methods\n/////////////////////////////\nasync function handleCreate() {\n\n\torders.state.current.status = 'created';\n\n\torders.state.current.owner = {\n\t\ttarget: orderOrganization.value[0]._id,\n\t\ttype: 'organization'\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.creator = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.customer = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\torders.state.current.positions = shopcart.state.positions\n\n \tconst referralCode = localStorage.getItem('referalCode');\n \n if (referralCode) {\n orders.state.current.referralCode = referralCode;\n }\n\n let order = await orders.actions.create(orders.state.current);\n\n if (order) {\n\t if (typeof gtag === 'function') {\n\t gtag('event', 'purchase', {\n\t transaction_id: order._id,\n\t value: cartTotalPrice || 0,\n\t currency: returnCurrency(), // Замените на вашу валюту\n\t tax: 0, // Если есть данные о налоге\n\t shipping: deliveryCost.value, // Если есть данные о доставке\n\t items: shopcart.state.positions.map(item => ({\n\t item_id: item.product?._id,\n\t item_name: item.product?.name ,\n\t price: item.price || 0,\n\t quantity: item.quantity || 1,\n\t item_category: item.product?.category || ''\n\t })),\n\t organization: orderOrganization.value?.profile?.name,\n\t location: globals.state.position?.location || 'unknown',\n\t referral_code: referralCode || null,\n\t user_id: auth.state.user._id || 'anonymous'\n\t });\n\t }\n\t}\n\n if (order) {\n \tawait router.push({\n \t\tname: 'Order',\n \t\tparams: {\n \t\t\torder: order._id\n \t\t}\n \t})\n \t\t\n \tshopcart.actions.resetShopcart()\n\n } else {\n \talert('something wrong')\n }\n}\n</script>\n\n<style lang=\"scss\">\n\n.round-wrapper {\n\tposition: relative;\n\n\t.round {\n\t\tmargin: 0;\n\t\tmargin-right: 1rem;\n\t}\n\n\tinput:checked {\n\t\tbackground: #00ff88;\n\t}\n\n\t.round-checkmark {\n\t\tposition: absolute;\n\t\twidth: 0.5rem;\n\t\theight: 0.5rem;\n\t\tbackground: white;\n\n\t\tleft: 0.5rem;\n\t\ttop: 0.5rem;\n\n\t\topacity: 1;\n\t}\n}\n</style>"],"names":["ref","useRoute","useRouter","useGlobalMixins","computed","orders.state","users.state","shopcart.getters","globals.state","orders.getters","auth.state","orders.mutations","onMounted","users.actions","organizations.actions","shopcart.state","_a","_b","_c","_d","watch","order","orders.actions","shopcart.actions"],"mappings":"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"}
1
+ {"version":3,"file":"OrderCreate.vue.cjs","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreate.vue"],"sourcesContent":["<template>\n\n<section class=\"bg-white pd-thin\">\n\n\t<!-- Ask to login -->\n\t<AskToLogin class=\"mn-b-thin\" v-if=\"auth.state.access.status === false\" /> \n\n\t<!-- Empty State -->\n\t<EmptyState \n\t\tv-if=\"shopcart.state.positions < 1\" \n\t/>\t\n\t<Succes \n\t\tv-if=\"order.status === true && shopcart.state.positions.length > 0\" \n\t\t:order=\"order\" \n\t/>\n\t<!-- Уведомления о минимальной сумме заказа и времени работы -->\n\t<div v-if=\"shopcart.state.positions.length > 0\" class=\"w-100 gap-thin cols-1 mn-b-thin\">\n\t\t<div v-if=\"!isOpen\" class=\"bg-fifth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ This spot is currently closed. You can place an order, but it will be processed when the spot opens.</p>\n\t\t</div>\n\t\t<div v-if=\"cartTotalPrice < minOrderAmount\" class=\"bg-fourth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ Minimum order amount is {{ formatPrice(minOrderAmount) }}. Your current total is {{ formatPrice(cartTotalPrice) }}.</p>\n\t\t</div>\n\t</div>\n\t<!-- Order form -->\n\t<div class=\"gap-small mn-b-thin cols-2\">\n\t\t<!-- Order Form -->\n\t\t<div\n\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\" \n\t\t\tclass=\"rows-1 gap-thin\"\n\t\t>\n\t\t\t<FormCustomerDetails\n\t\t\t\t:customer=\"orders.state.current.customer\"\n\t\t\t/>\n\t\t\t<FormPayment \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t<FormDelivery \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t\n\t\t</div>\n\n\t\t<!-- Order positions -->\n\t\t<div \n\t\t\tv-if=\"shopcart.state.positions.length > 0\" \n\t\t\tclass=\"bg-white br-solid br-light br-1px pd-medium radius-medium\"\n\t\t>\n\t\t\t<h4 class=\"font-second mn-b-thin\">Your Order</h4>\n\n\t\t\t<ul class=\"flex gap-thin flex-wrap mn-b-thin\">\n\t\t\t\t<CardOrderItem \n\t\t\t\t\tv-for=\"product in shopcart.state.positions\" \n\t\t\t\t\t:key=\"product._id\" \n\t\t\t\t\t:editable=\"true\" \n\t\t\t\t\t:product=\"product\" \n\t :increase=\"product => shopcart.actions.incrementItemQuantity(product._id)\"\n\t :decrease=\"product => shopcart.actions.decrementItemQuantity(product._id)\"\n\t :remove=\"product => shopcart.actions.removeProduct(product._id)\"\n\t\t\t\t\t@updateRentDates=\"(product, dates) => shopcart.actions.updateRentDates({ productId: product._id, dates })\"\n\t class=\"w-100 bg-white \"\n\t />\n\t\t\t</ul>\n\n\t\t\t\t<div \n\t\t\t\tclass=\"mn-b-thin\"\n\t\t\t>\t\n\t\t\t\t<PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :deliveryRate=\"deliveryCost\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders.showFees\"\n :feesRate=\"globals.state.options?.orders.feesRate || 0\"\n :showVat=\"globals.state.options?.orders.showVat\"\n :vatRate=\"globals.state.options?.orders.vatRate || 0\"\n :showDeliveryFee=\"globals.state.options?.orders.showDeliveryFee\"\n />\n\t\t\t</div>\n\t\t\t<!-- Send order -->\n\t\t <Button\n v-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n :submit=\"() => handleCreate()\"\n class=\"bg-main mn-b-small pd-small radius-big w-100 button\"\n :disabled=\"\n\t\t errorName \n\t\t || errorPhoneOrMessenger \n\t\t || errorCity \n\t\t || errorAddress \n\t\t || errorDelivery \n\t\t || errorPayment\n\t\t || isLocationLoading\n\t\t || cartTotalPrice < minOrderAmount\n\t\t \"\n >\n <span>Place an Order</span>\n </Button>\n\n\t\t <p class='mn-b-thin'>\n\t\t\t\tI agree that placing the order places me under an obligation to make a payment in accordance with <a class=\"t-semi font-second t-second\" href=\"/legal/terms-of-use\" target=\"_blank\">Terms of Use.</a>\n\t\t\t</p>\n\t\t\t<p >\n\t\t\t\t\n\t\t\t</p>\n\t\t</div>\n\n\t</div>\n\n\t\n\t\n</section>\n\n</template>\n\n\n<script setup>\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import components\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Block\nimport CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n// Sections\nimport AskToLogin from '@martyrs/src/modules/orders/components/sections/AskToLogin.vue'\nimport Succes from '@martyrs/src/modules/orders/components/sections/Succes.vue'\nimport EmptyState from '@martyrs/src/modules/orders/components/sections/EmptyState.vue'\n\nimport PriceTotal from '@martyrs/src/modules/orders/components/elements/PriceTotal.vue';\n\nimport FormCustomerDetails from '@martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue'\nimport FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\nimport FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import libs\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport { ref, computed, onMounted, watch } from 'vue'\nimport { useRoute,useRouter } from 'vue-router'\nimport { useGlobalMixins } from \"@martyrs/src/modules/globals/views/mixins/mixins.js\"\n\n// 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 shopcart from '@martyrs/src/modules/orders/store/shopcart.js';\nimport * as organizations from '@martyrs/src/modules/organizations/store/organizations.js';\nimport * as orders from '@martyrs/src/modules/orders/store/orders.js';\nimport * as users from '@martyrs/src/modules/auth/views/store/users.js';\n\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Variables and computed\n//////////////////////////////////////////////////////////////////////////////////////////////////\nconst isLocationLoading = ref(false)\n// Accessing router and store\nconst route = useRoute()\nconst router = useRouter()\nconst { returnCurrency, formatPrice } = useGlobalMixins()\n// COMPUTED\nconst order = computed(() => orders.state.current)\nconst user = computed(() => users.state.current)\n\nconst cartTotalPrice = shopcart.getters.cartTotalPrice\n\nconst deliveryCost = computed(() => {\n const type = orders.state.current.delivery.type\n const distance = orderOrganization.value[0]?.distance || 0\n const config = globals.state.options?.orders?.delivery_formula || {}\n\n return orders.getters.getDeliveryPrice(type, distance, config)\n})\n\n// Organization\nconst orderOrganization = ref({})\nconst spotOrganization = ref({})\nconst isOpen = ref(true)\n\n// Новые переменные для проверки минимальной суммы заказа и времени работы\nconst minOrderAmount = ref(0)\n\nfunction checkIsOpenNow(worktime) {\n try {\n console.log('[checkIsOpenNow] worktime:', worktime);\n\n if (\n !worktime ||\n typeof worktime !== 'object' ||\n Array.isArray(worktime) ||\n !worktime.regular\n ) {\n console.log('[checkIsOpenNow] invalid, returning true');\n return true;\n }\n\n const now = new Date();\n const currentDay = now.getDay();\n const currentTime = `${String(now.getHours()).padStart(2, '0')}:${String(now.getMinutes()).padStart(2, '0')}`;\n const today = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n\n console.log('[checkIsOpenNow] currentDay:', currentDay);\n console.log('[checkIsOpenNow] currentTime:', currentTime);\n\n const specialDay = worktime.special?.find(s => {\n const d = new Date(s.date);\n return (\n d.getFullYear() === today.getFullYear() &&\n d.getMonth() === today.getMonth() &&\n d.getDate() === today.getDate()\n );\n });\n\n if (specialDay) {\n console.log('[checkIsOpenNow] specialDay:', specialDay);\n if (!specialDay.isOpen) return false;\n return specialDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n }\n\n const regularDay = worktime.regular.find(d => d.dayOfWeek === currentDay);\n if (!regularDay || !regularDay.isOpen) return false;\n\n return regularDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n } catch (err) {\n console.error('[checkIsOpenNow] error:', err);\n return true;\n }\n}\n\n\nif (!globals.state.options.orders.allowUnauthenticatedOrders && !auth.state.user._id) { \n\trouter.push({name: 'Sign In'})\t\n}\n\n\norders.mutations.resetOrder()\n\nonMounted(async()=> {\n\temits('page-loading');\n\n\tisLocationLoading.value = true\n\n\tif (auth.state.user._id) {\n\t\tlet data = await users.actions.read({ _id:auth.state.user._id, user: auth.state.user._id });\n\n\t\torders.state.current.customer.profile.name = users.state.current.profile.name\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t}\n\t\n\torderOrganization.value = await organizations.actions.read({\n\t _id: shopcart.state.organization,\n\t location: globals.state.position?.location,\n\t lookup: ['spots']\n\t})\n\t\n\t// Получаем информацию о минимальной сумме заказа и времени работы из spot\n\tif (orderOrganization.value && orderOrganization.value[0]?.spots?.length > 0) {\n\t spotOrganization.value = orderOrganization.value[0].spots[0];\n\t\tisOpen.value = checkIsOpenNow(spotOrganization.value.worktime);\n\t console.log(spotOrganization.value)\n\t minOrderAmount.value = spotOrganization.value.minorder || 0;\n\t}\n\n\n\t\n \tisLocationLoading.value = false\n emits('page-loaded');\n\n if (typeof gtag === 'function') {\n gtag('event', 'begin_checkout', {\n currency: returnCurrency(), // Замените на вашу валюту\n value: cartTotalPrice || 0,\n items: shopcart.state.positions.map(item => ({\n item_id: item.product?._id,\n item_name: item.product?.name,\n price: item.price || 0,\n quantity: item.quantity || 1,\n item_category: item.product?.category || '',\n item_brand: orderOrganization.value.profile?.name || ''\n })),\n organization: orderOrganization.value.profile?.name || '',\n location: globals.state.position?.location || 'unknown'\n });\n }\n})\n\n\nwatch(\n () => orders.state.current.delivery,\n async (newVal) => {\n if (newVal?.location) {\n \tisLocationLoading.value = true\n\n orderOrganization.value = await organizations.actions.read({\n _id: shopcart.state.organization,\n location: newVal.location,\n lookup: ['spots']\n })\n \n isLocationLoading.value = false\n }\n },\n { deep: true }\n)\n\n\n/////////////////////////////\n// Store Verification\n/////////////////////////////\nconst errorName = computed(() => {\n if (orders.state.current.customer.name?.length < 2) { return true } else { return false }\n});\n\nconst errorPhoneOrMessenger = computed(() => {\n const hasMessengerType = orders.state.current.customer.messenger?.type;\n const hasMessengerValue = orders.state.current.customer.messenger?.value?.length >\t 2;\n const hasPhone = orders.state.current.customer.number?.length > 0;\n // Ошибка, если нет ни номера телефона, ни корректного типа и значения мессенджера\n return !hasPhone && !(hasMessengerType && hasMessengerValue);\n});\n\nconst errorAddress = computed(() => {\n const type = orders.state.current.delivery.type;\n if (type === \"pickup\") {\n return !orders.state.current.delivery.spot;\n } else if (type === \"courier\" || type === \"mail\") {\n const address = orders.state.current.delivery.address;\n return !address || typeof address !== 'string' || address.length < 2;\n }\n return false;\n});\n\nconst errorDelivery = computed(() => {\n if (orders.state.current.delivery.type) {return false } else {return true } \n})\n\nconst errorPayment = computed(() => {\n if (orders.state.current.payment.type) { return false } else {return true } \n})\n/////////////////////////////\n// Methods\n/////////////////////////////\nasync function handleCreate() {\n\n\torders.state.current.status = 'created';\n\n\torders.state.current.owner = {\n\t\ttarget: orderOrganization.value[0]._id,\n\t\ttype: 'organization'\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.creator = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.customer = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\torders.state.current.positions = shopcart.state.positions\n\n \tconst referralCode = localStorage.getItem('referalCode');\n \n if (referralCode) {\n orders.state.current.referralCode = referralCode;\n }\n\n let order = await orders.actions.create(orders.state.current);\n\n if (order) {\n\t if (typeof gtag === 'function') {\n\t gtag('event', 'purchase', {\n\t transaction_id: order._id,\n\t value: cartTotalPrice || 0,\n\t currency: returnCurrency(), // Замените на вашу валюту\n\t tax: 0, // Если есть данные о налоге\n\t shipping: deliveryCost.value, // Если есть данные о доставке\n\t items: shopcart.state.positions.map(item => ({\n\t item_id: item.product?._id,\n\t item_name: item.product?.name ,\n\t price: item.price || 0,\n\t quantity: item.quantity || 1,\n\t item_category: item.product?.category || ''\n\t })),\n\t organization: orderOrganization.value?.profile?.name,\n\t location: globals.state.position?.location || 'unknown',\n\t referral_code: referralCode || null,\n\t user_id: auth.state.user._id || 'anonymous'\n\t });\n\t }\n\t}\n\n if (order) {\n \tawait router.push({\n \t\tname: 'Order',\n \t\tparams: {\n \t\t\torder: order._id\n \t\t}\n \t})\n \t\t\n \tshopcart.actions.resetShopcart()\n\n } else {\n \talert('something wrong')\n }\n}\n</script>\n\n<style lang=\"scss\">\n\n.round-wrapper {\n\tposition: relative;\n\n\t.round {\n\t\tmargin: 0;\n\t\tmargin-right: 1rem;\n\t}\n\n\tinput:checked {\n\t\tbackground: #00ff88;\n\t}\n\n\t.round-checkmark {\n\t\tposition: absolute;\n\t\twidth: 0.5rem;\n\t\theight: 0.5rem;\n\t\tbackground: white;\n\n\t\tleft: 0.5rem;\n\t\ttop: 0.5rem;\n\n\t\topacity: 1;\n\t}\n}\n</style>"],"names":["ref","useRoute","useRouter","useGlobalMixins","computed","orders.state","users.state","shopcart.getters","globals.state","orders.getters","auth.state","orders.mutations","onMounted","users.actions","organizations.actions","shopcart.state","_a","_b","_c","_d","watch","order","orders.actions","shopcart.actions"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrderCreate.vue.js","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreate.vue"],"sourcesContent":["<template>\n\n<section class=\"bg-white pd-thin\">\n\n\t<!-- Ask to login -->\n\t<AskToLogin class=\"mn-b-thin\" v-if=\"auth.state.access.status === false\" /> \n\n\t<!-- Empty State -->\n\t<EmptyState \n\t\tv-if=\"shopcart.state.positions < 1\" \n\t/>\t\n\t<Succes \n\t\tv-if=\"order.status === true && shopcart.state.positions.length > 0\" \n\t\t:order=\"order\" \n\t/>\n\t<!-- Уведомления о минимальной сумме заказа и времени работы -->\n\t<div v-if=\"shopcart.state.positions.length > 0\" class=\"w-100 gap-thin cols-1 mn-b-thin\">\n\t\t<div v-if=\"!isOpen\" class=\"bg-fifth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ This spot is currently closed. You can place an order, but it will be processed when the spot opens.</p>\n\t\t</div>\n\t\t<div v-if=\"cartTotalPrice < minOrderAmount\" class=\"bg-fourth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ Minimum order amount is {{ formatPrice(minOrderAmount) }}. Your current total is {{ formatPrice(cartTotalPrice) }}.</p>\n\t\t</div>\n\t</div>\n\t<!-- Order form -->\n\t<div class=\"gap-small mn-b-thin cols-2\">\n\t\t<!-- Order Form -->\n\t\t<div\n\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\" \n\t\t\tclass=\"rows-1 gap-thin\"\n\t\t>\n\t\t\t<FormCustomerDetails\n\t\t\t\t:customer=\"orders.state.current.customer\"\n\t\t\t/>\n\t\t\t<FormPayment \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t<FormDelivery \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t\n\t\t</div>\n\n\t\t<!-- Order positions -->\n\t\t<div \n\t\t\tv-if=\"shopcart.state.positions.length > 0\" \n\t\t\tclass=\"bg-white br-solid br-light br-1px pd-medium radius-medium\"\n\t\t>\n\t\t\t<h4 class=\"font-second mn-b-thin\">Your Order</h4>\n\n\t\t\t<ul class=\"flex gap-thin flex-wrap mn-b-thin\">\n\t\t\t\t<CardOrderItem \n\t\t\t\t\tv-for=\"product in shopcart.state.positions\" \n\t\t\t\t\t:key=\"product._id\" \n\t\t\t\t\t:editable=\"true\" \n\t\t\t\t\t:product=\"product\" \n\t :increase=\"product => shopcart.actions.incrementItemQuantity(product._id)\"\n\t :decrease=\"product => shopcart.actions.decrementItemQuantity(product._id)\"\n\t :remove=\"product => shopcart.actions.removeProduct(product._id)\"\n\t\t\t\t\t@updateRentDates=\"(product, dates) => shopcart.actions.updateRentDates({ productId: product._id, dates })\"\n\t class=\"w-100 bg-white \"\n\t />\n\t\t\t</ul>\n\n\t\t\t\t<div \n\t\t\t\tclass=\"mn-b-thin\"\n\t\t\t>\t\n\t\t\t\t<PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :deliveryRate=\"deliveryCost\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders.showFees\"\n :feesRate=\"globals.state.options?.orders.feesRate || 0\"\n :showVat=\"globals.state.options?.orders.showVat\"\n :vatRate=\"globals.state.options?.orders.vatRate || 0\"\n :showDeliveryFee=\"globals.state.options?.orders.showDeliveryFee\"\n />\n\t\t\t</div>\n\t\t\t<!-- Send order -->\n\t\t <Button\n v-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n :submit=\"() => handleCreate()\"\n class=\"bg-main mn-b-small pd-small radius-big w-100 button\"\n :disabled=\"\n\t\t errorName \n\t\t || errorPhoneOrMessenger \n\t\t || errorCity \n\t\t || errorAddress \n\t\t || errorDelivery \n\t\t || errorPayment\n\t\t || isLocationLoading\n\t\t || cartTotalPrice < minOrderAmount\n\t\t \"\n >\n <span>Place an Order</span>\n </Button>\n\n\t\t <p class='mn-b-thin'>\n\t\t\t\tI agree that placing the order places me under an obligation to make a payment in accordance with <a class=\"t-semi font-second t-second\" href=\"/legal/terms-of-use\" target=\"_blank\">Terms of Use.</a>\n\t\t\t</p>\n\t\t\t<p >\n\t\t\t\t\n\t\t\t</p>\n\t\t</div>\n\n\t</div>\n\n\t\n\t\n</section>\n\n</template>\n\n\n<script setup>\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import components\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Block\nimport CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n// Sections\nimport AskToLogin from '@martyrs/src/modules/orders/components/sections/AskToLogin.vue'\nimport Succes from '@martyrs/src/modules/orders/components/sections/Succes.vue'\nimport EmptyState from '@martyrs/src/modules/orders/components/sections/EmptyState.vue'\n\nimport PriceTotal from '@martyrs/src/modules/orders/components/elements/PriceTotal.vue';\n\nimport FormCustomerDetails from '@martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue'\nimport FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\nimport FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import libs\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport { ref, computed, onMounted, watch } from 'vue'\nimport { useRoute,useRouter } from 'vue-router'\nimport { useGlobalMixins } from \"@martyrs/src/modules/globals/views/mixins/mixins.js\"\n\n// Store\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals';\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth';\nimport * as shopcart from '@martyrs/src/modules/orders/store/shopcart';\nimport * as organizations from '@martyrs/src/modules/organizations/store/organizations';\nimport * as orders from '@martyrs/src/modules/orders/store/orders';\nimport * as users from '@martyrs/src/modules/auth/views/store/users';\n\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Variables and computed\n//////////////////////////////////////////////////////////////////////////////////////////////////\nconst isLocationLoading = ref(false)\n// Accessing router and store\nconst route = useRoute()\nconst router = useRouter()\nconst { returnCurrency, formatPrice } = useGlobalMixins()\n// COMPUTED\nconst order = computed(() => orders.state.current)\nconst user = computed(() => users.state.current)\n\nconst cartTotalPrice = shopcart.getters.cartTotalPrice\n\nconst deliveryCost = computed(() => {\n const type = orders.state.current.delivery.type\n const distance = orderOrganization.value[0]?.distance || 0\n const config = globals.state.options?.orders?.delivery_formula || {}\n\n return orders.getters.getDeliveryPrice(type, distance, config)\n})\n\n// Organization\nconst orderOrganization = ref({})\nconst spotOrganization = ref({})\nconst isOpen = ref(true)\n\n// Новые переменные для проверки минимальной суммы заказа и времени работы\nconst minOrderAmount = ref(0)\n\nfunction checkIsOpenNow(worktime) {\n try {\n console.log('[checkIsOpenNow] worktime:', worktime);\n\n if (\n !worktime ||\n typeof worktime !== 'object' ||\n Array.isArray(worktime) ||\n !worktime.regular\n ) {\n console.log('[checkIsOpenNow] invalid, returning true');\n return true;\n }\n\n const now = new Date();\n const currentDay = now.getDay();\n const currentTime = `${String(now.getHours()).padStart(2, '0')}:${String(now.getMinutes()).padStart(2, '0')}`;\n const today = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n\n console.log('[checkIsOpenNow] currentDay:', currentDay);\n console.log('[checkIsOpenNow] currentTime:', currentTime);\n\n const specialDay = worktime.special?.find(s => {\n const d = new Date(s.date);\n return (\n d.getFullYear() === today.getFullYear() &&\n d.getMonth() === today.getMonth() &&\n d.getDate() === today.getDate()\n );\n });\n\n if (specialDay) {\n console.log('[checkIsOpenNow] specialDay:', specialDay);\n if (!specialDay.isOpen) return false;\n return specialDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n }\n\n const regularDay = worktime.regular.find(d => d.dayOfWeek === currentDay);\n if (!regularDay || !regularDay.isOpen) return false;\n\n return regularDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n } catch (err) {\n console.error('[checkIsOpenNow] error:', err);\n return true;\n }\n}\n\n\nif (!globals.state.options.orders.allowUnauthenticatedOrders && !auth.state.user._id) { \n\trouter.push({name: 'Sign In'})\t\n}\n\n\norders.mutations.resetOrder()\n\nonMounted(async()=> {\n\temits('page-loading');\n\n\tisLocationLoading.value = true\n\n\tif (auth.state.user._id) {\n\t\tlet data = await users.actions.read({ _id:auth.state.user._id, user: auth.state.user._id });\n\n\t\torders.state.current.customer.profile.name = users.state.current.profile.name\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t}\n\t\n\torderOrganization.value = await organizations.actions.read({\n\t _id: shopcart.state.organization,\n\t location: globals.state.position?.location,\n\t lookup: ['spots']\n\t})\n\t\n\t// Получаем информацию о минимальной сумме заказа и времени работы из spot\n\tif (orderOrganization.value && orderOrganization.value[0]?.spots?.length > 0) {\n\t spotOrganization.value = orderOrganization.value[0].spots[0];\n\t\tisOpen.value = checkIsOpenNow(spotOrganization.value.worktime);\n\t console.log(spotOrganization.value)\n\t minOrderAmount.value = spotOrganization.value.minorder || 0;\n\t}\n\n\n\t\n \tisLocationLoading.value = false\n emits('page-loaded');\n\n if (typeof gtag === 'function') {\n gtag('event', 'begin_checkout', {\n currency: returnCurrency(), // Замените на вашу валюту\n value: cartTotalPrice || 0,\n items: shopcart.state.positions.map(item => ({\n item_id: item.product?._id,\n item_name: item.product?.name,\n price: item.price || 0,\n quantity: item.quantity || 1,\n item_category: item.product?.category || '',\n item_brand: orderOrganization.value.profile?.name || ''\n })),\n organization: orderOrganization.value.profile?.name || '',\n location: globals.state.position?.location || 'unknown'\n });\n }\n})\n\n\nwatch(\n () => orders.state.current.delivery,\n async (newVal) => {\n if (newVal?.location) {\n \tisLocationLoading.value = true\n\n orderOrganization.value = await organizations.actions.read({\n _id: shopcart.state.organization,\n location: newVal.location,\n lookup: ['spots']\n })\n \n isLocationLoading.value = false\n }\n },\n { deep: true }\n)\n\n\n/////////////////////////////\n// Store Verification\n/////////////////////////////\nconst errorName = computed(() => {\n if (orders.state.current.customer.name?.length < 2) { return true } else { return false }\n});\n\nconst errorPhoneOrMessenger = computed(() => {\n const hasMessengerType = orders.state.current.customer.messenger?.type;\n const hasMessengerValue = orders.state.current.customer.messenger?.value?.length >\t 2;\n const hasPhone = orders.state.current.customer.number?.length > 0;\n // Ошибка, если нет ни номера телефона, ни корректного типа и значения мессенджера\n return !hasPhone && !(hasMessengerType && hasMessengerValue);\n});\n\nconst errorAddress = computed(() => {\n const type = orders.state.current.delivery.type;\n if (type === \"pickup\") {\n return !orders.state.current.delivery.spot;\n } else if (type === \"courier\" || type === \"mail\") {\n const address = orders.state.current.delivery.address;\n return !address || typeof address !== 'string' || address.length < 2;\n }\n return false;\n});\n\nconst errorDelivery = computed(() => {\n if (orders.state.current.delivery.type) {return false } else {return true } \n})\n\nconst errorPayment = computed(() => {\n if (orders.state.current.payment.type) { return false } else {return true } \n})\n/////////////////////////////\n// Methods\n/////////////////////////////\nasync function handleCreate() {\n\n\torders.state.current.status = 'created';\n\n\torders.state.current.owner = {\n\t\ttarget: orderOrganization.value[0]._id,\n\t\ttype: 'organization'\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.creator = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.customer = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\torders.state.current.positions = shopcart.state.positions\n\n \tconst referralCode = localStorage.getItem('referalCode');\n \n if (referralCode) {\n orders.state.current.referralCode = referralCode;\n }\n\n let order = await orders.actions.create(orders.state.current);\n\n if (order) {\n\t if (typeof gtag === 'function') {\n\t gtag('event', 'purchase', {\n\t transaction_id: order._id,\n\t value: cartTotalPrice || 0,\n\t currency: returnCurrency(), // Замените на вашу валюту\n\t tax: 0, // Если есть данные о налоге\n\t shipping: deliveryCost.value, // Если есть данные о доставке\n\t items: shopcart.state.positions.map(item => ({\n\t item_id: item.product?._id,\n\t item_name: item.product?.name ,\n\t price: item.price || 0,\n\t quantity: item.quantity || 1,\n\t item_category: item.product?.category || ''\n\t })),\n\t organization: orderOrganization.value?.profile?.name,\n\t location: globals.state.position?.location || 'unknown',\n\t referral_code: referralCode || null,\n\t user_id: auth.state.user._id || 'anonymous'\n\t });\n\t }\n\t}\n\n if (order) {\n \tawait router.push({\n \t\tname: 'Order',\n \t\tparams: {\n \t\t\torder: order._id\n \t\t}\n \t})\n \t\t\n \tshopcart.actions.resetShopcart()\n\n } else {\n \talert('something wrong')\n }\n}\n</script>\n\n<style lang=\"scss\">\n\n.round-wrapper {\n\tposition: relative;\n\n\t.round {\n\t\tmargin: 0;\n\t\tmargin-right: 1rem;\n\t}\n\n\tinput:checked {\n\t\tbackground: #00ff88;\n\t}\n\n\t.round-checkmark {\n\t\tposition: absolute;\n\t\twidth: 0.5rem;\n\t\theight: 0.5rem;\n\t\tbackground: white;\n\n\t\tleft: 0.5rem;\n\t\ttop: 0.5rem;\n\n\t\topacity: 1;\n\t}\n}\n</style>"],"names":["orders.state","users.state","shopcart.getters","globals.state","orders.getters","auth.state","orders.mutations","users.actions","organizations.actions","shopcart.state","_a","_b","_c","_d","order","orders.actions","shopcart.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsJA,UAAM,QAAQ;AAKd,UAAM,oBAAoB,IAAI,KAAK;AAErB,aAAQ;AACtB,UAAM,SAAS,UAAS;AACxB,UAAM,EAAE,gBAAgB,YAAW,IAAK,gBAAe;AAEvD,UAAM,QAAQ,SAAS,MAAMA,MAAa,OAAO;AACpC,aAAS,MAAMC,QAAY,OAAO;AAE/C,UAAM,iBAAiBC,QAAiB;AAExC,UAAM,eAAe,SAAS,MAAM;;AAClC,YAAM,OAAOF,MAAa,QAAQ,SAAS;AAC3C,YAAM,aAAW,uBAAkB,MAAM,CAAC,MAAzB,mBAA4B,aAAY;AACzD,YAAM,WAASG,mBAAc,YAAdA,mBAAuB,WAAvBA,mBAA+B,qBAAoB,CAAA;AAElE,aAAOC,UAAe,iBAAiB,MAAM,UAAU,MAAM;AAAA,IAC/D,CAAC;AAGD,UAAM,oBAAoB,IAAI,CAAE,CAAA;AAChC,UAAM,mBAAmB,IAAI,CAAE,CAAA;AAC/B,UAAM,SAAS,IAAI,IAAI;AAGvB,UAAM,iBAAiB,IAAI,CAAC;AAE5B,aAAS,eAAe,UAAU;;AAChC,UAAI;AACF,gBAAQ,IAAI,8BAA8B,QAAQ;AAElD,YACE,CAAC,YACD,OAAO,aAAa,YACpB,MAAM,QAAQ,QAAQ,KACtB,CAAC,SAAS,SACV;AACA,kBAAQ,IAAI,0CAA0C;AACtD,iBAAO;AAAA,QACb;AAEI,cAAM,MAAM,oBAAI,KAAM;AACtB,cAAM,aAAa,IAAI,OAAQ;AAC/B,cAAM,cAAc,GAAG,OAAO,IAAI,UAAU,EAAE,SAAS,GAAG,GAAG,CAAC,IAAI,OAAO,IAAI,WAAU,CAAE,EAAE,SAAS,GAAG,GAAG,CAAC;AAC3G,cAAM,QAAQ,IAAI,KAAK,IAAI,YAAW,GAAI,IAAI,SAAU,GAAE,IAAI,SAAS;AAEvE,gBAAQ,IAAI,gCAAgC,UAAU;AACtD,gBAAQ,IAAI,iCAAiC,WAAW;AAExD,cAAM,cAAa,cAAS,YAAT,mBAAkB,KAAK,OAAK;AAC7C,gBAAM,IAAI,IAAI,KAAK,EAAE,IAAI;AACzB,iBACE,EAAE,YAAW,MAAO,MAAM,YAAa,KACvC,EAAE,SAAQ,MAAO,MAAM,SAAU,KACjC,EAAE,cAAc,MAAM,QAAO;AAAA,QAErC;AAEI,YAAI,YAAY;AACd,kBAAQ,IAAI,gCAAgC,UAAU;AACtD,cAAI,CAAC,WAAW,OAAQ,QAAO;AAC/B,kBAAO,gBAAW,YAAX,mBAAoB,KAAK,OAAK,EAAE,QAAQ,eAAe,EAAE,QAAQ;AAAA,QAC9E;AAEI,cAAM,aAAa,SAAS,QAAQ,KAAK,OAAK,EAAE,cAAc,UAAU;AACxE,YAAI,CAAC,cAAc,CAAC,WAAW,OAAQ,QAAO;AAE9C,gBAAO,gBAAW,YAAX,mBAAoB,KAAK,OAAK,EAAE,QAAQ,eAAe,EAAE,QAAQ;AAAA,MACzE,SAAQ,KAAK;AACZ,gBAAQ,MAAM,2BAA2B,GAAG;AAC5C,eAAO;AAAA,MACX;AAAA,IACA;AAGA,QAAI,CAACD,QAAc,QAAQ,OAAO,8BAA8B,CAACE,QAAW,KAAK,KAAK;AACrF,aAAO,KAAK,EAAC,MAAM,UAAS,CAAC;AAAA,IAC9B;AAGAC,cAAiB,WAAU;AAE3B,cAAU,YAAU;;AACnB,YAAM,cAAc;AAEpB,wBAAkB,QAAQ;AAE1B,UAAID,QAAW,KAAK,KAAK;AACb,cAAME,QAAc,KAAK,EAAE,KAAIF,QAAW,KAAK,KAAK,MAAMA,QAAW,KAAK,IAAK,CAAA;AAE1FL,cAAa,QAAQ,SAAS,QAAQ,OAAOC,QAAY,QAAQ,QAAQ;AACzED,cAAa,QAAQ,SAAS,QAAQC,QAAY,QAAQ;AAC1DD,cAAa,QAAQ,SAAS,QAAQC,QAAY,QAAQ;AAAA,MAC5D;AAEC,wBAAkB,QAAQ,MAAMO,UAAsB,KAAK;AAAA,QACzD,KAAKC,QAAe;AAAA,QACpB,WAAUN,aAAc,aAAdA,mBAAwB;AAAA,QAClC,QAAQ,CAAC,OAAO;AAAA,MACjB,CAAA;AAGD,UAAI,kBAAkB,WAAS,6BAAkB,MAAM,CAAC,MAAzB,mBAA4B,UAA5B,mBAAmC,UAAS,GAAG;AAC5E,yBAAiB,QAAQ,kBAAkB,MAAM,CAAC,EAAE,MAAM,CAAC;AAC5D,eAAO,QAAQ,eAAe,iBAAiB,MAAM,QAAQ;AAC5D,gBAAQ,IAAI,iBAAiB,KAAK;AAClC,uBAAe,QAAQ,iBAAiB,MAAM,YAAY;AAAA,MAC7D;AAIE,wBAAkB,QAAQ;AAC1B,YAAM,aAAa;AAEnB,UAAI,OAAO,SAAS,YAAY;AAC9B,aAAK,SAAS,kBAAkB;AAAA,UAC9B,UAAU,eAAgB;AAAA;AAAA,UAC1B,OAAO,kBAAkB;AAAA,UACzB,OAAOM,QAAe,UAAU,IAAI,UAAS;;AAAA;AAAA,cAC3C,UAASC,MAAA,KAAK,YAAL,gBAAAA,IAAc;AAAA,cACvB,YAAWC,MAAA,KAAK,YAAL,gBAAAA,IAAc;AAAA,cACzB,OAAO,KAAK,SAAS;AAAA,cACrB,UAAU,KAAK,YAAY;AAAA,cAC3B,iBAAeC,MAAA,KAAK,YAAL,gBAAAA,IAAc,aAAY;AAAA,cACzC,cAAYC,MAAA,kBAAkB,MAAM,YAAxB,gBAAAA,IAAiC,SAAQ;AAAA,YAC7D;AAAA,WAAQ;AAAA,UACF,gBAAc,uBAAkB,MAAM,YAAxB,mBAAiC,SAAQ;AAAA,UACvD,YAAUV,aAAc,aAAdA,mBAAwB,aAAY;AAAA,QACpD,CAAK;AAAA,MACL;AAAA,IACA,CAAC;AAGD;AAAA,MACE,MAAMH,MAAa,QAAQ;AAAA,MAC3B,OAAO,WAAW;AAChB,YAAI,iCAAQ,UAAU;AACrB,4BAAkB,QAAQ;AAEzB,4BAAkB,QAAQ,MAAMQ,UAAsB,KAAK;AAAA,YACzD,KAAKC,QAAe;AAAA,YACpB,UAAU,OAAO;AAAA,YACjB,QAAQ,CAAC,OAAO;AAAA,UACjB,CAAA;AAED,4BAAkB,QAAQ;AAAA,QAChC;AAAA,MACG;AAAA,MACD,EAAE,MAAM,KAAI;AAAA,IACd;AAMA,UAAM,YAAY,SAAS,MAAM;;AAC/B,YAAIT,WAAa,QAAQ,SAAS,SAA9BA,mBAAoC,UAAS,GAAG;AAAE,eAAO;AAAA,aAAY;AAAE,eAAO;AAAA,MAAK;AAAA,IACzF,CAAC;AAED,UAAM,wBAAwB,SAAS,MAAM;;AAC3C,YAAM,oBAAmBA,WAAa,QAAQ,SAAS,cAA9BA,mBAAyC;AAClE,YAAM,sBAAoBA,iBAAa,QAAQ,SAAS,cAA9BA,mBAAyC,UAAzCA,mBAAgD,UAAU;AACpF,YAAM,aAAWA,WAAa,QAAQ,SAAS,WAA9BA,mBAAsC,UAAS;AAEhE,aAAO,CAAC,YAAY,EAAE,oBAAoB;AAAA,IAC5C,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAClC,YAAM,OAAOA,MAAa,QAAQ,SAAS;AAC3C,UAAI,SAAS,UAAU;AACrB,eAAO,CAACA,MAAa,QAAQ,SAAS;AAAA,MACvC,WAAU,SAAS,aAAa,SAAS,QAAQ;AAChD,cAAM,UAAUA,MAAa,QAAQ,SAAS;AAC9C,eAAO,CAAC,WAAW,OAAO,YAAY,YAAY,QAAQ,SAAS;AAAA,MACvE;AACE,aAAO;AAAA,IACT,CAAC;AAED,UAAM,gBAAgB,SAAS,MAAM;AACnC,UAAIA,MAAa,QAAQ,SAAS,MAAM;AAAC,eAAO;AAAA,MAAK,OAAQ;AAAC,eAAO;AAAA,MAAM;AAAA,IAC7E,CAAC;AAED,UAAM,eAAe,SAAS,MAAM;AAClC,UAAIA,MAAa,QAAQ,QAAQ,MAAM;AAAE,eAAO;AAAA,MAAK,OAAQ;AAAC,eAAO;AAAA,MAAM;AAAA,IAC7E,CAAC;AAID,mBAAe,eAAe;;AAE7BA,YAAa,QAAQ,SAAS;AAE9BA,YAAa,QAAQ,QAAQ;AAAA,QAC5B,QAAQ,kBAAkB,MAAM,CAAC,EAAE;AAAA,QACnC,MAAM;AAAA,MACR;AAEC,UAAIK,QAAW,KAAK,KAAK;AACxBL,cAAa,QAAQ,UAAU;AAAA,UAC9B,QAAQK,QAAW,KAAK;AAAA,UACxB,MAAM;AAAA,QACT;AAAA,MACA;AAEC,UAAIA,QAAW,KAAK,KAAK;AACxBL,cAAa,QAAQ,WAAW;AAAA,UAC/B,QAAQK,QAAW,KAAK;AAAA,UACxB,MAAM;AAAA,QACT;AAAA,MACA;AAECL,YAAa,QAAQ,YAAYS,QAAe;AAE/C,YAAM,eAAe,aAAa,QAAQ,aAAa;AAEvD,UAAI,cAAc;AAChBT,cAAa,QAAQ,eAAe;AAAA,MACxC;AAEE,UAAIc,SAAQ,MAAMC,UAAe,OAAOf,MAAa,OAAO;AAE3D,UAAIc,QAAO;AACX,YAAI,OAAO,SAAS,YAAY;AAC9B,eAAK,SAAS,YAAY;AAAA,YACxB,gBAAgBA,OAAM;AAAA,YACtB,OAAO,kBAAkB;AAAA,YACzB,UAAU,eAAgB;AAAA;AAAA,YAC1B,KAAK;AAAA;AAAA,YACL,UAAU,aAAa;AAAA;AAAA,YACvB,OAAOL,QAAe,UAAU,IAAI,UAAS;;AAAA;AAAA,gBAC3C,UAASC,MAAA,KAAK,YAAL,gBAAAA,IAAc;AAAA,gBACvB,YAAWC,MAAA,KAAK,YAAL,gBAAAA,IAAc;AAAA,gBACzB,OAAO,KAAK,SAAS;AAAA,gBACrB,UAAU,KAAK,YAAY;AAAA,gBAC3B,iBAAeC,MAAA,KAAK,YAAL,gBAAAA,IAAc,aAAY;AAAA,cAClD;AAAA,aAAS;AAAA,YACF,eAAc,6BAAkB,UAAlB,mBAAyB,YAAzB,mBAAkC;AAAA,YAChD,YAAUT,aAAc,aAAdA,mBAAwB,aAAY;AAAA,YAC9C,eAAe,gBAAgB;AAAA,YAC/B,SAASE,QAAW,KAAK,OAAO;AAAA,UACvC,CAAM;AAAA,QACN;AAAA,MACA;AAEE,UAAIS,QAAO;AACV,cAAM,OAAO,KAAK;AAAA,UACjB,MAAM;AAAA,UACN,QAAQ;AAAA,YACP,OAAOA,OAAM;AAAA,UAClB;AAAA,QACI,CAAA;AAEDE,kBAAiB,cAAa;AAAA,MAEjC,OAAS;AACN,cAAM,iBAAiB;AAAA,MAC1B;AAAA,IACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"OrderCreate.vue.js","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreate.vue"],"sourcesContent":["<template>\n\n<section class=\"bg-white pd-thin\">\n\n\t<!-- Ask to login -->\n\t<AskToLogin class=\"mn-b-thin\" v-if=\"auth.state.access.status === false\" /> \n\n\t<!-- Empty State -->\n\t<EmptyState \n\t\tv-if=\"shopcart.state.positions < 1\" \n\t/>\t\n\t<Succes \n\t\tv-if=\"order.status === true && shopcart.state.positions.length > 0\" \n\t\t:order=\"order\" \n\t/>\n\t<!-- Уведомления о минимальной сумме заказа и времени работы -->\n\t<div v-if=\"shopcart.state.positions.length > 0\" class=\"w-100 gap-thin cols-1 mn-b-thin\">\n\t\t<div v-if=\"!isOpen\" class=\"bg-fifth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ This spot is currently closed. You can place an order, but it will be processed when the spot opens.</p>\n\t\t</div>\n\t\t<div v-if=\"cartTotalPrice < minOrderAmount\" class=\"bg-fourth-nano pd-small radius-medium t-center\">\n\t\t\t<p class=\"t-fourth\">⚠️ Minimum order amount is {{ formatPrice(minOrderAmount) }}. Your current total is {{ formatPrice(cartTotalPrice) }}.</p>\n\t\t</div>\n\t</div>\n\t<!-- Order form -->\n\t<div class=\"gap-small mn-b-thin cols-2\">\n\t\t<!-- Order Form -->\n\t\t<div\n\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\" \n\t\t\tclass=\"rows-1 gap-thin\"\n\t\t>\n\t\t\t<FormCustomerDetails\n\t\t\t\t:customer=\"orders.state.current.customer\"\n\t\t\t/>\n\t\t\t<FormPayment \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t<FormDelivery \t\n\t\t\t\tv-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n\t\t\t\t:order=\"orders.state.current\" \n\t\t\t\t:organization=\"orderOrganization[0]\" \n\t\t\t/>\n\t\t\t\n\t\t</div>\n\n\t\t<!-- Order positions -->\n\t\t<div \n\t\t\tv-if=\"shopcart.state.positions.length > 0\" \n\t\t\tclass=\"bg-white br-solid br-light br-1px pd-medium radius-medium\"\n\t\t>\n\t\t\t<h4 class=\"font-second mn-b-thin\">Your Order</h4>\n\n\t\t\t<ul class=\"flex gap-thin flex-wrap mn-b-thin\">\n\t\t\t\t<CardOrderItem \n\t\t\t\t\tv-for=\"product in shopcart.state.positions\" \n\t\t\t\t\t:key=\"product._id\" \n\t\t\t\t\t:editable=\"true\" \n\t\t\t\t\t:product=\"product\" \n\t :increase=\"product => shopcart.actions.incrementItemQuantity(product._id)\"\n\t :decrease=\"product => shopcart.actions.decrementItemQuantity(product._id)\"\n\t :remove=\"product => shopcart.actions.removeProduct(product._id)\"\n\t\t\t\t\t@updateRentDates=\"(product, dates) => shopcart.actions.updateRentDates({ productId: product._id, dates })\"\n\t class=\"w-100 bg-white \"\n\t />\n\t\t\t</ul>\n\n\t\t\t\t<div \n\t\t\t\tclass=\"mn-b-thin\"\n\t\t\t>\t\n\t\t\t\t<PriceTotal \n :totalPrice=\"cartTotalPrice\"\n :deliveryRate=\"deliveryCost\"\n :currency=\"returnCurrency()\"\n :showFees=\"globals.state.options?.orders.showFees\"\n :feesRate=\"globals.state.options?.orders.feesRate || 0\"\n :showVat=\"globals.state.options?.orders.showVat\"\n :vatRate=\"globals.state.options?.orders.vatRate || 0\"\n :showDeliveryFee=\"globals.state.options?.orders.showDeliveryFee\"\n />\n\t\t\t</div>\n\t\t\t<!-- Send order -->\n\t\t <Button\n v-if=\"orders.state.current.status !== true && shopcart.state.positions.length > 0\"\n :submit=\"() => handleCreate()\"\n class=\"bg-main mn-b-small pd-small radius-big w-100 button\"\n :disabled=\"\n\t\t errorName \n\t\t || errorPhoneOrMessenger \n\t\t || errorCity \n\t\t || errorAddress \n\t\t || errorDelivery \n\t\t || errorPayment\n\t\t || isLocationLoading\n\t\t || cartTotalPrice < minOrderAmount\n\t\t \"\n >\n <span>Place an Order</span>\n </Button>\n\n\t\t <p class='mn-b-thin'>\n\t\t\t\tI agree that placing the order places me under an obligation to make a payment in accordance with <a class=\"t-semi font-second t-second\" href=\"/legal/terms-of-use\" target=\"_blank\">Terms of Use.</a>\n\t\t\t</p>\n\t\t\t<p >\n\t\t\t\t\n\t\t\t</p>\n\t\t</div>\n\n\t</div>\n\n\t\n\t\n</section>\n\n</template>\n\n\n<script setup>\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import components\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Block\nimport CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n// Sections\nimport AskToLogin from '@martyrs/src/modules/orders/components/sections/AskToLogin.vue'\nimport Succes from '@martyrs/src/modules/orders/components/sections/Succes.vue'\nimport EmptyState from '@martyrs/src/modules/orders/components/sections/EmptyState.vue'\n\nimport PriceTotal from '@martyrs/src/modules/orders/components/elements/PriceTotal.vue';\n\nimport FormCustomerDetails from '@martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue'\nimport FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\nimport FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Import libs\n///////////////////////////////////////////////////////////////////////////////////////////////////\nimport { ref, computed, onMounted, watch } from 'vue'\nimport { useRoute,useRouter } from 'vue-router'\nimport { useGlobalMixins } from \"@martyrs/src/modules/globals/views/mixins/mixins.js\"\n\n// 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 shopcart from '@martyrs/src/modules/orders/store/shopcart.js';\nimport * as organizations from '@martyrs/src/modules/organizations/store/organizations.js';\nimport * as orders from '@martyrs/src/modules/orders/store/orders.js';\nimport * as users from '@martyrs/src/modules/auth/views/store/users.js';\n\nconst emits = defineEmits(['page-loading', 'page-loaded']);\n\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// Variables and computed\n//////////////////////////////////////////////////////////////////////////////////////////////////\nconst isLocationLoading = ref(false)\n// Accessing router and store\nconst route = useRoute()\nconst router = useRouter()\nconst { returnCurrency, formatPrice } = useGlobalMixins()\n// COMPUTED\nconst order = computed(() => orders.state.current)\nconst user = computed(() => users.state.current)\n\nconst cartTotalPrice = shopcart.getters.cartTotalPrice\n\nconst deliveryCost = computed(() => {\n const type = orders.state.current.delivery.type\n const distance = orderOrganization.value[0]?.distance || 0\n const config = globals.state.options?.orders?.delivery_formula || {}\n\n return orders.getters.getDeliveryPrice(type, distance, config)\n})\n\n// Organization\nconst orderOrganization = ref({})\nconst spotOrganization = ref({})\nconst isOpen = ref(true)\n\n// Новые переменные для проверки минимальной суммы заказа и времени работы\nconst minOrderAmount = ref(0)\n\nfunction checkIsOpenNow(worktime) {\n try {\n console.log('[checkIsOpenNow] worktime:', worktime);\n\n if (\n !worktime ||\n typeof worktime !== 'object' ||\n Array.isArray(worktime) ||\n !worktime.regular\n ) {\n console.log('[checkIsOpenNow] invalid, returning true');\n return true;\n }\n\n const now = new Date();\n const currentDay = now.getDay();\n const currentTime = `${String(now.getHours()).padStart(2, '0')}:${String(now.getMinutes()).padStart(2, '0')}`;\n const today = new Date(now.getFullYear(), now.getMonth(), now.getDate());\n\n console.log('[checkIsOpenNow] currentDay:', currentDay);\n console.log('[checkIsOpenNow] currentTime:', currentTime);\n\n const specialDay = worktime.special?.find(s => {\n const d = new Date(s.date);\n return (\n d.getFullYear() === today.getFullYear() &&\n d.getMonth() === today.getMonth() &&\n d.getDate() === today.getDate()\n );\n });\n\n if (specialDay) {\n console.log('[checkIsOpenNow] specialDay:', specialDay);\n if (!specialDay.isOpen) return false;\n return specialDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n }\n\n const regularDay = worktime.regular.find(d => d.dayOfWeek === currentDay);\n if (!regularDay || !regularDay.isOpen) return false;\n\n return regularDay.periods?.some(p => p.open <= currentTime && p.close > currentTime);\n } catch (err) {\n console.error('[checkIsOpenNow] error:', err);\n return true;\n }\n}\n\n\nif (!globals.state.options.orders.allowUnauthenticatedOrders && !auth.state.user._id) { \n\trouter.push({name: 'Sign In'})\t\n}\n\n\norders.mutations.resetOrder()\n\nonMounted(async()=> {\n\temits('page-loading');\n\n\tisLocationLoading.value = true\n\n\tif (auth.state.user._id) {\n\t\tlet data = await users.actions.read({ _id:auth.state.user._id, user: auth.state.user._id });\n\n\t\torders.state.current.customer.profile.name = users.state.current.profile.name\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t\torders.state.current.customer.phone = users.state.current.phone\n\t}\n\t\n\torderOrganization.value = await organizations.actions.read({\n\t _id: shopcart.state.organization,\n\t location: globals.state.position?.location,\n\t lookup: ['spots']\n\t})\n\t\n\t// Получаем информацию о минимальной сумме заказа и времени работы из spot\n\tif (orderOrganization.value && orderOrganization.value[0]?.spots?.length > 0) {\n\t spotOrganization.value = orderOrganization.value[0].spots[0];\n\t\tisOpen.value = checkIsOpenNow(spotOrganization.value.worktime);\n\t console.log(spotOrganization.value)\n\t minOrderAmount.value = spotOrganization.value.minorder || 0;\n\t}\n\n\n\t\n \tisLocationLoading.value = false\n emits('page-loaded');\n\n if (typeof gtag === 'function') {\n gtag('event', 'begin_checkout', {\n currency: returnCurrency(), // Замените на вашу валюту\n value: cartTotalPrice || 0,\n items: shopcart.state.positions.map(item => ({\n item_id: item.product?._id,\n item_name: item.product?.name,\n price: item.price || 0,\n quantity: item.quantity || 1,\n item_category: item.product?.category || '',\n item_brand: orderOrganization.value.profile?.name || ''\n })),\n organization: orderOrganization.value.profile?.name || '',\n location: globals.state.position?.location || 'unknown'\n });\n }\n})\n\n\nwatch(\n () => orders.state.current.delivery,\n async (newVal) => {\n if (newVal?.location) {\n \tisLocationLoading.value = true\n\n orderOrganization.value = await organizations.actions.read({\n _id: shopcart.state.organization,\n location: newVal.location,\n lookup: ['spots']\n })\n \n isLocationLoading.value = false\n }\n },\n { deep: true }\n)\n\n\n/////////////////////////////\n// Store Verification\n/////////////////////////////\nconst errorName = computed(() => {\n if (orders.state.current.customer.name?.length < 2) { return true } else { return false }\n});\n\nconst errorPhoneOrMessenger = computed(() => {\n const hasMessengerType = orders.state.current.customer.messenger?.type;\n const hasMessengerValue = orders.state.current.customer.messenger?.value?.length >\t 2;\n const hasPhone = orders.state.current.customer.number?.length > 0;\n // Ошибка, если нет ни номера телефона, ни корректного типа и значения мессенджера\n return !hasPhone && !(hasMessengerType && hasMessengerValue);\n});\n\nconst errorAddress = computed(() => {\n const type = orders.state.current.delivery.type;\n if (type === \"pickup\") {\n return !orders.state.current.delivery.spot;\n } else if (type === \"courier\" || type === \"mail\") {\n const address = orders.state.current.delivery.address;\n return !address || typeof address !== 'string' || address.length < 2;\n }\n return false;\n});\n\nconst errorDelivery = computed(() => {\n if (orders.state.current.delivery.type) {return false } else {return true } \n})\n\nconst errorPayment = computed(() => {\n if (orders.state.current.payment.type) { return false } else {return true } \n})\n/////////////////////////////\n// Methods\n/////////////////////////////\nasync function handleCreate() {\n\n\torders.state.current.status = 'created';\n\n\torders.state.current.owner = {\n\t\ttarget: orderOrganization.value[0]._id,\n\t\ttype: 'organization'\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.creator = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\tif (auth.state.user._id) {\n\t\torders.state.current.customer = {\n\t\t\ttarget: auth.state.user._id,\n\t\t\ttype: 'user'\n\t\t}\n\t}\n\n\torders.state.current.positions = shopcart.state.positions\n\n \tconst referralCode = localStorage.getItem('referalCode');\n \n if (referralCode) {\n orders.state.current.referralCode = referralCode;\n }\n\n let order = await orders.actions.create(orders.state.current);\n\n if (order) {\n\t if (typeof gtag === 'function') {\n\t gtag('event', 'purchase', {\n\t transaction_id: order._id,\n\t value: cartTotalPrice || 0,\n\t currency: returnCurrency(), // Замените на вашу валюту\n\t tax: 0, // Если есть данные о налоге\n\t shipping: deliveryCost.value, // Если есть данные о доставке\n\t items: shopcart.state.positions.map(item => ({\n\t item_id: item.product?._id,\n\t item_name: item.product?.name ,\n\t price: item.price || 0,\n\t quantity: item.quantity || 1,\n\t item_category: item.product?.category || ''\n\t })),\n\t organization: orderOrganization.value?.profile?.name,\n\t location: globals.state.position?.location || 'unknown',\n\t referral_code: referralCode || null,\n\t user_id: auth.state.user._id || 'anonymous'\n\t });\n\t }\n\t}\n\n if (order) {\n \tawait router.push({\n \t\tname: 'Order',\n \t\tparams: {\n \t\t\torder: order._id\n \t\t}\n \t})\n \t\t\n \tshopcart.actions.resetShopcart()\n\n } else {\n \talert('something wrong')\n }\n}\n</script>\n\n<style lang=\"scss\">\n\n.round-wrapper {\n\tposition: relative;\n\n\t.round {\n\t\tmargin: 0;\n\t\tmargin-right: 1rem;\n\t}\n\n\tinput:checked {\n\t\tbackground: #00ff88;\n\t}\n\n\t.round-checkmark {\n\t\tposition: absolute;\n\t\twidth: 0.5rem;\n\t\theight: 0.5rem;\n\t\tbackground: white;\n\n\t\tleft: 0.5rem;\n\t\ttop: 0.5rem;\n\n\t\topacity: 1;\n\t}\n}\n</style>"],"names":["orders.state","users.state","shopcart.getters","globals.state","orders.getters","auth.state","orders.mutations","users.actions","organizations.actions","shopcart.state","_a","_b","_c","_d","order","orders.actions","shopcart.actions"],"mappings":"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"}
@@ -8,13 +8,11 @@ const Popup = require("../../../../components/Popup/Popup.vue2.cjs");
8
8
  const Block = require("../../../../components/Block/Block.vue.cjs");
9
9
  const Feed = require("../../../../components/Feed/Feed.vue.cjs");
10
10
  const CardOrderItem = require("../blocks/CardOrderItem.vue.cjs");
11
- ;/* empty css */
12
- ;/* empty css */
11
+ const globals = require("../../../globals/views/store/globals.cjs");
13
12
  const CardUser = require("../../../auth/views/components/blocks/CardUser.vue.cjs");
14
13
  const FormAddCustomer = require("../sections/FormAddCustomer.vue.cjs");
15
14
  const FormDelivery = require("../sections/FormDelivery.vue.cjs");
16
15
  const FormPayment = require("../sections/FormPayment.vue.cjs");
17
- const globals = require("../../../globals/views/store/globals.cjs");
18
16
  const auth = require("../../../auth/views/store/auth.cjs");
19
17
  const orders = require("../../store/orders.cjs");
20
18
  const organizations = require("../../../organizations/store/organizations.cjs");
@@ -1 +1 @@
1
- {"version":3,"file":"OrderCreateBackoffice.vue.cjs","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreateBackoffice.vue"],"sourcesContent":["<template>\n <div class=\"h-100 flex flex-column pd-thin\">\n <Block class=\"mn-b-thin\">\n <header class=\"flex-v-center flex-nowrap flex\">\n <h2 class=\"mn-r-auto\">Create Order</h2>\n <Button \n :submit=\"onSubmit\"\n :callback=\"redirectTo\"\n class=\"pd-small radius-big bg-main t-black uppercase t-medium\"\n >\n Add Order \n </Button>\n </header>\n </Block>\n\n <Tab \n v-model:selected=\"tabOrderCreate\"\n :tabs=\"[\n {name: 'Positions', value: 'positions'},\n {name: 'Customer', value: 'customer'},\n {name: 'Delivery', value: 'delivery'},\n {name: 'Payment', value: 'payment'}\n ]\"\n class=\"t-medium radius-medium bg-light mn-b-small\"\n />\n\n <Popup \n @close-popup=\"closeProductsPopup\" \n :isPopupOpen=\"isOpenProductsPopup\"\n class=\"bg-white flex flex-column radius-big pd-medium pos-relative\"\n >\n\n <h3 class=\"mn-b-small\">Add to order</h3>\n\n <div class=\"bg-light h-max-100 mn-b-thin o-scroll pd-medium radius-big\">\n <Feed\n :showLoadMore=\"false\"\n :search=\"{\n placeholder: 'Search products...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n },\n skeleton: {\n hide: true\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"\"\n >\n <CardOrderItem\n v-for=\"(product, index) in items\" :key=\"product._id\"\n :editable=\"false\" \n :product=\"product\" \n @click=\"() => { \n let p = { ...product };\n p.quantity = 1;\n globals.actions.add(orders.state.current.positions, p) \n closeProductsPopup();\n }\"\n class=\"bg-white pd-thin radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n </div>\n </Popup>\n\n <Block\n v-if=\"tabOrderCreate === 'positions'\"\n title=\"Positions\"\n :actions=\"[{\n label: '+',\n function: () => openProductsPopup()\n }]\"\n class=\"mn-b-small\"\n >\n <span \n v-if=\"orders.state.current.positions.length === 0\" \n class=\"w-100\"\n >\n No positions added yet\n </span> \n\n <CardOrderItem\n v-for=\"(product, index) in orders.state.current.positions\" \n :key=\"product._id\"\n :editable=\"true\" \n :product=\"product\" \n @increase=\"() => { globals.actions.increment(orders.state.current.positions, product) }\"\n @decrease=\"() => { globals.actions.decrement(orders.state.current.positions, product) }\"\n @remove=\"() => { globals.actions.delete(orders.state.current.positions, product) }\"э\n @updateRentDates=\"(product, dates) => orders.mutations.updateRentDates({ positions: orders.state.current.positions, productId: product._id, dates })\"\n class=\"mn-b-thin pd-thin radius-medium bg-white\"\n /> \n </Block>\n\n <Block\n v-if=\"tabOrderCreate === 'customer'\"\n title=\"Customer\"\n class=\"mn-b-semi\"\n :actions=\"[{\n label: '+',\n function: () => openCustomerPopup()\n }]\"\n >\n <CardUser\n v-if=\"orders.state.current.customer._id\"\n :user=\"orders.state.current.customer\"\n :photo=\"orders.state.current.customer.profile.photo\"\n :name=\"orders.state.current.customer.profile.name || orders.state.current.customer.phone || orders.state.current.customer.email\"\n @click=\"() => { \n orders.mutations.resetCustomer(orders.state.current.customer)\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n <Feed\n v-else\n :search=\"{\n placeholder: 'Search customer...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n }\n }\"\n :store=\"{\n read: (options) => customers.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user\"\n :photo=\"user.profile.photo\"\n :name=\"user.profile.name || user.phone || user.email\"\n @click=\"() => { \n orders.state.current.customer = user\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n \n </Block>\n\n <FormDelivery \n v-if=\"tabOrderCreate === 'delivery'\" \n :order=\"orders.state.current\"\n :organization=\"orderOrganization[0]\" \n />\n\n <FormPayment \n v-if=\"tabOrderCreate === 'payment'\"\n :order=\"orders.state.current\" \n :organization=\"orderOrganization[0]\" \n />\n\n <Popup \n title=\"Add customer\" \n @close-popup=\"closeCustomerPopup\" \n :isPopupOpen=\"isOpenCustomerPopup\"\n :class=\"'bg-white w-min-30r w-max-30r radius-big pd-medium'\"\n >\n <FormAddCustomer \n @callbackCustomer=\"closeCustomerPopup\"\n />\n </Popup>\n\n <Block\n class=\"mn-b-semi\"\n >\n <div class=\"h3 flex\">\n <span class=\"mn-r-auto t-transp\">In total</span>\n <span>{{ cartTotalPrice }} {{returnCurrency()}} </span >\n </div>\n </Block>\n</div>\n\n\n</template>\n\n<script setup=\"props\">\n import { computed, ref, defineProps, onMounted, reactive, toRefs, watch } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n\n import Field from '@martyrs/src/components/Field/Field.vue'\n import Button from \"@martyrs/src/components/Button/Button.vue\"; \n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Block from '@martyrs/src/components/Block/Block.vue';\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n import CardPosition from '@martyrs/src/modules/products/components/blocks/CardPosition.vue';\n import CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue'\n\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n\n import FormAddCustomer from '@martyrs/src/modules/orders/components/sections/FormAddCustomer.vue'\n import FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\n import FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n\n // Import your store\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as orders from '@martyrs/src/modules/orders/store/orders';\n import * as organizations from '@martyrs/src/modules/organizations/store/organizations';\n import * as products from '@martyrs/src/modules/products/store/products';\n\n import customers from '@martyrs/src/modules/orders/store/customers.store';\n\t\n // Accessing router\n const route = useRoute()\n const router = useRouter()\n\n orders.mutations.resetOrder(orders.state.current)\n\n let cartTotalPrice = computed(() => {\n return Number(orders.state.current.positions.reduce((total, product) => {\n return total + product.price * product.quantity;\n }, 0));\n })\n\n // Tab\n const tabOrderCreate = ref('positions')\n\n // Popup\n const isOpenProductsPopup = ref(false);\n\n function openProductsPopup() {\n isOpenProductsPopup.value = true;\n }\n\n function closeProductsPopup() {\n isOpenProductsPopup.value = false;\n }\n\n const isOpenCustomerPopup = ref(false);\n\n function openCustomerPopup() {\n isOpenCustomerPopup.value = true;\n }\n\n function closeCustomerPopup() {\n isOpenCustomerPopup.value = false;\n }\n\n // Data\n let order = ref(null)\n\n async function onSubmit() {\n\n orders.state.current.creator = {\n type: 'User',\n target: auth.state.user._id\n }\n\n orders.state.current.owner = {\n type: 'Organization',\n target: route.params._id,\n }\n\n orders.state.current.customer = {\n type: 'Customer',\n target: orders.state.current.customer._id || null,\n }\n\n order.value = await orders.actions.create(orders.state.current)\n }\n\n function redirectTo () {\n router.push({\n name: route.meta.context === 'backoffice' ? 'BackofficeOrderEdit' : 'OrganizationOrderEdit',\n params: { \n order: order.value._id,\n _id: route.params._id\n } \n })\n }\n\n const orderOrganization = ref({})\n\n\n\n onMounted(async() => {\n\n orderOrganization.value = await organizations.actions.read({\n _id: route.params._id,\n lookup: ['spots']\n })\n\n // await orders.actions.fetchOrder(route.params.id) // Implement this action in your store\n\n // order.value = orders.state.current\n })\n\n</script>\n\n\n<style lang=\"scss\">\n\n.vue-select {\n width: inherit;\n\n margin-right: 1rem;\n}\n.vue-select-header {\n height: 3rem;\n}\n</style>\n"],"names":["useRoute","useRouter","orders.mutations","orders.state","computed","ref","auth.state","orders.actions","onMounted","organizations.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOE,UAAM,QAAQA,UAAQ,SAAA;AACtB,UAAM,SAASC,UAAS,UAAA;AAEvBC,qBAAiB,WAAWC,OAAAA,MAAa,OAAO;AAEjD,QAAI,iBAAiBC,IAAAA,SAAS,MAAM;AAClC,aAAO,OAAOD,OAAAA,MAAa,QAAQ,UAAU,OAAO,CAAC,OAAO,YAAY;AACtE,eAAO,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,MACxC,GAAE,CAAC,CAAC;AAAA,IACN,CAAA;AAGD,UAAM,iBAAiBE,IAAAA,IAAI,WAAW;AAGtC,UAAM,sBAAsBA,IAAG,IAAC,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,UAAM,sBAAsBA,IAAG,IAAC,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAGE,QAAI,QAAQA,IAAAA,IAAI,IAAI;AAEpB,mBAAe,WAAW;AAExBF,aAAY,MAAC,QAAQ,UAAU;AAAA,QAC7B,MAAM;AAAA,QACN,QAAQG,KAAU,MAAC,KAAK;AAAA,MAC9B;AAEIH,aAAY,MAAC,QAAQ,QAAQ;AAAA,QAC3B,MAAM;AAAA,QACN,QAAQ,MAAM,OAAO;AAAA,MAC3B;AAEIA,aAAY,MAAC,QAAQ,WAAW;AAAA,QAC9B,MAAM;AAAA,QACN,QAAQA,OAAAA,MAAa,QAAQ,SAAS,OAAO;AAAA,MACnD;AAEI,YAAM,QAAQ,MAAMI,OAAc,QAAC,OAAOJ,OAAY,MAAC,OAAO;AAAA,IAClE;AAEE,aAAS,aAAc;AACrB,aAAO,KAAK;AAAA,QACV,MAAM,MAAM,KAAK,YAAY,eAAe,wBAAwB;AAAA,QACpE,QAAQ;AAAA,UACN,OAAO,MAAM,MAAM;AAAA,UACnB,KAAK,MAAM,OAAO;AAAA,QACnB;AAAA,MACF,CAAA;AAAA,IACL;AAEE,UAAM,oBAAoBE,IAAAA,IAAI,CAAE,CAAA;AAIhCG,QAAAA,UAAU,YAAW;AAEnB,wBAAkB,QAAQ,MAAMC,cAAqB,QAAC,KAAK;AAAA,QACzD,KAAK,MAAM,OAAO;AAAA,QAClB,QAAQ,CAAC,OAAO;AAAA,MACjB,CAAA;AAAA,IAKF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"OrderCreateBackoffice.vue.cjs","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreateBackoffice.vue"],"sourcesContent":["<template>\n <div class=\"h-100 flex flex-column pd-thin\">\n <Block class=\"mn-b-thin\">\n <header class=\"flex-v-center flex-nowrap flex\">\n <h2 class=\"mn-r-auto\">Create Order</h2>\n <Button \n :submit=\"onSubmit\"\n :callback=\"redirectTo\"\n class=\"pd-small radius-big bg-main t-black uppercase t-medium\"\n >\n Add Order \n </Button>\n </header>\n </Block>\n\n <Tab \n v-model:selected=\"tabOrderCreate\"\n :tabs=\"[\n {name: 'Positions', value: 'positions'},\n {name: 'Customer', value: 'customer'},\n {name: 'Delivery', value: 'delivery'},\n {name: 'Payment', value: 'payment'}\n ]\"\n class=\"t-medium radius-medium bg-light mn-b-small\"\n />\n\n <Popup \n @close-popup=\"closeProductsPopup\" \n :isPopupOpen=\"isOpenProductsPopup\"\n class=\"bg-white flex flex-column radius-big pd-medium pos-relative\"\n >\n\n <h3 class=\"mn-b-small\">Add to order</h3>\n\n <div class=\"bg-light h-max-100 mn-b-thin o-scroll pd-medium radius-big\">\n <Feed\n :showLoadMore=\"false\"\n :search=\"{\n placeholder: 'Search products...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n },\n skeleton: {\n hide: true\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"\"\n >\n <CardOrderItem\n v-for=\"(product, index) in items\" :key=\"product._id\"\n :editable=\"false\" \n :product=\"product\" \n @click=\"() => { \n let p = { ...product };\n p.quantity = 1;\n globals.actions.add(orders.state.current.positions, p) \n closeProductsPopup();\n }\"\n class=\"bg-white pd-thin radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n </div>\n </Popup>\n\n <Block\n v-if=\"tabOrderCreate === 'positions'\"\n title=\"Positions\"\n :actions=\"[{\n label: '+',\n function: () => openProductsPopup()\n }]\"\n class=\"mn-b-small\"\n >\n <span \n v-if=\"orders.state.current.positions.length === 0\" \n class=\"w-100\"\n >\n No positions added yet\n </span> \n\n <CardOrderItem\n v-for=\"(product, index) in orders.state.current.positions\" \n :key=\"product._id\"\n :editable=\"true\" \n :product=\"product\" \n @increase=\"() => { globals.actions.increment(orders.state.current.positions, product) }\"\n @decrease=\"() => { globals.actions.decrement(orders.state.current.positions, product) }\"\n @remove=\"() => { globals.actions.delete(orders.state.current.positions, product) }\"э\n @updateRentDates=\"(product, dates) => orders.mutations.updateRentDates({ positions: orders.state.current.positions, productId: product._id, dates })\"\n class=\"mn-b-thin pd-thin radius-medium bg-white\"\n /> \n </Block>\n\n <Block\n v-if=\"tabOrderCreate === 'customer'\"\n title=\"Customer\"\n class=\"mn-b-semi\"\n :actions=\"[{\n label: '+',\n function: () => openCustomerPopup()\n }]\"\n >\n <CardUser\n v-if=\"orders.state.current.customer._id\"\n :user=\"orders.state.current.customer\"\n :photo=\"orders.state.current.customer.profile.photo\"\n :name=\"orders.state.current.customer.profile.name || orders.state.current.customer.phone || orders.state.current.customer.email\"\n @click=\"() => { \n orders.mutations.resetCustomer(orders.state.current.customer)\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n <Feed\n v-else\n :search=\"{\n placeholder: 'Search customer...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n }\n }\"\n :store=\"{\n read: (options) => customers.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user\"\n :photo=\"user.profile.photo\"\n :name=\"user.profile.name || user.phone || user.email\"\n @click=\"() => { \n orders.state.current.customer = user\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n \n </Block>\n\n <FormDelivery \n v-if=\"tabOrderCreate === 'delivery'\" \n :order=\"orders.state.current\"\n :organization=\"orderOrganization[0]\" \n />\n\n <FormPayment \n v-if=\"tabOrderCreate === 'payment'\"\n :order=\"orders.state.current\" \n :organization=\"orderOrganization[0]\" \n />\n\n <Popup \n title=\"Add customer\" \n @close-popup=\"closeCustomerPopup\" \n :isPopupOpen=\"isOpenCustomerPopup\"\n :class=\"'bg-white w-min-30r w-max-30r radius-big pd-medium'\"\n >\n <FormAddCustomer \n @callbackCustomer=\"closeCustomerPopup\"\n />\n </Popup>\n\n <Block\n class=\"mn-b-semi\"\n >\n <div class=\"h3 flex\">\n <span class=\"mn-r-auto t-transp\">In total</span>\n <span>{{ cartTotalPrice }} {{returnCurrency()}} </span >\n </div>\n </Block>\n</div>\n\n\n</template>\n\n<script setup=\"props\">\n import { computed, ref, defineProps, onMounted, reactive, toRefs, watch } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n\n import Field from '@martyrs/src/components/Field/Field.vue'\n import Button from \"@martyrs/src/components/Button/Button.vue\"; \n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Block from '@martyrs/src/components/Block/Block.vue';\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n import CardPosition from '@martyrs/src/modules/products/components/blocks/CardPosition.vue';\n import CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue'\n\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n\n import FormAddCustomer from '@martyrs/src/modules/orders/components/sections/FormAddCustomer.vue'\n import FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\n import FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n\n // Import your store\n import * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n import * as orders from '@martyrs/src/modules/orders/store/orders.js';\n import * as organizations from '@martyrs/src/modules/organizations/store/organizations.js';\n import * as products from '@martyrs/src/modules/products/store/products.js';\n\n import customers from '@martyrs/src/modules/orders/store/customers.store';\n\t\n // Accessing router\n const route = useRoute()\n const router = useRouter()\n\n orders.mutations.resetOrder(orders.state.current)\n\n let cartTotalPrice = computed(() => {\n return Number(orders.state.current.positions.reduce((total, product) => {\n return total + product.price * product.quantity;\n }, 0));\n })\n\n // Tab\n const tabOrderCreate = ref('positions')\n\n // Popup\n const isOpenProductsPopup = ref(false);\n\n function openProductsPopup() {\n isOpenProductsPopup.value = true;\n }\n\n function closeProductsPopup() {\n isOpenProductsPopup.value = false;\n }\n\n const isOpenCustomerPopup = ref(false);\n\n function openCustomerPopup() {\n isOpenCustomerPopup.value = true;\n }\n\n function closeCustomerPopup() {\n isOpenCustomerPopup.value = false;\n }\n\n // Data\n let order = ref(null)\n\n async function onSubmit() {\n\n orders.state.current.creator = {\n type: 'User',\n target: auth.state.user._id\n }\n\n orders.state.current.owner = {\n type: 'Organization',\n target: route.params._id,\n }\n\n orders.state.current.customer = {\n type: 'Customer',\n target: orders.state.current.customer._id || null,\n }\n\n order.value = await orders.actions.create(orders.state.current)\n }\n\n function redirectTo () {\n router.push({\n name: route.meta.context === 'backoffice' ? 'BackofficeOrderEdit' : 'OrganizationOrderEdit',\n params: { \n order: order.value._id,\n _id: route.params._id\n } \n })\n }\n\n const orderOrganization = ref({})\n\n\n\n onMounted(async() => {\n\n orderOrganization.value = await organizations.actions.read({\n _id: route.params._id,\n lookup: ['spots']\n })\n\n // await orders.actions.fetchOrder(route.params.id) // Implement this action in your store\n\n // order.value = orders.state.current\n })\n\n</script>\n\n\n<style lang=\"scss\">\n\n.vue-select {\n width: inherit;\n\n margin-right: 1rem;\n}\n.vue-select-header {\n height: 3rem;\n}\n</style>\n"],"names":["useRoute","useRouter","orders.mutations","orders.state","computed","ref","auth.state","orders.actions","onMounted","organizations.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOE,UAAM,QAAQA,UAAQ,SAAA;AACtB,UAAM,SAASC,UAAS,UAAA;AAEvBC,qBAAiB,WAAWC,OAAAA,MAAa,OAAO;AAEjD,QAAI,iBAAiBC,IAAAA,SAAS,MAAM;AAClC,aAAO,OAAOD,OAAAA,MAAa,QAAQ,UAAU,OAAO,CAAC,OAAO,YAAY;AACtE,eAAO,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,MACxC,GAAE,CAAC,CAAC;AAAA,IACN,CAAA;AAGD,UAAM,iBAAiBE,IAAAA,IAAI,WAAW;AAGtC,UAAM,sBAAsBA,IAAG,IAAC,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,UAAM,sBAAsBA,IAAG,IAAC,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAGE,QAAI,QAAQA,IAAAA,IAAI,IAAI;AAEpB,mBAAe,WAAW;AAExBF,aAAY,MAAC,QAAQ,UAAU;AAAA,QAC7B,MAAM;AAAA,QACN,QAAQG,KAAU,MAAC,KAAK;AAAA,MAC9B;AAEIH,aAAY,MAAC,QAAQ,QAAQ;AAAA,QAC3B,MAAM;AAAA,QACN,QAAQ,MAAM,OAAO;AAAA,MAC3B;AAEIA,aAAY,MAAC,QAAQ,WAAW;AAAA,QAC9B,MAAM;AAAA,QACN,QAAQA,OAAAA,MAAa,QAAQ,SAAS,OAAO;AAAA,MACnD;AAEI,YAAM,QAAQ,MAAMI,OAAc,QAAC,OAAOJ,OAAY,MAAC,OAAO;AAAA,IAClE;AAEE,aAAS,aAAc;AACrB,aAAO,KAAK;AAAA,QACV,MAAM,MAAM,KAAK,YAAY,eAAe,wBAAwB;AAAA,QACpE,QAAQ;AAAA,UACN,OAAO,MAAM,MAAM;AAAA,UACnB,KAAK,MAAM,OAAO;AAAA,QACnB;AAAA,MACF,CAAA;AAAA,IACL;AAEE,UAAM,oBAAoBE,IAAAA,IAAI,CAAE,CAAA;AAIhCG,QAAAA,UAAU,YAAW;AAEnB,wBAAkB,QAAQ,MAAMC,cAAqB,QAAC,KAAK;AAAA,QACzD,KAAK,MAAM,OAAO;AAAA,QAClB,QAAQ,CAAC,OAAO;AAAA,MACjB,CAAA;AAAA,IAKF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,13 +6,11 @@ import _sfc_main$4 from "../../../../components/Popup/Popup.vue2.js";
6
6
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
7
7
  import _sfc_main$5 from "../../../../components/Feed/Feed.vue.js";
8
8
  import _sfc_main$6 from "../blocks/CardOrderItem.vue.js";
9
- /* empty css */
10
- /* empty css */
9
+ import { actions as actions$2 } from "../../../globals/views/store/globals.js";
11
10
  import _sfc_main$7 from "../../../auth/views/components/blocks/CardUser.vue.js";
12
11
  import _sfc_main$a from "../sections/FormAddCustomer.vue.js";
13
12
  import _sfc_main$8 from "../sections/FormDelivery.vue.js";
14
13
  import _sfc_main$9 from "../sections/FormPayment.vue.js";
15
- import { actions as actions$2 } from "../../../globals/views/store/globals.js";
16
14
  import { state as state$1 } from "../../../auth/views/store/auth.js";
17
15
  import { mutations, state, actions as actions$3 } from "../../store/orders.js";
18
16
  import { actions } from "../../../organizations/store/organizations.js";
@@ -1 +1 @@
1
- {"version":3,"file":"OrderCreateBackoffice.vue.js","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreateBackoffice.vue"],"sourcesContent":["<template>\n <div class=\"h-100 flex flex-column pd-thin\">\n <Block class=\"mn-b-thin\">\n <header class=\"flex-v-center flex-nowrap flex\">\n <h2 class=\"mn-r-auto\">Create Order</h2>\n <Button \n :submit=\"onSubmit\"\n :callback=\"redirectTo\"\n class=\"pd-small radius-big bg-main t-black uppercase t-medium\"\n >\n Add Order \n </Button>\n </header>\n </Block>\n\n <Tab \n v-model:selected=\"tabOrderCreate\"\n :tabs=\"[\n {name: 'Positions', value: 'positions'},\n {name: 'Customer', value: 'customer'},\n {name: 'Delivery', value: 'delivery'},\n {name: 'Payment', value: 'payment'}\n ]\"\n class=\"t-medium radius-medium bg-light mn-b-small\"\n />\n\n <Popup \n @close-popup=\"closeProductsPopup\" \n :isPopupOpen=\"isOpenProductsPopup\"\n class=\"bg-white flex flex-column radius-big pd-medium pos-relative\"\n >\n\n <h3 class=\"mn-b-small\">Add to order</h3>\n\n <div class=\"bg-light h-max-100 mn-b-thin o-scroll pd-medium radius-big\">\n <Feed\n :showLoadMore=\"false\"\n :search=\"{\n placeholder: 'Search products...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n },\n skeleton: {\n hide: true\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"\"\n >\n <CardOrderItem\n v-for=\"(product, index) in items\" :key=\"product._id\"\n :editable=\"false\" \n :product=\"product\" \n @click=\"() => { \n let p = { ...product };\n p.quantity = 1;\n globals.actions.add(orders.state.current.positions, p) \n closeProductsPopup();\n }\"\n class=\"bg-white pd-thin radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n </div>\n </Popup>\n\n <Block\n v-if=\"tabOrderCreate === 'positions'\"\n title=\"Positions\"\n :actions=\"[{\n label: '+',\n function: () => openProductsPopup()\n }]\"\n class=\"mn-b-small\"\n >\n <span \n v-if=\"orders.state.current.positions.length === 0\" \n class=\"w-100\"\n >\n No positions added yet\n </span> \n\n <CardOrderItem\n v-for=\"(product, index) in orders.state.current.positions\" \n :key=\"product._id\"\n :editable=\"true\" \n :product=\"product\" \n @increase=\"() => { globals.actions.increment(orders.state.current.positions, product) }\"\n @decrease=\"() => { globals.actions.decrement(orders.state.current.positions, product) }\"\n @remove=\"() => { globals.actions.delete(orders.state.current.positions, product) }\"э\n @updateRentDates=\"(product, dates) => orders.mutations.updateRentDates({ positions: orders.state.current.positions, productId: product._id, dates })\"\n class=\"mn-b-thin pd-thin radius-medium bg-white\"\n /> \n </Block>\n\n <Block\n v-if=\"tabOrderCreate === 'customer'\"\n title=\"Customer\"\n class=\"mn-b-semi\"\n :actions=\"[{\n label: '+',\n function: () => openCustomerPopup()\n }]\"\n >\n <CardUser\n v-if=\"orders.state.current.customer._id\"\n :user=\"orders.state.current.customer\"\n :photo=\"orders.state.current.customer.profile.photo\"\n :name=\"orders.state.current.customer.profile.name || orders.state.current.customer.phone || orders.state.current.customer.email\"\n @click=\"() => { \n orders.mutations.resetCustomer(orders.state.current.customer)\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n <Feed\n v-else\n :search=\"{\n placeholder: 'Search customer...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n }\n }\"\n :store=\"{\n read: (options) => customers.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user\"\n :photo=\"user.profile.photo\"\n :name=\"user.profile.name || user.phone || user.email\"\n @click=\"() => { \n orders.state.current.customer = user\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n \n </Block>\n\n <FormDelivery \n v-if=\"tabOrderCreate === 'delivery'\" \n :order=\"orders.state.current\"\n :organization=\"orderOrganization[0]\" \n />\n\n <FormPayment \n v-if=\"tabOrderCreate === 'payment'\"\n :order=\"orders.state.current\" \n :organization=\"orderOrganization[0]\" \n />\n\n <Popup \n title=\"Add customer\" \n @close-popup=\"closeCustomerPopup\" \n :isPopupOpen=\"isOpenCustomerPopup\"\n :class=\"'bg-white w-min-30r w-max-30r radius-big pd-medium'\"\n >\n <FormAddCustomer \n @callbackCustomer=\"closeCustomerPopup\"\n />\n </Popup>\n\n <Block\n class=\"mn-b-semi\"\n >\n <div class=\"h3 flex\">\n <span class=\"mn-r-auto t-transp\">In total</span>\n <span>{{ cartTotalPrice }} {{returnCurrency()}} </span >\n </div>\n </Block>\n</div>\n\n\n</template>\n\n<script setup=\"props\">\n import { computed, ref, defineProps, onMounted, reactive, toRefs, watch } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n\n import Field from '@martyrs/src/components/Field/Field.vue'\n import Button from \"@martyrs/src/components/Button/Button.vue\"; \n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Block from '@martyrs/src/components/Block/Block.vue';\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n import CardPosition from '@martyrs/src/modules/products/components/blocks/CardPosition.vue';\n import CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue'\n\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n\n import FormAddCustomer from '@martyrs/src/modules/orders/components/sections/FormAddCustomer.vue'\n import FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\n import FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n\n // Import your store\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as orders from '@martyrs/src/modules/orders/store/orders';\n import * as organizations from '@martyrs/src/modules/organizations/store/organizations';\n import * as products from '@martyrs/src/modules/products/store/products';\n\n import customers from '@martyrs/src/modules/orders/store/customers.store';\n\t\n // Accessing router\n const route = useRoute()\n const router = useRouter()\n\n orders.mutations.resetOrder(orders.state.current)\n\n let cartTotalPrice = computed(() => {\n return Number(orders.state.current.positions.reduce((total, product) => {\n return total + product.price * product.quantity;\n }, 0));\n })\n\n // Tab\n const tabOrderCreate = ref('positions')\n\n // Popup\n const isOpenProductsPopup = ref(false);\n\n function openProductsPopup() {\n isOpenProductsPopup.value = true;\n }\n\n function closeProductsPopup() {\n isOpenProductsPopup.value = false;\n }\n\n const isOpenCustomerPopup = ref(false);\n\n function openCustomerPopup() {\n isOpenCustomerPopup.value = true;\n }\n\n function closeCustomerPopup() {\n isOpenCustomerPopup.value = false;\n }\n\n // Data\n let order = ref(null)\n\n async function onSubmit() {\n\n orders.state.current.creator = {\n type: 'User',\n target: auth.state.user._id\n }\n\n orders.state.current.owner = {\n type: 'Organization',\n target: route.params._id,\n }\n\n orders.state.current.customer = {\n type: 'Customer',\n target: orders.state.current.customer._id || null,\n }\n\n order.value = await orders.actions.create(orders.state.current)\n }\n\n function redirectTo () {\n router.push({\n name: route.meta.context === 'backoffice' ? 'BackofficeOrderEdit' : 'OrganizationOrderEdit',\n params: { \n order: order.value._id,\n _id: route.params._id\n } \n })\n }\n\n const orderOrganization = ref({})\n\n\n\n onMounted(async() => {\n\n orderOrganization.value = await organizations.actions.read({\n _id: route.params._id,\n lookup: ['spots']\n })\n\n // await orders.actions.fetchOrder(route.params.id) // Implement this action in your store\n\n // order.value = orders.state.current\n })\n\n</script>\n\n\n<style lang=\"scss\">\n\n.vue-select {\n width: inherit;\n\n margin-right: 1rem;\n}\n.vue-select-header {\n height: 3rem;\n}\n</style>\n"],"names":["orders.mutations","orders.state","auth.state","orders.actions","organizations.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOE,UAAM,QAAQ,SAAQ;AACtB,UAAM,SAAS,UAAS;AAEvBA,cAAiB,WAAWC,MAAa,OAAO;AAEjD,QAAI,iBAAiB,SAAS,MAAM;AAClC,aAAO,OAAOA,MAAa,QAAQ,UAAU,OAAO,CAAC,OAAO,YAAY;AACtE,eAAO,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,MACxC,GAAE,CAAC,CAAC;AAAA,IACN,CAAA;AAGD,UAAM,iBAAiB,IAAI,WAAW;AAGtC,UAAM,sBAAsB,IAAI,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,UAAM,sBAAsB,IAAI,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAGE,QAAI,QAAQ,IAAI,IAAI;AAEpB,mBAAe,WAAW;AAExBA,YAAa,QAAQ,UAAU;AAAA,QAC7B,MAAM;AAAA,QACN,QAAQC,QAAW,KAAK;AAAA,MAC9B;AAEID,YAAa,QAAQ,QAAQ;AAAA,QAC3B,MAAM;AAAA,QACN,QAAQ,MAAM,OAAO;AAAA,MAC3B;AAEIA,YAAa,QAAQ,WAAW;AAAA,QAC9B,MAAM;AAAA,QACN,QAAQA,MAAa,QAAQ,SAAS,OAAO;AAAA,MACnD;AAEI,YAAM,QAAQ,MAAME,UAAe,OAAOF,MAAa,OAAO;AAAA,IAClE;AAEE,aAAS,aAAc;AACrB,aAAO,KAAK;AAAA,QACV,MAAM,MAAM,KAAK,YAAY,eAAe,wBAAwB;AAAA,QACpE,QAAQ;AAAA,UACN,OAAO,MAAM,MAAM;AAAA,UACnB,KAAK,MAAM,OAAO;AAAA,QACnB;AAAA,MACF,CAAA;AAAA,IACL;AAEE,UAAM,oBAAoB,IAAI,CAAE,CAAA;AAIhC,cAAU,YAAW;AAEnB,wBAAkB,QAAQ,MAAMG,QAAsB,KAAK;AAAA,QACzD,KAAK,MAAM,OAAO;AAAA,QAClB,QAAQ,CAAC,OAAO;AAAA,MACjB,CAAA;AAAA,IAKF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"OrderCreateBackoffice.vue.js","sources":["../../../../../../../src/modules/orders/components/pages/OrderCreateBackoffice.vue"],"sourcesContent":["<template>\n <div class=\"h-100 flex flex-column pd-thin\">\n <Block class=\"mn-b-thin\">\n <header class=\"flex-v-center flex-nowrap flex\">\n <h2 class=\"mn-r-auto\">Create Order</h2>\n <Button \n :submit=\"onSubmit\"\n :callback=\"redirectTo\"\n class=\"pd-small radius-big bg-main t-black uppercase t-medium\"\n >\n Add Order \n </Button>\n </header>\n </Block>\n\n <Tab \n v-model:selected=\"tabOrderCreate\"\n :tabs=\"[\n {name: 'Positions', value: 'positions'},\n {name: 'Customer', value: 'customer'},\n {name: 'Delivery', value: 'delivery'},\n {name: 'Payment', value: 'payment'}\n ]\"\n class=\"t-medium radius-medium bg-light mn-b-small\"\n />\n\n <Popup \n @close-popup=\"closeProductsPopup\" \n :isPopupOpen=\"isOpenProductsPopup\"\n class=\"bg-white flex flex-column radius-big pd-medium pos-relative\"\n >\n\n <h3 class=\"mn-b-small\">Add to order</h3>\n\n <div class=\"bg-light h-max-100 mn-b-thin o-scroll pd-medium radius-big\">\n <Feed\n :showLoadMore=\"false\"\n :search=\"{\n placeholder: 'Search products...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n },\n skeleton: {\n hide: true\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"\"\n >\n <CardOrderItem\n v-for=\"(product, index) in items\" :key=\"product._id\"\n :editable=\"false\" \n :product=\"product\" \n @click=\"() => { \n let p = { ...product };\n p.quantity = 1;\n globals.actions.add(orders.state.current.positions, p) \n closeProductsPopup();\n }\"\n class=\"bg-white pd-thin radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n </div>\n </Popup>\n\n <Block\n v-if=\"tabOrderCreate === 'positions'\"\n title=\"Positions\"\n :actions=\"[{\n label: '+',\n function: () => openProductsPopup()\n }]\"\n class=\"mn-b-small\"\n >\n <span \n v-if=\"orders.state.current.positions.length === 0\" \n class=\"w-100\"\n >\n No positions added yet\n </span> \n\n <CardOrderItem\n v-for=\"(product, index) in orders.state.current.positions\" \n :key=\"product._id\"\n :editable=\"true\" \n :product=\"product\" \n @increase=\"() => { globals.actions.increment(orders.state.current.positions, product) }\"\n @decrease=\"() => { globals.actions.decrement(orders.state.current.positions, product) }\"\n @remove=\"() => { globals.actions.delete(orders.state.current.positions, product) }\"э\n @updateRentDates=\"(product, dates) => orders.mutations.updateRentDates({ positions: orders.state.current.positions, productId: product._id, dates })\"\n class=\"mn-b-thin pd-thin radius-medium bg-white\"\n /> \n </Block>\n\n <Block\n v-if=\"tabOrderCreate === 'customer'\"\n title=\"Customer\"\n class=\"mn-b-semi\"\n :actions=\"[{\n label: '+',\n function: () => openCustomerPopup()\n }]\"\n >\n <CardUser\n v-if=\"orders.state.current.customer._id\"\n :user=\"orders.state.current.customer\"\n :photo=\"orders.state.current.customer.profile.photo\"\n :name=\"orders.state.current.customer.profile.name || orders.state.current.customer.phone || orders.state.current.customer.email\"\n @click=\"() => { \n orders.mutations.resetCustomer(orders.state.current.customer)\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n <Feed\n v-else\n :search=\"{\n placeholder: 'Search customer...',\n class: 'bg-white mn-b-thin'\n }\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no such products available.'\n }\n }\"\n :store=\"{\n read: (options) => customers.read(options),\n state: null\n }\"\n :options=\"{\n owner: route.params._id\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"bg-light h-max-20r o-scroll\"\n >\n <CardUser\n v-for=\"(user, index) in items\" \n :key=\"user._id\"\n :user=\"user\"\n :photo=\"user.profile.photo\"\n :name=\"user.profile.name || user.phone || user.email\"\n @click=\"() => { \n orders.state.current.customer = user\n }\"\n class=\"bg-white pd-thin h-4r radius-medium w-100 mn-b-thin\"\n />\n </Feed>\n \n </Block>\n\n <FormDelivery \n v-if=\"tabOrderCreate === 'delivery'\" \n :order=\"orders.state.current\"\n :organization=\"orderOrganization[0]\" \n />\n\n <FormPayment \n v-if=\"tabOrderCreate === 'payment'\"\n :order=\"orders.state.current\" \n :organization=\"orderOrganization[0]\" \n />\n\n <Popup \n title=\"Add customer\" \n @close-popup=\"closeCustomerPopup\" \n :isPopupOpen=\"isOpenCustomerPopup\"\n :class=\"'bg-white w-min-30r w-max-30r radius-big pd-medium'\"\n >\n <FormAddCustomer \n @callbackCustomer=\"closeCustomerPopup\"\n />\n </Popup>\n\n <Block\n class=\"mn-b-semi\"\n >\n <div class=\"h3 flex\">\n <span class=\"mn-r-auto t-transp\">In total</span>\n <span>{{ cartTotalPrice }} {{returnCurrency()}} </span >\n </div>\n </Block>\n</div>\n\n\n</template>\n\n<script setup=\"props\">\n import { computed, ref, defineProps, onMounted, reactive, toRefs, watch } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n\n import Field from '@martyrs/src/components/Field/Field.vue'\n import Button from \"@martyrs/src/components/Button/Button.vue\"; \n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Block from '@martyrs/src/components/Block/Block.vue';\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import CardOrderItem from '@martyrs/src/modules/orders/components/blocks/CardOrderItem.vue'\n import CardPosition from '@martyrs/src/modules/products/components/blocks/CardPosition.vue';\n import CardUser from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue'\n\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n\n import FormAddCustomer from '@martyrs/src/modules/orders/components/sections/FormAddCustomer.vue'\n import FormDelivery from '@martyrs/src/modules/orders/components/sections/FormDelivery.vue'\n import FormPayment from '@martyrs/src/modules/orders/components/sections/FormPayment.vue'\n\n // Import your store\n import * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';\n import * as orders from '@martyrs/src/modules/orders/store/orders.js';\n import * as organizations from '@martyrs/src/modules/organizations/store/organizations.js';\n import * as products from '@martyrs/src/modules/products/store/products.js';\n\n import customers from '@martyrs/src/modules/orders/store/customers.store';\n\t\n // Accessing router\n const route = useRoute()\n const router = useRouter()\n\n orders.mutations.resetOrder(orders.state.current)\n\n let cartTotalPrice = computed(() => {\n return Number(orders.state.current.positions.reduce((total, product) => {\n return total + product.price * product.quantity;\n }, 0));\n })\n\n // Tab\n const tabOrderCreate = ref('positions')\n\n // Popup\n const isOpenProductsPopup = ref(false);\n\n function openProductsPopup() {\n isOpenProductsPopup.value = true;\n }\n\n function closeProductsPopup() {\n isOpenProductsPopup.value = false;\n }\n\n const isOpenCustomerPopup = ref(false);\n\n function openCustomerPopup() {\n isOpenCustomerPopup.value = true;\n }\n\n function closeCustomerPopup() {\n isOpenCustomerPopup.value = false;\n }\n\n // Data\n let order = ref(null)\n\n async function onSubmit() {\n\n orders.state.current.creator = {\n type: 'User',\n target: auth.state.user._id\n }\n\n orders.state.current.owner = {\n type: 'Organization',\n target: route.params._id,\n }\n\n orders.state.current.customer = {\n type: 'Customer',\n target: orders.state.current.customer._id || null,\n }\n\n order.value = await orders.actions.create(orders.state.current)\n }\n\n function redirectTo () {\n router.push({\n name: route.meta.context === 'backoffice' ? 'BackofficeOrderEdit' : 'OrganizationOrderEdit',\n params: { \n order: order.value._id,\n _id: route.params._id\n } \n })\n }\n\n const orderOrganization = ref({})\n\n\n\n onMounted(async() => {\n\n orderOrganization.value = await organizations.actions.read({\n _id: route.params._id,\n lookup: ['spots']\n })\n\n // await orders.actions.fetchOrder(route.params.id) // Implement this action in your store\n\n // order.value = orders.state.current\n })\n\n</script>\n\n\n<style lang=\"scss\">\n\n.vue-select {\n width: inherit;\n\n margin-right: 1rem;\n}\n.vue-select-header {\n height: 3rem;\n}\n</style>\n"],"names":["orders.mutations","orders.state","auth.state","orders.actions","organizations.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyOE,UAAM,QAAQ,SAAQ;AACtB,UAAM,SAAS,UAAS;AAEvBA,cAAiB,WAAWC,MAAa,OAAO;AAEjD,QAAI,iBAAiB,SAAS,MAAM;AAClC,aAAO,OAAOA,MAAa,QAAQ,UAAU,OAAO,CAAC,OAAO,YAAY;AACtE,eAAO,QAAQ,QAAQ,QAAQ,QAAQ;AAAA,MACxC,GAAE,CAAC,CAAC;AAAA,IACN,CAAA;AAGD,UAAM,iBAAiB,IAAI,WAAW;AAGtC,UAAM,sBAAsB,IAAI,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,UAAM,sBAAsB,IAAI,KAAK;AAErC,aAAS,oBAAoB;AAC3B,0BAAoB,QAAQ;AAAA,IAChC;AAEE,aAAS,qBAAqB;AAC5B,0BAAoB,QAAQ;AAAA,IAChC;AAGE,QAAI,QAAQ,IAAI,IAAI;AAEpB,mBAAe,WAAW;AAExBA,YAAa,QAAQ,UAAU;AAAA,QAC7B,MAAM;AAAA,QACN,QAAQC,QAAW,KAAK;AAAA,MAC9B;AAEID,YAAa,QAAQ,QAAQ;AAAA,QAC3B,MAAM;AAAA,QACN,QAAQ,MAAM,OAAO;AAAA,MAC3B;AAEIA,YAAa,QAAQ,WAAW;AAAA,QAC9B,MAAM;AAAA,QACN,QAAQA,MAAa,QAAQ,SAAS,OAAO;AAAA,MACnD;AAEI,YAAM,QAAQ,MAAME,UAAe,OAAOF,MAAa,OAAO;AAAA,IAClE;AAEE,aAAS,aAAc;AACrB,aAAO,KAAK;AAAA,QACV,MAAM,MAAM,KAAK,YAAY,eAAe,wBAAwB;AAAA,QACpE,QAAQ;AAAA,UACN,OAAO,MAAM,MAAM;AAAA,UACnB,KAAK,MAAM,OAAO;AAAA,QACnB;AAAA,MACF,CAAA;AAAA,IACL;AAEE,UAAM,oBAAoB,IAAI,CAAE,CAAA;AAIhC,cAAU,YAAW;AAEnB,wBAAkB,QAAQ,MAAMG,QAAsB,KAAK;AAAA,QACzD,KAAK,MAAM,OAAO;AAAA,QAClB,QAAQ,CAAC,OAAO;AAAA,MACjB,CAAA;AAAA,IAKF,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}