@ozdao/martyrs 0.2.429 → 0.2.431

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 (296) hide show
  1. package/dist/chats.server.js +0 -19
  2. package/dist/chats.server.mjs +0 -19
  3. package/dist/community.server.js +1 -1
  4. package/dist/community.server.mjs +1 -1
  5. package/dist/events.server.js +1 -1
  6. package/dist/events.server.mjs +1 -1
  7. package/dist/gallery.server.js +1 -1
  8. package/dist/gallery.server.mjs +1 -1
  9. package/dist/{globals.logger-Deb_8o7C.mjs → globals.cache-BT6q3vOf.mjs} +0 -33
  10. package/dist/{globals.logger-BuG0pN80.js → globals.cache-CwWvNGFQ.js} +0 -33
  11. package/dist/globals.logger-BdjooLaD.js +34 -0
  12. package/dist/globals.logger-DusiFsxN.mjs +35 -0
  13. package/dist/martyrs/src/components/Block/Block.vue.cjs +1 -1
  14. package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
  15. package/dist/martyrs/src/components/Button/{Button.vue.cjs → Button.vue2.cjs} +2 -2
  16. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +1 -0
  17. package/dist/martyrs/src/components/Button/{Button.vue.js → Button.vue2.js} +2 -2
  18. package/dist/martyrs/src/components/Button/{Button.vue.cjs.map → Button.vue2.js.map} +1 -1
  19. package/dist/martyrs/src/components/Chips/{Chips.vue.cjs → Chips.vue2.cjs} +2 -2
  20. package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +1 -0
  21. package/dist/martyrs/src/components/Chips/{Chips.vue.js → Chips.vue2.js} +2 -2
  22. package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +1 -0
  23. package/dist/martyrs/src/components/Menu/{Menu.vue2.cjs → Menu.vue.cjs} +2 -2
  24. package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +1 -0
  25. package/dist/martyrs/src/components/Menu/{Menu.vue2.js → Menu.vue.js} +2 -2
  26. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +1 -0
  27. package/dist/martyrs/src/components/Popup/{Popup.vue2.cjs → Popup.vue.cjs} +2 -2
  28. package/dist/martyrs/src/components/Popup/{Popup.vue2.js.map → Popup.vue.cjs.map} +1 -1
  29. package/dist/martyrs/src/components/Popup/{Popup.vue2.js → Popup.vue.js} +2 -2
  30. package/dist/martyrs/src/components/Popup/Popup.vue.js.map +1 -0
  31. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs → Tab.vue2.cjs} +2 -2
  32. package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +1 -0
  33. package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
  34. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs.map → Tab.vue2.js.map} +1 -1
  35. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs → Tooltip.vue2.cjs} +2 -2
  36. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -0
  37. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.js → Tooltip.vue2.js} +2 -2
  38. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue.cjs.map → Tooltip.vue2.js.map} +1 -1
  39. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +2 -2
  40. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +2 -2
  41. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +2 -2
  42. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
  43. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
  44. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
  45. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
  46. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  47. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
  48. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  49. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +2 -2
  50. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +2 -2
  51. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +2 -2
  52. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
  53. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +2 -2
  54. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +2 -2
  55. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +2 -2
  56. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
  57. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  58. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  59. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
  60. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
  61. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +3 -3
  62. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +3 -3
  63. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +2 -2
  64. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
  65. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
  66. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
  67. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  68. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  69. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  70. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  71. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  72. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  73. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
  74. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
  75. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +1 -1
  76. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
  77. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
  78. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
  79. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
  80. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  81. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
  82. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
  83. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
  84. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
  85. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
  86. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
  87. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +2 -2
  88. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +2 -2
  89. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +16 -12
  90. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  91. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +16 -12
  92. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  93. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +6 -6
  94. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
  95. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +6 -6
  96. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
  97. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +17 -9
  98. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
  99. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +17 -9
  100. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
  101. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
  102. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
  103. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs +16 -4
  104. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
  105. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js +16 -4
  106. package/dist/martyrs/src/modules/globals/views/components/partials/Sidebar.vue.js.map +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/SectionFeaturesImages.vue.cjs +101 -0
  110. package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.cjs.map +1 -0
  111. package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js +101 -0
  112. package/dist/martyrs/src/modules/landing/components/sections/SectionFeaturesImages.vue.js.map +1 -0
  113. package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs +85 -0
  114. package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.cjs.map +1 -0
  115. package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js +85 -0
  116. package/dist/martyrs/src/modules/landing/components/sections/SectionHeroToken.vue.js.map +1 -0
  117. package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs +97 -0
  118. package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.cjs.map +1 -0
  119. package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js +97 -0
  120. package/dist/martyrs/src/modules/landing/components/sections/SectionRoadmap.vue.js.map +1 -0
  121. package/dist/martyrs/src/modules/landing/landing.client.cjs +6 -0
  122. package/dist/martyrs/src/modules/landing/landing.client.cjs.map +1 -1
  123. package/dist/martyrs/src/modules/landing/landing.client.js +6 -0
  124. package/dist/martyrs/src/modules/landing/landing.client.js.map +1 -1
  125. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +4 -12
  126. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
  127. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +4 -12
  128. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  129. package/dist/martyrs/src/modules/notifications/notifications.client.cjs +135 -248
  130. package/dist/martyrs/src/modules/notifications/notifications.client.cjs.map +1 -1
  131. package/dist/martyrs/src/modules/notifications/notifications.client.js +135 -248
  132. package/dist/martyrs/src/modules/notifications/notifications.client.js.map +1 -1
  133. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs +112 -0
  134. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.cjs.map +1 -0
  135. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js +112 -0
  136. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderBackoffice.vue.js.map +1 -0
  137. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs +19 -13
  138. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.cjs.map +1 -1
  139. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +19 -13
  140. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js.map +1 -1
  141. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +3 -3
  142. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +3 -3
  143. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +2 -2
  144. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
  145. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +2 -2
  146. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  147. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +17 -9
  148. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
  149. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +26 -18
  150. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
  151. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +17 -100
  152. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs.map +1 -1
  153. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +17 -100
  154. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js.map +1 -1
  155. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs +2 -2
  156. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
  157. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js +2 -2
  158. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
  159. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
  160. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
  161. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
  162. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
  163. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  164. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  165. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +3 -3
  166. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +3 -3
  167. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +4 -4
  168. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +4 -4
  169. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +61 -58
  170. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
  171. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +65 -62
  172. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  173. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
  174. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
  175. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +3 -3
  176. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
  177. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  178. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  179. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +1 -1
  180. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +1 -1
  181. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
  182. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  183. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  184. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  185. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
  186. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  187. package/dist/martyrs/src/modules/organizations/store/organizations.cjs +0 -2
  188. package/dist/martyrs/src/modules/organizations/store/organizations.cjs.map +1 -1
  189. package/dist/martyrs/src/modules/organizations/store/organizations.js +1 -3
  190. package/dist/martyrs/src/modules/organizations/store/organizations.js.map +1 -1
  191. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  192. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  193. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +2 -2
  194. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +2 -2
  195. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +2 -2
  196. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +2 -2
  197. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
  198. package/dist/martyrs/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
  199. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  200. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  201. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
  202. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
  203. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
  204. package/dist/martyrs/src/modules/products/components/pages/EditLeftover.vue.js +1 -1
  205. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
  206. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +1 -1
  207. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +12 -10
  208. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  209. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +12 -10
  210. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  211. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +3 -3
  212. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +3 -3
  213. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +5 -4
  214. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  215. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +6 -5
  216. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  217. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
  218. package/dist/martyrs/src/modules/products/components/sections/EditProductInfo.vue.js +1 -1
  219. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +2 -2
  220. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +2 -2
  221. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.cjs +1 -1
  222. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.js +1 -1
  223. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
  224. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  225. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
  226. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
  227. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
  228. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  229. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
  230. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
  231. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
  232. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  233. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +3 -3
  234. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +3 -3
  235. package/dist/martyrs/src/modules/spots/store/spots.cjs +4 -11
  236. package/dist/martyrs/src/modules/spots/store/spots.cjs.map +1 -1
  237. package/dist/martyrs/src/modules/spots/store/spots.js +4 -11
  238. package/dist/martyrs/src/modules/spots/store/spots.js.map +1 -1
  239. package/dist/martyrs.css +1 -1
  240. package/dist/notifications.server.js +85 -1
  241. package/dist/notifications.server.mjs +85 -1
  242. package/dist/orders.server.js +4 -30
  243. package/dist/orders.server.mjs +3 -29
  244. package/dist/organizations.server.js +33 -30
  245. package/dist/organizations.server.mjs +33 -30
  246. package/dist/products.server.js +1 -1
  247. package/dist/products.server.mjs +1 -1
  248. package/dist/{queryProcessor-CCmHM0yi.mjs → queryProcessor-CWnMIe2U.mjs} +4 -1
  249. package/dist/{queryProcessor-CwQakZkT.js → queryProcessor-D6GuKfTV.js} +4 -1
  250. package/dist/rents.server.js +4 -3
  251. package/dist/rents.server.mjs +3 -2
  252. package/dist/spots.server.js +4 -16
  253. package/dist/spots.server.mjs +4 -16
  254. package/dist/style.css +136 -61
  255. package/dist/wallet.server.js +1 -1
  256. package/dist/wallet.server.mjs +1 -1
  257. package/package.json +1 -1
  258. package/src/builder/modes/ssr.dev.js +0 -20
  259. package/src/modules/chats/routes/chats.routes.js +19 -19
  260. package/src/modules/globals/controllers/utils/queryProcessor.js +2 -1
  261. package/src/modules/globals/views/components/layouts/Client.vue +25 -19
  262. package/src/modules/globals/views/components/partials/Header.vue +3 -4
  263. package/src/modules/globals/views/components/partials/Navigation.vue +17 -19
  264. package/src/modules/globals/views/components/partials/Sidebar.vue +20 -9
  265. package/src/modules/landing/components/sections/SectionHeroToken.vue +1 -1
  266. package/src/modules/landing/landing.client.js +7 -0
  267. package/src/modules/notifications/components/elements/NotificationBadge.vue +4 -13
  268. package/src/modules/notifications/notifications.client.js +166 -350
  269. package/src/modules/notifications/services/notification.service.js +4 -3
  270. package/src/modules/notifications/services/websocket.service.js +54 -56
  271. package/src/modules/orders/components/blocks/CardOrderBackoffice.vue +106 -0
  272. package/src/modules/orders/components/blocks/CardOrderUser.vue +16 -9
  273. package/src/modules/orders/components/pages/OrderCreate.vue +3 -3
  274. package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +15 -3
  275. package/src/modules/orders/components/pages/Orders.vue +10 -93
  276. package/src/modules/orders/components/partials/ShopCart.vue +2 -2
  277. package/src/modules/orders/controllers/orders.controller.js +2 -2
  278. package/src/modules/organizations/components/pages/Organization.vue +48 -47
  279. package/src/modules/organizations/controllers/organizations.controller.js +57 -47
  280. package/src/modules/organizations/store/organizations.js +6 -6
  281. package/src/modules/products/components/pages/Product.vue +10 -9
  282. package/src/modules/products/components/pages/Products.vue +4 -3
  283. package/src/modules/spots/controllers/spots.controller.js +3 -17
  284. package/src/modules/spots/routes/spots.routes.js +1 -4
  285. package/src/modules/spots/store/spots.js +4 -12
  286. package/src/styles/base/shadow_transitions_hover_refactor.scss +1 -0
  287. package/dist/martyrs/src/components/Button/Button.vue.js.map +0 -1
  288. package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +0 -1
  289. package/dist/martyrs/src/components/Chips/Chips.vue.js.map +0 -1
  290. package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +0 -1
  291. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +0 -1
  292. package/dist/martyrs/src/components/Popup/Popup.vue2.cjs.map +0 -1
  293. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
  294. package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +0 -1
  295. package/src/modules/landing/components/sections/HowToBuyWDR.vue +0 -130
  296. package/src/modules/landing/components/sections/WhatIsWDRSection.vue +0 -116
@@ -1 +1 @@
1
- {"version":3,"file":"Products.vue.cjs","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"marketplace.state.filter\"\n :options=\"marketplace.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"z-index-3 bg-white radius-tl-big radius-tr-big\">\n <div class=\"pd-thin z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"updateSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"marketplace.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(marketplace.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 rows-1 pd-t-zero pd-thin gap-thin mn-b-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as products from '@martyrs/src/modules/products/store/products';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace';\n import * as categories from '@martyrs/src/modules/products/store/categories';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n marketplace.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n marketplace.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n marketplace.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n marketplace.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = marketplace.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n marketplace.state.filter.options[index] = categoryOption;\n } else {\n marketplace.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => marketplace.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\n\n \n function updateSearch(search) {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n }\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["useRoute","useRouter","ref","marketplace.state","watch","globals.state","IconPlus","auth.state","onMounted","categories.actions","onUnmounted"],"mappings":"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"}
1
+ {"version":3,"file":"Products.vue.cjs","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"marketplace.state.filter\"\n :options=\"marketplace.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"z-index-3 bg-white radius-tl-big radius-tr-big\">\n <slot></slot>\n <div class=\" z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"updateSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light mn-b-thin h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"marketplace.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(marketplace.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 rows-1 gap-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as products from '@martyrs/src/modules/products/store/products';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace';\n import * as categories from '@martyrs/src/modules/products/store/categories';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n marketplace.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n marketplace.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n marketplace.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n marketplace.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = marketplace.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n marketplace.state.filter.options[index] = categoryOption;\n } else {\n marketplace.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => marketplace.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\n\n \n function updateSearch(search) {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n }\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["useRoute","useRouter","ref","marketplace.state","watch","globals.state","IconPlus","auth.state","onMounted","categories.actions","onUnmounted"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { ref, watch, onMounted, onUnmounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createElementVNode, unref, createVNode, withCtx, Fragment, renderList } from "vue";
1
+ import { ref, watch, onMounted, onUnmounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createBlock, createElementVNode, unref, createVNode, renderSlot, withCtx, Fragment, renderList } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
- import _sfc_main$2 from "../../../../components/Tab/Tab.vue.js";
3
+ import _sfc_main$2 from "../../../../components/Tab/Tab.vue2.js";
4
4
  import _sfc_main$5 from "../../../../components/Feed/Feed.vue.js";
5
5
  /* empty css */
6
6
  import "vue-i18n";
@@ -22,7 +22,7 @@ const _hoisted_2 = {
22
22
  const _hoisted_3 = { class: "cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin" };
23
23
  const _hoisted_4 = { class: "o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative" };
24
24
  const _hoisted_5 = { class: "z-index-3 bg-white radius-tl-big radius-tr-big" };
25
- const _hoisted_6 = { class: "pd-thin z-index-3 radius-tl-big radius-tr-big" };
25
+ const _hoisted_6 = { class: "z-index-3 radius-tl-big radius-tr-big" };
26
26
  const _sfc_main = {
27
27
  __name: "Products",
28
28
  setup(__props) {
@@ -133,11 +133,12 @@ const _sfc_main = {
133
133
  }, null, 8, ["filter", "options"])
134
134
  ]),
135
135
  createElementVNode("div", _hoisted_5, [
136
+ renderSlot(_ctx.$slots, "default"),
136
137
  createElementVNode("div", _hoisted_6, [
137
138
  createVNode(_sfc_main$4, {
138
139
  onSearch: updateSearch,
139
140
  placeholder: "Enter product name",
140
- class: "bg-light h-4r"
141
+ class: "bg-light mn-b-thin h-4r"
141
142
  })
142
143
  ]),
143
144
  createVNode(_sfc_main$5, {
@@ -165,7 +166,7 @@ const _sfc_main = {
165
166
  ...tabProducts.value !== "all" && { status: tabProducts.value }
166
167
  // user: user
167
168
  },
168
- class: "cols-4 rows-1 pd-t-zero pd-thin gap-thin mn-b-thin"
169
+ class: "cols-4 rows-1 gap-thin"
169
170
  }, {
170
171
  default: withCtx(({
171
172
  items
@@ -1 +1 @@
1
- {"version":3,"file":"Products.vue.js","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"marketplace.state.filter\"\n :options=\"marketplace.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"z-index-3 bg-white radius-tl-big radius-tr-big\">\n <div class=\"pd-thin z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"updateSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"marketplace.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(marketplace.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 rows-1 pd-t-zero pd-thin gap-thin mn-b-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as products from '@martyrs/src/modules/products/store/products';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace';\n import * as categories from '@martyrs/src/modules/products/store/categories';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n marketplace.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n marketplace.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n marketplace.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n marketplace.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = marketplace.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n marketplace.state.filter.options[index] = categoryOption;\n } else {\n marketplace.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => marketplace.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\n\n \n function updateSearch(search) {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n }\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["marketplace.state","globals.state","IconPlus","auth.state","categories.actions"],"mappings":"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"}
1
+ {"version":3,"file":"Products.vue.js","sources":["../../../../../../../src/modules/products/components/pages/Products.vue"],"sourcesContent":["<template>\n <div class=\"h-100 pos-relative\">\n <header \n v-if=\"route.name !== 'Organization' && !MOBILE_APP\"\n class=\"pd-medium flex-v-center flex-nowrap flex\"\n >\n <h2 class=\"mn-r-medium\">Products</h2>\n <button \n v-if=\"hasAccess(route.params._id, 'products', 'create', auth.state.accesses, auth.state.access.roles)\"\n @click=\"$router.push({\n name: route.params?._id ? 'Organization_ProductAdd' : 'ProductAdd'\n })\" \n class=\"radius-100 i-big hover-scale-1 cursor-pointer t-white bg-second\">\n +\n </button>\n </header>\n\n <Tab \n v-if=\"route.name !== 'Organization' && isAdmin\"\n v-model:selected=\"tabProducts\"\n :tabs=\"[\n { name: 'All', value: 'all' },\n { name: 'Published', value: 'published' },\n { name: 'Unpublished', value: 'unpublished' }, \n { name: 'Archivied', value: 'archivied' } \n ]\"\n style=\"flex: 0 0 auto\"\n class=\"\n\n p-medium\n br-t br-solid br-light \n bg-white\n gap-micro pd-medium pd-t-thin pd-b-thin\n z-index-1\n\n \"\n tabClass=\"bg-light uppercase pd-small radius-small w-100\"\n />\n\n <div class=\"cols-2-1_3 br-b br-t br-solid br-light h-100 z-index-3 pos-relative radius-big gap-thin\">\n\n <div class=\"o-y-scroll br-r br-solid br-light pd-medium z-index-2 desktop-only h-100 pos-relative\">\n <BlockFilter\n v-model:filter=\"marketplace.state.filter\"\n :options=\"marketplace.state.filter.options\"\n class=\"h-100 w-100\"\n />\n </div>\n\n <div class=\"z-index-3 bg-white radius-tl-big radius-tr-big\">\n <slot></slot>\n <div class=\" z-index-3 radius-tl-big radius-tr-big\">\n <BlockSearch \n @search=\"updateSearch\"\n placeholder=\"Enter product name\"\n class=\"bg-light mn-b-thin h-4r\"\n />\n </div>\n <Feed\n v-model:filter=\"marketplace.state.filter\"\n :showLoadMore=\"false\"\n :states=\"{\n empty: {\n title: 'No Products Found',\n description: 'Currently, there are no products available.'\n }\n }\"\n :store=\"{\n read: (options) => products.actions.read(options),\n state: products.state\n }\"\n :options=\"{\n limit: 16,\n owner: route.params._id,\n categories: route.query.categories,\n filters: generateFilters(marketplace.state.filter.selected),\n prices: route.query.prices,\n delivery: route.query.delivery,\n search: route.query.search,\n ...(tabProducts !== 'all' && { status: tabProducts })\n // user: user\n }\"\n v-slot=\"{ \n items \n }\"\n class=\"cols-4 rows-1 gap-thin\"\n \n >\n <router-link \n v-for=\"product in items\" \n :to=\"route.params._id ? { name: 'Organization_Product', params: { _id: route.params._id, product: product._id } } : { name: 'Product', params: { product: product._id } }\"\n class=\"pos-relative h-100 w-100\"\n >\n <CardProduct\n :key=\"product._id\"\n :product=\"product\"\n :user=\"auth.state.access\"\n :organization=\"route.params._id\"\n :access=\"hasAccess(route.params._id, 'products', 'edit', auth.state.accesses, auth.state.access.roles)\"\n class=\"pos-relative h-100 w-100 bg-light\"\n />\n </router-link>\n </Feed>\n\n </div>\n </div>\n</div>\n</template>\n\n\n<script setup=\"props\">\n // Import libs\n import { ref, computed, watch, onMounted, onUnmounted } from 'vue'\n import { useRoute, useRouter } from 'vue-router'\n\n // Import components\n import Tab from '@martyrs/src/components/Tab/Tab.vue'\n import Feed from '@martyrs/src/components/Feed/Feed.vue'\n\n import FilterProducts from '@martyrs/src/modules/products/components/sections/FilterProducts.vue'\n import BlockSearch from '@martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue'\n import BlockFilter from '@martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue'\n\n import CardProduct from '@martyrs/src/modules/products/components/blocks/CardProduct.vue'\n\n import IconPlus from '@martyrs/src/modules/icons/navigation/IconPlus.vue'\n\n // Accessing router and store\n import * as auth from '@martyrs/src/modules/auth/views/store/auth';\n import * as globals from '@martyrs/src/modules/globals/views/store/globals';\n import * as products from '@martyrs/src/modules/products/store/products';\n import * as marketplace from '@martyrs/src/modules/marketplace/views/store/marketplace';\n import * as categories from '@martyrs/src/modules/products/store/categories';\n\n const route = useRoute()\n const router = useRouter()\n\n // Tab logic\n const tabProducts = ref(route.query.tabProducts ? route.query.tabProducts : 'all')\n\n if (route.name !== 'Organization') route.query.tabProducts = tabProducts.value\n \n if (route.query) {\n const query = route.query;\n\n marketplace.state.filter.selected.categories = query.categories ? query.categories.split(',') : [];\n marketplace.state.filter.selected.prices = query.prices ? query.prices.split(',') : [];\n marketplace.state.filter.selected.delivery = query.delivery ? query.delivery.split(',') : [];\n marketplace.state.filter.selected.brand = query.brand ? query.brand.split(',') : [];\n }\n\n\n watch(tabProducts, (newValue) => {\n if (route.name !== 'Organization') router.replace({ query: { ...route.query, tabProducts: newValue } });\n });\n\n globals.state.navigation_bar.actions = [{\n component: IconPlus,\n props: {\n fill: \"rgb(var(--main))\" \n },\n condition: () => auth.state.user && auth.state.user._id,\n action: () => route.params._id ? router.push({ name: 'Organization_ProductAdd', params: { _id: route.params._id} }) : router.push({ name: 'ProductAdd' })\n }],\n\n onMounted(async () => {\n let categoriesFilter = await categories.actions.read({rootOnly:true});\n\n categoriesFilter = categoriesFilter.map(category => ({\n value: category._id,\n label: category.name\n }));\n\n const index = marketplace.state.filter.options.findIndex(option => option.value === 'categories');\n\n const categoryOption = {\n title: 'Categories',\n value: 'categories',\n options: categoriesFilter\n };\n\n if (index !== -1) {\n marketplace.state.filter.options[index] = categoryOption;\n } else {\n marketplace.state.filter.options.unshift(categoryOption);\n }\n })\n\n onUnmounted(() => {\n globals.state.navigation_bar.actions = [];\n });\n\n watch(() => marketplace.state.sort, (newSortValue, oldSortValue) => {\n let query = { ...route.query}\n \n query.sortParam = newSortValue.param\n query.sortOrder = newSortValue.order\n \n // replace the current route\n router.replace({ query });\n }, { deep: true });\n\n\n watch(() => marketplace.state.filter.selected, (newFilterValue, oldFilterValue) => {\n // Переводим фильтр в формат query\n const query = { ...route.query };\n\n // Удаляем старые значения фильтра из query\n Object.keys(oldFilterValue).forEach(key => {\n if (query[key]) {\n delete query[key];\n }\n });\n\n // Добавляем новые значения фильтра в query\n const newQueryValues = Object.fromEntries(\n Object.entries(newFilterValue)\n .filter(([key, value]) => Array.isArray(value) && value.length > 0)\n .map(([key, value]) => [key, value.join(',')])\n );\n\n delete query.options;\n Object.assign(query, newQueryValues);\n\n // Обновляем маршрут с новым query\n router.replace({ query });\n }, { deep: true })\n\n\n\n \n function updateSearch(search) {\n let query = { ...route.query}\n \n query.search = search\n \n router.replace({ query });\n }\n</script>\n\n<style lang=\"scss\">\n\n\n</style>\n"],"names":["marketplace.state","globals.state","IconPlus","auth.state","categories.actions"],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
4
  ;/* empty css */
5
- ;/* empty css */
5
+ ;/* empty css */
6
6
  const Field = require("../../../../components/Field/Field.vue.cjs");
7
7
  const Select = require("../../../../components/Select/Select.vue.cjs");
8
8
  const _hoisted_1 = { class: "flex-nowrap flex mn-b-small gap-thin" };
@@ -1,6 +1,6 @@
1
1
  import { createElementBlock, openBlock, Fragment, createElementVNode, createVNode, createCommentVNode, withCtx } from "vue";
2
2
  /* empty css */
3
- /* empty css */
3
+ /* empty css */
4
4
  import Field from "../../../../components/Field/Field.vue.js";
5
5
  import Select from "../../../../components/Select/Select.vue.js";
6
6
  const _hoisted_1 = { class: "flex-nowrap flex mn-b-small gap-thin" };
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- const Button = require("../../../../components/Button/Button.vue.cjs");
5
- const Tab = require("../../../../components/Tab/Tab.vue.cjs");
4
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
5
+ const Tab = require("../../../../components/Tab/Tab.vue2.cjs");
6
6
  const IconEdit = require("../../../icons/navigation/IconEdit.vue.cjs");
7
7
  const PlaceholderImage = require("../../../icons/placeholders/PlaceholderImage.vue.cjs");
8
8
  const Images360 = require("../blocks/Images360.vue.cjs");
@@ -1,6 +1,6 @@
1
1
  import { computed, ref, createElementBlock, openBlock, createElementVNode, createBlock, createCommentVNode, createVNode, unref, toDisplayString, Transition, withCtx, Fragment, renderList, createTextVNode } from "vue";
2
- import _sfc_main$4 from "../../../../components/Button/Button.vue.js";
3
- import _sfc_main$3 from "../../../../components/Tab/Tab.vue.js";
2
+ import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
3
+ import _sfc_main$3 from "../../../../components/Tab/Tab.vue2.js";
4
4
  import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
5
5
  import PlaceholderImage from "../../../icons/placeholders/PlaceholderImage.vue.js";
6
6
  import Images360 from "../blocks/Images360.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 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,7 +4,7 @@ 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");
7
+ const Popup = require("../../../../../components/Popup/Popup.vue.cjs");
8
8
  ;/* empty css */
9
9
  ;/* empty css */
10
10
  const CardOrderItem = require("../../../../orders/components/blocks/CardOrderItem.vue.cjs");
@@ -2,7 +2,7 @@ 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";
5
+ import _sfc_main$1 from "../../../../../components/Popup/Popup.vue.js";
6
6
  /* empty css */
7
7
  /* empty css */
8
8
  import _sfc_main$3 from "../../../../orders/components/blocks/CardOrderItem.vue.js";
@@ -1,8 +1,8 @@
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");
5
- const Button = require("../../../../components/Button/Button.vue.cjs");
4
+ const Popup = require("../../../../components/Popup/Popup.vue.cjs");
5
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
6
6
  const Select = require("../../../../components/Select/Select.vue.cjs");
7
7
  const reports = require("../../store/reports.cjs");
8
8
  const _sfc_main = {
@@ -1,6 +1,6 @@
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";
3
- import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
2
+ import _sfc_main$1 from "../../../../components/Popup/Popup.vue.js";
3
+ import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
4
4
  import Select from "../../../../components/Select/Select.vue.js";
5
5
  import { actions } from "../../store/reports.js";
6
6
  const _sfc_main = {
@@ -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" };
@@ -3,7 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const vueRouter = require("vue-router");
5
5
  const index = require("../../../../../../node_modules/@googlemaps/js-api-loader/dist/index.cjs");
6
- const Button = require("../../../../components/Button/Button.vue.cjs");
6
+ const Button = require("../../../../components/Button/Button.vue2.cjs");
7
7
  const organizations = require("../../../organizations/store/organizations.cjs");
8
8
  const globals = require("../../../globals/views/store/globals.cjs");
9
9
  const marketplace = require("../../../marketplace/views/store/marketplace.cjs");
@@ -1,7 +1,7 @@
1
1
  import { ref, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, withCtx, createTextVNode } from "vue";
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import { Loader } from "../../../../../../node_modules/@googlemaps/js-api-loader/dist/index.js";
4
- import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
4
+ import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
5
5
  import { actions, state as state$2 } from "../../../organizations/store/organizations.js";
6
6
  import { state } from "../../../globals/views/store/globals.js";
7
7
  import { state as state$1 } from "../../../marketplace/views/store/marketplace.js";
@@ -4,15 +4,15 @@ 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");
11
11
  const Address = require("../../../../components/Address/Address.vue2.cjs");
12
12
  const LocationMarker = require("../../../../components/LocationMarker/LocationMarker.vue2.cjs");
13
- const Button = require("../../../../components/Button/Button.vue.cjs");
13
+ const Button = require("../../../../components/Button/Button.vue2.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,15 +2,15 @@ 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";
9
9
  import _sfc_main$5 from "../../../../components/Address/Address.vue2.js";
10
10
  import _sfc_main$6 from "../../../../components/LocationMarker/LocationMarker.vue2.js";
11
- import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
11
+ import _sfc_main$2 from "../../../../components/Button/Button.vue2.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" };
@@ -38,18 +38,11 @@ const actions = {
38
38
  globals.setError(error);
39
39
  }
40
40
  },
41
- async read(organization) {
41
+ async read(options) {
42
42
  try {
43
- if (typeof arg === "string") {
44
- const response = await axiosInstance.default.get(`/api/spots/${organization}`);
45
- state.spots = response.data;
46
- return response.data;
47
- }
48
- if (typeof organization === "object") {
49
- const response = await axiosInstance.default.get(`/api/spots`, { organization });
50
- state.spots = response.data;
51
- return response.data;
52
- }
43
+ const response = await axiosInstance.default.get(`/api/spots`, { params: options });
44
+ state.spots = response.data;
45
+ return response.data;
53
46
  } catch (error) {
54
47
  globals.setError(error);
55
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spots.cjs","sources":["../../../../../../src/modules/spots/store/spots.js"],"sourcesContent":["// Vue modules\nimport { reactive, watch } 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// State\nconst state = reactive({\n spots: [],\n spot: {\n status: 'unpublished',\n organization: '',\n\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n position: {\n address: undefined,\n location: undefined,\n hide: false\n },\n\n address: undefined,\n location: undefined,\n\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subspots: [],\n },\n error: null,\n});\n\n// Methods\nconst actions = {\n async readOne(spotID) {\n try {\n const response = await $axios.get(`/api/spots/get/${spotID}`);\n\n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async read(organization) {\n try {\n if (typeof arg === 'string') {\n const response = await $axios.get(`/api/spots/${organization}`);\n state.spots = response.data;\n return response.data;\n }\n\n if (typeof organization === 'object') {\n const response = await $axios.get(`/api/spots`, { organization });\n state.spots = response.data;\n return response.data;\n }\n } catch (error) {\n setError(error);\n }\n },\n\n async create(organizationId, spot) {\n try {\n const response = await $axios.post(`/api/spots/${organizationId}/create`, spot);\n \n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async update(organizationId, spot) {\n try {\n await $axios.post(`/api/spots/${organizationId}/update`, spot);\n } catch (error) {\n setError(error);\n }\n },\n async delete(organizationId, spotId) {\n try {\n await $axios.delete(`/api/spots/${organizationId}/delete`, { data: { _id: spotId } });\n } catch (error) {\n setError(error);\n }\n },\n};\n\n// History\nconst history = []\nhistory.push(state)\n\n// Watch\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n// Module Export\nexport {\n state,\n actions,\n}"],"names":["reactive","$axios","setError","watch"],"mappings":";;;;;AAOK,MAAC,QAAQA,IAAAA,SAAS;AAAA,EACrB,OAAO,CAAE;AAAA,EACT,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,cAAc;AAAA,IAEd,SAAS;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY,CAAE;AAAA,IACf;AAAA,IACD,UAAU;AAAA,MACR,SAAS;AAAA,MACT,UAAU;AAAA,MACV,MAAM;AAAA,IACP;AAAA,IAED,SAAS;AAAA,IACT,UAAU;AAAA,IAEV,UAAU,CAAE;AAAA,IACZ,UAAU,CAAE;AAAA,IACZ,SAAS,CAAE;AAAA,IACX,SAAS,CAAE;AAAA,IACX,UAAU,CAAE;AAAA,EACb;AAAA,EACD,OAAO;AACT,CAAC;AAGI,MAAC,UAAU;AAAA,EACd,MAAM,QAAQ,QAAQ;AACpB,QAAI;AACF,YAAM,WAAW,MAAMC,sBAAO,IAAI,kBAAkB,MAAM,EAAE;AAE5D,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,KAAK,cAAc;AACvB,QAAI;AACF,UAAI,OAAO,QAAQ,UAAU;AAC3B,cAAM,WAAW,MAAMD,sBAAO,IAAI,cAAc,YAAY,EAAE;AAC9D,cAAM,QAAQ,SAAS;AACvB,eAAO,SAAS;AAAA,MACxB;AAEM,UAAI,OAAO,iBAAiB,UAAU;AACpC,cAAM,WAAW,MAAMA,sBAAO,IAAI,cAAc,EAAE,cAAc;AAChE,cAAM,QAAQ,SAAS;AACvB,eAAO,SAAS;AAAA,MACxB;AAAA,IACK,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EAED,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAM,WAAW,MAAMD,cAAAA,QAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAE9E,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAMD,cAAAA,QAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAAA,IAC9D,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,QAAQ;AACnC,QAAI;AACF,YAAMD,sBAAO,OAAO,cAAc,cAAc,WAAW,EAAE,MAAM,EAAE,KAAK,OAAQ,EAAA,CAAE;AAAA,IACrF,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AACH;AAOAC,IAAAA,MAAM,OAAO,CAAC,UAAU,aAAa;AAErC,CAAC;;;"}
1
+ {"version":3,"file":"spots.cjs","sources":["../../../../../../src/modules/spots/store/spots.js"],"sourcesContent":["// Vue modules\nimport { reactive, watch } 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// State\nconst state = reactive({\n spots: [],\n spot: {\n status: 'unpublished',\n organization: '',\n\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n position: {\n address: undefined,\n location: undefined,\n hide: false\n },\n\n address: undefined,\n location: undefined,\n\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subspots: [],\n },\n error: null,\n});\n\n// Methods\nconst actions = {\n async readOne(spotID) {\n try {\n const response = await $axios.get(`/api/spots/get/${spotID}`);\n\n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async read(options) {\n try {\n const response = await $axios.get(`/api/spots`, { params: options });\n state.spots = response.data;\n return response.data;\n } catch (error) {\n setError(error);\n }\n },\n\n async create(organizationId, spot) {\n try {\n const response = await $axios.post(`/api/spots/${organizationId}/create`, spot);\n \n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async update(organizationId, spot) {\n try {\n await $axios.post(`/api/spots/${organizationId}/update`, spot);\n } catch (error) {\n setError(error);\n }\n },\n async delete(organizationId, spotId) {\n try {\n await $axios.delete(`/api/spots/${organizationId}/delete`, { data: { _id: spotId } });\n } catch (error) {\n setError(error);\n }\n },\n};\n\n// History\nconst history = []\nhistory.push(state)\n\n// Watch\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n// Module Export\nexport {\n state,\n actions,\n}"],"names":["reactive","$axios","setError","watch"],"mappings":";;;;;AAOK,MAAC,QAAQA,IAAAA,SAAS;AAAA,EACrB,OAAO,CAAE;AAAA,EACT,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,cAAc;AAAA,IAEd,SAAS;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY,CAAE;AAAA,IACf;AAAA,IACD,UAAU;AAAA,MACR,SAAS;AAAA,MACT,UAAU;AAAA,MACV,MAAM;AAAA,IACP;AAAA,IAED,SAAS;AAAA,IACT,UAAU;AAAA,IAEV,UAAU,CAAE;AAAA,IACZ,UAAU,CAAE;AAAA,IACZ,SAAS,CAAE;AAAA,IACX,SAAS,CAAE;AAAA,IACX,UAAU,CAAE;AAAA,EACb;AAAA,EACD,OAAO;AACT,CAAC;AAGI,MAAC,UAAU;AAAA,EACd,MAAM,QAAQ,QAAQ;AACpB,QAAI;AACF,YAAM,WAAW,MAAMC,sBAAO,IAAI,kBAAkB,MAAM,EAAE;AAE5D,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,KAAK,SAAS;AAClB,QAAI;AACF,YAAM,WAAW,MAAMD,cAAAA,QAAO,IAAI,cAAc,EAAE,QAAQ,SAAS;AACnE,YAAM,QAAQ,SAAS;AACvB,aAAO,SAAS;AAAA,IACjB,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EAED,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAM,WAAW,MAAMD,cAAAA,QAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAE9E,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAMD,cAAAA,QAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAAA,IAC9D,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,QAAQ;AACnC,QAAI;AACF,YAAMD,sBAAO,OAAO,cAAc,cAAc,WAAW,EAAE,MAAM,EAAE,KAAK,OAAQ,EAAA,CAAE;AAAA,IACrF,SAAQ,OAAO;AACdC,cAAAA,SAAS,KAAK;AAAA,IACpB;AAAA,EACG;AACH;AAOAC,IAAAA,MAAM,OAAO,CAAC,UAAU,aAAa;AAErC,CAAC;;;"}
@@ -36,18 +36,11 @@ const actions = {
36
36
  setError(error);
37
37
  }
38
38
  },
39
- async read(organization) {
39
+ async read(options) {
40
40
  try {
41
- if (typeof arg === "string") {
42
- const response = await $axios.get(`/api/spots/${organization}`);
43
- state.spots = response.data;
44
- return response.data;
45
- }
46
- if (typeof organization === "object") {
47
- const response = await $axios.get(`/api/spots`, { organization });
48
- state.spots = response.data;
49
- return response.data;
50
- }
41
+ const response = await $axios.get(`/api/spots`, { params: options });
42
+ state.spots = response.data;
43
+ return response.data;
51
44
  } catch (error) {
52
45
  setError(error);
53
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spots.js","sources":["../../../../../../src/modules/spots/store/spots.js"],"sourcesContent":["// Vue modules\nimport { reactive, watch } 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// State\nconst state = reactive({\n spots: [],\n spot: {\n status: 'unpublished',\n organization: '',\n\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n position: {\n address: undefined,\n location: undefined,\n hide: false\n },\n\n address: undefined,\n location: undefined,\n\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subspots: [],\n },\n error: null,\n});\n\n// Methods\nconst actions = {\n async readOne(spotID) {\n try {\n const response = await $axios.get(`/api/spots/get/${spotID}`);\n\n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async read(organization) {\n try {\n if (typeof arg === 'string') {\n const response = await $axios.get(`/api/spots/${organization}`);\n state.spots = response.data;\n return response.data;\n }\n\n if (typeof organization === 'object') {\n const response = await $axios.get(`/api/spots`, { organization });\n state.spots = response.data;\n return response.data;\n }\n } catch (error) {\n setError(error);\n }\n },\n\n async create(organizationId, spot) {\n try {\n const response = await $axios.post(`/api/spots/${organizationId}/create`, spot);\n \n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async update(organizationId, spot) {\n try {\n await $axios.post(`/api/spots/${organizationId}/update`, spot);\n } catch (error) {\n setError(error);\n }\n },\n async delete(organizationId, spotId) {\n try {\n await $axios.delete(`/api/spots/${organizationId}/delete`, { data: { _id: spotId } });\n } catch (error) {\n setError(error);\n }\n },\n};\n\n// History\nconst history = []\nhistory.push(state)\n\n// Watch\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n// Module Export\nexport {\n state,\n actions,\n}"],"names":[],"mappings":";;;AAOK,MAAC,QAAQ,SAAS;AAAA,EACrB,OAAO,CAAE;AAAA,EACT,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,cAAc;AAAA,IAEd,SAAS;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY,CAAE;AAAA,IACf;AAAA,IACD,UAAU;AAAA,MACR,SAAS;AAAA,MACT,UAAU;AAAA,MACV,MAAM;AAAA,IACP;AAAA,IAED,SAAS;AAAA,IACT,UAAU;AAAA,IAEV,UAAU,CAAE;AAAA,IACZ,UAAU,CAAE;AAAA,IACZ,SAAS,CAAE;AAAA,IACX,SAAS,CAAE;AAAA,IACX,UAAU,CAAE;AAAA,EACb;AAAA,EACD,OAAO;AACT,CAAC;AAGI,MAAC,UAAU;AAAA,EACd,MAAM,QAAQ,QAAQ;AACpB,QAAI;AACF,YAAM,WAAW,MAAM,OAAO,IAAI,kBAAkB,MAAM,EAAE;AAE5D,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,KAAK,cAAc;AACvB,QAAI;AACF,UAAI,OAAO,QAAQ,UAAU;AAC3B,cAAM,WAAW,MAAM,OAAO,IAAI,cAAc,YAAY,EAAE;AAC9D,cAAM,QAAQ,SAAS;AACvB,eAAO,SAAS;AAAA,MACxB;AAEM,UAAI,OAAO,iBAAiB,UAAU;AACpC,cAAM,WAAW,MAAM,OAAO,IAAI,cAAc,EAAE,cAAc;AAChE,cAAM,QAAQ,SAAS;AACvB,eAAO,SAAS;AAAA,MACxB;AAAA,IACK,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EAED,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAM,WAAW,MAAM,OAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAE9E,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAM,OAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAAA,IAC9D,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,QAAQ;AACnC,QAAI;AACF,YAAM,OAAO,OAAO,cAAc,cAAc,WAAW,EAAE,MAAM,EAAE,KAAK,OAAQ,EAAA,CAAE;AAAA,IACrF,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AACH;AAOA,MAAM,OAAO,CAAC,UAAU,aAAa;AAErC,CAAC;"}
1
+ {"version":3,"file":"spots.js","sources":["../../../../../../src/modules/spots/store/spots.js"],"sourcesContent":["// Vue modules\nimport { reactive, watch } 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// State\nconst state = reactive({\n spots: [],\n spot: {\n status: 'unpublished',\n organization: '',\n\n profile: {\n photo: '',\n name: '',\n description: '',\n categories: [],\n },\n position: {\n address: undefined,\n location: undefined,\n hide: false\n },\n\n address: undefined,\n location: undefined,\n\n worktime: [],\n delivery: [],\n payment: [],\n members: [],\n subspots: [],\n },\n error: null,\n});\n\n// Methods\nconst actions = {\n async readOne(spotID) {\n try {\n const response = await $axios.get(`/api/spots/get/${spotID}`);\n\n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async read(options) {\n try {\n const response = await $axios.get(`/api/spots`, { params: options });\n state.spots = response.data;\n return response.data;\n } catch (error) {\n setError(error);\n }\n },\n\n async create(organizationId, spot) {\n try {\n const response = await $axios.post(`/api/spots/${organizationId}/create`, spot);\n \n state.spot = response.data;\n } catch (error) {\n setError(error);\n }\n },\n async update(organizationId, spot) {\n try {\n await $axios.post(`/api/spots/${organizationId}/update`, spot);\n } catch (error) {\n setError(error);\n }\n },\n async delete(organizationId, spotId) {\n try {\n await $axios.delete(`/api/spots/${organizationId}/delete`, { data: { _id: spotId } });\n } catch (error) {\n setError(error);\n }\n },\n};\n\n// History\nconst history = []\nhistory.push(state)\n\n// Watch\nwatch(state, (newState, oldState) => {\n history.push(newState)\n})\n\n// Module Export\nexport {\n state,\n actions,\n}"],"names":[],"mappings":";;;AAOK,MAAC,QAAQ,SAAS;AAAA,EACrB,OAAO,CAAE;AAAA,EACT,MAAM;AAAA,IACJ,QAAQ;AAAA,IACR,cAAc;AAAA,IAEd,SAAS;AAAA,MACP,OAAO;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,YAAY,CAAE;AAAA,IACf;AAAA,IACD,UAAU;AAAA,MACR,SAAS;AAAA,MACT,UAAU;AAAA,MACV,MAAM;AAAA,IACP;AAAA,IAED,SAAS;AAAA,IACT,UAAU;AAAA,IAEV,UAAU,CAAE;AAAA,IACZ,UAAU,CAAE;AAAA,IACZ,SAAS,CAAE;AAAA,IACX,SAAS,CAAE;AAAA,IACX,UAAU,CAAE;AAAA,EACb;AAAA,EACD,OAAO;AACT,CAAC;AAGI,MAAC,UAAU;AAAA,EACd,MAAM,QAAQ,QAAQ;AACpB,QAAI;AACF,YAAM,WAAW,MAAM,OAAO,IAAI,kBAAkB,MAAM,EAAE;AAE5D,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,KAAK,SAAS;AAClB,QAAI;AACF,YAAM,WAAW,MAAM,OAAO,IAAI,cAAc,EAAE,QAAQ,SAAS;AACnE,YAAM,QAAQ,SAAS;AACvB,aAAO,SAAS;AAAA,IACjB,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EAED,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAM,WAAW,MAAM,OAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAE9E,YAAM,OAAO,SAAS;AAAA,IACvB,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,MAAM;AACjC,QAAI;AACF,YAAM,OAAO,KAAK,cAAc,cAAc,WAAW,IAAI;AAAA,IAC9D,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AAAA,EACD,MAAM,OAAO,gBAAgB,QAAQ;AACnC,QAAI;AACF,YAAM,OAAO,OAAO,cAAc,cAAc,WAAW,EAAE,MAAM,EAAE,KAAK,OAAQ,EAAA,CAAE;AAAA,IACrF,SAAQ,OAAO;AACd,eAAS,KAAK;AAAA,IACpB;AAAA,EACG;AACH;AAOA,MAAM,OAAO,CAAC,UAAU,aAAa;AAErC,CAAC;"}