@alfalab/core-components-select 17.21.5 → 17.23.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 (300) hide show
  1. package/components/arrow/Component.js +1 -1
  2. package/components/arrow/index.css +5 -5
  3. package/components/base-checkmark/Component.js +1 -1
  4. package/components/base-checkmark/index.css +6 -6
  5. package/components/base-option/Component.js +1 -1
  6. package/components/base-option/index.css +17 -17
  7. package/components/base-select/Component.js +77 -32
  8. package/components/base-select/index.css +12 -12
  9. package/components/base-select/mobile.css +12 -12
  10. package/components/checkmark/Component.js +1 -1
  11. package/components/checkmark/index.css +10 -10
  12. package/components/checkmark-mobile/Component.js +1 -1
  13. package/components/checkmark-mobile/index.css +6 -6
  14. package/components/clear-button/Component.js +1 -1
  15. package/components/clear-button/index.css +5 -5
  16. package/components/field/Component.d.ts +1 -1
  17. package/components/field/Component.js +3 -3
  18. package/components/field/index.css +14 -14
  19. package/components/footer/Component.js +1 -1
  20. package/components/footer/index.css +5 -5
  21. package/components/optgroup/Component.js +1 -1
  22. package/components/optgroup/index.css +5 -5
  23. package/components/option/desktop/Component.js +1 -1
  24. package/components/option/desktop/index.css +21 -21
  25. package/components/option/mobile/Component.js +1 -1
  26. package/components/option/mobile/index.css +18 -18
  27. package/components/options-list/Component.js +1 -1
  28. package/components/options-list/index.css +10 -10
  29. package/components/search/Component.js +1 -1
  30. package/components/search/index.css +2 -2
  31. package/components/virtual-options-list/Component.js +4 -4
  32. package/components/virtual-options-list/index.css +14 -14
  33. package/consts.d.ts +2 -1
  34. package/consts.js +2 -0
  35. package/cssm/components/base-select/Component.js +61 -21
  36. package/cssm/components/field/Component.d.ts +1 -1
  37. package/cssm/components/field/Component.js +2 -2
  38. package/cssm/components/virtual-options-list/Component.js +3 -3
  39. package/cssm/consts.d.ts +2 -1
  40. package/cssm/consts.js +2 -0
  41. package/cssm/typings.d.ts +9 -0
  42. package/cssm/utils.d.ts +2 -1
  43. package/cssm/utils.js +3 -2
  44. package/esm/components/arrow/Component.js +1 -1
  45. package/esm/components/arrow/index.css +5 -5
  46. package/esm/components/base-checkmark/Component.js +1 -1
  47. package/esm/components/base-checkmark/index.css +6 -6
  48. package/esm/components/base-option/Component.js +1 -1
  49. package/esm/components/base-option/index.css +17 -17
  50. package/esm/components/base-select/Component.js +67 -22
  51. package/esm/components/base-select/index.css +12 -12
  52. package/esm/components/base-select/mobile.css +12 -12
  53. package/esm/components/checkmark/Component.js +1 -1
  54. package/esm/components/checkmark/index.css +10 -10
  55. package/esm/components/checkmark-mobile/Component.js +1 -1
  56. package/esm/components/checkmark-mobile/index.css +6 -6
  57. package/esm/components/clear-button/Component.js +1 -1
  58. package/esm/components/clear-button/index.css +5 -5
  59. package/esm/components/field/Component.d.ts +1 -1
  60. package/esm/components/field/Component.js +3 -3
  61. package/esm/components/field/index.css +14 -14
  62. package/esm/components/footer/Component.js +1 -1
  63. package/esm/components/footer/index.css +5 -5
  64. package/esm/components/optgroup/Component.js +1 -1
  65. package/esm/components/optgroup/index.css +5 -5
  66. package/esm/components/option/desktop/Component.js +1 -1
  67. package/esm/components/option/desktop/index.css +21 -21
  68. package/esm/components/option/mobile/Component.js +1 -1
  69. package/esm/components/option/mobile/index.css +18 -18
  70. package/esm/components/options-list/Component.js +1 -1
  71. package/esm/components/options-list/index.css +10 -10
  72. package/esm/components/search/Component.js +1 -1
  73. package/esm/components/search/index.css +2 -2
  74. package/esm/components/virtual-options-list/Component.js +4 -4
  75. package/esm/components/virtual-options-list/index.css +14 -14
  76. package/esm/consts.d.ts +2 -1
  77. package/esm/consts.js +2 -1
  78. package/esm/mobile/Component.mobile.js +1 -1
  79. package/esm/presets/index.js +1 -1
  80. package/esm/presets/useSelectWithApply/hook.js +1 -1
  81. package/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  82. package/esm/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +1 -1
  83. package/esm/presets/useSelectWithApply/options-list-with-apply/footer/index.css +4 -4
  84. package/esm/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  85. package/esm/presets/useSelectWithApply/options-list-with-apply/header/index.css +4 -4
  86. package/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  87. package/esm/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  88. package/esm/presets/useSelectWithLoading/hook.js +1 -1
  89. package/esm/presets/useSelectWithLoading/index.css +2 -2
  90. package/esm/shared/index.js +1 -1
  91. package/esm/typings.d.ts +9 -0
  92. package/esm/utils.d.ts +2 -1
  93. package/esm/utils.js +3 -2
  94. package/mobile/Component.mobile.js +1 -1
  95. package/modern/components/arrow/Component.js +1 -1
  96. package/modern/components/arrow/index.css +5 -5
  97. package/modern/components/base-checkmark/Component.js +1 -1
  98. package/modern/components/base-checkmark/index.css +6 -6
  99. package/modern/components/base-option/Component.js +1 -1
  100. package/modern/components/base-option/index.css +17 -17
  101. package/modern/components/base-select/Component.js +63 -12
  102. package/modern/components/base-select/index.css +12 -12
  103. package/modern/components/base-select/mobile.css +12 -12
  104. package/modern/components/checkmark/Component.js +1 -1
  105. package/modern/components/checkmark/index.css +10 -10
  106. package/modern/components/checkmark-mobile/Component.js +1 -1
  107. package/modern/components/checkmark-mobile/index.css +6 -6
  108. package/modern/components/clear-button/Component.js +1 -1
  109. package/modern/components/clear-button/index.css +5 -5
  110. package/modern/components/field/Component.d.ts +1 -1
  111. package/modern/components/field/Component.js +3 -3
  112. package/modern/components/field/index.css +14 -14
  113. package/modern/components/footer/Component.js +1 -1
  114. package/modern/components/footer/index.css +5 -5
  115. package/modern/components/optgroup/Component.js +1 -1
  116. package/modern/components/optgroup/index.css +5 -5
  117. package/modern/components/option/desktop/Component.js +1 -1
  118. package/modern/components/option/desktop/index.css +21 -21
  119. package/modern/components/option/mobile/Component.js +1 -1
  120. package/modern/components/option/mobile/index.css +18 -18
  121. package/modern/components/options-list/Component.js +1 -1
  122. package/modern/components/options-list/index.css +10 -10
  123. package/modern/components/search/Component.js +1 -1
  124. package/modern/components/search/index.css +2 -2
  125. package/modern/components/virtual-options-list/Component.js +4 -4
  126. package/modern/components/virtual-options-list/index.css +14 -14
  127. package/modern/consts.d.ts +2 -1
  128. package/modern/consts.js +2 -1
  129. package/modern/mobile/Component.mobile.js +1 -1
  130. package/modern/presets/index.js +1 -1
  131. package/modern/presets/useSelectWithApply/hook.js +1 -1
  132. package/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  133. package/modern/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +1 -1
  134. package/modern/presets/useSelectWithApply/options-list-with-apply/footer/index.css +4 -4
  135. package/modern/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  136. package/modern/presets/useSelectWithApply/options-list-with-apply/header/index.css +4 -4
  137. package/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  138. package/modern/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  139. package/modern/presets/useSelectWithLoading/hook.js +1 -1
  140. package/modern/presets/useSelectWithLoading/index.css +2 -2
  141. package/modern/shared/index.js +1 -1
  142. package/modern/typings.d.ts +9 -0
  143. package/modern/utils.d.ts +2 -1
  144. package/modern/utils.js +3 -2
  145. package/moderncssm/components/base-select/Component.js +57 -11
  146. package/moderncssm/components/field/Component.d.ts +1 -1
  147. package/moderncssm/components/field/Component.js +2 -2
  148. package/moderncssm/components/virtual-options-list/Component.js +3 -3
  149. package/moderncssm/consts.d.ts +2 -1
  150. package/moderncssm/consts.js +2 -1
  151. package/moderncssm/typings.d.ts +9 -0
  152. package/moderncssm/utils.d.ts +2 -1
  153. package/moderncssm/utils.js +3 -2
  154. package/package.json +5 -5
  155. package/presets/index.js +1 -1
  156. package/presets/useSelectWithApply/hook.js +1 -1
  157. package/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  158. package/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +1 -1
  159. package/presets/useSelectWithApply/options-list-with-apply/footer/index.css +4 -4
  160. package/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  161. package/presets/useSelectWithApply/options-list-with-apply/header/index.css +4 -4
  162. package/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  163. package/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  164. package/presets/useSelectWithLoading/hook.js +1 -1
  165. package/presets/useSelectWithLoading/index.css +2 -2
  166. package/shared/index.js +1 -1
  167. package/src/components/base-select/Component.tsx +156 -35
  168. package/src/components/field/Component.tsx +2 -1
  169. package/src/components/virtual-options-list/Component.tsx +3 -2
  170. package/src/consts.ts +2 -0
  171. package/src/typings.ts +11 -0
  172. package/src/utils.ts +4 -1
  173. package/typings.d.ts +9 -0
  174. package/utils.d.ts +2 -1
  175. package/utils.js +3 -2
  176. package/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
  177. package/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -19
  178. package/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -0
  179. package/components/base-select/components/list-desktop/list-popover-desktop.js +0 -12
  180. package/components/base-select/components/list-desktop/types/types.d.ts +0 -3
  181. package/components/base-select/components/list-desktop/types/types.js +0 -2
  182. package/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
  183. package/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -23
  184. package/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
  185. package/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -22
  186. package/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
  187. package/components/base-select/components/list-mobile/helpers/index.js +0 -11
  188. package/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
  189. package/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -31
  190. package/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
  191. package/components/base-select/components/list-mobile/list-mobile.js +0 -26
  192. package/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
  193. package/components/base-select/components/list-mobile/list-modal-mobile.js +0 -45
  194. package/components/base-select/components/list-mobile/types/types.d.ts +0 -4
  195. package/components/base-select/components/list-mobile/types/types.js +0 -2
  196. package/cssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
  197. package/cssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -19
  198. package/cssm/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -9
  199. package/cssm/components/base-select/components/list-desktop/list-popover-desktop.js +0 -24
  200. package/cssm/components/base-select/components/list-desktop/types/types.d.ts +0 -3
  201. package/cssm/components/base-select/components/list-desktop/types/types.js +0 -2
  202. package/cssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
  203. package/cssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -23
  204. package/cssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
  205. package/cssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -22
  206. package/cssm/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
  207. package/cssm/components/base-select/components/list-mobile/helpers/index.js +0 -11
  208. package/cssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
  209. package/cssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -32
  210. package/cssm/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
  211. package/cssm/components/base-select/components/list-mobile/list-mobile.js +0 -26
  212. package/cssm/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
  213. package/cssm/components/base-select/components/list-mobile/list-modal-mobile.js +0 -46
  214. package/cssm/components/base-select/components/list-mobile/types/types.d.ts +0 -4
  215. package/cssm/components/base-select/components/list-mobile/types/types.js +0 -2
  216. package/esm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
  217. package/esm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -15
  218. package/esm/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -0
  219. package/esm/components/base-select/components/list-desktop/list-popover-desktop.js +0 -4
  220. package/esm/components/base-select/components/list-desktop/types/types.d.ts +0 -3
  221. package/esm/components/base-select/components/list-desktop/types/types.js +0 -1
  222. package/esm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
  223. package/esm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -19
  224. package/esm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
  225. package/esm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -18
  226. package/esm/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
  227. package/esm/components/base-select/components/list-mobile/helpers/index.js +0 -2
  228. package/esm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
  229. package/esm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -23
  230. package/esm/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
  231. package/esm/components/base-select/components/list-mobile/list-mobile.js +0 -18
  232. package/esm/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
  233. package/esm/components/base-select/components/list-mobile/list-modal-mobile.js +0 -35
  234. package/esm/components/base-select/components/list-mobile/types/types.d.ts +0 -4
  235. package/esm/components/base-select/components/list-mobile/types/types.js +0 -1
  236. package/esm/list-popover-desktop-29a8ef3e.d.ts +0 -9
  237. package/esm/list-popover-desktop-29a8ef3e.js +0 -16
  238. package/esm/mobile.module-b5127fe2.js +0 -4
  239. package/list-popover-desktop-1eb72557.d.ts +0 -9
  240. package/list-popover-desktop-1eb72557.js +0 -24
  241. package/mobile.module-489259bb.js +0 -6
  242. package/modern/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
  243. package/modern/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -15
  244. package/modern/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -0
  245. package/modern/components/base-select/components/list-desktop/list-popover-desktop.js +0 -3
  246. package/modern/components/base-select/components/list-desktop/types/types.d.ts +0 -3
  247. package/modern/components/base-select/components/list-desktop/types/types.js +0 -1
  248. package/modern/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
  249. package/modern/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -19
  250. package/modern/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
  251. package/modern/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -18
  252. package/modern/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
  253. package/modern/components/base-select/components/list-mobile/helpers/index.js +0 -2
  254. package/modern/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
  255. package/modern/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -27
  256. package/modern/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
  257. package/modern/components/base-select/components/list-mobile/list-mobile.js +0 -17
  258. package/modern/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
  259. package/modern/components/base-select/components/list-mobile/list-modal-mobile.js +0 -35
  260. package/modern/components/base-select/components/list-mobile/types/types.d.ts +0 -4
  261. package/modern/components/base-select/components/list-mobile/types/types.js +0 -1
  262. package/modern/list-popover-desktop-7a9f6f97.d.ts +0 -9
  263. package/modern/list-popover-desktop-7a9f6f97.js +0 -15
  264. package/modern/mobile.module-7fdca573.js +0 -4
  265. package/moderncssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
  266. package/moderncssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -15
  267. package/moderncssm/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -9
  268. package/moderncssm/components/base-select/components/list-desktop/list-popover-desktop.js +0 -13
  269. package/moderncssm/components/base-select/components/list-desktop/types/types.d.ts +0 -3
  270. package/moderncssm/components/base-select/components/list-desktop/types/types.js +0 -1
  271. package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
  272. package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -19
  273. package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
  274. package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -18
  275. package/moderncssm/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
  276. package/moderncssm/components/base-select/components/list-mobile/helpers/index.js +0 -2
  277. package/moderncssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
  278. package/moderncssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -27
  279. package/moderncssm/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
  280. package/moderncssm/components/base-select/components/list-mobile/list-mobile.js +0 -17
  281. package/moderncssm/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
  282. package/moderncssm/components/base-select/components/list-mobile/list-modal-mobile.js +0 -35
  283. package/moderncssm/components/base-select/components/list-mobile/types/types.d.ts +0 -4
  284. package/moderncssm/components/base-select/components/list-mobile/types/types.js +0 -1
  285. package/src/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.tsx +0 -24
  286. package/src/components/base-select/components/list-desktop/list-popover-desktop.tsx +0 -47
  287. package/src/components/base-select/components/list-desktop/types/types.ts +0 -3
  288. package/src/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.tsx +0 -32
  289. package/src/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.tsx +0 -30
  290. package/src/components/base-select/components/list-mobile/helpers/index.ts +0 -2
  291. package/src/components/base-select/components/list-mobile/list-bottom-sheet-mobile.tsx +0 -88
  292. package/src/components/base-select/components/list-mobile/list-mobile.tsx +0 -39
  293. package/src/components/base-select/components/list-mobile/list-modal-mobile.tsx +0 -98
  294. package/src/components/base-select/components/list-mobile/types/types.ts +0 -4
  295. /package/esm/{hook-43e5c3e8.d.ts → hook-c407521c.d.ts} +0 -0
  296. /package/esm/{hook-43e5c3e8.js → hook-c407521c.js} +0 -0
  297. /package/{hook-71fac561.d.ts → hook-f40ac6c9.d.ts} +0 -0
  298. /package/{hook-71fac561.js → hook-f40ac6c9.js} +0 -0
  299. /package/modern/{hook-75b8be77.d.ts → hook-2f97598a.d.ts} +0 -0
  300. /package/modern/{hook-75b8be77.js → hook-2f97598a.js} +0 -0
@@ -1,88 +0,0 @@
1
- import React, { FC, ReactNode, RefObject } from 'react';
2
-
3
- import { OptionShape } from '@alfalab/core-components-select/typings';
4
- import { getDataTestId } from '@alfalab/core-components-shared';
5
-
6
- import { ListBottomSheetMobileRestProps } from './types/types';
7
-
8
- import mobileStyles from '../../mobile.module.css';
9
-
10
- type ListMobileProps = {
11
- open: boolean;
12
- menuRef: RefObject<HTMLDivElement>;
13
- scrollableContainerRef: RefObject<HTMLDivElement>;
14
- flatOptions: OptionShape[];
15
- closeMenu: () => void;
16
- handleEntered: (node: HTMLElement, isAppearing: boolean) => void;
17
- renderSearch: () => ReactNode;
18
- renderOptionsList: () => ReactNode;
19
- } & ListBottomSheetMobileRestProps;
20
-
21
- export const ListBottomSheetMobile: FC<ListMobileProps> = (props) => {
22
- const {
23
- BottomSheet,
24
- dataTestId,
25
- open,
26
- label,
27
- placeholder,
28
- footer,
29
- swipeable,
30
- showSearch,
31
- bottomSheetProps,
32
- menuRef,
33
- scrollableContainerRef,
34
- onScroll,
35
- flatOptions,
36
- closeMenu,
37
- handleEntered,
38
- renderSearch,
39
- renderOptionsList,
40
- } = props;
41
-
42
- if (BottomSheet) {
43
- const bottomAddons = bottomSheetProps?.bottomAddons;
44
-
45
- return (
46
- <BottomSheet
47
- dataTestId={getDataTestId(dataTestId, 'bottom-sheet')}
48
- open={open}
49
- className={mobileStyles.sheet}
50
- contentClassName={mobileStyles.sheetContent}
51
- containerClassName={mobileStyles.sheetContainer}
52
- title={label || placeholder}
53
- actionButton={footer}
54
- stickyHeader={true}
55
- hasCloser={true}
56
- swipeable={swipeable}
57
- initialHeight={showSearch ? 'full' : 'default'}
58
- {...bottomSheetProps}
59
- sheetContainerRef={menuRef}
60
- scrollableContainerRef={scrollableContainerRef}
61
- onClose={() => {
62
- closeMenu();
63
- bottomSheetProps?.onClose?.();
64
- }}
65
- transitionProps={{
66
- ...bottomSheetProps?.transitionProps,
67
- onEntered: handleEntered,
68
- }}
69
- bottomAddons={
70
- <React.Fragment>
71
- {renderSearch()}
72
- {typeof bottomAddons === 'function'
73
- ? bottomAddons(flatOptions)
74
- : bottomAddons}
75
- </React.Fragment>
76
- }
77
- containerProps={{
78
- ...bottomSheetProps?.containerProps,
79
- onScroll,
80
- }}
81
- >
82
- {renderOptionsList()}
83
- </BottomSheet>
84
- );
85
- }
86
-
87
- return null;
88
- };
@@ -1,39 +0,0 @@
1
- import React, { FC, ReactNode, RefObject } from 'react';
2
-
3
- import { OptionShape } from '@alfalab/core-components-select/typings';
4
-
5
- import { ListBottomSheetMobileRestProps, ListModalMobileRestProps } from './types/types';
6
- import { ListBottomSheetMobile } from './list-bottom-sheet-mobile';
7
- import { ListModalMobile } from './list-modal-mobile';
8
-
9
- type ListMobileProps = {
10
- baseProps: ListBottomSheetMobileRestProps | ListModalMobileRestProps;
11
- open: boolean;
12
- menuRef: RefObject<HTMLDivElement>;
13
- scrollableContainerRef: RefObject<HTMLDivElement>;
14
- flatOptions: OptionShape[];
15
- closeMenu: () => void;
16
- handleEntered: (node: HTMLElement, isAppearing: boolean) => void;
17
- renderSearch: () => ReactNode;
18
- renderOptionsList: () => ReactNode;
19
- };
20
-
21
- export const ListMobile: FC<ListMobileProps> = (props) => {
22
- const { baseProps, ...restProps } = props;
23
- const { isBottomSheet, nativeSelect } = baseProps;
24
-
25
- if (isBottomSheet && !nativeSelect) {
26
- return (
27
- <ListBottomSheetMobile
28
- {...(baseProps as ListBottomSheetMobileRestProps)}
29
- {...restProps}
30
- />
31
- );
32
- }
33
-
34
- if (!isBottomSheet && !nativeSelect) {
35
- return <ListModalMobile {...(baseProps as ListModalMobileRestProps)} {...restProps} />;
36
- }
37
-
38
- return null;
39
- };
@@ -1,98 +0,0 @@
1
- import React, { FC, ReactNode, RefObject } from 'react';
2
- import mergeRefs from 'react-merge-refs';
3
- import cn from 'classnames';
4
-
5
- import { OptionShape } from '@alfalab/core-components-select/typings';
6
- import { getDataTestId } from '@alfalab/core-components-shared';
7
-
8
- import { ListModalMobileRestProps } from './types/types';
9
-
10
- import mobileStyles from '../../mobile.module.css';
11
-
12
- type ListModalMobileProps = {
13
- open: boolean;
14
- menuRef: RefObject<HTMLDivElement>;
15
- scrollableContainerRef: RefObject<HTMLDivElement>;
16
- flatOptions: OptionShape[];
17
- closeMenu: () => void;
18
- handleEntered: (node: HTMLElement, isAppearing: boolean) => void;
19
- renderSearch: () => ReactNode;
20
- renderOptionsList: () => ReactNode;
21
- } & ListModalMobileRestProps;
22
-
23
- export const ListModalMobile: FC<ListModalMobileProps> = (props) => {
24
- const {
25
- ModalMobile,
26
- dataTestId,
27
- open,
28
- modalProps,
29
- modalHeaderProps,
30
- modalFooterProps,
31
- menuRef,
32
- scrollableContainerRef,
33
- label,
34
- placeholder,
35
- onScroll,
36
- flatOptions,
37
- closeMenu,
38
- handleEntered,
39
- renderSearch,
40
- renderOptionsList,
41
- } = props;
42
-
43
- if (ModalMobile) {
44
- const bottomAddons = modalHeaderProps?.bottomAddons;
45
-
46
- return (
47
- <ModalMobile
48
- dataTestId={getDataTestId(dataTestId, 'modal')}
49
- open={open}
50
- hasCloser={true}
51
- {...modalProps}
52
- componentRef={menuRef}
53
- onClose={(...args) => {
54
- closeMenu();
55
- modalProps?.onClose?.(...args);
56
- }}
57
- contentClassName={cn(mobileStyles.sheetContent, modalProps?.contentClassName)}
58
- ref={mergeRefs([
59
- scrollableContainerRef,
60
- modalProps?.ref as React.Ref<HTMLDivElement>,
61
- ])}
62
- wrapperProps={{
63
- ...modalProps?.wrapperProps,
64
- onScroll,
65
- }}
66
- transitionProps={{
67
- ...modalProps?.transitionProps,
68
- onEntered: handleEntered,
69
- }}
70
- >
71
- <ModalMobile.Header
72
- hasCloser={true}
73
- sticky={true}
74
- {...modalHeaderProps}
75
- title={undefined}
76
- bottomAddons={
77
- <React.Fragment>
78
- {renderSearch()}
79
- {typeof bottomAddons === 'function'
80
- ? bottomAddons(flatOptions)
81
- : bottomAddons}
82
- </React.Fragment>
83
- }
84
- >
85
- {modalHeaderProps?.title || label || placeholder}
86
- </ModalMobile.Header>
87
-
88
- <ModalMobile.Content flex={true} className={mobileStyles.modalContent}>
89
- {renderOptionsList()}
90
- </ModalMobile.Content>
91
-
92
- {modalFooterProps?.children && <ModalMobile.Footer {...modalFooterProps} />}
93
- </ModalMobile>
94
- );
95
- }
96
-
97
- return null;
98
- };
@@ -1,4 +0,0 @@
1
- import { getListBottomSheetMobileProps, getListModalMobileProps } from '../helpers';
2
-
3
- export type ListBottomSheetMobileRestProps = ReturnType<typeof getListBottomSheetMobileProps>;
4
- export type ListModalMobileRestProps = ReturnType<typeof getListModalMobileProps>;
File without changes
File without changes
File without changes
File without changes
File without changes