@alfalab/core-components 48.34.0-beta.0 → 48.35.0

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 (513) hide show
  1. package/bottom-sheet/component.js +2 -2
  2. package/bottom-sheet/cssm/component.js +2 -2
  3. package/bottom-sheet/cssm/types.d.ts +6 -0
  4. package/bottom-sheet/esm/component.js +2 -2
  5. package/bottom-sheet/esm/types.d.ts +6 -0
  6. package/bottom-sheet/modern/component.js +2 -2
  7. package/bottom-sheet/modern/types.d.ts +6 -0
  8. package/bottom-sheet/moderncssm/component.js +2 -2
  9. package/bottom-sheet/moderncssm/types.d.ts +6 -0
  10. package/bottom-sheet/types.d.ts +6 -0
  11. package/calendar/components/calendar-mobile/Component.js +1 -1
  12. package/calendar/components/calendar-mobile/calendarMonthOnlyView.js +1 -1
  13. package/calendar/components/calendar-mobile/index.d.ts +1 -1
  14. package/calendar/components/calendar-mobile/index.js +1 -1
  15. package/calendar/esm/Component.responsive.js +1 -1
  16. package/calendar/esm/components/calendar-mobile/Component.js +1 -1
  17. package/calendar/esm/components/calendar-mobile/calendarMonthOnlyView.js +1 -1
  18. package/calendar/esm/components/calendar-mobile/index.d.ts +1 -1
  19. package/calendar/esm/components/calendar-mobile/index.js +1 -1
  20. package/calendar/esm/index.js +1 -1
  21. package/calendar/esm/mobile/index.js +1 -1
  22. package/calendar/mobile/index.js +1 -1
  23. package/calendar/modern/Component.responsive.js +1 -1
  24. package/calendar/modern/components/calendar-mobile/Component.js +1 -1
  25. package/calendar/modern/components/calendar-mobile/calendarMonthOnlyView.js +1 -1
  26. package/calendar/modern/components/calendar-mobile/index.d.ts +1 -1
  27. package/calendar/modern/components/calendar-mobile/index.js +1 -1
  28. package/calendar/modern/index.js +1 -1
  29. package/calendar/modern/mobile/index.js +1 -1
  30. package/confirmation/components/screens/initial/component.js +1 -1
  31. package/confirmation/components/screens/initial/countdown-section.js +1 -1
  32. package/confirmation/esm/component.responsive.js +1 -1
  33. package/confirmation/esm/components/base-confirmation/component.js +1 -1
  34. package/confirmation/esm/components/base-confirmation/index.js +1 -1
  35. package/confirmation/esm/components/index.js +1 -1
  36. package/confirmation/esm/components/screens/index.js +1 -1
  37. package/confirmation/esm/components/screens/initial/component.js +1 -1
  38. package/confirmation/esm/components/screens/initial/countdown-section.js +1 -1
  39. package/confirmation/esm/components/screens/initial/index.js +1 -1
  40. package/confirmation/esm/desktop/component.desktop.js +1 -1
  41. package/confirmation/esm/desktop/index.js +1 -1
  42. package/confirmation/esm/index.js +1 -1
  43. package/confirmation/esm/mobile/component.mobile.js +1 -1
  44. package/confirmation/esm/mobile/index.js +1 -1
  45. package/confirmation/esm/shared/index.js +1 -1
  46. package/confirmation/modern/component.responsive.js +1 -1
  47. package/confirmation/modern/components/base-confirmation/component.js +1 -1
  48. package/confirmation/modern/components/base-confirmation/index.js +1 -1
  49. package/confirmation/modern/components/index.js +1 -1
  50. package/confirmation/modern/components/screens/index.js +1 -1
  51. package/confirmation/modern/components/screens/initial/component.js +1 -1
  52. package/confirmation/modern/components/screens/initial/countdown-section.js +1 -1
  53. package/confirmation/modern/components/screens/initial/index.js +1 -1
  54. package/confirmation/modern/desktop/component.desktop.js +1 -1
  55. package/confirmation/modern/desktop/index.js +1 -1
  56. package/confirmation/modern/index.js +1 -1
  57. package/confirmation/modern/mobile/component.mobile.js +1 -1
  58. package/confirmation/modern/mobile/index.js +1 -1
  59. package/confirmation/modern/shared/index.js +1 -1
  60. package/file-upload-item/components/actions-control/actions.js +1 -1
  61. package/file-upload-item/components/actions-control/components/delete-button/delete-button.js +1 -1
  62. package/file-upload-item/components/actions-control/components/download-button/download-button.js +1 -1
  63. package/file-upload-item/components/actions-control/components/restore-button/restore-button.js +1 -1
  64. package/file-upload-item/esm/Component.js +1 -1
  65. package/file-upload-item/esm/components/actions-control/actions.js +1 -1
  66. package/file-upload-item/esm/components/actions-control/components/delete-button/delete-button.js +1 -1
  67. package/file-upload-item/esm/components/actions-control/components/delete-button/index.js +1 -1
  68. package/file-upload-item/esm/components/actions-control/components/download-button/download-button.js +1 -1
  69. package/file-upload-item/esm/components/actions-control/components/download-button/index.js +1 -1
  70. package/file-upload-item/esm/components/actions-control/components/restore-button/index.js +1 -1
  71. package/file-upload-item/esm/components/actions-control/components/restore-button/restore-button.js +1 -1
  72. package/file-upload-item/esm/components/actions-control/index.js +1 -1
  73. package/file-upload-item/esm/index.js +1 -1
  74. package/file-upload-item/modern/Component.js +1 -1
  75. package/file-upload-item/modern/components/actions-control/actions.js +1 -1
  76. package/file-upload-item/modern/components/actions-control/components/delete-button/delete-button.js +1 -1
  77. package/file-upload-item/modern/components/actions-control/components/delete-button/index.js +1 -1
  78. package/file-upload-item/modern/components/actions-control/components/download-button/download-button.js +1 -1
  79. package/file-upload-item/modern/components/actions-control/components/download-button/index.js +1 -1
  80. package/file-upload-item/modern/components/actions-control/components/restore-button/index.js +1 -1
  81. package/file-upload-item/modern/components/actions-control/components/restore-button/restore-button.js +1 -1
  82. package/file-upload-item/modern/components/actions-control/index.js +1 -1
  83. package/file-upload-item/modern/index.js +1 -1
  84. package/gallery/components/image-viewer/component.js +1 -1
  85. package/gallery/components/image-viewer/hooks.js +1 -1
  86. package/gallery/components/image-viewer/single.js +1 -1
  87. package/gallery/components/image-viewer/slide.js +1 -1
  88. package/gallery/esm/Component.js +1 -1
  89. package/gallery/esm/components/image-viewer/component.js +1 -1
  90. package/gallery/esm/components/image-viewer/hooks.js +1 -1
  91. package/gallery/esm/components/image-viewer/index.js +1 -1
  92. package/gallery/esm/components/image-viewer/single.js +1 -1
  93. package/gallery/esm/components/image-viewer/slide.js +1 -1
  94. package/gallery/esm/components/index.js +1 -1
  95. package/gallery/esm/index.js +1 -1
  96. package/gallery/modern/Component.js +1 -1
  97. package/gallery/modern/components/image-viewer/component.js +1 -1
  98. package/gallery/modern/components/image-viewer/hooks.js +1 -1
  99. package/gallery/modern/components/image-viewer/index.js +1 -1
  100. package/gallery/modern/components/image-viewer/single.js +1 -1
  101. package/gallery/modern/components/image-viewer/slide.js +1 -1
  102. package/gallery/modern/components/index.js +1 -1
  103. package/gallery/modern/index.js +1 -1
  104. package/international-phone-input/components/base-international-phone-input/Component.js +2 -9
  105. package/international-phone-input/cssm/components/base-international-phone-input/Component.js +2 -9
  106. package/international-phone-input/cssm/typings-30750b73.d.ts +6 -1
  107. package/international-phone-input/cssm/utils/index.d.ts +2 -2
  108. package/international-phone-input/cssm/utils/index.js +52 -17
  109. package/international-phone-input/esm/Component.responsive.js +1 -1
  110. package/international-phone-input/esm/components/base-international-phone-input/Component.js +4 -10
  111. package/international-phone-input/esm/components/base-international-phone-input/index.js +1 -1
  112. package/international-phone-input/esm/desktop/Component.desktop.js +1 -1
  113. package/international-phone-input/esm/desktop/index.js +1 -1
  114. package/international-phone-input/esm/index.js +1 -1
  115. package/international-phone-input/esm/mobile/Component.mobile.js +1 -1
  116. package/international-phone-input/esm/mobile/index.js +1 -1
  117. package/international-phone-input/esm/typings-30750b73.d.ts +6 -1
  118. package/international-phone-input/esm/utils/index.d.ts +2 -2
  119. package/international-phone-input/esm/utils/index.js +52 -17
  120. package/international-phone-input/modern/Component.responsive.js +1 -1
  121. package/international-phone-input/modern/components/base-international-phone-input/Component.js +4 -10
  122. package/international-phone-input/modern/components/base-international-phone-input/index.js +1 -1
  123. package/international-phone-input/modern/desktop/Component.desktop.js +1 -1
  124. package/international-phone-input/modern/desktop/index.js +1 -1
  125. package/international-phone-input/modern/index.js +1 -1
  126. package/international-phone-input/modern/mobile/Component.mobile.js +1 -1
  127. package/international-phone-input/modern/mobile/index.js +1 -1
  128. package/international-phone-input/modern/typings-30750b73.d.ts +6 -1
  129. package/international-phone-input/modern/utils/index.d.ts +2 -2
  130. package/international-phone-input/modern/utils/index.js +49 -12
  131. package/international-phone-input/moderncssm/Component.responsive.js +1 -1
  132. package/international-phone-input/moderncssm/components/base-international-phone-input/Component.js +4 -10
  133. package/international-phone-input/moderncssm/components/base-international-phone-input/index.js +1 -1
  134. package/international-phone-input/moderncssm/desktop/Component.desktop.js +1 -1
  135. package/international-phone-input/moderncssm/desktop/index.js +1 -1
  136. package/international-phone-input/moderncssm/index.js +1 -1
  137. package/international-phone-input/moderncssm/mobile/Component.mobile.js +1 -1
  138. package/international-phone-input/moderncssm/mobile/index.js +1 -1
  139. package/international-phone-input/moderncssm/typings-30750b73.d.ts +6 -1
  140. package/international-phone-input/moderncssm/utils/index.d.ts +2 -2
  141. package/international-phone-input/moderncssm/utils/index.js +49 -12
  142. package/international-phone-input/typings-30750b73.d.ts +6 -1
  143. package/international-phone-input/utils/index.d.ts +2 -2
  144. package/international-phone-input/utils/index.js +52 -17
  145. package/modal/components/controls/Component.js +1 -1
  146. package/modal/components/footer/Component.js +1 -1
  147. package/modal/esm/Component.responsive.js +1 -1
  148. package/modal/esm/components/controls/Component.js +1 -1
  149. package/modal/esm/components/controls/index.js +1 -1
  150. package/modal/esm/components/footer/Component.js +1 -1
  151. package/modal/esm/desktop/Component.desktop.js +1 -1
  152. package/modal/esm/desktop/index.js +1 -1
  153. package/modal/esm/index.js +1 -1
  154. package/modal/esm/mobile/Component.mobile.js +1 -1
  155. package/modal/esm/mobile/index.js +1 -1
  156. package/modal/modern/Component.responsive.js +1 -1
  157. package/modal/modern/components/controls/Component.js +1 -1
  158. package/modal/modern/components/controls/index.js +1 -1
  159. package/modal/modern/components/footer/Component.js +1 -1
  160. package/modal/modern/desktop/Component.desktop.js +1 -1
  161. package/modal/modern/desktop/index.js +1 -1
  162. package/modal/modern/index.js +1 -1
  163. package/modal/modern/mobile/Component.mobile.js +1 -1
  164. package/modal/modern/mobile/index.js +1 -1
  165. package/package.json +1 -1
  166. package/picker-button/Component-c44170fe.d.ts +2 -2
  167. package/picker-button/cssm/typings-30750b73.d.ts +6 -1
  168. package/picker-button/esm/typings-30750b73.d.ts +6 -1
  169. package/picker-button/modern/typings-30750b73.d.ts +6 -1
  170. package/picker-button/moderncssm/typings-30750b73.d.ts +6 -1
  171. package/picker-button/transformSize-ebda875c.d.ts +1 -1
  172. package/picker-button/typings-30750b73.d.ts +6 -1
  173. package/plate/components/base-plate/Component.js +1 -1
  174. package/plate/esm/Component.responsive.js +1 -1
  175. package/plate/esm/components/base-plate/Component.js +1 -1
  176. package/plate/esm/components/base-plate/index.js +1 -1
  177. package/plate/esm/desktop/Component.desktop.js +1 -1
  178. package/plate/esm/desktop/index.js +1 -1
  179. package/plate/esm/index-785a2fbf.d.ts +2 -2
  180. package/plate/esm/index.js +1 -1
  181. package/plate/esm/mobile/Component.mobile.js +1 -1
  182. package/plate/esm/mobile/index.js +1 -1
  183. package/plate/esm/shared/index.js +1 -1
  184. package/plate/esm/utils.js +1 -1
  185. package/plate/index-785a2fbf.d.ts +2 -2
  186. package/plate/modern/Component.responsive.js +1 -1
  187. package/plate/modern/components/base-plate/Component.js +1 -1
  188. package/plate/modern/components/base-plate/index.js +1 -1
  189. package/plate/modern/desktop/Component.desktop.js +1 -1
  190. package/plate/modern/desktop/index.js +1 -1
  191. package/plate/modern/index-785a2fbf.d.ts +2 -2
  192. package/plate/modern/index.js +1 -1
  193. package/plate/modern/mobile/Component.mobile.js +1 -1
  194. package/plate/modern/mobile/index.js +1 -1
  195. package/plate/modern/shared/index.js +1 -1
  196. package/plate/modern/utils.js +1 -1
  197. package/plate/utils.js +1 -1
  198. package/pure-cell/component.js +1 -1
  199. package/pure-cell/components/addon/component.js +1 -1
  200. package/pure-cell/components/addon/index.d.ts +1 -1
  201. package/pure-cell/components/addon/index.js +1 -1
  202. package/pure-cell/components/amount/component.js +1 -1
  203. package/pure-cell/components/amount/index.d.ts +1 -1
  204. package/pure-cell/components/amount/index.js +1 -1
  205. package/pure-cell/components/amount-title/component.js +1 -1
  206. package/pure-cell/components/amount-title/index.d.ts +1 -1
  207. package/pure-cell/components/amount-title/index.js +1 -1
  208. package/pure-cell/components/category/component.js +1 -1
  209. package/pure-cell/components/category/index.d.ts +1 -1
  210. package/pure-cell/components/category/index.js +1 -1
  211. package/pure-cell/components/content/component.js +1 -1
  212. package/pure-cell/components/content/index.d.ts +1 -1
  213. package/pure-cell/components/content/index.js +1 -1
  214. package/pure-cell/components/footer/component.js +1 -1
  215. package/pure-cell/components/footer/index.d.ts +1 -1
  216. package/pure-cell/components/footer/index.js +1 -1
  217. package/pure-cell/components/footer-button/component.js +1 -1
  218. package/pure-cell/components/footer-button/index.d.ts +1 -1
  219. package/pure-cell/components/footer-button/index.js +1 -1
  220. package/pure-cell/components/footer-text/component.js +1 -1
  221. package/pure-cell/components/footer-text/index.d.ts +1 -1
  222. package/pure-cell/components/footer-text/index.js +1 -1
  223. package/pure-cell/components/graphics/component.js +1 -1
  224. package/pure-cell/components/graphics/index.d.ts +1 -1
  225. package/pure-cell/components/graphics/index.js +1 -1
  226. package/pure-cell/components/main/component.js +1 -1
  227. package/pure-cell/components/main/index.d.ts +1 -1
  228. package/pure-cell/components/main/index.js +1 -1
  229. package/pure-cell/components/text/component.js +1 -1
  230. package/pure-cell/components/text/index.d.ts +1 -1
  231. package/pure-cell/components/text/index.js +1 -1
  232. package/pure-cell/esm/component.js +1 -1
  233. package/pure-cell/esm/components/addon/component.js +1 -1
  234. package/pure-cell/esm/components/addon/index.d.ts +1 -1
  235. package/pure-cell/esm/components/addon/index.js +1 -1
  236. package/pure-cell/esm/components/amount/component.js +1 -1
  237. package/pure-cell/esm/components/amount/index.d.ts +1 -1
  238. package/pure-cell/esm/components/amount/index.js +1 -1
  239. package/pure-cell/esm/components/amount-title/component.js +1 -1
  240. package/pure-cell/esm/components/amount-title/index.d.ts +1 -1
  241. package/pure-cell/esm/components/amount-title/index.js +1 -1
  242. package/pure-cell/esm/components/category/component.js +1 -1
  243. package/pure-cell/esm/components/category/index.d.ts +1 -1
  244. package/pure-cell/esm/components/category/index.js +1 -1
  245. package/pure-cell/esm/components/content/component.js +1 -1
  246. package/pure-cell/esm/components/content/index.d.ts +1 -1
  247. package/pure-cell/esm/components/content/index.js +1 -1
  248. package/pure-cell/esm/components/footer/component.js +1 -1
  249. package/pure-cell/esm/components/footer/index.d.ts +1 -1
  250. package/pure-cell/esm/components/footer/index.js +1 -1
  251. package/pure-cell/esm/components/footer-button/component.js +1 -1
  252. package/pure-cell/esm/components/footer-button/index.d.ts +1 -1
  253. package/pure-cell/esm/components/footer-button/index.js +1 -1
  254. package/pure-cell/esm/components/footer-text/component.js +1 -1
  255. package/pure-cell/esm/components/footer-text/index.d.ts +1 -1
  256. package/pure-cell/esm/components/footer-text/index.js +1 -1
  257. package/pure-cell/esm/components/graphics/component.js +1 -1
  258. package/pure-cell/esm/components/graphics/index.d.ts +1 -1
  259. package/pure-cell/esm/components/graphics/index.js +1 -1
  260. package/pure-cell/esm/components/main/component.js +1 -1
  261. package/pure-cell/esm/components/main/index.d.ts +1 -1
  262. package/pure-cell/esm/components/main/index.js +1 -1
  263. package/pure-cell/esm/components/text/component.js +1 -1
  264. package/pure-cell/esm/components/text/index.d.ts +1 -1
  265. package/pure-cell/esm/components/text/index.js +1 -1
  266. package/pure-cell/esm/index.js +1 -1
  267. package/pure-cell/index.js +1 -1
  268. package/pure-cell/modern/component.js +1 -1
  269. package/pure-cell/modern/components/addon/component.js +1 -1
  270. package/pure-cell/modern/components/addon/index.d.ts +1 -1
  271. package/pure-cell/modern/components/addon/index.js +1 -1
  272. package/pure-cell/modern/components/amount/component.js +1 -1
  273. package/pure-cell/modern/components/amount/index.d.ts +1 -1
  274. package/pure-cell/modern/components/amount/index.js +1 -1
  275. package/pure-cell/modern/components/amount-title/component.js +1 -1
  276. package/pure-cell/modern/components/amount-title/index.d.ts +1 -1
  277. package/pure-cell/modern/components/amount-title/index.js +1 -1
  278. package/pure-cell/modern/components/category/component.js +1 -1
  279. package/pure-cell/modern/components/category/index.d.ts +1 -1
  280. package/pure-cell/modern/components/category/index.js +1 -1
  281. package/pure-cell/modern/components/content/component.js +1 -1
  282. package/pure-cell/modern/components/content/index.d.ts +1 -1
  283. package/pure-cell/modern/components/content/index.js +1 -1
  284. package/pure-cell/modern/components/footer/component.js +1 -1
  285. package/pure-cell/modern/components/footer/index.d.ts +1 -1
  286. package/pure-cell/modern/components/footer/index.js +1 -1
  287. package/pure-cell/modern/components/footer-button/component.js +1 -1
  288. package/pure-cell/modern/components/footer-button/index.d.ts +1 -1
  289. package/pure-cell/modern/components/footer-button/index.js +1 -1
  290. package/pure-cell/modern/components/footer-text/component.js +1 -1
  291. package/pure-cell/modern/components/footer-text/index.d.ts +1 -1
  292. package/pure-cell/modern/components/footer-text/index.js +1 -1
  293. package/pure-cell/modern/components/graphics/component.js +1 -1
  294. package/pure-cell/modern/components/graphics/index.d.ts +1 -1
  295. package/pure-cell/modern/components/graphics/index.js +1 -1
  296. package/pure-cell/modern/components/main/component.js +1 -1
  297. package/pure-cell/modern/components/main/index.d.ts +1 -1
  298. package/pure-cell/modern/components/main/index.js +1 -1
  299. package/pure-cell/modern/components/text/component.js +1 -1
  300. package/pure-cell/modern/components/text/index.d.ts +1 -1
  301. package/pure-cell/modern/components/text/index.js +1 -1
  302. package/pure-cell/modern/index.js +1 -1
  303. package/select/esm/Component.responsive.js +1 -1
  304. package/select/esm/index.js +1 -1
  305. package/select/esm/mobile/Component.mobile.js +1 -1
  306. package/select/esm/mobile/Component.modal.mobile.js +1 -1
  307. package/select/esm/mobile/index.js +1 -1
  308. package/select/esm/presets/index.js +1 -1
  309. package/select/esm/presets/useSelectWithApply/hook.js +1 -1
  310. package/select/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  311. package/select/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  312. package/select/esm/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  313. package/select/esm/shared/index.js +1 -1
  314. package/select/mobile/Component.mobile.js +1 -1
  315. package/select/modern/Component.responsive.js +1 -1
  316. package/select/modern/index.js +1 -1
  317. package/select/modern/mobile/Component.mobile.js +1 -1
  318. package/select/modern/mobile/Component.modal.mobile.js +1 -1
  319. package/select/modern/mobile/index.js +1 -1
  320. package/select/modern/presets/index.js +1 -1
  321. package/select/modern/presets/useSelectWithApply/hook.js +1 -1
  322. package/select/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  323. package/select/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  324. package/select/modern/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  325. package/select/modern/shared/index.js +1 -1
  326. package/select/presets/index.js +1 -1
  327. package/select/presets/useSelectWithApply/hook.js +1 -1
  328. package/select/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  329. package/select/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  330. package/select/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  331. package/select/shared/index.js +1 -1
  332. package/side-panel/components/controls/Component.js +1 -1
  333. package/side-panel/components/footer/Component.js +1 -1
  334. package/side-panel/esm/Component.responsive.js +1 -1
  335. package/side-panel/esm/components/controls/Component.js +1 -1
  336. package/side-panel/esm/components/controls/index.js +1 -1
  337. package/side-panel/esm/components/footer/Component.desktop.js +1 -1
  338. package/side-panel/esm/components/footer/Component.js +1 -1
  339. package/side-panel/esm/components/footer/Component.mobile.js +1 -1
  340. package/side-panel/esm/desktop/Component.desktop.js +1 -1
  341. package/side-panel/esm/desktop/index.js +1 -1
  342. package/side-panel/esm/index.js +1 -1
  343. package/side-panel/esm/mobile/Component.mobile.js +1 -1
  344. package/side-panel/esm/mobile/index.js +1 -1
  345. package/side-panel/modern/Component.responsive.js +1 -1
  346. package/side-panel/modern/components/controls/Component.js +1 -1
  347. package/side-panel/modern/components/controls/index.js +1 -1
  348. package/side-panel/modern/components/footer/Component.desktop.js +1 -1
  349. package/side-panel/modern/components/footer/Component.js +1 -1
  350. package/side-panel/modern/components/footer/Component.mobile.js +1 -1
  351. package/side-panel/modern/desktop/Component.desktop.js +1 -1
  352. package/side-panel/modern/desktop/index.js +1 -1
  353. package/side-panel/modern/index.js +1 -1
  354. package/side-panel/modern/mobile/Component.mobile.js +1 -1
  355. package/side-panel/modern/mobile/index.js +1 -1
  356. package/tabs/components/primary-tablist/Component.collapsible.js +1 -1
  357. package/tabs/components/primary-tablist/Component.desktop.js +1 -1
  358. package/tabs/components/primary-tablist/Component.mobile.js +1 -1
  359. package/tabs/components/secondary-tablist/Component.desktop.js +1 -1
  360. package/tabs/components/secondary-tablist/Component.mobile.js +1 -1
  361. package/tabs/esm/collapsible/index.js +1 -1
  362. package/tabs/esm/components/primary-tablist/Component.collapsible.js +1 -1
  363. package/tabs/esm/components/primary-tablist/Component.desktop.js +1 -1
  364. package/tabs/esm/components/primary-tablist/Component.mobile.js +1 -1
  365. package/tabs/esm/components/primary-tablist/Component.responsive.js +1 -1
  366. package/tabs/esm/components/secondary-tablist/Component.desktop.js +1 -1
  367. package/tabs/esm/components/secondary-tablist/Component.mobile.js +1 -1
  368. package/tabs/esm/components/secondary-tablist/Component.responsive.js +1 -1
  369. package/tabs/esm/components/tabs/Component.collapsible.js +1 -1
  370. package/tabs/esm/components/tabs/Component.desktop.js +2 -2
  371. package/tabs/esm/components/tabs/Component.mobile.js +2 -2
  372. package/tabs/esm/components/tabs/Component.responsive.js +2 -2
  373. package/tabs/esm/desktop/index.js +2 -2
  374. package/tabs/esm/index.js +2 -2
  375. package/tabs/esm/mobile/index.js +2 -2
  376. package/tabs/modern/collapsible/index.js +1 -1
  377. package/tabs/modern/components/primary-tablist/Component.collapsible.js +1 -1
  378. package/tabs/modern/components/primary-tablist/Component.desktop.js +1 -1
  379. package/tabs/modern/components/primary-tablist/Component.mobile.js +1 -1
  380. package/tabs/modern/components/primary-tablist/Component.responsive.js +1 -1
  381. package/tabs/modern/components/secondary-tablist/Component.desktop.js +1 -1
  382. package/tabs/modern/components/secondary-tablist/Component.mobile.js +1 -1
  383. package/tabs/modern/components/secondary-tablist/Component.responsive.js +1 -1
  384. package/tabs/modern/components/tabs/Component.collapsible.js +1 -1
  385. package/tabs/modern/components/tabs/Component.desktop.js +2 -2
  386. package/tabs/modern/components/tabs/Component.mobile.js +2 -2
  387. package/tabs/modern/components/tabs/Component.responsive.js +2 -2
  388. package/tabs/modern/desktop/index.js +2 -2
  389. package/tabs/modern/index.js +2 -2
  390. package/tabs/modern/mobile/index.js +2 -2
  391. package/themes/compiled/mobile-dark-bluetint.css +181 -181
  392. package/themes/compiled/mobile-dark-bluetint.d.ts +1 -1
  393. package/themes/compiled/mobile-dark-bluetint.js +1 -1
  394. package/themes/esm/compiled/mobile-dark-bluetint.d.ts +1 -1
  395. package/themes/esm/compiled/mobile-dark-bluetint.js +1 -1
  396. package/themes/modern/compiled/mobile-dark-bluetint.d.ts +1 -1
  397. package/themes/modern/compiled/mobile-dark-bluetint.js +181 -181
  398. package/typography/cssm/title/alfasans-index.module.css +10 -0
  399. package/typography/esm/component.js +2 -2
  400. package/typography/esm/index.js +2 -2
  401. package/typography/esm/text/component.js +1 -1
  402. package/typography/esm/text/index.js +1 -1
  403. package/typography/esm/title/component.js +1 -1
  404. package/typography/esm/title/index.js +2 -2
  405. package/typography/esm/title-mobile/component.js +2 -2
  406. package/typography/esm/title-mobile/index.js +2 -2
  407. package/typography/esm/title-responsive/component.js +2 -2
  408. package/typography/esm/title-responsive/index.js +2 -2
  409. package/typography/modern/component.js +2 -2
  410. package/typography/modern/index.js +2 -2
  411. package/typography/modern/text/component.js +1 -1
  412. package/typography/modern/text/index.js +1 -1
  413. package/typography/modern/title/component.js +1 -1
  414. package/typography/modern/title/index.js +2 -2
  415. package/typography/modern/title-mobile/component.js +2 -2
  416. package/typography/modern/title-mobile/index.js +2 -2
  417. package/typography/modern/title-responsive/component.js +2 -2
  418. package/typography/modern/title-responsive/index.js +2 -2
  419. package/typography/moderncssm/text/alfasans-index.module.css +16 -0
  420. package/typography/moderncssm/title/component.d.ts +1 -1
  421. package/typography/moderncssm/title/index.d.ts +1 -1
  422. package/typography/moderncssm/title-mobile/component.d.ts +1 -1
  423. package/typography/moderncssm/title-responsive/component.d.ts +1 -1
  424. package/typography/text/component.js +1 -1
  425. package/typography/title/component.d.ts +1 -1
  426. package/typography/title/component.js +1 -1
  427. package/typography/title/index.d.ts +1 -1
  428. package/typography/title/index.js +1 -1
  429. package/typography/title-mobile/component.d.ts +1 -1
  430. package/typography/title-mobile/component.js +1 -1
  431. package/typography/title-responsive/component.d.ts +1 -1
  432. package/universal-modal/components/header/desktop/Component.desktop.js +1 -1
  433. package/universal-modal/components/header/mobile/Component.mobile.js +1 -1
  434. package/universal-modal/esm/Component.responsive.js +1 -1
  435. package/universal-modal/esm/components/header/desktop/Component.desktop.js +1 -1
  436. package/universal-modal/esm/components/header/index.js +1 -1
  437. package/universal-modal/esm/components/header/mobile/Component.mobile.js +1 -1
  438. package/universal-modal/esm/components/header/responsive/Component.responsive.js +1 -1
  439. package/universal-modal/esm/desktop/Component.desktop.js +1 -1
  440. package/universal-modal/esm/desktop/index.js +1 -1
  441. package/universal-modal/esm/index.js +1 -1
  442. package/universal-modal/esm/mobile/Component.mobile.js +1 -1
  443. package/universal-modal/esm/mobile/index.js +1 -1
  444. package/universal-modal/modern/Component.responsive.js +1 -1
  445. package/universal-modal/modern/components/header/desktop/Component.desktop.js +1 -1
  446. package/universal-modal/modern/components/header/index.js +1 -1
  447. package/universal-modal/modern/components/header/mobile/Component.mobile.js +1 -1
  448. package/universal-modal/modern/components/header/responsive/Component.responsive.js +1 -1
  449. package/universal-modal/modern/desktop/Component.desktop.js +1 -1
  450. package/universal-modal/modern/desktop/index.js +1 -1
  451. package/universal-modal/modern/index.js +1 -1
  452. package/universal-modal/modern/mobile/Component.mobile.js +1 -1
  453. package/universal-modal/modern/mobile/index.js +1 -1
  454. /package/calendar/{calendarMonthOnlyView-cd56f952.d.ts → calendarMonthOnlyView-04bc50c1.d.ts} +0 -0
  455. /package/calendar/{calendarMonthOnlyView-cd56f952.js → calendarMonthOnlyView-04bc50c1.js} +0 -0
  456. /package/calendar/esm/{calendarMonthOnlyView-51a0d781.d.ts → calendarMonthOnlyView-ee18385a.d.ts} +0 -0
  457. /package/calendar/esm/{calendarMonthOnlyView-51a0d781.js → calendarMonthOnlyView-ee18385a.js} +0 -0
  458. /package/calendar/modern/{calendarMonthOnlyView-c61ef0ce.d.ts → calendarMonthOnlyView-f0608db8.d.ts} +0 -0
  459. /package/calendar/modern/{calendarMonthOnlyView-c61ef0ce.js → calendarMonthOnlyView-f0608db8.js} +0 -0
  460. /package/confirmation/{countdown-section-c661b278.d.ts → countdown-section-8df158c4.d.ts} +0 -0
  461. /package/confirmation/{countdown-section-c661b278.js → countdown-section-8df158c4.js} +0 -0
  462. /package/confirmation/esm/{countdown-section-1097669b.d.ts → countdown-section-4e9dec97.d.ts} +0 -0
  463. /package/confirmation/esm/{countdown-section-1097669b.js → countdown-section-4e9dec97.js} +0 -0
  464. /package/confirmation/modern/{countdown-section-eb6c4c86.d.ts → countdown-section-f22f7279.d.ts} +0 -0
  465. /package/confirmation/modern/{countdown-section-eb6c4c86.js → countdown-section-f22f7279.js} +0 -0
  466. /package/file-upload-item/{actions-control.module-96604893.js → actions-control.module-f25cd906.js} +0 -0
  467. /package/file-upload-item/esm/{actions-control.module-9f0c5262.js → actions-control.module-6b9146c0.js} +0 -0
  468. /package/file-upload-item/modern/{actions-control.module-595b2049.js → actions-control.module-b987fbb6.js} +0 -0
  469. /package/gallery/esm/{hooks-998a20e9.d.ts → hooks-71fc413d.d.ts} +0 -0
  470. /package/gallery/esm/{hooks-998a20e9.js → hooks-71fc413d.js} +0 -0
  471. /package/gallery/{hooks-b5785b99.d.ts → hooks-26d7f57e.d.ts} +0 -0
  472. /package/gallery/{hooks-b5785b99.js → hooks-26d7f57e.js} +0 -0
  473. /package/gallery/modern/{hooks-a101e9dd.d.ts → hooks-99eebdfe.d.ts} +0 -0
  474. /package/gallery/modern/{hooks-a101e9dd.js → hooks-99eebdfe.js} +0 -0
  475. /package/modal/esm/{layout.module-c605216e.js → layout.module-c34847d0.js} +0 -0
  476. /package/modal/{layout.module-9297a288.js → layout.module-9eb8d9a0.js} +0 -0
  477. /package/modal/modern/{layout.module-eb64892c.js → layout.module-b3dff6a0.js} +0 -0
  478. /package/plate/esm/{warning-4af683c7.d.ts → warning-9d7646d7.d.ts} +0 -0
  479. /package/plate/esm/{warning-4af683c7.js → warning-9d7646d7.js} +0 -0
  480. /package/plate/modern/{warning-3dc954cb.d.ts → warning-15a6a467.d.ts} +0 -0
  481. /package/plate/modern/{warning-3dc954cb.js → warning-15a6a467.js} +0 -0
  482. /package/plate/{warning-e7cddaa7.d.ts → warning-c223c6c9.d.ts} +0 -0
  483. /package/plate/{warning-e7cddaa7.js → warning-c223c6c9.js} +0 -0
  484. /package/pure-cell/{component-cb6c8aeb.d.ts → component-efd908d6.d.ts} +0 -0
  485. /package/pure-cell/{component-cb6c8aeb.js → component-efd908d6.js} +0 -0
  486. /package/pure-cell/esm/{component-ca170a9d.d.ts → component-4d1310fe.d.ts} +0 -0
  487. /package/pure-cell/esm/{component-ca170a9d.js → component-4d1310fe.js} +0 -0
  488. /package/pure-cell/modern/{component-37f9da94.d.ts → component-3367a0a6.d.ts} +0 -0
  489. /package/pure-cell/modern/{component-37f9da94.js → component-3367a0a6.js} +0 -0
  490. /package/select/esm/{hook-611000da.d.ts → hook-60ce7a91.d.ts} +0 -0
  491. /package/select/esm/{hook-611000da.js → hook-60ce7a91.js} +0 -0
  492. /package/select/{hook-a727f1ab.d.ts → hook-21b5f365.d.ts} +0 -0
  493. /package/select/{hook-a727f1ab.js → hook-21b5f365.js} +0 -0
  494. /package/select/modern/{hook-3943da04.d.ts → hook-40ebd5f1.d.ts} +0 -0
  495. /package/select/modern/{hook-3943da04.js → hook-40ebd5f1.js} +0 -0
  496. /package/side-panel/esm/{layout.module-51148e1b.js → layout.module-66ac4286.js} +0 -0
  497. /package/side-panel/{layout.module-bda17d03.js → layout.module-eefe683f.js} +0 -0
  498. /package/side-panel/modern/{layout.module-1c011a71.js → layout.module-bec8fbd8.js} +0 -0
  499. /package/tabs/esm/{index.module-102dee3c.js → index.module-6a424781.js} +0 -0
  500. /package/tabs/esm/{index.module-0d13c10a.js → index.module-d77dfcf7.js} +0 -0
  501. /package/tabs/{index.module-6c6e1ab4.js → index.module-0d942677.js} +0 -0
  502. /package/tabs/{index.module-f8b0b623.js → index.module-159e2c8d.js} +0 -0
  503. /package/tabs/modern/{index.module-fc1273db.js → index.module-46cbed14.js} +0 -0
  504. /package/tabs/modern/{index.module-8f623d4a.js → index.module-b1dab8cd.js} +0 -0
  505. /package/typography/{colors.module-d933ac3d.js → colors.module-cea8b781.js} +0 -0
  506. /package/typography/{common.module-9ba2b5c4.js → common.module-dbe26d0a.js} +0 -0
  507. /package/typography/esm/{colors.module-630db946.js → colors.module-507f4a3f.js} +0 -0
  508. /package/typography/esm/{common.module-f3f87a99.js → common.module-cc744839.js} +0 -0
  509. /package/typography/modern/{colors.module-6ba66426.js → colors.module-615dfc36.js} +0 -0
  510. /package/typography/modern/{common.module-ac851a05.js → common.module-af43258d.js} +0 -0
  511. /package/universal-modal/esm/{index.module-a0154646.js → index.module-d52e68b4.js} +0 -0
  512. /package/universal-modal/{index.module-13c81aa4.js → index.module-6f28e3e2.js} +0 -0
  513. /package/universal-modal/modern/{index.module-4bce963e.js → index.module-6ffeac29.js} +0 -0
@@ -119,28 +119,54 @@ function createPhoneMaskExpression(country, clearableCountryCode) {
119
119
  ...format.split('').map(itemToMask),
120
120
  ];
121
121
  }
122
- function createMaskOptions(country, clearableCountryCode, preserveCountryCode, lastCountryRef) {
122
+ function createMaskOptions(country, clearableCountryCode, preserveCountryCode, beforeAutofillValueRef) {
123
123
  const countryCode = country?.countryCode;
124
124
  const prefix = countryCode ? getInitialValueFromCountry(countryCode) : '';
125
125
  const prefixLen = !clearableCountryCode && prefix ? prefix.length : 0;
126
126
  const mask = createPhoneMaskExpression(country, clearableCountryCode);
127
- const preprocessors = [
128
- maskUtils.insertionPhonePreprocessor(mask, countryCode, clearableCountryCode),
127
+ const plugins = [
128
+ maskUtils.caretGuard((value, [from, to]) => [from === to ? prefixLen : 0, value.length]),
129
129
  ];
130
130
  if (preserveCountryCode) {
131
- const createMask = (lastCountry) => createPhoneMaskExpression(lastCountry, clearableCountryCode);
132
- preprocessors.push(maskUtils.preserveCountryCodePreprocessor(lastCountryRef, createMask));
131
+ plugins.push(createMaskitoAutofillPlugin(beforeAutofillValueRef));
133
132
  }
134
133
  return {
135
134
  mask,
136
- preprocessors,
137
- postprocessors: [maskUtils.prefixPostprocessor(prefixLen > 0 ? prefix : '')],
138
- plugins: [
139
- maskUtils.caretGuard((value, [from, to]) => [
140
- from === to ? prefixLen : 0,
141
- value.length,
142
- ]),
135
+ preprocessors: [
136
+ maskUtils.insertionPhonePreprocessor(mask, countryCode, clearableCountryCode),
143
137
  ],
138
+ postprocessors: [maskUtils.prefixPostprocessor(prefixLen > 0 ? prefix : '')],
139
+ plugins,
140
+ };
141
+ }
142
+ function createMaskitoAutofillPlugin(beforeAutofillValueRef) {
143
+ return (element) => {
144
+ let { value } = element;
145
+ const handleInput = () => {
146
+ if (element.value.indexOf('+') === -1 && /^\+\d+/.test(value)) {
147
+ // eslint-disable-next-line no-param-reassign
148
+ beforeAutofillValueRef.current = value;
149
+ }
150
+ value = element.value;
151
+ };
152
+ const handleBlur = () => {
153
+ if (element.matches(':autofill') || element.matches(':-webkit-autofill')) {
154
+ // '+7 999 999 99 99' -> ['+7']
155
+ const match = beforeAutofillValueRef.current.match(/^\+\d+/);
156
+ if (match) {
157
+ const [p] = match;
158
+ if (!value.startsWith(p)) {
159
+ maskitoUpdateElement(element, p + value);
160
+ }
161
+ }
162
+ }
163
+ };
164
+ element.addEventListener('input', handleInput);
165
+ element.addEventListener('blur', handleBlur);
166
+ return () => {
167
+ element.removeEventListener('input', handleInput);
168
+ element.removeEventListener('blur', handleBlur);
169
+ };
144
170
  };
145
171
  }
146
172
  function defaultFilterFn(value = '', option) {
@@ -251,5 +277,16 @@ function getInternationalPhoneInputMobileTestIds(dataTestId) {
251
277
  function getInitialValueFromCountry(countryCode) {
252
278
  return `+${countryCode}`;
253
279
  }
280
+ /**
281
+ * @see https://github.com/taiga-family/maskito/issues/804#issuecomment-1862750990
282
+ */
283
+ function maskitoUpdateElement(element, value) {
284
+ const initialValue = element.value;
285
+ // eslint-disable-next-line no-param-reassign
286
+ element.value = value;
287
+ if (element.value !== initialValue) {
288
+ element.dispatchEvent(new Event('input', { bubbles: true }));
289
+ }
290
+ }
254
291
 
255
292
  export { clearMask, createMaskOptions, createPhoneMaskExpression, filterPhones, findCountry, getClear, getInitialValueFromCountry, getInternationalPhoneInputDesktopTestIds, getInternationalPhoneInputMobileTestIds, getPhoneData, guessCountry, initCountries };
@@ -10,8 +10,8 @@ import 'react-merge-refs';
10
10
  import '@maskito/core';
11
11
  import '@maskito/react';
12
12
  import '../../select/moderncssm/shared';
13
- import '../../shared/moderncssm';
14
13
  import './utils/index.js';
14
+ import '../../shared/moderncssm';
15
15
  import './consts.js';
16
16
  import './data/country-data.js';
17
17
  import './components/country-select/Component.js';
@@ -1,12 +1,12 @@
1
- import React, { forwardRef, useRef, useMemo, useState, useEffect } from 'react';
1
+ import React, { forwardRef, useMemo, useRef, useState, useEffect } from 'react';
2
2
  import mergeRefs from 'react-merge-refs';
3
3
  import { maskitoTransform } from '@maskito/core';
4
4
  import { useMaskito } from '@maskito/react';
5
5
  import { BaseOption } from '../../../../select/moderncssm/shared';
6
- import { isNullable } from '../../../../shared/moderncssm';
7
6
  import { initCountries, findCountry, filterPhones, createMaskOptions, getClear, getPhoneData, getInitialValueFromCountry } from '../../utils/index.js';
8
7
  import { CountrySelect } from '../country-select/Component.js';
9
8
  import styles from './index.module.css';
9
+ import '../../../../shared/moderncssm';
10
10
  import '../../consts.js';
11
11
  import '../../data/country-data.js';
12
12
  import 'classnames';
@@ -20,12 +20,12 @@ import '../select-field/index.module.css';
20
20
  import '../country-select/index.module.css';
21
21
 
22
22
  const BaseInternationalPhoneInput = forwardRef(({ clearableCountryCode: clearableCountryCodeFromProps = true, value, country: countryProp, filterFn, onChange, onCountryChange, countrySelectProps, countries, defaultIso2, disabled, options, size = 56, Input, InputAutocomplete, SelectComponent, view, clear: clearProp, open: openProps, defaultOpen, customCountriesList, ...restProps }, ref) => {
23
- const lastCountryRef = useRef(null);
24
23
  const countriesData = useMemo(() => initCountries(countries, customCountriesList), [countries, customCountriesList]);
25
24
  const inputRef = useRef(null);
26
25
  const inputWrapperRef = useRef(null);
27
26
  const [open, setOpen] = useState(defaultOpen);
28
27
  const [openCountry, setOpenCountry] = useState(countrySelectProps?.defaultOpen);
28
+ const beforeAutofillValueRef = useRef('');
29
29
  const [selectedCountry, setSelectedCountry] = useState(() => findCountry(countriesData, value, defaultIso2, countryProp));
30
30
  const filteredOptions = filterPhones(value, options, filterFn);
31
31
  const country = countryProp ?? selectedCountry;
@@ -36,7 +36,7 @@ const BaseInternationalPhoneInput = forwardRef(({ clearableCountryCode: clearabl
36
36
  };
37
37
  const preserveCountryCode = clearableCountryCodeFromProps === 'preserve';
38
38
  const clearableCountryCode = preserveCountryCode || clearableCountryCodeFromProps;
39
- const maskOptions = useMemo(() => createMaskOptions(country, clearableCountryCode, preserveCountryCode, lastCountryRef), [country, clearableCountryCode, preserveCountryCode]);
39
+ const maskOptions = useMemo(() => createMaskOptions(country, clearableCountryCode, preserveCountryCode, beforeAutofillValueRef), [country, clearableCountryCode, preserveCountryCode]);
40
40
  const maskRef = useMaskito({ options: maskOptions });
41
41
  const changeNumber = (phone) => {
42
42
  onChange?.(phone);
@@ -116,12 +116,6 @@ const BaseInternationalPhoneInput = forwardRef(({ clearableCountryCode: clearabl
116
116
  clear: getClear(clearProp, clearableCountryCode, value, country?.countryCode),
117
117
  ...restProps.inputProps,
118
118
  };
119
- useEffect(() => {
120
- if (!preserveCountryCode || isNullable(country)) {
121
- return;
122
- }
123
- lastCountryRef.current = country;
124
- }, [country, preserveCountryCode]);
125
119
  return Array.isArray(options) ? (React.createElement(InputAutocomplete, { closeOnSelect: true, Option: BaseOption, size: size, ...restProps, disabled: disabled, options: filteredOptions, value: value, open: showPhoneSelect, onOpen: handlePhoneSelectOpen, onChange: handleOptionSelect, onInput: (phone) => updatePhoneData(phone), inputProps: {
126
120
  ...inputProps,
127
121
  onClear: handleClear,
@@ -4,8 +4,8 @@ import 'react-merge-refs';
4
4
  import '@maskito/core';
5
5
  import '@maskito/react';
6
6
  import '../../../../select/moderncssm/shared';
7
- import '../../../../shared/moderncssm';
8
7
  import '../../utils/index.js';
8
+ import '../../../../shared/moderncssm';
9
9
  import '../../consts.js';
10
10
  import '../../data/country-data.js';
11
11
  import '../country-select/Component.js';
@@ -7,8 +7,8 @@ import 'react-merge-refs';
7
7
  import '@maskito/core';
8
8
  import '@maskito/react';
9
9
  import '../../../select/moderncssm/shared';
10
- import '../../../shared/moderncssm';
11
10
  import '../utils/index.js';
11
+ import '../../../shared/moderncssm';
12
12
  import '../consts.js';
13
13
  import '../data/country-data.js';
14
14
  import '../components/country-select/Component.js';
@@ -8,8 +8,8 @@ import 'react-merge-refs';
8
8
  import '@maskito/core';
9
9
  import '@maskito/react';
10
10
  import '../../../select/moderncssm/shared';
11
- import '../../../shared/moderncssm';
12
11
  import '../utils/index.js';
12
+ import '../../../shared/moderncssm';
13
13
  import '../consts.js';
14
14
  import '../data/country-data.js';
15
15
  import '../components/country-select/Component.js';
@@ -11,8 +11,8 @@ import 'react-merge-refs';
11
11
  import '@maskito/core';
12
12
  import '@maskito/react';
13
13
  import '../../select/moderncssm/shared';
14
- import '../../shared/moderncssm';
15
14
  import './utils/index.js';
15
+ import '../../shared/moderncssm';
16
16
  import './consts.js';
17
17
  import './components/country-select/Component.js';
18
18
  import 'classnames';
@@ -7,8 +7,8 @@ import 'react-merge-refs';
7
7
  import '@maskito/core';
8
8
  import '@maskito/react';
9
9
  import '../../../select/moderncssm/shared';
10
- import '../../../shared/moderncssm';
11
10
  import '../utils/index.js';
11
+ import '../../../shared/moderncssm';
12
12
  import '../consts.js';
13
13
  import '../data/country-data.js';
14
14
  import '../components/country-select/Component.js';
@@ -8,8 +8,8 @@ import 'react-merge-refs';
8
8
  import '@maskito/core';
9
9
  import '@maskito/react';
10
10
  import '../../../select/moderncssm/shared';
11
- import '../../../shared/moderncssm';
12
11
  import '../utils/index.js';
12
+ import '../../../shared/moderncssm';
13
13
  import '../consts.js';
14
14
  import '../data/country-data.js';
15
15
  import '../components/country-select/Component.js';
@@ -2,6 +2,7 @@
2
2
  /// <reference types="react-transition-group" />
3
3
  import React from "react";
4
4
  import { HTMLAttributes, ReactElement, ReactNode, RefObject, ButtonHTMLAttributes, ElementType, FC, CSSProperties, MutableRefObject, ForwardRefExoticComponent, RefAttributes, AriaAttributes, ComponentType, FocusEvent, MouseEvent, SVGProps } from "react";
5
+ import { SwipeableProps, SwipeableHandlers, SwipeDirections } from "react-swipeable";
5
6
  import { HandledEvents } from "react-swipeable/es/types";
6
7
  import { TransitionProps } from "react-transition-group/Transition";
7
8
  import { BaseModalProps, BaseModalContext } from "./index-11f20b2e";
@@ -11,7 +12,6 @@ import { ContentProps } from "./typings-4b7234ef";
11
12
  import { ModalResponsiveProps as ModalProps } from "./typings-4b7234ef";
12
13
  import { CSSTransitionProps } from "react-transition-group/CSSTransition";
13
14
  import { BasePlacement, VariationPlacement } from "@popperjs/core";
14
- import { SwipeableHandlers, SwipeDirections } from "react-swipeable";
15
15
  import { TextSkeletonProps } from "./index-f48ccc7b";
16
16
  import { Color } from "./colors-2c123cbc";
17
17
  import { Title, TitleProps } from "./index-86dd1e48";
@@ -485,6 +485,11 @@ type BottomSheetProps = {
485
485
  * Учитывать высоту виртуальной клавиатуры
486
486
  */
487
487
  virtualKeyboard?: boolean;
488
+ /**
489
+ * Предотвращать скролл во время свайпа
490
+ * @default false
491
+ */
492
+ preventScrollOnSwipe?: SwipeableProps["preventScrollOnSwipe"];
488
493
  };
489
494
  declare const BottomSheet: React.ForwardRefExoticComponent<BottomSheetProps & React.RefAttributes<HTMLDivElement>>;
490
495
  declare const CLOSE_OFFSET = 0.2;
@@ -1,4 +1,4 @@
1
- import { RefObject } from 'react';
1
+ import { MutableRefObject } from 'react';
2
2
  import { MaskitoOptions } from '@maskito/core';
3
3
  import { InputAutocompleteDesktopProps } from "../../../input-autocomplete/desktop";
4
4
  import { GroupShape, OptionShape } from "../../../select/shared";
@@ -9,7 +9,7 @@ declare function findCountry(countries: Country[][], value: string | undefined,
9
9
  declare function guessCountry(inputNumber: string, data: Country[][]): Country | undefined;
10
10
  declare function clearMask(value: string): string;
11
11
  declare function createPhoneMaskExpression(country: Country | undefined, clearableCountryCode: boolean): Array<RegExp | string>;
12
- declare function createMaskOptions(country: Country | undefined, clearableCountryCode: boolean, preserveCountryCode: boolean, lastCountryRef: RefObject<Country | null>): MaskitoOptions;
12
+ declare function createMaskOptions(country: Country | undefined, clearableCountryCode: boolean, preserveCountryCode: boolean, beforeAutofillValueRef: MutableRefObject<string>): MaskitoOptions;
13
13
  declare function defaultFilterFn(value: string | undefined, option: OptionShape): boolean;
14
14
  declare const filterPhones: (value?: string, options?: InputAutocompleteDesktopProps['options'], filterFn?: typeof defaultFilterFn) => (OptionShape | GroupShape)[];
15
15
  declare function getPhoneData(phone: string, countries: Country[][], defaultIso2?: string): {
@@ -119,28 +119,54 @@ function createPhoneMaskExpression(country, clearableCountryCode) {
119
119
  ...format.split('').map(itemToMask),
120
120
  ];
121
121
  }
122
- function createMaskOptions(country, clearableCountryCode, preserveCountryCode, lastCountryRef) {
122
+ function createMaskOptions(country, clearableCountryCode, preserveCountryCode, beforeAutofillValueRef) {
123
123
  const countryCode = country?.countryCode;
124
124
  const prefix = countryCode ? getInitialValueFromCountry(countryCode) : '';
125
125
  const prefixLen = !clearableCountryCode && prefix ? prefix.length : 0;
126
126
  const mask = createPhoneMaskExpression(country, clearableCountryCode);
127
- const preprocessors = [
128
- maskUtils.insertionPhonePreprocessor(mask, countryCode, clearableCountryCode),
127
+ const plugins = [
128
+ maskUtils.caretGuard((value, [from, to]) => [from === to ? prefixLen : 0, value.length]),
129
129
  ];
130
130
  if (preserveCountryCode) {
131
- const createMask = (lastCountry) => createPhoneMaskExpression(lastCountry, clearableCountryCode);
132
- preprocessors.push(maskUtils.preserveCountryCodePreprocessor(lastCountryRef, createMask));
131
+ plugins.push(createMaskitoAutofillPlugin(beforeAutofillValueRef));
133
132
  }
134
133
  return {
135
134
  mask,
136
- preprocessors,
137
- postprocessors: [maskUtils.prefixPostprocessor(prefixLen > 0 ? prefix : '')],
138
- plugins: [
139
- maskUtils.caretGuard((value, [from, to]) => [
140
- from === to ? prefixLen : 0,
141
- value.length,
142
- ]),
135
+ preprocessors: [
136
+ maskUtils.insertionPhonePreprocessor(mask, countryCode, clearableCountryCode),
143
137
  ],
138
+ postprocessors: [maskUtils.prefixPostprocessor(prefixLen > 0 ? prefix : '')],
139
+ plugins,
140
+ };
141
+ }
142
+ function createMaskitoAutofillPlugin(beforeAutofillValueRef) {
143
+ return (element) => {
144
+ let { value } = element;
145
+ const handleInput = () => {
146
+ if (element.value.indexOf('+') === -1 && /^\+\d+/.test(value)) {
147
+ // eslint-disable-next-line no-param-reassign
148
+ beforeAutofillValueRef.current = value;
149
+ }
150
+ value = element.value;
151
+ };
152
+ const handleBlur = () => {
153
+ if (element.matches(':autofill') || element.matches(':-webkit-autofill')) {
154
+ // '+7 999 999 99 99' -> ['+7']
155
+ const match = beforeAutofillValueRef.current.match(/^\+\d+/);
156
+ if (match) {
157
+ const [p] = match;
158
+ if (!value.startsWith(p)) {
159
+ maskitoUpdateElement(element, p + value);
160
+ }
161
+ }
162
+ }
163
+ };
164
+ element.addEventListener('input', handleInput);
165
+ element.addEventListener('blur', handleBlur);
166
+ return () => {
167
+ element.removeEventListener('input', handleInput);
168
+ element.removeEventListener('blur', handleBlur);
169
+ };
144
170
  };
145
171
  }
146
172
  function defaultFilterFn(value = '', option) {
@@ -251,5 +277,16 @@ function getInternationalPhoneInputMobileTestIds(dataTestId) {
251
277
  function getInitialValueFromCountry(countryCode) {
252
278
  return `+${countryCode}`;
253
279
  }
280
+ /**
281
+ * @see https://github.com/taiga-family/maskito/issues/804#issuecomment-1862750990
282
+ */
283
+ function maskitoUpdateElement(element, value) {
284
+ const initialValue = element.value;
285
+ // eslint-disable-next-line no-param-reassign
286
+ element.value = value;
287
+ if (element.value !== initialValue) {
288
+ element.dispatchEvent(new Event('input', { bubbles: true }));
289
+ }
290
+ }
254
291
 
255
292
  export { clearMask, createMaskOptions, createPhoneMaskExpression, filterPhones, findCountry, getClear, getInitialValueFromCountry, getInternationalPhoneInputDesktopTestIds, getInternationalPhoneInputMobileTestIds, getPhoneData, guessCountry, initCountries };
@@ -2,6 +2,7 @@
2
2
  /// <reference types="react-transition-group" />
3
3
  import React from "react";
4
4
  import { HTMLAttributes, ReactElement, ReactNode, RefObject, ButtonHTMLAttributes, ElementType, FC, CSSProperties, MutableRefObject, ForwardRefExoticComponent, RefAttributes, AriaAttributes, ComponentType, FocusEvent, MouseEvent, SVGProps } from "react";
5
+ import { SwipeableProps, SwipeableHandlers, SwipeDirections } from "react-swipeable";
5
6
  import { HandledEvents } from "react-swipeable/es/types";
6
7
  import { TransitionProps } from "react-transition-group/Transition";
7
8
  import { BaseModalProps, BaseModalContext } from "./index-11f20b2e";
@@ -11,7 +12,6 @@ import { ContentProps } from "./typings-4b7234ef";
11
12
  import { ModalResponsiveProps as ModalProps } from "./typings-4b7234ef";
12
13
  import { CSSTransitionProps } from "react-transition-group/CSSTransition";
13
14
  import { BasePlacement, VariationPlacement } from "@popperjs/core";
14
- import { SwipeableHandlers, SwipeDirections } from "react-swipeable";
15
15
  import { TextSkeletonProps } from "./index-f48ccc7b";
16
16
  import { Color } from "./colors-2c123cbc";
17
17
  import { Title, TitleProps } from "./index-86dd1e48";
@@ -485,6 +485,11 @@ type BottomSheetProps = {
485
485
  * Учитывать высоту виртуальной клавиатуры
486
486
  */
487
487
  virtualKeyboard?: boolean;
488
+ /**
489
+ * Предотвращать скролл во время свайпа
490
+ * @default false
491
+ */
492
+ preventScrollOnSwipe?: SwipeableProps["preventScrollOnSwipe"];
488
493
  };
489
494
  declare const BottomSheet: React.ForwardRefExoticComponent<BottomSheetProps & React.RefAttributes<HTMLDivElement>>;
490
495
  declare const CLOSE_OFFSET = 0.2;
@@ -1,4 +1,4 @@
1
- import { RefObject } from 'react';
1
+ import { MutableRefObject } from 'react';
2
2
  import { MaskitoOptions } from '@maskito/core';
3
3
  import { InputAutocompleteDesktopProps } from "../../input-autocomplete/desktop";
4
4
  import { GroupShape, OptionShape } from "../../select/shared";
@@ -9,7 +9,7 @@ declare function findCountry(countries: Country[][], value: string | undefined,
9
9
  declare function guessCountry(inputNumber: string, data: Country[][]): Country | undefined;
10
10
  declare function clearMask(value: string): string;
11
11
  declare function createPhoneMaskExpression(country: Country | undefined, clearableCountryCode: boolean): Array<RegExp | string>;
12
- declare function createMaskOptions(country: Country | undefined, clearableCountryCode: boolean, preserveCountryCode: boolean, lastCountryRef: RefObject<Country | null>): MaskitoOptions;
12
+ declare function createMaskOptions(country: Country | undefined, clearableCountryCode: boolean, preserveCountryCode: boolean, beforeAutofillValueRef: MutableRefObject<string>): MaskitoOptions;
13
13
  declare function defaultFilterFn(value: string | undefined, option: OptionShape): boolean;
14
14
  declare const filterPhones: (value?: string, options?: InputAutocompleteDesktopProps['options'], filterFn?: typeof defaultFilterFn) => (OptionShape | GroupShape)[];
15
15
  declare function getPhoneData(phone: string, countries: Country[][], defaultIso2?: string): {
@@ -128,33 +128,57 @@ function createPhoneMaskExpression(country, clearableCountryCode) {
128
128
  ' '
129
129
  ], false), format.split('').map(itemToMask), true);
130
130
  }
131
- function createMaskOptions(country, clearableCountryCode, preserveCountryCode, lastCountryRef) {
131
+ function createMaskOptions(country, clearableCountryCode, preserveCountryCode, beforeAutofillValueRef) {
132
132
  var countryCode = country === null || country === void 0 ? void 0 : country.countryCode;
133
133
  var prefix = countryCode ? getInitialValueFromCountry(countryCode) : '';
134
134
  var prefixLen = !clearableCountryCode && prefix ? prefix.length : 0;
135
135
  var mask = createPhoneMaskExpression(country, clearableCountryCode);
136
- var preprocessors = [
137
- coreComponentsShared.maskUtils.insertionPhonePreprocessor(mask, countryCode, clearableCountryCode),
136
+ var plugins = [
137
+ coreComponentsShared.maskUtils.caretGuard(function (value, _a) {
138
+ var from = _a[0], to = _a[1];
139
+ return [from === to ? prefixLen : 0, value.length];
140
+ }),
138
141
  ];
139
142
  if (preserveCountryCode) {
140
- var createMask = function (lastCountry) {
141
- return createPhoneMaskExpression(lastCountry, clearableCountryCode);
142
- };
143
- preprocessors.push(coreComponentsShared.maskUtils.preserveCountryCodePreprocessor(lastCountryRef, createMask));
143
+ plugins.push(createMaskitoAutofillPlugin(beforeAutofillValueRef));
144
144
  }
145
145
  return {
146
146
  mask: mask,
147
- preprocessors: preprocessors,
148
- postprocessors: [coreComponentsShared.maskUtils.prefixPostprocessor(prefixLen > 0 ? prefix : '')],
149
- plugins: [
150
- coreComponentsShared.maskUtils.caretGuard(function (value, _a) {
151
- var from = _a[0], to = _a[1];
152
- return [
153
- from === to ? prefixLen : 0,
154
- value.length,
155
- ];
156
- }),
147
+ preprocessors: [
148
+ coreComponentsShared.maskUtils.insertionPhonePreprocessor(mask, countryCode, clearableCountryCode),
157
149
  ],
150
+ postprocessors: [coreComponentsShared.maskUtils.prefixPostprocessor(prefixLen > 0 ? prefix : '')],
151
+ plugins: plugins,
152
+ };
153
+ }
154
+ function createMaskitoAutofillPlugin(beforeAutofillValueRef) {
155
+ return function (element) {
156
+ var value = element.value;
157
+ var handleInput = function () {
158
+ if (element.value.indexOf('+') === -1 && /^\+\d+/.test(value)) {
159
+ // eslint-disable-next-line no-param-reassign
160
+ beforeAutofillValueRef.current = value;
161
+ }
162
+ value = element.value;
163
+ };
164
+ var handleBlur = function () {
165
+ if (element.matches(':autofill') || element.matches(':-webkit-autofill')) {
166
+ // '+7 999 999 99 99' -> ['+7']
167
+ var match = beforeAutofillValueRef.current.match(/^\+\d+/);
168
+ if (match) {
169
+ var p = match[0];
170
+ if (!value.startsWith(p)) {
171
+ maskitoUpdateElement(element, p + value);
172
+ }
173
+ }
174
+ }
175
+ };
176
+ element.addEventListener('input', handleInput);
177
+ element.addEventListener('blur', handleBlur);
178
+ return function () {
179
+ element.removeEventListener('input', handleInput);
180
+ element.removeEventListener('blur', handleBlur);
181
+ };
158
182
  };
159
183
  }
160
184
  function defaultFilterFn(value, option) {
@@ -267,6 +291,17 @@ function getInternationalPhoneInputMobileTestIds(dataTestId) {
267
291
  function getInitialValueFromCountry(countryCode) {
268
292
  return "+".concat(countryCode);
269
293
  }
294
+ /**
295
+ * @see https://github.com/taiga-family/maskito/issues/804#issuecomment-1862750990
296
+ */
297
+ function maskitoUpdateElement(element, value) {
298
+ var initialValue = element.value;
299
+ // eslint-disable-next-line no-param-reassign
300
+ element.value = value;
301
+ if (element.value !== initialValue) {
302
+ element.dispatchEvent(new Event('input', { bubbles: true }));
303
+ }
304
+ }
270
305
 
271
306
  exports.clearMask = clearMask;
272
307
  exports.createMaskOptions = createMaskOptions;
@@ -4,7 +4,7 @@ var React = require('react');
4
4
  var cn = require('classnames');
5
5
  var coreComponentsShared = require('../../../shared');
6
6
  var ResponsiveContext = require('../../ResponsiveContext.js');
7
- var layout_module = require('../../layout.module-9297a288.js');
7
+ var layout_module = require('../../layout.module-9eb8d9a0.js');
8
8
 
9
9
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
10
10
 
@@ -6,7 +6,7 @@ var coreComponentsShared = require('../../../shared');
6
6
  var consts = require('../../consts.js');
7
7
  var Context = require('../../Context.js');
8
8
  var ResponsiveContext = require('../../ResponsiveContext.js');
9
- var layout_module = require('../../layout.module-9297a288.js');
9
+ var layout_module = require('../../layout.module-9eb8d9a0.js');
10
10
 
11
11
  function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
12
12
 
@@ -12,7 +12,7 @@ import './consts.js';
12
12
  import './Context.js';
13
13
  import '../../base-modal/esm';
14
14
  import './ResponsiveContext.js';
15
- import './layout.module-c605216e.js';
15
+ import './layout.module-c34847d0.js';
16
16
  import '../../navigation-bar-private/esm';
17
17
  import 'react-merge-refs';
18
18
 
@@ -2,7 +2,7 @@ import React, { useContext } from 'react';
2
2
  import cn from 'classnames';
3
3
  import { getDataTestId } from '../../../../shared/esm';
4
4
  import { ResponsiveContext } from '../../ResponsiveContext.js';
5
- import { l as layoutStyles } from '../../layout.module-c605216e.js';
5
+ import { l as layoutStyles } from '../../layout.module-c34847d0.js';
6
6
 
7
7
  var styles = {"component":"modal__component_15slf"};
8
8
  require('./index.css');
@@ -3,4 +3,4 @@ import 'react';
3
3
  import 'classnames';
4
4
  import '../../../../shared/esm';
5
5
  import '../../ResponsiveContext.js';
6
- import '../../layout.module-c605216e.js';
6
+ import '../../layout.module-c34847d0.js';
@@ -4,7 +4,7 @@ import { getDataTestId } from '../../../../shared/esm';
4
4
  import { SIZE_TO_CLASSNAME_MAP } from '../../consts.js';
5
5
  import { ModalContext } from '../../Context.js';
6
6
  import { ResponsiveContext } from '../../ResponsiveContext.js';
7
- import { l as layoutStyles } from '../../layout.module-c605216e.js';
7
+ import { l as layoutStyles } from '../../layout.module-c34847d0.js';
8
8
  import '../../../../base-modal/esm';
9
9
 
10
10
  var desktopStyles = {"footer":"modal__footer_z1cef","sticky":"modal__sticky_z1cef","fullscreen":"modal__fullscreen_z1cef","size-500":"modal__size-500_z1cef","size-600":"modal__size-600_z1cef","size-800":"modal__size-800_z1cef","size-1140":"modal__size-1140_z1cef"};
@@ -12,7 +12,7 @@ import '../consts.js';
12
12
  import '../ResponsiveContext.js';
13
13
  import '../../../shared/esm';
14
14
  import '../Context.js';
15
- import '../layout.module-c605216e.js';
15
+ import '../layout.module-c34847d0.js';
16
16
  import '../../../navigation-bar-private/esm';
17
17
 
18
18
  var ModalDesktopComponent = forwardRef(function (props, ref) { return (React.createElement(Modal, __assign({}, props, { ref: ref, view: 'desktop' }))); });
@@ -11,7 +11,7 @@ import '../consts.js';
11
11
  import '../ResponsiveContext.js';
12
12
  import '../components/controls/Component.js';
13
13
  import '../../../shared/esm';
14
- import '../layout.module-c605216e.js';
14
+ import '../layout.module-c34847d0.js';
15
15
  import '../components/header/Component.js';
16
16
  import '../../../navigation-bar-private/esm';
17
17
  import '../Context.js';
@@ -15,4 +15,4 @@ import './ResponsiveContext.js';
15
15
  import '../../navigation-bar-private/esm';
16
16
  import '../../shared/esm';
17
17
  import './Context.js';
18
- import './layout.module-c605216e.js';
18
+ import './layout.module-c34847d0.js';
@@ -12,7 +12,7 @@ import '../consts.js';
12
12
  import '../ResponsiveContext.js';
13
13
  import '../../../shared/esm';
14
14
  import '../Context.js';
15
- import '../layout.module-c605216e.js';
15
+ import '../layout.module-c34847d0.js';
16
16
  import '../../../navigation-bar-private/esm';
17
17
 
18
18
  var ModalMobileComponent = forwardRef(function (props, ref) { return (React.createElement(Modal, __assign({}, props, { ref: ref, view: 'mobile' }))); });
@@ -12,6 +12,6 @@ import '../consts.js';
12
12
  import '../ResponsiveContext.js';
13
13
  import '../components/controls/Component.js';
14
14
  import '../../../shared/esm';
15
- import '../layout.module-c605216e.js';
15
+ import '../layout.module-c34847d0.js';
16
16
  import '../Context.js';
17
17
  import '../../../navigation-bar-private/esm';
@@ -11,7 +11,7 @@ import './consts.js';
11
11
  import './Context.js';
12
12
  import '../../base-modal/modern';
13
13
  import './ResponsiveContext.js';
14
- import './layout.module-eb64892c.js';
14
+ import './layout.module-b3dff6a0.js';
15
15
  import '../../navigation-bar-private/modern';
16
16
  import 'react-merge-refs';
17
17
 
@@ -2,7 +2,7 @@ import React, { useContext } from 'react';
2
2
  import cn from 'classnames';
3
3
  import { getDataTestId } from '../../../../shared/modern';
4
4
  import { ResponsiveContext } from '../../ResponsiveContext.js';
5
- import { l as layoutStyles } from '../../layout.module-eb64892c.js';
5
+ import { l as layoutStyles } from '../../layout.module-b3dff6a0.js';
6
6
 
7
7
  const styles = {"component":"modal__component_15slf"};
8
8
  require('./index.css');
@@ -3,4 +3,4 @@ import 'react';
3
3
  import 'classnames';
4
4
  import '../../../../shared/modern';
5
5
  import '../../ResponsiveContext.js';
6
- import '../../layout.module-eb64892c.js';
6
+ import '../../layout.module-b3dff6a0.js';
@@ -4,7 +4,7 @@ import { getDataTestId } from '../../../../shared/modern';
4
4
  import { SIZE_TO_CLASSNAME_MAP } from '../../consts.js';
5
5
  import { ModalContext } from '../../Context.js';
6
6
  import { ResponsiveContext } from '../../ResponsiveContext.js';
7
- import { l as layoutStyles } from '../../layout.module-eb64892c.js';
7
+ import { l as layoutStyles } from '../../layout.module-b3dff6a0.js';
8
8
  import '../../../../base-modal/modern';
9
9
 
10
10
  const desktopStyles = {"footer":"modal__footer_z1cef","sticky":"modal__sticky_z1cef","fullscreen":"modal__fullscreen_z1cef","size-500":"modal__size-500_z1cef","size-600":"modal__size-600_z1cef","size-800":"modal__size-800_z1cef","size-1140":"modal__size-1140_z1cef"};
@@ -11,7 +11,7 @@ import '../consts.js';
11
11
  import '../ResponsiveContext.js';
12
12
  import '../../../shared/modern';
13
13
  import '../Context.js';
14
- import '../layout.module-eb64892c.js';
14
+ import '../layout.module-b3dff6a0.js';
15
15
  import '../../../navigation-bar-private/modern';
16
16
 
17
17
  const ModalDesktopComponent = forwardRef((props, ref) => (React.createElement(Modal, { ...props, ref: ref, view: 'desktop' })));