@ozdao/martyrs 0.2.481 → 0.2.483

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 (541) hide show
  1. package/README.md +4 -13
  2. package/dist/{Media-CKk33U4A.js → Media-C57G7rnE.js} +1 -1
  3. package/dist/{Media-B1ZP3D7B.cjs → Media-DjnpKS62.cjs} +1 -1
  4. package/dist/_virtual/_commonjsHelpers.cjs +2 -0
  5. package/dist/_virtual/_commonjsHelpers.cjs.map +1 -1
  6. package/dist/_virtual/_commonjsHelpers.js +2 -0
  7. package/dist/_virtual/_commonjsHelpers.js.map +1 -1
  8. package/dist/_virtual/index2.cjs +8 -0
  9. package/dist/_virtual/index2.cjs.map +1 -0
  10. package/dist/_virtual/index2.js +8 -0
  11. package/dist/_virtual/index2.js.map +1 -0
  12. package/dist/_virtual/index3.cjs +5 -0
  13. package/dist/_virtual/index3.cjs.map +1 -0
  14. package/dist/_virtual/index3.js +5 -0
  15. package/dist/_virtual/index3.js.map +1 -0
  16. package/dist/{abac-XF1JVCLI.cjs → abac-6LjoG9u-.cjs} +107 -26
  17. package/dist/{abac-BuL5pUZ4.js → abac-Cf_9lCSh.js} +107 -26
  18. package/dist/globals.server.cjs +1 -1
  19. package/dist/globals.server.js +1 -1
  20. package/dist/{main-BhAiwmnI.js → main-CXQqAVVb.js} +3036 -4278
  21. package/dist/main-De5X_RUk.cjs +11 -0
  22. package/dist/martyrs/src/components/Button/{Button.vue2.cjs → Button.vue.cjs} +2 -2
  23. package/dist/martyrs/src/components/Button/{Button.vue2.js.map → Button.vue.cjs.map} +1 -1
  24. package/dist/martyrs/src/components/Button/{Button.vue2.js → Button.vue.js} +2 -2
  25. package/dist/martyrs/src/components/Button/Button.vue.js.map +1 -0
  26. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs +28 -7
  27. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.cjs.map +1 -1
  28. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js +29 -8
  29. package/dist/martyrs/src/components/Checkbox/Checkbox.vue.js.map +1 -1
  30. package/dist/martyrs/src/components/Chips/Chips.vue.cjs +5 -8
  31. package/dist/martyrs/src/components/Chips/Chips.vue.cjs.map +1 -1
  32. package/dist/martyrs/src/components/Chips/Chips.vue.js +6 -9
  33. package/dist/martyrs/src/components/Chips/Chips.vue.js.map +1 -1
  34. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs +84 -0
  35. package/dist/martyrs/src/components/Feed/Carousel.vue.cjs.map +1 -0
  36. package/dist/martyrs/src/components/Feed/Carousel.vue.js +84 -0
  37. package/dist/martyrs/src/components/Feed/Carousel.vue.js.map +1 -0
  38. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +4 -4
  39. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  40. package/dist/martyrs/src/components/Feed/Feed.vue.js +4 -4
  41. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  42. package/dist/martyrs/src/components/Field/Field.vue.cjs +2 -1
  43. package/dist/martyrs/src/components/Field/Field.vue.cjs.map +1 -1
  44. package/dist/martyrs/src/components/Field/Field.vue.js +2 -1
  45. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -1
  46. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs +141 -113
  47. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.cjs.map +1 -1
  48. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js +142 -114
  49. package/dist/martyrs/src/components/FieldPhone/FieldPhone.vue.js.map +1 -1
  50. package/dist/martyrs/src/components/Menu/{Menu.vue.cjs → Menu.vue2.cjs} +2 -2
  51. package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +1 -0
  52. package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
  53. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
  54. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs +203 -151
  55. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.cjs.map +1 -1
  56. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js +204 -152
  57. package/dist/martyrs/src/components/PhotoViewer/PhotoViewer.vue.js.map +1 -1
  58. package/dist/martyrs/src/components/Radio/Radio.vue.cjs +2 -2
  59. package/dist/martyrs/src/components/Radio/Radio.vue.cjs.map +1 -1
  60. package/dist/martyrs/src/components/Radio/Radio.vue.js +2 -2
  61. package/dist/martyrs/src/components/Radio/Radio.vue.js.map +1 -1
  62. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs +4 -3
  63. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs.map +1 -1
  64. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js +4 -3
  65. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js.map +1 -1
  66. package/dist/martyrs/src/components/Slider/{Slider.native.vue.cjs → Slider.vue.cjs} +22 -80
  67. package/dist/martyrs/src/components/Slider/Slider.vue.cjs.map +1 -0
  68. package/dist/martyrs/src/components/Slider/{Slider.native.vue.js → Slider.vue.js} +23 -81
  69. package/dist/martyrs/src/components/Slider/Slider.vue.js.map +1 -0
  70. package/dist/martyrs/src/components/Status/Status.vue.cjs +11 -5
  71. package/dist/martyrs/src/components/Status/Status.vue.cjs.map +1 -1
  72. package/dist/martyrs/src/components/Status/Status.vue.js +13 -7
  73. package/dist/martyrs/src/components/Status/Status.vue.js.map +1 -1
  74. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs +4 -2
  75. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.cjs.map +1 -1
  76. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js +4 -2
  77. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js.map +1 -1
  78. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +6 -4
  79. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
  80. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +6 -4
  81. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  82. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  83. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  84. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  85. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  86. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +4 -2
  87. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs.map +1 -1
  88. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +5 -3
  89. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  90. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +22 -149
  91. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs.map +1 -1
  92. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +24 -151
  93. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js.map +1 -1
  94. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs +77 -0
  95. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.cjs.map +1 -0
  96. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +77 -0
  97. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js.map +1 -0
  98. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +121 -0
  99. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs.map +1 -0
  100. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +121 -0
  101. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js.map +1 -0
  102. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs +38 -0
  103. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.cjs.map +1 -0
  104. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js +38 -0
  105. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditSidebar.vue.js.map +1 -0
  106. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  107. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  108. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  109. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  110. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  111. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  112. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  113. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  114. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs +17 -39
  115. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.cjs.map +1 -1
  116. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js +18 -40
  117. package/dist/martyrs/src/modules/auth/views/components/sections/SliderFeatures.vue.js.map +1 -1
  118. package/dist/martyrs/src/modules/auth/views/localization/EnterCode.json.cjs +1 -1
  119. package/dist/martyrs/src/modules/auth/views/localization/EnterCode.json.js +1 -1
  120. package/dist/martyrs/src/modules/auth/views/localization/EnterPassword.json.cjs +1 -1
  121. package/dist/martyrs/src/modules/auth/views/localization/EnterPassword.json.js +1 -1
  122. package/dist/martyrs/src/modules/auth/views/localization/ResetPassword.json.cjs +1 -1
  123. package/dist/martyrs/src/modules/auth/views/localization/ResetPassword.json.js +1 -1
  124. package/dist/martyrs/src/modules/auth/views/localization/SignIn.json.cjs +1 -1
  125. package/dist/martyrs/src/modules/auth/views/localization/SignIn.json.js +1 -1
  126. package/dist/martyrs/src/modules/auth/views/localization/SignUp.json.cjs +1 -1
  127. package/dist/martyrs/src/modules/auth/views/localization/SignUp.json.js +1 -1
  128. package/dist/martyrs/src/modules/auth/views/router/users.cjs +23 -16
  129. package/dist/martyrs/src/modules/auth/views/router/users.cjs.map +1 -1
  130. package/dist/martyrs/src/modules/auth/views/router/users.js +23 -16
  131. package/dist/martyrs/src/modules/auth/views/router/users.js.map +1 -1
  132. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs +3 -3
  133. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.cjs.map +1 -1
  134. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js +3 -3
  135. package/dist/martyrs/src/modules/community/components/blocks/FooterBlogpost.vue.js.map +1 -1
  136. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +6 -6
  137. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs +4 -3
  138. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.cjs.map +1 -1
  139. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +4 -3
  140. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
  141. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  143. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs +92 -62
  144. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.cjs.map +1 -1
  145. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js +93 -63
  146. package/dist/martyrs/src/modules/community/components/sections/Comment.vue.js.map +1 -1
  147. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs +82 -53
  148. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.cjs.map +1 -1
  149. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js +82 -53
  150. package/dist/martyrs/src/modules/community/components/sections/Comments.vue.js.map +1 -1
  151. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs +2 -6
  152. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.cjs.map +1 -1
  153. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js +2 -6
  154. package/dist/martyrs/src/modules/community/components/sections/HotPosts.vue.js.map +1 -1
  155. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  156. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  157. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.cjs +1 -1
  158. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  159. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
  160. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +1 -1
  161. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  162. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  163. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs +3 -9
  164. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.cjs.map +1 -1
  165. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js +3 -9
  166. package/dist/martyrs/src/modules/events/components/sections/EventsHot.vue.js.map +1 -1
  167. package/dist/martyrs/src/modules/gallery/components/pages/Gallery.vue.js +4 -4
  168. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
  169. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +9 -9
  170. package/dist/martyrs/src/modules/globals/globals.client.cjs +13 -0
  171. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  172. package/dist/martyrs/src/modules/globals/globals.client.js +13 -0
  173. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  174. package/dist/martyrs/src/modules/globals/locales/en.cjs +24 -0
  175. package/dist/martyrs/src/modules/globals/locales/en.cjs.map +1 -0
  176. package/dist/martyrs/src/modules/globals/locales/en.js +24 -0
  177. package/dist/martyrs/src/modules/globals/locales/en.js.map +1 -0
  178. package/dist/martyrs/src/modules/globals/locales/ru.cjs +24 -0
  179. package/dist/martyrs/src/modules/globals/locales/ru.cjs.map +1 -0
  180. package/dist/martyrs/src/modules/globals/locales/ru.js +24 -0
  181. package/dist/martyrs/src/modules/globals/locales/ru.js.map +1 -0
  182. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.cjs +71 -0
  183. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.cjs.map +1 -0
  184. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.js +71 -0
  185. package/dist/martyrs/src/modules/globals/views/classes/globals.i18n.js.map +1 -0
  186. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +2 -2
  187. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs.map +1 -1
  188. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +2 -2
  189. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js.map +1 -1
  190. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs +84 -0
  191. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.cjs.map +1 -0
  192. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js +84 -0
  193. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupAuth.vue.js.map +1 -0
  194. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.cjs +1 -1
  195. package/dist/martyrs/src/modules/globals/views/components/blocks/PopupDateSelector.vue.js +1 -1
  196. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +50 -44
  197. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  198. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +50 -44
  199. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  200. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
  201. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
  202. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.cjs +1 -1
  203. package/dist/martyrs/src/modules/globals/views/components/partials/NavigationBar.vue.js +1 -1
  204. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +17 -0
  205. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
  206. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +17 -0
  207. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
  208. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs +70 -0
  209. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.cjs.map +1 -0
  210. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js +70 -0
  211. package/dist/martyrs/src/modules/globals/views/plugins/popup.auth.plugin.js.map +1 -0
  212. package/dist/martyrs/src/modules/globals/views/store/globals.cjs.map +1 -1
  213. package/dist/martyrs/src/modules/globals/views/store/globals.js.map +1 -1
  214. package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs +35 -0
  215. package/dist/martyrs/src/modules/icons/entities/IconList.vue.cjs.map +1 -0
  216. package/dist/martyrs/src/modules/icons/entities/IconList.vue.js +35 -0
  217. package/dist/martyrs/src/modules/icons/entities/IconList.vue.js.map +1 -0
  218. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs +1 -3
  219. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.cjs.map +1 -1
  220. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js +1 -3
  221. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js.map +1 -1
  222. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs +1 -3
  223. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.cjs.map +1 -1
  224. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js +1 -3
  225. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js.map +1 -1
  226. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs +1 -3
  227. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.cjs.map +1 -1
  228. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.js +1 -3
  229. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.js.map +1 -1
  230. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs +1 -3
  231. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.cjs.map +1 -1
  232. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.js +1 -3
  233. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.js.map +1 -1
  234. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs +1 -3
  235. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.cjs.map +1 -1
  236. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +1 -3
  237. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js.map +1 -1
  238. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs +21 -20
  239. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.cjs.map +1 -1
  240. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js +21 -20
  241. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js.map +1 -1
  242. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs +1 -3
  243. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.cjs.map +1 -1
  244. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +1 -3
  245. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js.map +1 -1
  246. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs +6 -13
  247. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.cjs.map +1 -1
  248. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js +6 -13
  249. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js.map +1 -1
  250. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs +1 -3
  251. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.cjs.map +1 -1
  252. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.js +1 -3
  253. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.js.map +1 -1
  254. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs +1 -3
  255. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.cjs.map +1 -1
  256. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js +1 -3
  257. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js.map +1 -1
  258. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs +1 -3
  259. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.cjs.map +1 -1
  260. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js +41 -43
  261. package/dist/martyrs/src/modules/icons/pages/IconsPage.vue.js.map +1 -1
  262. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +52 -58
  263. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs.map +1 -1
  264. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +52 -58
  265. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js.map +1 -1
  266. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs +8 -8
  267. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.cjs.map +1 -1
  268. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js +8 -8
  269. package/dist/martyrs/src/modules/notifications/components/blocks/NotificationItem.vue.js.map +1 -1
  270. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs +50 -51
  271. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.cjs.map +1 -1
  272. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js +51 -52
  273. package/dist/martyrs/src/modules/notifications/components/elements/NotificationBadge.vue.js.map +1 -1
  274. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
  275. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  276. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +1 -1
  277. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  278. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
  279. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
  280. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
  281. package/dist/martyrs/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
  282. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.cjs +1 -1
  283. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  284. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
  285. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +1 -1
  286. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  287. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +1 -1
  288. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +1 -1
  289. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +1 -1
  290. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
  291. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
  292. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
  293. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +1 -1
  294. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  295. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  296. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  297. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  298. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  299. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  300. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs +7 -4
  301. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.cjs.map +1 -1
  302. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js +18 -15
  303. package/dist/martyrs/src/modules/organizations/configs/navigation.organization.config.js.map +1 -1
  304. package/dist/martyrs/src/modules/organizations/router/organizations.cjs +1 -1
  305. package/dist/martyrs/src/modules/organizations/router/organizations.js +1 -1
  306. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  307. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  308. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  309. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  310. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.cjs +1 -1
  311. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  312. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +7 -2
  313. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs.map +1 -1
  314. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +8 -3
  315. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js.map +1 -1
  316. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs +11 -12
  317. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.cjs.map +1 -1
  318. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +12 -13
  319. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js.map +1 -1
  320. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs +32 -23
  321. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.cjs.map +1 -1
  322. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js +35 -26
  323. package/dist/martyrs/src/modules/products/components/blocks/ProductImages.vue.js.map +1 -1
  324. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs +4 -4
  325. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.cjs.map +1 -1
  326. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js +4 -4
  327. package/dist/martyrs/src/modules/products/components/blocks/ProductVariants.vue.js.map +1 -1
  328. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs +7 -5
  329. package/dist/martyrs/src/modules/products/components/elements/Price.vue.cjs.map +1 -1
  330. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js +7 -5
  331. package/dist/martyrs/src/modules/products/components/elements/Price.vue.js.map +1 -1
  332. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +1 -1
  333. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  334. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +2 -2
  335. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
  336. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.cjs +1 -1
  337. package/dist/martyrs/src/modules/products/components/pages/LeftoverEdit.vue.js +1 -1
  338. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
  339. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +57 -40
  340. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs.map +1 -1
  341. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +59 -42
  342. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  343. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +105 -85
  344. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs.map +1 -1
  345. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +107 -87
  346. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
  347. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
  348. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
  349. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +1 -1
  350. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
  351. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs +145 -0
  352. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.cjs.map +1 -0
  353. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js +145 -0
  354. package/dist/martyrs/src/modules/products/components/sections/EditRecommended.vue.js.map +1 -0
  355. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +1 -1
  356. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +1 -1
  357. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs +46 -31
  358. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.cjs.map +1 -1
  359. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +50 -35
  360. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js.map +1 -1
  361. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs +44 -0
  362. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.cjs.map +1 -0
  363. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js +44 -0
  364. package/dist/martyrs/src/modules/products/components/sections/ProductsPopular.vue.js.map +1 -0
  365. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs +131 -0
  366. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.cjs.map +1 -0
  367. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +131 -0
  368. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js.map +1 -0
  369. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  370. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  371. package/dist/martyrs/src/modules/products/products.client.cjs +3 -3
  372. package/dist/martyrs/src/modules/products/products.client.cjs.map +1 -1
  373. package/dist/martyrs/src/modules/products/products.client.js +3 -3
  374. package/dist/martyrs/src/modules/products/products.client.js.map +1 -1
  375. package/dist/martyrs/src/modules/products/store/products.cjs +4 -0
  376. package/dist/martyrs/src/modules/products/store/products.cjs.map +1 -1
  377. package/dist/martyrs/src/modules/products/store/products.js +4 -0
  378. package/dist/martyrs/src/modules/products/store/products.js.map +1 -1
  379. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  380. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  381. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.cjs +1 -1
  382. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  383. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
  384. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
  385. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +1 -1
  386. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
  387. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
  388. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
  389. package/dist/martyrs/src/modules/wallet/views/localization/wallet.json.cjs +1 -1
  390. package/dist/martyrs/src/modules/wallet/views/localization/wallet.json.js +1 -1
  391. package/dist/martyrs.cjs.js +1 -1
  392. package/dist/martyrs.css +1 -1
  393. package/dist/martyrs.es.js +1 -1
  394. package/dist/node_modules/lodash.merge/index.cjs +689 -0
  395. package/dist/node_modules/lodash.merge/index.cjs.map +1 -0
  396. package/dist/node_modules/lodash.merge/index.js +689 -0
  397. package/dist/node_modules/lodash.merge/index.js.map +1 -0
  398. package/dist/organizations.server.cjs +1 -1
  399. package/dist/organizations.server.js +1 -1
  400. package/dist/products.server.cjs +111 -34
  401. package/dist/products.server.js +111 -34
  402. package/dist/style.css +239 -235
  403. package/package.json +1 -1
  404. package/src/.martyrs/chunks.json +325 -0
  405. package/src/.martyrs/filemap.json +6802 -0
  406. package/src/.martyrs/semantic-analysis.json +307 -0
  407. package/src/.martyrs/toc.json +14 -0
  408. package/src/components/Button/Button.vue +2 -2
  409. package/src/components/Checkbox/Checkbox.vue +28 -16
  410. package/src/components/Chips/Chips.vue +4 -4
  411. package/src/components/Feed/Carousel.vue +72 -0
  412. package/src/components/Feed/Feed.vue +2 -2
  413. package/src/components/Field/Field.vue +1 -0
  414. package/src/components/FieldPhone/FieldPhone.vue +337 -238
  415. package/src/components/PhotoViewer/PhotoViewer.vue +307 -220
  416. package/src/components/Radio/Radio.vue +2 -10
  417. package/src/components/Skeleton/Skeleton.vue +9 -12
  418. package/src/components/Slider/Slider.vue +220 -100
  419. package/src/components/Status/Status.vue +10 -8
  420. package/src/components/Tooltip/Tooltip.vue +2 -2
  421. package/src/modules/auth/views/components/layouts/Auth.vue +1 -1
  422. package/src/modules/auth/views/components/pages/Profile.vue +1 -1
  423. package/src/modules/auth/views/components/pages/ProfileEdit.old.vue +189 -0
  424. package/src/modules/auth/views/components/pages/ProfileEdit.vue +19 -182
  425. package/src/modules/auth/views/components/pages/ProfileEditAccount.vue +72 -0
  426. package/src/modules/auth/views/components/pages/ProfileEditProfile.vue +110 -0
  427. package/src/modules/auth/views/components/pages/ProfileEditSidebar.vue +28 -0
  428. package/src/modules/auth/views/components/sections/SliderFeatures.vue +13 -79
  429. package/src/modules/auth/views/localization/EnterCode.json +2 -2
  430. package/src/modules/auth/views/localization/EnterPassword.json +2 -2
  431. package/src/modules/auth/views/localization/ResetPassword.json +2 -2
  432. package/src/modules/auth/views/localization/SignIn.json +2 -2
  433. package/src/modules/auth/views/localization/SignUp.json +2 -2
  434. package/src/modules/auth/views/router/users.js +23 -12
  435. package/src/modules/community/components/blocks/FooterBlogpost.vue +3 -3
  436. package/src/modules/community/components/pages/BlogPost.vue +2 -1
  437. package/src/modules/community/components/sections/Comment.vue +161 -57
  438. package/src/modules/community/components/sections/Comments.vue +120 -63
  439. package/src/modules/community/components/sections/HotPosts.vue +7 -7
  440. package/src/modules/events/components/sections/EventsHot.vue +26 -33
  441. package/src/modules/globals/controllers/classes/abac/abac.core.js +3 -1
  442. package/src/modules/globals/controllers/classes/abac/abac.fields.js +126 -42
  443. package/src/modules/globals/controllers/classes/abac/v2/abac-core-fixed.js +313 -0
  444. package/src/modules/globals/controllers/classes/abac/v2/abac-express-fixed.js +276 -0
  445. package/src/modules/globals/controllers/classes/abac/v2/abac-fields-fixed.js +422 -0
  446. package/src/modules/globals/controllers/classes/abac/v2/abac-main-fixed.js +295 -0
  447. package/src/modules/globals/controllers/classes/abac/v2/abac-policies-fixed.js +316 -0
  448. package/src/modules/globals/controllers/classes/abac/v2/abac-ws-fixed.js +237 -0
  449. package/src/modules/globals/globals.client.js +17 -1
  450. package/src/modules/globals/locales/en.js +21 -0
  451. package/src/modules/globals/locales/index.js +8 -0
  452. package/src/modules/globals/locales/ru.js +21 -0
  453. package/src/modules/globals/views/classes/globals.i18n.js +84 -0
  454. package/src/modules/globals/views/components/blocks/CardFooter.vue +3 -3
  455. package/src/modules/globals/views/components/blocks/CardHeader.vue +1 -1
  456. package/src/modules/globals/views/components/blocks/PopupAuth.vue +66 -0
  457. package/src/modules/globals/views/components/layouts/Client.vue +43 -40
  458. package/src/modules/globals/views/components/partials/Footer.vue +162 -162
  459. package/src/modules/globals/views/mixins/mixins.js +37 -17
  460. package/src/modules/globals/views/plugins/popup.auth.plugin.js +77 -0
  461. package/src/modules/globals/views/store/globals.js +0 -40
  462. package/src/modules/icons/entities/IconList.vue +14 -0
  463. package/src/modules/icons/navigation/IconCheck.vue +1 -3
  464. package/src/modules/icons/navigation/IconDoubleCheck.vue +1 -3
  465. package/src/modules/icons/navigation/IconLike.vue +1 -3
  466. package/src/modules/icons/navigation/IconMute.vue +1 -3
  467. package/src/modules/icons/navigation/IconPause.vue +1 -3
  468. package/src/modules/icons/navigation/IconPlay.vue +12 -15
  469. package/src/modules/icons/navigation/IconRefresh.vue +1 -3
  470. package/src/modules/icons/navigation/IconShuffle.vue +11 -26
  471. package/src/modules/icons/navigation/IconUnMute.vue +1 -3
  472. package/src/modules/icons/navigation/IconVolume.vue +1 -3
  473. package/src/modules/icons/pages/IconsPage.vue +0 -2
  474. package/src/modules/marketplace/views/components/layouts/Marketplace.vue +34 -38
  475. package/src/modules/music/components/pages/AlbumDetail.vue +2 -2
  476. package/src/modules/music/components/pages/PlaylistDetail.vue +2 -2
  477. package/src/modules/music/components/pages/TrackDetail.vue +1 -1
  478. package/src/modules/music/components/player/MusicPlayer.vue +2 -2
  479. package/src/modules/notifications/components/blocks/NotificationItem.vue +6 -51
  480. package/src/modules/notifications/components/elements/NotificationBadge.vue +53 -97
  481. package/src/modules/organizations/configs/navigation.organization.config.js +8 -4
  482. package/src/modules/products/components/blocks/CardProduct.vue +8 -2
  483. package/src/modules/products/components/blocks/ProductDiscounts.vue +3 -4
  484. package/src/modules/products/components/blocks/ProductImages.vue +32 -23
  485. package/src/modules/products/components/blocks/ProductVariants.vue +6 -4
  486. package/src/modules/products/components/elements/Price.vue +3 -3
  487. package/src/modules/products/components/pages/Product.vue +32 -26
  488. package/src/modules/products/components/pages/ProductEdit.vue +95 -72
  489. package/src/modules/products/components/sections/EditRecommended.vue +131 -0
  490. package/src/modules/products/components/sections/ProductConfigurator.vue +35 -21
  491. package/src/modules/products/components/sections/ProductsPopular.vue +45 -0
  492. package/src/modules/products/components/sections/ProductsRecommended.vue +134 -0
  493. package/src/modules/products/controllers/configs/products.lookup.config.js +20 -15
  494. package/src/modules/products/controllers/products.controller.js +7 -22
  495. package/src/modules/products/models/category.model.js +28 -1
  496. package/src/modules/products/models/leftover.model.js +32 -0
  497. package/src/modules/products/models/product.model.js +37 -1
  498. package/src/modules/products/models/variant.model.js +35 -0
  499. package/src/modules/products/products.client.js +3 -3
  500. package/src/modules/products/routes/products.routes.js +1 -0
  501. package/src/modules/products/store/products.js +4 -0
  502. package/src/modules/wallet/views/localization/wallet.json +2 -2
  503. package/src/styles/base/all.scss +0 -38
  504. package/src/styles/base/shadow_transitions_hover_refactor.scss +20 -51
  505. package/src/styles/config.scss +51 -1
  506. package/dist/main-C75EcBpE.cjs +0 -11
  507. package/dist/martyrs/src/components/Button/Button.vue2.cjs.map +0 -1
  508. package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +0 -1
  509. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
  510. package/dist/martyrs/src/components/Slider/Slider.native.vue.cjs.map +0 -1
  511. package/dist/martyrs/src/components/Slider/Slider.native.vue.js.map +0 -1
  512. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs +0 -2
  513. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.cjs.map +0 -1
  514. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.js +0 -2
  515. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue2.js.map +0 -1
  516. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs +0 -34
  517. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.cjs.map +0 -1
  518. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +0 -34
  519. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js.map +0 -1
  520. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs +0 -124
  521. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.cjs.map +0 -1
  522. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js +0 -124
  523. package/dist/martyrs/src/modules/products/components/sections/PopularProducts.vue.js.map +0 -1
  524. package/dist/node_modules/.pnpm/embla-carousel-autoplay@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.cjs +0 -194
  525. package/dist/node_modules/.pnpm/embla-carousel-autoplay@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.cjs.map +0 -1
  526. package/dist/node_modules/.pnpm/embla-carousel-autoplay@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js +0 -194
  527. package/dist/node_modules/.pnpm/embla-carousel-autoplay@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js.map +0 -1
  528. package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.cjs +0 -43
  529. package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.cjs.map +0 -1
  530. package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.js +0 -43
  531. package/dist/node_modules/.pnpm/embla-carousel-reactive-utils@8.6.0_embla-carousel@8.6.0/node_modules/embla-carousel-reactive-utils/esm/embla-carousel-reactive-utils.esm.js.map +0 -1
  532. package/dist/node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.cjs +0 -43
  533. package/dist/node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.cjs.map +0 -1
  534. package/dist/node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.js +0 -43
  535. package/dist/node_modules/.pnpm/embla-carousel-vue@8.6.0_vue@3.5.13_typescript@5.8.3_/node_modules/embla-carousel-vue/esm/embla-carousel-vue.esm.js.map +0 -1
  536. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/embla-carousel.esm.cjs +0 -1630
  537. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/embla-carousel.esm.cjs.map +0 -1
  538. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/embla-carousel.esm.js +0 -1630
  539. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/embla-carousel.esm.js.map +0 -1
  540. package/src/components/Slider/Slider.native.vue +0 -313
  541. package/src/modules/products/components/sections/PopularProducts.vue +0 -156
@@ -1,4 +1,4 @@
1
- import { ref, reactive, onMounted, computed, watch, nextTick, createElementBlock, openBlock, Fragment, createElementVNode, createVNode, normalizeStyle, normalizeClass, withDirectives, renderSlot, withKeys, createCommentVNode, toDisplayString, renderList, vShow, unref, vModelDynamic, Transition, withCtx } from "vue";
1
+ import { ref, onMounted, computed, watch, nextTick, createElementBlock, openBlock, Fragment, createElementVNode, createVNode, normalizeStyle, normalizeClass, withDirectives, renderSlot, withKeys, createCommentVNode, vModelText, renderList, toDisplayString, vShow, unref, vModelDynamic, Transition, withCtx } from "vue";
2
2
  import clickOutside from "./click-outside.js";
3
3
  import allCountries from "./all-countries.js";
4
4
  /* empty css */
@@ -6,10 +6,7 @@ import { parsePhoneNumber } from "../../../node_modules/.pnpm/libphonenumber-js@
6
6
  const _hoisted_1 = ["tabindex"];
7
7
  const _hoisted_2 = { class: "flex-nowrap flex flex-v-center p-medium vti__selection" };
8
8
  const _hoisted_3 = ["innerHTML"];
9
- const _hoisted_4 = {
10
- key: 1,
11
- class: "vti__country-code"
12
- };
9
+ const _hoisted_4 = ["placeholder", "disabled", "size"];
13
10
  const _hoisted_5 = ["onClick", "onMousemove"];
14
11
  const _hoisted_6 = ["innerHTML"];
15
12
  const _hoisted_7 = { key: 1 };
@@ -31,71 +28,50 @@ const _sfc_main = {
31
28
  badInputStyle: { type: [String, Array, Object], default: "" },
32
29
  goodInputStyle: { type: [String, Array, Object], default: "" },
33
30
  allCountries: { type: Array, default: () => allCountries },
34
- autoFormat: { type: Boolean, default: () => true },
31
+ autoFormat: { type: Boolean, default: true },
35
32
  validation: { type: [Boolean, Object], default: false },
36
- customValidate: { type: [Boolean, RegExp], default: () => false },
37
- defaultCountry: { type: String, default: () => "" },
38
- disabled: { type: Boolean, default: () => false },
39
- autoDefaultCountry: { type: Boolean, default: () => true },
33
+ customValidate: { type: [Boolean, RegExp], default: false },
34
+ defaultCountry: { type: String, default: "" },
35
+ disabled: { type: Boolean, default: false },
36
+ autoDefaultCountry: { type: Boolean, default: true },
40
37
  ignoredCountries: { type: Array, default: () => [] },
41
- invalidMsg: { type: String, default: () => "" },
42
- mode: { type: String, default: () => "auto" },
38
+ invalidMsg: { type: String, default: "" },
39
+ mode: { type: String, default: "auto" },
43
40
  onlyCountries: { type: Array, default: () => [] },
44
41
  preferredCountries: { type: Array, default: () => [] },
45
- validCharactersOnly: { type: Boolean, default: () => false },
46
- rootClass: { type: [String, Array, Object], default: () => "" },
47
- inputClass: { type: [String, Array, Object], default: () => {
48
- return "";
49
- } },
50
- divInputClass: { type: [String, Array, Object], default: () => {
51
- return "";
52
- } },
53
- rootStyle: { type: [String, Array, Object], default: () => {
54
- return "";
55
- } },
56
- dropdownStyle: { type: [String, Array, Object], default: () => {
57
- return "";
58
- } },
59
- listStyle: { type: [String, Array, Object], default: () => {
60
- return "";
61
- } },
62
- inputStyle: { type: [String, Array, Object], default: () => {
63
- return "";
64
- } },
65
- inputId: { type: [String, Array, Object], default: () => {
66
- return "";
67
- } },
68
- Placeholder: { type: [String, Object, Function], default: () => {
69
- return "";
70
- } },
42
+ validCharactersOnly: { type: Boolean, default: false },
43
+ rootClass: { type: [String, Array, Object], default: "" },
44
+ inputClass: { type: [String, Array, Object], default: "" },
45
+ rootStyle: { type: [String, Array, Object], default: "" },
46
+ dropdownStyle: { type: [String, Array, Object], default: "" },
47
+ listStyle: { type: [String, Array, Object], default: "" },
48
+ inputStyle: { type: [String, Array, Object], default: "" },
49
+ inputId: { type: [String, Array, Object], default: "" },
50
+ Placeholder: { type: [String, Object, Function], default: "" },
71
51
  dropdownOptions: {
72
52
  type: Object,
73
- default: () => {
74
- return {
75
- showDialCodeInList: true,
76
- showDialCodeInSelection: false,
77
- showFlags: true,
78
- tabindex: 0
79
- };
80
- }
53
+ default: () => ({
54
+ showDialCodeInList: true,
55
+ showDialCodeInSelection: false,
56
+ showFlags: true,
57
+ tabindex: 0
58
+ })
81
59
  },
82
60
  inputOptions: {
83
61
  type: Object,
84
- default: () => {
85
- return {
86
- autocomplete: "on",
87
- autofocus: false,
88
- id: "",
89
- maxlength: 25,
90
- name: "telephone",
91
- placeholder: "Enter a phone number",
92
- readonly: false,
93
- required: false,
94
- tabindex: 0,
95
- type: "tel",
96
- styleClasses: ""
97
- };
98
- }
62
+ default: () => ({
63
+ autocomplete: "on",
64
+ autofocus: false,
65
+ id: "",
66
+ maxlength: 25,
67
+ name: "telephone",
68
+ placeholder: "Enter a phone number",
69
+ readonly: false,
70
+ required: false,
71
+ tabindex: 0,
72
+ type: "tel",
73
+ styleClasses: ""
74
+ })
99
75
  }
100
76
  },
101
77
  emits: [
@@ -114,14 +90,10 @@ const _sfc_main = {
114
90
  let vClickOutside = clickOutside;
115
91
  const props = __props;
116
92
  const emits = __emit;
117
- ref(5);
118
- ref(5);
119
- reactive({
120
- action: null,
121
- amount: null
122
- });
123
- const phone = ref(props.modelValue ? props.modelValue : "");
93
+ const phone = ref(props.modelValue || "");
124
94
  const activeCountryCode = ref("");
95
+ const dialCodeInput = ref("");
96
+ const dialCodeFilter = ref("");
125
97
  const open = ref(false);
126
98
  const finishMounted = ref(false);
127
99
  const selectedIndex = ref(null);
@@ -132,7 +104,7 @@ const _sfc_main = {
132
104
  const rootElement = ref(null);
133
105
  const list = ref(null);
134
106
  const input = ref(null);
135
- onMounted(async () => {
107
+ onMounted(() => {
136
108
  if (props.modelValue) {
137
109
  phone.value = props.modelValue;
138
110
  }
@@ -142,6 +114,9 @@ const _sfc_main = {
142
114
  if (!phone.value && ((_a = props.inputOptions) == null ? void 0 : _a.showDialCode) && activeCountryCode.value) {
143
115
  phone.value = `+${activeCountryCode.value}`;
144
116
  }
117
+ if (activeCountry.value && props.dropdownOptions.showDialCodeInSelection) {
118
+ dialCodeInput.value = `+${activeCountry.value.dialCode}`;
119
+ }
145
120
  emits("validate", phoneObject.value);
146
121
  }).catch(console.error).then(() => {
147
122
  finishMounted.value = true;
@@ -167,18 +142,30 @@ const _sfc_main = {
167
142
  return props.mode;
168
143
  });
169
144
  const filteredCountries = computed(() => {
145
+ let countries = props.allCountries;
170
146
  if (props.onlyCountries && props.onlyCountries.length) {
171
- return props.allCountries.filter(({ iso2 }) => props.onlyCountries.includes(iso2.toUpperCase()));
172
- }
173
- if (props.ignoredCountries && props.ignoredCountries.length) {
174
- return props.allCountries.filter(
147
+ countries = countries.filter(
148
+ ({ iso2 }) => props.onlyCountries.includes(iso2.toUpperCase())
149
+ );
150
+ } else if (props.ignoredCountries && props.ignoredCountries.length) {
151
+ countries = countries.filter(
175
152
  ({ iso2 }) => !props.ignoredCountries.includes(iso2.toUpperCase()) && !props.ignoredCountries.includes(iso2.toLowerCase())
176
153
  );
177
154
  }
178
- return props.allCountries;
155
+ if (dialCodeFilter.value) {
156
+ const filterValue = dialCodeFilter.value.replace("+", "");
157
+ countries = countries.filter(
158
+ (country) => country.dialCode.startsWith(filterValue)
159
+ );
160
+ }
161
+ return countries;
179
162
  });
180
- const sortedCountries = computed(() => {
181
- const preferredCountries = getCountries(props.preferredCountries).map((country) => ({ ...country, preferred: true }));
163
+ const filteredAndSortedCountries = computed(() => {
164
+ const preferredCountries = getCountries(props.preferredCountries).filter((country) => {
165
+ if (!dialCodeFilter.value) return true;
166
+ const filterValue = dialCodeFilter.value.replace("+", "");
167
+ return country.dialCode.startsWith(filterValue);
168
+ }).map((country) => ({ ...country, preferred: true }));
182
169
  return [...preferredCountries, ...filteredCountries.value];
183
170
  });
184
171
  const phoneObject = computed(() => {
@@ -229,6 +216,7 @@ const _sfc_main = {
229
216
  if (newValue == null ? void 0 : newValue.iso2) {
230
217
  emits("country-changed", newValue);
231
218
  resetPlaceholder();
219
+ dialCodeInput.value = `+${newValue.dialCode}`;
232
220
  }
233
221
  });
234
222
  watch(() => phoneObject.value.countryCode, (newValue) => {
@@ -269,14 +257,35 @@ const _sfc_main = {
269
257
  emits("close");
270
258
  }
271
259
  });
272
- function getCountry() {
273
- return fetch("https://ip2c.org/s").then((response) => response.text()).then((response) => {
274
- const result = (response || "").toString();
275
- if (!result || result[0] !== "1") {
276
- throw new Error("unable to fetch the country");
260
+ function onDialCodeInput() {
261
+ if (!dialCodeInput.value.startsWith("+")) {
262
+ dialCodeInput.value = "+" + dialCodeInput.value.replace(/^\+*/, "");
263
+ }
264
+ dialCodeInput.value = dialCodeInput.value.replace(/[^\+\d]/g, "");
265
+ const plusCount = (dialCodeInput.value.match(/\+/g) || []).length;
266
+ if (plusCount > 1) {
267
+ dialCodeInput.value = "+" + dialCodeInput.value.replace(/\+/g, "");
268
+ }
269
+ dialCodeFilter.value = dialCodeInput.value;
270
+ open.value = true;
271
+ const exactMatch = filteredCountries.value.find(
272
+ (country) => `+${country.dialCode}` === dialCodeInput.value
273
+ );
274
+ if (exactMatch && filteredAndSortedCountries.value.length === 1) {
275
+ choose(exactMatch);
276
+ }
277
+ }
278
+ function onDialCodeBlur() {
279
+ setTimeout(() => {
280
+ if (!dialCodeInput.value && activeCountry.value) {
281
+ dialCodeInput.value = `+${activeCountry.value.dialCode}`;
277
282
  }
278
- return result.substr(2, 2);
279
- });
283
+ }, 200);
284
+ }
285
+ function openDropdown() {
286
+ if (!props.disabled) {
287
+ open.value = true;
288
+ }
280
289
  }
281
290
  function setCaretPosition(ctrl, pos) {
282
291
  if (ctrl.setSelectionRange) {
@@ -307,7 +316,13 @@ const _sfc_main = {
307
316
  }
308
317
  const fallbackCountry = props.preferredCountries[0] || filteredCountries.value[0];
309
318
  if (props.autoDefaultCountry) {
310
- getCountry().then((res) => {
319
+ fetch("https://ip2c.org/s").then((response) => response.text()).then((response) => {
320
+ const result = (response || "").toString();
321
+ if (!result || result[0] !== "1") {
322
+ throw new Error("unable to fetch the country");
323
+ }
324
+ return result.substr(2, 2);
325
+ }).then((res) => {
311
326
  choose(res || activeCountryCode.value);
312
327
  }).catch((error) => {
313
328
  console.warn(error);
@@ -334,19 +349,26 @@ const _sfc_main = {
334
349
  return { highlighted, "last-preferred": lastPreferred, preferred };
335
350
  }
336
351
  function choose(country) {
337
- var _a, _b;
352
+ var _a;
338
353
  let parsedCountry = typeof country === "string" ? findCountry(country) : country;
339
354
  if (!parsedCountry) return;
340
355
  if (((_a = phone.value) == null ? void 0 : _a[0]) === "+" && parsedCountry.iso2 && phoneObject.value.nationalNumber) {
341
356
  activeCountryCode.value = parsedCountry.iso2;
342
- phone.value = parsePhoneNumber(phoneObject.value.nationalNumber, parsedCountry.iso2).formatInternational();
343
- return;
344
- }
345
- if (((_b = props.inputOptions) == null ? void 0 : _b.showDialCode) && parsedCountry) {
346
- phone.value = `+${parsedCountry.dialCode}`;
347
- return;
357
+ phone.value = parsePhoneNumber(
358
+ phoneObject.value.nationalNumber,
359
+ parsedCountry.iso2
360
+ ).formatInternational();
361
+ } else {
362
+ activeCountryCode.value = parsedCountry.iso2;
348
363
  }
349
- activeCountryCode.value = parsedCountry.iso2;
364
+ dialCodeInput.value = `+${parsedCountry.dialCode}`;
365
+ dialCodeFilter.value = "";
366
+ open.value = false;
367
+ nextTick(() => {
368
+ if (input.value) {
369
+ input.value.focus();
370
+ }
371
+ });
350
372
  emitInput(phone.value);
351
373
  }
352
374
  function cleanInvalidCharacters() {
@@ -402,18 +424,15 @@ const _sfc_main = {
402
424
  function onSpace() {
403
425
  emits("space");
404
426
  }
405
- function toggleDropdown() {
406
- if (props.disabled) return;
407
- open.value = !open.value;
408
- }
409
427
  function clickedOutside() {
410
428
  open.value = false;
429
+ dialCodeFilter.value = "";
411
430
  }
412
431
  function keyboardNav(e) {
413
432
  if (e.keyCode === 40) {
414
433
  e.preventDefault();
415
434
  open.value = true;
416
- selectedIndex.value = selectedIndex.value === null ? 0 : Math.min(sortedCountries.value.length - 1, selectedIndex.value + 1);
435
+ selectedIndex.value = selectedIndex.value === null ? 0 : Math.min(filteredAndSortedCountries.value.length - 1, selectedIndex.value + 1);
417
436
  nextTick(() => {
418
437
  const selEle = list.value.children[selectedIndex.value];
419
438
  if (selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight) {
@@ -423,7 +442,7 @@ const _sfc_main = {
423
442
  } else if (e.keyCode === 38) {
424
443
  e.preventDefault();
425
444
  open.value = true;
426
- selectedIndex.value = selectedIndex.value === null ? sortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);
445
+ selectedIndex.value = selectedIndex.value === null ? filteredAndSortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);
427
446
  nextTick(() => {
428
447
  const selEle = list.value.children[selectedIndex.value];
429
448
  if (selEle.offsetTop < list.value.scrollTop) {
@@ -433,17 +452,17 @@ const _sfc_main = {
433
452
  } else if (e.keyCode === 13) {
434
453
  e.preventDefault();
435
454
  if (selectedIndex.value !== null) {
436
- choose(sortedCountries.value[selectedIndex.value]);
455
+ choose(filteredAndSortedCountries.value[selectedIndex.value]);
437
456
  }
438
- open.value = !open.value;
439
457
  } else {
458
+ if (e.target.classList.contains("vti__country-code-input")) return;
440
459
  typeToFindInput.value += e.key;
441
460
  clearTimeout(typeToFindTimer);
442
461
  typeToFindTimer = setTimeout(() => {
443
462
  typeToFindInput.value = "";
444
463
  }, 700);
445
464
  nextTick(() => {
446
- const typedCountryI = sortedCountries.value.slice(props.preferredCountries.length).findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));
465
+ const typedCountryI = filteredAndSortedCountries.value.slice(props.preferredCountries.length).findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));
447
466
  if (typedCountryI >= 0) {
448
467
  selectedIndex.value = props.preferredCountries.length + typedCountryI;
449
468
  const selEle = list.value.children[selectedIndex.value];
@@ -456,7 +475,7 @@ const _sfc_main = {
456
475
  }
457
476
  }
458
477
  function reset() {
459
- selectedIndex.value = sortedCountries.value.map((c) => c.iso2).indexOf(activeCountryCode.value);
478
+ selectedIndex.value = filteredAndSortedCountries.value.map((c) => c.iso2).indexOf(activeCountryCode.value);
460
479
  open.value = false;
461
480
  }
462
481
  function setDropdownPosition() {
@@ -465,6 +484,7 @@ const _sfc_main = {
465
484
  dropdownOpenDirection.value = hasEnoughSpaceBelow ? "below" : "above";
466
485
  }
467
486
  return (_ctx, _cache) => {
487
+ var _a, _b;
468
488
  return openBlock(), createElementBlock(Fragment, null, [
469
489
  createElementVNode("div", {
470
490
  class: normalizeClass([[
@@ -474,10 +494,7 @@ const _sfc_main = {
474
494
  { "bg-fourth-nano": __props.validation },
475
495
  { disabled: __props.disabled }
476
496
  ], "vue3-reactive-tel-input"]),
477
- style: normalizeStyle([
478
- __props.rootStyle,
479
- styles.value
480
- ]),
497
+ style: normalizeStyle([__props.rootStyle, styles.value]),
481
498
  ref_key: "rootElement",
482
499
  ref: rootElement
483
500
  }, [
@@ -485,11 +502,7 @@ const _sfc_main = {
485
502
  class: normalizeClass([["vti__dropdown", { open: open.value }], "br-solid br-black-transp br-1px radius-thin"]),
486
503
  style: normalizeStyle([__props.dropdownStyle]),
487
504
  tabindex: __props.dropdownOptions.tabindex,
488
- onKeydown: [
489
- keyboardNav,
490
- withKeys(reset, ["esc"])
491
- ],
492
- onClick: toggleDropdown
505
+ onKeydown: withKeys(reset, ["esc"])
493
506
  }, [
494
507
  createElementVNode("span", _hoisted_2, [
495
508
  __props.dropdownOptions.showFlags ? (openBlock(), createElementBlock("span", {
@@ -497,7 +510,22 @@ const _sfc_main = {
497
510
  innerHTML: activeCountryFlag.value,
498
511
  class: "mn-r-nano"
499
512
  }, null, 8, _hoisted_3)) : createCommentVNode("", true),
500
- __props.dropdownOptions.showDialCodeInSelection ? (openBlock(), createElementBlock("span", _hoisted_4, " +" + toDisplayString(activeCountry.value && activeCountry.value.dialCode), 1)) : createCommentVNode("", true)
513
+ __props.dropdownOptions.showDialCodeInSelection ? withDirectives((openBlock(), createElementBlock("input", {
514
+ key: 1,
515
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => dialCodeInput.value = $event),
516
+ onInput: onDialCodeInput,
517
+ onFocus: openDropdown,
518
+ onBlur: onDialCodeBlur,
519
+ onKeydown: keyboardNav,
520
+ type: "text",
521
+ class: "vti__country-code-input",
522
+ placeholder: `+${((_a = activeCountry.value) == null ? void 0 : _a.dialCode) || ""}`,
523
+ disabled: __props.disabled,
524
+ size: Math.max((((_b = dialCodeInput.value) == null ? void 0 : _b.length) || 0) + 1, 3),
525
+ maxlength: "5"
526
+ }, null, 40, _hoisted_4)), [
527
+ [vModelText, dialCodeInput.value]
528
+ ]) : createCommentVNode("", true)
501
529
  ]),
502
530
  withDirectives(createElementVNode("ul", {
503
531
  ref_key: "list",
@@ -505,7 +533,7 @@ const _sfc_main = {
505
533
  class: normalizeClass(["bs-black radius-small vti__dropdown-list", dropdownOpenDirection.value]),
506
534
  style: normalizeStyle([__props.listStyle])
507
535
  }, [
508
- (openBlock(true), createElementBlock(Fragment, null, renderList(sortedCountries.value, (pb, index) => {
536
+ (openBlock(true), createElementBlock(Fragment, null, renderList(filteredAndSortedCountries.value, (pb, index) => {
509
537
  return openBlock(), createElementBlock("li", {
510
538
  class: normalizeClass(["flex-nowrap flex w-max", ["vti__dropdown-item", getItemClass(index, pb.iso2)]]),
511
539
  key: pb.iso2 + (pb.preferred ? "-preferred" : ""),
@@ -528,7 +556,7 @@ const _sfc_main = {
528
556
  [unref(vClickOutside), clickedOutside]
529
557
  ]),
530
558
  withDirectives(createElementVNode("input", {
531
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => phone.value = $event),
559
+ "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => phone.value = $event),
532
560
  inputmode: "numeric",
533
561
  pattern: "\\d*",
534
562
  ref_key: "input",
@@ -1 +1 @@
1
- {"version":3,"file":"FieldPhone.vue.js","sources":["../../../../../src/components/FieldPhone/FieldPhone.vue"],"sourcesContent":["<template>\n <div \n :class=\"[\n rootClass, \n classes,\n $attrs.class, \n { 'bg-fourth-nano': validation }, \n { disabled: disabled }\n ]\" \n :style=\"[\n rootStyle, \n styles\n ]\" \n ref=\"rootElement\"\n class=\"vue3-reactive-tel-input\"\n >\n <div\n v-click-outside=\"clickedOutside\"\n :class=\"['vti__dropdown', { open: open }]\"\n :style=\"[dropdownStyle]\"\n :tabindex=\"dropdownOptions.tabindex\"\n @keydown=\"keyboardNav\"\n @click=\"toggleDropdown\"\n @keydown.esc=\"reset\"\n class=\"br-solid br-black-transp br-1px radius-thin\"\n >\n <span class=\"flex-nowrap flex flex-v-center p-medium vti__selection\">\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"activeCountryFlag\" class=\"mn-r-nano\" />\n <span v-if=\"dropdownOptions.showDialCodeInSelection\" class=\"vti__country-code\">\n +{{ activeCountry && activeCountry.dialCode }}\n </span>\n <!-- <slot name=\"arrow-icon\" :open=\"open\"> -->\n <!-- <span class=\"vti__dropdown-arrow\">{{ open ? \"▲\" : \"▼\" }}</span> -->\n <!-- </slot> -->\n </span>\n <ul \n ref=\"list\" \n class=\"bs-black radius-small vti__dropdown-list\"\n v-show=\"open\" \n :class=\"dropdownOpenDirection\"\n :style=\"[listStyle]\"\n \n >\n <li\n v-for=\"(pb, index) in sortedCountries\"\n class=\"flex-nowrap flex w-max\"\n :class=\"['vti__dropdown-item', getItemClass(index, pb.iso2)]\"\n :key=\"pb.iso2 + (pb.preferred ? '-preferred' : '')\"\n @click=\"choose(pb)\"\n @mousemove=\"selectedIndex = index\"\n >\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"pb.flag\" class=\"mn-r-thin\"/>\n <strong>{{ pb.name }}</strong>\n <span v-if=\"dropdownOptions.showDialCodeInList\"> +{{ pb.dialCode }} </span>\n </li>\n </ul>\n </div>\n <!-- <div :class=\"[divInputClass]\" > -->\n <input\n v-model=\"phone\"\n inputmode=\"numeric\" \n pattern=\"\\d*\"\n ref=\"input\"\n :type=\"inputOptions.type\"\n :autocomplete=\"inputOptions.autocomplete\"\n :autofocus=\"inputOptions.autofocus\"\n :class=\"['vti__input', inputOptions.styleClasses, inputClass, Iclasses]\"\n :style=\"[inputStyle, Istyles]\"\n :disabled=\"disabled\"\n :id=\"inputId !== ''? inputId : inputOptions.id\"\n :maxlength=\"inputOptions.maxlength\"\n :name=\"inputId !== ''? inputId : inputOptions.name\"\n :placeholder=\"parsedPlaceholder\"\n :readonly=\"inputOptions.readonly\"\n :required=\"inputOptions.required\"\n :tabindex=\"inputOptions.tabindex\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keyup.enter=\"onEnter\"\n @keyup.space=\"onSpace\"\n />\n <slot></slot> <!-- slot outlet -->\n <!-- </div> -->\n\n </div>\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n\n<script setup>\n import { ref, reactive, watch, computed, onMounted, nextTick } from 'vue';\n import { parsePhoneNumberFromString } from 'libphonenumber-js';\n\n import clickOutside from './click-outside.js';\n import allCountries from './all-countries.js';\n\n let vClickOutside = clickOutside\n\n const props = defineProps({\n modelValue: { type: String, default: '',},\n badClass: { type: [String, Array, Object], default: '', },\n goodClass: { type: [String, Array, Object], default: '', },\n badStyle: { type: [String, Array, Object], default: '', },\n goodStyle: { type: [String, Array, Object], default: '', },\n badInputClass: { type: [String, Array, Object], default: '', },\n goodInputClass: { type: [String, Array, Object], default: '', },\n badInputStyle: { type: [String, Array, Object], default: '', },\n goodInputStyle: { type: [String, Array, Object], default: '', },\n allCountries: { type: Array, default: () => allCountries, },\n autoFormat: { type: Boolean, default: () => true, },\n validation: { type: [Boolean, Object], default: false, },\n customValidate: { type: [Boolean, RegExp], default: () => false, },\n defaultCountry: { type: String, default: () => '', },\n disabled: { type: Boolean, default: () => false, },\n autoDefaultCountry: { type: Boolean, default: () => true },\n ignoredCountries: { type: Array, default: () => [], },\n invalidMsg: { type: String, default: () => '', },\n mode: { type: String, default: () => 'auto', },\n onlyCountries: { type: Array, default: () => [], },\n preferredCountries: { type: Array, default: () => [], },\n validCharactersOnly: { type: Boolean, default: () => false, },\n rootClass: { type: [String, Array, Object], default: () => '', },\n inputClass: { type: [String, Array, Object], default: () => {return ''}, },\n divInputClass: { type: [String, Array, Object], default: () => {return ''}, },\n rootStyle: { type: [String, Array, Object], default: () => {return ''}, },\n dropdownStyle: { type: [String, Array, Object], default: () => {return ''}, },\n listStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputStyle: { type: [String, Array, Object], default: () => {return ''}, },\n inputId: { type: [String, Array, Object], default: () => {return ''}, },\n Placeholder: { type: [String, Object, Function], default: () => {return ''}, },\n dropdownOptions: { \n type: Object, \n default: () => {\n return {\n showDialCodeInList: true,\n showDialCodeInSelection: false,\n showFlags: true,\n tabindex: 0\n }\n } \n },\n inputOptions: { \n type: Object, \n default: () => { \n return {\n autocomplete: 'on',\n autofocus: false,\n id: '',\n maxlength: 25,\n name: 'telephone',\n placeholder: 'Enter a phone number',\n readonly: false,\n required: false,\n tabindex: 0,\n type: 'tel',\n styleClasses: ''\n }\n }\n },\n });\n\n const emits = defineEmits([\n 'update:modelValue', \n 'change',\n 'validate', \n 'country-changed', \n 'open', \n 'close', \n 'blur', \n 'focus', \n 'enter', \n 'space'\n ]);\n\n const counter = ref(5);\n const initCounter = ref(5);\n const message = reactive({\n action: null,\n amount: null,\n });\n const phone = ref(props.modelValue ? props.modelValue : '');\n const activeCountryCode = ref('');\n const open = ref(false);\n const finishMounted = ref(false);\n const selectedIndex = ref(null);\n const typeToFindInput = ref('');\n const typeToFindTimer = ref(null);\n const dropdownOpenDirection = ref('below');\n const parsedPlaceholder = ref(props.Placeholder !== '' ? props.Placeholder : props.inputOptions.placeholder);\n\n const rootElement = ref(null)\n const list = ref(null)\n const input = ref(null)\n\n // Lifecycle hooks\n onMounted(async () => {\n if (props.modelValue) {\n phone.value = props.modelValue;\n }\n\n cleanInvalidCharacters();\n\n initializeCountry()\n .then(() => {\n if (!phone.value\n && props.inputOptions?.showDialCode\n && activeCountryCode.value) {\n phone.value = `+${activeCountryCode.value}`;\n }\n emits('validate', phoneObject.value);\n })\n .catch(console.error)\n .then(() => {\n finishMounted.value = true;\n });\n });\n\n // Computed properties\n const activeCountry = computed(() => {\n return findCountry(activeCountryCode.value);\n });\n\n const activeCountryFlag = computed(() => {\n return activeCountry.value ? activeCountry.value.flag : null;\n });\n\n const parsedMode = computed(() => {\n if (props.mode === 'auto') {\n if (!phone.value || phone.value[0] !== '+') {\n return 'national';\n }\n return 'international';\n }\n if (!['international', 'national'].includes(props.mode)) {\n console.error('Invalid value of prop \"mode\"');\n return 'international';\n }\n return props.mode;\n });\n\n const filteredCountries = computed(() => {\n if (props.onlyCountries && props.onlyCountries.length) {\n return props.allCountries.filter(({ iso2 }) => props.onlyCountries.includes(iso2.toUpperCase()));\n }\n\n if (props.ignoredCountries && props.ignoredCountries.length) {\n return props.allCountries.filter(({ iso2 }) =>\n !props.ignoredCountries.includes(iso2.toUpperCase()) && !props.ignoredCountries.includes(iso2.toLowerCase()),\n );\n }\n\n return props.allCountries;\n });\n const sortedCountries = computed(() => {\n const preferredCountries = getCountries(props.preferredCountries)\n .map(country => ({ ...country, preferred: true }));\n\n return [...preferredCountries, ...filteredCountries.value];\n });\n\n const phoneObject = computed(() => {\n let result = {};\n\n if (phone.value?.[0] === '+') {\n result = parsePhoneNumberFromString(phone.value) || {};\n } else {\n result = parsePhoneNumberFromString(phone.value, activeCountryCode.value) || {};\n }\n\n const { metadata, ...phoneDetails } = result;\n\n let valid = result.isValid?.();\n let formatted = phone.value;\n\n if (valid) {\n formatted = result.format?.(parsedMode.value.toUpperCase(), { nationalPrefix: false });\n }\n\n if (result.country && (props.ignoredCountries.length || props.onlyCountries.length)) {\n if (!findCountry(result.country)) {\n valid = false;\n result = { ...result, country: null };\n }\n }\n\n return {\n ...phoneDetails,\n countryCode: result.country,\n valid,\n country: activeCountry.value,\n formatted,\n };\n });\n\n const classes = computed(() => {\n return phoneObject.value.valid === true ? props.goodClass : \n phoneObject.value.valid === false ? props.badClass : undefined;\n });\n\n const styles = computed(() => {\n return phoneObject.value.valid === true ? props.goodStyle : \n phoneObject.value.valid === false ? props.badStyle : undefined;\n });\n\n const Iclasses = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputClass : \n phoneObject.value.valid === false ? props.badInputClass : undefined;\n });\n\n const Istyles = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputStyle : \n phoneObject.value.valid === false ? props.badInputStyle : undefined;\n });\n // ///////////\n // Watchers\n // ///////////\n watch(activeCountry, (newValue, oldValue) => {\n if (!newValue && oldValue?.iso2) {\n activeCountryCode.value = oldValue.iso2;\n return;\n }\n if (newValue?.iso2) {\n emits('country-changed', newValue);\n resetPlaceholder();\n }\n });\n\n // Следим за изменениями countryCode в phoneObject\n watch(() => phoneObject.value.countryCode, (newValue) => {\n activeCountryCode.value = newValue;\n });\n\n // Следим за изменениями валидности phoneObject\n watch(() => phoneObject.value.valid, () => {\n emits('validate', phoneObject.value);\n });\n\n // Следим за изменениями отформатированного номера в phoneObject\n watch(() => phoneObject.value.formatted, (newValue) => {\n if (!props.autoFormat || props.customValidate) {\n return;\n }\n emitInput(newValue);\n\n nextTick(() => {\n if (newValue && !props.modelValue) {\n phone.value = newValue;\n }\n });\n });\n\n // Следим за изменениями placeholder в inputOptions\n watch(() => props.inputOptions.placeholder, () => {\n resetPlaceholder();\n });\n\n // Следим за внешними изменениями значения (например, через v-model)\n watch(() => props.modelValue, (newValue, oldValue) => {\n if (!testCharacters()) {\n nextTick(() => {\n phone.value = oldValue;\n onInput();\n });\n } else {\n phone.value = newValue;\n }\n });\n\n // Следим за состоянием открытия/закрытия dropdown\n watch(open, (isDropdownOpened) => {\n if (isDropdownOpened) {\n setDropdownPosition();\n emits('open');\n } else {\n emits('close');\n }\n });\n\n // Methods\n function getCountry() {\n return fetch('https://ip2c.org/s')\n .then((response) => response.text())\n .then((response) => {\n const result = (response || '').toString();\n\n if (!result || result[0] !== '1') {\n throw new Error('unable to fetch the country');\n }\n\n return result.substr(2, 2);\n });\n }\n \n function setCaretPosition(ctrl, pos) {\n // Modern browsers\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(pos, pos);\n\n // IE8 and below\n } else if (ctrl.createTextRange) {\n const range = ctrl.createTextRange();\n range.collapse(true);\n range.moveEnd('character', pos);\n range.moveStart('character', pos);\n range.select();\n }\n }\n\n function resetPlaceholder() {\n parsedPlaceholder.value = props.inputOptions.placeholder;\n }\n function initializeCountry() {\n return new Promise((resolve) => {\n if (phone.value?.[0] === '+') { resolve(); return; }\n if (props.defaultCountry) { choose(props.defaultCountry); resolve(); return; }\n const fallbackCountry = props.preferredCountries[0] || filteredCountries.value[0];\n if (props.autoDefaultCountry) {\n getCountry()\n .then((res) => { choose(res || activeCountryCode.value); })\n .catch((error) => { console.warn(error); choose(fallbackCountry); })\n .finally(() => { resolve(); });\n } else {\n choose(fallbackCountry);\n resolve();\n }\n });\n }\n\n function getCountries(list = []) {\n return list.map((countryCode) => findCountry(countryCode)).filter(Boolean);\n }\n\n function findCountry(iso = '') {\n return filteredCountries.value.find((country) => country.iso2 === iso.toUpperCase());\n }\n\n function getItemClass(index, iso2) {\n const highlighted = selectedIndex.value === index;\n const lastPreferred = index === props.preferredCountries.length - 1;\n const preferred = props.preferredCountries.some((c) => c.toUpperCase() === iso2);\n return { highlighted, 'last-preferred': lastPreferred, preferred };\n }\n\n function choose(country) {\n let parsedCountry = typeof country === 'string' ? findCountry(country) : country;\n if (!parsedCountry) return;\n \n if (phone.value?.[0] === '+' && parsedCountry.iso2 && phoneObject.value.nationalNumber) {\n activeCountryCode.value = parsedCountry.iso2;\n phone.value = parsePhoneNumberFromString(phoneObject.value.nationalNumber, parsedCountry.iso2).formatInternational();\n return;\n }\n\n if (props.inputOptions?.showDialCode && parsedCountry) {\n phone.value = `+${parsedCountry.dialCode}`;\n return;\n }\n\n activeCountryCode.value = parsedCountry.iso2;\n emitInput(phone.value);\n }\n\n function cleanInvalidCharacters() {\n const currentPhone = phone.value;\n\n if (props.validCharactersOnly) {\n const results = phone.value.match(/[()\\-+0-9\\s]*/g);\n phone.value = results.join('');\n }\n\n if (props.customValidate && props.customValidate instanceof RegExp) {\n const results = phone.value.match(props.customValidate);\n phone.value = results ? results.join('') : '';\n }\n\n if (currentPhone !== phone.value) {\n emitInput(phone.value);\n }\n }\n\n function testCharacters() {\n if (props.validCharactersOnly) {\n const result = /^[()\\-+0-9\\s]*$/.test(phone.value);\n if (!result) return false;\n }\n if (props.customValidate) {\n return testCustomValidate();\n }\n return true;\n }\n\n function testCustomValidate() {\n return props.customValidate instanceof RegExp ? props.customValidate.test(phone.value) : false;\n }\n\n function onInput() {\n input.value.setCustomValidity(phoneObject.valid ? '' : props.invalidMsg);\n\n emitInput(phone.value);\n }\n\n function emitInput(value) {\n emits('update:modelValue', value);\n\n\n\n if (phoneObject.value.valid) { \n emits('change', phoneObject.value.number);\n emits('country', phoneObject.value.number);\n } else {\n emits('country', null);\n }\n }\n\n function onBlur() {\n emits('blur');\n }\n\n function onFocus() {\n setCaretPosition(input.value, phone.value.length);\n emits('focus');\n }\n\n function onEnter() {\n emits('enter');\n }\n\n function onSpace() {\n emits('space');\n }\n\n function focus() {\n input.value.focus();\n }\n\n function toggleDropdown() {\n if (props.disabled) return;\n open.value = !open.value;\n }\n\n function clickedOutside() {\n open.value = false;\n }\n\n function keyboardNav(e) {\n if (e.keyCode === 40) { // down arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? 0 : Math.min(sortedCountries.value.length - 1, selectedIndex.value + 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight + selEle.clientHeight;\n }\n });\n } else if (e.keyCode === 38) { // up arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? sortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop < list.value.scrollTop) {\n list.value.scrollTop = selEle.offsetTop;\n }\n });\n } else if (e.keyCode === 13) { // enter key\n e.preventDefault();\n if (selectedIndex.value !== null) {\n choose(sortedCountries.value[selectedIndex.value]);\n }\n open.value = !open.value;\n } else { // typing a country's name\n typeToFindInput.value += e.key;\n clearTimeout(typeToFindTimer);\n typeToFindTimer = setTimeout(() => {\n typeToFindInput.value = '';\n }, 700);\n nextTick(() => {\n const typedCountryI = sortedCountries.value.slice(props.preferredCountries.length).findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));\n if (typedCountryI >= 0) {\n selectedIndex.value = props.preferredCountries.length + typedCountryI;\n const selEle = list.value.children[selectedIndex.value];\n const needToScroll = selEle.offsetTop < list.value.scrollTop || selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight;\n if (needToScroll) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight / 2;\n }\n }\n });\n }\n }\n\n function reset() {\n selectedIndex.value = sortedCountries.value.map(c => c.iso2).indexOf(activeCountryCode.value);\n open.value = false;\n }\n\n function setDropdownPosition() {\n const spaceBelow = window.innerHeight - rootElement.value.getBoundingClientRect().bottom;\n const hasEnoughSpaceBelow = spaceBelow > 200;\n dropdownOpenDirection.value = hasEnoughSpaceBelow ? 'below' : 'above';\n }\n</script>\n\n<style lang=\"scss\">\n .vue3-reactive-tel-input{\n display:flex\n }\n .vue3-reactive-tel-input.disabled .dropdown,.vue3-reactive-tel-input.disabled .selection,.vue3-reactive-tel-input.disabled input{\n cursor:no-drop\n }\n .vti__dropdown{\n display:flex;\n flex-direction:column;\n align-content:center;\n justify-content:center;\n position:relative;\n padding:0.5rem;\n cursor:pointer\n }\n .vti__dropdown.show{\n max-height:300px;\n overflow:scroll\n }\n .vti__dropdown-list{\n z-index:1;\n padding:0;\n margin:0;\n text-align:left;\n list-style:none;\n max-height:200px;\n overflow-y:scroll;\n position:absolute;\n left:-1px;\n background-color:#fff;\n width:fit-content\n }\n .vti__dropdown-list.below{\n top:33px\n }\n .vti__dropdown-list.above{\n top:auto;\n bottom:100%\n }\n .vti__dropdown-arrow{\n transform:scaleY(.5);\n display:inline-block;\n color:#666\n }\n .vti__dropdown-item{\n cursor:pointer;\n padding:4px 15px\n }\n .vti__dropdown-item.last-preferred{\n border-bottom:1px solid #cacaca\n }\n .vti__dropdown-item .vti__flag{\n display:inline-block;\n margin-right:5px\n }\n .vti__input{\n color: inherit;\n border:none;\n border-radius:0 2px 2px 0;\n width:100%;\n outline:0;\n padding-left:7px\n }\n</style>"],"names":["parsePhoneNumberFromString","list"],"mappings":"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"}
1
+ {"version":3,"file":"FieldPhone.vue.js","sources":["../../../../../src/components/FieldPhone/FieldPhone.vue"],"sourcesContent":["<template>\n <div \n :class=\"[\n rootClass, \n classes,\n $attrs.class, \n { 'bg-fourth-nano': validation }, \n { disabled: disabled }\n ]\" \n :style=\"[rootStyle, styles]\" \n ref=\"rootElement\"\n class=\"vue3-reactive-tel-input\"\n >\n <div\n v-click-outside=\"clickedOutside\"\n :class=\"['vti__dropdown', { open: open }]\"\n :style=\"[dropdownStyle]\"\n :tabindex=\"dropdownOptions.tabindex\"\n @keydown.esc=\"reset\"\n class=\"br-solid br-black-transp br-1px radius-thin\"\n >\n <span class=\"flex-nowrap flex flex-v-center p-medium vti__selection\">\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"activeCountryFlag\" class=\"mn-r-nano\" />\n \n <!-- Новый инпут для ввода кода страны -->\n <input\n v-if=\"dropdownOptions.showDialCodeInSelection\"\n v-model=\"dialCodeInput\"\n @input=\"onDialCodeInput\"\n @focus=\"openDropdown\"\n @blur=\"onDialCodeBlur\"\n @keydown=\"keyboardNav\"\n type=\"text\"\n class=\"vti__country-code-input\"\n :placeholder=\"`+${activeCountry?.dialCode || ''}`\"\n :disabled=\"disabled\"\n :size=\"Math.max((dialCodeInput?.length || 0) + 1, 3)\"\n maxlength=\"5\"\n />\n\n </span>\n \n <ul \n ref=\"list\" \n class=\"bs-black radius-small vti__dropdown-list\"\n v-show=\"open\" \n :class=\"dropdownOpenDirection\"\n :style=\"[listStyle]\"\n >\n <li\n v-for=\"(pb, index) in filteredAndSortedCountries\"\n class=\"flex-nowrap flex w-max\"\n :class=\"['vti__dropdown-item', getItemClass(index, pb.iso2)]\"\n :key=\"pb.iso2 + (pb.preferred ? '-preferred' : '')\"\n @click=\"choose(pb)\"\n @mousemove=\"selectedIndex = index\"\n >\n <span v-if=\"dropdownOptions.showFlags\" v-html=\"pb.flag\" class=\"mn-r-thin\"/>\n <strong>{{ pb.name }}</strong>\n <span v-if=\"dropdownOptions.showDialCodeInList\"> +{{ pb.dialCode }} </span>\n </li>\n </ul>\n </div>\n \n <input\n v-model=\"phone\"\n inputmode=\"numeric\" \n pattern=\"\\d*\"\n ref=\"input\"\n :type=\"inputOptions.type\"\n :autocomplete=\"inputOptions.autocomplete\"\n :autofocus=\"inputOptions.autofocus\"\n :class=\"['vti__input', inputOptions.styleClasses, inputClass, Iclasses]\"\n :style=\"[inputStyle, Istyles]\"\n :disabled=\"disabled\"\n :id=\"inputId !== '' ? inputId : inputOptions.id\"\n :maxlength=\"inputOptions.maxlength\"\n :name=\"inputId !== '' ? inputId : inputOptions.name\"\n :placeholder=\"parsedPlaceholder\"\n :readonly=\"inputOptions.readonly\"\n :required=\"inputOptions.required\"\n :tabindex=\"inputOptions.tabindex\"\n @blur=\"onBlur\"\n @focus=\"onFocus\"\n @input=\"onInput\"\n @keyup.enter=\"onEnter\"\n @keyup.space=\"onSpace\"\n />\n <slot></slot>\n </div>\n \n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n\n<script setup>\n import { ref, reactive, watch, computed, onMounted, nextTick } from 'vue';\n import { parsePhoneNumberFromString } from 'libphonenumber-js';\n\n import clickOutside from './click-outside.js';\n import allCountries from './all-countries.js';\n\n let vClickOutside = clickOutside\n\n const props = defineProps({\n modelValue: { type: String, default: '' },\n badClass: { type: [String, Array, Object], default: '' },\n goodClass: { type: [String, Array, Object], default: '' },\n badStyle: { type: [String, Array, Object], default: '' },\n goodStyle: { type: [String, Array, Object], default: '' },\n badInputClass: { type: [String, Array, Object], default: '' },\n goodInputClass: { type: [String, Array, Object], default: '' },\n badInputStyle: { type: [String, Array, Object], default: '' },\n goodInputStyle: { type: [String, Array, Object], default: '' },\n allCountries: { type: Array, default: () => allCountries },\n autoFormat: { type: Boolean, default: true },\n validation: { type: [Boolean, Object], default: false },\n customValidate: { type: [Boolean, RegExp], default: false },\n defaultCountry: { type: String, default: '' },\n disabled: { type: Boolean, default: false },\n autoDefaultCountry: { type: Boolean, default: true },\n ignoredCountries: { type: Array, default: () => [] },\n invalidMsg: { type: String, default: '' },\n mode: { type: String, default: 'auto' },\n onlyCountries: { type: Array, default: () => [] },\n preferredCountries: { type: Array, default: () => [] },\n validCharactersOnly: { type: Boolean, default: false },\n rootClass: { type: [String, Array, Object], default: '' },\n inputClass: { type: [String, Array, Object], default: '' },\n rootStyle: { type: [String, Array, Object], default: '' },\n dropdownStyle: { type: [String, Array, Object], default: '' },\n listStyle: { type: [String, Array, Object], default: '' },\n inputStyle: { type: [String, Array, Object], default: '' },\n inputId: { type: [String, Array, Object], default: '' },\n Placeholder: { type: [String, Object, Function], default: '' },\n dropdownOptions: { \n type: Object, \n default: () => ({\n showDialCodeInList: true,\n showDialCodeInSelection: false,\n showFlags: true,\n tabindex: 0\n })\n },\n inputOptions: { \n type: Object, \n default: () => ({ \n autocomplete: 'on',\n autofocus: false,\n id: '',\n maxlength: 25,\n name: 'telephone',\n placeholder: 'Enter a phone number',\n readonly: false,\n required: false,\n tabindex: 0,\n type: 'tel',\n styleClasses: ''\n })\n },\n });\n\n const emits = defineEmits([\n 'update:modelValue', \n 'change',\n 'validate', \n 'country-changed', \n 'open', \n 'close', \n 'blur', \n 'focus', \n 'enter', \n 'space'\n ]);\n\n // Reactive data\n const phone = ref(props.modelValue || '');\n const activeCountryCode = ref('');\n const dialCodeInput = ref('');\n const dialCodeFilter = ref('');\n const open = ref(false);\n const finishMounted = ref(false);\n const selectedIndex = ref(null);\n const typeToFindInput = ref('');\n const typeToFindTimer = ref(null);\n const dropdownOpenDirection = ref('below');\n const parsedPlaceholder = ref(props.Placeholder !== '' ? props.Placeholder : props.inputOptions.placeholder);\n\n // Element refs\n const rootElement = ref(null);\n const list = ref(null);\n const input = ref(null);\n\n // Lifecycle hooks\n onMounted(() => {\n if (props.modelValue) {\n phone.value = props.modelValue;\n }\n\n cleanInvalidCharacters();\n\n initializeCountry()\n .then(() => {\n if (!phone.value && props.inputOptions?.showDialCode && activeCountryCode.value) {\n phone.value = `+${activeCountryCode.value}`;\n }\n \n // Инициализируем dialCodeInput\n if (activeCountry.value && props.dropdownOptions.showDialCodeInSelection) {\n dialCodeInput.value = `+${activeCountry.value.dialCode}`;\n }\n \n emits('validate', phoneObject.value);\n })\n .catch(console.error)\n .then(() => {\n finishMounted.value = true;\n });\n });\n\n // Computed properties\n const activeCountry = computed(() => {\n return findCountry(activeCountryCode.value);\n });\n\n const activeCountryFlag = computed(() => {\n return activeCountry.value ? activeCountry.value.flag : null;\n });\n\n const parsedMode = computed(() => {\n if (props.mode === 'auto') {\n if (!phone.value || phone.value[0] !== '+') {\n return 'national';\n }\n return 'international';\n }\n if (!['international', 'national'].includes(props.mode)) {\n console.error('Invalid value of prop \"mode\"');\n return 'international';\n }\n return props.mode;\n });\n\n const filteredCountries = computed(() => {\n let countries = props.allCountries;\n\n // Фильтрация по onlyCountries/ignoredCountries\n if (props.onlyCountries && props.onlyCountries.length) {\n countries = countries.filter(({ iso2 }) => \n props.onlyCountries.includes(iso2.toUpperCase())\n );\n } else if (props.ignoredCountries && props.ignoredCountries.length) {\n countries = countries.filter(({ iso2 }) =>\n !props.ignoredCountries.includes(iso2.toUpperCase()) && \n !props.ignoredCountries.includes(iso2.toLowerCase())\n );\n }\n\n // Фильтрация по введенному коду страны\n if (dialCodeFilter.value) {\n const filterValue = dialCodeFilter.value.replace('+', '');\n countries = countries.filter(country => \n country.dialCode.startsWith(filterValue)\n );\n }\n\n return countries;\n });\n\n const filteredAndSortedCountries = computed(() => {\n const preferredCountries = getCountries(props.preferredCountries)\n .filter(country => {\n if (!dialCodeFilter.value) return true;\n const filterValue = dialCodeFilter.value.replace('+', '');\n return country.dialCode.startsWith(filterValue);\n })\n .map(country => ({ ...country, preferred: true }));\n\n return [...preferredCountries, ...filteredCountries.value];\n });\n\n const phoneObject = computed(() => {\n let result = {};\n\n if (phone.value?.[0] === '+') {\n result = parsePhoneNumberFromString(phone.value) || {};\n } else {\n result = parsePhoneNumberFromString(phone.value, activeCountryCode.value) || {};\n }\n\n const { metadata, ...phoneDetails } = result;\n\n let valid = result.isValid?.();\n let formatted = phone.value;\n\n if (valid) {\n formatted = result.format?.(parsedMode.value.toUpperCase(), { nationalPrefix: false });\n }\n\n if (result.country && (props.ignoredCountries.length || props.onlyCountries.length)) {\n if (!findCountry(result.country)) {\n valid = false;\n result = { ...result, country: null };\n }\n }\n\n return {\n ...phoneDetails,\n countryCode: result.country,\n valid,\n country: activeCountry.value,\n formatted,\n };\n });\n\n const classes = computed(() => {\n return phoneObject.value.valid === true ? props.goodClass : \n phoneObject.value.valid === false ? props.badClass : undefined;\n });\n\n const styles = computed(() => {\n return phoneObject.value.valid === true ? props.goodStyle : \n phoneObject.value.valid === false ? props.badStyle : undefined;\n });\n\n const Iclasses = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputClass : \n phoneObject.value.valid === false ? props.badInputClass : undefined;\n });\n\n const Istyles = computed(() => {\n return phoneObject.value.valid === true ? props.goodInputStyle : \n phoneObject.value.valid === false ? props.badInputStyle : undefined;\n });\n\n // Watchers\n watch(activeCountry, (newValue, oldValue) => {\n if (!newValue && oldValue?.iso2) {\n activeCountryCode.value = oldValue.iso2;\n return;\n }\n if (newValue?.iso2) {\n emits('country-changed', newValue);\n resetPlaceholder();\n // Обновляем dialCodeInput при смене страны\n dialCodeInput.value = `+${newValue.dialCode}`;\n }\n });\n\n watch(() => phoneObject.value.countryCode, (newValue) => {\n activeCountryCode.value = newValue;\n });\n\n watch(() => phoneObject.value.valid, () => {\n emits('validate', phoneObject.value);\n });\n\n watch(() => phoneObject.value.formatted, (newValue) => {\n if (!props.autoFormat || props.customValidate) {\n return;\n }\n emitInput(newValue);\n\n nextTick(() => {\n if (newValue && !props.modelValue) {\n phone.value = newValue;\n }\n });\n });\n\n watch(() => props.inputOptions.placeholder, () => {\n resetPlaceholder();\n });\n\n watch(() => props.modelValue, (newValue, oldValue) => {\n if (!testCharacters()) {\n nextTick(() => {\n phone.value = oldValue;\n onInput();\n });\n } else {\n phone.value = newValue;\n }\n });\n\n watch(open, (isDropdownOpened) => {\n if (isDropdownOpened) {\n setDropdownPosition();\n emits('open');\n } else {\n emits('close');\n }\n });\n\n // Methods\n function onDialCodeInput() {\n // Убеждаемся, что символ + всегда есть в начале\n if (!dialCodeInput.value.startsWith('+')) {\n dialCodeInput.value = '+' + dialCodeInput.value.replace(/^\\+*/, '');\n }\n \n // Разрешаем только + и цифры\n dialCodeInput.value = dialCodeInput.value.replace(/[^\\+\\d]/g, '');\n \n // Убеждаемся что + только в начале\n const plusCount = (dialCodeInput.value.match(/\\+/g) || []).length;\n if (plusCount > 1) {\n dialCodeInput.value = '+' + dialCodeInput.value.replace(/\\+/g, '');\n }\n \n dialCodeFilter.value = dialCodeInput.value;\n open.value = true;\n \n // Автовыбор страны если код точно совпадает\n const exactMatch = filteredCountries.value.find(country => \n `+${country.dialCode}` === dialCodeInput.value\n );\n \n if (exactMatch && filteredAndSortedCountries.value.length === 1) {\n choose(exactMatch);\n }\n }\n\n function onDialCodeBlur() {\n setTimeout(() => {\n if (!dialCodeInput.value && activeCountry.value) {\n dialCodeInput.value = `+${activeCountry.value.dialCode}`;\n }\n }, 200);\n }\n\n function openDropdown() {\n if (!props.disabled) {\n open.value = true;\n }\n }\n\n function setCaretPosition(ctrl, pos) {\n if (ctrl.setSelectionRange) {\n ctrl.focus();\n ctrl.setSelectionRange(pos, pos);\n } else if (ctrl.createTextRange) {\n const range = ctrl.createTextRange();\n range.collapse(true);\n range.moveEnd('character', pos);\n range.moveStart('character', pos);\n range.select();\n }\n }\n\n function resetPlaceholder() {\n parsedPlaceholder.value = props.inputOptions.placeholder;\n }\n\n function initializeCountry() {\n return new Promise((resolve) => {\n if (phone.value?.[0] === '+') { \n resolve(); \n return; \n }\n \n if (props.defaultCountry) { \n choose(props.defaultCountry); \n resolve(); \n return; \n }\n \n const fallbackCountry = props.preferredCountries[0] || filteredCountries.value[0];\n \n if (props.autoDefaultCountry) {\n fetch('https://ip2c.org/s')\n .then((response) => response.text())\n .then((response) => {\n const result = (response || '').toString();\n if (!result || result[0] !== '1') {\n throw new Error('unable to fetch the country');\n }\n return result.substr(2, 2);\n })\n .then((res) => { \n choose(res || activeCountryCode.value); \n })\n .catch((error) => { \n console.warn(error); \n choose(fallbackCountry); \n })\n .finally(() => { \n resolve(); \n });\n } else {\n choose(fallbackCountry);\n resolve();\n }\n });\n }\n\n function getCountries(list = []) {\n return list.map((countryCode) => findCountry(countryCode)).filter(Boolean);\n }\n\n function findCountry(iso = '') {\n return filteredCountries.value.find((country) => country.iso2 === iso.toUpperCase());\n }\n\n function getItemClass(index, iso2) {\n const highlighted = selectedIndex.value === index;\n const lastPreferred = index === props.preferredCountries.length - 1;\n const preferred = props.preferredCountries.some((c) => c.toUpperCase() === iso2);\n return { highlighted, 'last-preferred': lastPreferred, preferred };\n }\n\n function choose(country) {\n let parsedCountry = typeof country === 'string' ? findCountry(country) : country;\n if (!parsedCountry) return;\n \n if (phone.value?.[0] === '+' && parsedCountry.iso2 && phoneObject.value.nationalNumber) {\n activeCountryCode.value = parsedCountry.iso2;\n phone.value = parsePhoneNumberFromString(\n phoneObject.value.nationalNumber, \n parsedCountry.iso2\n ).formatInternational();\n } else {\n activeCountryCode.value = parsedCountry.iso2;\n }\n\n dialCodeInput.value = `+${parsedCountry.dialCode}`;\n dialCodeFilter.value = '';\n \n // Закрываем дропдаун\n open.value = false;\n \n // Переводим фокус на основной инпут\n nextTick(() => {\n if (input.value) {\n input.value.focus();\n }\n });\n \n emitInput(phone.value);\n }\n\n function cleanInvalidCharacters() {\n const currentPhone = phone.value;\n\n if (props.validCharactersOnly) {\n const results = phone.value.match(/[()\\-+0-9\\s]*/g);\n phone.value = results.join('');\n }\n\n if (props.customValidate && props.customValidate instanceof RegExp) {\n const results = phone.value.match(props.customValidate);\n phone.value = results ? results.join('') : '';\n }\n\n if (currentPhone !== phone.value) {\n emitInput(phone.value);\n }\n }\n\n function testCharacters() {\n if (props.validCharactersOnly) {\n const result = /^[()\\-+0-9\\s]*$/.test(phone.value);\n if (!result) return false;\n }\n if (props.customValidate) {\n return testCustomValidate();\n }\n return true;\n }\n\n function testCustomValidate() {\n return props.customValidate instanceof RegExp ? props.customValidate.test(phone.value) : false;\n }\n\n function onInput() {\n input.value.setCustomValidity(phoneObject.valid ? '' : props.invalidMsg);\n emitInput(phone.value);\n }\n\n function emitInput(value) {\n emits('update:modelValue', value);\n\n if (phoneObject.value.valid) { \n emits('change', phoneObject.value.number);\n emits('country', phoneObject.value.number);\n } else {\n emits('country', null);\n }\n }\n\n function onBlur() {\n emits('blur');\n }\n\n function onFocus() {\n setCaretPosition(input.value, phone.value.length);\n emits('focus');\n }\n\n function onEnter() {\n emits('enter');\n }\n\n function onSpace() {\n emits('space');\n }\n\n function focus() {\n input.value.focus();\n }\n\n function toggleDropdown() {\n if (props.disabled) return;\n open.value = !open.value;\n }\n\n function clickedOutside() {\n open.value = false;\n dialCodeFilter.value = '';\n }\n\n function keyboardNav(e) {\n if (e.keyCode === 40) { // down arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? 0 : \n Math.min(filteredAndSortedCountries.value.length - 1, selectedIndex.value + 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight + selEle.clientHeight;\n }\n });\n } else if (e.keyCode === 38) { // up arrow\n e.preventDefault();\n open.value = true;\n selectedIndex.value = selectedIndex.value === null ? \n filteredAndSortedCountries.value.length - 1 : Math.max(0, selectedIndex.value - 1);\n nextTick(() => {\n const selEle = list.value.children[selectedIndex.value];\n if (selEle.offsetTop < list.value.scrollTop) {\n list.value.scrollTop = selEle.offsetTop;\n }\n });\n } else if (e.keyCode === 13) { // enter key\n e.preventDefault();\n if (selectedIndex.value !== null) {\n choose(filteredAndSortedCountries.value[selectedIndex.value]);\n }\n } else { \n // Поиск по названию страны\n if (e.target.classList.contains('vti__country-code-input')) return;\n \n typeToFindInput.value += e.key;\n clearTimeout(typeToFindTimer);\n typeToFindTimer = setTimeout(() => {\n typeToFindInput.value = '';\n }, 700);\n \n nextTick(() => {\n const typedCountryI = filteredAndSortedCountries.value\n .slice(props.preferredCountries.length)\n .findIndex((c) => c.name.toLowerCase().startsWith(typeToFindInput.value));\n if (typedCountryI >= 0) {\n selectedIndex.value = props.preferredCountries.length + typedCountryI;\n const selEle = list.value.children[selectedIndex.value];\n const needToScroll = selEle.offsetTop < list.value.scrollTop || \n selEle.offsetTop + selEle.clientHeight > list.value.scrollTop + list.value.clientHeight;\n if (needToScroll) {\n list.value.scrollTop = selEle.offsetTop - list.value.clientHeight / 2;\n }\n }\n });\n }\n }\n\n function reset() {\n selectedIndex.value = filteredAndSortedCountries.value\n .map(c => c.iso2).indexOf(activeCountryCode.value);\n open.value = false;\n }\n\n function setDropdownPosition() {\n const spaceBelow = window.innerHeight - rootElement.value.getBoundingClientRect().bottom;\n const hasEnoughSpaceBelow = spaceBelow > 200;\n dropdownOpenDirection.value = hasEnoughSpaceBelow ? 'below' : 'above';\n }\n</script>\n\n<style lang=\"scss\">\n.vue3-reactive-tel-input {\n display: flex;\n}\n\n.vue3-reactive-tel-input.disabled .dropdown,\n.vue3-reactive-tel-input.disabled .selection,\n.vue3-reactive-tel-input.disabled input {\n cursor: no-drop;\n}\n\n.vti__dropdown {\n display: flex;\n flex-direction: column;\n align-content: center;\n justify-content: center;\n position: relative;\n padding: 0.5rem;\n cursor: pointer;\n}\n\n.vti__dropdown.show {\n max-height: 300px;\n overflow: scroll;\n}\n\n.vti__dropdown-list {\n z-index: 1;\n padding: 0;\n margin: 0;\n text-align: left;\n list-style: none;\n max-height: 200px;\n overflow-y: scroll;\n position: absolute;\n left: -1px;\n background-color: #fff;\n width: fit-content;\n}\n\n.vti__dropdown-list.below {\n top: 33px;\n}\n\n.vti__dropdown-list.above {\n top: auto;\n bottom: 100%;\n}\n\n.vti__dropdown-item {\n cursor: pointer;\n padding: 4px 15px;\n}\n\n.vti__dropdown-item.highlighted {\n background-color: #f0f0f0;\n}\n\n.vti__dropdown-item.last-preferred {\n border-bottom: 1px solid #cacaca;\n}\n\n.vti__input {\n color: inherit;\n border: none;\n border-radius: 0 2px 2px 0;\n width: 100%;\n outline: 0;\n padding-left: 7px;\n}\n\n.vti__country-code-input {\n max-width: 70px;\n border: none;\n outline: none;\n background: transparent;\n font-size: inherit;\n color: inherit;\n text-align: center;\n}\n</style>"],"names":["parsePhoneNumberFromString","list"],"mappings":"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"}
@@ -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 _hoisted_1 = { class: "mobile-menu-section pd-r-zero pd-t-thin pd-b-thin pd-medium radius-medium" };
6
6
  const _sfc_main = {
7
7
  __name: "Menu",
@@ -14,4 +14,4 @@ const _sfc_main = {
14
14
  }
15
15
  };
16
16
  exports.default = _sfc_main;
17
- //# sourceMappingURL=Menu.vue.cjs.map
17
+ //# sourceMappingURL=Menu.vue2.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu.vue2.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
@@ -1,5 +1,5 @@
1
1
  import { createElementBlock, openBlock, renderSlot } from "vue";
2
- /* empty css */
2
+ /* empty css */
3
3
  const _hoisted_1 = { class: "mobile-menu-section pd-r-zero pd-t-thin pd-b-thin pd-medium radius-medium" };
4
4
  const _sfc_main = {
5
5
  __name: "Menu",
@@ -14,4 +14,4 @@ const _sfc_main = {
14
14
  export {
15
15
  _sfc_main as default
16
16
  };
17
- //# sourceMappingURL=Menu.vue.js.map
17
+ //# sourceMappingURL=Menu.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu.vue2.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}