@alfalab/core-components-select 14.3.4 → 15.0.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 (452) hide show
  1. package/Component.desktop.d.ts +19 -0
  2. package/{Component.js → Component.desktop.js} +6 -6
  3. package/Component.mobile-ebda875c.d.ts +6 -0
  4. package/Component.mobile-f1f15074.d.ts +387 -0
  5. package/Component.mobile.d.ts +41 -0
  6. package/Component.mobile.js +62 -0
  7. package/Component.modal.mobile.d.ts +60 -0
  8. package/Component.modal.mobile.js +62 -0
  9. package/Component.responsive.d.ts +1 -1
  10. package/Component.responsive.js +26 -25
  11. package/components/arrow/Component.d.ts +2 -1
  12. package/components/arrow/Component.js +1 -1
  13. package/components/arrow/index.css +3 -3
  14. package/components/base-checkmark/Component.d.ts +2 -1
  15. package/components/base-checkmark/Component.js +1 -1
  16. package/components/base-checkmark/index.css +4 -4
  17. package/components/base-option/Component.js +1 -1
  18. package/components/base-option/index.css +13 -13
  19. package/components/base-select/Component.js +6 -6
  20. package/components/base-select/index.css +8 -8
  21. package/components/base-select/index.js +1 -1
  22. package/components/base-select-mobile/Component.d.ts +3 -3
  23. package/components/base-select-mobile/Component.js +13 -9
  24. package/components/base-select-mobile/footer/Component.d.ts +2 -1
  25. package/components/base-select-mobile/footer/Component.js +4 -4
  26. package/components/base-select-mobile/footer/index.css +5 -5
  27. package/components/base-select-mobile/footer/index.js +1 -1
  28. package/components/base-select-mobile/index.css +13 -11
  29. package/components/base-select-mobile/index.js +1 -2
  30. package/components/checkmark/Component.d.ts +2 -1
  31. package/components/checkmark/Component.js +1 -1
  32. package/components/checkmark/index.css +10 -10
  33. package/components/checkmark-mobile/Component.d.ts +2 -1
  34. package/components/checkmark-mobile/Component.js +1 -1
  35. package/components/checkmark-mobile/index.css +6 -6
  36. package/components/field/Component.d.ts +9 -1
  37. package/components/field/Component.js +19 -16
  38. package/components/field/index.css +38 -11
  39. package/components/field/index.js +0 -1
  40. package/components/index.d.ts +0 -2
  41. package/components/index.js +4 -19
  42. package/components/optgroup/Component.d.ts +2 -1
  43. package/components/optgroup/Component.js +1 -1
  44. package/components/optgroup/index.css +6 -6
  45. package/components/option/Component.js +1 -1
  46. package/components/option/index.css +20 -20
  47. package/components/options-list/Component.js +1 -1
  48. package/components/options-list/index.css +9 -9
  49. package/components/virtual-options-list/Component.js +1 -1
  50. package/components/virtual-options-list/index.css +15 -15
  51. package/cssm/Component.desktop.d.ts +19 -0
  52. package/cssm/{Component.js → Component.desktop.js} +6 -6
  53. package/cssm/Component.mobile-ebda875c.d.ts +6 -0
  54. package/cssm/Component.mobile-f1f15074.d.ts +387 -0
  55. package/cssm/Component.mobile.d.ts +41 -0
  56. package/cssm/Component.mobile.js +74 -0
  57. package/cssm/Component.modal.mobile.d.ts +60 -0
  58. package/cssm/Component.modal.mobile.js +74 -0
  59. package/cssm/Component.responsive.d.ts +1 -1
  60. package/cssm/Component.responsive.js +30 -33
  61. package/cssm/components/arrow/Component.d.ts +2 -1
  62. package/cssm/components/base-checkmark/Component.d.ts +2 -1
  63. package/cssm/components/base-select/Component.js +5 -5
  64. package/cssm/components/base-select/index.js +1 -1
  65. package/cssm/components/base-select-mobile/Component.d.ts +3 -3
  66. package/cssm/components/base-select-mobile/Component.js +12 -8
  67. package/cssm/components/base-select-mobile/footer/Component.d.ts +2 -1
  68. package/cssm/components/base-select-mobile/footer/Component.js +3 -3
  69. package/cssm/components/base-select-mobile/footer/index.js +1 -1
  70. package/cssm/components/base-select-mobile/index.js +1 -2
  71. package/cssm/components/base-select-mobile/index.module.css +4 -2
  72. package/cssm/components/checkmark/Component.d.ts +2 -1
  73. package/cssm/components/checkmark-mobile/Component.d.ts +2 -1
  74. package/cssm/components/field/Component.d.ts +9 -1
  75. package/cssm/components/field/Component.js +18 -15
  76. package/cssm/components/field/index.js +0 -1
  77. package/cssm/components/field/index.module.css +31 -4
  78. package/cssm/components/index.d.ts +0 -2
  79. package/cssm/components/index.js +7 -28
  80. package/cssm/components/optgroup/Component.d.ts +2 -1
  81. package/cssm/desktop-63dec22f.d.ts +6 -0
  82. package/cssm/desktop.d.ts +2 -0
  83. package/cssm/desktop.js +44 -0
  84. package/cssm/hook-97e6e688.d.ts +16 -0
  85. package/cssm/hook-97e6e688.js +110 -0
  86. package/{esm/hook-b4e70cb0.d.ts → cssm/hook-9ea9e32c.d.ts} +9 -7
  87. package/cssm/index-ebda875c.d.ts +20 -60
  88. package/cssm/index.d.ts +2 -5
  89. package/cssm/index.js +34 -61
  90. package/cssm/mobile-96988a65.d.ts +2 -0
  91. package/cssm/mobile.d.ts +5 -4
  92. package/cssm/mobile.js +15 -24
  93. package/cssm/presets/index.d.ts +1 -1
  94. package/cssm/presets/index.js +8 -36
  95. package/cssm/presets/useLazyLoading/hook.d.ts +1 -1
  96. package/cssm/presets/useLazyLoading/hook.js +900 -4
  97. package/cssm/presets/useSelectWithApply/hook.js +9 -48
  98. package/cssm/presets/useSelectWithApply/options-list-with-apply/Component.js +3 -42
  99. package/cssm/presets/useSelectWithApply/options-list-with-apply/footer/Component.d.ts +2 -1
  100. package/cssm/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +3 -3
  101. package/cssm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  102. package/cssm/presets/useSelectWithApply/options-list-with-apply/index.js +10 -49
  103. package/cssm/presets/useSelectWithLoading/hook.d.ts +1 -1
  104. package/cssm/shared.d.ts +5 -0
  105. package/cssm/shared.js +77 -0
  106. package/cssm/typings-9211a437.d.ts +95 -0
  107. package/cssm/typings-baf4875b.d.ts +52 -0
  108. package/desktop-63dec22f.d.ts +6 -0
  109. package/desktop.d.ts +2 -0
  110. package/{responsive.js → desktop.js} +5 -19
  111. package/esm/Component.desktop.d.ts +19 -0
  112. package/esm/{Component.js → Component.desktop.js} +6 -6
  113. package/esm/Component.mobile-ebda875c.d.ts +6 -0
  114. package/esm/Component.mobile-f1f15074.d.ts +387 -0
  115. package/esm/Component.mobile.d.ts +41 -0
  116. package/esm/Component.mobile.js +54 -0
  117. package/esm/Component.modal.mobile.d.ts +60 -0
  118. package/esm/Component.modal.mobile.js +54 -0
  119. package/esm/Component.responsive.d.ts +1 -1
  120. package/esm/Component.responsive.js +26 -25
  121. package/esm/components/arrow/Component.d.ts +2 -1
  122. package/esm/components/arrow/Component.js +1 -1
  123. package/esm/components/arrow/index.css +3 -3
  124. package/esm/components/base-checkmark/Component.d.ts +2 -1
  125. package/esm/components/base-checkmark/Component.js +1 -1
  126. package/esm/components/base-checkmark/index.css +4 -4
  127. package/esm/components/base-option/Component.js +1 -1
  128. package/esm/components/base-option/index.css +13 -13
  129. package/esm/components/base-select/Component.js +2 -2
  130. package/esm/components/base-select/index.css +8 -8
  131. package/esm/components/base-select/index.js +1 -1
  132. package/esm/components/base-select-mobile/Component.d.ts +3 -3
  133. package/esm/components/base-select-mobile/Component.js +9 -5
  134. package/esm/components/base-select-mobile/footer/Component.d.ts +2 -1
  135. package/esm/components/base-select-mobile/footer/Component.js +4 -4
  136. package/esm/components/base-select-mobile/footer/index.css +5 -5
  137. package/esm/components/base-select-mobile/footer/index.js +1 -1
  138. package/esm/components/base-select-mobile/index.css +13 -11
  139. package/esm/components/base-select-mobile/index.js +1 -2
  140. package/esm/components/checkmark/Component.d.ts +2 -1
  141. package/esm/components/checkmark/Component.js +1 -1
  142. package/esm/components/checkmark/index.css +10 -10
  143. package/esm/components/checkmark-mobile/Component.d.ts +2 -1
  144. package/esm/components/checkmark-mobile/Component.js +1 -1
  145. package/esm/components/checkmark-mobile/index.css +6 -6
  146. package/esm/components/field/Component.d.ts +9 -1
  147. package/esm/components/field/Component.js +19 -16
  148. package/esm/components/field/index.css +38 -11
  149. package/esm/components/field/index.js +0 -1
  150. package/esm/components/index.d.ts +0 -2
  151. package/esm/components/index.js +4 -17
  152. package/esm/components/optgroup/Component.d.ts +2 -1
  153. package/esm/components/optgroup/Component.js +1 -1
  154. package/esm/components/optgroup/index.css +6 -6
  155. package/esm/components/option/Component.js +1 -1
  156. package/esm/components/option/index.css +20 -20
  157. package/esm/components/options-list/Component.js +1 -1
  158. package/esm/components/options-list/index.css +9 -9
  159. package/esm/components/virtual-options-list/Component.js +1 -1
  160. package/esm/components/virtual-options-list/index.css +15 -15
  161. package/esm/desktop-63dec22f.d.ts +6 -0
  162. package/esm/desktop.d.ts +2 -0
  163. package/esm/{responsive.js → desktop.js} +4 -18
  164. package/esm/hook-326a5cea.d.ts +16 -0
  165. package/esm/hook-326a5cea.js +102 -0
  166. package/{cssm/hook-b4e70cb0.d.ts → esm/hook-9ea9e32c.d.ts} +9 -7
  167. package/esm/index-ebda875c.d.ts +20 -60
  168. package/esm/index.d.ts +2 -5
  169. package/esm/index.js +27 -29
  170. package/esm/mobile-96988a65.d.ts +2 -0
  171. package/esm/mobile.d.ts +5 -4
  172. package/esm/mobile.js +12 -16
  173. package/esm/presets/index.d.ts +1 -1
  174. package/esm/presets/index.js +6 -25
  175. package/esm/presets/useLazyLoading/hook.d.ts +1 -1
  176. package/esm/presets/useLazyLoading/hook.js +899 -4
  177. package/esm/presets/useSelectWithApply/hook.js +7 -33
  178. package/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +2 -28
  179. package/esm/presets/useSelectWithApply/options-list-with-apply/footer/Component.d.ts +2 -1
  180. package/esm/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +4 -4
  181. package/esm/presets/useSelectWithApply/options-list-with-apply/footer/index.css +3 -3
  182. package/esm/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  183. package/esm/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
  184. package/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  185. package/esm/presets/useSelectWithApply/options-list-with-apply/index.js +8 -34
  186. package/esm/presets/useSelectWithLoading/hook.d.ts +1 -1
  187. package/esm/presets/useSelectWithLoading/hook.js +1 -1
  188. package/esm/presets/useSelectWithLoading/index.css +2 -2
  189. package/esm/shared.d.ts +5 -0
  190. package/esm/shared.js +37 -0
  191. package/esm/typings-9211a437.d.ts +95 -0
  192. package/esm/typings-baf4875b.d.ts +52 -0
  193. package/hook-6e94be9c.d.ts +16 -0
  194. package/hook-6e94be9c.js +110 -0
  195. package/{hook-b4e70cb0.d.ts → hook-9ea9e32c.d.ts} +9 -7
  196. package/index-ebda875c.d.ts +20 -60
  197. package/index.d.ts +2 -5
  198. package/index.js +28 -51
  199. package/mobile-96988a65.d.ts +2 -0
  200. package/mobile.d.ts +5 -4
  201. package/mobile.js +14 -18
  202. package/modern/Component.desktop.d.ts +19 -0
  203. package/modern/{Component.js → Component.desktop.js} +7 -4
  204. package/modern/Component.mobile-ebda875c.d.ts +6 -0
  205. package/modern/Component.mobile-f1f15074.d.ts +387 -0
  206. package/modern/Component.mobile.d.ts +41 -0
  207. package/modern/Component.mobile.js +61 -0
  208. package/modern/Component.modal.mobile.d.ts +60 -0
  209. package/modern/Component.modal.mobile.js +61 -0
  210. package/modern/Component.responsive.d.ts +1 -1
  211. package/modern/Component.responsive.js +26 -25
  212. package/modern/components/arrow/Component.d.ts +2 -1
  213. package/modern/components/arrow/Component.js +1 -1
  214. package/modern/components/arrow/index.css +3 -3
  215. package/modern/components/base-checkmark/Component.d.ts +2 -1
  216. package/modern/components/base-checkmark/Component.js +1 -1
  217. package/modern/components/base-checkmark/index.css +4 -4
  218. package/modern/components/base-option/Component.js +1 -1
  219. package/modern/components/base-option/index.css +13 -13
  220. package/modern/components/base-select/Component.js +2 -2
  221. package/modern/components/base-select/index.css +8 -8
  222. package/modern/components/base-select/index.js +1 -1
  223. package/modern/components/base-select-mobile/Component.d.ts +3 -3
  224. package/modern/components/base-select-mobile/Component.js +9 -5
  225. package/modern/components/base-select-mobile/footer/Component.d.ts +2 -1
  226. package/modern/components/base-select-mobile/footer/Component.js +4 -4
  227. package/modern/components/base-select-mobile/footer/index.css +5 -5
  228. package/modern/components/base-select-mobile/footer/index.js +1 -1
  229. package/modern/components/base-select-mobile/index.css +13 -11
  230. package/modern/components/base-select-mobile/index.js +1 -2
  231. package/modern/components/checkmark/Component.d.ts +2 -1
  232. package/modern/components/checkmark/Component.js +1 -1
  233. package/modern/components/checkmark/index.css +10 -10
  234. package/modern/components/checkmark-mobile/Component.d.ts +2 -1
  235. package/modern/components/checkmark-mobile/Component.js +1 -1
  236. package/modern/components/checkmark-mobile/index.css +6 -6
  237. package/modern/components/field/Component.d.ts +9 -1
  238. package/modern/components/field/Component.js +17 -14
  239. package/modern/components/field/index.css +38 -11
  240. package/modern/components/field/index.js +0 -1
  241. package/modern/components/index.d.ts +0 -2
  242. package/modern/components/index.js +4 -17
  243. package/modern/components/optgroup/Component.d.ts +2 -1
  244. package/modern/components/optgroup/Component.js +1 -1
  245. package/modern/components/optgroup/index.css +6 -6
  246. package/modern/components/option/Component.js +1 -1
  247. package/modern/components/option/index.css +20 -20
  248. package/modern/components/options-list/Component.js +1 -1
  249. package/modern/components/options-list/index.css +9 -9
  250. package/modern/components/virtual-options-list/Component.js +1 -1
  251. package/modern/components/virtual-options-list/index.css +15 -15
  252. package/modern/desktop-63dec22f.d.ts +6 -0
  253. package/modern/desktop.d.ts +2 -0
  254. package/modern/{responsive.js → desktop.js} +4 -18
  255. package/modern/{hook-b4e70cb0.d.ts → hook-9ea9e32c.d.ts} +9 -7
  256. package/modern/hook-e0fd0350.d.ts +16 -0
  257. package/modern/{Component-ecb2a41a.js → hook-e0fd0350.js} +3 -66
  258. package/modern/index-ebda875c.d.ts +20 -60
  259. package/modern/index.d.ts +2 -5
  260. package/modern/index.js +27 -29
  261. package/modern/mobile-96988a65.d.ts +2 -0
  262. package/modern/mobile.d.ts +5 -4
  263. package/modern/mobile.js +12 -16
  264. package/modern/presets/index.d.ts +1 -1
  265. package/modern/presets/index.js +6 -25
  266. package/modern/presets/useLazyLoading/hook.d.ts +1 -1
  267. package/modern/presets/useLazyLoading/hook.js +899 -4
  268. package/modern/presets/useSelectWithApply/hook.js +7 -33
  269. package/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +2 -28
  270. package/modern/presets/useSelectWithApply/options-list-with-apply/footer/Component.d.ts +2 -1
  271. package/modern/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +4 -4
  272. package/modern/presets/useSelectWithApply/options-list-with-apply/footer/index.css +3 -3
  273. package/modern/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  274. package/modern/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
  275. package/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  276. package/modern/presets/useSelectWithApply/options-list-with-apply/index.js +8 -34
  277. package/modern/presets/useSelectWithLoading/hook.d.ts +1 -1
  278. package/modern/presets/useSelectWithLoading/hook.js +1 -1
  279. package/modern/presets/useSelectWithLoading/index.css +2 -2
  280. package/modern/shared.d.ts +5 -0
  281. package/modern/shared.js +36 -0
  282. package/modern/typings-9211a437.d.ts +95 -0
  283. package/modern/typings-baf4875b.d.ts +52 -0
  284. package/package.json +37 -12
  285. package/presets/index.d.ts +1 -1
  286. package/presets/index.js +6 -25
  287. package/presets/useLazyLoading/hook.d.ts +1 -1
  288. package/presets/useLazyLoading/hook.js +899 -4
  289. package/presets/useSelectWithApply/hook.js +7 -33
  290. package/presets/useSelectWithApply/options-list-with-apply/Component.js +2 -28
  291. package/presets/useSelectWithApply/options-list-with-apply/footer/Component.d.ts +2 -1
  292. package/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +4 -4
  293. package/presets/useSelectWithApply/options-list-with-apply/footer/index.css +3 -3
  294. package/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  295. package/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
  296. package/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  297. package/presets/useSelectWithApply/options-list-with-apply/index.js +8 -34
  298. package/presets/useSelectWithLoading/hook.d.ts +1 -1
  299. package/presets/useSelectWithLoading/hook.js +1 -1
  300. package/presets/useSelectWithLoading/index.css +2 -2
  301. package/shared.d.ts +5 -0
  302. package/shared.js +63 -0
  303. package/src/Component.desktop.tsx +52 -0
  304. package/src/Component.mobile.tsx +149 -0
  305. package/src/Component.modal.mobile.tsx +144 -0
  306. package/src/Component.responsive.tsx +59 -0
  307. package/src/components/arrow/Component.tsx +12 -0
  308. package/src/components/arrow/index.module.css +15 -0
  309. package/src/components/arrow/index.ts +1 -0
  310. package/src/components/base-checkmark/Component.tsx +33 -0
  311. package/src/components/base-checkmark/index.module.css +18 -0
  312. package/src/components/base-checkmark/index.ts +1 -0
  313. package/src/components/base-option/Component.tsx +57 -0
  314. package/src/components/base-option/index.module.css +67 -0
  315. package/src/components/base-option/index.ts +1 -0
  316. package/src/components/base-select/Component.tsx +478 -0
  317. package/src/components/base-select/index.module.css +68 -0
  318. package/src/components/base-select/index.ts +1 -0
  319. package/src/components/base-select-mobile/Component.tsx +486 -0
  320. package/src/components/base-select-mobile/footer/Component.tsx +46 -0
  321. package/src/components/base-select-mobile/footer/index.module.css +23 -0
  322. package/src/components/base-select-mobile/footer/index.ts +1 -0
  323. package/src/components/base-select-mobile/index.module.css +48 -0
  324. package/src/components/base-select-mobile/index.ts +1 -0
  325. package/src/components/checkmark/Component.tsx +56 -0
  326. package/src/components/checkmark/index.module.css +48 -0
  327. package/src/components/checkmark/index.ts +1 -0
  328. package/src/components/checkmark-mobile/Component.tsx +18 -0
  329. package/src/components/checkmark-mobile/index.module.css +28 -0
  330. package/src/components/checkmark-mobile/index.ts +1 -0
  331. package/src/components/field/Component.tsx +110 -0
  332. package/src/components/field/index.module.css +60 -0
  333. package/src/components/field/index.ts +1 -0
  334. package/src/components/index.ts +8 -0
  335. package/src/components/native-select/Component.tsx +60 -0
  336. package/src/components/native-select/index.ts +1 -0
  337. package/src/components/optgroup/Component.tsx +15 -0
  338. package/src/components/optgroup/index.module.css +30 -0
  339. package/src/components/optgroup/index.ts +1 -0
  340. package/src/components/option/Component.tsx +65 -0
  341. package/src/components/option/index.module.css +108 -0
  342. package/src/components/option/index.ts +1 -0
  343. package/src/components/options-list/Component.tsx +140 -0
  344. package/src/components/options-list/index.module.css +40 -0
  345. package/src/components/options-list/index.ts +1 -0
  346. package/src/components/virtual-options-list/Component.tsx +217 -0
  347. package/src/components/virtual-options-list/index.module.css +76 -0
  348. package/src/components/virtual-options-list/index.ts +1 -0
  349. package/src/consts.ts +1 -0
  350. package/src/desktop.ts +1 -0
  351. package/src/index.ts +4 -0
  352. package/src/mobile.ts +5 -0
  353. package/src/presets/index.ts +3 -0
  354. package/src/presets/useLazyLoading/hook.tsx +309 -0
  355. package/src/presets/useSelectWithApply/hook.tsx +154 -0
  356. package/src/presets/useSelectWithApply/options-list-with-apply/Component.tsx +106 -0
  357. package/src/presets/useSelectWithApply/options-list-with-apply/footer/Component.tsx +37 -0
  358. package/src/presets/useSelectWithApply/options-list-with-apply/footer/index.module.css +11 -0
  359. package/src/presets/useSelectWithApply/options-list-with-apply/header/Component.tsx +26 -0
  360. package/src/presets/useSelectWithApply/options-list-with-apply/header/index.module.css +9 -0
  361. package/src/presets/useSelectWithApply/options-list-with-apply/index.ts +1 -0
  362. package/src/presets/useSelectWithLoading/hook.tsx +40 -0
  363. package/src/shared.ts +5 -0
  364. package/src/typings.ts +691 -0
  365. package/src/utils.ts +154 -0
  366. package/src/vars.css +57 -0
  367. package/typings-9211a437.d.ts +95 -0
  368. package/typings-baf4875b.d.ts +52 -0
  369. package/Component-01f08370.d.ts +0 -108
  370. package/Component-01f08370.js +0 -165
  371. package/Component-3885b0d7.d.ts +0 -169
  372. package/Component.d.ts +0 -104
  373. package/Component.mobile-b2c0420d.d.ts +0 -93
  374. package/components/select-mobile/Component.d.ts +0 -0
  375. package/components/select-mobile/Component.js +0 -49
  376. package/components/select-mobile/index.d.ts +0 -1
  377. package/components/select-mobile/index.js +0 -49
  378. package/components/select-modal-mobile/Component.d.ts +0 -0
  379. package/components/select-modal-mobile/Component.js +0 -49
  380. package/components/select-modal-mobile/index.d.ts +0 -1
  381. package/components/select-modal-mobile/index.js +0 -49
  382. package/cssm/Component-3885b0d7.d.ts +0 -169
  383. package/cssm/Component-4727d474.d.ts +0 -108
  384. package/cssm/Component-4727d474.js +0 -175
  385. package/cssm/Component.d.ts +0 -104
  386. package/cssm/Component.mobile-b2c0420d.d.ts +0 -93
  387. package/cssm/components/select-mobile/Component.d.ts +0 -0
  388. package/cssm/components/select-mobile/Component.js +0 -66
  389. package/cssm/components/select-mobile/index.d.ts +0 -1
  390. package/cssm/components/select-mobile/index.js +0 -66
  391. package/cssm/components/select-modal-mobile/Component.d.ts +0 -0
  392. package/cssm/components/select-modal-mobile/Component.js +0 -66
  393. package/cssm/components/select-modal-mobile/index.d.ts +0 -1
  394. package/cssm/components/select-modal-mobile/index.js +0 -66
  395. package/cssm/getDataTestId-5c876d98.d.ts +0 -2
  396. package/cssm/getDataTestId-5c876d98.js +0 -8
  397. package/cssm/index-3885b0d7.d.ts +0 -3
  398. package/cssm/intersection-observer-9ec5cf59.d.ts +0 -1
  399. package/cssm/intersection-observer-9ec5cf59.js +0 -893
  400. package/cssm/responsive.d.ts +0 -2
  401. package/cssm/responsive.js +0 -67
  402. package/cssm/types-ebda875c.d.ts +0 -113
  403. package/esm/Component-3885b0d7.d.ts +0 -169
  404. package/esm/Component-5e2bc757.d.ts +0 -108
  405. package/esm/Component-5e2bc757.js +0 -155
  406. package/esm/Component.d.ts +0 -104
  407. package/esm/Component.mobile-b2c0420d.d.ts +0 -93
  408. package/esm/components/select-mobile/Component.d.ts +0 -0
  409. package/esm/components/select-mobile/Component.js +0 -41
  410. package/esm/components/select-mobile/index.d.ts +0 -1
  411. package/esm/components/select-mobile/index.js +0 -41
  412. package/esm/components/select-modal-mobile/Component.d.ts +0 -0
  413. package/esm/components/select-modal-mobile/Component.js +0 -41
  414. package/esm/components/select-modal-mobile/index.d.ts +0 -1
  415. package/esm/components/select-modal-mobile/index.js +0 -41
  416. package/esm/getDataTestId-fc7d4653.d.ts +0 -2
  417. package/esm/getDataTestId-fc7d4653.js +0 -6
  418. package/esm/index-3885b0d7.d.ts +0 -3
  419. package/esm/intersection-observer-6768cbd0.d.ts +0 -1
  420. package/esm/intersection-observer-6768cbd0.js +0 -891
  421. package/esm/presets/useLazyLoading/index.css +0 -8
  422. package/esm/responsive.d.ts +0 -2
  423. package/esm/types-ebda875c.d.ts +0 -113
  424. package/getDataTestId-18fbdb35.d.ts +0 -2
  425. package/getDataTestId-18fbdb35.js +0 -8
  426. package/index-3885b0d7.d.ts +0 -3
  427. package/intersection-observer-0413a170.d.ts +0 -1
  428. package/intersection-observer-0413a170.js +0 -893
  429. package/modern/Component-3885b0d7.d.ts +0 -169
  430. package/modern/Component-ecb2a41a.d.ts +0 -108
  431. package/modern/Component.d.ts +0 -104
  432. package/modern/Component.mobile-b2c0420d.d.ts +0 -93
  433. package/modern/components/select-mobile/Component.d.ts +0 -0
  434. package/modern/components/select-mobile/Component.js +0 -40
  435. package/modern/components/select-mobile/index.d.ts +0 -1
  436. package/modern/components/select-mobile/index.js +0 -40
  437. package/modern/components/select-modal-mobile/Component.d.ts +0 -0
  438. package/modern/components/select-modal-mobile/Component.js +0 -40
  439. package/modern/components/select-modal-mobile/index.d.ts +0 -1
  440. package/modern/components/select-modal-mobile/index.js +0 -40
  441. package/modern/getDataTestId-6120c308.d.ts +0 -2
  442. package/modern/getDataTestId-6120c308.js +0 -6
  443. package/modern/index-3885b0d7.d.ts +0 -3
  444. package/modern/intersection-observer-6768cbd0.d.ts +0 -1
  445. package/modern/intersection-observer-6768cbd0.js +0 -891
  446. package/modern/presets/useLazyLoading/index.css +0 -8
  447. package/modern/responsive.d.ts +0 -2
  448. package/modern/types-ebda875c.d.ts +0 -113
  449. package/presets/useLazyLoading/index.css +0 -8
  450. package/responsive.d.ts +0 -2
  451. package/types-ebda875c.d.ts +0 -113
  452. /package/{cssm/presets/useLazyLoading → src/presets/useSelectWithLoading}/index.module.css +0 -0
@@ -0,0 +1,144 @@
1
+ import React, { forwardRef } from 'react';
2
+
3
+ import { FormControlMobile } from '@alfalab/core-components-form-control/mobile';
4
+ import { ModalMobile } from '@alfalab/core-components-modal/Component.mobile';
5
+
6
+ import { Arrow as DefaultArrow } from './components/arrow';
7
+ import { BaseSelectMobile } from './components/base-select-mobile';
8
+ import { Footer } from './components/base-select-mobile/footer';
9
+ import { Field as DefaultField } from './components/field';
10
+ import { Optgroup as DefaultOptgroup } from './components/optgroup';
11
+ import { Option as DefaultOption } from './components/option';
12
+ import { OptionsList as DefaultOptionsList } from './components/options-list';
13
+ import { VirtualOptionsList as DefaultVirtualOptionsList } from './components/virtual-options-list';
14
+ import { useSelectWithApply, UseSelectWithApplyProps } from './presets/useSelectWithApply/hook';
15
+ import { Header } from './presets/useSelectWithApply/options-list-with-apply/header/Component';
16
+ import { AnyObject, BaseSelectProps } from './typings';
17
+
18
+ export type SelectModalMobileProps = Omit<BaseSelectProps, 'Checkmark' | 'onScroll'> & {
19
+ /**
20
+ * Показывать кнопку очистки
21
+ */
22
+ showClear?: UseSelectWithApplyProps['showClear'];
23
+
24
+ /**
25
+ * Показывать пункт "Выбрать все"
26
+ */
27
+ showSelectAll?: UseSelectWithApplyProps['showSelectAll'];
28
+
29
+ /**
30
+ * Дополнительные пропсы шапки модалки
31
+ */
32
+ modalHeaderProps?: Partial<React.ComponentProps<typeof ModalMobile.Header>>;
33
+
34
+ /**
35
+ * Дополнительные пропсы модалки
36
+ */
37
+ modalProps?: Partial<React.ComponentProps<typeof ModalMobile>>;
38
+
39
+ /**
40
+ * Дополнительные пропсы футера модалки
41
+ */
42
+ modalFooterProps?: Partial<React.ComponentProps<typeof ModalMobile.Footer>>;
43
+
44
+ /*
45
+ * Показывать пункт "Выбрать все" в заголовке списка
46
+ */
47
+ showHeaderWithSelectAll?: UseSelectWithApplyProps['showHeaderWithSelectAll'];
48
+
49
+ /**
50
+ * Использовать ли хук useSelectWithApply
51
+ */
52
+ useWithApplyHook?: boolean;
53
+ };
54
+
55
+ const VIRTUAL_OPTIONS_LIST_THRESHOLD = 30;
56
+
57
+ export const SelectModalMobile = forwardRef(
58
+ (
59
+ {
60
+ autocomplete = false,
61
+ multiple = false,
62
+ allowUnselect = false,
63
+ disabled = false,
64
+ closeOnSelect = !multiple,
65
+ circularNavigation = false,
66
+ defaultOpen = false,
67
+ open: openProp,
68
+ size = 'm',
69
+ optionsSize = 'm',
70
+ fieldProps = {},
71
+ optionProps = {},
72
+ optionsListProps = {},
73
+ Arrow = DefaultArrow,
74
+ Field = DefaultField,
75
+ Optgroup = DefaultOptgroup,
76
+ Option = DefaultOption,
77
+ selected,
78
+ options,
79
+ OptionsList = options.length > VIRTUAL_OPTIONS_LIST_THRESHOLD
80
+ ? DefaultVirtualOptionsList
81
+ : DefaultOptionsList,
82
+ onChange,
83
+ showClear = true,
84
+ showSelectAll,
85
+ useWithApplyHook = multiple,
86
+ modalHeaderProps,
87
+ showHeaderWithSelectAll,
88
+ ...restProps
89
+ }: SelectModalMobileProps,
90
+ ref,
91
+ ) => {
92
+ const applyProps = useSelectWithApply({
93
+ optionsListProps: {
94
+ ...(optionsListProps as AnyObject),
95
+ Footer,
96
+ },
97
+ OptionsList,
98
+ selected,
99
+ options,
100
+ onChange,
101
+ showClear,
102
+ showSelectAll,
103
+ });
104
+
105
+ return (
106
+ <BaseSelectMobile
107
+ ref={ref}
108
+ autocomplete={autocomplete}
109
+ multiple={multiple}
110
+ allowUnselect={allowUnselect}
111
+ disabled={disabled}
112
+ closeOnSelect={closeOnSelect}
113
+ circularNavigation={circularNavigation}
114
+ defaultOpen={defaultOpen}
115
+ open={openProp}
116
+ size={size}
117
+ optionsSize={optionsSize}
118
+ fieldProps={{
119
+ FormControlComponent: FormControlMobile,
120
+ ...(fieldProps as object),
121
+ }}
122
+ optionProps={optionProps}
123
+ Arrow={Arrow}
124
+ Field={Field}
125
+ Optgroup={Optgroup}
126
+ Option={Option}
127
+ isBottomSheet={false}
128
+ options={options}
129
+ selected={selected}
130
+ onChange={onChange}
131
+ OptionsList={OptionsList}
132
+ optionsListProps={optionsListProps}
133
+ modalHeaderProps={{
134
+ bottomAddons: useWithApplyHook && showHeaderWithSelectAll && (
135
+ <Header {...applyProps.optionsListProps.headerProps} mobile={true} />
136
+ ),
137
+ ...modalHeaderProps,
138
+ }}
139
+ {...restProps}
140
+ {...(useWithApplyHook && applyProps)}
141
+ />
142
+ );
143
+ },
144
+ );
@@ -0,0 +1,59 @@
1
+ import React, { forwardRef } from 'react';
2
+
3
+ import { useMedia } from '@alfalab/hooks';
4
+
5
+ import { SelectDesktop, SelectFieldProps } from './Component.desktop';
6
+ import { AdditionalMobileProps, SelectMobile } from './Component.mobile';
7
+ import type { BaseSelectProps } from './typings';
8
+
9
+ export type SelectResponsiveProps = BaseSelectProps &
10
+ AdditionalMobileProps & {
11
+ /**
12
+ * Контрольная точка, с нее начинается desktop версия
13
+ * @default 1024
14
+ */
15
+ breakpoint?: number;
16
+ };
17
+
18
+ export const SelectResponsive = forwardRef<HTMLDivElement, SelectResponsiveProps>(
19
+ (
20
+ {
21
+ footer,
22
+ swipeable,
23
+ bottomSheetProps,
24
+ OptionsList,
25
+ onScroll,
26
+ fieldProps,
27
+ breakpoint = 1024,
28
+ ...restProps
29
+ },
30
+ ref,
31
+ ) => {
32
+ const [view] = useMedia(
33
+ [
34
+ ['mobile', `(max-width: ${breakpoint - 1}px)`],
35
+ ['desktop', `(min-width: ${breakpoint}px)`],
36
+ ],
37
+ 'desktop',
38
+ );
39
+
40
+ return view === 'desktop' ? (
41
+ <SelectDesktop
42
+ OptionsList={OptionsList}
43
+ onScroll={onScroll}
44
+ {...restProps}
45
+ ref={ref}
46
+ fieldProps={fieldProps as SelectFieldProps}
47
+ />
48
+ ) : (
49
+ <SelectMobile
50
+ footer={footer}
51
+ swipeable={swipeable}
52
+ bottomSheetProps={bottomSheetProps}
53
+ fieldProps={fieldProps}
54
+ {...restProps}
55
+ ref={ref}
56
+ />
57
+ );
58
+ },
59
+ );
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import cn from 'classnames';
3
+
4
+ import { ChevronDownMIcon } from '@alfalab/icons-glyph/ChevronDownMIcon';
5
+
6
+ import { ArrowProps } from '../../typings';
7
+
8
+ import styles from './index.module.css';
9
+
10
+ export const Arrow = ({ open, className }: ArrowProps) => (
11
+ <ChevronDownMIcon className={cn(styles.arrow, className, { [styles.open]: open })} />
12
+ );
@@ -0,0 +1,15 @@
1
+ @import '@alfalab/core-components-themes/src/default.css';
2
+ @import '../../vars.css';
3
+
4
+ .arrow {
5
+ display: block;
6
+ width: 24px;
7
+ height: 24px;
8
+ color: var(--select-arrow-color);
9
+
10
+ transition: transform 0.15s ease-in-out, opacity 0.2s ease;
11
+ }
12
+
13
+ .open {
14
+ transform: var(--arrow-transform);
15
+ }
@@ -0,0 +1 @@
1
+ export * from './Component';
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+ import cn from 'classnames';
3
+
4
+ import { Checkbox } from '@alfalab/core-components-checkbox';
5
+ import { CheckmarkMIcon } from '@alfalab/icons-glyph/CheckmarkMIcon';
6
+
7
+ import { CheckmarkProps } from '../../typings';
8
+
9
+ import styles from './index.module.css';
10
+
11
+ export const BaseCheckmark = ({
12
+ selected,
13
+ disabled = false,
14
+ className,
15
+ multiple,
16
+ }: CheckmarkProps) => {
17
+ const checkmarkClassNames = cn(styles.checkmark, className, {
18
+ [styles.single]: !multiple,
19
+ [styles.selected]: selected,
20
+ });
21
+
22
+ return multiple ? (
23
+ <Checkbox
24
+ checked={selected}
25
+ disabled={disabled}
26
+ className={checkmarkClassNames}
27
+ size='m'
28
+ hiddenInput={true}
29
+ />
30
+ ) : (
31
+ <CheckmarkMIcon className={checkmarkClassNames} />
32
+ );
33
+ };
@@ -0,0 +1,18 @@
1
+ @import '@alfalab/core-components-themes/src/default.css';
2
+ @import '../../vars.css';
3
+
4
+ .checkmark {
5
+ flex-shrink: 0;
6
+ box-sizing: border-box;
7
+ }
8
+
9
+ .single {
10
+ display: flex;
11
+ align-items: center;
12
+ justify-content: center;
13
+ opacity: 0;
14
+
15
+ &.selected {
16
+ opacity: 1;
17
+ }
18
+ }
@@ -0,0 +1 @@
1
+ export * from './Component';
@@ -0,0 +1,57 @@
1
+ import React, { FC, isValidElement } from 'react';
2
+ import cn from 'classnames';
3
+
4
+ import { OptionProps } from '../../typings';
5
+ import { BaseCheckmark } from '../base-checkmark';
6
+
7
+ import styles from './index.module.css';
8
+
9
+ export const BaseOption: FC<OptionProps> = ({
10
+ className,
11
+ option,
12
+ children,
13
+ selected,
14
+ highlighted,
15
+ disabled,
16
+ multiple,
17
+ Checkmark = BaseCheckmark,
18
+ checkmarkPosition = multiple ? 'before' : 'after',
19
+ innerProps,
20
+ dataTestId,
21
+ mobile = false,
22
+ }) => {
23
+ const content = children || option.content || option.key;
24
+ const { showCheckMark = true } = option;
25
+
26
+ const isTextContent = !isValidElement(content);
27
+
28
+ const renderCheckmark = () => {
29
+ if (Checkmark && showCheckMark) {
30
+ return <Checkmark disabled={disabled} selected={selected} multiple={multiple} />;
31
+ }
32
+
33
+ return null;
34
+ };
35
+
36
+ return (
37
+ <div
38
+ {...innerProps}
39
+ className={cn(styles.option, className, {
40
+ [styles.highlighted]: !mobile && highlighted,
41
+ [styles.selected]: selected,
42
+ [styles.disabled]: disabled,
43
+ [styles.textContent]: isTextContent,
44
+ [styles.mobile]: mobile,
45
+ [styles.checkmarkAfter]: !isTextContent && checkmarkPosition === 'after',
46
+ [styles.checkmarkBefore]: !isTextContent && checkmarkPosition === 'before',
47
+ })}
48
+ data-test-id={dataTestId}
49
+ >
50
+ {checkmarkPosition === 'before' && renderCheckmark()}
51
+
52
+ <div className={cn(styles.content)}>{content}</div>
53
+
54
+ {checkmarkPosition === 'after' && renderCheckmark()}
55
+ </div>
56
+ );
57
+ };
@@ -0,0 +1,67 @@
1
+ @import '@alfalab/core-components-themes/src/default.css';
2
+ @import '../../vars.css';
3
+
4
+ .option {
5
+ @mixin paragraph_component;
6
+
7
+ display: flex;
8
+ align-items: center;
9
+ gap: var(--gap-s);
10
+ transition: background-color 0.2s ease;
11
+ background: var(--select-option-background);
12
+ color: var(--select-option-color);
13
+ box-sizing: border-box;
14
+ position: relative;
15
+ cursor: pointer;
16
+ min-height: var(--size-s-height);
17
+
18
+ &:not(.disabled):active {
19
+ background: var(--select-option-active-background);
20
+ color: var(--select-option-active-color);
21
+ }
22
+
23
+ &.checkmarkBefore {
24
+ padding: 0 0 0 var(--gap-s);
25
+
26
+ &.mobile {
27
+ padding-left: var(--gap-m);
28
+ }
29
+ }
30
+
31
+ &.checkmarkAfter {
32
+ padding: 0 var(--gap-s) 0 0;
33
+
34
+ &.mobile {
35
+ padding-right: var(--gap-l);
36
+ }
37
+ }
38
+
39
+ &.textContent {
40
+ padding: var(--gap-s);
41
+
42
+ &.mobile {
43
+ padding: var(--gap-m) var(--gap-l) var(--gap-m) var(--gap-m);
44
+ }
45
+ }
46
+ }
47
+
48
+ .selected {
49
+ background: var(--select-option-selected-background);
50
+ color: var(--select-option-selected-color);
51
+ cursor: default;
52
+ }
53
+
54
+ .highlighted {
55
+ background: var(--select-option-hover-background);
56
+ color: var(--select-option-hover-color);
57
+ }
58
+
59
+ .disabled {
60
+ cursor: var(--disabled-cursor);
61
+ background: var(--select-option-disabled-background);
62
+ color: var(--select-option-disabled-color);
63
+ }
64
+
65
+ .content {
66
+ flex: 1;
67
+ }
@@ -0,0 +1 @@
1
+ export * from './Component';