@ozdao/martyrs 0.2.527 → 0.2.528

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 (290) hide show
  1. package/dist/builder.cjs +4 -4
  2. package/dist/builder.js +4 -4
  3. package/dist/{main-DFvn9trs.js → main-40cyU_8J.js} +361 -355
  4. package/dist/{main-BNqX4N59.cjs → main-sq8skoQM.cjs} +4 -4
  5. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs → Dropdown.vue2.cjs} +2 -2
  6. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -0
  7. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.js → Dropdown.vue2.js} +2 -2
  8. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs.map → Dropdown.vue2.js.map} +1 -1
  9. package/dist/martyrs/src/components/Feed/{Feed.vue2.cjs → Feed.vue.cjs} +3 -3
  10. package/dist/martyrs/src/components/Feed/{Feed.vue2.js.map → Feed.vue.cjs.map} +1 -1
  11. package/dist/martyrs/src/components/Feed/{Feed.vue2.js → Feed.vue.js} +3 -3
  12. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -0
  13. package/dist/martyrs/src/components/Field/{Field.vue2.cjs → Field.vue.cjs} +2 -2
  14. package/dist/martyrs/src/components/Field/{Field.vue2.js.map → Field.vue.cjs.map} +1 -1
  15. package/dist/martyrs/src/components/Field/{Field.vue2.js → Field.vue.js} +2 -2
  16. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -0
  17. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +1 -1
  18. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
  19. package/dist/martyrs/src/components/FieldTags/{BlockTags.vue2.cjs → BlockTags.vue.cjs} +2 -2
  20. package/dist/martyrs/src/components/FieldTags/{BlockTags.vue2.js.map → BlockTags.vue.cjs.map} +1 -1
  21. package/dist/martyrs/src/components/FieldTags/{BlockTags.vue2.js → BlockTags.vue.js} +2 -2
  22. package/dist/martyrs/src/components/FieldTags/BlockTags.vue.js.map +1 -0
  23. package/dist/martyrs/src/components/Media/Media.vue.cjs +20 -3
  24. package/dist/martyrs/src/components/Media/Media.vue.cjs.map +1 -1
  25. package/dist/martyrs/src/components/Media/Media.vue.js +20 -3
  26. package/dist/martyrs/src/components/Media/Media.vue.js.map +1 -1
  27. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs +1 -1
  28. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js +1 -1
  29. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  30. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  31. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  32. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  33. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +2 -2
  34. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  35. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
  36. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  37. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -1
  38. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
  39. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +11 -7
  40. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs.map +1 -1
  41. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +14 -10
  42. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js.map +1 -1
  43. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +12 -9
  44. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
  45. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +17 -14
  46. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  47. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +12 -8
  48. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs.map +1 -1
  49. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +15 -11
  50. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js.map +1 -1
  51. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  52. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  53. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.cjs +1 -1
  54. package/dist/martyrs/src/modules/backoffice/components/pages/Dashboard.vue.js +1 -1
  55. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +1 -1
  56. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +1 -1
  57. package/dist/martyrs/src/modules/community/components/pages/Blog.vue.cjs +1 -1
  58. package/dist/martyrs/src/modules/community/components/pages/Blog.vue.js +1 -1
  59. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +3 -3
  60. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +3 -3
  61. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.cjs +1 -1
  62. package/dist/martyrs/src/modules/community/components/pages/Posts.vue.js +1 -1
  63. package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs +1 -1
  64. package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js +1 -1
  65. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
  66. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +1 -1
  67. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +3 -3
  68. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +3 -3
  69. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +2 -2
  70. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +2 -2
  71. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +3 -3
  72. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +3 -3
  73. package/dist/martyrs/src/modules/events/components/pages/Events.vue.cjs +1 -1
  74. package/dist/martyrs/src/modules/events/components/pages/Events.vue.js +1 -1
  75. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
  76. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  77. package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.cjs +1 -1
  78. package/dist/martyrs/src/modules/events/components/pages/EventsSearch.vue.js +1 -1
  79. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.cjs +1 -1
  80. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +1 -1
  81. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +3 -3
  82. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +3 -3
  83. package/dist/martyrs/src/modules/globals/globals.client.cjs +2 -0
  84. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  85. package/dist/martyrs/src/modules/globals/globals.client.js +2 -0
  86. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  87. package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs +220 -0
  88. package/dist/martyrs/src/modules/globals/views/classes/globals.app.cjs.map +1 -0
  89. package/dist/martyrs/src/modules/globals/views/classes/globals.app.js +220 -0
  90. package/dist/martyrs/src/modules/globals/views/classes/globals.app.js.map +1 -0
  91. package/dist/martyrs/src/modules/globals/views/classes/store.cjs +47 -49
  92. package/dist/martyrs/src/modules/globals/views/classes/store.cjs.map +1 -1
  93. package/dist/martyrs/src/modules/globals/views/classes/store.js +48 -50
  94. package/dist/martyrs/src/modules/globals/views/classes/store.js.map +1 -1
  95. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.cjs +1 -1
  96. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockMultiselect.vue.js +1 -1
  97. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.cjs +1 -1
  98. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.js +1 -1
  99. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
  100. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
  101. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +1 -1
  102. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +1 -1
  103. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs +1 -1
  104. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js +1 -1
  105. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs +1 -6
  106. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs.map +1 -1
  107. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js +1 -6
  108. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js.map +1 -1
  109. package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.cjs +1 -1
  110. package/dist/martyrs/src/modules/icons/components/IconSearchPopup.vue.js +1 -1
  111. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +1 -1
  112. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
  113. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +1 -1
  114. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
  115. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs +2 -2
  116. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +2 -2
  117. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +3 -3
  118. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +3 -3
  119. package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs +11 -8
  120. package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.cjs.map +1 -1
  121. package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js +12 -9
  122. package/dist/martyrs/src/modules/landing/components/sections/SectionMobileApp.vue.js.map +1 -1
  123. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs +1 -1
  124. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.cjs.map +1 -1
  125. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.js +1 -1
  126. package/dist/martyrs/src/modules/landing/components/sections/SubscribeNewsletter.vue.js.map +1 -1
  127. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +1 -1
  128. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +1 -1
  129. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs +1 -1
  130. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js +1 -1
  131. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +1 -1
  132. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +1 -1
  133. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +1 -1
  134. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
  135. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +1 -1
  136. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
  137. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +1 -1
  138. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +1 -1
  139. package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +2 -2
  140. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +2 -2
  141. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/music/components/pages/MusicHome.vue.js +1 -1
  143. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.cjs +1 -1
  144. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
  145. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +2 -2
  146. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +2 -2
  147. package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +2 -2
  148. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +2 -2
  149. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +1 -1
  150. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +1 -1
  151. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +1 -1
  152. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +1 -1
  153. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.cjs +1 -1
  154. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -1
  155. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.cjs +1 -1
  156. package/dist/martyrs/src/modules/orders/components/pages/Applications.vue.js +1 -1
  157. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.cjs +1 -1
  158. package/dist/martyrs/src/modules/orders/components/pages/Customers.vue.js +1 -1
  159. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +2 -2
  160. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  161. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
  162. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  163. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +3 -3
  164. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +3 -3
  165. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +5 -5
  166. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +5 -5
  167. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.cjs +1 -1
  168. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
  169. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs +2 -2
  170. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
  171. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs +1 -1
  172. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
  173. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +5 -5
  174. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +5 -5
  175. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +5 -5
  176. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +5 -5
  177. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +4 -4
  178. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +4 -4
  179. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  180. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  181. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  182. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  183. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  184. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  185. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +2 -2
  186. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
  187. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  188. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  189. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  190. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  191. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  192. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  193. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +1 -1
  194. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +1 -1
  195. package/dist/martyrs/src/modules/products/components/elements/{THC.vue2.cjs → THC.vue.cjs} +2 -2
  196. package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs.map +1 -0
  197. package/dist/martyrs/src/modules/products/components/elements/{THC.vue2.js → THC.vue.js} +2 -2
  198. package/dist/martyrs/src/modules/products/components/elements/THC.vue.js.map +1 -0
  199. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  200. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  201. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +3 -3
  202. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +3 -3
  203. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
  204. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +1 -1
  205. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +2 -2
  206. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +2 -2
  207. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
  208. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
  209. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +1 -1
  210. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
  211. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.cjs +1 -1
  212. package/dist/martyrs/src/modules/products/components/sections/EditIngredients.vue.js +1 -1
  213. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +1 -1
  214. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +1 -1
  215. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +2 -2
  216. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
  217. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  218. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  219. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +1 -1
  220. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +1 -1
  221. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
  222. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  223. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +2 -2
  224. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +2 -2
  225. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +1 -1
  226. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +1 -1
  227. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +2 -2
  228. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +2 -2
  229. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
  230. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
  231. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.cjs +1 -1
  232. package/dist/martyrs/src/modules/spots/components/pages/Spots.vue.js +1 -1
  233. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +1 -1
  234. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
  235. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs +1 -1
  236. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +1 -1
  237. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +1 -1
  238. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +1 -1
  239. package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.cjs +1 -1
  240. package/dist/martyrs/src/modules/wallet/views/components/pages/Payments.vue.js +1 -1
  241. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
  242. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
  243. package/dist/martyrs.cjs.js +1 -1
  244. package/dist/martyrs.css +1 -1
  245. package/dist/martyrs.es.js +1 -1
  246. package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.cjs +198 -0
  247. package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.cjs.map +1 -0
  248. package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.js +198 -0
  249. package/dist/node_modules/.pnpm/@unhead_dom@1.11.20/node_modules/@unhead/dom/dist/index.js.map +1 -0
  250. package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.cjs +304 -0
  251. package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.cjs.map +1 -1
  252. package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.js +305 -1
  253. package/dist/node_modules/.pnpm/@unhead_shared@1.11.20/node_modules/@unhead/shared/dist/index.js.map +1 -1
  254. package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.cjs +31 -1
  255. package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.cjs.map +1 -1
  256. package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.js +33 -3
  257. package/dist/node_modules/.pnpm/@unhead_vue@1.11.20_vue@3.5.21_typescript@5.9.2_/node_modules/@unhead/vue/dist/shared/vue.ziyDaVMR.js.map +1 -1
  258. package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.cjs +209 -0
  259. package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.cjs.map +1 -0
  260. package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.js +209 -0
  261. package/dist/node_modules/.pnpm/hookable@5.5.3/node_modules/hookable/dist/index.js.map +1 -0
  262. package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.cjs +415 -0
  263. package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.cjs.map +1 -1
  264. package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.js +415 -0
  265. package/dist/node_modules/.pnpm/unhead@1.11.20/node_modules/unhead/dist/index.js.map +1 -1
  266. package/dist/style.css +5 -5
  267. package/dist/{web-xomD1Wpp.cjs → web-C68B9mpp.cjs} +1 -1
  268. package/dist/{web-cWW0_Tbe.js → web-HreCVhdf.js} +1 -1
  269. package/package.json +1 -1
  270. package/src/builder/modes/ssr.prod.js +2 -2
  271. package/src/builder/modes/ssr.rspack.dev.js +1 -1
  272. package/src/builder/modes/ssr.vite.dev.js +1 -1
  273. package/src/components/Media/Media.vue +22 -1
  274. package/src/modules/auth/views/components/pages/ResetPassword.vue +10 -5
  275. package/src/modules/auth/views/components/pages/SignIn.vue +10 -4
  276. package/src/modules/auth/views/components/pages/SignUp.vue +10 -6
  277. package/src/modules/globals/TASK.MD +1 -0
  278. package/src/modules/globals/globals.client.js +3 -0
  279. package/src/modules/globals/views/classes/globals.app.js +320 -0
  280. package/src/modules/globals/views/classes/store.js +52 -55
  281. package/src/modules/globals/views/utils/vue-app-renderer.js +1 -7
  282. package/src/modules/landing/components/sections/SectionMobileApp.vue +6 -6
  283. package/src/modules/landing/components/sections/SubscribeNewsletter.vue +1 -1
  284. package/src/styles/typography.scss +2 -2
  285. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +0 -1
  286. package/dist/martyrs/src/components/Feed/Feed.vue2.cjs.map +0 -1
  287. package/dist/martyrs/src/components/Field/Field.vue2.cjs.map +0 -1
  288. package/dist/martyrs/src/components/FieldTags/BlockTags.vue2.cjs.map +0 -1
  289. package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs.map +0 -1
  290. package/dist/martyrs/src/modules/products/components/elements/THC.vue2.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Media.vue.js","sources":["../../../../../src/components/Media/Media.vue"],"sourcesContent":["<template>\n <div class=\"media-container pos-relative\">\n <!-- Изображение с ленивой загрузкой и placeholder -->\n <img\n v-if=\"isImage\"\n :src=\"isIntersecting ? url : ''\"\n :data-src=\"url\"\n :alt=\"options?.alt || 'Image'\"\n class=\"media-item\"\n :class=\"{ 'loading': !isLoaded }\"\n loading=\"lazy\"\n @load=\"handleLoad\"\n v-bind=\"options\"\n ref=\"imageElement\"\n />\n \n <!-- Видео с предварительной загрузкой -->\n <video\n v-else-if=\"isVideo\"\n ref=\"videoElement\"\n :class=\"{ 'loading': !isLoaded }\"\n class=\"media-item\"\n :controls=\"!options?.hideControls\"\n :loop=\"options?.loop !== false\"\n :muted=\"options?.muted !== false\"\n :autoplay=\"options?.autoplay\"\n :playsinline=\"options?.playsinline !== false\"\n :preload=\"options?.preload || 'metadata'\"\n @loadeddata=\"handleLoad\"\n v-bind=\"options\"\n >\n <source :src=\"url\" :type=\"videoType\">\n </video>\n \n <!-- Плейсхолдер во время загрузки -->\n <div v-if=\"!isLoaded\" class=\"media-placeholder\">\n Loading...\n </div>\n \n <!-- Сообщение об ошибке -->\n <div v-if=\"error\" class=\"media-error\">\n {{ error }}\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, computed, onUnmounted } from 'vue'\n\nconst props = defineProps({\n url: {\n type: String,\n required: true\n },\n options: {\n type: Object,\n default: () => ({\n muted: true,\n loop: true,\n playsinline: true,\n preload: 'metadata' // 'none' | 'metadata' | 'auto'\n })\n }\n})\n\n// Refs\nconst videoElement = ref(null)\nconst imageElement = ref(null)\nconst isLoaded = ref(false)\nconst error = ref(null)\nconst isIntersecting = ref(false)\nlet observer = null\nlet isPlaying = false\n\n// Определяем тип медиа\nconst fileExtension = computed(() => {\n return props.url?.split('.')?.pop()?.toLowerCase()\n})\n\nconst isImage = computed(() => {\n const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'svg', 'avif']\n return imageExtensions.includes(fileExtension.value)\n})\n\nconst isVideo = computed(() => {\n const videoExtensions = ['mp4', 'webm', 'ogg']\n return videoExtensions.includes(fileExtension.value)\n})\n\n// Определяем MIME-тип для видео\nconst videoType = computed(() => {\n const types = {\n 'mp4': 'video/mp4',\n 'webm': 'video/webm',\n 'ogg': 'video/ogg'\n }\n return types[fileExtension.value] || ''\n})\n\n// Обработчик загрузки медиа\nfunction handleLoad() {\n isLoaded.value = true\n}\n\n// Обработка ошибок\nfunction handleError(err) {\n error.value = `Ошибка загрузки медиа: ${err.message}`\n isLoaded.value = false\n}\n\n// Управление видео с обработкой ошибок\nasync function playVideo() {\n if (!videoElement.value) return\n \n try {\n if (videoElement.value.paused && !isPlaying) {\n await videoElement.value.play()\n isPlaying = true\n }\n } catch (err) {\n handleError(err)\n }\n}\n\nfunction checkAndPlayVideo() {\n if (!videoElement.value) return\n \n videoElement.value.onplaying = () => {\n isPlaying = true\n }\n \n videoElement.value.onpause = () => {\n isPlaying = false\n }\n \n videoElement.value.onerror = handleError\n}\n\n// Intersection Observer для ленивой загрузки\nfunction setupIntersectionObserver() {\n const options = {\n root: null,\n rootMargin: '50px',\n threshold: 0.1\n }\n \n observer = new IntersectionObserver((entries) => {\n entries.forEach(entry => {\n isIntersecting.value = entry.isIntersecting\n \n if (entry.isIntersecting) {\n if (isVideo.value && props.options?.autoplay) {\n playVideo()\n }\n // Отключаем observer после первой загрузки\n observer.disconnect()\n }\n })\n }, options)\n \n // Наблюдаем за элементом в зависимости от типа медиа\n const element = isImage.value ? imageElement.value : videoElement.value\n if (element) {\n observer.observe(element)\n }\n}\n\n// Lifecycle hooks\nonMounted(() => {\n setupIntersectionObserver()\n})\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect()\n }\n})\n</script>\n\n<style scoped>\n.media-container {\n}\n\n.media-item {\n all: inherit;\n opacity: 1;\n transition: opacity 0.3s ease;\n}\n\n.media-item.loading {\n opacity: 0;\n}\n\n.media-placeholder {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #f5f5f5;\n}\n\n.media-error {\n color: #ff4444;\n padding: 1rem;\n text-align: center;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiDA,UAAM,QAAQ;AAiBd,UAAM,eAAe,IAAI,IAAI;AAC7B,UAAM,eAAe,IAAI,IAAI;AAC7B,UAAM,WAAW,IAAI,KAAK;AAC1B,UAAM,QAAQ,IAAI,IAAI;AACtB,UAAM,iBAAiB,IAAI,KAAK;AAChC,QAAI,WAAW;AACf,QAAI,YAAY;AAGhB,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,MAAM,KAAK,MAAM,GAAG,GAAG,IAAG,GAAI,YAAW;AAAA,IAClD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,kBAAkB,CAAC,OAAO,QAAQ,OAAO,OAAO,QAAQ,OAAO,MAAM;AAC3E,aAAO,gBAAgB,SAAS,cAAc,KAAK;AAAA,IACrD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,kBAAkB,CAAC,OAAO,QAAQ,KAAK;AAC7C,aAAO,gBAAgB,SAAS,cAAc,KAAK;AAAA,IACrD,CAAC;AAGD,UAAM,YAAY,SAAS,MAAM;AAC/B,YAAM,QAAQ;AAAA,QACZ,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,MACX;AACE,aAAO,MAAM,cAAc,KAAK,KAAK;AAAA,IACvC,CAAC;AAGD,aAAS,aAAa;AACpB,eAAS,QAAQ;AAAA,IACnB;AAGA,aAAS,YAAY,KAAK;AACxB,YAAM,QAAQ,0BAA0B,IAAI,OAAO;AACnD,eAAS,QAAQ;AAAA,IACnB;AAGA,mBAAe,YAAY;AACzB,UAAI,CAAC,aAAa,MAAO;AAEzB,UAAI;AACF,YAAI,aAAa,MAAM,UAAU,CAAC,WAAW;AAC3C,gBAAM,aAAa,MAAM,KAAI;AAC7B,sBAAY;AAAA,QACd;AAAA,MACF,SAAS,KAAK;AACZ,oBAAY,GAAG;AAAA,MACjB;AAAA,IACF;AAiBA,aAAS,4BAA4B;AACnC,YAAM,UAAU;AAAA,QACd,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,WAAW;AAAA,MACf;AAEE,iBAAW,IAAI,qBAAqB,CAAC,YAAY;AAC/C,gBAAQ,QAAQ,WAAS;AACvB,yBAAe,QAAQ,MAAM;AAE7B,cAAI,MAAM,gBAAgB;AACxB,gBAAI,QAAQ,SAAS,MAAM,SAAS,UAAU;AAC5C,wBAAS;AAAA,YACX;AAEA,qBAAS,WAAU;AAAA,UACrB;AAAA,QACF,CAAC;AAAA,MACH,GAAG,OAAO;AAGV,YAAM,UAAU,QAAQ,QAAQ,aAAa,QAAQ,aAAa;AAClE,UAAI,SAAS;AACX,iBAAS,QAAQ,OAAO;AAAA,MAC1B;AAAA,IACF;AAGA,cAAU,MAAM;AACd,gCAAyB;AAAA,IAC3B,CAAC;AAED,gBAAY,MAAM;AAChB,UAAI,UAAU;AACZ,iBAAS,WAAU;AAAA,MACrB;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Media.vue.js","sources":["../../../../../src/components/Media/Media.vue"],"sourcesContent":["<template>\n <div class=\"media-container pos-relative\">\n <!-- Изображение с ленивой загрузкой и placeholder -->\n <img\n v-if=\"isImage\"\n :src=\"isIntersecting ? url : ''\"\n :data-src=\"url\"\n :alt=\"options?.alt || 'Image'\"\n class=\"media-item\"\n :class=\"{ 'loading': !isLoaded }\"\n loading=\"lazy\"\n @load=\"handleLoad\"\n @error=\"handleImageError\"\n v-bind=\"options\"\n ref=\"imageElement\"\n />\n \n <!-- Видео с предварительной загрузкой -->\n <video\n v-else-if=\"isVideo\"\n ref=\"videoElement\"\n :class=\"{ 'loading': !isLoaded }\"\n class=\"media-item\"\n :controls=\"!options?.hideControls\"\n :loop=\"options?.loop !== false\"\n :muted=\"options?.muted !== false\"\n :autoplay=\"options?.autoplay\"\n :playsinline=\"options?.playsinline !== false\"\n :preload=\"options?.preload || 'metadata'\"\n @loadeddata=\"handleLoad\"\n v-bind=\"options\"\n >\n <source :src=\"url\" :type=\"videoType\">\n </video>\n \n <!-- Плейсхолдер во время загрузки -->\n <div v-if=\"!isLoaded && !error\" class=\"media-placeholder\">\n Loading...\n </div>\n \n <!-- Сообщение об ошибке -->\n <div v-if=\"error\" class=\"media-error\">\n {{ error }}\n </div>\n </div>\n</template>\n\n<script setup>\nimport { ref, onMounted, computed, onUnmounted } from 'vue'\n\nconst props = defineProps({\n url: {\n type: String,\n required: true\n },\n options: {\n type: Object,\n default: () => ({\n muted: true,\n loop: true,\n playsinline: true,\n preload: 'metadata' // 'none' | 'metadata' | 'auto'\n })\n }\n})\n\n// Refs\nconst videoElement = ref(null)\nconst imageElement = ref(null)\nconst isLoaded = ref(false)\nconst error = ref(null)\nconst isIntersecting = ref(false)\nlet observer = null\nlet isPlaying = false\nlet loadTimeout = null\n\n// Определяем тип медиа\nconst fileExtension = computed(() => {\n return props.url?.split('.')?.pop()?.toLowerCase()\n})\n\nconst isImage = computed(() => {\n const imageExtensions = ['jpg', 'jpeg', 'png', 'gif', 'webp', 'svg', 'avif']\n return imageExtensions.includes(fileExtension.value)\n})\n\nconst isVideo = computed(() => {\n const videoExtensions = ['mp4', 'webm', 'ogg']\n return videoExtensions.includes(fileExtension.value)\n})\n\n// Определяем MIME-тип для видео\nconst videoType = computed(() => {\n const types = {\n 'mp4': 'video/mp4',\n 'webm': 'video/webm',\n 'ogg': 'video/ogg'\n }\n return types[fileExtension.value] || ''\n})\n\n// Обработчик загрузки медиа\nfunction handleLoad() {\n isLoaded.value = true\n clearTimeout(loadTimeout)\n}\n\n// Обработка ошибок изображения\nfunction handleImageError() {\n error.value = 'Не удалось загрузить изображение'\n isLoaded.value = false\n clearTimeout(loadTimeout)\n}\n\n// Обработка ошибок\nfunction handleError(err) {\n error.value = `Ошибка загрузки медиа: ${err.message}`\n isLoaded.value = false\n clearTimeout(loadTimeout)\n}\n\n// Управление видео с обработкой ошибок\nasync function playVideo() {\n if (!videoElement.value) return\n \n try {\n if (videoElement.value.paused && !isPlaying) {\n await videoElement.value.play()\n isPlaying = true\n }\n } catch (err) {\n handleError(err)\n }\n}\n\nfunction checkAndPlayVideo() {\n if (!videoElement.value) return\n \n videoElement.value.onplaying = () => {\n isPlaying = true\n }\n \n videoElement.value.onpause = () => {\n isPlaying = false\n }\n \n videoElement.value.onerror = handleError\n}\n\n// Intersection Observer для ленивой загрузки\nfunction setupIntersectionObserver() {\n const options = {\n root: null,\n rootMargin: '50px',\n threshold: 0.1\n }\n \n observer = new IntersectionObserver((entries) => {\n entries.forEach(entry => {\n isIntersecting.value = entry.isIntersecting\n \n if (entry.isIntersecting) {\n // Устанавливаем таймаут для обнаружения зависшей загрузки\n loadTimeout = setTimeout(() => {\n if (!isLoaded.value && !error.value) {\n error.value = 'Истекло время ожидания загрузки'\n }\n }, 10000) // 10 секунд таймаут\n \n if (isVideo.value && props.options?.autoplay) {\n playVideo()\n }\n // Отключаем observer после первой загрузки\n observer.disconnect()\n }\n })\n }, options)\n \n // Наблюдаем за элементом в зависимости от типа медиа\n const element = isImage.value ? imageElement.value : videoElement.value\n if (element) {\n observer.observe(element)\n }\n}\n\n// Lifecycle hooks\nonMounted(() => {\n setupIntersectionObserver()\n})\n\nonUnmounted(() => {\n if (observer) {\n observer.disconnect()\n }\n if (loadTimeout) {\n clearTimeout(loadTimeout)\n }\n})\n</script>\n\n<style scoped>\n.media-container {\n}\n\n.media-item {\n all: inherit;\n opacity: 1;\n transition: opacity 0.3s ease;\n}\n\n.media-item.loading {\n opacity: 0;\n}\n\n.media-placeholder {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: #f5f5f5;\n}\n\n.media-error {\n color: #ff4444;\n padding: 1rem;\n text-align: center;\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDA,UAAM,QAAQ;AAiBd,UAAM,eAAe,IAAI,IAAI;AAC7B,UAAM,eAAe,IAAI,IAAI;AAC7B,UAAM,WAAW,IAAI,KAAK;AAC1B,UAAM,QAAQ,IAAI,IAAI;AACtB,UAAM,iBAAiB,IAAI,KAAK;AAChC,QAAI,WAAW;AACf,QAAI,YAAY;AAChB,QAAI,cAAc;AAGlB,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,MAAM,KAAK,MAAM,GAAG,GAAG,IAAG,GAAI,YAAW;AAAA,IAClD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,kBAAkB,CAAC,OAAO,QAAQ,OAAO,OAAO,QAAQ,OAAO,MAAM;AAC3E,aAAO,gBAAgB,SAAS,cAAc,KAAK;AAAA,IACrD,CAAC;AAED,UAAM,UAAU,SAAS,MAAM;AAC7B,YAAM,kBAAkB,CAAC,OAAO,QAAQ,KAAK;AAC7C,aAAO,gBAAgB,SAAS,cAAc,KAAK;AAAA,IACrD,CAAC;AAGD,UAAM,YAAY,SAAS,MAAM;AAC/B,YAAM,QAAQ;AAAA,QACZ,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,OAAO;AAAA,MACX;AACE,aAAO,MAAM,cAAc,KAAK,KAAK;AAAA,IACvC,CAAC;AAGD,aAAS,aAAa;AACpB,eAAS,QAAQ;AACjB,mBAAa,WAAW;AAAA,IAC1B;AAGA,aAAS,mBAAmB;AAC1B,YAAM,QAAQ;AACd,eAAS,QAAQ;AACjB,mBAAa,WAAW;AAAA,IAC1B;AAGA,aAAS,YAAY,KAAK;AACxB,YAAM,QAAQ,0BAA0B,IAAI,OAAO;AACnD,eAAS,QAAQ;AACjB,mBAAa,WAAW;AAAA,IAC1B;AAGA,mBAAe,YAAY;AACzB,UAAI,CAAC,aAAa,MAAO;AAEzB,UAAI;AACF,YAAI,aAAa,MAAM,UAAU,CAAC,WAAW;AAC3C,gBAAM,aAAa,MAAM,KAAI;AAC7B,sBAAY;AAAA,QACd;AAAA,MACF,SAAS,KAAK;AACZ,oBAAY,GAAG;AAAA,MACjB;AAAA,IACF;AAiBA,aAAS,4BAA4B;AACnC,YAAM,UAAU;AAAA,QACd,MAAM;AAAA,QACN,YAAY;AAAA,QACZ,WAAW;AAAA,MACf;AAEE,iBAAW,IAAI,qBAAqB,CAAC,YAAY;AAC/C,gBAAQ,QAAQ,WAAS;AACvB,yBAAe,QAAQ,MAAM;AAE7B,cAAI,MAAM,gBAAgB;AAExB,0BAAc,WAAW,MAAM;AAC7B,kBAAI,CAAC,SAAS,SAAS,CAAC,MAAM,OAAO;AACnC,sBAAM,QAAQ;AAAA,cAChB;AAAA,YACF,GAAG,GAAK;AAER,gBAAI,QAAQ,SAAS,MAAM,SAAS,UAAU;AAC5C,wBAAS;AAAA,YACX;AAEA,qBAAS,WAAU;AAAA,UACrB;AAAA,QACF,CAAC;AAAA,MACH,GAAG,OAAO;AAGV,YAAM,UAAU,QAAQ,QAAQ,aAAa,QAAQ,aAAa;AAClE,UAAI,SAAS;AACX,iBAAS,QAAQ,OAAO;AAAA,MAC1B;AAAA,IACF;AAGA,cAAU,MAAM;AACd,gCAAyB;AAAA,IAC3B,CAAC;AAED,gBAAY,MAAM;AAChB,UAAI,UAAU;AACZ,iBAAS,WAAU;AAAA,MACrB;AACA,UAAI,aAAa;AACf,qBAAa,WAAW;AAAA,MAC1B;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -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
- ;/* empty css */
4
+ ;/* empty css */
5
5
  const vueRouter = require("vue-router");
6
6
  const vueI18n = require("vue-i18n");
7
7
  const auth = require("../../store/auth.cjs");
@@ -1,5 +1,5 @@
1
1
  import { reactive, watch, ref, createElementBlock, openBlock, createElementVNode, toDisplayString, unref, withDirectives, vModelText } from "vue";
2
- /* empty css */
2
+ /* empty css */
3
3
  import { useRoute, useRouter } from "vue-router";
4
4
  import { useI18n } from "vue-i18n";
5
5
  import { state as state$1 } from "../../store/auth.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
  ;/* empty css */
5
- const Field = require("../../../../../components/Field/Field.vue2.cjs");
5
+ const Field = require("../../../../../components/Field/Field.vue.cjs");
6
6
  const Button = require("../../../../../components/Button/Button.vue.cjs");
7
7
  const vueRouter = require("vue-router");
8
8
  const vueI18n = require("vue-i18n");
@@ -1,6 +1,6 @@
1
1
  import { ref, createElementBlock, openBlock, createElementVNode, createCommentVNode, createVNode, toDisplayString, unref, createTextVNode, withCtx } from "vue";
2
2
  /* empty css */
3
- import Field from "../../../../../components/Field/Field.vue2.js";
3
+ import Field from "../../../../../components/Field/Field.vue.js";
4
4
  import _sfc_main$1 from "../../../../../components/Button/Button.vue.js";
5
5
  import { useRoute, useRouter } from "vue-router";
6
6
  import { useI18n } from "vue-i18n";
@@ -2,7 +2,7 @@
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
4
  ;/* empty css */
5
- const Field = require("../../../../../components/Field/Field.vue2.cjs");
5
+ const Field = require("../../../../../components/Field/Field.vue.cjs");
6
6
  const Button = require("../../../../../components/Button/Button.vue.cjs");
7
7
  const vueRouter = require("vue-router");
8
8
  const auth = require("../../store/auth.cjs");
@@ -1,6 +1,6 @@
1
1
  import { ref, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, withCtx } from "vue";
2
2
  /* empty css */
3
- import Field from "../../../../../components/Field/Field.vue2.js";
3
+ import Field from "../../../../../components/Field/Field.vue.js";
4
4
  import _sfc_main$1 from "../../../../../components/Button/Button.vue.js";
5
5
  import { useRoute, useRouter } from "vue-router";
6
6
  import { state, actions } from "../../store/auth.js";
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
- ;/* empty css */
4
+ ;/* empty css */
5
5
  ;/* empty css */
6
6
  ;/* empty css */
7
- const Dropdown = require("../../../../../components/Dropdown/Dropdown.vue.cjs");
7
+ const Dropdown = require("../../../../../components/Dropdown/Dropdown.vue2.cjs");
8
8
  const Menu = require("../../../../../components/Menu/Menu.vue.cjs");
9
9
  const MenuItem = require("../../../../../components/Menu/MenuItem.vue.cjs");
10
10
  const ButtonToggleMembership = require("../../../../organizations/components/elements/ButtonToggleMembership.vue.cjs");
@@ -1,8 +1,8 @@
1
1
  import { ref, inject, onMounted, resolveComponent, createElementBlock, createCommentVNode, openBlock, createElementVNode, createVNode, createBlock, unref, withCtx, toDisplayString, Fragment, renderList, normalizeClass, resolveDynamicComponent } from "vue";
2
- /* empty css */
2
+ /* empty css */
3
3
  /* empty css */
4
4
  /* empty css */
5
- import _sfc_main$1 from "../../../../../components/Dropdown/Dropdown.vue.js";
5
+ import _sfc_main$1 from "../../../../../components/Dropdown/Dropdown.vue2.js";
6
6
  import _sfc_main$6 from "../../../../../components/Menu/Menu.vue.js";
7
7
  import _sfc_main$b from "../../../../../components/Menu/MenuItem.vue.js";
8
8
  import _sfc_main$3 from "../../../../organizations/components/elements/ButtonToggleMembership.vue.js";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const vue = require("vue");
4
4
  const vueRouter = require("vue-router");
5
5
  const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
6
- const Feed = require("../../../../../components/Feed/Feed.vue2.cjs");
6
+ const Feed = require("../../../../../components/Feed/Feed.vue.cjs");
7
7
  const CardBlogpost = require("../../../../community/components/blocks/CardBlogpost.vue.cjs");
8
8
  const auth = require("../../store/auth.cjs");
9
9
  const blogposts = require("../../../../community/store/blogposts.cjs");
@@ -1,7 +1,7 @@
1
1
  import { ref, watch, createElementBlock, openBlock, createElementVNode, createBlock, createCommentVNode, createVNode, unref, withCtx, Fragment, renderList } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
3
  import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
4
- import _sfc_main$2 from "../../../../../components/Feed/Feed.vue2.js";
4
+ import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
5
5
  import _sfc_main$3 from "../../../../community/components/blocks/CardBlogpost.vue.js";
6
6
  import { state } from "../../store/auth.js";
7
7
  import { read } from "../../../../community/store/blogposts.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 Field = require("../../../../../components/Field/Field.vue2.cjs");
4
+ const Field = require("../../../../../components/Field/Field.vue.cjs");
5
5
  const Button = require("../../../../../components/Button/Button.vue.cjs");
6
6
  const UploadImage = require("../../../../../components/UploadImage/UploadImage.vue.cjs");
7
7
  const vueRouter = require("vue-router");
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, withCtx, createTextVNode } from "vue";
2
- import Field from "../../../../../components/Field/Field.vue2.js";
2
+ import Field from "../../../../../components/Field/Field.vue.js";
3
3
  import _sfc_main$2 from "../../../../../components/Button/Button.vue.js";
4
4
  import _sfc_main$1 from "../../../../../components/UploadImage/UploadImage.vue.js";
5
5
  import { useRouter } from "vue-router";
@@ -2,13 +2,12 @@
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
4
  const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
5
- const Field = require("../../../../../components/Field/Field.vue2.cjs");
5
+ const Field = require("../../../../../components/Field/Field.vue.cjs");
6
6
  const FieldPhone = require("../../../../../components/FieldPhone/FieldPhone.vue.cjs");
7
7
  const Button = require("../../../../../components/Button/Button.vue.cjs");
8
8
  const vueRouter = require("vue-router");
9
9
  const vueI18n = require("vue-i18n");
10
- const auth = require("../../store/auth.cjs");
11
- const globals = require("../../../../globals/views/store/globals.cjs");
10
+ const store = require("../../../../globals/views/classes/store.cjs");
12
11
  const inputs_validation = require("../../validations/inputs.validation.cjs");
13
12
  ;/* empty css */
14
13
  const _hoisted_1 = { class: "t-left pd-medium" };
@@ -32,6 +31,10 @@ const _hoisted_9 = { class: "mn-b-small t-transp" };
32
31
  const _sfc_main = {
33
32
  __name: "ResetPassword",
34
33
  setup(__props) {
34
+ const store$1 = store.useStore();
35
+ const auth = store$1.auth || { state: {}, actions: {} };
36
+ store$1.twofa || {};
37
+ const globals = store$1.globals || { state: {} };
35
38
  const { t } = vueI18n.useI18n({
36
39
  useScope: "global"
37
40
  });
@@ -44,7 +47,8 @@ const _sfc_main = {
44
47
  { name: t("auth.resetPassword.phone"), value: "phone" },
45
48
  { name: t("auth.resetPassword.email"), value: "email" }
46
49
  ];
47
- return tabs.filter((tab) => !globals.state.options.auth.authMethodsExclude.includes(tab.value));
50
+ const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
51
+ return tabs.filter((tab) => !excludeMethods.includes(tab.value));
48
52
  });
49
53
  const tabAuth = vue.ref(availableTabs.value.length ? availableTabs.value[0].value : "");
50
54
  async function onSubmit() {
@@ -92,7 +96,7 @@ const _sfc_main = {
92
96
  tabAuth.value === "phone" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6, [
93
97
  vue.createElementVNode("p", _hoisted_7, vue.toDisplayString(vue.unref(t)("auth.resetPassword.smsInfo")), 1),
94
98
  vue.createVNode(FieldPhone.default, {
95
- onChange: _cache[1] || (_cache[1] = (event) => auth.state.user.phone = event),
99
+ onChange: _cache[1] || (_cache[1] = (event) => vue.unref(auth).state.user.phone = event),
96
100
  dropdownOptions: {
97
101
  showDialCodeInSelection: true,
98
102
  showFlags: true,
@@ -112,8 +116,8 @@ const _sfc_main = {
112
116
  tabAuth.value === "email" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_8, [
113
117
  vue.createElementVNode("p", _hoisted_9, vue.toDisplayString(vue.unref(t)("auth.resetPassword.emailInfo")), 1),
114
118
  vue.createVNode(Field.default, {
115
- field: auth.state.user.email,
116
- "onUpdate:field": _cache[2] || (_cache[2] = ($event) => auth.state.user.email = $event),
119
+ field: vue.unref(auth).state.user.email,
120
+ "onUpdate:field": _cache[2] || (_cache[2] = ($event) => vue.unref(auth).state.user.email = $event),
117
121
  placeholder: vue.unref(t)("auth.resetPassword.emailPlaceholder"),
118
122
  validation: emailValidation.value,
119
123
  class: "bg-light h-4r pd-medium radius-small"
@@ -1 +1 @@
1
- {"version":3,"file":"ResetPassword.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import state\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\nimport * as twofa from '@martyrs/src/modules/auth/views/store/twofa.js'\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global', \n})\n// Validation\nconst phoneValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.resetPassword.phone'), value: 'phone' },\n { name: t('auth.resetPassword.email'), value: 'email' }\n ];\n return tabs.filter(tab => !globals.state.options.auth.authMethodsExclude.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tthrow new Error\n\t}\n\ttry {\n \tawait auth.actions.resetPassword(auth.state.user, tabAuth.value, 'reset-password')\n } catch (error) {\n \tconsole.log(error)\n\t\tthrow new Error\n\t}\n}\n\nfunction redirectTo () {\n\trouter.push({ name: 'Enter Code', query: {type: tabAuth.value, method: 'reset-password'} })\n}\n</script>\n\n<style lang=\"scss\">\n\t.slide-fade-enter-active {\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 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tposition: absolute;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.slide-fade-leave-to {\n\n\t}\n</style>\n"],"names":["useI18n","ref","useRoute","useRouter","computed","globals.state","inputsValidation.validateInputs","inputsValidation.validatePhone","auth.state","inputsValidation.validateEmail","auth.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0EA,UAAM,EAAE,EAAC,IAAKA,gBAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,kBAAkBC,IAAAA,IAAI,IAAI;AAChC,UAAM,kBAAkBA,IAAAA,IAAI,IAAI;AAElBC,cAAAA,SAAQ;AACtB,UAAM,SAASC,UAAAA,UAAS;AAExB,UAAM,gBAAgBC,IAAAA,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,QACrD,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,MAC7D;AACI,aAAO,KAAK,OAAO,SAAO,CAACC,QAAAA,MAAc,QAAQ,KAAK,mBAAmB,SAAS,IAAI,KAAK,CAAC;AAAA,IAChG,CAAC;AAED,UAAM,UAAUJ,IAAAA,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMK,kBAAAA;AAAAA,UACrC;AAAA,UACAC,kBAAAA;AAAAA,UACAC,KAAAA,MAAW,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMF,kBAAAA;AAAAA,UACpC;AAAA,UACAG,kBAAAA;AAAAA,UACAD,KAAAA,MAAW,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,cAAM,IAAI;AAAA,MACX;AACA,UAAI;AACF,cAAME,KAAAA,QAAa,cAAcF,KAAAA,MAAW,MAAM,QAAQ,OAAO,gBAAgB;AAAA,MAClF,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AAClB,cAAM,IAAI;AAAA,MACX;AAAA,IACD;AAEA,aAAS,aAAc;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,OAAO,EAAC,MAAM,QAAQ,OAAO,QAAQ,iBAAgB,EAAC,CAAE;AAAA,IAC3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ResetPassword.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import store\nimport { useStore } from '@martyrs/src/modules/globals/views/classes/store.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n\n// Get store\nconst store = useStore()\nconst auth = store.auth || { state: {}, actions: {} }\nconst twofa = store.twofa || { state: {}, actions: {}, sendCode: () => {} }\nconst globals = store.globals || { state: {}, actions: {} }\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global', \n})\n// Validation\nconst phoneValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.resetPassword.phone'), value: 'phone' },\n { name: t('auth.resetPassword.email'), value: 'email' }\n ];\n const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];\n return tabs.filter(tab => !excludeMethods.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tthrow new Error\n\t}\n\ttry {\n \tawait auth.actions.resetPassword(auth.state.user, tabAuth.value, 'reset-password')\n } catch (error) {\n \tconsole.log(error)\n\t\tthrow new Error\n\t}\n}\n\nfunction redirectTo () {\n\trouter.push({ name: 'Enter Code', query: {type: tabAuth.value, method: 'reset-password'} })\n}\n</script>\n\n<style lang=\"scss\">\n\t.slide-fade-enter-active {\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 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tposition: absolute;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.slide-fade-leave-to {\n\n\t}\n</style>\n"],"names":["store","useStore","useI18n","ref","useRoute","useRouter","computed","inputsValidation.validateInputs","inputsValidation.validatePhone","inputsValidation.validateEmail"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEA,UAAMA,UAAQC,MAAAA,SAAQ;AACtB,UAAM,OAAOD,QAAM,QAAQ,EAAE,OAAO,CAAA,GAAI,SAAS,CAAA,EAAE;AACrCA,YAAM,SAAS,CAA6C;AAC1E,UAAM,UAAUA,QAAM,WAAW,EAAE,OAAO,CAAA,EAAgB;AAE1D,UAAM,EAAE,EAAC,IAAKE,gBAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,kBAAkBC,IAAAA,IAAI,IAAI;AAChC,UAAM,kBAAkBA,IAAAA,IAAI,IAAI;AAElBC,cAAAA,SAAQ;AACtB,UAAM,SAASC,UAAAA,UAAS;AAExB,UAAM,gBAAgBC,IAAAA,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,QACrD,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,MAC7D;AACI,YAAM,iBAAiB,QAAQ,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC3E,aAAO,KAAK,OAAO,SAAO,CAAC,eAAe,SAAS,IAAI,KAAK,CAAC;AAAA,IACjE,CAAC;AAED,UAAM,UAAUH,IAAAA,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMI,kBAAAA;AAAAA,UACrC;AAAA,UACAC,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMD,kBAAAA;AAAAA,UACpC;AAAA,UACAE,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,cAAM,IAAI;AAAA,MACX;AACA,UAAI;AACF,cAAM,KAAK,QAAQ,cAAc,KAAK,MAAM,MAAM,QAAQ,OAAO,gBAAgB;AAAA,MAClF,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AAClB,cAAM,IAAI;AAAA,MACX;AAAA,IACD;AAEA,aAAS,aAAc;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,OAAO,EAAC,MAAM,QAAQ,OAAO,QAAQ,iBAAgB,EAAC,CAAE;AAAA,IAC3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,12 +1,11 @@
1
1
  import { ref, computed, createElementBlock, openBlock, createElementVNode, createCommentVNode, createVNode, toDisplayString, unref, Transition, withCtx, createTextVNode } from "vue";
2
2
  import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
3
- import Field from "../../../../../components/Field/Field.vue2.js";
3
+ import Field from "../../../../../components/Field/Field.vue.js";
4
4
  import _sfc_main$2 from "../../../../../components/FieldPhone/FieldPhone.vue.js";
5
5
  import _sfc_main$3 from "../../../../../components/Button/Button.vue.js";
6
6
  import { useRoute, useRouter } from "vue-router";
7
7
  import { useI18n } from "vue-i18n";
8
- import { state as state$1, actions } from "../../store/auth.js";
9
- import { state } from "../../../../globals/views/store/globals.js";
8
+ import { useStore } from "../../../../globals/views/classes/store.js";
10
9
  import { validateInputs, validatePhone, validateEmail } from "../../validations/inputs.validation.js";
11
10
  /* empty css */
12
11
  const _hoisted_1 = { class: "t-left pd-medium" };
@@ -30,6 +29,10 @@ const _hoisted_9 = { class: "mn-b-small t-transp" };
30
29
  const _sfc_main = {
31
30
  __name: "ResetPassword",
32
31
  setup(__props) {
32
+ const store = useStore();
33
+ const auth = store.auth || { state: {}, actions: {} };
34
+ store.twofa || {};
35
+ const globals = store.globals || { state: {} };
33
36
  const { t } = useI18n({
34
37
  useScope: "global"
35
38
  });
@@ -42,7 +45,8 @@ const _sfc_main = {
42
45
  { name: t("auth.resetPassword.phone"), value: "phone" },
43
46
  { name: t("auth.resetPassword.email"), value: "email" }
44
47
  ];
45
- return tabs.filter((tab) => !state.options.auth.authMethodsExclude.includes(tab.value));
48
+ const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
49
+ return tabs.filter((tab) => !excludeMethods.includes(tab.value));
46
50
  });
47
51
  const tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : "");
48
52
  async function onSubmit() {
@@ -50,20 +54,20 @@ const _sfc_main = {
50
54
  if (tabAuth.value === "phone") await validateInputs(
51
55
  phoneValidation,
52
56
  validatePhone,
53
- state$1.user.phone,
57
+ auth.state.user.phone,
54
58
  "Некорректный телефон"
55
59
  );
56
60
  if (tabAuth.value === "email") await validateInputs(
57
61
  emailValidation,
58
62
  validateEmail,
59
- state$1.user.email,
63
+ auth.state.user.email,
60
64
  "Некорректный email"
61
65
  );
62
66
  } catch (error) {
63
67
  throw new Error();
64
68
  }
65
69
  try {
66
- await actions.resetPassword(state$1.user, tabAuth.value, "reset-password");
70
+ await auth.actions.resetPassword(auth.state.user, tabAuth.value, "reset-password");
67
71
  } catch (error) {
68
72
  console.log(error);
69
73
  throw new Error();
@@ -90,7 +94,7 @@ const _sfc_main = {
90
94
  tabAuth.value === "phone" ? (openBlock(), createElementBlock("div", _hoisted_6, [
91
95
  createElementVNode("p", _hoisted_7, toDisplayString(unref(t)("auth.resetPassword.smsInfo")), 1),
92
96
  createVNode(_sfc_main$2, {
93
- onChange: _cache[1] || (_cache[1] = (event) => state$1.user.phone = event),
97
+ onChange: _cache[1] || (_cache[1] = (event) => unref(auth).state.user.phone = event),
94
98
  dropdownOptions: {
95
99
  showDialCodeInSelection: true,
96
100
  showFlags: true,
@@ -110,8 +114,8 @@ const _sfc_main = {
110
114
  tabAuth.value === "email" ? (openBlock(), createElementBlock("div", _hoisted_8, [
111
115
  createElementVNode("p", _hoisted_9, toDisplayString(unref(t)("auth.resetPassword.emailInfo")), 1),
112
116
  createVNode(Field, {
113
- field: state$1.user.email,
114
- "onUpdate:field": _cache[2] || (_cache[2] = ($event) => state$1.user.email = $event),
117
+ field: unref(auth).state.user.email,
118
+ "onUpdate:field": _cache[2] || (_cache[2] = ($event) => unref(auth).state.user.email = $event),
115
119
  placeholder: unref(t)("auth.resetPassword.emailPlaceholder"),
116
120
  validation: emailValidation.value,
117
121
  class: "bg-light h-4r pd-medium radius-small"
@@ -1 +1 @@
1
- {"version":3,"file":"ResetPassword.vue.js","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import state\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\nimport * as twofa from '@martyrs/src/modules/auth/views/store/twofa.js'\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global', \n})\n// Validation\nconst phoneValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.resetPassword.phone'), value: 'phone' },\n { name: t('auth.resetPassword.email'), value: 'email' }\n ];\n return tabs.filter(tab => !globals.state.options.auth.authMethodsExclude.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tthrow new Error\n\t}\n\ttry {\n \tawait auth.actions.resetPassword(auth.state.user, tabAuth.value, 'reset-password')\n } catch (error) {\n \tconsole.log(error)\n\t\tthrow new Error\n\t}\n}\n\nfunction redirectTo () {\n\trouter.push({ name: 'Enter Code', query: {type: tabAuth.value, method: 'reset-password'} })\n}\n</script>\n\n<style lang=\"scss\">\n\t.slide-fade-enter-active {\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 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tposition: absolute;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.slide-fade-leave-to {\n\n\t}\n</style>\n"],"names":["globals.state","inputsValidation.validateInputs","inputsValidation.validatePhone","auth.state","inputsValidation.validateEmail","auth.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0EA,UAAM,EAAE,EAAC,IAAK,QAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,kBAAkB,IAAI,IAAI;AAChC,UAAM,kBAAkB,IAAI,IAAI;AAElB,aAAQ;AACtB,UAAM,SAAS,UAAS;AAExB,UAAM,gBAAgB,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,QACrD,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,MAC7D;AACI,aAAO,KAAK,OAAO,SAAO,CAACA,MAAc,QAAQ,KAAK,mBAAmB,SAAS,IAAI,KAAK,CAAC;AAAA,IAChG,CAAC;AAED,UAAM,UAAU,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMC;AAAAA,UACrC;AAAA,UACAC;AAAAA,UACAC,QAAW,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMF;AAAAA,UACpC;AAAA,UACAG;AAAAA,UACAD,QAAW,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,cAAM,IAAI;AAAA,MACX;AACA,UAAI;AACF,cAAME,QAAa,cAAcF,QAAW,MAAM,QAAQ,OAAO,gBAAgB;AAAA,MAClF,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AAClB,cAAM,IAAI;AAAA,MACX;AAAA,IACD;AAEA,aAAS,aAAc;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,OAAO,EAAC,MAAM,QAAQ,OAAO,QAAQ,iBAAgB,EAAC,CAAE;AAAA,IAC3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ResetPassword.vue.js","sources":["../../../../../../../../src/modules/auth/views/components/pages/ResetPassword.vue"],"sourcesContent":["<template>\n\t<section class=\"t-left pd-medium\">\n\t\t<!-- <img loading=\"lazy\" src=\"@/assets/icons/password.png\" class=\"i-extra mn-b-small\"> -->\n\t\t<!-- Header -->\n\t\t<h3 class=\"mn-b-small\">{{ t('auth.resetPassword.forgotPasswordTitle') }}</h3>\n\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.instructions') }}</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'phone'\" class=\"mn-b-semi radius-small\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.smsInfo') }}</p>\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.resetPassword.phonePlaceholder')}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<!-- Email -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-if=\"tabAuth === 'email'\" class=\"mn-b-semi radius-small o-hidden\">\n\t\t\t\t\t<p class=\"mn-b-small t-transp\">{{ t('auth.resetPassword.emailInfo') }}</p>\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\t\n\t\t\t\t\t\t:placeholder=\"t('auth.resetPassword.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\" \n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button :submit=\"onSubmit\" :callback=\"redirectTo\" class=\"w-100 bg-main\">{{ t('auth.resetPassword.sendCode') }}</Button>\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import store\nimport { useStore } from '@martyrs/src/modules/globals/views/classes/store.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n\n// Get store\nconst store = useStore()\nconst auth = store.auth || { state: {}, actions: {} }\nconst twofa = store.twofa || { state: {}, actions: {}, sendCode: () => {} }\nconst globals = store.globals || { state: {}, actions: {} }\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global', \n})\n// Validation\nconst phoneValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.resetPassword.phone'), value: 'phone' },\n { name: t('auth.resetPassword.email'), value: 'email' }\n ];\n const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];\n return tabs.filter(tab => !excludeMethods.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tthrow new Error\n\t}\n\ttry {\n \tawait auth.actions.resetPassword(auth.state.user, tabAuth.value, 'reset-password')\n } catch (error) {\n \tconsole.log(error)\n\t\tthrow new Error\n\t}\n}\n\nfunction redirectTo () {\n\trouter.push({ name: 'Enter Code', query: {type: tabAuth.value, method: 'reset-password'} })\n}\n</script>\n\n<style lang=\"scss\">\n\t.slide-fade-enter-active {\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 transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n\n\t}\n\n\t.slide-fade-enter-from,\n\t.slide-fade-leave-to {\n\t\tposition: absolute;\n\t transform: translateX(20px);\n\t opacity: 0;\n\t left: 0;\n\t top: 0;\n\t}\n\n\t.slide-fade-leave-to {\n\n\t}\n</style>\n"],"names":["inputsValidation.validateInputs","inputsValidation.validatePhone","inputsValidation.validateEmail"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyEA,UAAM,QAAQ,SAAQ;AACtB,UAAM,OAAO,MAAM,QAAQ,EAAE,OAAO,CAAA,GAAI,SAAS,CAAA,EAAE;AACrC,UAAM,SAAS,CAA6C;AAC1E,UAAM,UAAU,MAAM,WAAW,EAAE,OAAO,CAAA,EAAgB;AAE1D,UAAM,EAAE,EAAC,IAAK,QAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,kBAAkB,IAAI,IAAI;AAChC,UAAM,kBAAkB,IAAI,IAAI;AAElB,aAAQ;AACtB,UAAM,SAAS,UAAS;AAExB,UAAM,gBAAgB,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,QACrD,EAAE,MAAM,EAAE,0BAA0B,GAAG,OAAO,QAAO;AAAA,MAC7D;AACI,YAAM,iBAAiB,QAAQ,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC3E,aAAO,KAAK,OAAO,SAAO,CAAC,eAAe,SAAS,IAAI,KAAK,CAAC;AAAA,IACjE,CAAC;AAED,UAAM,UAAU,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMA;AAAAA,UACrC;AAAA,UACAC;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMD;AAAAA,UACpC;AAAA,UACAE;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,cAAM,IAAI;AAAA,MACX;AACA,UAAI;AACF,cAAM,KAAK,QAAQ,cAAc,KAAK,MAAM,MAAM,QAAQ,OAAO,gBAAgB;AAAA,MAClF,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AAClB,cAAM,IAAI;AAAA,MACX;AAAA,IACD;AAEA,aAAS,aAAc;AACtB,aAAO,KAAK,EAAE,MAAM,cAAc,OAAO,EAAC,MAAM,QAAQ,OAAO,QAAQ,iBAAgB,EAAC,CAAE;AAAA,IAC3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -2,13 +2,12 @@
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
4
  const Tab = require("../../../../../components/Tab/Tab.vue2.cjs");
5
- const Field = require("../../../../../components/Field/Field.vue2.cjs");
5
+ const Field = require("../../../../../components/Field/Field.vue.cjs");
6
6
  const FieldPhone = require("../../../../../components/FieldPhone/FieldPhone.vue.cjs");
7
7
  const Button = require("../../../../../components/Button/Button.vue.cjs");
8
8
  const vueRouter = require("vue-router");
9
9
  const vueI18n = require("vue-i18n");
10
- const auth = require("../../store/auth.cjs");
11
- const globals = require("../../../../globals/views/store/globals.cjs");
10
+ const store = require("../../../../globals/views/classes/store.cjs");
12
11
  const inputs_validation = require("../../validations/inputs.validation.cjs");
13
12
  ;/* empty css */
14
13
  const _hoisted_1 = { class: "" };
@@ -26,6 +25,9 @@ const _hoisted_9 = { class: "w-100 mn-b-big" };
26
25
  const _sfc_main = {
27
26
  __name: "SignIn",
28
27
  setup(__props) {
28
+ const store$1 = store.useStore();
29
+ const auth = store$1.auth || { state: {}, actions: {} };
30
+ const globals = store$1.globals || { state: {} };
29
31
  const phoneValidation = vue.ref(null);
30
32
  const passswordValidation = vue.ref(null);
31
33
  const emailValidation = vue.ref(null);
@@ -39,7 +41,8 @@ const _sfc_main = {
39
41
  { name: t("auth.signIn.phone"), value: "phone" },
40
42
  { name: t("auth.signIn.email"), value: "email" }
41
43
  ];
42
- return tabs.filter((tab) => !globals.state.options.auth.authMethodsExclude.includes(tab.value));
44
+ const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
45
+ return tabs.filter((tab) => !excludeMethods.includes(tab.value));
43
46
  });
44
47
  const tabAuth = vue.ref(availableTabs.value.length ? availableTabs.value[0].value : "");
45
48
  const loadExternalScript = (src) => {
@@ -133,7 +136,7 @@ const _sfc_main = {
133
136
  default: vue.withCtx(() => [
134
137
  vue.withDirectives(vue.createElementVNode("div", _hoisted_7, [
135
138
  vue.createVNode(FieldPhone.default, {
136
- onChange: _cache[1] || (_cache[1] = (event) => auth.state.user.phone = event),
139
+ onChange: _cache[1] || (_cache[1] = (event) => vue.unref(auth).state.user.phone = event),
137
140
  dropdownOptions: {
138
141
  showDialCodeInSelection: true,
139
142
  showFlags: true,
@@ -156,8 +159,8 @@ const _sfc_main = {
156
159
  default: vue.withCtx(() => [
157
160
  vue.withDirectives(vue.createElementVNode("div", _hoisted_8, [
158
161
  vue.createVNode(Field.default, {
159
- field: auth.state.user.email,
160
- "onUpdate:field": _cache[2] || (_cache[2] = ($event) => auth.state.user.email = $event),
162
+ field: vue.unref(auth).state.user.email,
163
+ "onUpdate:field": _cache[2] || (_cache[2] = ($event) => vue.unref(auth).state.user.email = $event),
161
164
  placeholder: vue.unref(t)("auth.signIn.emailPlaceholder"),
162
165
  validation: emailValidation.value,
163
166
  tabIndex: -1,
@@ -171,8 +174,8 @@ const _sfc_main = {
171
174
  })
172
175
  ]),
173
176
  vue.createVNode(Field.default, {
174
- field: auth.state.user.password,
175
- "onUpdate:field": _cache[3] || (_cache[3] = ($event) => auth.state.user.password = $event),
177
+ field: vue.unref(auth).state.user.password,
178
+ "onUpdate:field": _cache[3] || (_cache[3] = ($event) => vue.unref(auth).state.user.password = $event),
176
179
  type: "password",
177
180
  validation: passswordValidation.value,
178
181
  placeholder: vue.unref(t)("auth.signIn.passwordPlaceholder"),
@@ -1 +1 @@
1
- {"version":3,"file":"SignIn.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/SignIn.vue"],"sourcesContent":["<template>\n\t<section class=\"\">\n\t\t<!-- Header -->\n\t\t<img loading=\"lazy\" :src=\"'/logo/logo.svg'\" class=\"i-extra radius-small mn-b-small\">\n\n\t\t<h3 class=\"mn-b-medium\">\n\t\t\t{{ t('auth.signIn.title') }}\n\t\t\t<br>\n\t\t\t<span class=\"t-semi\">{{ t('auth.signIn.subtitle') }}</span>\n\t\t</h3>\n\n\t\t<p class=\"mn-b-big\">\n\t\t\t<router-link :to=\"{name: 'Sign Up', query: { returnUrl: route.query?.returnUrl}}\" class=\"underline t-second\">{{ t('auth.signIn.signup') }}</router-link>\n\t\t</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'phone'\" class=\"mn-b-thin radius-small\">\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true,\n\t\t\t\t\t\t\ttabIndex: -1\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validCharactersOnly=\"true\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.signIn.phonePlaceholder'), type: 'tel'}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'email'\" class=\"mn-b-thin radius-small o-hidden\">\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\n\t\t\t\t\t\t:placeholder=\"t('auth.signIn.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\"\n\t\t\t\t\t\t:tabIndex=\"-1\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\n\t\t<!-- Password -->\n\t\t<Field \n\t\t\tv-model:field=\"auth.state.user.password\"\n\t\t\ttype=\"password\" \t\n\t\t\t:validation=\"passswordValidation\" \n\t\t\t:placeholder=\"t('auth.signIn.passwordPlaceholder')\" \n\t\t\tclass=\"\n bg-light\n pd-medium\n radius-small\n mn-b-semi\n h-4r \n \"\n\t\t/>\n\t\t<!-- Links -->\n\t\t<div class=\"w-100 mn-b-big\">\n\t\t\t<router-link\n\t\t\t\t:to=\"{name: 'Reset Password', query: { returnUrl: route.query?.returnUrl}}\"\n\t\t\t\tclass=\"underline d-block t-blue\"\n\t\t\t>\n\t\t\t\t{{ t('auth.signIn.forgotPassword') }}\n\t\t\t</router-link>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button \n\t\t\t:submit=\"onSubmit\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"w-100 bg-main\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin') }}\n\t\t</Button>\n\t\t\n\t\t<!-- <Button \n\t\t\t:submit=\"onSubmitApple\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"mn-b-thin bg-black t-white\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin_apple') }}\n\t\t</Button> -->\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref, inject } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import state\nimport * as auth from '@martyrs/src/modules/auth/views/store/auth.js'\nimport * as globals from '@martyrs/src/modules/globals/views/store/globals.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n// Init validation\nconst phoneValidation = ref(null)\nconst passswordValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global'\n})\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.signIn.phone'), value: 'phone' },\n { name: t('auth.signIn.email'), value: 'email' }\n ];\n return tabs.filter(tab => !globals.state.options.auth.authMethodsExclude.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n\nconst loadExternalScript = (src) => {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = src;\n script.onload = resolve;\n script.onerror = reject;\n document.head.appendChild(script);\n });\n}\n\nonMounted(async () => {\n\tawait loadExternalScript('https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js');\n});\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tconsole.log(error)\n\t\tthrow new Error\n\t}\n\n\t// COSTIL PLEASE GOD MAKE IT GOOD, FUKEN INPUT COMPONENT RETURN OBJECT NUT NUMBER\n\tconst userCopy = {...auth.state.user};\n\t// COSTIL PLEASE GOD MAKE IT GOOD, FUKEN INPUT COMPONENT RETURN OBJECT NUT NUMBER\n\n \tawait auth.actions.login(userCopy, tabAuth.value)\n}\n\nasync function onSubmitApple() {\n try {\n window.AppleID.auth.init({\n clientId: 'com.thecommune.app.signin',\n scope: 'email name',\n redirectURI: 'https://thecommunephuket.com/auth/signin',\n usePopup: true,\n });\n\n let response = await window.AppleID.auth.signIn();\n\n if (response) {\n console.log(response);\n await auth.actions.login(response, 'apple');\n }\n\n } catch (error) {\n console.error(error);\n throw new Error('Error during Apple authentication');\n }\n}\n\nfunction redirectTo () {\n\tif (route.query?.returnUrl) {\n\t\trouter.push({ \n\t\t\tpath: route.query?.returnUrl,\n\t\t\tquery: { \n\t\t\t\tafterAuth: 'true' \n\t\t\t}\n\t\t})\n\t} else { \n\t\trouter.push({ \n\t\t\tname: 'User Profile', \n\t\t\tparams: { \n\t\t\t\t_id: auth.state.user._id \n\t\t\t},\n\t\t\tquery: { \n\t\t\t\tafterAuth: 'true' \n\t\t\t}\n\t\t})\n\t}\n}\n</script>\n\n<style lang=\"scss\">\n\n\t.input-error {\n\t border: 1px solid red;\n\t box-shadow: 0 0 3px 0 red;\n\t}\n</style>"],"names":["ref","useRoute","useRouter","useI18n","computed","globals.state","onMounted","inputsValidation.validateInputs","inputsValidation.validatePhone","auth.state","inputsValidation.validateEmail","auth.actions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuHA,UAAM,kBAAkBA,IAAAA,IAAI,IAAI;AAChC,UAAM,sBAAsBA,IAAAA,IAAI,IAAI;AACpC,UAAM,kBAAkBA,IAAAA,IAAI,IAAI;AAEhC,UAAM,QAAQC,UAAAA,SAAQ;AACtB,UAAM,SAASC,UAAAA,UAAS;AAExB,UAAM,EAAE,EAAC,IAAKC,gBAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,gBAAgBC,IAAAA,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,QAAO;AAAA,QAC9C,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,QAAO;AAAA,MACtD;AACI,aAAO,KAAK,OAAO,SAAO,CAACC,QAAAA,MAAc,QAAQ,KAAK,mBAAmB,SAAS,IAAI,KAAK,CAAC;AAAA,IAChG,CAAC;AAED,UAAM,UAAUL,IAAAA,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,UAAM,qBAAqB,CAAC,QAAQ;AAClC,aAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,cAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,eAAO,OAAO;AACd,eAAO,MAAM;AACb,eAAO,SAAS;AAChB,eAAO,UAAU;AACjB,iBAAS,KAAK,YAAY,MAAM;AAAA,MAClC,CAAC;AAAA,IACH;AAEAM,QAAAA,UAAU,YAAY;AACrB,YAAM,mBAAmB,sFAAsF;AAAA,IAChH,CAAC;AAED,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMC,kBAAAA;AAAAA,UACrC;AAAA,UACAC,kBAAAA;AAAAA,UACAC,KAAAA,MAAW,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMF,kBAAAA;AAAAA,UACpC;AAAA,UACAG,kBAAAA;AAAAA,UACAD,KAAAA,MAAW,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AACjB,cAAM,IAAI;AAAA,MACX;AAGA,YAAM,WAAW,EAAC,GAAGA,KAAAA,MAAW,KAAI;AAGnC,YAAME,aAAa,MAAM,UAAU,QAAQ,KAAK;AAAA,IAClD;AAwBA,aAAS,aAAc;AACtB,UAAI,MAAM,OAAO,WAAW;AAC3B,eAAO,KAAK;AAAA,UACX,MAAM,MAAM,OAAO;AAAA,UACnB,OAAO;AAAA,YACN,WAAW;AAAA,UACf;AAAA,QACA,CAAG;AAAA,MACF,OAAO;AACN,eAAO,KAAK;AAAA,UACX,MAAM;AAAA,UACN,QAAQ;AAAA,YACP,KAAKF,KAAAA,MAAW,KAAK;AAAA,UACzB;AAAA,UACG,OAAO;AAAA,YACN,WAAW;AAAA,UACf;AAAA,QACA,CAAG;AAAA,MACF;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"SignIn.vue.cjs","sources":["../../../../../../../../src/modules/auth/views/components/pages/SignIn.vue"],"sourcesContent":["<template>\n\t<section class=\"\">\n\t\t<!-- Header -->\n\t\t<img loading=\"lazy\" :src=\"'/logo/logo.svg'\" class=\"i-extra radius-small mn-b-small\">\n\n\t\t<h3 class=\"mn-b-medium\">\n\t\t\t{{ t('auth.signIn.title') }}\n\t\t\t<br>\n\t\t\t<span class=\"t-semi\">{{ t('auth.signIn.subtitle') }}</span>\n\t\t</h3>\n\n\t\t<p class=\"mn-b-big\">\n\t\t\t<router-link :to=\"{name: 'Sign Up', query: { returnUrl: route.query?.returnUrl}}\" class=\"underline t-second\">{{ t('auth.signIn.signup') }}</router-link>\n\t\t</p>\n\t\t\n\t\t<!-- Select -->\n\t\t<div \n\t\t\tv-if=\"availableTabs.length > 1\" \n\t\t\tclass=\"mn-b-small p-small uppercase t-semi bg-light radius-small o-hidden\"\n\t\t>\n\t\t\t<Tab \n\t\t\t\tv-model:selected=\"tabAuth\"\n\t\t\t\t:tabs=\"availableTabs\"\n\t\t\t\tclassTab=\"pd-small pd-r-medium pd-l-medium w-100 pd-small radius-small\"\n\t\t\t/>\n\t\t</div>\n\t\t<!-- Form -->\n\t\t<div class=\"pos-relative\">\n\t\t<!-- Phone -->\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'phone'\" class=\"mn-b-thin radius-small\">\n\t\t\t\t\t<FieldPhone\n\t\t\t\t\t\t@change=\"(event) => auth.state.user.phone = event\" \t\n\t\t\t\t\t\t:dropdownOptions=\"{\n\t\t\t\t\t\t\tshowDialCodeInSelection: true,\n\t\t\t\t\t\t\tshowFlags: true,\n\t\t\t\t\t\t\tshowDialCodeInList: true,\n\t\t\t\t\t\t\ttabIndex: -1\n\t\t\t\t\t\t}\"\n\t\t\t\t\t\t:validCharactersOnly=\"true\"\n\t\t\t\t\t\t:validation=\"phoneValidation\" \n\t\t\t\t\t\tmode=\"national\"\n\t\t\t\t\t\t:inputOptions=\"{placeholder: t('auth.signIn.phonePlaceholder'), type: 'tel'}\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-small radius-small mn-b-thin\" \n\t\t\t\t\t/>\n\t\t\t\t\t\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t\t<transition name=\"slide-fade\">\n\t\t\t\t<div v-show=\"tabAuth === 'email'\" class=\"mn-b-thin radius-small o-hidden\">\n\t\t\t\t\t<Field \n\t\t\t\t\t\tv-model:field=\"auth.state.user.email\" \t\n\t\t\t\t\t\t:placeholder=\"t('auth.signIn.emailPlaceholder')\" \t\n\t\t\t\t\t\t:validation=\"emailValidation\"\n\t\t\t\t\t\t:tabIndex=\"-1\"\n\t\t\t\t\t\tclass=\"bg-light h-4r pd-medium radius-small\" \n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</transition>\n\t\t</div>\n\n\t\t<!-- Password -->\n\t\t<Field \n\t\t\tv-model:field=\"auth.state.user.password\"\n\t\t\ttype=\"password\" \t\n\t\t\t:validation=\"passswordValidation\" \n\t\t\t:placeholder=\"t('auth.signIn.passwordPlaceholder')\" \n\t\t\tclass=\"\n bg-light\n pd-medium\n radius-small\n mn-b-semi\n h-4r \n \"\n\t\t/>\n\t\t<!-- Links -->\n\t\t<div class=\"w-100 mn-b-big\">\n\t\t\t<router-link\n\t\t\t\t:to=\"{name: 'Reset Password', query: { returnUrl: route.query?.returnUrl}}\"\n\t\t\t\tclass=\"underline d-block t-blue\"\n\t\t\t>\n\t\t\t\t{{ t('auth.signIn.forgotPassword') }}\n\t\t\t</router-link>\n\t\t</div>\n\t\t<!-- Button -->\n\t\t<Button \n\t\t\t:submit=\"onSubmit\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"w-100 bg-main\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin') }}\n\t\t</Button>\n\t\t\n\t\t<!-- <Button \n\t\t\t:submit=\"onSubmitApple\" \n\t\t\t:callback=\"redirectTo\" \n\t\t\tclass=\"mn-b-thin bg-black t-white\"\n\t\t>\n\t\t\t{{ t('auth.signIn.signin_apple') }}\n\t\t</Button> -->\n\t</section> \n</template>\n\n<script setup>\n// Import components\nimport Tab from '@martyrs/src/components/Tab/Tab.vue'\nimport Field from '@martyrs/src/components/Field/Field.vue'\nimport FieldPhone from '@martyrs/src/components/FieldPhone/FieldPhone.vue'\nimport Button from '@martyrs/src/components/Button/Button.vue'\n// Import libs\nimport { computed, onMounted, ref, inject } from 'vue'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useI18n } from 'vue-i18n'\n// Import store\nimport { useStore } from '@martyrs/src/modules/globals/views/classes/store.js'\n// Import validation\nimport * as inputsValidation from '@martyrs/src/modules/auth/views/validations/inputs.validation'\n\n// Get store\nconst store = useStore()\nconst auth = store.auth || { state: {}, actions: {} }\nconst globals = store.globals || { state: {}, actions: {} }\n\n// Init validation\nconst phoneValidation = ref(null)\nconst passswordValidation = ref(null)\nconst emailValidation = ref(null)\n// Accessing router\nconst route = useRoute()\nconst router = useRouter()\n// Localization\nconst { t } = useI18n({\n\tuseScope: 'global'\n})\n// Accessing state\nconst availableTabs = computed(() => {\n const tabs = [\n { name: t('auth.signIn.phone'), value: 'phone' },\n { name: t('auth.signIn.email'), value: 'email' }\n ];\n const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];\n return tabs.filter(tab => !excludeMethods.includes(tab.value));\n});\n\nconst tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : '');\n\nconst loadExternalScript = (src) => {\n return new Promise((resolve, reject) => {\n const script = document.createElement('script');\n script.type = 'text/javascript';\n script.src = src;\n script.onload = resolve;\n script.onerror = reject;\n document.head.appendChild(script);\n });\n}\n\nonMounted(async () => {\n\tawait loadExternalScript('https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js');\n});\n// Methods\nasync function onSubmit() {\n\ttry {\n\t if (tabAuth.value === 'phone') await inputsValidation.validateInputs(\n\t\t\tphoneValidation, \n\t\t\tinputsValidation.validatePhone, \n\t\t\tauth.state.user.phone, \n\t\t\t'Некорректный телефон'\n\t\t)\n\t\tif (tabAuth.value === 'email') await inputsValidation.validateInputs(\n\t\t\temailValidation, \n\t\t\tinputsValidation.validateEmail, \n\t\t\tauth.state.user.email, \n\t\t\t'Некорректный email'\n\t\t)\n\t} catch (error) {\n\t\tconsole.log(error)\n\t\tthrow new Error\n\t}\n\n\t// COSTIL PLEASE GOD MAKE IT GOOD, FUKEN INPUT COMPONENT RETURN OBJECT NUT NUMBER\n\tconst userCopy = {...auth.state.user};\n\t// COSTIL PLEASE GOD MAKE IT GOOD, FUKEN INPUT COMPONENT RETURN OBJECT NUT NUMBER\n\n \tawait auth.actions.login(userCopy, tabAuth.value)\n}\n\nasync function onSubmitApple() {\n try {\n window.AppleID.auth.init({\n clientId: 'com.thecommune.app.signin',\n scope: 'email name',\n redirectURI: 'https://thecommunephuket.com/auth/signin',\n usePopup: true,\n });\n\n let response = await window.AppleID.auth.signIn();\n\n if (response) {\n console.log(response);\n await auth.actions.login(response, 'apple');\n }\n\n } catch (error) {\n console.error(error);\n throw new Error('Error during Apple authentication');\n }\n}\n\nfunction redirectTo () {\n\tif (route.query?.returnUrl) {\n\t\trouter.push({ \n\t\t\tpath: route.query?.returnUrl,\n\t\t\tquery: { \n\t\t\t\tafterAuth: 'true' \n\t\t\t}\n\t\t})\n\t} else { \n\t\trouter.push({ \n\t\t\tname: 'User Profile', \n\t\t\tparams: { \n\t\t\t\t_id: auth.state.user._id \n\t\t\t},\n\t\t\tquery: { \n\t\t\t\tafterAuth: 'true' \n\t\t\t}\n\t\t})\n\t}\n}\n</script>\n\n<style lang=\"scss\">\n\n\t.input-error {\n\t border: 1px solid red;\n\t box-shadow: 0 0 3px 0 red;\n\t}\n</style>"],"names":["store","useStore","ref","useRoute","useRouter","useI18n","computed","onMounted","inputsValidation.validateInputs","inputsValidation.validatePhone","inputsValidation.validateEmail"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAuHA,UAAMA,UAAQC,MAAAA,SAAQ;AACtB,UAAM,OAAOD,QAAM,QAAQ,EAAE,OAAO,CAAA,GAAI,SAAS,CAAA,EAAE;AACnD,UAAM,UAAUA,QAAM,WAAW,EAAE,OAAO,CAAA,EAAgB;AAG1D,UAAM,kBAAkBE,IAAAA,IAAI,IAAI;AAChC,UAAM,sBAAsBA,IAAAA,IAAI,IAAI;AACpC,UAAM,kBAAkBA,IAAAA,IAAI,IAAI;AAEhC,UAAM,QAAQC,UAAAA,SAAQ;AACtB,UAAM,SAASC,UAAAA,UAAS;AAExB,UAAM,EAAE,EAAC,IAAKC,gBAAQ;AAAA,MACrB,UAAU;AAAA,IACX,CAAC;AAED,UAAM,gBAAgBC,IAAAA,SAAS,MAAM;AACjC,YAAM,OAAO;AAAA,QACT,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,QAAO;AAAA,QAC9C,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,QAAO;AAAA,MACtD;AACI,YAAM,iBAAiB,QAAQ,OAAO,SAAS,MAAM,sBAAsB,CAAA;AAC3E,aAAO,KAAK,OAAO,SAAO,CAAC,eAAe,SAAS,IAAI,KAAK,CAAC;AAAA,IACjE,CAAC;AAED,UAAM,UAAUJ,IAAAA,IAAI,cAAc,MAAM,SAAS,cAAc,MAAM,CAAC,EAAE,QAAQ,EAAE;AAElF,UAAM,qBAAqB,CAAC,QAAQ;AAClC,aAAO,IAAI,QAAQ,CAAC,SAAS,WAAW;AACtC,cAAM,SAAS,SAAS,cAAc,QAAQ;AAC9C,eAAO,OAAO;AACd,eAAO,MAAM;AACb,eAAO,SAAS;AAChB,eAAO,UAAU;AACjB,iBAAS,KAAK,YAAY,MAAM;AAAA,MAClC,CAAC;AAAA,IACH;AAEAK,QAAAA,UAAU,YAAY;AACrB,YAAM,mBAAmB,sFAAsF;AAAA,IAChH,CAAC;AAED,mBAAe,WAAW;AACzB,UAAI;AACF,YAAI,QAAQ,UAAU,QAAS,OAAMC,kBAAAA;AAAAA,UACrC;AAAA,UACAC,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AACE,YAAI,QAAQ,UAAU,QAAS,OAAMD,kBAAAA;AAAAA,UACpC;AAAA,UACAE,kBAAAA;AAAAA,UACA,KAAK,MAAM,KAAK;AAAA,UAChB;AAAA,QACH;AAAA,MACC,SAAS,OAAO;AACf,gBAAQ,IAAI,KAAK;AACjB,cAAM,IAAI;AAAA,MACX;AAGA,YAAM,WAAW,EAAC,GAAG,KAAK,MAAM,KAAI;AAGnC,YAAM,KAAK,QAAQ,MAAM,UAAU,QAAQ,KAAK;AAAA,IAClD;AAwBA,aAAS,aAAc;AACtB,UAAI,MAAM,OAAO,WAAW;AAC3B,eAAO,KAAK;AAAA,UACX,MAAM,MAAM,OAAO;AAAA,UACnB,OAAO;AAAA,YACN,WAAW;AAAA,UACf;AAAA,QACA,CAAG;AAAA,MACF,OAAO;AACN,eAAO,KAAK;AAAA,UACX,MAAM;AAAA,UACN,QAAQ;AAAA,YACP,KAAK,KAAK,MAAM,KAAK;AAAA,UACzB;AAAA,UACG,OAAO;AAAA,YACN,WAAW;AAAA,UACf;AAAA,QACA,CAAG;AAAA,MACF;AAAA,IACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,12 +1,11 @@
1
1
  import { ref, computed, onMounted, resolveComponent, createElementBlock, openBlock, createElementVNode, createCommentVNode, createVNode, createTextVNode, toDisplayString, unref, withCtx, Transition, withDirectives, vShow } from "vue";
2
2
  import _sfc_main$1 from "../../../../../components/Tab/Tab.vue2.js";
3
- import Field from "../../../../../components/Field/Field.vue2.js";
3
+ import Field from "../../../../../components/Field/Field.vue.js";
4
4
  import _sfc_main$2 from "../../../../../components/FieldPhone/FieldPhone.vue.js";
5
5
  import _sfc_main$3 from "../../../../../components/Button/Button.vue.js";
6
6
  import { useRoute, useRouter } from "vue-router";
7
7
  import { useI18n } from "vue-i18n";
8
- import { state as state$1, actions } from "../../store/auth.js";
9
- import { state } from "../../../../globals/views/store/globals.js";
8
+ import { useStore } from "../../../../globals/views/classes/store.js";
10
9
  import { validateInputs, validatePhone, validateEmail } from "../../validations/inputs.validation.js";
11
10
  /* empty css */
12
11
  const _hoisted_1 = { class: "" };
@@ -24,6 +23,9 @@ const _hoisted_9 = { class: "w-100 mn-b-big" };
24
23
  const _sfc_main = {
25
24
  __name: "SignIn",
26
25
  setup(__props) {
26
+ const store = useStore();
27
+ const auth = store.auth || { state: {}, actions: {} };
28
+ const globals = store.globals || { state: {} };
27
29
  const phoneValidation = ref(null);
28
30
  const passswordValidation = ref(null);
29
31
  const emailValidation = ref(null);
@@ -37,7 +39,8 @@ const _sfc_main = {
37
39
  { name: t("auth.signIn.phone"), value: "phone" },
38
40
  { name: t("auth.signIn.email"), value: "email" }
39
41
  ];
40
- return tabs.filter((tab) => !state.options.auth.authMethodsExclude.includes(tab.value));
42
+ const excludeMethods = globals.state?.options?.auth?.authMethodsExclude || [];
43
+ return tabs.filter((tab) => !excludeMethods.includes(tab.value));
41
44
  });
42
45
  const tabAuth = ref(availableTabs.value.length ? availableTabs.value[0].value : "");
43
46
  const loadExternalScript = (src) => {
@@ -58,21 +61,21 @@ const _sfc_main = {
58
61
  if (tabAuth.value === "phone") await validateInputs(
59
62
  phoneValidation,
60
63
  validatePhone,
61
- state$1.user.phone,
64
+ auth.state.user.phone,
62
65
  "Некорректный телефон"
63
66
  );
64
67
  if (tabAuth.value === "email") await validateInputs(
65
68
  emailValidation,
66
69
  validateEmail,
67
- state$1.user.email,
70
+ auth.state.user.email,
68
71
  "Некорректный email"
69
72
  );
70
73
  } catch (error) {
71
74
  console.log(error);
72
75
  throw new Error();
73
76
  }
74
- const userCopy = { ...state$1.user };
75
- await actions.login(userCopy, tabAuth.value);
77
+ const userCopy = { ...auth.state.user };
78
+ await auth.actions.login(userCopy, tabAuth.value);
76
79
  }
77
80
  function redirectTo() {
78
81
  if (route.query?.returnUrl) {
@@ -86,7 +89,7 @@ const _sfc_main = {
86
89
  router.push({
87
90
  name: "User Profile",
88
91
  params: {
89
- _id: state$1.user._id
92
+ _id: auth.state.user._id
90
93
  },
91
94
  query: {
92
95
  afterAuth: "true"
@@ -131,7 +134,7 @@ const _sfc_main = {
131
134
  default: withCtx(() => [
132
135
  withDirectives(createElementVNode("div", _hoisted_7, [
133
136
  createVNode(_sfc_main$2, {
134
- onChange: _cache[1] || (_cache[1] = (event) => state$1.user.phone = event),
137
+ onChange: _cache[1] || (_cache[1] = (event) => unref(auth).state.user.phone = event),
135
138
  dropdownOptions: {
136
139
  showDialCodeInSelection: true,
137
140
  showFlags: true,
@@ -154,8 +157,8 @@ const _sfc_main = {
154
157
  default: withCtx(() => [
155
158
  withDirectives(createElementVNode("div", _hoisted_8, [
156
159
  createVNode(Field, {
157
- field: state$1.user.email,
158
- "onUpdate:field": _cache[2] || (_cache[2] = ($event) => state$1.user.email = $event),
160
+ field: unref(auth).state.user.email,
161
+ "onUpdate:field": _cache[2] || (_cache[2] = ($event) => unref(auth).state.user.email = $event),
159
162
  placeholder: unref(t)("auth.signIn.emailPlaceholder"),
160
163
  validation: emailValidation.value,
161
164
  tabIndex: -1,
@@ -169,8 +172,8 @@ const _sfc_main = {
169
172
  })
170
173
  ]),
171
174
  createVNode(Field, {
172
- field: state$1.user.password,
173
- "onUpdate:field": _cache[3] || (_cache[3] = ($event) => state$1.user.password = $event),
175
+ field: unref(auth).state.user.password,
176
+ "onUpdate:field": _cache[3] || (_cache[3] = ($event) => unref(auth).state.user.password = $event),
174
177
  type: "password",
175
178
  validation: passswordValidation.value,
176
179
  placeholder: unref(t)("auth.signIn.passwordPlaceholder"),