@ozdao/prometheus-framework 0.2.323 → 0.2.325

Sign up to get free protection for your applications and to get access to all the features.
Files changed (338) hide show
  1. package/dist/Media-BjSScxrV.js +1 -0
  2. package/dist/Media-CCVndMgQ.mjs +111 -0
  3. package/dist/main-BBmjvE8i.js +92 -0
  4. package/dist/main-BCskq3d2.mjs +13068 -0
  5. package/dist/main.css +1 -1
  6. package/dist/prometheus-framework/src/components/Button/Button.vue.cjs +9 -11
  7. package/dist/prometheus-framework/src/components/Button/Button.vue.cjs.map +1 -1
  8. package/dist/prometheus-framework/src/components/Button/Button.vue.js +10 -12
  9. package/dist/prometheus-framework/src/components/Button/Button.vue.js.map +1 -1
  10. package/dist/prometheus-framework/src/components/DatePicker/Calendar.vue2.cjs +37 -9
  11. package/dist/prometheus-framework/src/components/DatePicker/Calendar.vue2.cjs.map +1 -1
  12. package/dist/prometheus-framework/src/components/DatePicker/Calendar.vue2.js +37 -9
  13. package/dist/prometheus-framework/src/components/DatePicker/Calendar.vue2.js.map +1 -1
  14. package/dist/prometheus-framework/src/components/DatePicker/DatePicker.vue.cjs +27 -18
  15. package/dist/prometheus-framework/src/components/DatePicker/DatePicker.vue.cjs.map +1 -1
  16. package/dist/prometheus-framework/src/components/DatePicker/DatePicker.vue.js +27 -18
  17. package/dist/prometheus-framework/src/components/DatePicker/DatePicker.vue.js.map +1 -1
  18. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue.cjs +93 -0
  19. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue.cjs.map +1 -1
  20. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue.js +94 -1
  21. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue.js.map +1 -1
  22. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue2.cjs +0 -93
  23. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue2.cjs.map +1 -1
  24. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue2.js +1 -94
  25. package/dist/prometheus-framework/src/components/EditImages/EditImages.vue2.js.map +1 -1
  26. package/dist/prometheus-framework/src/components/EmptyState/EmptyState.vue.cjs +2 -2
  27. package/dist/prometheus-framework/src/components/EmptyState/EmptyState.vue.js +2 -2
  28. package/dist/prometheus-framework/src/components/Feed/Feed.vue.cjs +7 -3
  29. package/dist/prometheus-framework/src/components/Feed/Feed.vue.cjs.map +1 -1
  30. package/dist/prometheus-framework/src/components/Feed/Feed.vue.js +7 -3
  31. package/dist/prometheus-framework/src/components/Feed/Feed.vue.js.map +1 -1
  32. package/dist/prometheus-framework/src/components/Media/Media.vue.cjs +154 -0
  33. package/dist/prometheus-framework/src/components/Media/Media.vue.cjs.map +1 -0
  34. package/dist/prometheus-framework/src/components/Media/Media.vue.js +154 -0
  35. package/dist/prometheus-framework/src/components/Media/Media.vue.js.map +1 -0
  36. package/dist/prometheus-framework/src/components/Popup/Popup.vue.cjs +1 -4
  37. package/dist/prometheus-framework/src/components/Popup/Popup.vue.cjs.map +1 -1
  38. package/dist/prometheus-framework/src/components/Popup/Popup.vue.js +1 -4
  39. package/dist/prometheus-framework/src/components/Popup/Popup.vue.js.map +1 -1
  40. package/dist/prometheus-framework/src/components/Slider/Slider.vue.cjs +68 -37
  41. package/dist/prometheus-framework/src/components/Slider/Slider.vue.cjs.map +1 -1
  42. package/dist/prometheus-framework/src/components/Slider/Slider.vue.js +69 -38
  43. package/dist/prometheus-framework/src/components/Slider/Slider.vue.js.map +1 -1
  44. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.cjs +3 -2
  45. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
  46. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.js +3 -2
  47. package/dist/prometheus-framework/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  48. package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.cjs +0 -2
  49. package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.cjs.map +1 -1
  50. package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.js +4 -6
  51. package/dist/prometheus-framework/src/modules/backoffice/backoffice.client.js.map +1 -1
  52. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs +118 -3
  53. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs.map +1 -1
  54. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js +119 -4
  55. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js.map +1 -1
  56. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.cjs +112 -163
  57. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.cjs.map +1 -1
  58. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.js +119 -170
  59. package/dist/prometheus-framework/src/modules/backoffice/components/partials/Sidebar.vue.js.map +1 -1
  60. package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.cjs +0 -17
  61. package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.cjs.map +1 -1
  62. package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.js +2 -19
  63. package/dist/prometheus-framework/src/modules/backoffice/router/backoffice.js.map +1 -1
  64. package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
  65. package/dist/prometheus-framework/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
  66. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs +18 -78
  67. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs.map +1 -1
  68. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js +23 -83
  69. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js.map +1 -1
  70. package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
  71. package/dist/prometheus-framework/src/modules/community/components/pages/BlogPost.vue.js +1 -1
  72. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs +1 -1
  73. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js +1 -1
  74. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  75. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  76. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.cjs +1 -1
  77. package/dist/prometheus-framework/src/modules/community/components/sections/HotPosts.vue.js +5 -5
  78. package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.cjs +34 -25
  79. package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.cjs.map +1 -1
  80. package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.js +35 -26
  81. package/dist/prometheus-framework/src/modules/events/components/blocks/CardEvent.vue.js.map +1 -1
  82. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  83. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  84. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  85. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  86. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.cjs +45 -38
  87. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
  88. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.js +56 -49
  89. package/dist/prometheus-framework/src/modules/events/components/pages/Event.vue.js.map +1 -1
  90. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.cjs +221 -50
  91. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.cjs.map +1 -1
  92. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.js +225 -54
  93. package/dist/prometheus-framework/src/modules/events/components/pages/Events.vue.js.map +1 -1
  94. package/dist/prometheus-framework/src/modules/events/components/sections/EventsHot.vue.cjs +98 -0
  95. package/dist/prometheus-framework/src/modules/events/components/sections/EventsHot.vue.cjs.map +1 -0
  96. package/dist/prometheus-framework/src/modules/events/components/sections/EventsHot.vue.js +98 -0
  97. package/dist/prometheus-framework/src/modules/events/components/sections/EventsHot.vue.js.map +1 -0
  98. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.cjs +9 -9
  99. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.cjs.map +1 -1
  100. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.js +9 -9
  101. package/dist/prometheus-framework/src/modules/events/components/sections/FeaturedEvents.vue.js.map +1 -1
  102. package/dist/prometheus-framework/src/modules/events/components/sections/List.vue.cjs +1 -1
  103. package/dist/prometheus-framework/src/modules/events/components/sections/List.vue.cjs.map +1 -1
  104. package/dist/prometheus-framework/src/modules/events/components/sections/List.vue.js +1 -1
  105. package/dist/prometheus-framework/src/modules/events/components/sections/List.vue.js.map +1 -1
  106. package/dist/prometheus-framework/src/modules/events/events.client.cjs +1 -0
  107. package/dist/prometheus-framework/src/modules/events/events.client.cjs.map +1 -1
  108. package/dist/prometheus-framework/src/modules/events/events.client.js +1 -0
  109. package/dist/prometheus-framework/src/modules/events/events.client.js.map +1 -1
  110. package/dist/prometheus-framework/src/modules/events/router/events.cjs.map +1 -1
  111. package/dist/prometheus-framework/src/modules/events/router/events.js.map +1 -1
  112. package/dist/prometheus-framework/src/modules/events/store/events.cjs +2 -1
  113. package/dist/prometheus-framework/src/modules/events/store/events.cjs.map +1 -1
  114. package/dist/prometheus-framework/src/modules/events/store/events.js +2 -1
  115. package/dist/prometheus-framework/src/modules/events/store/events.js.map +1 -1
  116. package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
  117. package/dist/prometheus-framework/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
  118. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +4 -4
  119. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +4 -4
  120. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
  121. package/dist/prometheus-framework/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
  122. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/App.vue.cjs +4 -4
  123. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/App.vue.cjs.map +1 -1
  124. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/App.vue.js +4 -4
  125. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/App.vue.js.map +1 -1
  126. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.cjs +11 -5
  127. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  128. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.js +11 -5
  129. package/dist/prometheus-framework/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  130. package/dist/prometheus-framework/src/modules/globals/views/components/partials/CitySelection.vue.cjs +100 -0
  131. package/dist/prometheus-framework/src/modules/globals/views/components/partials/CitySelection.vue.cjs.map +1 -0
  132. package/dist/prometheus-framework/src/modules/globals/views/components/partials/CitySelection.vue.js +100 -0
  133. package/dist/prometheus-framework/src/modules/globals/views/components/partials/CitySelection.vue.js.map +1 -0
  134. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.cjs +6 -7
  135. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
  136. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.js +6 -7
  137. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
  138. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.cjs +1 -6
  139. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.cjs.map +1 -1
  140. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.js +1 -6
  141. package/dist/prometheus-framework/src/modules/globals/views/components/partials/Sidebar.vue.js.map +1 -1
  142. package/dist/prometheus-framework/src/modules/globals/views/mixins/mixins.cjs +30 -14
  143. package/dist/prometheus-framework/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
  144. package/dist/prometheus-framework/src/modules/globals/views/mixins/mixins.js +30 -14
  145. package/dist/prometheus-framework/src/modules/globals/views/mixins/mixins.js.map +1 -1
  146. package/dist/prometheus-framework/src/modules/icons/actions/IconShopcartAdd.vue.cjs +33 -0
  147. package/dist/prometheus-framework/src/modules/icons/actions/IconShopcartAdd.vue.cjs.map +1 -0
  148. package/dist/prometheus-framework/src/modules/icons/actions/IconShopcartAdd.vue.js +33 -0
  149. package/dist/prometheus-framework/src/modules/icons/actions/IconShopcartAdd.vue.js.map +1 -0
  150. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.cjs +4 -17
  151. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.cjs.map +1 -1
  152. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.js +4 -17
  153. package/dist/prometheus-framework/src/modules/icons/entities/IconCommunity.vue.js.map +1 -1
  154. package/dist/prometheus-framework/src/modules/icons/entities/IconPayments.vue.cjs +34 -0
  155. package/dist/prometheus-framework/src/modules/icons/entities/IconPayments.vue.cjs.map +1 -0
  156. package/dist/prometheus-framework/src/modules/icons/entities/IconPayments.vue.js +34 -0
  157. package/dist/prometheus-framework/src/modules/icons/entities/IconPayments.vue.js.map +1 -0
  158. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.cjs +27 -17
  159. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.cjs.map +1 -1
  160. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.js +28 -18
  161. package/dist/prometheus-framework/src/modules/icons/entities/IconPrice.vue.js.map +1 -1
  162. package/dist/prometheus-framework/src/modules/icons/icons.client.cjs +2 -0
  163. package/dist/prometheus-framework/src/modules/icons/icons.client.cjs.map +1 -1
  164. package/dist/prometheus-framework/src/modules/icons/icons.client.js +50 -48
  165. package/dist/prometheus-framework/src/modules/icons/icons.client.js.map +1 -1
  166. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrderItem.vue.cjs +1 -1
  167. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrderItem.vue.cjs.map +1 -1
  168. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrderItem.vue.js +1 -1
  169. package/dist/prometheus-framework/src/modules/orders/components/blocks/CardOrderItem.vue.js.map +1 -1
  170. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
  171. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  172. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
  173. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  174. package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
  175. package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
  176. package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +1 -1
  177. package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.js +1 -1
  178. package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
  179. package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
  180. package/dist/prometheus-framework/src/modules/orders/store/shopcart.cjs +67 -2
  181. package/dist/prometheus-framework/src/modules/orders/store/shopcart.cjs.map +1 -1
  182. package/dist/prometheus-framework/src/modules/orders/store/shopcart.js +67 -2
  183. package/dist/prometheus-framework/src/modules/orders/store/shopcart.js.map +1 -1
  184. package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
  185. package/dist/prometheus-framework/src/modules/organizations/components/blocks/CardOrganization.vue.js +7 -7
  186. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
  187. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
  188. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  189. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +1 -1
  190. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  191. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  192. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  193. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.cjs.map +1 -1
  194. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  195. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organizations.vue.js.map +1 -1
  196. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +2 -2
  197. package/dist/prometheus-framework/src/modules/organizations/components/sections/DetailsTabSection.vue.js +2 -2
  198. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  199. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  200. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  201. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  202. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  203. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  204. package/dist/prometheus-framework/src/modules/pages/pages.client.cjs +821 -789
  205. package/dist/prometheus-framework/src/modules/pages/pages.client.js +821 -789
  206. package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
  207. package/dist/prometheus-framework/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  208. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
  209. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
  210. package/dist/prometheus-framework/src/modules/products/components/blocks/CardProduct.vue.cjs +4 -15
  211. package/dist/prometheus-framework/src/modules/products/components/blocks/CardProduct.vue.cjs.map +1 -1
  212. package/dist/prometheus-framework/src/modules/products/components/blocks/CardProduct.vue.js +4 -15
  213. package/dist/prometheus-framework/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
  214. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +4 -4
  215. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs.map +1 -1
  216. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.js +4 -4
  217. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.js.map +1 -1
  218. package/dist/prometheus-framework/src/modules/products/components/elements/Price.vue.cjs +24 -30
  219. package/dist/prometheus-framework/src/modules/products/components/elements/Price.vue.cjs.map +1 -1
  220. package/dist/prometheus-framework/src/modules/products/components/elements/Price.vue.js +25 -31
  221. package/dist/prometheus-framework/src/modules/products/components/elements/Price.vue.js.map +1 -1
  222. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  223. package/dist/prometheus-framework/src/modules/products/components/pages/Categories.vue.js +1 -1
  224. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs +2 -2
  225. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
  226. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +2 -2
  227. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +2 -2
  228. package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.cjs +236 -13
  229. package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  230. package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.js +239 -16
  231. package/dist/prometheus-framework/src/modules/products/components/pages/Product.vue.js.map +1 -1
  232. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
  233. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
  234. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
  235. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +1 -1
  236. package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.cjs +60 -14
  237. package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.cjs.map +1 -1
  238. package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.js +67 -21
  239. package/dist/prometheus-framework/src/modules/products/components/sections/SectionProduct.vue.js.map +1 -1
  240. package/dist/prometheus-framework/src/modules/products/products.client.cjs +0 -3
  241. package/dist/prometheus-framework/src/modules/products/products.client.cjs.map +1 -1
  242. package/dist/prometheus-framework/src/modules/products/products.client.js +48 -51
  243. package/dist/prometheus-framework/src/modules/products/products.client.js.map +1 -1
  244. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
  245. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  246. package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
  247. package/dist/prometheus-framework/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
  248. package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
  249. package/dist/prometheus-framework/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
  250. package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
  251. package/dist/prometheus-framework/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  252. package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  253. package/dist/prometheus-framework/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  254. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
  255. package/dist/prometheus-framework/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
  256. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.cjs +4 -4
  257. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.js +4 -4
  258. package/dist/prometheus-framework.cjs.js +1 -92
  259. package/dist/prometheus-framework.es.js +36 -13005
  260. package/package.json +1 -1
  261. package/src/components/Button/Button.vue +43 -40
  262. package/src/components/DatePicker/Calendar.vue +15 -7
  263. package/src/components/DatePicker/DatePicker.vue +50 -40
  264. package/src/components/EmptyState/EmptyState.vue +2 -2
  265. package/src/components/Feed/Feed.vue +6 -2
  266. package/src/components/Media/Media.vue +211 -0
  267. package/src/components/Popup/Popup.vue +19 -21
  268. package/src/components/Slider/Slider.vue +57 -21
  269. package/src/components/index.js +1 -0
  270. package/src/main.js +3 -1
  271. package/src/modules/auth/views/components/pages/Profile.vue +2 -1
  272. package/src/modules/backoffice/backoffice.client.js +0 -2
  273. package/src/modules/backoffice/components/pages/Dashboard.vue +95 -2
  274. package/src/modules/backoffice/components/partials/Sidebar.vue +115 -132
  275. package/src/modules/backoffice/router/backoffice.js +0 -14
  276. package/src/modules/community/components/layouts/Community.vue +1 -52
  277. package/src/modules/events/components/blocks/CardEvent.vue +28 -22
  278. package/src/modules/events/components/pages/Event.vue +11 -8
  279. package/src/modules/events/components/pages/Events.vue +241 -56
  280. package/src/modules/events/components/sections/EventsHot.vue +93 -0
  281. package/src/modules/events/components/sections/FeaturedEvents.vue +17 -15
  282. package/src/modules/events/components/sections/List.vue +1 -1
  283. package/src/modules/events/events.client.js +1 -0
  284. package/src/modules/events/router/events.js +0 -4
  285. package/src/modules/events/store/events.js +1 -0
  286. package/src/modules/globals/views/components/layouts/App.vue +4 -5
  287. package/src/modules/globals/views/components/layouts/Client.vue +8 -2
  288. package/src/modules/globals/views/components/partials/CitySelection.vue +88 -0
  289. package/src/modules/globals/views/components/partials/Header.vue +3 -3
  290. package/src/modules/globals/views/components/partials/Navigation.vue +75 -20
  291. package/src/modules/globals/views/components/partials/Sidebar.vue +2 -9
  292. package/src/modules/globals/views/mixins/mixins.js +56 -35
  293. package/src/modules/governance/DESCRIPTION.MD +238 -0
  294. package/src/modules/governance/controllers/factories/initiatives.controller.js +3 -1
  295. package/src/modules/governance/controllers/routes/initiatives.routes.js +1 -1
  296. package/src/modules/governance/controllers/routes/tasks.routes.js +1 -1
  297. package/src/modules/governance/controllers/routes/votes.routes.js +1 -1
  298. package/src/modules/governance/controllers/routes/votings.routes.js +1 -1
  299. package/src/modules/governance/governance.client.js +35 -35
  300. package/src/modules/governance/governance.server.js +8 -8
  301. package/src/modules/governance/models/milestone.model.js +98 -0
  302. package/src/modules/governance/models/task.model.js +39 -7
  303. package/src/modules/governance/views/components/pages/Initiative.vue +1 -1
  304. package/src/modules/governance/views/components/pages/InitiativeCreate.vue +2 -2
  305. package/src/modules/governance/views/components/pages/Initiatives.vue +3 -2
  306. package/src/modules/governance/views/components/pages/Task.vue +1 -1
  307. package/src/modules/governance/views/components/pages/TaskCreate.vue +2 -2
  308. package/src/modules/governance/views/components/pages/Tasks.vue +2 -2
  309. package/src/modules/governance/views/components/pages/Voting.vue +3 -3
  310. package/src/modules/governance/views/components/pages/VotingCreate.vue +2 -2
  311. package/src/modules/governance/views/components/pages/Votings.vue +2 -2
  312. package/src/modules/governance/views/components/sections/VoteForm.vue +1 -1
  313. package/src/modules/governance/views/router/goverance.router.js +263 -0
  314. package/src/modules/icons/actions/IconShopcartAdd.vue +15 -0
  315. package/src/modules/icons/entities/IconCommunity.vue +4 -6
  316. package/src/modules/icons/entities/IconPayments.vue +14 -0
  317. package/src/modules/icons/entities/IconPrice.vue +12 -3
  318. package/src/modules/icons/icons.client.js +5 -0
  319. package/src/modules/icons/logos/Logotype.vue +50 -17
  320. package/src/modules/orders/components/blocks/CardOrderItem.vue +2 -0
  321. package/src/modules/orders/store/shopcart.js +100 -1
  322. package/src/modules/organizations/components/pages/Organizations.vue +1 -1
  323. package/src/modules/products/components/blocks/CardProduct.vue +5 -11
  324. package/src/modules/products/components/blocks/ImagesThumbnails.vue +4 -4
  325. package/src/modules/products/components/elements/Price.vue +33 -56
  326. package/src/modules/products/components/pages/Product.vue +235 -13
  327. package/src/modules/products/components/sections/SectionProduct.vue +50 -25
  328. package/src/modules/products/products.client.js +0 -4
  329. package/src/styles/base/all.scss +15 -16
  330. package/src/styles/config.scss +2 -2
  331. package/src/modules/backoffice/components/layouts/Backoffice.vue +0 -55
  332. package/src/modules/events/components/sections/SectionLineup.vue +0 -42
  333. package/src/modules/events/components/sections/SectionMainGuest.vue +0 -95
  334. package/src/modules/events/components/sections/SectionPreviousEvents.vue +0 -117
  335. package/src/modules/events/components/sections/SectionSpecialGuests.vue +0 -46
  336. package/src/modules/governance/controllers/factories/projects.controller.js +0 -65
  337. package/src/modules/governance/controllers/routes/projects.routes.js +0 -34
  338. package/src/modules/governance/models/project.model.js +0 -26
@@ -80,20 +80,13 @@
80
80
  {{product.description.substring(0, 99)}}...
81
81
  </p>
82
82
 
83
- <!-- <p v-if="product.localization && product.localization.length > 1" class="mn-b-small t-transp p-small">
84
- <span v-if="$i18n.locale === 'en'">{{product.localization[0].text.substring(0, 99)}}...</span>
85
- <span v-if="$i18n.locale === 'ru'">{{product.localization[1].text.substring(0, 99)}}...</span>
86
- </p> -->
87
-
88
83
  <div class="flex-v-center flex-nowrap flex">
89
84
  <Price
90
85
  :product="product"
91
86
  size="small"
92
87
  class="mn-r-auto"
93
88
  />
94
-
95
-
96
-
89
+
97
90
  <button
98
91
  v-if="user && product.listing === 'rent'"
99
92
  class="
@@ -102,9 +95,9 @@
102
95
  radius-extra pd-thin bg-main
103
96
  "
104
97
  >
105
- <svg class="i-medium" xmlns="http://www.w3.org/2000/svg" width="26" height="21" viewBox="0 0 26 21" fill="none">
106
- <path d="M8.19141 15.582C7.49414 15.582 6.95638 15.3861 6.57812 14.9941C6.19987 14.6022 5.95833 14.0622 5.85352 13.374L4.52734 4.30957H1.9502C1.68587 4.30957 1.45801 4.21387 1.2666 4.02246C1.0752 3.8265 0.979492 3.59408 0.979492 3.3252C0.979492 3.05632 1.0752 2.82617 1.2666 2.63477C1.45801 2.4388 1.68587 2.34082 1.9502 2.34082H4.91699C5.43197 2.34082 5.79655 2.44564 6.01074 2.65527C6.22493 2.86035 6.36393 3.16797 6.42773 3.57812L6.55078 4.42578H14.7471C14.7288 4.5625 14.7152 4.69922 14.7061 4.83594C14.6969 4.97266 14.6924 5.10938 14.6924 5.24609C14.6924 6.04362 14.8405 6.79102 15.1367 7.48828C15.4329 8.18555 15.8454 8.80306 16.374 9.34082C16.9072 9.87858 17.5247 10.3024 18.2266 10.6123C18.9284 10.9176 19.6826 11.0771 20.4893 11.0908L20.4209 11.248C20.2432 11.5671 20.0016 11.8132 19.6963 11.9863C19.391 12.1595 19.0127 12.2461 18.5615 12.2461H7.67188L7.80859 13.1963C7.84049 13.3831 7.90885 13.5335 8.01367 13.6475C8.11849 13.7614 8.25977 13.8184 8.4375 13.8184H18.459C18.696 13.8184 18.9056 13.8981 19.0879 14.0576C19.2702 14.2171 19.3613 14.429 19.3613 14.6934C19.3613 14.9622 19.2702 15.1787 19.0879 15.3428C18.9056 15.5023 18.696 15.582 18.459 15.582H8.19141ZM7.34375 18.4873C7.34375 18.1865 7.41667 17.9108 7.5625 17.6602C7.71289 17.4141 7.91113 17.2181 8.15723 17.0723C8.40788 16.9264 8.68359 16.8535 8.98438 16.8535C9.28516 16.8535 9.55859 16.9264 9.80469 17.0723C10.0553 17.2181 10.2536 17.4141 10.3994 17.6602C10.5452 17.9108 10.6182 18.1865 10.6182 18.4873C10.6182 18.7926 10.5452 19.0684 10.3994 19.3145C10.2536 19.5651 10.0553 19.7611 9.80469 19.9023C9.55859 20.0482 9.28516 20.1211 8.98438 20.1211C8.68359 20.1211 8.40788 20.0482 8.15723 19.9023C7.91113 19.7611 7.71289 19.5651 7.5625 19.3145C7.41667 19.0684 7.34375 18.7926 7.34375 18.4873ZM15.3555 18.4873C15.3555 18.1865 15.4284 17.9108 15.5742 17.6602C15.7246 17.4141 15.9229 17.2181 16.1689 17.0723C16.4196 16.9264 16.6953 16.8535 16.9961 16.8535C17.3014 16.8535 17.5771 16.9264 17.8232 17.0723C18.0693 17.2181 18.2653 17.4141 18.4111 17.6602C18.5615 17.9108 18.6367 18.1865 18.6367 18.4873C18.6367 18.7926 18.5615 19.0684 18.4111 19.3145C18.2653 19.5651 18.0693 19.7611 17.8232 19.9023C17.5771 20.0482 17.3014 20.1211 16.9961 20.1211C16.6953 20.1211 16.4196 20.0482 16.1689 19.9023C15.9229 19.7611 15.7246 19.5651 15.5742 19.3145C15.4284 19.0684 15.3555 18.7926 15.3555 18.4873ZM20.5439 9.82617C19.915 9.82617 19.3226 9.70768 18.7666 9.4707C18.2152 9.23372 17.7275 8.90332 17.3037 8.47949C16.8799 8.05566 16.5472 7.56803 16.3057 7.0166C16.0687 6.46061 15.9502 5.86816 15.9502 5.23926C15.9502 4.61035 16.0687 4.02018 16.3057 3.46875C16.5472 2.91732 16.8799 2.42969 17.3037 2.00586C17.7275 1.58203 18.2152 1.25163 18.7666 1.01465C19.3226 0.773112 19.915 0.652344 20.5439 0.652344C21.1729 0.652344 21.763 0.773112 22.3145 1.01465C22.8704 1.25163 23.3581 1.58203 23.7773 2.00586C24.2012 2.42513 24.5316 2.91276 24.7686 3.46875C25.0055 4.02018 25.124 4.61035 25.124 5.23926C25.124 5.86361 25.0033 6.45378 24.7617 7.00977C24.5247 7.5612 24.1943 8.04883 23.7705 8.47266C23.3467 8.89648 22.8568 9.22917 22.3008 9.4707C21.7493 9.70768 21.1637 9.82617 20.5439 9.82617ZM20.5439 8.19922C20.7445 8.19922 20.904 8.13997 21.0225 8.02148C21.141 7.89844 21.2002 7.73893 21.2002 7.54297V5.89551H22.8408C23.0368 5.89551 23.194 5.83626 23.3125 5.71777C23.4355 5.59928 23.4971 5.44206 23.4971 5.24609C23.4971 5.04557 23.4355 4.88607 23.3125 4.76758C23.194 4.64453 23.0368 4.58301 22.8408 4.58301H21.2002V2.95605C21.2002 2.75553 21.141 2.59603 21.0225 2.47754C20.904 2.35905 20.7445 2.2998 20.5439 2.2998C20.3434 2.2998 20.1839 2.36133 20.0654 2.48438C19.9469 2.60286 19.8877 2.76009 19.8877 2.95605V4.58301H18.2539C18.0534 4.58301 17.8916 4.64453 17.7686 4.76758C17.6501 4.88607 17.5908 5.04557 17.5908 5.24609C17.5908 5.44206 17.6523 5.59928 17.7754 5.71777C17.8984 5.83626 18.0579 5.89551 18.2539 5.89551H19.8877V7.54297C19.8877 7.73893 19.9469 7.89844 20.0654 8.02148C20.1839 8.13997 20.3434 8.19922 20.5439 8.19922Z" fill="white"/>
107
- </svg>
98
+ <IconShopcartAdd
99
+ class="i-medium"
100
+ />
108
101
  </button>
109
102
  </div>
110
103
  </div>
@@ -119,6 +112,7 @@
119
112
  import { useI18n } from 'vue-i18n'
120
113
 
121
114
  import IconEdit from '@pf/src/modules/icons/navigation/IconEdit.vue'
115
+ import IconShopcartAdd from '@pf/src/modules/icons/actions/IconShopcartAdd.vue'
122
116
 
123
117
  import THC from '@pf/src/modules/products/components/elements/THC.vue'
124
118
  import Price from '@pf/src/modules/products/components/elements/Price.vue'
@@ -1,6 +1,6 @@
1
1
  <template>
2
- <div class="o-scroll product-images">
3
- <div class="no-responsive flex flex-nowrap gap-thin">
2
+ <div class="o-scroll w-100 product-images">
3
+ <div class="no-responsive w-max flex flex-nowrap gap-thin">
4
4
  <img loading="lazy"
5
5
  v-for="(image, index) in images"
6
6
  :key="index"
@@ -54,8 +54,8 @@ const closePopup = () => {
54
54
 
55
55
  .thumbnail {
56
56
  width: 100%;
57
- max-width: 8rem;
58
- height: 8rem;
57
+ max-width: 6rem;
58
+ height: 6rem;
59
59
  object-fit: cover;
60
60
  cursor: pointer;
61
61
  }
@@ -1,72 +1,49 @@
1
1
  <template>
2
2
  <div
3
- v-if="product.listing !== 'rent'"
4
- class="price-tag radius-small"
5
- :class="
6
- {
7
- 'bg-main': !product.sale,
8
- 'bg-third-small': product.sale,
9
- }
10
- "
3
+ class="radius-small"
11
4
  >
12
- <p
5
+ <span
13
6
  :class="
14
7
  {
15
8
  'h4': !size,
16
- 'h5 t-semi pd-thin': size === 'small',
17
- 'h3 t-semi pd-small': size === 'big'
9
+ 'h5 t-semi': size === 'small',
10
+ 'h3 t-semi': size === 'big'
11
+ }
12
+ "
13
+ class="t-second"
14
+ >
15
+ {{product.price_currency + product.price}}
16
+ </span>
17
+
18
+ <span
19
+ v-if="product.listing === 'rent'"
20
+ :class="
21
+ {
22
+ 'p-medium': !size,
23
+ 'p-small': size === 'small',
24
+ 'p-big': size === 'big'
18
25
  }
19
26
  "
27
+ class="p-small t-transp"
28
+ >
29
+ {{ product.listing === 'rent' ? '/ per day' : '' }}
30
+ </span>
31
+
32
+ <p
33
+ v-if="product.sale"
34
+ class="pd-r-small t-transp t-transp p-medium line-through price"
20
35
  >
21
- {{product.price }} {{product.price_currency}} {{ product.listing === 'rent' ? 'per day' : '' }}
36
+ {{(product.price / 100) * (100 + product.sale) }} {{product.price_currency}}
22
37
  </p>
23
- <p v-if="product.sale" class="pd-r-small t-transp t-transp p-medium line-through price">{{(product.price / 100) * (100 + product.sale) }} {{product.price_currency}} </p>
24
- </div>
25
38
 
26
- <div
27
- v-else
28
- class="mn-r-auto"
29
- >
30
- <span class="t-second h5 "> {{product.price+product.price_currency }}</span> <span class="p-small t-transp">/ per day </span>
31
39
  </div>
32
40
  </template>
33
41
 
34
42
  <script setup="props">
35
- /////////////////////////////
36
- // COMPONENT DEPENDENCIES
37
- /////////////////////////////
38
- import { ref, } from 'vue';
39
-
40
- /////////////////////////////
41
- // HELPERS
42
- /////////////////////////////
43
-
44
- /////////////////////////////
45
- // CREATED
46
- /////////////////////////////
47
-
48
- const props = defineProps({
49
- product: Object,
50
- size: String
51
- });
52
-
53
- /////////////////////////////
54
- // MOUNTED
55
- /////////////////////////////
56
- </script>
57
-
58
- <style lang="scss">
59
- .price-tag {
60
- background: #058;
61
- color: #fff;
62
- cursor: pointer;
63
- display: inline-block;
64
- position: relative;
65
- text-align: center;
66
- display: flex;
67
- align-items: center;
68
- width: fit-content;
69
- color: black;
70
- }
43
+ import { ref, } from 'vue';
71
44
 
72
- </style>
45
+ const props = defineProps({
46
+ product: Object,
47
+ size: String
48
+ });
49
+ </script>
@@ -1,7 +1,169 @@
1
1
  <template>
2
- <div class="h-100 w-100 bg-white ">
2
+ <div class="h-100 w-100 mobile:pd-thin pd-big bg-white ">
3
3
  <!-- <Breadcrumbs class="bg-light radius-big pd-small"/> -->
4
- <SectionProduct v-if="product" :product="product" :user="auth.state.user" class="pos-relative"/>
4
+ <div class="cols-2-1_2 w-100 gap-medium">
5
+
6
+ <div class="w-100 o-hidden bg-light radius-big flex-nowrap flex-column flex pos-relative">
7
+ <div class="pd-semi w-100 bg-light radius-semi o-hidden">
8
+ <!-- PRODUCT IMAGE -->
9
+ <Images360
10
+ v-if="product && product.image3d"
11
+ class="h-100 w-100"
12
+ :imagePath="`/assets/images/products/${product.image3d}`"
13
+ :imageCount="36"
14
+ />
15
+
16
+ <img loading="lazy"
17
+ v-if="images[0] && !product.image3d"
18
+ class="h-max h-max-15r bg-white radius-semi w-100"
19
+ style="object-fit: contain;"
20
+ :src="(FILE_SERVER_URL || '') + images[0]"
21
+ />
22
+
23
+ <PlaceholderImage
24
+ v-if="!images[0] && !product.image3d"
25
+ class="h-max-20r h-100 w-100"
26
+ style="object-fit: cover;"
27
+ />
28
+
29
+ </div>
30
+
31
+ <ImagesThumbnails
32
+ v-if="images.length > 1"
33
+ :images="images"
34
+ class="pd-semi pd-t-zero"
35
+ />
36
+ </div>
37
+
38
+ <div class="pos-relative w-100 h-100 flex-column flex-h-center flex">
39
+
40
+ <IconEdit
41
+ v-if="accesses && hasAccess(route.params._id, 'products', 'edit', accesses)"
42
+ @click="$router.push({
43
+ name: 'ProductEdit',
44
+ params: {
45
+ _id: product.owner.target,
46
+ product: product._id
47
+ }
48
+ })"
49
+ class="pos-absolute pos-t-regular pos-r-regular i-regular t-transp"
50
+ />
51
+
52
+ <!-- Name -->
53
+ <h2 class="w-100 h1-product mn-b-small">{{ product.name }}</h2>
54
+
55
+ <Price :product="product" size="big" class="flex gap-thin flex-center pd-thin br-solid br-1px br-black-transp-10 w-max mn-b-medium" />
56
+
57
+ <!-- Price -->
58
+ <div v-if="product.description || product.specification" class="h-min-5r o-hidden radius-small bg-light mn-b-medium pos-relative">
59
+ <Tab
60
+ v-model:selected="tabProduct"
61
+ :tabs="[
62
+ {name: 'Description', value: 'description'},
63
+ {name: 'Specifications', value: 'specifications'}
64
+ ]"
65
+ tabClass="pd-thin bg-white radius-thin p-small uppercase t-medium"
66
+ class="gap-micro bg-light pos-relative z-index-2 pd-thin br-solid br-b br-black-transp-10"
67
+ />
68
+ <transition name="slide-fade">
69
+ <div v-if="tabProduct === 'description'" class=" pd-medium">
70
+ <p v-if="product.description && !product.localization < 1 && !recommendation" class="w-100 t-transp">
71
+ {{ product.description }}
72
+ </p>
73
+
74
+ <p v-if="product.localization && product.localization.length > 1 && !recommendation" class="w-100 t-transp">
75
+ {{ t('description') }}
76
+ </p>
77
+ </div>
78
+
79
+ <div
80
+ v-else
81
+ class="cols-2 pd-medium w-100 gap-small"
82
+ >
83
+ <div
84
+ v-if="product.information.length > 0"
85
+ v-for="information in product.information"
86
+ class="w-100 pd-small radius-small bg-white product-information"
87
+ >
88
+ <p class="t-demi">{{ information.name }}</p>
89
+ <p>{{ information.value }}</p>
90
+ </div>
91
+ </div>
92
+ </transition>
93
+ </div>
94
+
95
+ <!-- Modifications -->
96
+ <!-- <div v-if="product.modifications.length > 0" class="flex-nojustify flex">
97
+ <SelectElement v-if="sizes2.length > 0" :elements="sizes2" :selected="product.selectedSize" class="mn-r-medium" />
98
+ </div> -->
99
+
100
+ <!-- Actions -->
101
+ <div class="w-max-33r">
102
+ <button
103
+ v-if="product.quantity > 0 || product.listing === 'rent'"
104
+ @click="product.listing === 'rent' ? openPopup() : addToCart(product)"
105
+ class="cursor-pointer pd-small radius-big w-max mobile:w-100 bg-main button"
106
+ >
107
+ <div class="gap-thin flex flex-center flex-nowrap">
108
+ <IconShopcartAdd v-if="product.listing === 'rent'" class="i-semi" />
109
+ <span>{{ t('addtoorder') }}</span>
110
+ </div>
111
+ </button>
112
+
113
+ <div
114
+ v-else
115
+ class="flex-center flex uppercase radius-big t-black w-max pd-small t-medium bg-grey h-3r w-100 mn-r-smallbutton"
116
+ >
117
+ Out of Stock
118
+ </div>
119
+ </div>
120
+ <!-- Shopcart Adding Popup -->
121
+ <Popup @close-popup="closePopup" :isPopupOpen="isPopupVisible" class="radius-medium pd-medium bg-white o-hidden">
122
+ <h5 class="w-100 t-center mn-b-small">Select Rent Period</h5>
123
+ <Calendar
124
+ :date="rentDate"
125
+ :allowRange="true"
126
+ class="bg-light radius-small"
127
+ />
128
+
129
+ <p class="flex flex-nowrap pd-t-small">
130
+ <span class="w-100 t-transp">$ 400 x 4 days</span>
131
+ <span class="w-100 t-right">$2000</span>
132
+ </p>
133
+ <p class="flex flex-nowrap pd-t-small">
134
+ <span class="w-100 t-transp">Insurance Fee</span>
135
+ <span class="w-100 t-right">$200</span>
136
+ </p>
137
+ <p class="flex flex-nowrap br-black-transp-10 br-solid br-b pd-b-small pd-t-small">
138
+ <span class="w-100 t-transp">VAT (20%)</span>
139
+ <span class="w-100 t-right">$300</span>
140
+ </p>
141
+
142
+ <p class="p-big flex flex-nowrap pd-b-small pd-t-small">
143
+ <span class="w-100 t-medium ">In Total</span>
144
+ <span class="w-100 t-main t-medium t-right">$2500</span>
145
+ </p>
146
+
147
+ <Button
148
+ v-if="product.quantity > 0 || product.listing === 'rent'"
149
+ :submit="() => addToCart(product)"
150
+ :callback="() => closePopup()"
151
+ :disabled="product.listing !== 'rent' && validateToCard(product)"
152
+ :text="{
153
+ success: 'Added',
154
+ error: 'Error'
155
+ }"
156
+ class="h-3r w-100 bg-main button"
157
+ >
158
+ <div class="gap-thin flex flex-center flex-nowrap">
159
+ <IconShopcartAdd v-if="product.listing === 'rent'" class="i-semi" />
160
+ <span>{{ t('addtoorder') }}</span>
161
+ </div>
162
+ </Button>
163
+ </Popup>
164
+
165
+ </div>
166
+ </div>
5
167
 
6
168
  <div class="h-max pos-relative">
7
169
  <h3 class="pd-medium pd-b-small">Most Popular</h3>
@@ -13,10 +175,25 @@
13
175
  <script setup="props">
14
176
  // Import components
15
177
  // import Breadcrumbs from '@pf/src/components/Breadcrumbs/Breadcrumbs.vue'
178
+ import Button from '@pf/src/components/Button/Button.vue'
179
+ import Popup from '@pf/src/components/Popup/Popup.vue'
180
+ import Tab from '@pf/src/components/Tab/Tab.vue'
181
+ import Calendar from '@pf/src/components/DatePicker/Calendar.vue'
182
+
183
+ import IconEdit from '@pf/src/modules/icons/navigation/IconEdit.vue'
184
+ import IconShopcartAdd from '@pf/src/modules/icons/actions/IconShopcartAdd.vue'
185
+
186
+ import PlaceholderImage from '@pf/src/modules/icons/placeholders/PlaceholderImage.vue'
187
+
188
+ import Images360 from '@pf/src/modules/products/components/blocks/Images360.vue'
189
+ import ImagesThumbnails from "@pf/src/modules/products/components/blocks/ImagesThumbnails.vue";
190
+
191
+ import Price from '@pf/src/modules/products/components/elements/Price.vue'
192
+
16
193
  import PopularProducts from '@pf/src/modules/products/components/sections/PopularProducts.vue'
17
194
  import SectionProduct from '@pf/src/modules/products/components/sections/SectionProduct.vue'
18
195
  // Import libs
19
- import { computed, onMounted } from 'vue'
196
+ import { computed, ref, onMounted } from 'vue'
20
197
  import { useRoute,useRouter } from 'vue-router'
21
198
  import { useI18n } from 'vue-i18n'
22
199
 
@@ -24,32 +201,77 @@
24
201
  import * as products from '@pf/src/modules/products/store/products';
25
202
  import * as categories from '@pf/src/modules/products/store/categories';
26
203
 
204
+ import * as shopcart from '@pf/src/modules/orders/store/shopcart';
205
+
27
206
  // Accessing router and store
28
207
  const route = useRoute()
29
208
  const router = useRouter()
30
-
31
209
 
32
210
  route.meta.title.en = products.state.current.name
33
211
  route.meta.title.ru = products.state.current.name
34
212
 
35
213
  // Accessing state
36
214
  const product = computed(() => products.state.current)
215
+ const images = computed(() => products.state.current.images)
216
+
217
+ let rentDate = ref({
218
+ start: null,
219
+ end: null
220
+ })
221
+
222
+
223
+ const tabProduct = ref('description')
37
224
 
38
225
  const text = {
39
- messages: {
40
- }
41
- };
226
+ en: {
227
+ addtoorder: 'Add to Cart',
228
+ fastorder: 'Fast Order'
229
+ },
230
+ ru: {
231
+ addtoorder: 'Добавить в корзину',
232
+ fastorder: 'Быстрый заказ'
233
+ }
234
+ }
235
+
236
+ const { t } = useI18n({messages: text})
42
237
 
43
238
  onMounted(async ()=> {
44
239
  await products.actions.read({_id: route.params.product});
45
-
46
240
  })
47
-
48
- // products.state.current.localization.forEach(localization => {
49
- // if (localization) text.messages[localization.locale].description = localization.text
50
- // })
51
241
 
52
- const { t } = useI18n(text)
242
+ // Methods
243
+ function validateToCard(product) {
244
+ if (product.quantity > 0) {
245
+ return false
246
+ }
247
+ return true
248
+ }
249
+
250
+ const isPopupVisible = ref(false);
251
+
252
+ const openPopup = () => {
253
+ isPopupVisible.value = true;
254
+ };
255
+
256
+ const closePopup = () => {
257
+ isPopupVisible.value = false;
258
+ };
259
+
260
+ async function addToCart(product) {
261
+ try {
262
+ if (shopcart.state.organization !== product.owner.target) {
263
+ shopcart.state.organization = product.owner.target
264
+ shopcart.state.positions = []
265
+ }
266
+
267
+ await shopcart.actions.addProductToCart(product, product.owner.target, rentDate)
268
+
269
+ return true
270
+ } catch (error) {
271
+ console.error('Ошибка при добавлении товара в корзину:', error)
272
+ throw error
273
+ }
274
+ }
53
275
  </script>
54
276
 
55
277
  <style lang="scss">
@@ -35,16 +35,17 @@
35
35
 
36
36
  <div class="radius-big pos-relative w-100 h-100 flex-column flex-justify flex col">
37
37
 
38
- <!-- <IconEdit
39
- @click="$router.push({
40
- name: 'ProductEdit',
41
- params: {
42
- _id: product.organization,
43
- product: product._id
44
- }
45
- })"
46
- class="pos-absolute pos-t-regular pos-r-regular i-regular t-transp"
47
- /> -->
38
+ <IconEdit
39
+ v-if="accesses && hasAccess(route.params._id, 'products', 'edit', accesses)"
40
+ @click="$router.push({
41
+ name: 'ProductEdit',
42
+ params: {
43
+ _id: product.owner.target,
44
+ product: product._id
45
+ }
46
+ })"
47
+ class="pos-absolute pos-t-regular pos-r-regular i-regular t-transp"
48
+ />
48
49
 
49
50
  <h2 v-if="recommendation" class="t-main t-semi p-big">{{t('airecommend')}}</h2>
50
51
  <!-- Name -->
@@ -99,8 +100,21 @@
99
100
  </transition>
100
101
  </div>
101
102
 
103
+ <div v-if="product.listing === 'rent'" class="mn-t-small max-w-33rem mobile-w-100 t-white gap-small cols-2">
104
+ <Button
105
+ :submit="() => { addToCart(product) } "
106
+ :text="{
107
+ success: ' ✔ Added',
108
+ error: 'error'
109
+ }"
110
+ class="h-3r w-100 mn-r-small bg-main button"
111
+ >
112
+ {{ t('addtoorder') }}
113
+ </Button>
114
+ </div>
115
+
102
116
  <!-- Actions -->
103
- <div v-if="product.listing !== 'rent'" class="max-w-33rem mobile-w-100 t-white gap-small cols-2">
117
+ <div v-else class="mn-t-small max-w-33rem mobile-w-100 t-white gap-small cols-2">
104
118
  <Button
105
119
  v-if="product.quantity > 0"
106
120
  :submit="a => addToCart(product)"
@@ -135,6 +149,8 @@ import Price from '@pf/src/modules/products/components/elements/Price.vue'
135
149
  // import SelectElement from '@/components/elements/SelectElement.vue'
136
150
 
137
151
  import { computed, ref } from 'vue'
152
+
153
+ import { useRoute,useRouter } from 'vue-router'
138
154
  import { useI18n } from 'vue-i18n'
139
155
 
140
156
  import * as shopcart from '@pf/src/modules/orders/store/shopcart';
@@ -148,20 +164,27 @@ const props = defineProps({
148
164
  user: {
149
165
  type: String,
150
166
  },
167
+ accesses: {
168
+ type: Object,
169
+ default: null
170
+ },
151
171
  recommendation: {
152
172
  type: String
153
173
  }
154
174
  })
155
175
 
176
+
177
+
178
+ const route = useRoute()
179
+ const router = useRouter()
180
+
156
181
  // Computed properties
157
182
  const images = computed(() => {
158
183
  return props.product.images
159
184
  })
160
185
 
161
-
162
186
  const tabProduct = ref('description')
163
187
 
164
-
165
188
  const text = {
166
189
  messages: {
167
190
  en: {
@@ -179,11 +202,7 @@ const text = {
179
202
  }
180
203
  }
181
204
 
182
- // props.product.localization.forEach(localization => {
183
- // if (localization) text.messages[localization.locale].description = localization.text
184
- // })
185
-
186
- const { t } = useI18n(text)
205
+ const { t } = useI18n(text)
187
206
 
188
207
  // Methods
189
208
  function validateToCard(product) {
@@ -192,12 +211,18 @@ function validateToCard(product) {
192
211
  }
193
212
  return true
194
213
  }
195
-
196
- function addToCart(product) {
197
- if (shopcart.state.organization !== product.organization) {
198
- shopcart.state.positions = []
199
- shopcart.state.organization = product.organization
200
- }
201
- shopcart.actions.addProductToCart(product, product.organization)
214
+ async function addToCart(product) {
215
+ console.log(product)
216
+ try {
217
+ if (shopcart.state.organization !== product.owner.target) {
218
+ shopcart.state.organization = product.owner.target
219
+ shopcart.state.positions = []
220
+ }
221
+ await shopcart.actions.addProductToCart(product, product.owner.target)
222
+ return true // Make sure we return something
223
+ } catch (error) {
224
+ console.error('Ошибка при добавлении товара в корзину:', error)
225
+ throw error
226
+ }
202
227
  }
203
228
  </script>
@@ -28,8 +28,6 @@ import EditProductInfo from './components/sections/EditProductInfo.vue';
28
28
 
29
29
  // Elements
30
30
  import Price from './components/elements/Price.vue';
31
- import THC from './components/elements/THC.vue';
32
-
33
31
  // Pages
34
32
  import Product from './components/pages/Product.vue';
35
33
  import ProductEdit from './components/pages/ProductEdit.vue';
@@ -65,7 +63,6 @@ const ModuleProducts = {
65
63
  components: {
66
64
  // Elements
67
65
  Price,
68
- THC,
69
66
  // Blocks
70
67
  ImagesThumbnails,
71
68
  LeftoverPositions,
@@ -113,7 +110,6 @@ export {
113
110
  EditProductInfo,
114
111
  // Elements
115
112
  Price,
116
- THC,
117
113
  // Pages
118
114
  Product,
119
115
  ProductEdit,
@@ -3,16 +3,12 @@
3
3
  @import './scrolling';
4
4
  @import './shadow_transitions_hover_refactor';
5
5
 
6
- // *[disabled] {
7
- // opacity: 0.75;
8
- // pointer-events: none;
9
- // cursor: default;
10
- // }
11
6
 
12
7
  .disabled {
13
- opacity: 0.75;
14
- pointer-events: none;
15
- cursor: default;
8
+ opacity: 0.75 !important;
9
+ pointer-events: none !important;
10
+ cursor: default !important;
11
+ color: rgba(var(--black), 0.5) !important;
16
12
  }
17
13
 
18
14
  .unactive { opacity: 0.0; }
@@ -36,15 +32,17 @@
36
32
 
37
33
 
38
34
  body {
39
- .w-auto { width: auto !important; }
40
- .w-min { width: min-content !important; }
41
- .w-fit { width: fit-content !important; }
42
- .w-max { width: max-content !important; }
35
+ .bs-black-small { box-shadow: 0px 0px 17px -3px rgba(var(--black), 0.1); }
43
36
 
44
- .h-auto { height: auto !important; }
45
- .h-min { height: min-content !important; }
46
- .h-fit { height: fit-content !important; }
47
- .h-max { height: max-content !important; }
37
+ .w-auto { width: auto; }
38
+ .w-min { width: min-content; }
39
+ .w-fit { width: fit-content; }
40
+ .w-max { width: max-content; }
41
+
42
+ .h-auto { height: auto; }
43
+ .h-min { height: min-content; }
44
+ .h-fit { height: fit-content; }
45
+ .h-max { height: max-content; }
48
46
 
49
47
  .w-m-66r { width: min(100%, 66rem); }
50
48
  .w-m-60r { width: min(100%, 60rem); }
@@ -111,6 +109,7 @@ body {
111
109
  .t-transp { opacity: 0.5 }
112
110
  .t-violet { color: violet }
113
111
  .t-blue { color: #0057FF; }
112
+ .t-green { color: rgb(var(--green));; }
114
113
  .t-red { color: rgba(var(--red), 1);; }
115
114
  // WhiteSpace
116
115
  .t-nowrap { white-space: nowrap; }