@ozdao/martyrs 0.2.507 → 0.2.509

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 (348) hide show
  1. package/dist/{main-AWSb_d2P.cjs → main-D89N_jml.cjs} +1 -1
  2. package/dist/{main-Dq-UfO4G.js → main-DSiCr7yl.js} +7 -8
  3. package/dist/martyrs/src/components/Button/{Button.vue2.cjs → Button.vue.cjs} +3 -3
  4. package/dist/martyrs/src/components/Button/{Button.vue2.js.map → Button.vue.cjs.map} +1 -1
  5. package/dist/martyrs/src/components/Button/{Button.vue2.js → Button.vue.js} +3 -3
  6. package/dist/martyrs/src/components/Button/Button.vue.js.map +1 -0
  7. package/dist/martyrs/src/components/Chips/{Chips.vue2.cjs → Chips.vue.cjs} +2 -2
  8. package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +1 -0
  9. package/dist/martyrs/src/components/Chips/{Chips.vue2.js → Chips.vue.js} +2 -2
  10. package/dist/martyrs/src/components/Chips/Chips.vue.js.map +1 -0
  11. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.cjs → Dropdown.vue.cjs} +2 -2
  12. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.js.map → Dropdown.vue.cjs.map} +1 -1
  13. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue2.js → Dropdown.vue.js} +2 -2
  14. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +1 -0
  15. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +5 -4
  16. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs.map +1 -1
  17. package/dist/martyrs/src/components/Feed/Carousel.vue.js +6 -5
  18. package/dist/martyrs/src/components/Feed/Carousel.vue.js.map +1 -1
  19. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +2 -2
  20. package/dist/martyrs/src/components/Feed/Feed.vue.js +2 -2
  21. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +3 -3
  22. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs.map +1 -1
  23. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +3 -3
  24. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js.map +1 -1
  25. package/dist/martyrs/src/components/Loader/{Loader.vue.cjs → Loader.vue2.cjs} +2 -2
  26. package/dist/martyrs/src/components/Loader/Loader.vue2.cjs.map +1 -0
  27. package/dist/martyrs/src/components/Loader/{Loader.vue.js → Loader.vue2.js} +2 -2
  28. package/dist/martyrs/src/components/Loader/{Loader.vue.cjs.map → Loader.vue2.js.map} +1 -1
  29. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.cjs +1 -1
  30. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.js +1 -1
  31. package/dist/martyrs/src/components/Menu/{Menu.vue.cjs → Menu.vue2.cjs} +2 -2
  32. package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +1 -0
  33. package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
  34. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
  35. package/dist/martyrs/src/components/Select/{Select.vue.cjs → Select.vue2.cjs} +2 -2
  36. package/dist/martyrs/src/components/Select/Select.vue2.cjs.map +1 -0
  37. package/dist/martyrs/src/components/Select/{Select.vue.js → Select.vue2.js} +2 -2
  38. package/dist/martyrs/src/components/Select/{Select.vue.cjs.map → Select.vue2.js.map} +1 -1
  39. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +1 -1
  40. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +1 -1
  41. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  42. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  43. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  44. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  45. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +3 -3
  46. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +3 -3
  47. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +19 -13
  48. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
  49. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +20 -14
  50. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
  51. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +1 -1
  52. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
  53. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -1
  54. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
  55. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  56. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  57. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  58. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  59. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  60. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  61. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  62. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  63. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.cjs +1 -1
  64. package/dist/martyrs/src/modules/community/components/blocks/CardBlogpost.vue.js +1 -1
  65. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +1 -1
  66. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +1 -1
  67. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +3 -3
  68. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +3 -3
  69. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  70. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  71. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.cjs +1 -1
  72. package/dist/martyrs/src/modules/events/components/blocks/CardEvent.vue.js +1 -1
  73. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  74. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  75. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  76. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  77. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  78. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  79. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  80. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  81. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +3 -3
  82. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +3 -3
  83. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs +1 -1
  84. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
  85. package/dist/martyrs/src/modules/events/components/sections/List.vue.cjs +1 -1
  86. package/dist/martyrs/src/modules/events/components/sections/List.vue.js +1 -1
  87. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
  88. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
  89. package/dist/martyrs/src/modules/globals/globals.client.cjs +3 -0
  90. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  91. package/dist/martyrs/src/modules/globals/globals.client.js +15 -12
  92. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  93. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
  94. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
  95. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs +1 -1
  96. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js +1 -1
  97. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +2 -2
  98. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +2 -2
  99. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -2
  100. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +2 -2
  101. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs +335 -0
  102. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs.map +1 -0
  103. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js +335 -0
  104. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js.map +1 -0
  105. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +3 -3
  106. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs.map +1 -1
  107. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +3 -3
  108. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js.map +1 -1
  109. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
  110. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
  111. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
  112. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
  113. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.cjs +3 -3
  114. package/dist/martyrs/src/modules/icons/logos/Logotype.vue.js +3 -3
  115. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +1 -1
  116. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
  117. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +1 -1
  118. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
  119. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs +138 -136
  120. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs.map +1 -1
  121. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +137 -135
  122. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js.map +1 -1
  123. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +3 -3
  124. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +3 -3
  125. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
  127. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs +1 -1
  128. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +1 -1
  129. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.cjs +1 -1
  130. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +1 -1
  131. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs +1 -1
  132. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +1 -1
  133. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.cjs +1 -1
  134. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
  135. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +2 -2
  136. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +2 -2
  137. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +3 -3
  138. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +3 -3
  139. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +1 -1
  140. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
  141. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +1 -1
  143. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +2 -2
  144. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +2 -2
  145. package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +3 -3
  146. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +3 -3
  147. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs +2 -2
  148. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +2 -2
  149. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +1 -1
  150. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
  151. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +3 -3
  152. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +3 -3
  153. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs +2 -2
  154. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +2 -2
  155. package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +3 -3
  156. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +3 -3
  157. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs +1 -1
  158. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
  159. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs +1 -1
  160. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +1 -1
  161. package/dist/martyrs/src/modules/music/router/music.cjs +2 -2
  162. package/dist/martyrs/src/modules/music/router/music.js +2 -2
  163. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +2 -2
  164. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +2 -2
  165. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +62 -10
  166. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs.map +1 -1
  167. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +62 -10
  168. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js.map +1 -1
  169. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs +2 -2
  170. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +2 -2
  171. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +2 -2
  172. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +2 -2
  173. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
  174. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  175. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
  176. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
  177. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.cjs +1 -1
  178. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +1 -1
  179. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.cjs +1 -1
  180. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +1 -1
  181. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +2 -2
  182. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
  183. package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
  184. package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
  185. package/dist/martyrs/src/modules/orders/orders.client.cjs +36 -38
  186. package/dist/martyrs/src/modules/orders/orders.client.cjs.map +1 -1
  187. package/dist/martyrs/src/modules/orders/orders.client.js +36 -38
  188. package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
  189. package/dist/martyrs/src/modules/orders/store/models/customer.cjs +7 -0
  190. package/dist/martyrs/src/modules/orders/store/models/customer.cjs.map +1 -1
  191. package/dist/martyrs/src/modules/orders/store/models/customer.js +7 -0
  192. package/dist/martyrs/src/modules/orders/store/models/customer.js.map +1 -1
  193. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.cjs +1 -1
  194. package/dist/martyrs/src/modules/organizations/components/blocks/CardOrganization.vue.js +1 -1
  195. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  196. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  197. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +3 -3
  198. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +3 -3
  199. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  200. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
  201. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +126 -16
  202. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
  203. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +128 -18
  204. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  205. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
  206. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
  207. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  208. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  209. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
  210. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  211. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +2 -2
  212. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
  213. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
  214. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  215. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +17 -28
  216. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -1
  217. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +17 -28
  218. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -1
  219. package/dist/martyrs/src/modules/organizations/organizations.client.cjs +0 -3
  220. package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +1 -1
  221. package/dist/martyrs/src/modules/organizations/organizations.client.js +36 -39
  222. package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
  223. package/dist/martyrs/src/modules/organizations/router/organizations.cjs +1 -1
  224. package/dist/martyrs/src/modules/organizations/router/organizations.js +1 -1
  225. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  226. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  227. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  228. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  229. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
  230. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  231. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +1 -1
  232. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +1 -1
  233. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.cjs +1 -1
  234. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js +1 -1
  235. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs +9 -1
  236. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.cjs.map +1 -1
  237. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js +9 -1
  238. package/dist/martyrs/src/modules/products/components/elements/QuantitySelector.vue.js.map +1 -1
  239. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  240. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  241. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +4 -4
  242. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +4 -4
  243. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +2 -2
  244. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  245. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +2 -2
  246. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  247. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
  248. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
  249. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +1 -1
  250. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +1 -1
  251. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +3 -2
  252. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  253. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +3 -2
  254. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  255. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
  256. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
  257. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +2 -2
  258. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +2 -2
  259. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +2 -2
  260. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
  261. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +1 -1
  262. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
  263. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs +10 -5
  264. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs.map +1 -1
  265. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js +10 -5
  266. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js.map +1 -1
  267. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +6 -3
  268. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs.map +1 -1
  269. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +6 -3
  270. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -1
  271. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  272. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  273. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +2 -2
  274. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +2 -2
  275. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +2 -2
  276. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  277. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.cjs +1 -1
  278. package/dist/martyrs/src/modules/spots/components/blocks/CardSpot.vue.js +1 -1
  279. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
  280. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
  281. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
  282. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  283. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
  284. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  285. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  286. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  287. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +2 -2
  288. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +2 -2
  289. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
  290. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
  291. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +4 -4
  292. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +4 -4
  293. package/dist/martyrs.cjs.js +1 -1
  294. package/dist/martyrs.css +1 -1
  295. package/dist/martyrs.es.js +1 -1
  296. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.cjs +1 -1
  297. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +1 -1
  298. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.cjs +1 -1
  299. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +1 -1
  300. package/dist/orders.server.cjs +58 -0
  301. package/dist/orders.server.js +58 -0
  302. package/dist/products.server.cjs +11 -1
  303. package/dist/products.server.js +11 -1
  304. package/dist/style.css +34 -32
  305. package/dist/{web-DaBwwCQ5.cjs → web-XyQNm3cW.cjs} +1 -1
  306. package/dist/{web-BXajFCU2.js → web-gtBkwjra.js} +1 -1
  307. package/package.json +1 -1
  308. package/src/components/Feed/Carousel.vue +3 -1
  309. package/src/components/FieldBig/FieldBig.vue +2 -2
  310. package/src/modules/auth/views/components/pages/ProfileEdit.vue +18 -11
  311. package/src/modules/globals/globals.client.js +3 -0
  312. package/src/modules/globals/views/components/partials/{FooterAlt.vue → Footer.centered.vue} +101 -99
  313. package/src/modules/globals/views/components/partials/Footer.vue +321 -162
  314. package/src/modules/globals/views/components/partials/Header.vue +1 -1
  315. package/src/modules/icons/logos/Logotype.vue +1 -1
  316. package/src/modules/inventory/components/pages/Inventory.vue +126 -119
  317. package/src/modules/orders/components/forms/FormCustomerDetails.vue +51 -0
  318. package/src/modules/orders/middlewares/customers.verifier.js +60 -0
  319. package/src/modules/orders/models/customer.model.js +18 -0
  320. package/src/modules/orders/orders.client.js +36 -38
  321. package/src/modules/orders/store/models/customer.js +7 -0
  322. package/src/modules/organizations/components/pages/Organization.vue +146 -6
  323. package/src/modules/organizations/configs/navigation.organization.config.js +17 -26
  324. package/src/modules/organizations/organizations.client.js +0 -3
  325. package/src/modules/products/TASKS.MD +1 -157
  326. package/src/modules/products/components/elements/QuantitySelector.vue +17 -9
  327. package/src/modules/products/components/pages/Product.vue +1 -1
  328. package/src/modules/products/components/pages/Products.vue +5 -2
  329. package/src/modules/products/components/sections/ProductsPopular.vue +9 -5
  330. package/src/modules/products/components/sections/ProductsRecommended.vue +4 -1
  331. package/src/modules/products/controllers/configs/products.lookup.config.js +11 -1
  332. package/src/styles/base/all.scss +9 -4
  333. package/src/styles/config.scss +10 -0
  334. package/src/styles/responsive.scss +2 -1
  335. package/src/styles/typography.scss +0 -5
  336. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +0 -1
  337. package/dist/martyrs/src/components/Chips/Chips.vue2.cjs.map +0 -1
  338. package/dist/martyrs/src/components/Chips/Chips.vue2.js.map +0 -1
  339. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +0 -1
  340. package/dist/martyrs/src/components/Loader/Loader.vue.js.map +0 -1
  341. package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +0 -1
  342. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
  343. package/dist/martyrs/src/components/Select/Select.vue.js.map +0 -1
  344. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +0 -137
  345. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs.map +0 -1
  346. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +0 -137
  347. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js.map +0 -1
  348. package/src/modules/organizations/components/sections/DetailsTabSection.vue +0 -190
@@ -4,11 +4,133 @@
4
4
  <!-- <Breadcrumbs class="mn-b-thin pd-medium bg-light radius-big"/> -->
5
5
  <!-- <pre>{{organization.state.current}}</pre> -->
6
6
 
7
- <DetailsTabSection
8
- :organization="organization.state.current"
9
- :user="auth.state.user"
10
- class="mn-b-thin"
11
- />
7
+ <section class="flex-center flex flex-column t-center pd-medium radius-medium bg-light mn-b-thin">
8
+
9
+ <Dropdown
10
+ v-if="auth.state.user._id !== organization.state.current.owner"
11
+ :label="{ component: IconEllipsis, class: 'i-regular t-transp' }"
12
+ :align="'right'"
13
+ class="cursor-pointer pos-absolute pos-r-regular pos-t-regular pd-thin radius-extra "
14
+ >
15
+ <section
16
+ class="bg-black pd-thin radius-small"
17
+ >
18
+ <FormReport
19
+ :user="auth.state.user._id"
20
+ :type="'organization'"
21
+ :target="organization.state.current._id"
22
+ :text="'Report'"
23
+ class="w-100"
24
+ >
25
+ <button
26
+ class="w-100 bg-black br-solid br-1px br-white-transp-20 t-white button-small button"
27
+ >
28
+ Report
29
+ </button>
30
+ </FormReport>
31
+
32
+ <ButtonToggleMembership
33
+ v-if="auth.state.user._id && auth.state.user._id !== organization.state.current.owner"
34
+ :user="auth.state.user._id"
35
+ :type="'organization'"
36
+ :role="'blocked'"
37
+ :target="organization.state.current._id"
38
+ :status="organization.state.current.isBlocked"
39
+ :text="{create: 'Block', remove: 'Unblock'}"
40
+ @updateMembership="event => handleMembershipUpdate(event, 'isBlocked')"
41
+ class="t-white w-100 mn-t-thin bg-red"
42
+ />
43
+ </section>
44
+ </Dropdown>
45
+
46
+ <router-link
47
+ v-if="auth.state.user._id === organization.state.current.owner"
48
+ :to="{
49
+ name: 'Organization Edit',
50
+ params: {
51
+ _id: organization.state.current._id
52
+ }
53
+ }"
54
+ class="
55
+ z-index-2
56
+ cursor-pointer
57
+ pos-absolute pos-t-regular pos-r-regular
58
+ radius-extra pd-thin bg-second
59
+ "
60
+ >
61
+ <IconEdit
62
+ class="i-regular"
63
+ classes="fill-white"
64
+ />
65
+ </router-link>
66
+
67
+
68
+ <img loading="lazy"
69
+ v-if="organization.state.current.profile.photo"
70
+ :src="(FILE_SERVER_URL || '') + organization.state.current.profile.photo"
71
+ class="radius-big bg-light flex-center flex mn-b-small w-8r"
72
+ />
73
+
74
+ <PlaceholderOrganizationPic
75
+ v-else
76
+ class="radius-medium mn-b-small i-extra"
77
+ />
78
+
79
+ <h1
80
+ class="mn-b-thin"
81
+ >
82
+ {{ organization.state.current.profile.name }}
83
+ </h1>
84
+
85
+ <div class="flex-center pd-r-thin pd-l-thin flex-nowrap flex mn-t-thin bg-white radius-extra w-max">
86
+ <IconFollowing class="i-medium mn-r-micro t-transp"/>
87
+
88
+ <p class="mn-t-thin p-medium t-medium uppercase mn-b-thin">{{organization.state.current.numberOfSubscribers}} followers</p>
89
+
90
+ <ButtonToggleMembership
91
+ v-if="
92
+ auth.state.user._id
93
+ && route.params._id
94
+ && route.params._id !== auth.state.user._id
95
+ && organization.state.current.owner !== auth.state.user._id
96
+ "
97
+ :user="auth.state.user._id"
98
+ :type="'organization'"
99
+ :role="'subscriber'"
100
+ :target="organization.state.current._id"
101
+ :status="organization.state.current.isSubscriber"
102
+ :text="{create: '+', remove: '-'}"
103
+ @updateMembership="event => handleMembershipUpdate(event, 'isSubscriber', 'numberOfSubscribers')"
104
+ class=" mn-l-thin p-medium t-medium radius-extra i-semi"
105
+ />
106
+ </div>
107
+
108
+ <!-- <p class="w-max-50r mn-t-regular mn-b-medium p-semi">
109
+ <Text :text="organization.profile.description || ''" :showToggleText="true" :maxLen="320" />
110
+ </p> -->
111
+
112
+ <Chips
113
+ v-if="organization.state.current.profile?.tags?.length > 0"
114
+ :chips="organization.state.current.profile.tags"
115
+ class="p-medium"
116
+ />
117
+
118
+
119
+ <h4
120
+ v-if="Object.values(organization.state.current.socials).some(value => value)"
121
+ class="mn-t-small mn-b-thin"
122
+ >
123
+ Find us in socials
124
+ </h4>
125
+
126
+ <Socials
127
+ :telegram="organization.state.current.socials.telegram"
128
+ :facebook="organization.state.current.socials.facebook"
129
+ :instagram="organization.state.current.socials.instagram"
130
+ :twitter="organization.state.current.socials.twitter"
131
+ :youtube="organization.state.current.socials.youtube"
132
+ />
133
+ </section>
12
134
 
13
135
  <!-- Organization Info Section -->
14
136
  <div class="pos-relative">
@@ -31,13 +153,26 @@
31
153
  // Import components
32
154
  import Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'
33
155
  import Block from '@martyrs/src/components/Block/Block.vue'
156
+ import Dropdown from "@martyrs/src/components/Dropdown/Dropdown.vue";
157
+ import Text from '@martyrs/src/components/Text/Text.vue'
158
+ import Chips from '@martyrs/src/components/Chips/Chips.vue'
34
159
  // Mobile Module
35
160
  import Menu from '@martyrs/src/components/Menu/Menu.vue'
36
161
  import MenuItem from '@martyrs/src/components/Menu/MenuItem.vue'
162
+ // Icons
163
+ import IconFollowing from '@martyrs/src/modules/icons/entities/IconFollowing.vue'
164
+ import IconEdit from '@martyrs/src/modules/icons/navigation/IconEdit.vue'
165
+ import IconEllipsis from '@martyrs/src/modules/icons/navigation/IconEllipsis.vue'
166
+ import PlaceholderOrganizationPic from '@martyrs/src/modules/icons/placeholders/PlaceholderOrganizationPic.vue'
37
167
  // Organizations
38
168
  import DepartmentSub from '@martyrs/src/modules/organizations/components/blocks/DepartmentSub.vue';
39
- import DetailsTabSection from '@martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue'
169
+ import ButtonToggleMembership from '@martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue'
170
+ import Contacts from '@martyrs/src/modules/organizations/components/blocks/Contacts.vue'
171
+ import Rating from '@martyrs/src/modules/organizations/components/blocks/Rating.vue'
172
+ import Socials from '@martyrs/src/modules/organizations/components/blocks/Socials.vue'
40
173
  import User from '@martyrs/src/modules/auth/views/components/blocks/CardUser.vue';
174
+ // Report Module
175
+ import FormReport from '@martyrs/src/modules/reports/components/sections/FormReport.vue'
41
176
  // Import state
42
177
  import * as auth from '@martyrs/src/modules/auth/views/store/auth.js';
43
178
  import * as organization from '@martyrs/src/modules/organizations/store/organizations.js';
@@ -69,6 +204,11 @@
69
204
  });
70
205
  }
71
206
  })
207
+
208
+ // Methods
209
+ const handleMembershipUpdate = ({ membership, status, target }, statusName, statusNumber) => {
210
+ memberships.mutations.handleMembershipUpdate(organization.state.current, membership, status, target, statusName, statusNumber)
211
+ };
72
212
  </script>
73
213
 
74
214
  <style lang="scss">
@@ -110,7 +110,13 @@ export const navigationItems = [
110
110
  },
111
111
  {
112
112
  category: 'Management',
113
- visible: (auth, route) => auth.state && auth.state.user && auth.state.user._id, // Only for authenticated users
113
+ visible: (auth, route) => hasAccess(
114
+ route.params._id,
115
+ 'products',
116
+ 'read',
117
+ auth.accesses,
118
+ auth.access.roles
119
+ ),
114
120
  items: [
115
121
  {
116
122
  title: 'Categories',
@@ -161,7 +167,13 @@ export const navigationItems = [
161
167
  },
162
168
  {
163
169
  category: 'Orders & Sales',
164
- visible: (auth, route) => auth.state && auth.state.user && auth.state.user._id, // Only for authenticated users
170
+ visible: (auth, route) => hasAccess(
171
+ route.params._id,
172
+ 'orders',
173
+ 'read',
174
+ auth.accesses,
175
+ auth.access.roles
176
+ ),
165
177
  items: [
166
178
  {
167
179
  title: 'Orders',
@@ -169,14 +181,7 @@ export const navigationItems = [
169
181
  route: (auth, route) => ({
170
182
  name: 'OrganizationOrdersList',
171
183
  params: { _id: route.params._id }
172
- }),
173
- visible: (auth, route) => hasAccess(
174
- route.params._id,
175
- 'orders',
176
- 'read',
177
- auth.accesses,
178
- auth.access.roles
179
- )
184
+ })
180
185
  },
181
186
  {
182
187
  title: 'Customers',
@@ -184,14 +189,7 @@ export const navigationItems = [
184
189
  route: (auth, route) => ({
185
190
  name: 'OrganizationCustomers',
186
191
  params: { _id: route.params._id }
187
- }),
188
- visible: (auth, route) => hasAccess(
189
- route.params._id,
190
- 'orders',
191
- 'read',
192
- auth.accesses,
193
- auth.access.roles
194
- )
192
+ })
195
193
  },
196
194
  {
197
195
  title: 'Applications',
@@ -199,14 +197,7 @@ export const navigationItems = [
199
197
  route: (auth, route) => ({
200
198
  name: 'OrganizationApplications',
201
199
  params: { _id: route.params._id }
202
- }),
203
- visible: (auth, route) => hasAccess(
204
- route.params._id,
205
- 'orders',
206
- 'read',
207
- auth.accesses,
208
- auth.access.roles
209
- )
200
+ })
210
201
  },
211
202
  ]
212
203
  },
@@ -26,7 +26,6 @@ import Socials from './components/blocks/Socials.vue';
26
26
  import Unit from './components/blocks/Unit.vue';
27
27
 
28
28
  // Sections
29
- import DetailsTabSection from './components/sections/DetailsTabSection.vue';
30
29
  import Documents from './components/sections/Documents.vue';
31
30
  import MembersAdd from './components/sections/MembersAdd.vue';
32
31
  import OrganizationsSection from './components/sections/Organizations.vue';
@@ -56,7 +55,6 @@ export {
56
55
  Department,
57
56
  DepartmentEdit,
58
57
  DepartmentSub,
59
- DetailsTabSection,
60
58
  Documents,
61
59
  EmptyState,
62
60
  MembersAdd,
@@ -105,7 +103,6 @@ const ModuleOrganization = {
105
103
  Socials,
106
104
  // Sections
107
105
  MembersAdd,
108
- DetailsTabSection,
109
106
  OrganizationsSection,
110
107
  Publics,
111
108
  Documents,
@@ -1,157 +1 @@
1
- теперь добавь фильтрацию по выбранному периоду на фронте и беке. На фронте в lookups надо добавить rents в случае если есть период (чтобы не грузить лишний раз), в products.lookup.config
2
- добавить rents и добавить в product.query фильтрацию по доступности с учетом quantityЖ Для фильтрации доступных товаров при агрегации на основе аренд, вам нужно использовать $lookup для
3
- проверки пересечений с активными арендами. Вот пример агрегации:
4
-
5
- javascript
6
- const checkAvailability = async (startDate, endDate) => {
7
- const pipeline = [
8
- // Фильтр по нужным критериям товаров
9
- {
10
- $match: {
11
- listing: 'rent',
12
- status: 'active' // или другие условия
13
- }
14
- },
15
-
16
- // Присоединяем аренды для каждого товара
17
- {
18
- $lookup: {
19
- from: 'rents',
20
- let: { productId: '$_id' },
21
- pipeline: [
22
- {
23
- $match: {
24
- $expr: {
25
- $and: [
26
- { $eq: ['$product', '$productId'] },
27
- // Только активные аренды
28
- { $in: ['$status', ['confirmed', 'active']] },
29
- // Проверка пересечения дат
30
- {
31
- $or: [
32
- // Аренда начинается в запрашиваемый период
33
- {
34
- $and: [
35
- { $gte: ['$startDate', new Date(startDate)] },
36
- { $lte: ['$startDate', new Date(endDate)] }
37
- ]
38
- },
39
- // Аренда заканчивается в запрашиваемый период
40
- {
41
- $and: [
42
- { $gte: ['$endDate', new Date(startDate)] },
43
- { $lte: ['$endDate', new Date(endDate)] }
44
- ]
45
- },
46
- // Аренда полностью покрывает запрашиваемый период
47
- {
48
- $and: [
49
- { $lte: ['$startDate', new Date(startDate)] },
50
- { $gte: ['$endDate', new Date(endDate)] }
51
- ]
52
- }
53
- ]
54
- }
55
- ]
56
- }
57
- }
58
- }
59
- ],
60
- as: 'activeRents'
61
- }
62
- },
63
-
64
- // Фильтруем только доступные товары
65
- {
66
- $match: {
67
- activeRents: { $size: 0 } // Нет активных аренд в этот период
68
- }
69
- },
70
-
71
- // Убираем поле activeRents из результата
72
- {
73
- $project: {
74
- activeRents: 0
75
- }
76
- }
77
- ];
78
-
79
- return await Product.aggregate(pipeline);
80
- };
81
- Если у вас товары могут иметь количество (например, несколько единиц одного товара), то нужно модифицировать логику:
82
-
83
- javascript
84
- const checkAvailabilityWithQuantity = async (startDate, endDate, requestedQuantity = 1) => {
85
- const pipeline = [
86
- {
87
- $match: {
88
- listing: 'rent',
89
- status: 'active'
90
- }
91
- },
92
-
93
- {
94
- $lookup: {
95
- from: 'rents',
96
- let: { productId: '$_id' },
97
- pipeline: [
98
- {
99
- $match: {
100
- $expr: {
101
- $and: [
102
- { $eq: ['$product', '$productId'] },
103
- { $in: ['$status', ['confirmed', 'active']] },
104
- // Проверка пересечения дат (та же логика)
105
- ]
106
- }
107
- }
108
- },
109
- // Суммируем количество в активных арендах
110
- {
111
- $group: {
112
- _id: null,
113
- totalRented: { $sum: '$quantity' }
114
- }
115
- }
116
- ],
117
- as: 'rentInfo'
118
- }
119
- },
120
-
121
- // Добавляем поле с доступным количеством
122
- {
123
- $addFields: {
124
- rentedQuantity: {
125
- $ifNull: [{ $arrayElemAt: ['$rentInfo.totalRented', 0] }, 0]
126
- },
127
- availableQuantity: {
128
- $subtract: [
129
- { $ifNull: ['$quantity', 1] }, // quantity товара или 1 по умолчанию
130
- { $ifNull: [{ $arrayElemAt: ['$rentInfo.totalRented', 0] }, 0] }
131
- ]
132
- }
133
- }
134
- },
135
-
136
- // Фильтруем товары с достаточным количеством
137
- {
138
- $match: {
139
- availableQuantity: { $gte: requestedQuantity }
140
- }
141
- },
142
-
143
- // Убираем временные поля
144
- {
145
- $project: {
146
- rentInfo: 0,
147
- rentedQuantity: 0
148
- }
149
- }
150
- ];
151
-
152
- return await Product.aggregate(pipeline);
153
- };
154
-
155
-
156
-
157
- сделать нужно минималистично и ничего кроме этого
1
+ ПРОВЕРИТЬ РАБОТУ ИНГРЕДИЕНТОВ НА БЕКЕНДЕ И ФРОНТЕНДЕ
@@ -8,15 +8,15 @@
8
8
  >
9
9
  <span class="i-regular">-</span>
10
10
  </button>
11
-
12
11
  <div class="radius-small br-solid br-1px br-light w-3r pd-small">
13
- <input
14
- type="number"
15
- v-model.number="modelValue"
16
- class="w-100 h-1r t-center"
17
- :min="1"
18
- :max="maxValue"
19
- />
12
+ <input
13
+ type="number"
14
+ v-model.number="modelValue"
15
+ @input="validateInput"
16
+ class="w-100 h-1r t-center"
17
+ :min="1"
18
+ :max="maxValue"
19
+ />
20
20
  </div>
21
21
  <button
22
22
  @click="incrementQuantity"
@@ -38,6 +38,14 @@ const props = defineProps({
38
38
 
39
39
  const modelValue = defineModel();
40
40
 
41
+ function validateInput() {
42
+ if (modelValue.value < 1) {
43
+ modelValue.value = 1;
44
+ } else if (modelValue.value > props.maxValue) {
45
+ modelValue.value = props.maxValue;
46
+ }
47
+ }
48
+
41
49
  function incrementQuantity() {
42
50
  if (modelValue.value < props.maxValue) {
43
51
  modelValue.value++;
@@ -49,4 +57,4 @@ function decrementQuantity() {
49
57
  modelValue.value--;
50
58
  }
51
59
  }
52
- </script>
60
+ </script>
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div v-if="products.state.current" class="w-100 mobile:pd-thin pd-small bg-white">
3
- <div class="cols-2 mobile:cols-1 w-100 gap-medium">
3
+ <div class="cols-2 mobile:cols-1 tablet:cols-1 w-100 gap-medium">
4
4
 
5
5
  <ProductImages
6
6
  :images="currentImages"
@@ -69,7 +69,6 @@
69
69
  </template>
70
70
  </Spoiler>
71
71
 
72
-
73
72
  <!-- Цена за сутки -->
74
73
  <Spoiler
75
74
  class="o-hidden mn-b-medium"
@@ -152,6 +151,7 @@
152
151
  <Filters
153
152
  v-model:filters="availableFilters"
154
153
  v-model:selected="selectedFilters"
154
+ class="mn-b-thin mobile-only"
155
155
  />
156
156
  <slot></slot>
157
157
  <!-- <div class="pos-relative w-100 z-index-3 radius-tl-big radius-tr-big">
@@ -161,7 +161,8 @@
161
161
  class="bg-light mn-b-thin h-4r"
162
162
  />
163
163
  </div> -->
164
- <div class="mn-b-thin w-100 o-y-scroll scroll-hide scroll-snap-type-x-mandatory scroll-pd-regular">
164
+
165
+ <div class="mn-b-thin mobile-only w-100 o-y-scroll scroll-hide scroll-snap-type-x-mandatory scroll-pd-regular">
165
166
  <div class="gap-thin flex-nowrap flex">
166
167
  <div
167
168
  v-for="category in currentCategories"
@@ -173,6 +174,8 @@
173
174
  </div>
174
175
  </div>
175
176
  </div>
177
+
178
+
176
179
  <Feed
177
180
  :search="true"
178
181
  v-model:filter="products.state.filter"
@@ -1,18 +1,23 @@
1
1
  <template>
2
2
  <Carousel
3
3
  :store="{
4
- read: products.actions.read
4
+ read: (options) => products.actions.read(options)
5
5
  }"
6
6
  :options="{
7
- limit: 10
7
+ limit: 16,
8
+ sortParam: 'popularity',
9
+ owner: $route.name?.includes('Organization') ? $route.params._id : null,
10
+ lookup: ['variants'],
8
11
  }"
9
12
  :text="{ title: 'No products available' }"
10
13
  :showDots="true"
11
14
  class="popupar_products"
15
+ v-slot="{
16
+ item
17
+ }"
12
18
  >
13
- <template #default="{ item }">
14
19
  <router-link
15
- :to="{ name: 'Organization_Product', params: { _id: item.owner.target, product: item._id } }"
20
+ :to="{ name: 'Organization_Product', params: { _id: item.owner.target._id || item.owner.target, product: item._id } }"
16
21
  class="h-100 pos-relative block"
17
22
  >
18
23
  <CardProduct
@@ -20,7 +25,6 @@
20
25
  class="h-max-40r h-100 bg-light"
21
26
  />
22
27
  </router-link>
23
- </template>
24
28
  </Carousel>
25
29
  </template>
26
30
 
@@ -139,7 +139,7 @@ const addSelectedToCart = async () => {
139
139
  <template>
140
140
  <div>
141
141
  <h3 class="mn-b-small">Frequently Bought Together</h3>
142
- <div class="recommended-products cols-4 mobile:cols-2 gap-thin">
142
+ <div class="recommended-products cols-4 rows-auto-1fr mobile:cols-2 gap-thin">
143
143
 
144
144
  <CardProduct
145
145
  v-for="(product, index) in products"
@@ -166,7 +166,10 @@ const addSelectedToCart = async () => {
166
166
  <p class="mn-b-small">Total price:</p>
167
167
  <p class="mn-b-medium h3 t-medium">${{ totalPrice }}</p>
168
168
  <Button
169
+ :disabled="selectedProducts.length < 1"
169
170
  class="bg-main gap-micro"
171
+ :showSuccess="false"
172
+ :showLoader="false"
170
173
  :submit="canAddToCart ? addSelectedToCart : undefined"
171
174
  >
172
175
  <IconShopcartAdd class="i-semi"/>
@@ -81,7 +81,17 @@ export default {
81
81
  from: 'products',
82
82
  localField: 'recommended',
83
83
  foreignField: '_id',
84
- as: 'recommended'
84
+ as: 'recommended',
85
+ pipeline: [
86
+ {
87
+ $lookup: {
88
+ from: 'variants',
89
+ localField: '_id',
90
+ foreignField: 'product',
91
+ as: 'variants'
92
+ }
93
+ }
94
+ ]
85
95
  }
86
96
  },
87
97
  // Лукап для категорий продукта
@@ -259,10 +259,15 @@ body {
259
259
  }
260
260
  .rows-1 {display: grid; grid-template-columns: 100%; grid-auto-rows: minmax(auto, max-content); }
261
261
  .rows-1-min0_max1 {display: grid; grid-template-rows: minmax(0, 1fr); }
262
- .rows-auto { grid-auto-flow: row;
263
- grid-auto-columns: auto;
264
- grid-template-rows: auto;
265
- grid-auto-rows: auto;}
262
+ .rows-auto {
263
+ grid-auto-flow: row;
264
+ grid-auto-columns: auto;
265
+ grid-template-rows: auto;
266
+ grid-auto-rows: auto;
267
+ }
268
+ .rows-auto-1fr {
269
+ grid-auto-rows: 1fr;
270
+ }
266
271
  // REFACTOR THIS SHIT
267
272
  .grid {
268
273
  display: grid;
@@ -336,6 +336,12 @@ $display-values: (
336
336
  'table-cell': table-cell
337
337
  );
338
338
 
339
+ $text-align-values: (
340
+ 'left': left,
341
+ 'center': center,
342
+ 'right': right,
343
+ );
344
+
339
345
  $order: (
340
346
  '1': 1,
341
347
  '2': 2,
@@ -395,6 +401,10 @@ body {
395
401
  @include generate-utility-classes('o-y', 'overflow-y', null, $overflow-xy-values, $breakpoints);
396
402
  @include generate-utility-classes('d', 'display', null, $display-values, $breakpoints);
397
403
 
404
+ /* Typography */
405
+ @include generate-utility-classes('t', 'text-align', null, $text-align-values, $breakpoints);
406
+
407
+
398
408
 
399
409
  @include generate-utility-classes('cols', 'grid-template-columns', null, $cols, $breakpoints);
400
410
 
@@ -65,7 +65,8 @@ $xxl-desktop-min: 1921px;
65
65
  }
66
66
 
67
67
  // Cols
68
- .cols-1, .cols-2, .cols-4, .cols-2-2_1, .cols-2-1_2, .cols-2-1_3, .cols-2-golden-ration { display: grid !important; grid-template-columns: 1fr !important; }
68
+ /* .cols-2,*/
69
+ .cols-1, .cols-4, .cols-2-2_1, .cols-2-1_2, .cols-2-1_3, .cols-2-golden-ration { display: grid !important; grid-template-columns: 1fr !important; }
69
70
  .cols-4.no-responsive { grid-template-columns: 1fr 1fr 1fr 1fr !important }
70
71
  .cols-2 { >.col { width: 100% !important; } }
71
72
 
@@ -80,11 +80,6 @@ a:hover { cursor: pointer;}
80
80
  -ms-user-select: none; /* IE 10 and IE 11 */
81
81
  user-select: none; /* Standard syntax */
82
82
  }
83
- // Text align
84
-
85
- .t-left { text-align: left; }
86
- .t-center { text-align: center; }
87
- .t-right { text-align: right; }
88
83
  // Font weights
89
84
  .t-bold { font-weight: 900;}
90
85
  .t-demi { font-weight: 700;}