@ozdao/martyrs 0.2.506 → 0.2.508

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 (555) hide show
  1. package/dist/_virtual/index.cjs +4 -4
  2. package/dist/_virtual/index.js +4 -4
  3. package/dist/_virtual/index2.cjs +4 -4
  4. package/dist/_virtual/index2.js +4 -4
  5. package/dist/auth.server.cjs +1 -1
  6. package/dist/auth.server.js +1 -1
  7. package/dist/builder.cjs +52 -60
  8. package/dist/builder.js +52 -60
  9. package/dist/chats.server.cjs +1 -1
  10. package/dist/chats.server.js +1 -1
  11. package/dist/events.server.cjs +1 -1
  12. package/dist/events.server.js +1 -1
  13. package/dist/{mailing-q7sR8gCV.cjs → mailing-Bs9ThyVZ.cjs} +1 -24
  14. package/dist/{mailing-C11EYWm-.js → mailing-DzlhsxCC.js} +1 -24
  15. package/dist/main-AWSb_d2P.cjs +11 -0
  16. package/dist/{main-DC__VS5b.js → main-Dq-UfO4G.js} +2562 -2477
  17. package/dist/martyrs/src/components/Button/Button.vue.cjs +1 -1
  18. package/dist/martyrs/src/components/Button/Button.vue.js +1 -1
  19. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs +3 -3
  20. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs.map +1 -1
  21. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js +3 -3
  22. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js.map +1 -1
  23. package/dist/martyrs/src/components/EditImages/EditImages.vue.cjs +0 -93
  24. package/dist/martyrs/src/components/EditImages/EditImages.vue.cjs.map +1 -1
  25. package/dist/martyrs/src/components/EditImages/EditImages.vue.js +1 -94
  26. package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +1 -1
  27. package/dist/martyrs/src/components/EditImages/EditImages.vue2.cjs +93 -0
  28. package/dist/martyrs/src/components/EditImages/EditImages.vue2.cjs.map +1 -1
  29. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js +94 -1
  30. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js.map +1 -1
  31. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +1 -1
  32. package/dist/martyrs/src/components/Feed/Carousel.vue.js +1 -1
  33. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +15 -46
  34. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  35. package/dist/martyrs/src/components/Feed/Feed.vue.js +22 -53
  36. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  37. package/dist/martyrs/src/components/Field/Field.vue.cjs +14 -6
  38. package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
  39. package/dist/martyrs/src/components/Field/Field.vue.js +14 -6
  40. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
  41. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +58 -11
  42. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs.map +1 -1
  43. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +60 -13
  44. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js.map +1 -1
  45. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs +1 -1
  46. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js +1 -1
  47. package/dist/martyrs/src/components/Loader/{Loader.vue.cjs → Loader.vue2.cjs} +2 -2
  48. package/dist/martyrs/src/components/Loader/Loader.vue2.cjs.map +1 -0
  49. package/dist/martyrs/src/components/Loader/{Loader.vue.js → Loader.vue2.js} +2 -2
  50. package/dist/martyrs/src/components/Loader/{Loader.vue.cjs.map → Loader.vue2.js.map} +1 -1
  51. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.cjs +1 -1
  52. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue2.js +1 -1
  53. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs +2 -2
  54. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs.map +1 -1
  55. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js +2 -2
  56. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js.map +1 -1
  57. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.cjs → Spoiler.vue2.cjs} +2 -2
  58. package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.cjs.map +1 -0
  59. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.js → Spoiler.vue2.js} +2 -2
  60. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.cjs.map → Spoiler.vue2.js.map} +1 -1
  61. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs → Tab.vue2.cjs} +2 -2
  62. package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +1 -0
  63. package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
  64. package/dist/martyrs/src/components/Tab/{Tab.vue.cjs.map → Tab.vue2.js.map} +1 -1
  65. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +1 -1
  66. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +1 -1
  67. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  68. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  69. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  70. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  71. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
  72. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
  73. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  74. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  75. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
  76. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  77. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +42 -10
  78. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
  79. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +44 -12
  80. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
  81. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +11 -15
  82. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs.map +1 -1
  83. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +21 -25
  84. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js.map +1 -1
  85. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +12 -16
  86. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs.map +1 -1
  87. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +33 -37
  88. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js.map +1 -1
  89. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs +13 -9
  90. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs.map +1 -1
  91. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js +13 -9
  92. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js.map +1 -1
  93. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  94. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  95. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  96. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  97. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  98. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  99. package/dist/martyrs/src/modules/auth/views/router/users.cjs +0 -4
  100. package/dist/martyrs/src/modules/auth/views/router/users.cjs.map +1 -1
  101. package/dist/martyrs/src/modules/auth/views/router/users.js +0 -4
  102. package/dist/martyrs/src/modules/auth/views/router/users.js.map +1 -1
  103. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +1 -1
  104. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
  105. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  106. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  107. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs +431 -0
  108. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs.map +1 -0
  109. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +431 -0
  110. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js.map +1 -0
  111. package/dist/martyrs/src/modules/community/router/blogposts.cjs +17 -0
  112. package/dist/martyrs/src/modules/community/router/blogposts.cjs.map +1 -1
  113. package/dist/martyrs/src/modules/community/router/blogposts.js +17 -0
  114. package/dist/martyrs/src/modules/community/router/blogposts.js.map +1 -1
  115. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  116. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  117. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +2 -4
  118. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs.map +1 -1
  119. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +2 -4
  120. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
  121. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
  122. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  123. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs +1 -1
  124. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
  125. package/dist/martyrs/src/modules/events/components/sections/List.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/events/components/sections/List.vue.js +1 -1
  127. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
  128. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +1 -1
  129. package/dist/martyrs/src/modules/globals/globals.client.cjs +3 -0
  130. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  131. package/dist/martyrs/src/modules/globals/globals.client.js +3 -0
  132. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  133. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.cjs +1 -1
  134. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.js +1 -1
  135. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.cjs +4 -6
  136. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.cjs.map +1 -1
  137. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.js +4 -6
  138. package/dist/martyrs/src/modules/globals/views/classes/globals.websocket.js.map +1 -1
  139. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue.cjs +1 -1
  140. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockFilter.vue.js +1 -1
  141. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs +5 -2
  142. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.cjs.map +1 -1
  143. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js +6 -3
  144. package/dist/martyrs/src/modules/globals/views/components/blocks/Card.vue.js.map +1 -1
  145. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
  146. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
  147. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +1 -1
  148. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +1 -1
  149. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -3
  150. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  151. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +2 -3
  152. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  153. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs +321 -0
  154. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs.map +1 -0
  155. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js +321 -0
  156. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js.map +1 -0
  157. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
  158. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
  159. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs +324 -0
  160. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs.map +1 -0
  161. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js +324 -0
  162. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js.map +1 -0
  163. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
  164. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
  165. package/dist/martyrs/src/modules/icons/entities/IconLock.vue.cjs +32 -0
  166. package/dist/martyrs/src/modules/icons/entities/IconLock.vue.cjs.map +1 -0
  167. package/dist/martyrs/src/modules/icons/entities/IconLock.vue.js +32 -0
  168. package/dist/martyrs/src/modules/icons/entities/IconLock.vue.js.map +1 -0
  169. package/dist/martyrs/src/modules/icons/icons.client.cjs +2 -0
  170. package/dist/martyrs/src/modules/icons/icons.client.cjs.map +1 -1
  171. package/dist/martyrs/src/modules/icons/icons.client.js +116 -114
  172. package/dist/martyrs/src/modules/icons/icons.client.js.map +1 -1
  173. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +5 -3
  174. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -1
  175. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +117 -115
  176. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
  177. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.cjs +1 -1
  178. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +1 -1
  179. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs +11 -36
  180. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs.map +1 -1
  181. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.js +11 -36
  182. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.js.map +1 -1
  183. package/dist/martyrs/src/modules/landing/landing.client.cjs +3 -0
  184. package/dist/martyrs/src/modules/landing/landing.client.cjs.map +1 -1
  185. package/dist/martyrs/src/modules/landing/landing.client.js +3 -0
  186. package/dist/martyrs/src/modules/landing/landing.client.js.map +1 -1
  187. package/dist/martyrs/src/modules/landing/locales/en.cjs +12 -0
  188. package/dist/martyrs/src/modules/landing/locales/en.cjs.map +1 -0
  189. package/dist/martyrs/src/modules/landing/locales/en.js +12 -0
  190. package/dist/martyrs/src/modules/landing/locales/en.js.map +1 -0
  191. package/dist/martyrs/src/modules/landing/locales/index.cjs +10 -0
  192. package/dist/martyrs/src/modules/landing/locales/index.cjs.map +1 -0
  193. package/dist/martyrs/src/modules/landing/locales/index.js +10 -0
  194. package/dist/martyrs/src/modules/landing/locales/index.js.map +1 -0
  195. package/dist/martyrs/src/modules/landing/locales/ru.cjs +12 -0
  196. package/dist/martyrs/src/modules/landing/locales/ru.cjs.map +1 -0
  197. package/dist/martyrs/src/modules/landing/locales/ru.js +12 -0
  198. package/dist/martyrs/src/modules/landing/locales/ru.js.map +1 -0
  199. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs +1 -1
  200. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
  201. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +1 -1
  202. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
  203. package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +2 -2
  204. package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs.map +1 -1
  205. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +2 -2
  206. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js.map +1 -1
  207. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs +1 -1
  208. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +1 -1
  209. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +2 -2
  210. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs.map +1 -1
  211. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +2 -2
  212. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js.map +1 -1
  213. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs +1 -1
  214. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +1 -1
  215. package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +2 -2
  216. package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs.map +1 -1
  217. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +2 -2
  218. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js.map +1 -1
  219. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs +1 -1
  220. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
  221. package/dist/martyrs/src/modules/music/router/music.cjs +2 -4
  222. package/dist/martyrs/src/modules/music/router/music.cjs.map +1 -1
  223. package/dist/martyrs/src/modules/music/router/music.js +2 -4
  224. package/dist/martyrs/src/modules/music/router/music.js.map +1 -1
  225. package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.cjs +1 -1
  226. package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.js +1 -1
  227. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.cjs +86 -0
  228. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.cjs.map +1 -0
  229. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.js +86 -0
  230. package/dist/martyrs/src/modules/orders/components/blocks/CardApplication.vue.js.map +1 -0
  231. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.cjs +103 -0
  232. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.cjs.map +1 -0
  233. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.js +103 -0
  234. package/dist/martyrs/src/modules/orders/components/blocks/CardCustomer.vue.js.map +1 -0
  235. package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs +194 -0
  236. package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.cjs.map +1 -0
  237. package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js +194 -0
  238. package/dist/martyrs/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue.js.map +1 -0
  239. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +138 -0
  240. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs.map +1 -0
  241. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +138 -0
  242. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js.map +1 -0
  243. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +189 -0
  244. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs.map +1 -0
  245. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +189 -0
  246. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js.map +1 -0
  247. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs +173 -0
  248. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs.map +1 -0
  249. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +173 -0
  250. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js.map +1 -0
  251. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.cjs +233 -0
  252. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.cjs.map +1 -0
  253. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js +233 -0
  254. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js.map +1 -0
  255. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.cjs +234 -0
  256. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.cjs.map +1 -0
  257. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js +234 -0
  258. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js.map +1 -0
  259. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +9 -8
  260. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
  261. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +9 -8
  262. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  263. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +8 -82
  264. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs.map +1 -1
  265. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +9 -83
  266. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js.map +1 -1
  267. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
  268. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  269. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.cjs +119 -0
  270. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.cjs.map +1 -0
  271. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +119 -0
  272. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js.map +1 -0
  273. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.cjs +139 -0
  274. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.cjs.map +1 -0
  275. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +139 -0
  276. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js.map +1 -0
  277. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +2 -4
  278. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs.map +1 -1
  279. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -4
  280. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js.map +1 -1
  281. package/dist/martyrs/src/modules/orders/locales/en.cjs +38 -0
  282. package/dist/martyrs/src/modules/orders/locales/en.cjs.map +1 -0
  283. package/dist/martyrs/src/modules/orders/locales/en.js +38 -0
  284. package/dist/martyrs/src/modules/orders/locales/en.js.map +1 -0
  285. package/dist/martyrs/src/modules/orders/locales/index.cjs +10 -0
  286. package/dist/martyrs/src/modules/orders/locales/index.cjs.map +1 -0
  287. package/dist/martyrs/src/modules/orders/locales/index.js +10 -0
  288. package/dist/martyrs/src/modules/orders/locales/index.js.map +1 -0
  289. package/dist/martyrs/src/modules/orders/locales/ru.cjs +38 -0
  290. package/dist/martyrs/src/modules/orders/locales/ru.cjs.map +1 -0
  291. package/dist/martyrs/src/modules/orders/locales/ru.js +38 -0
  292. package/dist/martyrs/src/modules/orders/locales/ru.js.map +1 -0
  293. package/dist/martyrs/src/modules/orders/orders.client.cjs +78 -3
  294. package/dist/martyrs/src/modules/orders/orders.client.cjs.map +1 -1
  295. package/dist/martyrs/src/modules/orders/orders.client.js +80 -5
  296. package/dist/martyrs/src/modules/orders/orders.client.js.map +1 -1
  297. package/dist/martyrs/src/modules/orders/router/applications.router.cjs +17 -0
  298. package/dist/martyrs/src/modules/orders/router/applications.router.cjs.map +1 -0
  299. package/dist/martyrs/src/modules/orders/router/applications.router.js +17 -0
  300. package/dist/martyrs/src/modules/orders/router/applications.router.js.map +1 -0
  301. package/dist/martyrs/src/modules/orders/router/customers.router.cjs +18 -0
  302. package/dist/martyrs/src/modules/orders/router/customers.router.cjs.map +1 -0
  303. package/dist/martyrs/src/modules/orders/router/customers.router.js +18 -0
  304. package/dist/martyrs/src/modules/orders/router/customers.router.js.map +1 -0
  305. package/dist/martyrs/src/modules/orders/store/applications.cjs +4 -42
  306. package/dist/martyrs/src/modules/orders/store/applications.cjs.map +1 -1
  307. package/dist/martyrs/src/modules/orders/store/applications.js +3 -41
  308. package/dist/martyrs/src/modules/orders/store/applications.js.map +1 -1
  309. package/dist/martyrs/src/modules/orders/store/models/application.cjs +20 -0
  310. package/dist/martyrs/src/modules/orders/store/models/application.cjs.map +1 -0
  311. package/dist/martyrs/src/modules/orders/store/models/application.js +20 -0
  312. package/dist/martyrs/src/modules/orders/store/models/application.js.map +1 -0
  313. package/dist/martyrs/src/modules/orders/store/models/customer.cjs +13 -1
  314. package/dist/martyrs/src/modules/orders/store/models/customer.cjs.map +1 -1
  315. package/dist/martyrs/src/modules/orders/store/models/customer.js +13 -1
  316. package/dist/martyrs/src/modules/orders/store/models/customer.js.map +1 -1
  317. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +1 -1
  318. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +1 -1
  319. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +1 -1
  320. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +1 -1
  321. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +2 -2
  322. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
  323. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  324. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
  325. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +126 -192
  326. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs.map +1 -1
  327. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +128 -194
  328. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js.map +1 -1
  329. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
  330. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +1 -1
  331. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  332. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  333. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  334. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  335. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
  336. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  337. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +85 -89
  338. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -1
  339. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +92 -96
  340. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -1
  341. package/dist/martyrs/src/modules/organizations/organizations.client.cjs +0 -3
  342. package/dist/martyrs/src/modules/organizations/organizations.client.cjs.map +1 -1
  343. package/dist/martyrs/src/modules/organizations/organizations.client.js +36 -39
  344. package/dist/martyrs/src/modules/organizations/organizations.client.js.map +1 -1
  345. package/dist/martyrs/src/modules/organizations/router/organizations.cjs +4 -0
  346. package/dist/martyrs/src/modules/organizations/router/organizations.cjs.map +1 -1
  347. package/dist/martyrs/src/modules/organizations/router/organizations.js +4 -0
  348. package/dist/martyrs/src/modules/organizations/router/organizations.js.map +1 -1
  349. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  350. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  351. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.cjs +3 -6
  352. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.cjs.map +1 -1
  353. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.js +3 -6
  354. package/dist/martyrs/src/modules/pages/views/components/pages/Page.vue.js.map +1 -1
  355. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs +1 -1
  356. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs.map +1 -1
  357. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js +1 -1
  358. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js.map +1 -1
  359. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs +2 -2
  360. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +1 -1
  361. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js +2 -2
  362. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -1
  363. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.cjs +1 -1
  364. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js +1 -1
  365. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +22 -19
  366. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs.map +1 -1
  367. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +22 -19
  368. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  369. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +28 -19
  370. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
  371. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +28 -19
  372. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  373. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +2 -2
  374. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +2 -2
  375. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
  376. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
  377. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +1 -1
  378. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +1 -1
  379. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +361 -105
  380. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs.map +1 -1
  381. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +379 -123
  382. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  383. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +1 -1
  384. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +1 -1
  385. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +1 -1
  386. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
  387. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +32 -2
  388. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs.map +1 -1
  389. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +33 -3
  390. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -1
  391. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  392. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  393. package/dist/martyrs/src/modules/products/router/products.router.cjs +15 -0
  394. package/dist/martyrs/src/modules/products/router/products.router.cjs.map +1 -1
  395. package/dist/martyrs/src/modules/products/router/products.router.js +15 -0
  396. package/dist/martyrs/src/modules/products/router/products.router.js.map +1 -1
  397. package/dist/martyrs/src/modules/products/store/categories.cjs +25 -7
  398. package/dist/martyrs/src/modules/products/store/categories.cjs.map +1 -1
  399. package/dist/martyrs/src/modules/products/store/categories.js +25 -7
  400. package/dist/martyrs/src/modules/products/store/categories.js.map +1 -1
  401. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +1 -1
  402. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +1 -1
  403. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
  404. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  405. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
  406. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  407. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.cjs +1 -1
  408. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +1 -1
  409. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
  410. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
  411. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs +345 -0
  412. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs.map +1 -0
  413. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js +345 -0
  414. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js.map +1 -0
  415. package/dist/martyrs/src/modules/spots/router/spots.cjs +17 -0
  416. package/dist/martyrs/src/modules/spots/router/spots.cjs.map +1 -1
  417. package/dist/martyrs/src/modules/spots/router/spots.js +17 -0
  418. package/dist/martyrs/src/modules/spots/router/spots.js.map +1 -1
  419. package/dist/martyrs.cjs.js +1 -1
  420. package/dist/martyrs.css +1 -1
  421. package/dist/martyrs.es.js +1 -1
  422. package/dist/notifications.server.cjs +1 -1
  423. package/dist/notifications.server.js +1 -1
  424. package/dist/orders.server.cjs +459 -201
  425. package/dist/orders.server.js +459 -201
  426. package/dist/organizations.server.cjs +1 -1
  427. package/dist/organizations.server.js +1 -1
  428. package/dist/products.server.cjs +428 -255
  429. package/dist/products.server.js +428 -255
  430. package/dist/style.css +129 -140
  431. package/dist/{tickets.controller-DQQcjyui.js → tickets.controller-C56OvH6v.js} +1 -1
  432. package/dist/{tickets.controller-D0V0gJCA.cjs → tickets.controller-DdnndM6c.cjs} +1 -1
  433. package/dist/wallet.server.cjs +1 -1
  434. package/dist/wallet.server.js +1 -1
  435. package/dist/{web-B1bEJ1W9.js → web-BXajFCU2.js} +1 -1
  436. package/dist/{web-D5i9k2Vv.cjs → web-DaBwwCQ5.cjs} +1 -1
  437. package/package.json +1 -1
  438. package/src/builder/modes/ssr.dev.js +10 -10
  439. package/src/builder/rspack/rspack.config.ssr.client.js +50 -50
  440. package/src/components/Checkbox/Checkbox.vue +3 -4
  441. package/src/components/Feed/Feed.old.vue +522 -0
  442. package/src/components/Feed/Feed.vue +4 -4
  443. package/src/components/Field/Field.vue +7 -1
  444. package/src/components/FieldBig/FieldBig.vue +62 -8
  445. package/src/components/PhotoViewer/PhotoViewer.vue +1 -1
  446. package/src/modules/STYLES.MD +198 -0
  447. package/src/modules/auth/views/components/pages/Profile.vue +1 -1
  448. package/src/modules/auth/views/components/pages/ProfileEdit.vue +42 -8
  449. package/src/modules/auth/views/components/pages/ProfileEditAccount.vue +9 -11
  450. package/src/modules/auth/views/components/pages/ProfileEditProfile.vue +9 -11
  451. package/src/modules/auth/views/components/pages/ProfileEditSidebar.vue +7 -4
  452. package/src/modules/auth/views/router/users.js +0 -4
  453. package/src/modules/community/components/pages/Posts.vue +444 -0
  454. package/src/modules/community/router/blogposts.js +15 -0
  455. package/src/modules/globals/globals.client.js +3 -0
  456. package/src/modules/globals/views/classes/globals.websocket.js +7 -8
  457. package/src/modules/globals/views/components/blocks/Card.vue +2 -1
  458. package/src/modules/globals/views/components/layouts/Client.vue +1 -2
  459. package/src/modules/globals/views/components/partials/Footer.vue +318 -164
  460. package/src/modules/globals/views/components/sections/Filters.vue +261 -121
  461. package/src/modules/globals/views/components/sections/filters/FilterCheckbox.vue +78 -0
  462. package/src/modules/globals/views/components/sections/filters/FilterDateRange.vue +177 -0
  463. package/src/modules/globals/views/components/sections/filters/FilterRange.vue +51 -50
  464. package/src/modules/icons/entities/IconLock.vue +14 -0
  465. package/src/modules/icons/icons.client.js +2 -1
  466. package/src/modules/icons/pages/IconsPage.vue +4 -2
  467. package/src/modules/landing/components/sections/SubscribeNewsletter.vue +11 -61
  468. package/src/modules/landing/landing.client.js +6 -0
  469. package/src/modules/landing/locales/en.js +9 -0
  470. package/src/modules/landing/locales/index.js +7 -0
  471. package/src/modules/landing/locales/ru.js +9 -0
  472. package/src/modules/music/components/pages/Album.vue +1 -1
  473. package/src/modules/music/components/pages/Playlist.vue +1 -1
  474. package/src/modules/music/components/pages/Track.vue +1 -1
  475. package/src/modules/orders/components/blocks/CardApplication.vue +74 -0
  476. package/src/modules/orders/components/blocks/CardCustomer.vue +90 -0
  477. package/src/modules/orders/components/elements/FieldSubscribeNewsletter.vue +199 -0
  478. package/src/modules/orders/components/forms/FormApplicationDetails.vue +117 -0
  479. package/src/modules/orders/components/forms/FormCustomerDetails.vue +165 -0
  480. package/src/modules/orders/components/forms/FormSelectCustomer.vue +172 -0
  481. package/src/modules/orders/components/pages/Applications.vue +240 -0
  482. package/src/modules/orders/components/pages/Customers.vue +239 -0
  483. package/src/modules/orders/components/pages/OrderCreate.vue +2 -2
  484. package/src/modules/orders/components/pages/OrderCreateBackoffice.vue +4 -75
  485. package/src/modules/orders/components/sections/ApplicationDetails.vue +91 -0
  486. package/src/modules/orders/components/sections/CustomerDetails.vue +107 -0
  487. package/src/modules/orders/locales/en.js +35 -0
  488. package/src/modules/orders/locales/index.js +7 -0
  489. package/src/modules/orders/locales/ru.js +35 -0
  490. package/src/modules/orders/middlewares/applications.verifier.js +189 -0
  491. package/src/modules/orders/middlewares/customers.verifier.js +251 -0
  492. package/src/modules/orders/models/application.model.js +21 -0
  493. package/src/modules/orders/models/customer.model.js +26 -0
  494. package/src/modules/orders/orders.client.js +86 -1
  495. package/src/modules/orders/orders.server.js +3 -1
  496. package/src/modules/orders/router/applications.router.js +15 -0
  497. package/src/modules/orders/router/customers.router.js +17 -0
  498. package/src/modules/orders/routes/applications.routes.js +124 -12
  499. package/src/modules/orders/routes/customers.routes.js +43 -0
  500. package/src/modules/orders/store/applications.js +3 -159
  501. package/src/modules/orders/store/models/application.js +18 -0
  502. package/src/modules/orders/store/models/customer.js +12 -0
  503. package/src/modules/organizations/components/pages/Organization.new.vue +593 -0
  504. package/src/modules/organizations/components/pages/Organization.vue +155 -206
  505. package/src/modules/organizations/configs/navigation.organization.config.js +69 -85
  506. package/src/modules/organizations/organizations.client.js +0 -3
  507. package/src/modules/organizations/router/organizations.js +5 -0
  508. package/src/modules/pages/views/components/pages/Page.vue +1 -1
  509. package/src/modules/products/TASKS.MD +157 -0
  510. package/src/modules/products/components/blocks/CardCategory.vue +1 -1
  511. package/src/modules/products/components/blocks/ProductImages.vue +1 -1
  512. package/src/modules/products/components/pages/Categories.vue +27 -22
  513. package/src/modules/products/components/pages/CategoryEdit.vue +24 -13
  514. package/src/modules/products/components/pages/Products.vue +418 -173
  515. package/src/modules/products/components/sections/ProductsRecommended.vue +46 -2
  516. package/src/modules/products/controllers/categories.controller.js +321 -282
  517. package/src/modules/products/controllers/configs/products.lookup.config.js +9 -0
  518. package/src/modules/products/controllers/products.controller.js +2 -1
  519. package/src/modules/products/controllers/queries/products.queries.js +183 -11
  520. package/src/modules/products/middlewares/categories.verifier.js +58 -15
  521. package/src/modules/products/migrations/categories-to-materialized-path.js +433 -0
  522. package/src/modules/products/migrations/path-to-url.js +27 -0
  523. package/src/modules/products/models/category.model.js +8 -23
  524. package/src/modules/products/router/products.router.js +12 -0
  525. package/src/modules/products/store/categories.js +26 -7
  526. package/src/modules/rents/TASK.MD +161 -0
  527. package/src/modules/spots/components/pages/Spots.vue +342 -0
  528. package/src/modules/spots/router/spots.js +15 -0
  529. package/src/styles/base/all.scss +2 -3
  530. package/src/styles/layout.scss +16 -0
  531. package/dist/main-w3rPUBVh.cjs +0 -11
  532. package/dist/martyrs/src/components/BottomSheet/BottomSheet.vue.cjs +0 -96
  533. package/dist/martyrs/src/components/BottomSheet/BottomSheet.vue.cjs.map +0 -1
  534. package/dist/martyrs/src/components/BottomSheet/BottomSheet.vue.js +0 -96
  535. package/dist/martyrs/src/components/BottomSheet/BottomSheet.vue.js.map +0 -1
  536. package/dist/martyrs/src/components/Loader/Loader.vue.js.map +0 -1
  537. package/dist/martyrs/src/components/Spoiler/Spoiler.vue.js.map +0 -1
  538. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
  539. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +0 -155
  540. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs.map +0 -1
  541. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +0 -155
  542. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js.map +0 -1
  543. package/dist/martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +0 -81
  544. package/dist/martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs.map +0 -1
  545. package/dist/martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue.js +0 -81
  546. package/dist/martyrs/src/modules/orders/components/sections/FormCustomerDetails.vue.js.map +0 -1
  547. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs +0 -146
  548. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.cjs.map +0 -1
  549. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js +0 -146
  550. package/dist/martyrs/src/modules/organizations/components/sections/DetailsTabSection.vue.js.map +0 -1
  551. package/src/modules/globals/views/components/partials/FooterAlt.vue +0 -363
  552. package/src/modules/orders/components/sections/FormAddCustomer.vue +0 -152
  553. package/src/modules/orders/components/sections/FormCustomerDetails.vue +0 -67
  554. package/src/modules/orders/controllers/applications.controller.js +0 -122
  555. package/src/modules/organizations/components/sections/DetailsTabSection.vue +0 -190
@@ -42,7 +42,10 @@ const _sfc_main = {
42
42
  src: (_ctx.FILE_SERVER_URL || "") + __props.photo,
43
43
  alt: __props.title,
44
44
  loading: "lazy"
45
- }, null, 8, _hoisted_1)) : __props.placeholder ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(__props.placeholder), { key: 1 })) : (vue.openBlock(), vue.createBlock(PlaceholderUserpic.default, { key: 2 }))
45
+ }, null, 8, _hoisted_1)) : __props.placeholder ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(__props.placeholder), { key: 1 })) : (vue.openBlock(), vue.createBlock(PlaceholderUserpic.default, {
46
+ key: 2,
47
+ class: "h-100"
48
+ }))
46
49
  ]),
47
50
  vue.createElementVNode("div", null, [
48
51
  vue.renderSlot(_ctx.$slots, "header", {}, () => [
@@ -57,7 +60,7 @@ const _sfc_main = {
57
60
  key: 0,
58
61
  onClick: _cache[0] || (_cache[0] = vue.withModifiers((...args) => __props.action.method && __props.action.method(...args), ["stop"]))
59
62
  }, [
60
- __props.action.label?.is ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(__props.action.label.is), vue.normalizeProps(vue.mergeProps({ key: 0 }, __props.action.label.props)), null, 16)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
63
+ __props.action.label?.is ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(__props.action.label.is), vue.mergeProps({ key: 0 }, __props.action.label.props, { class: "i-medium" }), null, 16)) : (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 1 }, [
61
64
  vue.createTextVNode(vue.toDisplayString(__props.action.label), 1)
62
65
  ], 64))
63
66
  ])) : vue.createCommentVNode("", true)
@@ -1 +1 @@
1
- {"version":3,"file":"Card.vue.cjs","sources":["../../../../../../../../src/modules/globals/views/components/blocks/Card.vue"],"sourcesContent":["<template>\n <component :is=\"tag || 'div'\" @click=\"handleClick\">\n <!-- Skeleton режим -->\n <Skeleton\n v-if=\"loading\"\n :structure=\"skeletonStructure\"\n :horizontal=\"true\"\n :loading=\"true\"\n />\n \n <!-- Обычный режим -->\n <template v-else>\n <!-- Изображение -->\n <slot name=\"image\">\n <img\n v-if=\"photo\"\n :src=\"(FILE_SERVER_URL || '') + photo\"\n :alt=\"title\"\n loading=\"lazy\"\n />\n <component\n v-else-if=\"placeholder\"\n :is=\"placeholder\"\n />\n <PlaceholderUserpic v-else />\n </slot>\n\n <!-- Контент -->\n <div>\n <slot name=\"header\">\n <p v-if=\"title\">{{ title }}</p>\n <span v-if=\"subtitle\">{{ subtitle }}</span>\n </slot>\n \n <slot />\n \n <slot name=\"footer\" />\n </div>\n\n <!-- Действия -->\n <slot name=\"actions\">\n <button\n v-if=\"action\"\n @click.stop=\"action.method\"\n >\n <component \n v-if=\"action.label?.is\" \n :is=\"action.label.is\" \n v-bind=\"action.label.props\"\n />\n <template v-else>\n {{ action.label }}\n </template>\n </button>\n </slot>\n </template>\n </component>\n</template>\n\n<script setup>\nimport { useSlots } from 'vue'\nimport Skeleton from '@martyrs/src/components/Skeleton/Skeleton.vue'\nimport PlaceholderUserpic from '@martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue'\n\nconst props = defineProps({\n // Данные\n photo: String,\n title: String,\n subtitle: String,\n action: Object,\n \n // Функционал\n tag: String,\n placeholder: [String, Object],\n loading: Boolean,\n skeletonStructure: Array\n})\n\nconst emit = defineEmits(['click'])\nconst slots = useSlots()\n\nconst handleClick = () => {\n emit('click')\n}\n</script>"],"names":["useSlots"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA8EA,UAAM,OAAO;AACCA,QAAAA,SAAQ;AAEtB,UAAM,cAAc,MAAM;AACxB,WAAK,OAAO;AAAA,IACd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Card.vue.cjs","sources":["../../../../../../../../src/modules/globals/views/components/blocks/Card.vue"],"sourcesContent":["<template>\n <component :is=\"tag || 'div'\" @click=\"handleClick\">\n <!-- Skeleton режим -->\n <Skeleton\n v-if=\"loading\"\n :structure=\"skeletonStructure\"\n :horizontal=\"true\"\n :loading=\"true\"\n />\n \n <!-- Обычный режим -->\n <template v-else>\n <!-- Изображение -->\n <slot name=\"image\">\n <img\n v-if=\"photo\"\n :src=\"(FILE_SERVER_URL || '') + photo\"\n :alt=\"title\"\n loading=\"lazy\"\n />\n <component\n v-else-if=\"placeholder\"\n :is=\"placeholder\"\n />\n <PlaceholderUserpic class=\"h-100\" v-else />\n </slot>\n\n <!-- Контент -->\n <div>\n <slot name=\"header\">\n <p v-if=\"title\">{{ title }}</p>\n <span v-if=\"subtitle\">{{ subtitle }}</span>\n </slot>\n \n <slot />\n \n <slot name=\"footer\" />\n </div>\n\n <!-- Действия -->\n <slot name=\"actions\">\n <button\n v-if=\"action\"\n @click.stop=\"action.method\"\n >\n <component \n v-if=\"action.label?.is\" \n :is=\"action.label.is\" \n v-bind=\"action.label.props\"\n class=\"i-medium\"\n />\n <template v-else>\n {{ action.label }}\n </template>\n </button>\n </slot>\n </template>\n </component>\n</template>\n\n<script setup>\nimport { useSlots } from 'vue'\nimport Skeleton from '@martyrs/src/components/Skeleton/Skeleton.vue'\nimport PlaceholderUserpic from '@martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue'\n\nconst props = defineProps({\n // Данные\n photo: String,\n title: String,\n subtitle: String,\n action: Object,\n \n // Функционал\n tag: String,\n placeholder: [String, Object],\n loading: Boolean,\n skeletonStructure: Array\n})\n\nconst emit = defineEmits(['click'])\nconst slots = useSlots()\n\nconst handleClick = () => {\n emit('click')\n}\n</script>"],"names":["useSlots"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA+EA,UAAM,OAAO;AACCA,QAAAA,SAAQ;AAEtB,UAAM,cAAc,MAAM;AACxB,WAAK,OAAO;AAAA,IACd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { useSlots, createBlock, openBlock, resolveDynamicComponent, withCtx, createElementBlock, Fragment, renderSlot, createElementVNode, createCommentVNode, toDisplayString, withModifiers, normalizeProps, mergeProps, createTextVNode } from "vue";
1
+ import { useSlots, createBlock, openBlock, resolveDynamicComponent, withCtx, createElementBlock, Fragment, renderSlot, createElementVNode, createCommentVNode, toDisplayString, withModifiers, mergeProps, createTextVNode } from "vue";
2
2
  import Skeleton from "../../../../../components/Skeleton/Skeleton.vue2.js";
3
3
  import PlaceholderUserpic from "../../../../icons/placeholders/PlaceholderUserpic.vue.js";
4
4
  const _hoisted_1 = ["src", "alt"];
@@ -40,7 +40,10 @@ const _sfc_main = {
40
40
  src: (_ctx.FILE_SERVER_URL || "") + __props.photo,
41
41
  alt: __props.title,
42
42
  loading: "lazy"
43
- }, null, 8, _hoisted_1)) : __props.placeholder ? (openBlock(), createBlock(resolveDynamicComponent(__props.placeholder), { key: 1 })) : (openBlock(), createBlock(PlaceholderUserpic, { key: 2 }))
43
+ }, null, 8, _hoisted_1)) : __props.placeholder ? (openBlock(), createBlock(resolveDynamicComponent(__props.placeholder), { key: 1 })) : (openBlock(), createBlock(PlaceholderUserpic, {
44
+ key: 2,
45
+ class: "h-100"
46
+ }))
44
47
  ]),
45
48
  createElementVNode("div", null, [
46
49
  renderSlot(_ctx.$slots, "header", {}, () => [
@@ -55,7 +58,7 @@ const _sfc_main = {
55
58
  key: 0,
56
59
  onClick: _cache[0] || (_cache[0] = withModifiers((...args) => __props.action.method && __props.action.method(...args), ["stop"]))
57
60
  }, [
58
- __props.action.label?.is ? (openBlock(), createBlock(resolveDynamicComponent(__props.action.label.is), normalizeProps(mergeProps({ key: 0 }, __props.action.label.props)), null, 16)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
61
+ __props.action.label?.is ? (openBlock(), createBlock(resolveDynamicComponent(__props.action.label.is), mergeProps({ key: 0 }, __props.action.label.props, { class: "i-medium" }), null, 16)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
59
62
  createTextVNode(toDisplayString(__props.action.label), 1)
60
63
  ], 64))
61
64
  ])) : createCommentVNode("", true)
@@ -1 +1 @@
1
- {"version":3,"file":"Card.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/blocks/Card.vue"],"sourcesContent":["<template>\n <component :is=\"tag || 'div'\" @click=\"handleClick\">\n <!-- Skeleton режим -->\n <Skeleton\n v-if=\"loading\"\n :structure=\"skeletonStructure\"\n :horizontal=\"true\"\n :loading=\"true\"\n />\n \n <!-- Обычный режим -->\n <template v-else>\n <!-- Изображение -->\n <slot name=\"image\">\n <img\n v-if=\"photo\"\n :src=\"(FILE_SERVER_URL || '') + photo\"\n :alt=\"title\"\n loading=\"lazy\"\n />\n <component\n v-else-if=\"placeholder\"\n :is=\"placeholder\"\n />\n <PlaceholderUserpic v-else />\n </slot>\n\n <!-- Контент -->\n <div>\n <slot name=\"header\">\n <p v-if=\"title\">{{ title }}</p>\n <span v-if=\"subtitle\">{{ subtitle }}</span>\n </slot>\n \n <slot />\n \n <slot name=\"footer\" />\n </div>\n\n <!-- Действия -->\n <slot name=\"actions\">\n <button\n v-if=\"action\"\n @click.stop=\"action.method\"\n >\n <component \n v-if=\"action.label?.is\" \n :is=\"action.label.is\" \n v-bind=\"action.label.props\"\n />\n <template v-else>\n {{ action.label }}\n </template>\n </button>\n </slot>\n </template>\n </component>\n</template>\n\n<script setup>\nimport { useSlots } from 'vue'\nimport Skeleton from '@martyrs/src/components/Skeleton/Skeleton.vue'\nimport PlaceholderUserpic from '@martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue'\n\nconst props = defineProps({\n // Данные\n photo: String,\n title: String,\n subtitle: String,\n action: Object,\n \n // Функционал\n tag: String,\n placeholder: [String, Object],\n loading: Boolean,\n skeletonStructure: Array\n})\n\nconst emit = defineEmits(['click'])\nconst slots = useSlots()\n\nconst handleClick = () => {\n emit('click')\n}\n</script>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA8EA,UAAM,OAAO;AACC,aAAQ;AAEtB,UAAM,cAAc,MAAM;AACxB,WAAK,OAAO;AAAA,IACd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Card.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/blocks/Card.vue"],"sourcesContent":["<template>\n <component :is=\"tag || 'div'\" @click=\"handleClick\">\n <!-- Skeleton режим -->\n <Skeleton\n v-if=\"loading\"\n :structure=\"skeletonStructure\"\n :horizontal=\"true\"\n :loading=\"true\"\n />\n \n <!-- Обычный режим -->\n <template v-else>\n <!-- Изображение -->\n <slot name=\"image\">\n <img\n v-if=\"photo\"\n :src=\"(FILE_SERVER_URL || '') + photo\"\n :alt=\"title\"\n loading=\"lazy\"\n />\n <component\n v-else-if=\"placeholder\"\n :is=\"placeholder\"\n />\n <PlaceholderUserpic class=\"h-100\" v-else />\n </slot>\n\n <!-- Контент -->\n <div>\n <slot name=\"header\">\n <p v-if=\"title\">{{ title }}</p>\n <span v-if=\"subtitle\">{{ subtitle }}</span>\n </slot>\n \n <slot />\n \n <slot name=\"footer\" />\n </div>\n\n <!-- Действия -->\n <slot name=\"actions\">\n <button\n v-if=\"action\"\n @click.stop=\"action.method\"\n >\n <component \n v-if=\"action.label?.is\" \n :is=\"action.label.is\" \n v-bind=\"action.label.props\"\n class=\"i-medium\"\n />\n <template v-else>\n {{ action.label }}\n </template>\n </button>\n </slot>\n </template>\n </component>\n</template>\n\n<script setup>\nimport { useSlots } from 'vue'\nimport Skeleton from '@martyrs/src/components/Skeleton/Skeleton.vue'\nimport PlaceholderUserpic from '@martyrs/src/modules/icons/placeholders/PlaceholderUserpic.vue'\n\nconst props = defineProps({\n // Данные\n photo: String,\n title: String,\n subtitle: String,\n action: Object,\n \n // Функционал\n tag: String,\n placeholder: [String, Object],\n loading: Boolean,\n skeletonStructure: Array\n})\n\nconst emit = defineEmits(['click'])\nconst slots = useSlots()\n\nconst handleClick = () => {\n emit('click')\n}\n</script>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA+EA,UAAM,OAAO;AACC,aAAQ;AAEtB,UAAM,cAAc,MAAM;AACxB,WAAK,OAAO;AAAA,IACd;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -8,7 +8,7 @@ const PlaceholderUserpic = require("../../../../icons/placeholders/PlaceholderUs
8
8
  const PlaceholderOrganizationPic = require("../../../../icons/placeholders/PlaceholderOrganizationPic.vue.cjs");
9
9
  const IconEllipsis = require("../../../../icons/navigation/IconEllipsis.vue.cjs");
10
10
  const FormReport = require("../../../../reports/components/sections/FormReport.vue.cjs");
11
- ;/* empty css */
11
+ ;/* empty css */
12
12
  ;/* empty css */
13
13
  require("../../../../auth/views/store/auth.cjs");
14
14
  require("../../../../organizations/store/memberships.cjs");
@@ -6,7 +6,7 @@ import PlaceholderUserpic from "../../../../icons/placeholders/PlaceholderUserpi
6
6
  import PlaceholderOrganizationPic from "../../../../icons/placeholders/PlaceholderOrganizationPic.vue.js";
7
7
  import _sfc_main$4 from "../../../../icons/navigation/IconEllipsis.vue.js";
8
8
  import _sfc_main$5 from "../../../../reports/components/sections/FormReport.vue.js";
9
- /* empty css */
9
+ /* empty css */
10
10
  /* empty css */
11
11
  import "../../../../auth/views/store/auth.js";
12
12
  import "../../../../organizations/store/memberships.js";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const vueI18n = require("vue-i18n");
5
5
  const Popup = require("../../../../../components/Popup/Popup.vue.cjs");
6
- const Loader = require("../../../../../components/Loader/Loader.vue.cjs");
6
+ const Loader = require("../../../../../components/Loader/Loader.vue2.cjs");
7
7
  const Calendar = require("../../../../../components/Calendar/Calendar.vue2.cjs");
8
8
  const Button = require("../../../../../components/Button/Button.vue.cjs");
9
9
  const IconShopcartAdd = require("../../../../icons/actions/IconShopcartAdd.vue.cjs");
@@ -1,7 +1,7 @@
1
1
  import { ref, computed, watch, onMounted, createBlock, openBlock, withCtx, createElementVNode, createVNode, createElementBlock, createCommentVNode, toDisplayString, unref } from "vue";
2
2
  import { useI18n } from "vue-i18n";
3
3
  import _sfc_main$1 from "../../../../../components/Popup/Popup.vue.js";
4
- import Loader from "../../../../../components/Loader/Loader.vue.js";
4
+ import Loader from "../../../../../components/Loader/Loader.vue2.js";
5
5
  import Calendar from "../../../../../components/Calendar/Calendar.vue2.js";
6
6
  import _sfc_main$3 from "../../../../../components/Button/Button.vue.js";
7
7
  import _sfc_main$4 from "../../../../icons/actions/IconShopcartAdd.vue.js";
@@ -8,7 +8,7 @@ const Snack = require("../../../../../components/Status/Snack.vue.cjs");
8
8
  const Popup = require("../../../../../components/Popup/Popup.vue.cjs");
9
9
  require("vue-i18n");
10
10
  ;/* empty css */
11
- const Loader = require("../../../../../components/Loader/Loader.vue.cjs");
11
+ const Loader = require("../../../../../components/Loader/Loader.vue2.cjs");
12
12
  ;/* empty css */
13
13
  require("../../../../orders/store/shopcart.cjs");
14
14
  require("../../../../auth/views/store/auth.cjs");
@@ -265,11 +265,10 @@ const _sfc_main = {
265
265
  (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(Component), {
266
266
  ref_key: "page",
267
267
  ref: page,
268
- key: route2.path,
269
268
  class: "w-100 h-min-100",
270
269
  onPageLoading: handlePageLoading,
271
270
  onPageLoaded: handlePageLoaded
272
- }, null, 32))
271
+ }, null, 544))
273
272
  ]),
274
273
  _: 2
275
274
  }, 1024)
@@ -1 +1 @@
1
- {"version":3,"file":"Client.vue.cjs","sources":["../../../../../../../../src/modules/globals/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n\t<div \n\t\tid=\"app-wrapper\"\n\t\tclass=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n\t\t:class=\"{\n \t\t'pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t'bg-white': headerTheme === 'light',\n\t\t\t'bg-black': headerTheme === 'dark' \n \t}\"\n\t>\n\t\t<transition name=\"moveFromTop\" appear>\n\t\t\t<Loader v-if=\"!page || isPageLoading\" class=\"pos-fixed\"/>\n\t\t</transition>\n\n\n\t <transition \n\t name=\"moveFromTop\" \n\t mode=\"out-in\"\n\t >\n\t <section \n\t v-if=\"FirstUse && route.meta.walkthrough\"\n\t class=\"w-100 h-100\" \n\t >\n\t <component \n\t :is=\"route.meta.walkthrough\"\n\t name=\"Walkthrough\"\n\t @updateFirstUse=\"updateFirstUse\" \n\t :slides=\"[1,2,3]\" \n\t class=\"tab\"\n\t >\n\t </component>\n\t </section>\n\t </transition>\n\n <component\n\t\t\tv-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\" \n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n >\n \t<component\n\t\t v-if=\"route.meta?.header_navigation\"\n\t\t :is=\"route.meta.header_navigation\"\n\t\t :horizontal=\"true\"\n\t\t\t\t:navigationItems=\"route.meta.header_navigation_items\"\n\t\t\t\t:stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n \t</component>\n\n\t\t<transition name=\"moveFromTop\" mode=\"out-in\" appear>\n\t\t\t<component\n \tv-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n />\n\t\t</transition>\n\n\t <Popup \n\t \t@close-popup=\"closeLocationPopup\" \n\t \t:isPopupOpen=\"globals.state.isOpenLocationPopup\"\n\t \tclass=\"bg-white pd-semi w-m-33r radius-big\"\n\t >\t\n\t \t<LocationSelection />\n\t </Popup>\n\n\t <!-- class=\"flex flex-nowrap transition-ease-in-out o-hidden pos-relative\" -->\n\t\t<section \n\t\t\tid=\"screen\" \n\t\t\tref=\"screen\"\n\t\t\t@scroll=\"handleScroll\"\n\t\t\tclass=\"flex flex-nowrap h-100 pos-relative o-hidden transition-ease-in-out\"\n\t\t\t:class=\"{\n\t\t\t\t'': MOBILE_APP === 'ios',\n }\"\n\t\t>\n\t\t\t<ShopCart \n\t\t\t\t:class=\"{\n\t\t\t\t\t'mobile:pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t\t}\"\n\t\t\t/>\n\t <component\n\t v-if=\"route.meta?.sidebar && !MOBILE_APP\"\n\t v-slot=\"{ Component }\"\n\t :is=\"route.meta.sidebar\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t :widthHidden='route.meta?.sidebar_width_hidden'\n\t :width=\"route.meta?.sidebar_width\"\n\t :theme=\"headerTheme\"\n\t @closeSidebar=\"() => globals.state.isOpenSidebar = false\"\n\t >\n\t \t<transition name=\"moveFromTop\" mode=\"out-in\">\n\t\t <component\n\t\t v-if=\"route.meta?.sidebar_navigation\"\n\t\t :is=\"route.meta.sidebar_navigation\"\n\t\t :key=\"route.meta.sidebar_navigation\"\n\t\t :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t\t\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n\t </transition>\n\t </component>\n\t\t <!-- rows-1-min0_max1 z-index-1 pos-relative w-100 h-100 -->\n\t\t <div class=\"rows-1-min0_max1 z-index-1 pos-relative w-100 h-100\">\n\t\t \t<div id=\"scrollview\" ref=\"scrollview\" class=\"o-y-scroll o-x-hidden h-100\">\n\t \t\t\t<Status \n\t \t\t\t\tv-if=\"globals.state.error.show\"\n\t\t\t\t\t\t:data=\"globals.state.error\"\n\t\t\t\t\t\t@close=\"globals.state.error.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<Snack \n\t \t\t\t\tv-if=\"globals.state.snack.show\"\n\t\t\t\t\t\t:data=\"globals.state.snack\"\n\t\t\t\t\t\t@close=\"globals.state.snack.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<div class=\"h-min-100 pos-relative w-100\">\n\t\t\t\t\t\t<!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t\t\t\t<Breadcrumbs \n\t\t\t\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</section> -->\n\n\t\t\t\t \t\t<Suspense @resolve=\"onSuspenseResolved\">\n\t\t\t\t\t\t\t<router-view \n\t\t\t\t\t\t\t\tid=\"view\"\n\t\t\t\t\t\t\t\tv-slot=\"{ Component, route }\" \n\t\t\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t\t\t'scroll-hide': MOBILE_APP,\n\t\t\t\t\t\t\t\t}\"\n\t\t\t\t\t\t\t\tclass=\"h-min-100 pos-relative w-100\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t\t\t\t \t<component \n\t\t\t\t\t \t\tref=\"page\" \n\t\t\t\t\t \t\t:is=\"Component\" \n\t\t\t\t\t \t\t:key=\"route.path\"\n\t\t\t\t\t \t\tclass=\"w-100 h-min-100\"\n\t\t\t\t \t\t \t@page-loading=\"handlePageLoading\"\n\t\t\t @page-loaded=\"handlePageLoaded\"\n\t\t\t\t\t \t/>\n\t\t\t\t\t \t<!-- Key пока выключил непонятно какие проблемы это вызовет -->\n\t\t\t\t\t \t<!-- -->\n\t\t\t\t\t </transition>\n\t\t\t\t\t\t </router-view>\n\t\t\t\t\t\t</Suspense>\n\t\t\t\t </div>\n\n\t\t\t\t \t<component \n\t\t\t v-if=\"route.meta.player\"\n\t\t\t class=\"z-index-2\"\n\t\t\t \t:is=\"route.meta.player\"\n\t\t\t />\n\t\t\t \t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t <component\n\t\t\t\t\t\t\tv-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter && page && !isPageLoading\"\n\t\t\t\t ref=\"footer\" \n\t\t\t\t :is=\"route.meta.footer\"\n\t\t\t\t :theme=\"headerTheme\"\n\t\t\t\t :logotype=\"route.meta.logotype\"\n\t\t\t\t :location=\"route.meta.location\"\n\t\t\t\t />\n\t\t\t \t</transition>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</section>\n\n\t\t<router-view \n\t\t\tname=\"defaultBottom\"\n\t\t\tv-slot=\"{ Component, route }\" \n\t\t>\n\t\t\t<component \n \t\t:is=\"Component\" \n \t/>\n\t\t</router-view>\n\n\t\n\n\n <component \n v-if=\"MOBILE_APP && route.meta.title_hide\"\n class=\"z-index-2\"\n \t:is=\"route.meta.bottombar\"\n />\n\t</div>\n</template>\n\n\n\n<script setup>\n\timport { computed, ref, onMounted, watch } from 'vue';\n\t// Router\n\timport { useRoute } from 'vue-router';\n\t// Store\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n\t// Partials\n\timport Status from '@martyrs/src/components/Status/Status.vue';\n\timport Snack from '@martyrs/src/components/Status/Snack.vue';\n\timport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\timport NavigationBar from '@martyrs/src/modules/globals/views/components/partials/NavigationBar.vue';\n\timport LocationSelection from '@martyrs/src/modules/globals/views/components/partials/LocationSelection.vue';\n\n\timport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n\t// PROPS\n\tconst props = defineProps({\n env: {\n type: Object,\n required: true\n },\n app: {\n type: Object,\n required: true\n },\n modules: {\n type: Object,\n required: true\n }\n })\n\n\t/////////////////////////////\n // LOADING\n /////////////////////////////\n // State\n let show = ref(false)\n // Preloader\n const page = ref(null)\n const scrollview = ref(null)\n\n const isPageLoading = ref(true);\n \n // Обработчики событий загрузки\n function handlePageLoading() {\n isPageLoading.value = true;\n }\n \n function handlePageLoaded() {\n isPageLoading.value = false;\n }\n \n // Обработка события разрешения Suspense (когда async setup компонента завершается)\n function onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик \n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n isPageLoading.value = false;\n }\n\t/////////////////////////////\n\t// CREATED\n\t/////////////////////////////\n\tconst route = useRoute()\n\t// const router = useRouter()\n\t// Ref Code\n\tconst referalCode = ref(route.query.referalCode);\n\t/////////////////////////////\n\t// Methods\n\t/////////////////////////////\n\tfunction closeLocationPopup() {\n\t globals.state.isOpenLocationPopup = false;\n\t}\n\tfunction scrollTop(){\n\t\tif (scrollview.value) scrollview.value.scrollTop = 0;\n\t}\n\t// Scrolling header\n\tconst scrollOffset = ref(0)\n\tlet isScrolled = false\n\tconst header = ref(null)\n\n\tconst headerTheme = computed(() => {\n\t\tif (scrollOffset.value > 50) {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t} else {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t}\n\t})\n\n\tconst handleScroll = () => {\n\t scrollOffset.value = event.target.scrollTop\n\t};\n/////////////////////////////\n // FIRST USE\n /////////////////////////////\n const FirstUse = ref(false);\n\n import { Preferences } from '@capacitor/preferences';\n\n async function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n }\n\n const updateFirstUse = (value) => {\n FirstUse.value = value;\n }\n\n\tonMounted(async () => {\n\t await getFirstUse()\n\n\t\t// Регистрация единого Service Worker (PWA + push notifications)\n\t\tif ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n\t \twindow.addEventListener('load', () => {\n\t \tnavigator.serviceWorker.register('/sw.js').then(registration => {\n\t \tconsole.log('Unified SW registered: ', registration);\n\t \t}).catch(registrationError => {\n\t \tconsole.log('SW registration failed: ', registrationError);\n\t \t});\n\t });\n\t \t}\n\t\t\n\t\tconst savedPosition = localStorage.getItem('position');\n\n\t if (savedPosition) {\n\t globals.state.position = JSON.parse(savedPosition);\n\t } else if (route.meta.location) {\n \t\tglobals.state.isOpenLocationPopup = true;\n\t } else {\n\t \tglobals.state.isOpenLocationPopup = false;\n\t }\n\n\t\tif (referalCode.value) {\n\t\t localStorage.setItem('referalCode', referalCode.value);\n\t\t}\n\n\t\tif (page.value) show.value = true\n\t});\n</script>\n\n<style lang=\"scss\">\n\t.fade-enter-active, .fade-leave-active {\n\t transition: opacity .5s;\n\t}\n\t.fade-enter, .fade-leave-to /* .fade-leave-active в версии 2.1.8+ */ {\n\t opacity: 0;\n\t}\n\n\t\n .fade-move,\n .fade-enter-active,\n .fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n }\n\n /* 2. declare enter from and leave to state */\n .fade-enter-from,\n .fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n }\n\n /* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n .fade-leave-active {\n position: absolute;\n }\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition: all 0.3s ease, max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh; \n}\n\n\t.moveFromTopAbsolute-enter-active,\n\t.moveFromTopAbsolute-leave-active {\n\t\ttransform: translateY(0);\n\t\topacity: 1;\n\t\ttransition: all 0.5s ease; \n\t\t\n\t}\n\t.moveFromTopAbsolute-enter-from,\n\t.moveFromTopAbsolute-leave-to {\n\t\tposition: absolute;\n\t\ttransform: translateY(-1rem);\n\t\topacity: 0;\n\t\ttransition: all 0.5s ease;\n\t}\n\t.ScaleOut-enter-active,\n\t.ScaleOut-leave-active {\n\t\topacity: 1;\n\t\ttransform: scale(1);\n\t\ttransition: all 0.3s ease; \n\t\t\n\t}\n\t.ScaleOut-enter-from,\n\t.ScaleOut-leave-to {\n\t\topacity: 0;\n\t\ttransform: scale(0.9);\n\t\ttransition: all 0.3s ease;\n\t}\n\t.slide-fade-enter-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-leave-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tmin-height: 0;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.scaleTransition-5px-enter-active,\n .scaleTransition-5px-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n }\n\n .scaleTransition-5px-enter-from,\n .scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px); \n transition: all 0.2s ease;\n }\n\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleTransition-enter-active,\n .scaleTransition-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n }\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleIn-enter-active,\n .scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n > section,div { transform-origin: 0 0; transform: translateZ(0px); transition: all 0.5s ease; }\n }\n .scaleIn-enter-from,\n .scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n > section,div { transform: translateZ(-30px); transition: all 0.5s ease; }\n }\n</style>"],"names":["ref","useRoute","globals.state","computed","Preferences","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwOE,QAAI,OAAOA,IAAAA,IAAI,KAAK;AAEpB,UAAM,OAAOA,IAAAA,IAAI,IAAI;AACpB,UAAM,aAAaA,IAAAA,IAAI,IAAI;AAE5B,UAAM,gBAAgBA,IAAAA,IAAI,IAAI;AAG9B,aAAS,oBAAoB;AAC3B,oBAAc,QAAQ;AAAA,IACxB;AAEA,aAAS,mBAAmB;AAC1B,oBAAc,QAAQ;AAAA,IACxB;AAGA,aAAS,qBAAqB;AAI5B,oBAAc,QAAQ;AAAA,IACxB;AAID,UAAM,QAAQC,UAAAA,SAAQ;AAGtB,UAAM,cAAcD,IAAAA,IAAI,MAAM,MAAM,WAAW;AAI/C,aAAS,qBAAqB;AAC5BE,cAAAA,MAAc,sBAAsB;AAAA,IACtC;AACA,aAAS,YAAW;AACnB,UAAI,WAAW,MAAO,YAAW,MAAM,YAAY;AAAA,IACpD;AAEA,UAAM,eAAeF,IAAAA,IAAI,CAAC;AAE1B,UAAM,SAASA,IAAAA,IAAI,IAAI;AAEvB,UAAM,cAAcG,IAAAA,SAAS,MAAM;AAClC,UAAI,aAAa,QAAQ,IAAI;AAC5B,eAAO,MAAM,KAAK,gBAAiB;AAAA,MACpC,OAAO;AACN,eAAO,MAAM,KAAK,gBAAgB;AAAA,MACnC;AAAA,IACD,CAAC;AAED,UAAM,eAAe,MAAM;AACzB,mBAAa,QAAQ,MAAM,OAAO;AAAA,IACpC;AAIC,UAAM,WAAWH,IAAAA,IAAI,KAAK;AAI1B,mBAAe,cAAc;AAC3B,YAAM,MAAM,MAAMI,MAAAA,YAAY,IAAI,EAAE,KAAK,aAAa;AACtD,eAAS,QAAQ,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,IAAI;AAAA,IACvD;AAEA,UAAM,iBAAiB,CAAC,UAAU;AAChC,eAAS,QAAQ;AAAA,IACnB;AAEDC,QAAAA,UAAU,YAAY;AACpB,YAAM,YAAW;AAGlB,UAAI,mBAAmB,aAAa,CAAC,OAAO,gBAAgB;AACzD,eAAO,iBAAiB,QAAQ,MAAM;AACpC,oBAAU,cAAc,SAAS,QAAQ,EAAE,KAAK,kBAAgB;AAC9D,oBAAQ,IAAI,2BAA2B,YAAY;AAAA,UACrD,CAAC,EAAE,MAAM,uBAAqB;AAC5B,oBAAQ,IAAI,4BAA4B,iBAAiB;AAAA,UAC3D,CAAC;AAAA,QACJ,CAAC;AAAA,MACF;AAED,YAAM,gBAAgB,aAAa,QAAQ,UAAU;AAEpD,UAAI,eAAe;AACjBH,gBAAAA,MAAc,WAAW,KAAK,MAAM,aAAa;AAAA,MACnD,WAAW,MAAM,KAAK,UAAU;AAC/BA,gBAAAA,MAAc,sBAAsB;AAAA,MACrC,OAAO;AACNA,gBAAAA,MAAc,sBAAsB;AAAA,MACrC;AAED,UAAI,YAAY,OAAO;AACrB,qBAAa,QAAQ,eAAe,YAAY,KAAK;AAAA,MACvD;AAEA,UAAI,KAAK,MAAO,MAAK,QAAQ;AAAA,IAC9B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Client.vue.cjs","sources":["../../../../../../../../src/modules/globals/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n\t<div \n\t\tid=\"app-wrapper\"\n\t\tclass=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n\t\t:class=\"{\n \t\t'pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t'bg-white': headerTheme === 'light',\n\t\t\t'bg-black': headerTheme === 'dark' \n \t}\"\n\t>\n\t\t<transition name=\"moveFromTop\" appear>\n\t\t\t<Loader v-if=\"!page || isPageLoading\" class=\"pos-fixed\"/>\n\t\t</transition>\n\n\n\t <transition \n\t name=\"moveFromTop\" \n\t mode=\"out-in\"\n\t >\n\t <section \n\t v-if=\"FirstUse && route.meta.walkthrough\"\n\t class=\"w-100 h-100\" \n\t >\n\t <component \n\t :is=\"route.meta.walkthrough\"\n\t name=\"Walkthrough\"\n\t @updateFirstUse=\"updateFirstUse\" \n\t :slides=\"[1,2,3]\" \n\t class=\"tab\"\n\t >\n\t </component>\n\t </section>\n\t </transition>\n\n <component\n\t\t\tv-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\" \n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n >\n \t<component\n\t\t v-if=\"route.meta?.header_navigation\"\n\t\t :is=\"route.meta.header_navigation\"\n\t\t :horizontal=\"true\"\n\t\t\t\t:navigationItems=\"route.meta.header_navigation_items\"\n\t\t\t\t:stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n \t</component>\n\n\t\t<transition name=\"moveFromTop\" mode=\"out-in\" appear>\n\t\t\t<component\n \tv-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n />\n\t\t</transition>\n\n\t <Popup \n\t \t@close-popup=\"closeLocationPopup\" \n\t \t:isPopupOpen=\"globals.state.isOpenLocationPopup\"\n\t \tclass=\"bg-white pd-semi w-m-33r radius-big\"\n\t >\t\n\t \t<LocationSelection />\n\t </Popup>\n\n\t <!-- class=\"flex flex-nowrap transition-ease-in-out o-hidden pos-relative\" -->\n\t\t<section \n\t\t\tid=\"screen\" \n\t\t\tref=\"screen\"\n\t\t\t@scroll=\"handleScroll\"\n\t\t\tclass=\"flex flex-nowrap h-100 pos-relative o-hidden transition-ease-in-out\"\n\t\t\t:class=\"{\n\t\t\t\t'': MOBILE_APP === 'ios',\n }\"\n\t\t>\n\t\t\t<ShopCart \n\t\t\t\t:class=\"{\n\t\t\t\t\t'mobile:pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t\t}\"\n\t\t\t/>\n\t <component\n\t v-if=\"route.meta?.sidebar && !MOBILE_APP\"\n\t v-slot=\"{ Component }\"\n\t :is=\"route.meta.sidebar\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t :widthHidden='route.meta?.sidebar_width_hidden'\n\t :width=\"route.meta?.sidebar_width\"\n\t :theme=\"headerTheme\"\n\t @closeSidebar=\"() => globals.state.isOpenSidebar = false\"\n\t >\n\t \t<transition name=\"moveFromTop\" mode=\"out-in\">\n\t\t <component\n\t\t v-if=\"route.meta?.sidebar_navigation\"\n\t\t :is=\"route.meta.sidebar_navigation\"\n\t\t :key=\"route.meta.sidebar_navigation\"\n\t\t :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t\t\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n\t </transition>\n\t </component>\n\t\t <!-- rows-1-min0_max1 z-index-1 pos-relative w-100 h-100 -->\n\t\t <div class=\"rows-1-min0_max1 z-index-1 pos-relative w-100 h-100\">\n\t\t \t<div id=\"scrollview\" ref=\"scrollview\" class=\"o-y-scroll o-x-hidden h-100\">\n\t \t\t\t<Status \n\t \t\t\t\tv-if=\"globals.state.error.show\"\n\t\t\t\t\t\t:data=\"globals.state.error\"\n\t\t\t\t\t\t@close=\"globals.state.error.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<Snack \n\t \t\t\t\tv-if=\"globals.state.snack.show\"\n\t\t\t\t\t\t:data=\"globals.state.snack\"\n\t\t\t\t\t\t@close=\"globals.state.snack.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<div class=\"h-min-100 pos-relative w-100\">\n\t\t\t\t\t\t<!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t\t\t\t<Breadcrumbs \n\t\t\t\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</section> -->\n\n\t\t\t\t \t\t<Suspense @resolve=\"onSuspenseResolved\">\n\t\t\t\t\t\t\t<router-view \n\t\t\t\t\t\t\t\tid=\"view\"\n\t\t\t\t\t\t\t\tv-slot=\"{ Component, route }\" \n\t\t\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t\t\t'scroll-hide': MOBILE_APP,\n\t\t\t\t\t\t\t\t}\"\n\t\t\t\t\t\t\t\tclass=\"h-min-100 pos-relative w-100\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t\t\t\t \t<component \n\t\t\t\t\t \t\tref=\"page\" \n\t\t\t\t\t \t\t:is=\"Component\" \n\t\t\t\t\t \t\tclass=\"w-100 h-min-100\"\n\t\t\t\t \t\t \t@page-loading=\"handlePageLoading\"\n\t\t\t @page-loaded=\"handlePageLoaded\"\n\t\t\t\t\t \t/>\n\t\t\t\t\t \t<!-- Key пока выключил непонятно какие проблемы это вызовет -->\n\t\t\t\t\t \t<!-- :key=\"route.path\" -->\n\t\t\t\t\t </transition>\n\t\t\t\t\t\t </router-view>\n\t\t\t\t\t\t</Suspense>\n\t\t\t\t </div>\n\n\t\t\t\t \t<component \n\t\t\t v-if=\"route.meta.player\"\n\t\t\t class=\"z-index-2\"\n\t\t\t \t:is=\"route.meta.player\"\n\t\t\t />\n\t\t\t \t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t <component\n\t\t\t\t\t\t\tv-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter && page && !isPageLoading\"\n\t\t\t\t ref=\"footer\" \n\t\t\t\t :is=\"route.meta.footer\"\n\t\t\t\t :theme=\"headerTheme\"\n\t\t\t\t :logotype=\"route.meta.logotype\"\n\t\t\t\t :location=\"route.meta.location\"\n\t\t\t\t />\n\t\t\t \t</transition>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</section>\n\n\t\t<router-view \n\t\t\tname=\"defaultBottom\"\n\t\t\tv-slot=\"{ Component, route }\" \n\t\t>\n\t\t\t<component \n \t\t:is=\"Component\" \n \t/>\n\t\t</router-view>\n\n\t\n\n\n <component \n v-if=\"MOBILE_APP && route.meta.title_hide\"\n class=\"z-index-2\"\n \t:is=\"route.meta.bottombar\"\n />\n\t</div>\n</template>\n\n\n\n<script setup>\n\timport { computed, ref, onMounted, watch } from 'vue';\n\t// Router\n\timport { useRoute } from 'vue-router';\n\t// Store\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n\t// Partials\n\timport Status from '@martyrs/src/components/Status/Status.vue';\n\timport Snack from '@martyrs/src/components/Status/Snack.vue';\n\timport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\timport NavigationBar from '@martyrs/src/modules/globals/views/components/partials/NavigationBar.vue';\n\timport LocationSelection from '@martyrs/src/modules/globals/views/components/partials/LocationSelection.vue';\n\n\timport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n\t// PROPS\n\tconst props = defineProps({\n env: {\n type: Object,\n required: true\n },\n app: {\n type: Object,\n required: true\n },\n modules: {\n type: Object,\n required: true\n }\n })\n\n\t/////////////////////////////\n // LOADING\n /////////////////////////////\n // State\n let show = ref(false)\n // Preloader\n const page = ref(null)\n const scrollview = ref(null)\n\n const isPageLoading = ref(true);\n \n // Обработчики событий загрузки\n function handlePageLoading() {\n isPageLoading.value = true;\n }\n \n function handlePageLoaded() {\n isPageLoading.value = false;\n }\n \n // Обработка события разрешения Suspense (когда async setup компонента завершается)\n function onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик \n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n isPageLoading.value = false;\n }\n\t/////////////////////////////\n\t// CREATED\n\t/////////////////////////////\n\tconst route = useRoute()\n\t// const router = useRouter()\n\t// Ref Code\n\tconst referalCode = ref(route.query.referalCode);\n\t/////////////////////////////\n\t// Methods\n\t/////////////////////////////\n\tfunction closeLocationPopup() {\n\t globals.state.isOpenLocationPopup = false;\n\t}\n\tfunction scrollTop(){\n\t\tif (scrollview.value) scrollview.value.scrollTop = 0;\n\t}\n\t// Scrolling header\n\tconst scrollOffset = ref(0)\n\tlet isScrolled = false\n\tconst header = ref(null)\n\n\tconst headerTheme = computed(() => {\n\t\tif (scrollOffset.value > 50) {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t} else {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t}\n\t})\n\n\tconst handleScroll = () => {\n\t scrollOffset.value = event.target.scrollTop\n\t};\n/////////////////////////////\n // FIRST USE\n /////////////////////////////\n const FirstUse = ref(false);\n\n import { Preferences } from '@capacitor/preferences';\n\n async function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n }\n\n const updateFirstUse = (value) => {\n FirstUse.value = value;\n }\n\n\tonMounted(async () => {\n\t await getFirstUse()\n\n\t\t// Регистрация единого Service Worker (PWA + push notifications)\n\t\tif ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n\t \twindow.addEventListener('load', () => {\n\t \tnavigator.serviceWorker.register('/sw.js').then(registration => {\n\t \tconsole.log('Unified SW registered: ', registration);\n\t \t}).catch(registrationError => {\n\t \tconsole.log('SW registration failed: ', registrationError);\n\t \t});\n\t });\n\t \t}\n\t\t\n\t\tconst savedPosition = localStorage.getItem('position');\n\n\t if (savedPosition) {\n\t globals.state.position = JSON.parse(savedPosition);\n\t } else if (route.meta.location) {\n \t\tglobals.state.isOpenLocationPopup = true;\n\t } else {\n\t \tglobals.state.isOpenLocationPopup = false;\n\t }\n\n\t\tif (referalCode.value) {\n\t\t localStorage.setItem('referalCode', referalCode.value);\n\t\t}\n\n\t\tif (page.value) show.value = true\n\t});\n</script>\n\n<style lang=\"scss\">\n\t.fade-enter-active, .fade-leave-active {\n\t transition: opacity .5s;\n\t}\n\t.fade-enter, .fade-leave-to /* .fade-leave-active в версии 2.1.8+ */ {\n\t opacity: 0;\n\t}\n\n\t\n .fade-move,\n .fade-enter-active,\n .fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n }\n\n /* 2. declare enter from and leave to state */\n .fade-enter-from,\n .fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n }\n\n /* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n .fade-leave-active {\n position: absolute;\n }\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition: all 0.3s ease, max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh; \n}\n\n\t.moveFromTopAbsolute-enter-active,\n\t.moveFromTopAbsolute-leave-active {\n\t\ttransform: translateY(0);\n\t\topacity: 1;\n\t\ttransition: all 0.5s ease; \n\t\t\n\t}\n\t.moveFromTopAbsolute-enter-from,\n\t.moveFromTopAbsolute-leave-to {\n\t\tposition: absolute;\n\t\ttransform: translateY(-1rem);\n\t\topacity: 0;\n\t\ttransition: all 0.5s ease;\n\t}\n\t.ScaleOut-enter-active,\n\t.ScaleOut-leave-active {\n\t\topacity: 1;\n\t\ttransform: scale(1);\n\t\ttransition: all 0.3s ease; \n\t\t\n\t}\n\t.ScaleOut-enter-from,\n\t.ScaleOut-leave-to {\n\t\topacity: 0;\n\t\ttransform: scale(0.9);\n\t\ttransition: all 0.3s ease;\n\t}\n\t.slide-fade-enter-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-leave-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tmin-height: 0;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.scaleTransition-5px-enter-active,\n .scaleTransition-5px-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n }\n\n .scaleTransition-5px-enter-from,\n .scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px); \n transition: all 0.2s ease;\n }\n\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleTransition-enter-active,\n .scaleTransition-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n }\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleIn-enter-active,\n .scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n > section,div { transform-origin: 0 0; transform: translateZ(0px); transition: all 0.5s ease; }\n }\n .scaleIn-enter-from,\n .scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n > section,div { transform: translateZ(-30px); transition: all 0.5s ease; }\n }\n</style>"],"names":["ref","useRoute","globals.state","computed","Preferences","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuOE,QAAI,OAAOA,IAAAA,IAAI,KAAK;AAEpB,UAAM,OAAOA,IAAAA,IAAI,IAAI;AACpB,UAAM,aAAaA,IAAAA,IAAI,IAAI;AAE5B,UAAM,gBAAgBA,IAAAA,IAAI,IAAI;AAG9B,aAAS,oBAAoB;AAC3B,oBAAc,QAAQ;AAAA,IACxB;AAEA,aAAS,mBAAmB;AAC1B,oBAAc,QAAQ;AAAA,IACxB;AAGA,aAAS,qBAAqB;AAI5B,oBAAc,QAAQ;AAAA,IACxB;AAID,UAAM,QAAQC,UAAAA,SAAQ;AAGtB,UAAM,cAAcD,IAAAA,IAAI,MAAM,MAAM,WAAW;AAI/C,aAAS,qBAAqB;AAC5BE,cAAAA,MAAc,sBAAsB;AAAA,IACtC;AACA,aAAS,YAAW;AACnB,UAAI,WAAW,MAAO,YAAW,MAAM,YAAY;AAAA,IACpD;AAEA,UAAM,eAAeF,IAAAA,IAAI,CAAC;AAE1B,UAAM,SAASA,IAAAA,IAAI,IAAI;AAEvB,UAAM,cAAcG,IAAAA,SAAS,MAAM;AAClC,UAAI,aAAa,QAAQ,IAAI;AAC5B,eAAO,MAAM,KAAK,gBAAiB;AAAA,MACpC,OAAO;AACN,eAAO,MAAM,KAAK,gBAAgB;AAAA,MACnC;AAAA,IACD,CAAC;AAED,UAAM,eAAe,MAAM;AACzB,mBAAa,QAAQ,MAAM,OAAO;AAAA,IACpC;AAIC,UAAM,WAAWH,IAAAA,IAAI,KAAK;AAI1B,mBAAe,cAAc;AAC3B,YAAM,MAAM,MAAMI,MAAAA,YAAY,IAAI,EAAE,KAAK,aAAa;AACtD,eAAS,QAAQ,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,IAAI;AAAA,IACvD;AAEA,UAAM,iBAAiB,CAAC,UAAU;AAChC,eAAS,QAAQ;AAAA,IACnB;AAEDC,QAAAA,UAAU,YAAY;AACpB,YAAM,YAAW;AAGlB,UAAI,mBAAmB,aAAa,CAAC,OAAO,gBAAgB;AACzD,eAAO,iBAAiB,QAAQ,MAAM;AACpC,oBAAU,cAAc,SAAS,QAAQ,EAAE,KAAK,kBAAgB;AAC9D,oBAAQ,IAAI,2BAA2B,YAAY;AAAA,UACrD,CAAC,EAAE,MAAM,uBAAqB;AAC5B,oBAAQ,IAAI,4BAA4B,iBAAiB;AAAA,UAC3D,CAAC;AAAA,QACJ,CAAC;AAAA,MACF;AAED,YAAM,gBAAgB,aAAa,QAAQ,UAAU;AAEpD,UAAI,eAAe;AACjBH,gBAAAA,MAAc,WAAW,KAAK,MAAM,aAAa;AAAA,MACnD,WAAW,MAAM,KAAK,UAAU;AAC/BA,gBAAAA,MAAc,sBAAsB;AAAA,MACrC,OAAO;AACNA,gBAAAA,MAAc,sBAAsB;AAAA,MACrC;AAED,UAAI,YAAY,OAAO;AACrB,qBAAa,QAAQ,eAAe,YAAY,KAAK;AAAA,MACvD;AAEA,UAAI,KAAK,MAAO,MAAK,QAAQ;AAAA,IAC9B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -6,7 +6,7 @@ import _sfc_main$5 from "../../../../../components/Status/Snack.vue.js";
6
6
  import _sfc_main$1 from "../../../../../components/Popup/Popup.vue.js";
7
7
  import "vue-i18n";
8
8
  /* empty css */
9
- import Loader from "../../../../../components/Loader/Loader.vue.js";
9
+ import Loader from "../../../../../components/Loader/Loader.vue2.js";
10
10
  /* empty css */
11
11
  import "../../../../orders/store/shopcart.js";
12
12
  import "../../../../auth/views/store/auth.js";
@@ -263,11 +263,10 @@ const _sfc_main = {
263
263
  (openBlock(), createBlock(resolveDynamicComponent(Component), {
264
264
  ref_key: "page",
265
265
  ref: page,
266
- key: route2.path,
267
266
  class: "w-100 h-min-100",
268
267
  onPageLoading: handlePageLoading,
269
268
  onPageLoaded: handlePageLoaded
270
- }, null, 32))
269
+ }, null, 544))
271
270
  ]),
272
271
  _: 2
273
272
  }, 1024)
@@ -1 +1 @@
1
- {"version":3,"file":"Client.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n\t<div \n\t\tid=\"app-wrapper\"\n\t\tclass=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n\t\t:class=\"{\n \t\t'pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t'bg-white': headerTheme === 'light',\n\t\t\t'bg-black': headerTheme === 'dark' \n \t}\"\n\t>\n\t\t<transition name=\"moveFromTop\" appear>\n\t\t\t<Loader v-if=\"!page || isPageLoading\" class=\"pos-fixed\"/>\n\t\t</transition>\n\n\n\t <transition \n\t name=\"moveFromTop\" \n\t mode=\"out-in\"\n\t >\n\t <section \n\t v-if=\"FirstUse && route.meta.walkthrough\"\n\t class=\"w-100 h-100\" \n\t >\n\t <component \n\t :is=\"route.meta.walkthrough\"\n\t name=\"Walkthrough\"\n\t @updateFirstUse=\"updateFirstUse\" \n\t :slides=\"[1,2,3]\" \n\t class=\"tab\"\n\t >\n\t </component>\n\t </section>\n\t </transition>\n\n <component\n\t\t\tv-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\" \n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n >\n \t<component\n\t\t v-if=\"route.meta?.header_navigation\"\n\t\t :is=\"route.meta.header_navigation\"\n\t\t :horizontal=\"true\"\n\t\t\t\t:navigationItems=\"route.meta.header_navigation_items\"\n\t\t\t\t:stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n \t</component>\n\n\t\t<transition name=\"moveFromTop\" mode=\"out-in\" appear>\n\t\t\t<component\n \tv-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n />\n\t\t</transition>\n\n\t <Popup \n\t \t@close-popup=\"closeLocationPopup\" \n\t \t:isPopupOpen=\"globals.state.isOpenLocationPopup\"\n\t \tclass=\"bg-white pd-semi w-m-33r radius-big\"\n\t >\t\n\t \t<LocationSelection />\n\t </Popup>\n\n\t <!-- class=\"flex flex-nowrap transition-ease-in-out o-hidden pos-relative\" -->\n\t\t<section \n\t\t\tid=\"screen\" \n\t\t\tref=\"screen\"\n\t\t\t@scroll=\"handleScroll\"\n\t\t\tclass=\"flex flex-nowrap h-100 pos-relative o-hidden transition-ease-in-out\"\n\t\t\t:class=\"{\n\t\t\t\t'': MOBILE_APP === 'ios',\n }\"\n\t\t>\n\t\t\t<ShopCart \n\t\t\t\t:class=\"{\n\t\t\t\t\t'mobile:pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t\t}\"\n\t\t\t/>\n\t <component\n\t v-if=\"route.meta?.sidebar && !MOBILE_APP\"\n\t v-slot=\"{ Component }\"\n\t :is=\"route.meta.sidebar\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t :widthHidden='route.meta?.sidebar_width_hidden'\n\t :width=\"route.meta?.sidebar_width\"\n\t :theme=\"headerTheme\"\n\t @closeSidebar=\"() => globals.state.isOpenSidebar = false\"\n\t >\n\t \t<transition name=\"moveFromTop\" mode=\"out-in\">\n\t\t <component\n\t\t v-if=\"route.meta?.sidebar_navigation\"\n\t\t :is=\"route.meta.sidebar_navigation\"\n\t\t :key=\"route.meta.sidebar_navigation\"\n\t\t :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t\t\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n\t </transition>\n\t </component>\n\t\t <!-- rows-1-min0_max1 z-index-1 pos-relative w-100 h-100 -->\n\t\t <div class=\"rows-1-min0_max1 z-index-1 pos-relative w-100 h-100\">\n\t\t \t<div id=\"scrollview\" ref=\"scrollview\" class=\"o-y-scroll o-x-hidden h-100\">\n\t \t\t\t<Status \n\t \t\t\t\tv-if=\"globals.state.error.show\"\n\t\t\t\t\t\t:data=\"globals.state.error\"\n\t\t\t\t\t\t@close=\"globals.state.error.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<Snack \n\t \t\t\t\tv-if=\"globals.state.snack.show\"\n\t\t\t\t\t\t:data=\"globals.state.snack\"\n\t\t\t\t\t\t@close=\"globals.state.snack.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<div class=\"h-min-100 pos-relative w-100\">\n\t\t\t\t\t\t<!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t\t\t\t<Breadcrumbs \n\t\t\t\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</section> -->\n\n\t\t\t\t \t\t<Suspense @resolve=\"onSuspenseResolved\">\n\t\t\t\t\t\t\t<router-view \n\t\t\t\t\t\t\t\tid=\"view\"\n\t\t\t\t\t\t\t\tv-slot=\"{ Component, route }\" \n\t\t\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t\t\t'scroll-hide': MOBILE_APP,\n\t\t\t\t\t\t\t\t}\"\n\t\t\t\t\t\t\t\tclass=\"h-min-100 pos-relative w-100\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t\t\t\t \t<component \n\t\t\t\t\t \t\tref=\"page\" \n\t\t\t\t\t \t\t:is=\"Component\" \n\t\t\t\t\t \t\t:key=\"route.path\"\n\t\t\t\t\t \t\tclass=\"w-100 h-min-100\"\n\t\t\t\t \t\t \t@page-loading=\"handlePageLoading\"\n\t\t\t @page-loaded=\"handlePageLoaded\"\n\t\t\t\t\t \t/>\n\t\t\t\t\t \t<!-- Key пока выключил непонятно какие проблемы это вызовет -->\n\t\t\t\t\t \t<!-- -->\n\t\t\t\t\t </transition>\n\t\t\t\t\t\t </router-view>\n\t\t\t\t\t\t</Suspense>\n\t\t\t\t </div>\n\n\t\t\t\t \t<component \n\t\t\t v-if=\"route.meta.player\"\n\t\t\t class=\"z-index-2\"\n\t\t\t \t:is=\"route.meta.player\"\n\t\t\t />\n\t\t\t \t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t <component\n\t\t\t\t\t\t\tv-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter && page && !isPageLoading\"\n\t\t\t\t ref=\"footer\" \n\t\t\t\t :is=\"route.meta.footer\"\n\t\t\t\t :theme=\"headerTheme\"\n\t\t\t\t :logotype=\"route.meta.logotype\"\n\t\t\t\t :location=\"route.meta.location\"\n\t\t\t\t />\n\t\t\t \t</transition>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</section>\n\n\t\t<router-view \n\t\t\tname=\"defaultBottom\"\n\t\t\tv-slot=\"{ Component, route }\" \n\t\t>\n\t\t\t<component \n \t\t:is=\"Component\" \n \t/>\n\t\t</router-view>\n\n\t\n\n\n <component \n v-if=\"MOBILE_APP && route.meta.title_hide\"\n class=\"z-index-2\"\n \t:is=\"route.meta.bottombar\"\n />\n\t</div>\n</template>\n\n\n\n<script setup>\n\timport { computed, ref, onMounted, watch } from 'vue';\n\t// Router\n\timport { useRoute } from 'vue-router';\n\t// Store\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n\t// Partials\n\timport Status from '@martyrs/src/components/Status/Status.vue';\n\timport Snack from '@martyrs/src/components/Status/Snack.vue';\n\timport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\timport NavigationBar from '@martyrs/src/modules/globals/views/components/partials/NavigationBar.vue';\n\timport LocationSelection from '@martyrs/src/modules/globals/views/components/partials/LocationSelection.vue';\n\n\timport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n\t// PROPS\n\tconst props = defineProps({\n env: {\n type: Object,\n required: true\n },\n app: {\n type: Object,\n required: true\n },\n modules: {\n type: Object,\n required: true\n }\n })\n\n\t/////////////////////////////\n // LOADING\n /////////////////////////////\n // State\n let show = ref(false)\n // Preloader\n const page = ref(null)\n const scrollview = ref(null)\n\n const isPageLoading = ref(true);\n \n // Обработчики событий загрузки\n function handlePageLoading() {\n isPageLoading.value = true;\n }\n \n function handlePageLoaded() {\n isPageLoading.value = false;\n }\n \n // Обработка события разрешения Suspense (когда async setup компонента завершается)\n function onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик \n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n isPageLoading.value = false;\n }\n\t/////////////////////////////\n\t// CREATED\n\t/////////////////////////////\n\tconst route = useRoute()\n\t// const router = useRouter()\n\t// Ref Code\n\tconst referalCode = ref(route.query.referalCode);\n\t/////////////////////////////\n\t// Methods\n\t/////////////////////////////\n\tfunction closeLocationPopup() {\n\t globals.state.isOpenLocationPopup = false;\n\t}\n\tfunction scrollTop(){\n\t\tif (scrollview.value) scrollview.value.scrollTop = 0;\n\t}\n\t// Scrolling header\n\tconst scrollOffset = ref(0)\n\tlet isScrolled = false\n\tconst header = ref(null)\n\n\tconst headerTheme = computed(() => {\n\t\tif (scrollOffset.value > 50) {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t} else {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t}\n\t})\n\n\tconst handleScroll = () => {\n\t scrollOffset.value = event.target.scrollTop\n\t};\n/////////////////////////////\n // FIRST USE\n /////////////////////////////\n const FirstUse = ref(false);\n\n import { Preferences } from '@capacitor/preferences';\n\n async function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n }\n\n const updateFirstUse = (value) => {\n FirstUse.value = value;\n }\n\n\tonMounted(async () => {\n\t await getFirstUse()\n\n\t\t// Регистрация единого Service Worker (PWA + push notifications)\n\t\tif ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n\t \twindow.addEventListener('load', () => {\n\t \tnavigator.serviceWorker.register('/sw.js').then(registration => {\n\t \tconsole.log('Unified SW registered: ', registration);\n\t \t}).catch(registrationError => {\n\t \tconsole.log('SW registration failed: ', registrationError);\n\t \t});\n\t });\n\t \t}\n\t\t\n\t\tconst savedPosition = localStorage.getItem('position');\n\n\t if (savedPosition) {\n\t globals.state.position = JSON.parse(savedPosition);\n\t } else if (route.meta.location) {\n \t\tglobals.state.isOpenLocationPopup = true;\n\t } else {\n\t \tglobals.state.isOpenLocationPopup = false;\n\t }\n\n\t\tif (referalCode.value) {\n\t\t localStorage.setItem('referalCode', referalCode.value);\n\t\t}\n\n\t\tif (page.value) show.value = true\n\t});\n</script>\n\n<style lang=\"scss\">\n\t.fade-enter-active, .fade-leave-active {\n\t transition: opacity .5s;\n\t}\n\t.fade-enter, .fade-leave-to /* .fade-leave-active в версии 2.1.8+ */ {\n\t opacity: 0;\n\t}\n\n\t\n .fade-move,\n .fade-enter-active,\n .fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n }\n\n /* 2. declare enter from and leave to state */\n .fade-enter-from,\n .fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n }\n\n /* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n .fade-leave-active {\n position: absolute;\n }\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition: all 0.3s ease, max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh; \n}\n\n\t.moveFromTopAbsolute-enter-active,\n\t.moveFromTopAbsolute-leave-active {\n\t\ttransform: translateY(0);\n\t\topacity: 1;\n\t\ttransition: all 0.5s ease; \n\t\t\n\t}\n\t.moveFromTopAbsolute-enter-from,\n\t.moveFromTopAbsolute-leave-to {\n\t\tposition: absolute;\n\t\ttransform: translateY(-1rem);\n\t\topacity: 0;\n\t\ttransition: all 0.5s ease;\n\t}\n\t.ScaleOut-enter-active,\n\t.ScaleOut-leave-active {\n\t\topacity: 1;\n\t\ttransform: scale(1);\n\t\ttransition: all 0.3s ease; \n\t\t\n\t}\n\t.ScaleOut-enter-from,\n\t.ScaleOut-leave-to {\n\t\topacity: 0;\n\t\ttransform: scale(0.9);\n\t\ttransition: all 0.3s ease;\n\t}\n\t.slide-fade-enter-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-leave-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tmin-height: 0;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.scaleTransition-5px-enter-active,\n .scaleTransition-5px-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n }\n\n .scaleTransition-5px-enter-from,\n .scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px); \n transition: all 0.2s ease;\n }\n\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleTransition-enter-active,\n .scaleTransition-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n }\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleIn-enter-active,\n .scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n > section,div { transform-origin: 0 0; transform: translateZ(0px); transition: all 0.5s ease; }\n }\n .scaleIn-enter-from,\n .scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n > section,div { transform: translateZ(-30px); transition: all 0.5s ease; }\n }\n</style>"],"names":["globals.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwOE,QAAI,OAAO,IAAI,KAAK;AAEpB,UAAM,OAAO,IAAI,IAAI;AACpB,UAAM,aAAa,IAAI,IAAI;AAE5B,UAAM,gBAAgB,IAAI,IAAI;AAG9B,aAAS,oBAAoB;AAC3B,oBAAc,QAAQ;AAAA,IACxB;AAEA,aAAS,mBAAmB;AAC1B,oBAAc,QAAQ;AAAA,IACxB;AAGA,aAAS,qBAAqB;AAI5B,oBAAc,QAAQ;AAAA,IACxB;AAID,UAAM,QAAQ,SAAQ;AAGtB,UAAM,cAAc,IAAI,MAAM,MAAM,WAAW;AAI/C,aAAS,qBAAqB;AAC5BA,YAAc,sBAAsB;AAAA,IACtC;AACA,aAAS,YAAW;AACnB,UAAI,WAAW,MAAO,YAAW,MAAM,YAAY;AAAA,IACpD;AAEA,UAAM,eAAe,IAAI,CAAC;AAE1B,UAAM,SAAS,IAAI,IAAI;AAEvB,UAAM,cAAc,SAAS,MAAM;AAClC,UAAI,aAAa,QAAQ,IAAI;AAC5B,eAAO,MAAM,KAAK,gBAAiB;AAAA,MACpC,OAAO;AACN,eAAO,MAAM,KAAK,gBAAgB;AAAA,MACnC;AAAA,IACD,CAAC;AAED,UAAM,eAAe,MAAM;AACzB,mBAAa,QAAQ,MAAM,OAAO;AAAA,IACpC;AAIC,UAAM,WAAW,IAAI,KAAK;AAI1B,mBAAe,cAAc;AAC3B,YAAM,MAAM,MAAM,YAAY,IAAI,EAAE,KAAK,aAAa;AACtD,eAAS,QAAQ,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,IAAI;AAAA,IACvD;AAEA,UAAM,iBAAiB,CAAC,UAAU;AAChC,eAAS,QAAQ;AAAA,IACnB;AAED,cAAU,YAAY;AACpB,YAAM,YAAW;AAGlB,UAAI,mBAAmB,aAAa,CAAC,OAAO,gBAAgB;AACzD,eAAO,iBAAiB,QAAQ,MAAM;AACpC,oBAAU,cAAc,SAAS,QAAQ,EAAE,KAAK,kBAAgB;AAC9D,oBAAQ,IAAI,2BAA2B,YAAY;AAAA,UACrD,CAAC,EAAE,MAAM,uBAAqB;AAC5B,oBAAQ,IAAI,4BAA4B,iBAAiB;AAAA,UAC3D,CAAC;AAAA,QACJ,CAAC;AAAA,MACF;AAED,YAAM,gBAAgB,aAAa,QAAQ,UAAU;AAEpD,UAAI,eAAe;AACjBA,cAAc,WAAW,KAAK,MAAM,aAAa;AAAA,MACnD,WAAW,MAAM,KAAK,UAAU;AAC/BA,cAAc,sBAAsB;AAAA,MACrC,OAAO;AACNA,cAAc,sBAAsB;AAAA,MACrC;AAED,UAAI,YAAY,OAAO;AACrB,qBAAa,QAAQ,eAAe,YAAY,KAAK;AAAA,MACvD;AAEA,UAAI,KAAK,MAAO,MAAK,QAAQ;AAAA,IAC9B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Client.vue.js","sources":["../../../../../../../../src/modules/globals/views/components/layouts/Client.vue"],"sourcesContent":["<template>\n\t<div \n\t\tid=\"app-wrapper\"\n\t\tclass=\"flex flex-column h-100 w-100 pos-relative o-hidden\"\n\t\t:class=\"{\n \t\t'pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t'bg-white': headerTheme === 'light',\n\t\t\t'bg-black': headerTheme === 'dark' \n \t}\"\n\t>\n\t\t<transition name=\"moveFromTop\" appear>\n\t\t\t<Loader v-if=\"!page || isPageLoading\" class=\"pos-fixed\"/>\n\t\t</transition>\n\n\n\t <transition \n\t name=\"moveFromTop\" \n\t mode=\"out-in\"\n\t >\n\t <section \n\t v-if=\"FirstUse && route.meta.walkthrough\"\n\t class=\"w-100 h-100\" \n\t >\n\t <component \n\t :is=\"route.meta.walkthrough\"\n\t name=\"Walkthrough\"\n\t @updateFirstUse=\"updateFirstUse\" \n\t :slides=\"[1,2,3]\" \n\t class=\"tab\"\n\t >\n\t </component>\n\t </section>\n\t </transition>\n\n <component\n\t\t\tv-if=\"!MOBILE_APP && route.meta.header\"\n ref=\"header\" \n :is=\"route.meta.header\"\n :theme=\"headerTheme\"\n :logotype=\"route.meta.logotype\"\n :location=\"route.meta.location\"\n >\n \t<component\n\t\t v-if=\"route.meta?.header_navigation\"\n\t\t :is=\"route.meta.header_navigation\"\n\t\t :horizontal=\"true\"\n\t\t\t\t:navigationItems=\"route.meta.header_navigation_items\"\n\t\t\t\t:stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n \t</component>\n\n\t\t<transition name=\"moveFromTop\" mode=\"out-in\" appear>\n\t\t\t<component\n \tv-if=\"MOBILE_APP && !route.meta.hideNavigationBar\"\n :is=\"route.meta.navigationbar\"\n :logotype=\"route.meta.logotype\"\n :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n />\n\t\t</transition>\n\n\t <Popup \n\t \t@close-popup=\"closeLocationPopup\" \n\t \t:isPopupOpen=\"globals.state.isOpenLocationPopup\"\n\t \tclass=\"bg-white pd-semi w-m-33r radius-big\"\n\t >\t\n\t \t<LocationSelection />\n\t </Popup>\n\n\t <!-- class=\"flex flex-nowrap transition-ease-in-out o-hidden pos-relative\" -->\n\t\t<section \n\t\t\tid=\"screen\" \n\t\t\tref=\"screen\"\n\t\t\t@scroll=\"handleScroll\"\n\t\t\tclass=\"flex flex-nowrap h-100 pos-relative o-hidden transition-ease-in-out\"\n\t\t\t:class=\"{\n\t\t\t\t'': MOBILE_APP === 'ios',\n }\"\n\t\t>\n\t\t\t<ShopCart \n\t\t\t\t:class=\"{\n\t\t\t\t\t'mobile:pd-t-extra': MOBILE_APP === 'ios', \n\t\t\t\t}\"\n\t\t\t/>\n\t <component\n\t v-if=\"route.meta?.sidebar && !MOBILE_APP\"\n\t v-slot=\"{ Component }\"\n\t :is=\"route.meta.sidebar\"\n\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t :widthHidden='route.meta?.sidebar_width_hidden'\n\t :width=\"route.meta?.sidebar_width\"\n\t :theme=\"headerTheme\"\n\t @closeSidebar=\"() => globals.state.isOpenSidebar = false\"\n\t >\n\t \t<transition name=\"moveFromTop\" mode=\"out-in\">\n\t\t <component\n\t\t v-if=\"route.meta?.sidebar_navigation\"\n\t\t :is=\"route.meta.sidebar_navigation\"\n\t\t :key=\"route.meta.sidebar_navigation\"\n\t\t :navigationItems=\"route.meta.sidebar_navigation_items\"\n\t\t\t :stateSidebar=\"globals.state.isOpenSidebar\" \n\t\t\t\t\t\t:theme=\"headerTheme\"\n\t\t />\n\t </transition>\n\t </component>\n\t\t <!-- rows-1-min0_max1 z-index-1 pos-relative w-100 h-100 -->\n\t\t <div class=\"rows-1-min0_max1 z-index-1 pos-relative w-100 h-100\">\n\t\t \t<div id=\"scrollview\" ref=\"scrollview\" class=\"o-y-scroll o-x-hidden h-100\">\n\t \t\t\t<Status \n\t \t\t\t\tv-if=\"globals.state.error.show\"\n\t\t\t\t\t\t:data=\"globals.state.error\"\n\t\t\t\t\t\t@close=\"globals.state.error.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<Snack \n\t \t\t\t\tv-if=\"globals.state.snack.show\"\n\t\t\t\t\t\t:data=\"globals.state.snack\"\n\t\t\t\t\t\t@close=\"globals.state.snack.show = false\"\n\t\t\t\t\t\tclass=\"z-index-7\" \n\t\t\t\t\t/>\n\t\t\t\t\t<div class=\"h-min-100 pos-relative w-100\">\n\t\t\t\t\t\t<!-- <section v-if=\"!route.meta?.breadcrumbs?.hide\" class=\"pd-thin pd-b-zero\">\n\t\t\t\t\t\t\t<Breadcrumbs \n\t\t\t\t\t\t\t\tv-if=\"!MOBILE_APP\"\n\t\t\t\t\t\t\t\tclass=\"bg-light pd-small radius-small\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</section> -->\n\n\t\t\t\t \t\t<Suspense @resolve=\"onSuspenseResolved\">\n\t\t\t\t\t\t\t<router-view \n\t\t\t\t\t\t\t\tid=\"view\"\n\t\t\t\t\t\t\t\tv-slot=\"{ Component, route }\" \n\t\t\t\t\t\t\t\t:class=\"{\n\t\t\t\t\t\t\t\t\t'scroll-hide': MOBILE_APP,\n\t\t\t\t\t\t\t\t}\"\n\t\t\t\t\t\t\t\tclass=\"h-min-100 pos-relative w-100\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t\t\t\t \t<component \n\t\t\t\t\t \t\tref=\"page\" \n\t\t\t\t\t \t\t:is=\"Component\" \n\t\t\t\t\t \t\tclass=\"w-100 h-min-100\"\n\t\t\t\t \t\t \t@page-loading=\"handlePageLoading\"\n\t\t\t @page-loaded=\"handlePageLoaded\"\n\t\t\t\t\t \t/>\n\t\t\t\t\t \t<!-- Key пока выключил непонятно какие проблемы это вызовет -->\n\t\t\t\t\t \t<!-- :key=\"route.path\" -->\n\t\t\t\t\t </transition>\n\t\t\t\t\t\t </router-view>\n\t\t\t\t\t\t</Suspense>\n\t\t\t\t </div>\n\n\t\t\t\t \t<component \n\t\t\t v-if=\"route.meta.player\"\n\t\t\t class=\"z-index-2\"\n\t\t\t \t:is=\"route.meta.player\"\n\t\t\t />\n\t\t\t \t<transition @before-enter=\"scrollTop\" name=\"scaleTransition\" mode=\"out-in\" appear>\n\t\t <component\n\t\t\t\t\t\t\tv-if=\"!MOBILE_APP && route.meta.footer && !route.meta.hideFooter && page && !isPageLoading\"\n\t\t\t\t ref=\"footer\" \n\t\t\t\t :is=\"route.meta.footer\"\n\t\t\t\t :theme=\"headerTheme\"\n\t\t\t\t :logotype=\"route.meta.logotype\"\n\t\t\t\t :location=\"route.meta.location\"\n\t\t\t\t />\n\t\t\t \t</transition>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</section>\n\n\t\t<router-view \n\t\t\tname=\"defaultBottom\"\n\t\t\tv-slot=\"{ Component, route }\" \n\t\t>\n\t\t\t<component \n \t\t:is=\"Component\" \n \t/>\n\t\t</router-view>\n\n\t\n\n\n <component \n v-if=\"MOBILE_APP && route.meta.title_hide\"\n class=\"z-index-2\"\n \t:is=\"route.meta.bottombar\"\n />\n\t</div>\n</template>\n\n\n\n<script setup>\n\timport { computed, ref, onMounted, watch } from 'vue';\n\t// Router\n\timport { useRoute } from 'vue-router';\n\t// Store\n\timport * as globals from '@martyrs/src/modules/globals/views/store/globals.js';\n\t// Partials\n\timport Status from '@martyrs/src/components/Status/Status.vue';\n\timport Snack from '@martyrs/src/components/Status/Snack.vue';\n\timport Popup from '@martyrs/src/components/Popup/Popup.vue';\n\timport Breadcrumbs from '@martyrs/src/components/Breadcrumbs/Breadcrumbs.vue'\n\timport Loader from '@martyrs/src/components/Loader/Loader.vue';\n\n\timport NavigationBar from '@martyrs/src/modules/globals/views/components/partials/NavigationBar.vue';\n\timport LocationSelection from '@martyrs/src/modules/globals/views/components/partials/LocationSelection.vue';\n\n\timport ShopCart from '@martyrs/src/modules/orders/components/partials/ShopCart.vue';\n\t// PROPS\n\tconst props = defineProps({\n env: {\n type: Object,\n required: true\n },\n app: {\n type: Object,\n required: true\n },\n modules: {\n type: Object,\n required: true\n }\n })\n\n\t/////////////////////////////\n // LOADING\n /////////////////////////////\n // State\n let show = ref(false)\n // Preloader\n const page = ref(null)\n const scrollview = ref(null)\n\n const isPageLoading = ref(true);\n \n // Обработчики событий загрузки\n function handlePageLoading() {\n isPageLoading.value = true;\n }\n \n function handlePageLoaded() {\n isPageLoading.value = false;\n }\n \n // Обработка события разрешения Suspense (когда async setup компонента завершается)\n function onSuspenseResolved() {\n // Если страница не отправляет событие page-loaded, этот обработчик \n // может служить запасным вариантом для отключения лоадера\n // Можно оставить закомментированным, если все страницы будут явно вызывать handlePageLoaded\n isPageLoading.value = false;\n }\n\t/////////////////////////////\n\t// CREATED\n\t/////////////////////////////\n\tconst route = useRoute()\n\t// const router = useRouter()\n\t// Ref Code\n\tconst referalCode = ref(route.query.referalCode);\n\t/////////////////////////////\n\t// Methods\n\t/////////////////////////////\n\tfunction closeLocationPopup() {\n\t globals.state.isOpenLocationPopup = false;\n\t}\n\tfunction scrollTop(){\n\t\tif (scrollview.value) scrollview.value.scrollTop = 0;\n\t}\n\t// Scrolling header\n\tconst scrollOffset = ref(0)\n\tlet isScrolled = false\n\tconst header = ref(null)\n\n\tconst headerTheme = computed(() => {\n\t\tif (scrollOffset.value > 50) {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t} else {\n\t\t\treturn route.meta.header_theme || 'light'\n\t\t}\n\t})\n\n\tconst handleScroll = () => {\n\t scrollOffset.value = event.target.scrollTop\n\t};\n/////////////////////////////\n // FIRST USE\n /////////////////////////////\n const FirstUse = ref(false);\n\n import { Preferences } from '@capacitor/preferences';\n\n async function getFirstUse() {\n const ret = await Preferences.get({ key: 'first-use' });\n FirstUse.value = ret.value ? JSON.parse(ret.value) : true;\n }\n\n const updateFirstUse = (value) => {\n FirstUse.value = value;\n }\n\n\tonMounted(async () => {\n\t await getFirstUse()\n\n\t\t// Регистрация единого Service Worker (PWA + push notifications)\n\t\tif ('serviceWorker' in navigator && !window.__MOBILE_APP__) {\n\t \twindow.addEventListener('load', () => {\n\t \tnavigator.serviceWorker.register('/sw.js').then(registration => {\n\t \tconsole.log('Unified SW registered: ', registration);\n\t \t}).catch(registrationError => {\n\t \tconsole.log('SW registration failed: ', registrationError);\n\t \t});\n\t });\n\t \t}\n\t\t\n\t\tconst savedPosition = localStorage.getItem('position');\n\n\t if (savedPosition) {\n\t globals.state.position = JSON.parse(savedPosition);\n\t } else if (route.meta.location) {\n \t\tglobals.state.isOpenLocationPopup = true;\n\t } else {\n\t \tglobals.state.isOpenLocationPopup = false;\n\t }\n\n\t\tif (referalCode.value) {\n\t\t localStorage.setItem('referalCode', referalCode.value);\n\t\t}\n\n\t\tif (page.value) show.value = true\n\t});\n</script>\n\n<style lang=\"scss\">\n\t.fade-enter-active, .fade-leave-active {\n\t transition: opacity .5s;\n\t}\n\t.fade-enter, .fade-leave-to /* .fade-leave-active в версии 2.1.8+ */ {\n\t opacity: 0;\n\t}\n\n\t\n .fade-move,\n .fade-enter-active,\n .fade-leave-active {\n transition: all 0.5s cubic-bezier(0.55, 0, 0.1, 1);\n }\n\n /* 2. declare enter from and leave to state */\n .fade-enter-from,\n .fade-leave-to {\n opacity: 0;\n transform: translate(30px, 0);\n }\n\n /* 3. ensure leaving items are taken out of layout flow so that moving\n animations can be calculated correctly. */\n .fade-leave-active {\n position: absolute;\n }\n\n.moveFromTop-enter-active,\n.moveFromTop-leave-active {\n transition: all 0.3s ease, max-height 0.2s ease;\n overflow: hidden;\n}\n\n.moveFromTop-enter-from,\n.moveFromTop-leave-to {\n transform: translateY(-1rem);\n opacity: 0;\n // max-height: 0;\n}\n\n.moveFromTop-enter-to,\n.moveFromTop-leave-from {\n // max-height: 100vh; \n}\n\n\t.moveFromTopAbsolute-enter-active,\n\t.moveFromTopAbsolute-leave-active {\n\t\ttransform: translateY(0);\n\t\topacity: 1;\n\t\ttransition: all 0.5s ease; \n\t\t\n\t}\n\t.moveFromTopAbsolute-enter-from,\n\t.moveFromTopAbsolute-leave-to {\n\t\tposition: absolute;\n\t\ttransform: translateY(-1rem);\n\t\topacity: 0;\n\t\ttransition: all 0.5s ease;\n\t}\n\t.ScaleOut-enter-active,\n\t.ScaleOut-leave-active {\n\t\topacity: 1;\n\t\ttransform: scale(1);\n\t\ttransition: all 0.3s ease; \n\t\t\n\t}\n\t.ScaleOut-enter-from,\n\t.ScaleOut-leave-to {\n\t\topacity: 0;\n\t\ttransform: scale(0.9);\n\t\ttransition: all 0.3s ease;\n\t}\n\t.slide-fade-enter-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-leave-active {\n\t\t// min-height: 100vh;\n\t transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tmin-height: 0;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.scaleTransition-5px-enter-active,\n .scaleTransition-5px-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.2s ease;\n }\n\n .scaleTransition-5px-enter-from,\n .scaleTransition-5px-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n transform: translateY(-30px); \n transition: all 0.2s ease;\n }\n\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleTransition-enter-active,\n .scaleTransition-leave-active {\n transform: translateY(0px); \n opacity: 1;\n z-index: 1;\n transition: all 0.5s ease;\n }\n .scaleTransition-enter-from,\n .scaleTransition-leave-to {\n opacity: 0;\n z-index: 0;\n position: absolute;\n width: inherit;\n height: inherit;\n display: block;\n transform: translateY(30px); \n transition: all 0.5s ease;\n }\n\n .scaleIn-enter-active,\n .scaleIn-leave-active {\n // background: red;\n transition: all 0.5s ease;\n > section,div { transform-origin: 0 0; transform: translateZ(0px); transition: all 0.5s ease; }\n }\n .scaleIn-enter-from,\n .scaleIn-leave-to {\n opacity: 0;\n transform: scale(0.95);\n > section,div { transform: translateZ(-30px); transition: all 0.5s ease; }\n }\n</style>"],"names":["globals.state"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuOE,QAAI,OAAO,IAAI,KAAK;AAEpB,UAAM,OAAO,IAAI,IAAI;AACpB,UAAM,aAAa,IAAI,IAAI;AAE5B,UAAM,gBAAgB,IAAI,IAAI;AAG9B,aAAS,oBAAoB;AAC3B,oBAAc,QAAQ;AAAA,IACxB;AAEA,aAAS,mBAAmB;AAC1B,oBAAc,QAAQ;AAAA,IACxB;AAGA,aAAS,qBAAqB;AAI5B,oBAAc,QAAQ;AAAA,IACxB;AAID,UAAM,QAAQ,SAAQ;AAGtB,UAAM,cAAc,IAAI,MAAM,MAAM,WAAW;AAI/C,aAAS,qBAAqB;AAC5BA,YAAc,sBAAsB;AAAA,IACtC;AACA,aAAS,YAAW;AACnB,UAAI,WAAW,MAAO,YAAW,MAAM,YAAY;AAAA,IACpD;AAEA,UAAM,eAAe,IAAI,CAAC;AAE1B,UAAM,SAAS,IAAI,IAAI;AAEvB,UAAM,cAAc,SAAS,MAAM;AAClC,UAAI,aAAa,QAAQ,IAAI;AAC5B,eAAO,MAAM,KAAK,gBAAiB;AAAA,MACpC,OAAO;AACN,eAAO,MAAM,KAAK,gBAAgB;AAAA,MACnC;AAAA,IACD,CAAC;AAED,UAAM,eAAe,MAAM;AACzB,mBAAa,QAAQ,MAAM,OAAO;AAAA,IACpC;AAIC,UAAM,WAAW,IAAI,KAAK;AAI1B,mBAAe,cAAc;AAC3B,YAAM,MAAM,MAAM,YAAY,IAAI,EAAE,KAAK,aAAa;AACtD,eAAS,QAAQ,IAAI,QAAQ,KAAK,MAAM,IAAI,KAAK,IAAI;AAAA,IACvD;AAEA,UAAM,iBAAiB,CAAC,UAAU;AAChC,eAAS,QAAQ;AAAA,IACnB;AAED,cAAU,YAAY;AACpB,YAAM,YAAW;AAGlB,UAAI,mBAAmB,aAAa,CAAC,OAAO,gBAAgB;AACzD,eAAO,iBAAiB,QAAQ,MAAM;AACpC,oBAAU,cAAc,SAAS,QAAQ,EAAE,KAAK,kBAAgB;AAC9D,oBAAQ,IAAI,2BAA2B,YAAY;AAAA,UACrD,CAAC,EAAE,MAAM,uBAAqB;AAC5B,oBAAQ,IAAI,4BAA4B,iBAAiB;AAAA,UAC3D,CAAC;AAAA,QACJ,CAAC;AAAA,MACF;AAED,YAAM,gBAAgB,aAAa,QAAQ,UAAU;AAEpD,UAAI,eAAe;AACjBA,cAAc,WAAW,KAAK,MAAM,aAAa;AAAA,MACnD,WAAW,MAAM,KAAK,UAAU;AAC/BA,cAAc,sBAAsB;AAAA,MACrC,OAAO;AACNA,cAAc,sBAAsB;AAAA,MACrC;AAED,UAAI,YAAY,OAAO;AACrB,qBAAa,QAAQ,eAAe,YAAY,KAAK;AAAA,MACvD;AAEA,UAAI,KAAK,MAAO,MAAK,QAAQ;AAAA,IAC9B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}