@ozdao/martyrs 0.2.443 → 0.2.445

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 (232) hide show
  1. package/dist/{Media-rrnJ9wqV.js → Media-Bx_un17A.js} +1 -1
  2. package/dist/{Media-UT60gfCX.mjs → Media-_5Qittnv.mjs} +1 -1
  3. package/dist/auth.server.js +1 -1
  4. package/dist/auth.server.mjs +1 -1
  5. package/dist/chats.server.js +1 -1
  6. package/dist/chats.server.mjs +1 -1
  7. package/dist/events.server.js +1 -1
  8. package/dist/events.server.mjs +1 -1
  9. package/dist/{mailing-DqDlUHrs.js → mailing-D4kWlk3_.js} +13 -9
  10. package/dist/{mailing-D0Vezzzb.mjs → mailing-DvCT5ijo.mjs} +13 -9
  11. package/dist/{main-DEA2pUXu.js → main-AHluqkEA.js} +2 -2
  12. package/dist/{main-CDEflXWy.mjs → main-DZCereaK.mjs} +102 -103
  13. package/dist/martyrs/src/components/Chips/{Chips.vue.cjs → Chips.vue2.cjs} +2 -2
  14. package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -0
  15. package/dist/martyrs/src/components/Chips/{Chips.vue.js → Chips.vue2.js} +2 -2
  16. package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -0
  17. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs → Dropdown.vue2.cjs} +2 -2
  18. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -0
  19. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.js → Dropdown.vue2.js} +2 -2
  20. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs.map → Dropdown.vue2.js.map} +1 -1
  21. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +3 -4
  22. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  23. package/dist/martyrs/src/components/Feed/Feed.vue.js +3 -4
  24. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  25. package/dist/martyrs/src/components/Menu/{Menu.vue2.cjs → Menu.vue.cjs} +2 -2
  26. package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +1 -0
  27. package/dist/martyrs/src/components/Menu/{Menu.vue2.js → Menu.vue.js} +2 -2
  28. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +1 -0
  29. package/dist/martyrs/src/components/Popup/{Popup.vue2.cjs → Popup.vue.cjs} +2 -2
  30. package/dist/martyrs/src/components/Popup/{Popup.vue2.js.map → Popup.vue.cjs.map} +1 -1
  31. package/dist/martyrs/src/components/Popup/{Popup.vue2.js → Popup.vue.js} +2 -2
  32. package/dist/martyrs/src/components/Popup/Popup.vue.js.map +1 -0
  33. package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue.cjs → SelectMulti.vue2.cjs} +2 -2
  34. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue2.cjs.map +1 -0
  35. package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue.js → SelectMulti.vue2.js} +2 -2
  36. package/dist/martyrs/src/components/SelectMulti/{SelectMulti.vue.cjs.map → SelectMulti.vue2.js.map} +1 -1
  37. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs → Tab.vue2.cjs} +2 -2
  38. package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +1 -0
  39. package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
  40. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs.map → Tab.vue2.js.map} +1 -1
  41. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +1 -1
  42. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +1 -1
  43. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  44. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  45. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  46. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  47. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
  48. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  49. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
  50. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  51. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +1 -1
  52. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
  53. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  54. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  55. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  56. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  57. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  58. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  59. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.cjs +1 -1
  60. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +1 -1
  61. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
  62. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
  63. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +1 -1
  64. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
  65. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +1 -1
  66. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  67. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +2 -2
  68. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +2 -2
  69. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  70. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  71. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
  72. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +1 -1
  73. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
  74. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
  75. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  76. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  77. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  78. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  79. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +1 -1
  80. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
  81. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
  82. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
  83. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
  84. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  85. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +1 -1
  86. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +1 -1
  87. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs +2 -5
  88. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs.map +1 -1
  89. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +3 -6
  90. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js.map +1 -1
  91. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
  92. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
  93. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
  94. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
  95. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
  96. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
  97. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +1 -1
  98. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +1 -1
  99. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +1 -1
  100. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +1 -1
  101. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +2 -2
  102. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
  103. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +2 -2
  104. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
  105. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
  106. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
  107. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
  108. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
  109. package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.cjs +1 -1
  110. package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.cjs.map +1 -1
  111. package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.js +1 -1
  112. package/dist/martyrs/src/modules/landing/components/sections/SectionJoinUs.vue.js.map +1 -1
  113. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +1 -1
  114. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +1 -1
  115. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +1 -1
  116. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
  117. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
  118. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  119. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +3 -3
  120. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +3 -3
  121. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
  122. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  123. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +1 -1
  124. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
  125. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
  127. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
  128. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
  129. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +3 -3
  130. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +3 -3
  131. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +2 -2
  132. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +2 -2
  133. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +2 -2
  134. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +2 -2
  135. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +3 -3
  136. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
  137. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  138. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  139. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +2 -2
  140. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +2 -2
  141. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  143. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  144. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  145. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
  146. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  147. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs +2 -2
  148. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs.map +1 -1
  149. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js +1 -1
  150. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js.map +1 -1
  151. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
  152. package/dist/martyrs/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
  153. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
  154. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
  155. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +8 -17
  156. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs.map +1 -1
  157. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +12 -21
  158. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  159. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
  160. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
  161. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
  162. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  163. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +2 -2
  164. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +2 -2
  165. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
  166. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +1 -1
  167. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +2 -2
  168. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +2 -2
  169. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
  170. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
  171. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +31 -24
  172. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  173. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +18 -11
  174. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  175. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  176. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  177. package/dist/martyrs/src/modules/products/store/products.cjs +28 -0
  178. package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
  179. package/dist/martyrs/src/modules/products/store/products.js +28 -0
  180. package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
  181. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.cjs +1 -1
  182. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.js +1 -1
  183. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
  184. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  185. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +2 -2
  186. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +2 -2
  187. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  188. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  189. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
  190. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
  191. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
  192. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  193. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  194. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  195. package/dist/martyrs.cjs.js +1 -1
  196. package/dist/martyrs.es.js +1 -1
  197. package/dist/notifications.server.js +1 -1
  198. package/dist/notifications.server.mjs +1 -1
  199. package/dist/orders.server.js +28 -1
  200. package/dist/orders.server.mjs +28 -1
  201. package/dist/organizations.server.js +1 -1
  202. package/dist/organizations.server.mjs +1 -1
  203. package/dist/products.server.js +21 -14
  204. package/dist/products.server.mjs +21 -14
  205. package/dist/{tickets.controller-Bbxe7kaF.mjs → tickets.controller-BIhfgjNb.mjs} +1 -1
  206. package/dist/{tickets.controller-CcxkRHlX.js → tickets.controller-zEHIAe_B.js} +1 -1
  207. package/dist/wallet.server.js +1 -1
  208. package/dist/wallet.server.mjs +1 -1
  209. package/package.json +1 -1
  210. package/src/components/Feed/Feed.vue +0 -1
  211. package/src/modules/community/components/layouts/Community.vue +1 -1
  212. package/src/modules/events/components/sections/Feed.vue +1 -4
  213. package/src/modules/globals/controllers/utils/mailing.js +19 -20
  214. package/src/modules/globals/views/components/partials/Header.vue +1 -0
  215. package/src/modules/landing/components/sections/SectionJoinUs.vue +1 -1
  216. package/src/modules/marketplace/views/components/layouts/Marketplace.vue +1 -1
  217. package/src/modules/orders/controllers/orders.controller.js +2 -2
  218. package/src/modules/products/components/blocks/CardCategory.vue +3 -1
  219. package/src/modules/products/components/pages/Categories.vue +23 -64
  220. package/src/modules/products/components/pages/CategoryEdit.vue +0 -3
  221. package/src/modules/products/components/pages/Products.vue +31 -24
  222. package/src/modules/products/controllers/categories.controller.js +26 -14
  223. package/src/modules/products/store/products.js +28 -0
  224. package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
  225. package/dist/martyrs/src/components/Chips/Chips.vue.js.map +0 -1
  226. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +0 -1
  227. package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +0 -1
  228. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
  229. package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +0 -1
  230. package/dist/martyrs/src/components/SelectMulti/SelectMulti.vue.js.map +0 -1
  231. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
  232. package/src/modules/products/controllers//320/265/321/201/321/202/321/214 /320/277/321/200/320/276/320/261/320/273/320/265/320/274/320/260 - /320/274/320/275/320/265 /320/275/320/260/320/264/320/276 /321/201/320/264/320/265/320/273/320/260/321/202/321/214 /320/264/320/276/320/261/320/260/320/262/320/273/320/265/320/275/320/270/320/265 /320/272/320/260/321/202/320/265/320/263/320/276" +0 -78
@@ -1 +1 @@
1
- {"version":3,"file":"products.js","sources":["../../../../../../src/modules/products/store/products.js"],"sourcesContent":["/////////////////////////////\n// DEPENDENCIES\n/////////////////////////////\nimport { reactive, watch, computed } from \"vue\";\n// Globals \nimport { setError } from '@martyrs/src/modules/globals/views/store/globals'\n// Setup Axios\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n/////////////////////////////\n// STATE\n/////////////////////////////\nconst state = reactive({\n all: [],\n current: {\n recommendation: false,\n category: [],\n status: 'unpublished',\n listing: 'sale',\n information: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n modifications: [],\n quantityDiscount: [],\n ingredients: [],\n description: ''\n }\n});\n\n/////////////////////////////\n// ACTIONS\n/////////////////////////////\nconst actions = {\n\n async create(product) {\n return await $axios.post(\"/api/products/create\", product).then(\n (response) => {\n set(response.data, 'current')\n return Promise.resolve(response.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async read(options = {}) {\n // query.params = options.params || {};\n \n let query = {}\n\n // Handle fetching a specific post by _id\n if (options._id) {\n query._id = options._id ;\n }\n\n // Handle fetching posts by category\n if (options.category) {\n query.category = options.category;\n }\n\n if (options.owner) {\n query.owner = options.owner;\n }\n\n if (options.count) {\n query.count = options.count\n }\n\n if (options.categories) {\n query.categories = options.categories;\n }\n\n if (options.prices) {\n query.prices = options.prices;\n }\n\n if (options.delivery) {\n query.delivery = options.delivery;\n }\n\n if (options.status) {\n query.status = options.status;\n }\n\n if (options.search) {\n query.search = options.search;\n }\n\n if (options.filters) {\n query.filters = options.filters;\n }\n\n query.sort = 'createdAt';\n \n query.skip = options.skip;\n query.limit = options.limit;\n\n try {\n const response = await $axios.get('/api/products/read', { params: query });\n \n if (options._id) {\n state.current = {...response.data[0]}; \n return Promise.resolve(response.data[0]);\n } else {\n return Promise.resolve(response.data);\n }\n return Promise.resolve(response.data);\n } catch (error) {\n setError(error)\n return Promise.reject(error);\n }\n },\n\n async update(_id, product) {\n return await $axios.post(\"/api/products/\" + _id, product).then(\n (response) => {\n return Promise.resolve(response.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async deleteProduct(_id) {\n return await $axios.delete(\"/api/products/\" + _id).then(\n (response) => {\n return Promise.resolve(response.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async submitMood(presetMood = null) {\n return $axios.post('/api/product/recommended', {mood: presetMood}).then(\n response => {\n state.current = response.data.product\n state.current.recommendation = response.data.recommendationText\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n });\n },\n \n async fetchProducts() {\n return await $axios.get(`/api/products/read`).then(\n products => {\n state.all = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPopular() {\n return await $axios.get(`/api/products/popular`).then(\n (products) => {\n state.popular = products.data;\n return Promise.resolve(products.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPublished() {\n return await $axios.get(`/api/products`).then(\n products => {\n let publishedProduct = products.data.filter(function (product, index) {\n return product.status !== \"unpublished\";\n });\n\n state.all = publishedProduct;\n state.filtered = publishedProduct.slice();\n state.filteredPrice = state.filtered;\n\n state.filteredPrice.sort(function (l, r) {\n return l[state.sort.current] > r[state.sort.current] ? (state.sort.ascending ? 1 : -1) : l[state.sort.current] < r[state.sort.current] ? (state.sort.ascending ? -1 : 1) : 0;\n });\n\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n\n async fetchProductPopular() {\n return await $axios.get(`/api/products`).then(\n (products) => {\n state.all = products.data.slice(1, 5);\n return Promise.resolve(products.data.slice(1, 5));\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n};\n\nconst mutations = {\n resetProduct(product) {\n state.current = {\n recommendation: false,\n category: [],\n status: 'unpublished',\n information: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n modifications: [],\n quantityDiscount: [],\n ingredients: [],\n description: ''\n }\n }\n}\n\nfunction set(product,property) { \n state[property] = product\n}\n\n/////////////////////////////\n// GETTERS\n/////////////////////////////\nconst getters = {\n \n};\n\n/////////////////////////////\n// UTILS\n/////////////////////////////\n\n/////////////////////////////\n// HISTORY\n/////////////////////////////\nconst history = []\nhistory.push(state) \n\n/////////////////////////////\n// WATCH\n/////////////////////////////\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n/////////////////////////////\n// Module Export\n/////////////////////////////\nexport {\n state,\n actions,\n mutations,\n getters\n}"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"products.js","sources":["../../../../../../src/modules/products/store/products.js"],"sourcesContent":["/////////////////////////////\n// DEPENDENCIES\n/////////////////////////////\nimport { reactive, watch, computed } from \"vue\";\n// Globals \nimport { setError } from '@martyrs/src/modules/globals/views/store/globals'\n// Setup Axios\nimport $axios from '@martyrs/src/modules/globals/views/utils/axios-instance.js';\n/////////////////////////////\n// STATE\n/////////////////////////////\nconst state = reactive({\n all: [],\n current: {\n recommendation: false,\n category: [],\n status: 'unpublished',\n listing: 'sale',\n information: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n modifications: [],\n quantityDiscount: [],\n ingredients: [],\n description: ''\n },\n filter: {\n active: false,\n class: 'mobile-only',\n selected: {},\n options: [{\n title: 'Price',\n value: 'price',\n options: [\n { label: 'Pickup', value: 'pickup' },\n { label: 'Courier', value: 'courier' },\n { label: 'Post', value: 'post' }\n ]\n }],\n },\n sort: {\n param: 'distance',\n order: 'asc',\n options: [{\n label: 'Distance',\n value: 'distance'\n },{\n label: 'Popularity',\n value: 'views'\n },{\n label: 'Products',\n value: 'numberOfProducts'\n }]\n }\n});\n\n/////////////////////////////\n// ACTIONS\n/////////////////////////////\nconst actions = {\n\n async create(product) {\n return await $axios.post(\"/api/products/create\", product).then(\n (response) => {\n set(response.data, 'current')\n return Promise.resolve(response.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async read(options = {}) {\n // query.params = options.params || {};\n \n let query = {}\n\n // Handle fetching a specific post by _id\n if (options._id) {\n query._id = options._id ;\n }\n\n // Handle fetching posts by category\n if (options.category) {\n query.category = options.category;\n }\n\n if (options.owner) {\n query.owner = options.owner;\n }\n\n if (options.count) {\n query.count = options.count\n }\n\n if (options.categories) {\n query.categories = options.categories;\n }\n\n if (options.prices) {\n query.prices = options.prices;\n }\n\n if (options.delivery) {\n query.delivery = options.delivery;\n }\n\n if (options.status) {\n query.status = options.status;\n }\n\n if (options.search) {\n query.search = options.search;\n }\n\n if (options.filters) {\n query.filters = options.filters;\n }\n\n query.sort = 'createdAt';\n \n query.skip = options.skip;\n query.limit = options.limit;\n\n try {\n const response = await $axios.get('/api/products/read', { params: query });\n \n if (options._id) {\n state.current = {...response.data[0]}; \n return Promise.resolve(response.data[0]);\n } else {\n return Promise.resolve(response.data);\n }\n return Promise.resolve(response.data);\n } catch (error) {\n setError(error)\n return Promise.reject(error);\n }\n },\n\n async update(_id, product) {\n return await $axios.post(\"/api/products/\" + _id, product).then(\n (response) => {\n return Promise.resolve(response.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async deleteProduct(_id) {\n return await $axios.delete(\"/api/products/\" + _id).then(\n (response) => {\n return Promise.resolve(response.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async submitMood(presetMood = null) {\n return $axios.post('/api/product/recommended', {mood: presetMood}).then(\n response => {\n state.current = response.data.product\n state.current.recommendation = response.data.recommendationText\n return Promise.resolve(response.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n });\n },\n \n async fetchProducts() {\n return await $axios.get(`/api/products/read`).then(\n products => {\n state.all = products.data;\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPopular() {\n return await $axios.get(`/api/products/popular`).then(\n (products) => {\n state.popular = products.data;\n return Promise.resolve(products.data);\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n async fetchProductsPublished() {\n return await $axios.get(`/api/products`).then(\n products => {\n let publishedProduct = products.data.filter(function (product, index) {\n return product.status !== \"unpublished\";\n });\n\n state.all = publishedProduct;\n state.filtered = publishedProduct.slice();\n state.filteredPrice = state.filtered;\n\n state.filteredPrice.sort(function (l, r) {\n return l[state.sort.current] > r[state.sort.current] ? (state.sort.ascending ? 1 : -1) : l[state.sort.current] < r[state.sort.current] ? (state.sort.ascending ? -1 : 1) : 0;\n });\n\n return Promise.resolve(products.data);\n },\n error => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n\n\n async fetchProductPopular() {\n return await $axios.get(`/api/products`).then(\n (products) => {\n state.all = products.data.slice(1, 5);\n return Promise.resolve(products.data.slice(1, 5));\n },\n (error) => {\n setError(error);\n return Promise.reject(error);\n }\n );\n },\n};\n\nconst mutations = {\n resetProduct(product) {\n state.current = {\n recommendation: false,\n category: [],\n status: 'unpublished',\n information: [],\n images: [],\n files: [],\n image3d: false,\n name: '',\n sale: 0,\n price: 0,\n price_cost: 0,\n price_currency: '$',\n localization: [],\n modifications: [],\n quantityDiscount: [],\n ingredients: [],\n description: ''\n }\n }\n}\n\nfunction set(product,property) { \n state[property] = product\n}\n\n/////////////////////////////\n// GETTERS\n/////////////////////////////\nconst getters = {\n \n};\n\n/////////////////////////////\n// UTILS\n/////////////////////////////\n\n/////////////////////////////\n// HISTORY\n/////////////////////////////\nconst history = []\nhistory.push(state) \n\n/////////////////////////////\n// WATCH\n/////////////////////////////\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n/////////////////////////////\n// Module Export\n/////////////////////////////\nexport {\n state,\n actions,\n mutations,\n getters\n}"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- const Tab = require("../../../../../components/Tab/Tab.vue.cjs");
4
+ const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
5
5
  const Select = require("../../../../../components/Select/Select.vue.cjs");
6
6
  const IconChevronRight = require("../../../../icons/navigation/IconChevronRight.vue.cjs");
7
7
  const IconChevronLeft = require("../../../../icons/navigation/IconChevronLeft.vue.cjs");
@@ -1,5 +1,5 @@
1
1
  import { useCssVars, ref, computed, watch, onMounted, nextTick, createElementBlock, openBlock, createElementVNode, createVNode, withDirectives, Fragment, renderList, toDisplayString, vModelSelect, createCommentVNode, normalizeClass, normalizeStyle } from "vue";
2
- import _sfc_main$1 from "../../../../../components/Tab/Tab.vue.js";
2
+ import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
3
3
  import Select from "../../../../../components/Select/Select.vue.js";
4
4
  import IconChevronRight from "../../../../icons/navigation/IconChevronRight.vue.js";
5
5
  import IconChevronLeft from "../../../../icons/navigation/IconChevronLeft.vue.js";
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- const Tab = require("../../../../../components/Tab/Tab.vue.cjs");
4
+ const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
5
5
  const Feed = require("../../../../../components/Feed/Feed.vue.cjs");
6
6
  ;/* empty css */
7
7
  const GanttChart = require("./GanttChart.vue.cjs");
@@ -1,5 +1,5 @@
1
1
  import { ref, createElementBlock, openBlock, createElementVNode, createVNode, unref, toDisplayString, withCtx } from "vue";
2
- import _sfc_main$1 from "../../../../../components/Tab/Tab.vue.js";
2
+ import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
3
3
  import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
4
4
  /* empty css */
5
5
  import GanttChart from "./GanttChart.vue.js";
@@ -4,8 +4,8 @@ const vue = require("vue");
4
4
  const Block = require("../../../../../components/Block/Block.vue.cjs");
5
5
  const Field = require("../../../../../components/Field/Field.vue.cjs");
6
6
  const Feed = require("../../../../../components/Feed/Feed.vue.cjs");
7
- const Popup = require("../../../../../components/Popup/Popup.vue2.cjs");
8
- ;/* empty css */
7
+ const Popup = require("../../../../../components/Popup/Popup.vue.cjs");
8
+ ;/* empty css */
9
9
  ;/* empty css */
10
10
  const CardOrderItem = require("../../../../orders/components/blocks/CardOrderItem.vue.cjs");
11
11
  const vueRouter = require("vue-router");
@@ -2,8 +2,8 @@ import { ref, computed, onMounted, createElementBlock, openBlock, createElementV
2
2
  import _sfc_main$4 from "../../../../../components/Block/Block.vue.js";
3
3
  import Field from "../../../../../components/Field/Field.vue.js";
4
4
  import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
5
- import _sfc_main$1 from "../../../../../components/Popup/Popup.vue2.js";
6
- /* empty css */
5
+ import _sfc_main$1 from "../../../../../components/Popup/Popup.vue.js";
6
+ /* empty css */
7
7
  /* empty css */
8
8
  import _sfc_main$3 from "../../../../orders/components/blocks/CardOrderItem.vue.js";
9
9
  import { useRoute, useRouter } from "vue-router";
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- const Popup = require("../../../../components/Popup/Popup.vue2.cjs");
4
+ const Popup = require("../../../../components/Popup/Popup.vue.cjs");
5
5
  const Button = require("../../../../components/Button/Button.vue.cjs");
6
6
  const Select = require("../../../../components/Select/Select.vue.cjs");
7
7
  const reports = require("../../store/reports.cjs");
@@ -1,5 +1,5 @@
1
1
  import { reactive, ref, createElementBlock, openBlock, renderSlot, createVNode, withCtx, createElementVNode, createTextVNode } from "vue";
2
- import _sfc_main$1 from "../../../../components/Popup/Popup.vue2.js";
2
+ import _sfc_main$1 from "../../../../components/Popup/Popup.vue.js";
3
3
  import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
4
4
  import Select from "../../../../components/Select/Select.vue.js";
5
5
  import { actions } from "../../store/reports.js";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const IconEdit = require("../../../icons/navigation/IconEdit.vue.cjs");
5
5
  const IconCheckmark = require("../../../icons/navigation/IconCheckmark.vue.cjs");
6
- const Chips = require("../../../../components/Chips/Chips.vue.cjs");
6
+ const Chips = require("../../../../components/Chips/Chips.vue2.cjs");
7
7
  const Map = require("../../../../components/Map/Map.vue.cjs");
8
8
  const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.cjs");
9
9
  const _hoisted_1 = { class: "pos-relative cols-2-1_3" };
@@ -1,7 +1,7 @@
1
1
  import { createElementBlock, openBlock, createVNode, createElementVNode, createBlock, createCommentVNode, toDisplayString } from "vue";
2
2
  import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
3
3
  import _sfc_main$2 from "../../../icons/navigation/IconCheckmark.vue.js";
4
- import _sfc_main$3 from "../../../../components/Chips/Chips.vue.js";
4
+ import _sfc_main$3 from "../../../../components/Chips/Chips.vue2.js";
5
5
  import Map from "../../../../components/Map/Map.vue.js";
6
6
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
7
7
  const _hoisted_1 = { class: "pos-relative cols-2-1_3" };
@@ -5,7 +5,7 @@ const vueRouter = require("vue-router");
5
5
  const vueI18n = require("vue-i18n");
6
6
  ;/* empty css */
7
7
  ;/* empty css */
8
- ;/* empty css */
8
+ ;/* empty css */
9
9
  const globals = require("../../../globals/views/store/globals.cjs");
10
10
  const categories = require("../../../products/store/categories.cjs");
11
11
  const marketplace = require("../../../marketplace/views/store/marketplace.cjs");
@@ -3,7 +3,7 @@ import { useRoute, useRouter } from "vue-router";
3
3
  import { useI18n } from "vue-i18n";
4
4
  /* empty css */
5
5
  /* empty css */
6
- /* empty css */
6
+ /* empty css */
7
7
  import { state as state$1 } from "../../../globals/views/store/globals.js";
8
8
  import { actions, state as state$2 } from "../../../products/store/categories.js";
9
9
  import { state } from "../../../marketplace/views/store/marketplace.js";
@@ -4,7 +4,7 @@ const vue = require("vue");
4
4
  const vueRouter = require("vue-router");
5
5
  const Block = require("../../../../components/Block/Block.vue.cjs");
6
6
  const UploadImage = require("../../../../components/UploadImage/UploadImage.vue.cjs");
7
- ;/* empty css */
7
+ ;/* empty css */
8
8
  const Field = require("../../../../components/Field/Field.vue.cjs");
9
9
  const Select = require("../../../../components/Select/Select.vue.cjs");
10
10
  const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
@@ -12,7 +12,7 @@ const Address = require("../../../../components/Address/Address.vue2.cjs");
12
12
  const LocationMarker = require("../../../../components/LocationMarker/LocationMarker.vue2.cjs");
13
13
  const Button = require("../../../../components/Button/Button.vue.cjs");
14
14
  require("vue-i18n");
15
- ;/* empty css */
15
+ ;/* empty css */
16
16
  const spots = require("../../store/spots.cjs");
17
17
  const _hoisted_1 = { class: "for-transition w-100 cols-1 pd-thin gap-thin" };
18
18
  const _hoisted_2 = { class: "mn-r-auto" };
@@ -2,7 +2,7 @@ import { ref, onMounted, createElementBlock, openBlock, createVNode, createEleme
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
4
4
  import _sfc_main$3 from "../../../../components/UploadImage/UploadImage.vue.js";
5
- /* empty css */
5
+ /* empty css */
6
6
  import Field from "../../../../components/Field/Field.vue.js";
7
7
  import Select from "../../../../components/Select/Select.vue.js";
8
8
  import _sfc_main$4 from "../../../../components/Checkbox/Checkbox.vue.js";
@@ -10,7 +10,7 @@ import _sfc_main$5 from "../../../../components/Address/Address.vue2.js";
10
10
  import _sfc_main$6 from "../../../../components/LocationMarker/LocationMarker.vue2.js";
11
11
  import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
12
12
  import "vue-i18n";
13
- /* empty css */
13
+ /* empty css */
14
14
  import { actions, state } from "../../store/spots.js";
15
15
  const _hoisted_1 = { class: "for-transition w-100 cols-1 pd-thin gap-thin" };
16
16
  const _hoisted_2 = { class: "mn-r-auto" };
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./main-DEA2pUXu.js");require("vue");exports.Address=e._sfc_main;exports.Breadcrumbs=e._sfc_main$17;exports.Button=e._sfc_main$1;exports.Checkbox=e._sfc_main$2;exports.Chips=e._sfc_main$18;exports.Countdown=e._sfc_main$19;exports.DatePicker=e._sfc_main$20;exports.Dropdown=e._sfc_main$3;exports.EmptyState=e._sfc_main$21;exports.Error=e._sfc_main$4;exports.Feed=e._sfc_main$22;exports.Field=e.Field;exports.FieldBig=e._sfc_main$23;exports.FieldPhone=e._sfc_main$5;exports.FieldTags=e.FieldTags;exports.Loader=e.Loader;exports.LocationMarker=e._sfc_main$6;exports.Map=e.Map;exports.Marquee=e._sfc_main$25;exports.Menu=e._sfc_main$11;exports.MenuItem=e._sfc_main$12;exports.Popup=e._sfc_main$7;exports.Radio=e._sfc_main$8;exports.Select=e.Select;exports.SelectMulti=e.SelectMulti;exports.Shader=e.Shader;exports.Slider=e.Slider;exports.Spoiler=e._sfc_main$9;exports.Status=e._sfc_main$24;exports.Tab=e._sfc_main$10;exports.Text=e._sfc_main$14;exports.Tooltip=e._sfc_main$13;exports.Upload=e.Upload;exports.UploadImage=e._sfc_main$15;exports.UploadImageMultiple=e._sfc_main$16;exports.default=e.main;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("./main-AHluqkEA.js");require("vue");exports.Address=e._sfc_main;exports.Breadcrumbs=e._sfc_main$17;exports.Button=e._sfc_main$1;exports.Checkbox=e._sfc_main$2;exports.Chips=e._sfc_main$18;exports.Countdown=e._sfc_main$19;exports.DatePicker=e._sfc_main$20;exports.Dropdown=e._sfc_main$3;exports.EmptyState=e._sfc_main$21;exports.Error=e._sfc_main$4;exports.Feed=e._sfc_main$22;exports.Field=e.Field;exports.FieldBig=e._sfc_main$23;exports.FieldPhone=e._sfc_main$5;exports.FieldTags=e.FieldTags;exports.Loader=e.Loader;exports.LocationMarker=e._sfc_main$6;exports.Map=e.Map;exports.Marquee=e._sfc_main$25;exports.Menu=e._sfc_main$11;exports.MenuItem=e._sfc_main$12;exports.Popup=e._sfc_main$7;exports.Radio=e._sfc_main$8;exports.Select=e.Select;exports.SelectMulti=e.SelectMulti;exports.Shader=e.Shader;exports.Slider=e.Slider;exports.Spoiler=e._sfc_main$9;exports.Status=e._sfc_main$24;exports.Tab=e._sfc_main$10;exports.Text=e._sfc_main$14;exports.Tooltip=e._sfc_main$13;exports.Upload=e.Upload;exports.UploadImage=e._sfc_main$15;exports.UploadImageMultiple=e._sfc_main$16;exports.default=e.main;
@@ -1,4 +1,4 @@
1
- import { a as o, t, b as d, c as r, u as l, v as i, w as p, d as u, x as n, e as m, y as M, F as S, z as c, f as F, A as g, L as h, g as b, M as k, E as x, n as B, o as C, h as T, i as U, S as f, j as w, B as D, C as E, k as I, D as L, l as P, q, p as y, U as A, r as j, s as v, m as z } from "./main-CDEflXWy.mjs";
1
+ import { a as o, t, b as d, c as r, u as l, v as i, w as p, d as u, x as n, e as m, y as M, F as S, z as c, f as F, A as g, L as h, g as b, M as k, E as x, n as B, o as C, h as T, i as U, S as f, j as w, B as D, C as E, k as I, D as L, l as P, q, p as y, U as A, r as j, s as v, m as z } from "./main-DZCereaK.mjs";
2
2
  import "vue";
3
3
  export {
4
4
  o as Address,
@@ -3,7 +3,7 @@ const _commonjsHelpers = require("./_commonjsHelpers-DHfMLFPC.js");
3
3
  const require$$0 = require("apn");
4
4
  const require$$0$1 = require("firebase-admin");
5
5
  const require$$0$2 = require("path");
6
- const mailing = require("./mailing-DqDlUHrs.js");
6
+ const mailing = require("./mailing-D4kWlk3_.js");
7
7
  require("dotenv");
8
8
  require("nodemailer");
9
9
  require("axios");
@@ -2,7 +2,7 @@ import { g as getDefaultExportFromCjs } from "./_commonjsHelpers-CUmg6egw.mjs";
2
2
  import require$$0 from "apn";
3
3
  import require$$0$1 from "firebase-admin";
4
4
  import require$$0$2 from "path";
5
- import { r as requireMailing } from "./mailing-D0Vezzzb.mjs";
5
+ import { r as requireMailing } from "./mailing-DvCT5ijo.mjs";
6
6
  import "dotenv";
7
7
  import "nodemailer";
8
8
  import "axios";
@@ -4,7 +4,7 @@ const ownership_schema = require("./ownership.schema-Ck2H9clB.js");
4
4
  const profile_schema = require("./profile.schema-h61hhB2w.js");
5
5
  const credentials_schema = require("./credentials.schema-BmOPv6FD.js");
6
6
  const queryProcessor = require("./queryProcessor-D6GuKfTV.js");
7
- const mailing = require("./mailing-DqDlUHrs.js");
7
+ const mailing = require("./mailing-D4kWlk3_.js");
8
8
  const index = require("./index-DQqZReAr.js");
9
9
  const require$$0 = require("axios");
10
10
  const globals_cache = require("./globals.cache-CwWvNGFQ.js");
@@ -241,6 +241,24 @@ function requireOrders_controller() {
241
241
  hasRequiredOrders_controller = 1;
242
242
  const queryProcessorGlobals = queryProcessor.requireQueryProcessor();
243
243
  const { sendChatMessageTelegram } = mailing.requireMailing();
244
+ function formatPositions(positions) {
245
+ return positions.map((pos) => `🔹 ${pos.name} - Price: $${pos.price}, Quantity: ${pos.quantity}`).join("\n");
246
+ }
247
+ function formatOrderMessage(order) {
248
+ return `
249
+ 🆕 New Order Received!
250
+ 👤 Customer: ${order.customer?.name} (${order.customer?.phone?.number ? order.customer?.phone?.number : "No phone"})
251
+ 💬 Messenger: ${order.customer?.messenger ? order.customer?.messenger?.type + " " + order.customer?.messenger?.value : "None"}
252
+ 🏢 Organization: ${order.organization}
253
+ 📦 Positions:
254
+ ${formatPositions(order.positions)}
255
+ 📝 Comment: ${order.comment ? order.comment : "No comment"}
256
+ 💳 Payment: ${order.payment?.type}
257
+ 🚚 Delivery: ${order.delivery?.type} to ${order.delivery?.address}
258
+ 📌 Status: ${order.status}
259
+ 🧑 Agent: ${order.referralCode}
260
+ `;
261
+ }
244
262
  async function findOrCreateCustomer(Customer, customerInfo, orderOwner, orderCreator) {
245
263
  let searchCriteria = {};
246
264
  if (customerInfo.phone) {
@@ -283,6 +301,14 @@ function requireOrders_controller() {
283
301
  }
284
302
  return customer;
285
303
  }
304
+ async function sendOrderMessage(orderData) {
305
+ try {
306
+ const formattedMessage = formatOrderMessage(orderData);
307
+ await sendChatMessageTelegram(process.env.TELEGRAM_BOT_USERS.split(","), formattedMessage);
308
+ } catch (err) {
309
+ console.error(err);
310
+ }
311
+ }
286
312
  const controllerFactory = (db2) => {
287
313
  const Order = db2.order;
288
314
  const Customer = db2.customer;
@@ -356,6 +382,7 @@ function requireOrders_controller() {
356
382
  }
357
383
  }
358
384
  await session.commitTransaction();
385
+ sendOrderMessage(orderData).catch(console.error);
359
386
  res.status(201).send(createdOrder);
360
387
  } catch (err) {
361
388
  await session.abortTransaction();
@@ -3,7 +3,7 @@ import { r as requireOwnership_schema } from "./ownership.schema-C0w02Vw1.mjs";
3
3
  import { r as requireProfile_schema } from "./profile.schema-kP_zKXNt.mjs";
4
4
  import { r as requireCredentials_schema } from "./credentials.schema-oOC8B5KL.mjs";
5
5
  import { r as requireQueryProcessor } from "./queryProcessor-CWnMIe2U.mjs";
6
- import { r as requireMailing } from "./mailing-D0Vezzzb.mjs";
6
+ import { r as requireMailing } from "./mailing-DvCT5ijo.mjs";
7
7
  import { r as requireMiddlewares } from "./index-DICZTQ-1.mjs";
8
8
  import require$$0 from "axios";
9
9
  import { r as requireGlobals_cache } from "./globals.cache-BT6q3vOf.mjs";
@@ -240,6 +240,24 @@ function requireOrders_controller() {
240
240
  hasRequiredOrders_controller = 1;
241
241
  const queryProcessorGlobals = requireQueryProcessor();
242
242
  const { sendChatMessageTelegram } = requireMailing();
243
+ function formatPositions(positions) {
244
+ return positions.map((pos) => `🔹 ${pos.name} - Price: $${pos.price}, Quantity: ${pos.quantity}`).join("\n");
245
+ }
246
+ function formatOrderMessage(order) {
247
+ return `
248
+ 🆕 New Order Received!
249
+ 👤 Customer: ${order.customer?.name} (${order.customer?.phone?.number ? order.customer?.phone?.number : "No phone"})
250
+ 💬 Messenger: ${order.customer?.messenger ? order.customer?.messenger?.type + " " + order.customer?.messenger?.value : "None"}
251
+ 🏢 Organization: ${order.organization}
252
+ 📦 Positions:
253
+ ${formatPositions(order.positions)}
254
+ 📝 Comment: ${order.comment ? order.comment : "No comment"}
255
+ 💳 Payment: ${order.payment?.type}
256
+ 🚚 Delivery: ${order.delivery?.type} to ${order.delivery?.address}
257
+ 📌 Status: ${order.status}
258
+ 🧑 Agent: ${order.referralCode}
259
+ `;
260
+ }
243
261
  async function findOrCreateCustomer(Customer, customerInfo, orderOwner, orderCreator) {
244
262
  let searchCriteria = {};
245
263
  if (customerInfo.phone) {
@@ -282,6 +300,14 @@ function requireOrders_controller() {
282
300
  }
283
301
  return customer;
284
302
  }
303
+ async function sendOrderMessage(orderData) {
304
+ try {
305
+ const formattedMessage = formatOrderMessage(orderData);
306
+ await sendChatMessageTelegram(process.env.TELEGRAM_BOT_USERS.split(","), formattedMessage);
307
+ } catch (err) {
308
+ console.error(err);
309
+ }
310
+ }
285
311
  const controllerFactory = (db2) => {
286
312
  const Order = db2.order;
287
313
  const Customer = db2.customer;
@@ -355,6 +381,7 @@ function requireOrders_controller() {
355
381
  }
356
382
  }
357
383
  await session.commitTransaction();
384
+ sendOrderMessage(orderData).catch(console.error);
358
385
  res.status(201).send(createdOrder);
359
386
  } catch (err) {
360
387
  await session.abortTransaction();
@@ -7,7 +7,7 @@ const require$$0 = require("mongoose");
7
7
  const require$$1 = require("@googlemaps/google-maps-services-js");
8
8
  const addMembersQuantity = require("./addMembersQuantity-DxWjHK1K.js");
9
9
  const require$$0$2 = require("uuidv4");
10
- const mailing = require("./mailing-DqDlUHrs.js");
10
+ const mailing = require("./mailing-D4kWlk3_.js");
11
11
  const index = require("./index-DQqZReAr.js");
12
12
  const globals_abac = require("./globals.abac-DT0VjfaZ.js");
13
13
  const engagement_schema = require("./engagement.schema-DAiXsvh1.js");
@@ -6,7 +6,7 @@ import require$$0 from "mongoose";
6
6
  import require$$1 from "@googlemaps/google-maps-services-js";
7
7
  import { r as requireAddUserStatusFields, a as requireAddMembersQuantity } from "./addMembersQuantity-DBfuUEx_.mjs";
8
8
  import require$$0$2 from "uuidv4";
9
- import { r as requireMailing } from "./mailing-D0Vezzzb.mjs";
9
+ import { r as requireMailing } from "./mailing-DvCT5ijo.mjs";
10
10
  import { r as requireMiddlewares } from "./index-DICZTQ-1.mjs";
11
11
  import { r as requireGlobals_abac } from "./globals.abac-CvmZM8XG.mjs";
12
12
  import { r as requireEngagement_schema } from "./engagement.schema-DnDD7Bn3.mjs";
@@ -789,23 +789,30 @@ function requireCategories_controller() {
789
789
  async delete(req, res) {
790
790
  try {
791
791
  const category = await Category.findOne({ url: req.body.url });
792
- if (!category) throw new Error("Category not found");
793
- const deleteSubcategories = async (categoryId) => {
794
- const cat = await Category.findById(categoryId);
795
- if (cat) {
796
- for (const childId of cat.children) {
797
- await deleteSubcategories(childId);
792
+ if (!category) {
793
+ return res.status(404).json({ message: "Category not found" });
794
+ }
795
+ const result = await Category.aggregate([
796
+ { $match: { _id: category._id } },
797
+ {
798
+ $graphLookup: {
799
+ from: "categories",
800
+ startWith: "$_id",
801
+ connectFromField: "_id",
802
+ connectToField: "parent",
803
+ as: "descendants"
798
804
  }
799
- await Category.findByIdAndDelete(categoryId);
805
+ },
806
+ {
807
+ $project: { descendants: 1 }
800
808
  }
801
- };
802
- if (category.parent) {
803
- await Category.findByIdAndUpdate(category.parent, { $pull: { children: category._id } });
804
- }
805
- await deleteSubcategories(category._id);
806
- res.status(200).json({ message: "Category deleted successfully" });
809
+ ]);
810
+ const idsToDelete = [category._id, ...(result[0]?.descendants || []).map(({ _id }) => _id)];
811
+ await Category.deleteMany({ _id: { $in: idsToDelete } });
812
+ res.status(200).json({ message: "Category and its subcategories deleted successfully" });
807
813
  } catch (err) {
808
- res.status(err.message === "Category not found" ? 404 : 500).json({ message: err.message });
814
+ console.error(err);
815
+ res.status(500).json({ message: err.message || "Internal server error" });
809
816
  }
810
817
  }
811
818
  };
@@ -788,23 +788,30 @@ function requireCategories_controller() {
788
788
  async delete(req, res) {
789
789
  try {
790
790
  const category = await Category.findOne({ url: req.body.url });
791
- if (!category) throw new Error("Category not found");
792
- const deleteSubcategories = async (categoryId) => {
793
- const cat = await Category.findById(categoryId);
794
- if (cat) {
795
- for (const childId of cat.children) {
796
- await deleteSubcategories(childId);
791
+ if (!category) {
792
+ return res.status(404).json({ message: "Category not found" });
793
+ }
794
+ const result = await Category.aggregate([
795
+ { $match: { _id: category._id } },
796
+ {
797
+ $graphLookup: {
798
+ from: "categories",
799
+ startWith: "$_id",
800
+ connectFromField: "_id",
801
+ connectToField: "parent",
802
+ as: "descendants"
797
803
  }
798
- await Category.findByIdAndDelete(categoryId);
804
+ },
805
+ {
806
+ $project: { descendants: 1 }
799
807
  }
800
- };
801
- if (category.parent) {
802
- await Category.findByIdAndUpdate(category.parent, { $pull: { children: category._id } });
803
- }
804
- await deleteSubcategories(category._id);
805
- res.status(200).json({ message: "Category deleted successfully" });
808
+ ]);
809
+ const idsToDelete = [category._id, ...(result[0]?.descendants || []).map(({ _id }) => _id)];
810
+ await Category.deleteMany({ _id: { $in: idsToDelete } });
811
+ res.status(200).json({ message: "Category and its subcategories deleted successfully" });
806
812
  } catch (err) {
807
- res.status(err.message === "Category not found" ? 404 : 500).json({ message: err.message });
813
+ console.error(err);
814
+ res.status(500).json({ message: err.message || "Internal server error" });
808
815
  }
809
816
  }
810
817
  };
@@ -2,7 +2,7 @@ import require$$0$1 from "path";
2
2
  import require$$1 from "puppeteer";
3
3
  import require$$2 from "qrcode";
4
4
  import require$$0 from "mustache";
5
- import { r as requireMailing } from "./mailing-D0Vezzzb.mjs";
5
+ import { r as requireMailing } from "./mailing-DvCT5ijo.mjs";
6
6
  var templateTicket;
7
7
  var hasRequiredTemplateTicket;
8
8
  function requireTemplateTicket() {
@@ -3,7 +3,7 @@ const require$$0$1 = require("path");
3
3
  const require$$1 = require("puppeteer");
4
4
  const require$$2 = require("qrcode");
5
5
  const require$$0 = require("mustache");
6
- const mailing = require("./mailing-DqDlUHrs.js");
6
+ const mailing = require("./mailing-D4kWlk3_.js");
7
7
  var templateTicket;
8
8
  var hasRequiredTemplateTicket;
9
9
  function requireTemplateTicket() {
@@ -5,7 +5,7 @@ require("axios");
5
5
  require("bcryptjs");
6
6
  require("crypto");
7
7
  const require$$2 = require("qrcode");
8
- const tickets_controller = require("./tickets.controller-CcxkRHlX.js");
8
+ const tickets_controller = require("./tickets.controller-zEHIAe_B.js");
9
9
  const require$$0 = require("stripe");
10
10
  const require$$0$1 = require("mongoose");
11
11
  const require$$1 = require("bignumber.js");
@@ -4,7 +4,7 @@ import "axios";
4
4
  import "bcryptjs";
5
5
  import "crypto";
6
6
  import require$$2 from "qrcode";
7
- import { r as requireTickets_controller } from "./tickets.controller-Bbxe7kaF.mjs";
7
+ import { r as requireTickets_controller } from "./tickets.controller-BIhfgjNb.mjs";
8
8
  import require$$0 from "stripe";
9
9
  import require$$0$1 from "mongoose";
10
10
  import require$$1 from "bignumber.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozdao/martyrs",
3
- "version": "0.2.443",
3
+ "version": "0.2.445",
4
4
  "description": "Fullstack framework focused on user experience and ease of development.",
5
5
  "author": "OZ DAO <hello@ozdao.dev>",
6
6
  "license": "GPL-3.0-or-later",
@@ -101,7 +101,6 @@
101
101
  tag="ul"
102
102
  v-if="!isLoading && itemsList.length < 1"
103
103
  name="feed"
104
- :class="$attrs.class"
105
104
  >
106
105
  <EmptyState
107
106
  v-if="!isLoading && itemsList.length < 1"
@@ -26,7 +26,7 @@
26
26
  </header>
27
27
 
28
28
  <div v-if="!route.params.url && route.name !=='Create BlogPost'" class="w-100 pos-relative">
29
- <ul class="align-self-start pos-sticky pos-t-0 w-100 bg-light radius-medium mobile:radius-zero mn-b-thin pd-medium p-medium gap-thin mobile:flex-column flex-row flex-nowrap flex z-index-2 o-scroll t-nowrap scroll-hide">
29
+ <ul class="align-self-start pos-sticky pos-t-0 w-100 bg-light radius-medium mobile:radius-zero mn-b-thin pd-medium p-medium gap-thin flex-row flex-nowrap flex z-index-2 o-scroll t-nowrap scroll-hide">
30
30
  <li
31
31
  :class="{'t-black bg-white': route.params.category === 'featured' }"
32
32
  @click="() => { blog.state.sort.param = 'createdAt'; router.push({name: 'Blog', params: { category: 'featured' } })}"
@@ -1,10 +1,7 @@
1
1
  <template>
2
2
  <section class="feed">
3
3
  <TransitionGroup tag="ul" name="scaleTransition" class="o-hidden bg-light radius-big">
4
- <SkeletonEvent
5
- v-if="isLoading"
6
- v-for="i in limit" :key="i"
7
- />
4
+ <Loader v-if="isLoading"/>
8
5
  </TransitionGroup>
9
6
 
10
7
  <transition