@ozdao/martyrs 0.2.537 → 0.2.538

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 (287) 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/martyrs/src/components/Button/{Button.vue2.cjs → Button.vue.cjs} +3 -3
  6. package/dist/martyrs/src/components/Button/{Button.vue2.js.map → Button.vue.cjs.map} +1 -1
  7. package/dist/martyrs/src/components/Button/{Button.vue2.js → Button.vue.js} +3 -3
  8. package/dist/martyrs/src/components/Button/Button.vue.js.map +1 -0
  9. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +1 -1
  10. package/dist/martyrs/src/components/Feed/Carousel.vue.js +1 -1
  11. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +2 -2
  12. package/dist/martyrs/src/components/Feed/Feed.vue.js +2 -2
  13. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +1 -1
  14. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
  15. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.cjs +1 -1
  16. package/dist/martyrs/src/components/FieldTags/FieldTags.vue.js +1 -1
  17. package/dist/martyrs/src/components/Loader/{Loader.vue2.cjs → Loader.vue.cjs} +2 -2
  18. package/dist/martyrs/src/components/Loader/{Loader.vue2.js.map → Loader.vue.cjs.map} +1 -1
  19. package/dist/martyrs/src/components/Loader/{Loader.vue2.js → Loader.vue.js} +2 -2
  20. package/dist/martyrs/src/components/Loader/Loader.vue.js.map +1 -0
  21. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.cjs +1 -1
  22. package/dist/martyrs/src/components/LocationMarker/LocationMarker.vue.js +1 -1
  23. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue2.cjs → Spoiler.vue.cjs} +2 -2
  24. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue2.js.map → Spoiler.vue.cjs.map} +1 -1
  25. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue2.js → Spoiler.vue.js} +2 -2
  26. package/dist/martyrs/src/components/Spoiler/Spoiler.vue.js.map +1 -0
  27. package/dist/martyrs/src/components/Tab/{Tab.vue2.cjs → Tab.vue.cjs} +2 -2
  28. package/dist/martyrs/src/components/Tab/{Tab.vue2.js.map → Tab.vue.cjs.map} +1 -1
  29. package/dist/martyrs/src/components/Tab/{Tab.vue2.js → Tab.vue.js} +2 -2
  30. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +1 -0
  31. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.cjs +1 -1
  32. package/dist/martyrs/src/components/UploadImageMultiple/UploadImageMultiple.vue.js +1 -1
  33. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +2 -2
  34. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +2 -2
  35. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +2 -2
  36. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
  37. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
  38. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  39. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
  40. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  41. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +1 -1
  42. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
  43. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +1 -1
  44. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
  45. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -1
  46. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
  47. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +2 -2
  48. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
  49. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +4 -4
  50. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
  51. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +4 -4
  52. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  53. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +2 -2
  54. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
  55. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  56. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  57. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +2 -2
  58. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +2 -2
  59. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +2 -2
  60. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +2 -2
  61. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  62. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  63. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  64. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  65. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +2 -2
  66. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  67. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  68. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  69. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +2 -2
  70. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +2 -2
  71. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
  72. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  73. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.cjs +1 -1
  74. package/dist/martyrs/src/modules/events/components/sections/Feed.vue.js +1 -1
  75. package/dist/martyrs/src/modules/events/components/sections/List.vue.cjs +1 -1
  76. package/dist/martyrs/src/modules/events/components/sections/List.vue.js +1 -1
  77. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
  78. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +1 -1
  79. package/dist/martyrs/src/modules/globals/globals.client.cjs +3 -0
  80. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  81. package/dist/martyrs/src/modules/globals/globals.client.js +3 -0
  82. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  83. package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs +12 -7
  84. package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs.map +1 -1
  85. package/dist/martyrs/src/modules/globals/views/classes/globals.app.js +12 -7
  86. package/dist/martyrs/src/modules/globals/views/classes/globals.app.js.map +1 -1
  87. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.cjs +1 -1
  88. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.js +1 -1
  89. package/dist/martyrs/src/modules/globals/views/classes/module-registry.cjs +3 -0
  90. package/dist/martyrs/src/modules/globals/views/classes/module-registry.cjs.map +1 -1
  91. package/dist/martyrs/src/modules/globals/views/classes/module-registry.js +3 -0
  92. package/dist/martyrs/src/modules/globals/views/classes/module-registry.js.map +1 -1
  93. package/dist/martyrs/src/modules/globals/views/classes/store.cjs +9 -0
  94. package/dist/martyrs/src/modules/globals/views/classes/store.cjs.map +1 -1
  95. package/dist/martyrs/src/modules/globals/views/classes/store.js +9 -0
  96. package/dist/martyrs/src/modules/globals/views/classes/store.js.map +1 -1
  97. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
  98. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
  99. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs +1 -1
  100. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js +1 -1
  101. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +2 -2
  102. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +2 -2
  103. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +2 -2
  104. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +2 -2
  105. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
  106. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
  107. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
  108. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
  109. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
  110. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
  111. package/dist/martyrs/src/modules/globals/views/components/sections/{Filters.vue2.cjs → Filters.vue.cjs} +2 -2
  112. package/dist/martyrs/src/modules/globals/views/components/sections/{Filters.vue2.js.map → Filters.vue.cjs.map} +1 -1
  113. package/dist/martyrs/src/modules/globals/views/components/sections/{Filters.vue2.js → Filters.vue.js} +2 -2
  114. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue.js.map +1 -0
  115. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
  116. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
  117. package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.cjs +1 -1
  118. package/dist/martyrs/src/modules/globals/views/components/sections/Walkthrough.vue.js +1 -1
  119. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +1 -1
  120. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
  121. package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.cjs +1 -1
  122. package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.js +1 -1
  123. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.cjs +1 -1
  124. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +1 -1
  125. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
  127. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +1 -1
  128. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +1 -1
  129. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.cjs +1 -1
  130. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +1 -1
  131. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +1 -1
  132. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +1 -1
  133. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.cjs +1 -1
  134. package/dist/martyrs/src/modules/marketplace/views/components/sections/SectionMenu.vue.js +1 -1
  135. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.cjs +1 -1
  136. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +1 -1
  137. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.cjs +1 -1
  138. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +1 -1
  139. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.cjs +1 -1
  140. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +1 -1
  141. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
  143. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +1 -1
  144. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +1 -1
  145. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +2 -2
  146. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +2 -2
  147. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +1 -1
  148. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
  149. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.cjs +1 -1
  150. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +1 -1
  151. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +1 -1
  152. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +1 -1
  153. package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +2 -2
  154. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +2 -2
  155. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.cjs +2 -2
  156. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +2 -2
  157. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +1 -1
  158. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
  159. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +2 -2
  160. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +2 -2
  161. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.cjs +2 -2
  162. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +2 -2
  163. package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +2 -2
  164. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +2 -2
  165. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.cjs +2 -2
  166. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +2 -2
  167. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.cjs +1 -1
  168. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +1 -1
  169. package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.cjs +1 -1
  170. package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.js +1 -1
  171. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +1 -1
  172. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +1 -1
  173. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +1 -1
  174. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +1 -1
  175. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs +2 -2
  176. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +2 -2
  177. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
  178. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  179. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
  180. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  181. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
  182. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  183. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
  184. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  185. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.cjs +1 -1
  186. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +1 -1
  187. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.cjs +1 -1
  188. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +1 -1
  189. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +2 -2
  190. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
  191. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +7 -7
  192. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +7 -7
  193. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  194. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  195. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs +1 -1
  196. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
  197. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs +2 -2
  198. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
  199. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs +1 -1
  200. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
  201. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +7 -7
  202. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +7 -7
  203. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +7 -7
  204. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +7 -7
  205. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +6 -6
  206. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +6 -6
  207. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  208. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  209. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  210. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  211. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +2 -2
  212. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +2 -2
  213. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  214. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  215. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +3 -3
  216. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +3 -3
  217. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +2 -2
  218. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +2 -2
  219. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  220. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  221. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
  222. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  223. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +1 -1
  224. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +1 -1
  225. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.cjs +1 -1
  226. package/dist/martyrs/src/modules/products/components/elements/Image360.vue.js +1 -1
  227. package/dist/martyrs/src/modules/products/components/elements/{THC.vue2.cjs → THC.vue.cjs} +2 -2
  228. package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs.map +1 -0
  229. package/dist/martyrs/src/modules/products/components/elements/{THC.vue2.js → THC.vue.js} +2 -2
  230. package/dist/martyrs/src/modules/products/components/elements/THC.vue.js.map +1 -0
  231. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +2 -2
  232. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +2 -2
  233. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +3 -3
  234. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +3 -3
  235. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +3 -3
  236. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +3 -3
  237. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
  238. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
  239. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.cjs +1 -1
  240. package/dist/martyrs/src/modules/products/components/pages/ProductRecommmendation.vue.js +1 -1
  241. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +3 -3
  242. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +3 -3
  243. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
  244. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
  245. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +1 -1
  246. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
  247. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +1 -1
  248. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +1 -1
  249. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +1 -1
  250. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
  251. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +1 -1
  252. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
  253. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +1 -1
  254. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +1 -1
  255. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +3 -3
  256. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +3 -3
  257. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +2 -2
  258. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +2 -2
  259. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
  260. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  261. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  262. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  263. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +1 -1
  264. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  265. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
  266. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  267. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.cjs +1 -1
  268. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +1 -1
  269. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  270. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  271. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +1 -1
  272. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
  273. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
  274. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
  275. package/package.json +1 -1
  276. package/src/modules/auth/views/components/pages/SignIn.vue +2 -2
  277. package/src/modules/globals/globals.client.js +3 -0
  278. package/src/modules/globals/views/classes/globals.app.js +30 -8
  279. package/src/modules/globals/views/classes/module-registry.js +3 -0
  280. package/src/modules/globals/views/classes/store.js +13 -1
  281. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +0 -1
  282. package/dist/martyrs/src/components/Loader/Loader.vue2.cjs.map +0 -1
  283. package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.cjs.map +0 -1
  284. package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +0 -1
  285. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs.map +0 -1
  286. package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs.map +0 -1
  287. package/dist/martyrs/src/modules/products/components/elements/THC.vue2.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { ref, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, withCtx, createTextVNode } from "vue";
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import { Loader } from "../../../../../../node_modules/.pnpm/@googlemaps_js-api-loader@1.16.10/node_modules/@googlemaps/js-api-loader/dist/index.js";
4
- import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
4
+ import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
5
5
  import { actions, state as state$2 } from "../../../organizations/store/organizations.js";
6
6
  import { state } from "../../../globals/views/store/globals.js";
7
7
  import { state as state$1 } from "../../../marketplace/views/store/marketplace.js";
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- const Spoiler = require("../../../../components/Spoiler/Spoiler.vue2.cjs");
4
+ const Spoiler = require("../../../../components/Spoiler/Spoiler.vue.cjs");
5
5
  const Map = require("../../../../components/Map/Map.vue.cjs");
6
6
  const SpotSub = require("../blocks/SpotSub.vue.cjs");
7
7
  const CardUser = require("../../../auth/views/components/blocks/CardUser.vue.cjs");
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock, openBlock, createVNode, createElementVNode, withCtx, createCommentVNode, Fragment, renderList, createBlock, toDisplayString } from "vue";
2
- import _sfc_main$1 from "../../../../components/Spoiler/Spoiler.vue2.js";
2
+ import _sfc_main$1 from "../../../../components/Spoiler/Spoiler.vue.js";
3
3
  import Map from "../../../../components/Map/Map.vue.js";
4
4
  import SpotSub from "../blocks/SpotSub.vue.js";
5
5
  import _sfc_main$2 from "../../../auth/views/components/blocks/CardUser.vue.js";
@@ -4,13 +4,13 @@ const vue = require("vue");
4
4
  const vueRouter = require("vue-router");
5
5
  const Block = require("../../../../components/Block/Block.vue.cjs");
6
6
  const UploadImage = require("../../../../components/UploadImage/UploadImage.vue.cjs");
7
- ;/* empty css */
7
+ ;/* empty css */
8
8
  const Field = require("../../../../components/Field/Field.vue.cjs");
9
9
  const Select = require("../../../../components/Select/Select.vue.cjs");
10
10
  const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
11
11
  const Address = require("../../../../components/Address/Address.vue.cjs");
12
12
  const LocationMarker = require("../../../../components/LocationMarker/LocationMarker.vue.cjs");
13
- const Button = require("../../../../components/Button/Button.vue2.cjs");
13
+ const Button = require("../../../../components/Button/Button.vue.cjs");
14
14
  ;/* empty css */
15
15
  const WorktimeEdit = require("../sections/WorktimeEdit.vue.cjs");
16
16
  const spots = require("../../store/spots.cjs");
@@ -2,13 +2,13 @@ import { ref, onMounted, createElementBlock, openBlock, createVNode, createEleme
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
4
4
  import _sfc_main$3 from "../../../../components/UploadImage/UploadImage.vue.js";
5
- /* empty css */
5
+ /* empty css */
6
6
  import Field from "../../../../components/Field/Field.vue.js";
7
7
  import Select from "../../../../components/Select/Select.vue.js";
8
8
  import _sfc_main$4 from "../../../../components/Checkbox/Checkbox.vue.js";
9
9
  import _sfc_main$5 from "../../../../components/Address/Address.vue.js";
10
10
  import _sfc_main$6 from "../../../../components/LocationMarker/LocationMarker.vue.js";
11
- import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
11
+ import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
12
12
  /* empty css */
13
13
  import WorktimeEdit from "../sections/WorktimeEdit.vue.js";
14
14
  import { actions, state } from "../../store/spots.js";
@@ -2,7 +2,7 @@
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
4
  const vueI18n = require("vue-i18n");
5
- const Button = require("../../../../components/Button/Button.vue2.cjs");
5
+ const Button = require("../../../../components/Button/Button.vue.cjs");
6
6
  const Field = require("../../../../components/Field/Field.vue.cjs");
7
7
  const Select = require("../../../../components/Select/Select.vue.cjs");
8
8
  const Checkbox = require("../../../../components/Checkbox/Checkbox.vue.cjs");
@@ -1,6 +1,6 @@
1
1
  import { mergeModels, useModel, ref, computed, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, unref, withCtx, createTextVNode, Fragment, renderList, normalizeClass, createCommentVNode, createBlock } from "vue";
2
2
  import { useI18n } from "vue-i18n";
3
- import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
3
+ import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
4
4
  import Field from "../../../../components/Field/Field.vue.js";
5
5
  import Select from "../../../../components/Select/Select.vue.js";
6
6
  import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
@@ -6,7 +6,7 @@ const Web3 = require("web3");
6
6
  const wallet_store = require("../../store/wallet.store.cjs");
7
7
  const wallet = require("../../localization/wallet.json.cjs");
8
8
  const Popup = require("../../../../../components/Popup/Popup.vue.cjs");
9
- const Button = require("../../../../../components/Button/Button.vue2.cjs");
9
+ const Button = require("../../../../../components/Button/Button.vue.cjs");
10
10
  require("vue-router");
11
11
  ;/* empty css */
12
12
  ;/* empty css */
@@ -4,7 +4,7 @@ import Web3 from "web3";
4
4
  import { state, actions } from "../../store/wallet.store.js";
5
5
  import text from "../../localization/wallet.json.js";
6
6
  import _sfc_main$3 from "../../../../../components/Popup/Popup.vue.js";
7
- import _sfc_main$1 from "../../../../../components/Button/Button.vue2.js";
7
+ import _sfc_main$1 from "../../../../../components/Button/Button.vue.js";
8
8
  import "vue-router";
9
9
  /* empty css */
10
10
  /* empty css */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozdao/martyrs",
3
- "version": "0.2.537",
3
+ "version": "0.2.538",
4
4
  "description": "Fullstack framework focused on user experience and ease of development.",
5
5
  "author": "OZ DAO <hello@ozdao.dev>",
6
6
  "license": "GPL-3.0-or-later",
@@ -118,8 +118,8 @@ import * as inputsValidation from '@martyrs/src/modules/auth/views/validations/i
118
118
 
119
119
  // Get store
120
120
  const store = useStore()
121
- const auth = store.auth || { state: {}, actions: {} }
122
- const globals = store.globals || { state: {}, actions: {} }
121
+ const auth = store.auth
122
+ const globals = store.globals
123
123
 
124
124
  // Init validation
125
125
  const phoneValidation = ref(null)
@@ -71,7 +71,10 @@ function initializeGlobals(app, store, router, config, options = {}) {
71
71
 
72
72
  if (config && config.modules) storeGlobals.state.options = config.modules;
73
73
 
74
+ console.log('[DEBUG] initializeGlobals called with store:', !!store);
75
+ console.log('[DEBUG] Adding globals to store...');
74
76
  store.addStore('globals', storeGlobals);
77
+ console.log('[DEBUG] globals added to store:', !!store.globals);
75
78
 
76
79
  router.addRoute(route, {
77
80
  path: '404',
@@ -50,8 +50,15 @@ export function createUniversalApp({
50
50
  });
51
51
 
52
52
  // Основная функция создания приложения
53
- function createApp() {
53
+ async function createApp() {
54
54
  const store = getStore();
55
+ console.log('[DEBUG createApp] store created:', !!store);
56
+
57
+ // Установить SSR store для useStore
58
+ if (typeof window === 'undefined') {
59
+ const { setSSRStore } = await import('./store.js');
60
+ setSSRStore(store);
61
+ }
55
62
  const app = process.env.MOBILE_APP
56
63
  ? createVueApp(layoutApp, config)
57
64
  : createVueSSRApp(layoutApp, config);
@@ -77,8 +84,10 @@ export function createUniversalApp({
77
84
 
78
85
  for (const moduleName of criticalModules) {
79
86
  try {
87
+ console.log(`[DEBUG] Loading module ${moduleName}, context.store:`, !!context.store);
80
88
  await moduleRegistry.load(moduleName, context);
81
89
  await moduleRegistry.initialize(moduleName, context);
90
+ console.log(`[DEBUG] Module ${moduleName} initialized, store.${moduleName}:`, !!context.store[moduleName]);
82
91
  } catch (error) {
83
92
  console.error(`Failed to load critical module ${moduleName}:`, error);
84
93
  }
@@ -193,20 +202,32 @@ export function createUniversalApp({
193
202
  // FOR SSR / SERVER ENTRY
194
203
  async function renderApp({ url, cookies, languages, ssrContext }) {
195
204
  const { app, router, store, i18n, meta, moduleRegistry } = await createApp();
205
+ console.log('[DEBUG SSR] After createApp - store.globals:', !!store.globals);
196
206
 
197
207
  // ВАЖНО: Очищаем состояние moduleRegistry на сервере перед каждым запросом
198
208
  // чтобы избежать загрязнения между запросами
199
209
  if (typeof window === 'undefined') {
200
- moduleRegistry.initialized.clear();
201
- moduleRegistry.modules.clear();
202
- moduleRegistry.loadingPromises.clear();
210
+ // Сброс SSR store для нового запроса
211
+ const { setSSRStore } = await import('./store.js');
212
+ setSSRStore(null);
203
213
 
204
- // На сервере загружаем auth для SSR рендеринга (vue-app-renderer требует его)
205
- const context = { app, store, router, config };
206
- await moduleRegistry.load('auth', context);
207
- await moduleRegistry.initialize('auth', context);
214
+ // Устанавливаем новый store для этого запроса
215
+ setSSRStore(store);
208
216
  }
209
217
 
218
+ // if (typeof window === 'undefined') {
219
+ // moduleRegistry.initialized.clear();
220
+ // moduleRegistry.modules.clear();
221
+ // moduleRegistry.loadingPromises.clear();
222
+
223
+ // // На сервере загружаем auth для SSR рендеринга (vue-app-renderer требует его)
224
+ // const context = { app, store, router, config };
225
+ // await moduleRegistry.load('globals', context);
226
+ // await moduleRegistry.initialize('globals', context);
227
+ // await moduleRegistry.load('auth', context);
228
+ // await moduleRegistry.initialize('auth', context);
229
+ // }
230
+
210
231
  const context = {
211
232
  app,
212
233
  store,
@@ -244,6 +265,7 @@ export function createUniversalApp({
244
265
  }
245
266
 
246
267
  // Передаем только модули текущего роута + критические модули
268
+ // Это не реальные модули а метаданные для дегидратации
247
269
  const criticalModules = ['globals', 'auth', 'organizations', 'backoffice'];
248
270
  const allModulesForRoute = [...new Set([...criticalModules, ...currentRouteModules])];
249
271
 
@@ -97,8 +97,11 @@ export class ModuleRegistry {
97
97
  // Инициализируем модуль
98
98
  // Поддерживаем оба варианта: module.initialize и module.default.initialize для обратной совместимости
99
99
  const initFunc = module.initialize || (module.default && module.default.initialize);
100
+ console.log(`[DEBUG registry] Module ${name} initFunc found:`, !!initFunc);
100
101
  if (initFunc) {
102
+ console.log(`[DEBUG registry] Calling initialize for ${name}`);
101
103
  await initFunc(app, store, router, config);
104
+ console.log(`[DEBUG registry] Module ${name} initialize completed`);
102
105
  }
103
106
 
104
107
  this.initialized.set(name, true);
@@ -67,9 +67,21 @@ export function createStore() {
67
67
  // Синглтон для клиента
68
68
  let clientStore = null;
69
69
 
70
+ // Store для SSR должен создаваться в createApp и передаваться сюда
71
+ let ssrStore = null;
72
+
73
+ export function setSSRStore(store) {
74
+ ssrStore = store;
75
+ }
76
+
70
77
  export function useStore() {
71
78
  if (typeof window === 'undefined') {
72
- // SSR: новый store каждый раз
79
+ // SSR: используем переданный store
80
+ if (ssrStore) {
81
+ return ssrStore;
82
+ }
83
+ // Fallback для обратной совместимости
84
+ console.warn('[WARN] SSR store not set, creating new store instance');
73
85
  return createStore();
74
86
  }
75
87
  // Client: синглтон
@@ -1 +0,0 @@
1
- {"version":3,"file":"Button.vue2.cjs","sources":["../../../../../src/components/Button/Button.vue"],"sourcesContent":["<script setup>\nimport { ref } from 'vue'\n\nimport Loader from '@martyrs/src/components/Loader/Loader.vue'\n\nimport IconCheckmark from '@martyrs/src/modules/icons/navigation/IconCheckmark.vue';\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue';\n\nconst props = defineProps({\n submit: {\n type: Function,\n default: async () => { console.log('Button click.') }\n },\n text: {\n type: Object,\n default: () => ({\n success: null,\n error: null\n })\n },\n counter: {\n type: Object\n },\n callback: {\n type: Function,\n default: async () => { console.log('Button callback.') }\n },\n callbackDelay: {\n type: Number,\n default: 750\n },\n showSucces: {\n type: Boolean,\n default: true\n },\n showLoader: {\n type: Boolean,\n default: true\n },\n validation: {\n type: Boolean,\n default: false\n },\n})\n\nconst emits = defineEmits(['error'])\n\nconst button = ref(null)\nconst error = ref(null)\nconst loading = ref(false)\nconst finished = ref(false)\n\nasync function Submit() {\n console.log('click')\n \n button.value.style['pointer-events'] = 'none'\n error.value = null\n loading.value = true\n\n // Функция для сброса состояния кнопки\n const resetButton = () => {\n if (button.value) {\n button.value.style.pointerEvents = 'auto'\n loading.value = false\n finished.value = false\n error.value = null\n }\n }\n\n try {\n await props.submit()\n\n button.value.classList.replace('bg-main', 'bg-second')\n loading.value = false\n\n // Используем функцию сброса состояния кнопки здесь\n if (props.showSucces) { \n finished.value = true\n setTimeout(() => {\n resetButton()\n button.value.classList.replace('bg-second', 'bg-main')\n }, 500)\n } else {\n resetButton()\n button.value.classList.replace('bg-second', 'bg-main')\n }\n\n // Если есть callback, мы также установим таймер для его вызова\n if (props.callback) setTimeout(() => props.callback(), props.callbackDelay)\n\n } catch (err) {\n emits('error', err)\n // Если возникла ошибка, мы изменяем стили и устанавливаем сообщение об ошибке\n button.value.classList.replace('bg-main', 'bg-fourth-nano')\n loading.value = false\n error.value = true\n \n // После задержки снова сбрасываем состояние кнопки\n setTimeout(() => {\n resetButton()\n // Так как класс кнопки был изменен, вернем его в исходное состояние\n button.value.classList.replace('bg-fourth-nano', 'bg-main')\n }, 1330)\n }\n}\n</script>\n\n<template>\n <button \n @click.stop=\"Submit\"\n :disabled=\"validation\"\n ref=\"button\"\n\t\tclass=\"button\"\n :class=\"{ 'button--disabled': loading || validation }\"\n >\n <Transition name=\"content\" mode=\"out-in\">\n <!-- Default slot content -->\n <span v-if=\"!loading && !error && !finished || !showLoader\" class=\"button-content\">\n <slot></slot>\n </span>\n <!-- Loading state -->\n <Loader v-else-if=\"loading && !error && showLoader\" class=\"icon button-content pos-relative pos-t-0 pos-l-0 loading\"/>\n <!-- Success state -->\n <span v-else-if=\"finished && showSucces\" class=\"button-content t-semi t-center w-100 loading t-black\">\n <template v-if=\"text.success\">\n {{ text.success }}\n </template>\n <IconCheckmark v-else class=\"icon\" />\n </span>\n <!-- Error state -->\n <span v-else-if=\"error\" class=\"button-content t-center w-100 error\">\n <template v-if=\"text.error\">\n {{ text.error }}\n </template>\n <IconCross v-else class=\"icon\" />\n </span>\n </Transition>\n \n <!-- Counter -->\n <div v-if=\"counter\" class=\"button-counter flex flex-center\">\n <span>{{ counter }}</span>\n </div>\n </button>\n</template>\n\n<style lang=\"scss\">\nbutton[disabled] {\n opacity: 0.75 !important;\n pointer-events: none !important;\n cursor: default !important;\n color: rgba(var(--dark), 0.33) !important;\n background: rgba(var(--light), 1) !important;\n}\n\na.button {\n text-box: trim-both cap alphabetic;\n}\n\n.button {\n display: flex;\n padding: var(--small);\n border-radius: var(--small);\n text-box: trim-both cap alphabetic;\n transform: scale(1);\n opacity: 1;\n align-items: center;\n justify-content: center;\n color: black;\n text-align: center;\n text-transform: uppercase;\n font-size: 1rem;\n letter-spacing: 5%;\n transition: all 0.33s ease;\n\n &:hover {\n cursor: pointer;\n opacity: 0.9;\n }\n\n &:active {\n transform: scale(0.95);\n }\n\n &-small {\n padding: 0.75rem;\n border-radius: 0.5rem;\n height: fit-content;\n }\n\n .button-counter {\n position: absolute;\n right: -8px;\n bottom: -8px;\n background: yellow;\n height: 16px;\n border-radius: 16px;\n width: 16px;\n font-weight: 500;\n text-align: center;\n line-height: 16px;\n font-size: 10px;\n }\n}\n\n.button-content {\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n}\n\n.icon {\n width: 1rem;\n height: 1rem;\n}\n\n/* Vue Transitions */\n.content-enter-active,\n.content-leave-active {\n transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n\n.content-enter-from {\n opacity: 0;\n transform: translateY(8px) scale(0.95);\n}\n\n.content-leave-to {\n opacity: 0;\n transform: translateY(-8px) scale(0.95);\n}\n\n.content-enter-to,\n.content-leave-from {\n opacity: 1;\n transform: translateY(0) scale(1);\n}\n</style>"],"names":["ref"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,UAAM,QAAQ;AAqCd,UAAM,QAAQ;AAEd,UAAM,SAASA,IAAAA,IAAI,IAAI;AACvB,UAAM,QAAQA,IAAAA,IAAI,IAAI;AACtB,UAAM,UAAUA,IAAAA,IAAI,KAAK;AACzB,UAAM,WAAWA,IAAAA,IAAI,KAAK;AAE1B,mBAAe,SAAS;AACtB,cAAQ,IAAI,OAAO;AAEnB,aAAO,MAAM,MAAM,gBAAgB,IAAI;AACvC,YAAM,QAAQ;AACd,cAAQ,QAAQ;AAGhB,YAAM,cAAc,MAAM;AACxB,YAAI,OAAO,OAAO;AAChB,iBAAO,MAAM,MAAM,gBAAgB;AACnC,kBAAQ,QAAQ;AAChB,mBAAS,QAAQ;AACjB,gBAAM,QAAQ;AAAA,QAChB;AAAA,MACF;AAEA,UAAI;AACF,cAAM,MAAM,OAAM;AAElB,eAAO,MAAM,UAAU,QAAQ,WAAW,WAAW;AACrD,gBAAQ,QAAQ;AAGhB,YAAI,MAAM,YAAY;AACpB,mBAAS,QAAQ;AACjB,qBAAW,MAAM;AACf,wBAAW;AACX,mBAAO,MAAM,UAAU,QAAQ,aAAa,SAAS;AAAA,UACvD,GAAG,GAAG;AAAA,QACR,OAAO;AACL,sBAAW;AACX,iBAAO,MAAM,UAAU,QAAQ,aAAa,SAAS;AAAA,QACvD;AAGA,YAAI,MAAM,SAAU,YAAW,MAAM,MAAM,SAAQ,GAAI,MAAM,aAAa;AAAA,MAE5E,SAAS,KAAK;AACZ,cAAM,SAAS,GAAG;AAElB,eAAO,MAAM,UAAU,QAAQ,WAAW,gBAAgB;AAC1D,gBAAQ,QAAQ;AAChB,cAAM,QAAQ;AAGd,mBAAW,MAAM;AACf,sBAAW;AAEX,iBAAO,MAAM,UAAU,QAAQ,kBAAkB,SAAS;AAAA,QAC5D,GAAG,IAAI;AAAA,MACT;AAAA,IACF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Loader.vue2.cjs","sources":["../../../../../src/components/Loader/Loader.vue"],"sourcesContent":["<template>\n <div class=\"circular-loader pos-relative z-index-1 w-100 h-100 w-max-2r h-max-2r\" :class=\"{ 'circular-loader-centered': centered }\">\n <svg viewBox=\"25 25 50 50\">\n <circle class=\"circular-loader-fill\" cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" stroke-width=\"4\" stroke-miterlimit=\"10\" />\n <circle class=\"circular-loader-circle\" cx=\"50\" cy=\"50\" r=\"20\" fill=\"none\" stroke-width=\"4\" stroke-miterlimit=\"10\" />\n </svg>\n <div v-if=\"progress\" class=\"progress-text\">{{ progress }}</div>\n <div v-if=\"status\" class=\"uppercase t-semi w-m-10r status-text\">{{ status }}</div>\n </div>\n</template>\n\n<script>\nexport default {\n props: {\n progress: {\n type: Number,\n default: null,\n },\n status: {\n type: String,\n default: null,\n },\n centered: {\n type: Boolean,\n default: true, // По умолчанию лоадер центрирован (для обратной совместимости)\n },\n },\n};\n</script>\n\n<style>\n.circular-loader-centered {\n top: calc(50% - 1rem);\n left: calc(50% - 1rem);\n}\n\n.circular-loader svg {\n animation: rotate 2s linear infinite;\n}\n\n.circular-loader-circle {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n stroke-linecap: round;\n stroke: rgb(var(--main));\n animation: dash 1.5s ease-in-out infinite;\n}\n\n.circular-loader-fill {\n stroke-linecap: round;\n stroke: rgba(var(--black),0.2);\n}\n\n.progress-text {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n font-size: 0.8rem;\n color: rgb(var(--main));;\n}\n\n.status-text {\n position: absolute;\n top: 120%;\n left: calc(50% - 5rem);\n font-size: 0.8rem;\n width: 10rem !important;\n text-align: center;\n}\n\n@keyframes rotate {\n 100% {\n transform: rotate(360deg);\n }\n}\n\n@keyframes dash {\n 0% {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 89, 200;\n stroke-dashoffset: -35;\n }\n 100% {\n stroke-dasharray: 1, 200;\n stroke-dashoffset: -124;\n }\n}\n</style>"],"names":["_createElementBlock","_normalizeClass","_createElementVNode","_toDisplayString","_createCommentVNode"],"mappings":";;;;;AAYA,MAAK,YAAU;AAAA,EACb,OAAO;AAAA,IACL,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;IAEX,QAAQ;AAAA,MACN,MAAM;AAAA,MACN,SAAS;AAAA;IAEX,UAAU;AAAA,MACR,MAAM;AAAA,MACN,SAAS;AAAA;AAAA;;AAGf;;EA3BA,KAAA;AAAA,EAMyB,OAAM;;;EAN/B,KAAA;AAAA,EAOuB,OAAM;;;0BAN3BA,IAAAA,mBAOM,OAAA;AAAA,IAPD,OADPC,IAAAA,eAAA,CACa,wEAAsE,EAAA,4BAAuC,OAAA,UAAQ,CAAA;AAAA;8BAC9HC,IAAAA,mBAGM,OAAA,EAHD,SAAQ,iBAAa;AAAA,MACxBA,IAAAA,mBAAkH,UAAA;AAAA,QAA1G,OAAM;AAAA,QAAuB,IAAG;AAAA,QAAK,IAAG;AAAA,QAAK,GAAE;AAAA,QAAK,MAAK;AAAA,QAAO,gBAAa;AAAA,QAAI,qBAAkB;AAAA;MAC3GA,IAAAA,mBAAoH,UAAA;AAAA,QAA5G,OAAM;AAAA,QAAyB,IAAG;AAAA,QAAK,IAAG;AAAA,QAAK,GAAE;AAAA,QAAK,MAAK;AAAA,QAAO,gBAAa;AAAA,QAAI,qBAAkB;AAAA;;IAEpG,OAAA,6BAAXF,IAAAA,mBAA+D,OAA/D,YAA+DG,IAAAA,gBAAjB,OAAA,QAAQ,GAAA,CAAA,KAN1DC,IAAAA,mBAAA,IAAA,IAAA;AAAA,IAOe,OAAA,2BAAXJ,IAAAA,mBAAkF,OAAlF,YAAkFG,IAAAA,gBAAf,OAAA,MAAM,GAAA,CAAA,KAP7EC,IAAAA,mBAAA,IAAA,IAAA;AAAA;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Spoiler.vue2.cjs","sources":["../../../../../src/components/Spoiler/Spoiler.vue"],"sourcesContent":["<template>\n <div>\n <div @click=\"toggleSpoiler\" class=\"flex-v-center flex-nowrap flex\">\n <slot name=\"header\" :isOpen=\"showSpoiler\"></slot>\n </div>\n <transition\n name=\"collapse\"\n @enter=\"onEnter\"\n @after-enter=\"onAfterEnter\"\n @leave=\"onLeave\"\n >\n <div v-show=\"showSpoiler\" class=\"spoiler\" ref=\"spoilerContent\">\n <slot name=\"content\"></slot>\n </div>\n </transition>\n </div>\n</template>\n<script setup>\nimport { ref, onMounted } from 'vue';\n\nconst props = defineProps({\n status: {\n type: Boolean,\n default: false\n }\n});\n\nconst showSpoiler = ref(false);\nconst spoilerContent = ref(null);\n\nonMounted(() => {\n if (props.status) {\n showSpoiler.value = props.status;\n }\n});\n\nconst toggleSpoiler = () => {\n showSpoiler.value = !showSpoiler.value;\n};\n\n// Анимация открытия\nconst onEnter = (el) => {\n el.style.height = '0';\n void el.offsetHeight; // force reflow\n el.style.height = el.scrollHeight + 'px';\n};\n\nconst onAfterEnter = (el) => {\n el.style.height = 'auto';\n};\n\n// Анимация закрытия\nconst onLeave = (el) => {\n el.style.height = el.scrollHeight + 'px';\n void el.offsetHeight; // force reflow\n el.style.height = '0';\n};\n\ndefineExpose({\n showSpoiler\n});\n</script>\n<style lang=\"scss\">\n.spoiler {\n overflow: hidden;\n transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n</style>"],"names":["ref","onMounted"],"mappings":";;;;;;;;;;;;;AAoBA,UAAM,QAAQ;AAOd,UAAM,cAAcA,IAAAA,IAAI,KAAK;AAC7B,UAAM,iBAAiBA,IAAAA,IAAI,IAAI;AAE/BC,QAAAA,UAAU,MAAM;AACd,UAAI,MAAM,QAAQ;AAChB,oBAAY,QAAQ,MAAM;AAAA,MAC5B;AAAA,IACF,CAAC;AAED,UAAM,gBAAgB,MAAM;AAC1B,kBAAY,QAAQ,CAAC,YAAY;AAAA,IACnC;AAGA,UAAM,UAAU,CAAC,OAAO;AACtB,SAAG,MAAM,SAAS;AAClB,WAAK,GAAG;AACR,SAAG,MAAM,SAAS,GAAG,eAAe;AAAA,IACtC;AAEA,UAAM,eAAe,CAAC,OAAO;AAC3B,SAAG,MAAM,SAAS;AAAA,IACpB;AAGA,UAAM,UAAU,CAAC,OAAO;AACtB,SAAG,MAAM,SAAS,GAAG,eAAe;AACpC,WAAK,GAAG;AACR,SAAG,MAAM,SAAS;AAAA,IACpB;AAEA,aAAa;AAAA,MACX;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tab.vue2.cjs","sources":["../../../../../src/components/Tab/Tab.vue"],"sourcesContent":["<template>\n <div class=\"flex-nowrap flex-v-center flex pos-relative\">\n <button \n v-for=\"(tab, index) in tabs\" \n :key=\"index\" \n @click=\"handleTabClick(index, tab)\" \n class=\"z-index-1 t-center cursor-pointer\"\n :style=\"isSelected(index, tab) ? 'background: rgb(var(--main)) !important' : ''\"\n :class=\"[\n isSelected(index, tab) ? 'bg-main' : '',\n replaceClasses('pd-small pd-r-medium pd-l-medium w-max pd-small radius-small', classTab)\n ]\"\n >\n {{tab.name || tab.label}}\n </button>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, watch } from 'vue'\n\nconst emit = defineEmits(['update:selected', 'tab-click']);\n\nconst props = defineProps({\n tabs: Array,\n classTab: String,\n selected: [String, Number],\n modelValue: [String, Number],\n callback: Function\n})\n\nconst selectedTab = ref(0)\n\n// Handle both v-model and selected prop for backward compatibility\nconst updateSelectedIndex = () => {\n if (props.modelValue !== undefined) {\n const selectedIndex = props.tabs.findIndex(tab => tab.value === props.modelValue)\n if (selectedIndex !== -1) {\n selectedTab.value = selectedIndex\n }\n } else if (props.selected !== undefined) {\n const selectedIndex = props.tabs.findIndex(tab => tab.value === props.selected)\n if (selectedIndex !== -1) {\n selectedTab.value = selectedIndex\n }\n }\n}\n\n// Initial setup\nupdateSelectedIndex()\n\n// Watch for changes in selected or modelValue props\nwatch(() => props.selected, updateSelectedIndex)\nwatch(() => props.modelValue, updateSelectedIndex)\n\n// Check if tab is selected\nconst isSelected = (index, tab) => {\n if (props.modelValue !== undefined) {\n return tab.value === props.modelValue\n } else if (props.selected !== undefined) {\n return tab.value === props.selected\n }\n return index === selectedTab.value\n}\n\n// Handle tab click\nfunction handleTabClick(index, tab) {\n selectedTab.value = index\n \n // Emit both events for flexibility\n emit('update:selected', tab.value)\n emit('tab-click', { index, tab })\n \n // For v-model support\n if (props.modelValue !== undefined) {\n emit('update:modelValue', tab.value)\n }\n \n // Call callback if provided\n if (props.callback) props.callback(tab)\n}\n</script>\n\n<style lang=\"scss\">\n.tab-selector {\n position: absolute;\n width: 50%;\n height: 100%;\n left: 0;\n top: 0;\n z-index: 0;\n transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n</style>"],"names":["ref","watch"],"mappings":";;;;;;;;;;;;;;;;;AAqBA,UAAM,OAAO;AAEb,UAAM,QAAQ;AAQd,UAAM,cAAcA,IAAAA,IAAI,CAAC;AAGzB,UAAM,sBAAsB,MAAM;AAChC,UAAI,MAAM,eAAe,QAAW;AAClC,cAAM,gBAAgB,MAAM,KAAK,UAAU,SAAO,IAAI,UAAU,MAAM,UAAU;AAChF,YAAI,kBAAkB,IAAI;AACxB,sBAAY,QAAQ;AAAA,QACtB;AAAA,MACF,WAAW,MAAM,aAAa,QAAW;AACvC,cAAM,gBAAgB,MAAM,KAAK,UAAU,SAAO,IAAI,UAAU,MAAM,QAAQ;AAC9E,YAAI,kBAAkB,IAAI;AACxB,sBAAY,QAAQ;AAAA,QACtB;AAAA,MACF;AAAA,IACF;AAGA,wBAAmB;AAGnBC,QAAAA,MAAM,MAAM,MAAM,UAAU,mBAAmB;AAC/CA,QAAAA,MAAM,MAAM,MAAM,YAAY,mBAAmB;AAGjD,UAAM,aAAa,CAAC,OAAO,QAAQ;AACjC,UAAI,MAAM,eAAe,QAAW;AAClC,eAAO,IAAI,UAAU,MAAM;AAAA,MAC7B,WAAW,MAAM,aAAa,QAAW;AACvC,eAAO,IAAI,UAAU,MAAM;AAAA,MAC7B;AACA,aAAO,UAAU,YAAY;AAAA,IAC/B;AAGA,aAAS,eAAe,OAAO,KAAK;AAClC,kBAAY,QAAQ;AAGpB,WAAK,mBAAmB,IAAI,KAAK;AACjC,WAAK,aAAa,EAAE,OAAO,IAAG,CAAE;AAGhC,UAAI,MAAM,eAAe,QAAW;AAClC,aAAK,qBAAqB,IAAI,KAAK;AAAA,MACrC;AAGA,UAAI,MAAM,SAAU,OAAM,SAAS,GAAG;AAAA,IACxC;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Filters.vue2.cjs","sources":["../../../../../../../../src/modules/globals/views/components/sections/Filters.vue"],"sourcesContent":["<template>\n <div class=\"flex t-nowrap gap-thin\">\n <!-- All Filters Button -->\n <button\n @click=\"showAllFilters = true\"\n class=\"pd-small radius-medium bg-light flex-v-center flex gap-micro cursor-pointer\"\n :class=\"{ 'bg-main': activeFiltersCount > 0 }\"\n >\n <IconFilter class=\"i-medium\" />\n <span class=\"h-1r\"></span>\n <span v-if=\"activeFiltersCount\">{{ activeFiltersCount }}</span>\n </button>\n\n <!-- Individual Filter Buttons -->\n <button\n v-for=\"filter in filters\"\n :key=\"filter.value\"\n @click=\"openFilter(filter.value)\"\n class=\"pd-small radius-medium bg-light cursor-pointer flex-v-center flex gap-micro\"\n :class=\"{ 'selected bg-main': isFilterActive(filter) }\"\n >\n <IconCalendar v-if=\"filter.type === 'date'\" class=\"mn-r-micro i-medium\" />\n <span class=\"t-nowrap\">{{ filter.type === 'date' && getFilterValue(filter) ? formatFilterValue(filter) : filter.title }}</span>\n <span v-if=\"getFilterValue(filter) && filter.type !== 'date'\" class=\"mn-l-micro\">\n {{ formatFilterValue(filter) }}\n </span>\n </button>\n\n <!-- All Filters Popup -->\n <Popup\n :isPopupOpen=\"showAllFilters\"\n @close-popup=\"showAllFilters = false\"\n :align=\"isPhone() ? 'bottom center' : 'center center'\"\n class=\"w-min-20r bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium\"\n >\n <div class=\"flex-v-center flex-nowrap flex mn-b-medium\">\n <h3 class=\"flex-child-full\">Filters</h3>\n </div>\n\n <div class=\"filters-content\">\n <div \n v-for=\"filter in filters\" \n :key=\"filter.value\"\n class=\"mn-b-medium\"\n >\n <h4 class=\"mn-b-small\">{{ filter.title }}</h4>\n \n <!-- Checkbox Filter -->\n <div v-if=\"filter.type === 'checkbox'\">\n <Checkbox\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n :label=\"option.label\"\n :value=\"option.value\"\n v-model:radio=\"tempSelected[filter.value]\"\n mode=\"checkbox\"\n class=\"mn-b-micro\"\n />\n </div>\n\n <!-- Radio Filter -->\n <div v-else-if=\"filter.type === 'radio'\">\n <div\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n @click=\"tempSelected[filter.value] = option.value\"\n class=\"pd-small radius-small cursor-pointer mn-b-micro\"\n :class=\"{ \n 'bg-main': tempSelected[filter.value] === option.value,\n 'bg-light': tempSelected[filter.value] !== option.value\n }\"\n >\n {{ option.label }}\n </div>\n </div>\n\n <!-- Range Filter -->\n <div v-else-if=\"filter.type === 'range'\" class=\"flex gap-thin\">\n <Field\n v-model:field=\"tempSelected[filter.value].min\"\n :placeholder=\"filter.minPlaceholder || 'Min'\"\n type=\"number\"\n :label=\"returnCurrency()\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n <Field\n v-model:field=\"tempSelected[filter.value].max\"\n :placeholder=\"filter.maxPlaceholder || 'Max'\"\n type=\"number\"\n :label=\"returnCurrency()\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n </div>\n\n <!-- Date Filter -->\n <div v-else-if=\"filter.type === 'date'\">\n <Calendar\n v-model:date=\"tempSelected[filter.value]\"\n :allowRange=\"true\"\n :disablePastDates=\"true\"\n class=\"bg-light radius-small\"\n />\n </div>\n </div>\n </div>\n\n <div class=\"flex gap-thin mn-t-medium\">\n <button \n @click=\"applyAllFilters\" \n class=\"button bg-main flex-child-full\"\n >\n Apply\n </button>\n <button \n @click=\"resetFilters\" \n class=\"button bg-light\"\n >\n Reset Filters\n </button>\n </div>\n </Popup>\n\n <!-- Individual Filter Popups -->\n <Popup\n v-for=\"filter in filters\"\n :key=\"`popup-${filter.value}`\"\n :isPopupOpen=\"individualPopups[filter.value]\"\n @close-popup=\"individualPopups[filter.value] = false\"\n :align=\"isPhone() ? 'bottom center' : 'center center'\"\n class=\"bg-white radius-medium mobile:radius-zero mobile:radius-tr-medium mobile:radius-tl-medium mobile:w-100 pd-medium\"\n >\n <h4 class=\"mn-b-medium\">{{ filter.title }}</h4>\n \n <!-- Checkbox Filter -->\n <div v-if=\"filter.type === 'checkbox'\">\n <Checkbox\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n :label=\"option.label\"\n :value=\"option.value\"\n v-model:radio=\"tempSelected[filter.value]\"\n mode=\"checkbox\"\n class=\"mn-b-micro\"\n />\n </div>\n\n <!-- Radio Filter -->\n <div v-else-if=\"filter.type === 'radio'\">\n <div\n v-for=\"option in filter.options\"\n :key=\"option.value\"\n @click=\"tempSelected[filter.value] = option.value\"\n class=\"pd-small radius-small cursor-pointer mn-b-micro\"\n :class=\"{ \n 'bg-main': tempSelected[filter.value] === option.value,\n 'bg-light': tempSelected[filter.value] !== option.value\n }\"\n >\n {{ option.label }}\n </div>\n </div>\n\n <!-- Range Filter -->\n <div v-else-if=\"filter.type === 'range'\" class=\"flex gap-thin\">\n <Field\n v-model:field=\"tempSelected[filter.value].min\"\n :placeholder=\"filter.minPlaceholder || 'Min'\"\n type=\"number\"\n :label=\"returnCurrency()\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n <Field\n v-model:field=\"tempSelected[filter.value].max\"\n :placeholder=\"filter.maxPlaceholder || 'Max'\"\n type=\"number\"\n :label=\"returnCurrency()\"\n class=\"w-50 bg-light pd-small radius-small\"\n />\n </div>\n\n <!-- Date Filter -->\n <div v-else-if=\"filter.type === 'date'\">\n <div class=\"mn-t-small\">\n <Calendar\n v-model:date=\"tempSelected[filter.value]\"\n :allowRange=\"true\"\n :disablePastDates=\"true\"\n class=\"bg-light radius-small\"\n />\n </div>\n </div>\n\n <div class=\"flex gap-thin mn-t-medium\">\n <button \n @click=\"cancelFilter(filter.value)\" \n class=\"bg-light button flex-child-full\"\n >\n Cancel\n </button>\n <button \n @click=\"applyFilter(filter.value)\" \n class=\"bg-main w-100 button flex-child-full\"\n >\n Apply\n </button>\n \n \n </div>\n </Popup>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed, reactive, watch } from 'vue'\nimport { useGlobalMixins } from '@martyrs/src/modules/globals/views/mixins/mixins.js'\nimport Popup from '@martyrs/src/components/Popup/Popup.vue'\nimport Checkbox from '@martyrs/src/components/Checkbox/Checkbox.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport Calendar from '@martyrs/src/components/Calendar/Calendar.vue'\nimport IconFilter from '@martyrs/src/modules/icons/navigation/IconFilter.vue'\nimport IconCross from '@martyrs/src/modules/icons/navigation/IconCross.vue'\nimport IconCalendar from '@martyrs/src/modules/icons/entities/IconCalendar.vue'\n\nconst filters = defineModel('filters', {\n type: Array,\n required: true\n})\n\nconst selected = defineModel('selected', {\n type: Object,\n default: () => ({})\n})\n\nconst emit = defineEmits(['select'])\n\nconst { formatDate } = useGlobalMixins()\n\n// State\nconst showAllFilters = ref(false)\nconst individualPopups = reactive({})\nconst tempSelected = reactive({})\nconst tempDateRange = ref(null)\n\n// Initialize popups and temp values\nwatch(filters, (newFilters) => {\n newFilters.forEach(filter => {\n individualPopups[filter.value] = false\n \n if (!tempSelected[filter.value]) {\n if (filter.type === 'checkbox') {\n tempSelected[filter.value] = [...(selected.value[filter.value] || [])]\n } else if (filter.type === 'range') {\n tempSelected[filter.value] = { ...(selected.value[filter.value] || { min: '', max: '' }) }\n } else if (filter.type === 'date') {\n tempSelected[filter.value] = selected.value[filter.value] || null\n } else {\n tempSelected[filter.value] = selected.value[filter.value] || null\n }\n }\n })\n}, { immediate: true, deep: true })\n\n// Sync selected to tempSelected\nwatch(selected, (newSelected) => {\n Object.keys(newSelected).forEach(key => {\n const filter = filters.value.find(f => f.value === key)\n if (filter) {\n if (filter.type === 'checkbox') {\n tempSelected[key] = [...(newSelected[key] || [])]\n } else if (filter.type === 'range') {\n tempSelected[key] = { ...(newSelected[key] || { min: '', max: '' }) }\n } else {\n tempSelected[key] = newSelected[key]\n }\n }\n })\n}, { deep: true })\n\n// Computed\nconst activeFiltersCount = computed(() => {\n return Object.entries(selected.value).filter(([key, value]) => {\n if (Array.isArray(value)) return value.length > 0\n if (typeof value === 'object' && value !== null) {\n return value.min || value.max\n }\n return value !== null && value !== undefined\n }).length\n})\n\n// Methods\nconst openFilter = (filterValue) => {\n individualPopups[filterValue] = true\n}\n\nconst isFilterActive = (filter) => {\n const value = selected.value[filter.value]\n if (!value) return false\n if (Array.isArray(value)) return value.length > 0\n if (filter.type === 'range') return value.min || value.max\n return true\n}\n\nconst getFilterValue = (filter) => {\n const value = selected.value[filter.value]\n if (!value) return false\n \n if (filter.type === 'range') {\n return value.min || value.max\n }\n \n if (filter.type === 'date') {\n return value && value.start && value.end\n }\n \n if (Array.isArray(value)) {\n return value.length > 0\n }\n \n return value\n}\n\nconst formatFilterValue = (filter) => {\n const value = selected.value[filter.value]\n if (!value) return ''\n \n if (Array.isArray(value)) {\n return `(${value.length})`\n }\n \n if (filter.type === 'range') {\n if (!value.min && !value.max) return ''\n return `${value.min || '0'}-${value.max || '∞'}`\n }\n \n if (filter.type === 'date') {\n if (!value || !value.start || !value.end) return ''\n return `${formatDate(value.start, { dayMonth: true, language: 'en' })} - ${formatDate(value.end, { dayMonth: true, language: 'en' })}`\n }\n \n if (filter.type === 'radio') {\n const option = filter.options.find(o => o.value === value)\n return option ? `(${option.label})` : ''\n }\n \n return ''\n}\n\nconst applyFilter = (filterValue) => {\n selected.value[filterValue] = tempSelected[filterValue]\n individualPopups[filterValue] = false\n emit('select', { filter: filterValue, value: tempSelected[filterValue] })\n}\n\nconst cancelFilter = (filterValue) => {\n const filter = filters.value.find(f => f.value === filterValue)\n if (filter) {\n if (filter.type === 'checkbox') {\n tempSelected[filterValue] = [...(selected.value[filterValue] || [])]\n } else if (filter.type === 'range') {\n tempSelected[filterValue] = { ...(selected.value[filterValue] || { min: '', max: '' }) }\n } else if (filter.type === 'date') {\n tempSelected[filterValue] = selected.value[filterValue] || null\n } else {\n tempSelected[filterValue] = selected.value[filterValue] || null\n }\n }\n individualPopups[filterValue] = false\n}\n\nconst applyAllFilters = () => {\n Object.entries(tempSelected).forEach(([key, value]) => {\n if (selected.value[key] !== value) {\n selected.value[key] = value\n emit('select', { filter: key, value })\n }\n })\n showAllFilters.value = false\n}\n\nconst resetFilters = () => {\n filters.value.forEach(filter => {\n if (filter.type === 'checkbox') {\n tempSelected[filter.value] = []\n selected.value[filter.value] = []\n } else if (filter.type === 'range') {\n tempSelected[filter.value] = { min: '', max: '' }\n selected.value[filter.value] = { min: '', max: '' }\n } else if (filter.type === 'date') {\n tempSelected[filter.value] = null\n selected.value[filter.value] = null\n } else {\n tempSelected[filter.value] = null\n selected.value[filter.value] = null\n }\n emit('select', { filter: filter.value, value: null })\n })\n}\n</script>\n\n<style scoped>\n.filters-content {\n max-height: 60vh;\n overflow-y: auto;\n}\n</style>"],"names":["_useModel","useGlobalMixins","ref","reactive","watch","computed"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"THC.vue2.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"THC.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}