@alfalab/core-components-select 13.0.3 → 13.1.1

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 (266) hide show
  1. package/{Component-21b7a86d.d.ts → Component-7546861a.d.ts} +0 -0
  2. package/{Component-21b7a86d.js → Component-7546861a.js} +27 -17
  3. package/{Component-ed89ed0b.d.ts → Component-ecfd1f2b.d.ts} +0 -0
  4. package/{Component-ed89ed0b.js → Component-ecfd1f2b.js} +2 -2
  5. package/Component.js +6 -2
  6. package/components/arrow/Component.js +1 -1
  7. package/components/arrow/index.css +3 -3
  8. package/components/base-checkmark/Component.d.ts +4 -0
  9. package/components/base-checkmark/Component.js +29 -0
  10. package/components/base-checkmark/index.css +32 -0
  11. package/components/base-checkmark/index.d.ts +1 -0
  12. package/components/base-checkmark/index.js +13 -0
  13. package/components/base-option/Component.d.ts +4 -0
  14. package/components/base-option/Component.js +46 -0
  15. package/components/base-option/index.css +95 -0
  16. package/components/base-option/index.d.ts +1 -0
  17. package/components/base-option/index.js +15 -0
  18. package/components/base-select/Component.js +2 -2
  19. package/components/base-select/index.css +7 -7
  20. package/components/base-select/index.d.ts +1 -1
  21. package/components/base-select/index.js +2 -2
  22. package/components/base-select-mobile/Component.js +10 -5
  23. package/components/base-select-mobile/checkmark/Component.js +8 -3
  24. package/components/base-select-mobile/checkmark/index.css +12 -7
  25. package/components/base-select-mobile/checkmark/index.js +3 -0
  26. package/components/base-select-mobile/index.css +11 -11
  27. package/components/base-select-mobile/index.d.ts +1 -1
  28. package/components/base-select-mobile/index.js +10 -5
  29. package/components/base-select-mobile/options-list/Component.js +2 -2
  30. package/components/base-select-mobile/options-list/index.css +9 -9
  31. package/components/base-select-mobile/options-list/index.js +1 -1
  32. package/components/checkmark/Component.js +5 -2
  33. package/components/checkmark/index.css +11 -7
  34. package/components/checkmark/index.js +2 -0
  35. package/components/field/Component.js +2 -2
  36. package/components/field/index.css +9 -9
  37. package/components/field/index.js +1 -1
  38. package/components/index.d.ts +1 -0
  39. package/components/index.js +11 -5
  40. package/components/native-select/Component.js +1 -1
  41. package/components/native-select/index.js +1 -1
  42. package/components/optgroup/Component.js +1 -1
  43. package/components/optgroup/index.css +8 -8
  44. package/components/option/Component.js +7 -3
  45. package/components/option/index.css +20 -20
  46. package/components/option/index.js +5 -1
  47. package/components/options-list/Component.js +2 -2
  48. package/components/options-list/index.css +6 -6
  49. package/components/options-list/index.js +1 -1
  50. package/components/select-mobile/Component.js +10 -5
  51. package/components/select-mobile/index.d.ts +1 -1
  52. package/components/select-mobile/index.js +10 -5
  53. package/components/select-modal-mobile/Component.js +10 -5
  54. package/components/select-modal-mobile/index.d.ts +1 -1
  55. package/components/select-modal-mobile/index.js +10 -5
  56. package/components/virtual-options-list/Component.js +2 -2
  57. package/components/virtual-options-list/index.css +12 -12
  58. package/components/virtual-options-list/index.js +1 -1
  59. package/cssm/{Component-095a346d.d.ts → Component-c7975bd7.d.ts} +0 -0
  60. package/cssm/{Component-095a346d.js → Component-c7975bd7.js} +25 -12
  61. package/cssm/Component.js +5 -0
  62. package/cssm/components/base-checkmark/Component.d.ts +4 -0
  63. package/cssm/components/base-checkmark/Component.js +28 -0
  64. package/cssm/components/base-checkmark/index.d.ts +1 -0
  65. package/cssm/components/base-checkmark/index.js +14 -0
  66. package/cssm/components/base-checkmark/index.module.css +31 -0
  67. package/cssm/components/base-option/Component.d.ts +4 -0
  68. package/cssm/components/base-option/Component.js +46 -0
  69. package/cssm/components/base-option/index.d.ts +1 -0
  70. package/cssm/components/base-option/index.js +17 -0
  71. package/cssm/components/base-option/index.module.css +93 -0
  72. package/cssm/components/base-select-mobile/Component.js +10 -3
  73. package/cssm/components/base-select-mobile/checkmark/Component.js +7 -2
  74. package/cssm/components/base-select-mobile/checkmark/index.js +3 -0
  75. package/cssm/components/base-select-mobile/checkmark/index.module.css +8 -3
  76. package/cssm/components/base-select-mobile/index.d.ts +1 -1
  77. package/cssm/components/base-select-mobile/index.js +10 -3
  78. package/cssm/components/checkmark/Component.js +4 -1
  79. package/cssm/components/checkmark/index.js +2 -0
  80. package/cssm/components/checkmark/index.module.css +4 -0
  81. package/cssm/components/index.d.ts +1 -0
  82. package/cssm/components/index.js +11 -3
  83. package/cssm/components/optgroup/index.module.css +2 -2
  84. package/cssm/components/option/Component.js +6 -1
  85. package/cssm/components/option/index.js +5 -0
  86. package/cssm/components/select-mobile/Component.js +10 -3
  87. package/cssm/components/select-mobile/index.d.ts +1 -1
  88. package/cssm/components/select-mobile/index.js +10 -3
  89. package/cssm/components/select-modal-mobile/Component.js +10 -3
  90. package/cssm/components/select-modal-mobile/index.d.ts +1 -1
  91. package/cssm/components/select-modal-mobile/index.js +10 -3
  92. package/cssm/index.js +11 -3
  93. package/cssm/presets/index.js +10 -3
  94. package/cssm/presets/useLazyLoading/hook.d.ts +3 -1
  95. package/cssm/presets/useLazyLoading/hook.js +8 -3
  96. package/cssm/presets/useSelectWithApply/hook.js +10 -3
  97. package/cssm/presets/useSelectWithApply/options-list-with-apply/Component.js +10 -3
  98. package/cssm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  99. package/cssm/presets/useSelectWithApply/options-list-with-apply/index.js +10 -3
  100. package/cssm/presets/useSelectWithApply/options-list-with-apply/index.module.css +1 -2
  101. package/cssm/presets/useSelectWithLoading/hook.d.ts +3 -1
  102. package/cssm/presets/useSelectWithLoading/hook.js +7 -2
  103. package/cssm/typings.d.ts +8 -0
  104. package/esm/{Component-ff051dbb.d.ts → Component-42145c7f.d.ts} +0 -0
  105. package/esm/{Component-ff051dbb.js → Component-42145c7f.js} +2 -2
  106. package/esm/{Component-ce96c3e2.d.ts → Component-904366d4.d.ts} +0 -0
  107. package/esm/{Component-ce96c3e2.js → Component-904366d4.js} +27 -17
  108. package/esm/Component.js +6 -2
  109. package/esm/components/arrow/Component.js +1 -1
  110. package/esm/components/arrow/index.css +3 -3
  111. package/esm/components/base-checkmark/Component.d.ts +4 -0
  112. package/esm/components/base-checkmark/Component.js +20 -0
  113. package/esm/components/base-checkmark/index.css +32 -0
  114. package/esm/components/base-checkmark/index.d.ts +1 -0
  115. package/esm/components/base-checkmark/index.js +5 -0
  116. package/esm/components/base-option/Component.d.ts +4 -0
  117. package/esm/components/base-option/Component.js +37 -0
  118. package/esm/components/base-option/index.css +95 -0
  119. package/esm/components/base-option/index.d.ts +1 -0
  120. package/esm/components/base-option/index.js +7 -0
  121. package/esm/components/base-select/Component.js +2 -2
  122. package/esm/components/base-select/index.css +7 -7
  123. package/esm/components/base-select/index.d.ts +1 -1
  124. package/esm/components/base-select/index.js +2 -2
  125. package/esm/components/base-select-mobile/Component.js +10 -5
  126. package/esm/components/base-select-mobile/checkmark/Component.js +8 -3
  127. package/esm/components/base-select-mobile/checkmark/index.css +12 -7
  128. package/esm/components/base-select-mobile/checkmark/index.js +3 -0
  129. package/esm/components/base-select-mobile/index.css +11 -11
  130. package/esm/components/base-select-mobile/index.d.ts +1 -1
  131. package/esm/components/base-select-mobile/index.js +10 -5
  132. package/esm/components/base-select-mobile/options-list/Component.js +2 -2
  133. package/esm/components/base-select-mobile/options-list/index.css +9 -9
  134. package/esm/components/base-select-mobile/options-list/index.js +1 -1
  135. package/esm/components/checkmark/Component.js +5 -2
  136. package/esm/components/checkmark/index.css +11 -7
  137. package/esm/components/checkmark/index.js +2 -0
  138. package/esm/components/field/Component.js +2 -2
  139. package/esm/components/field/index.css +9 -9
  140. package/esm/components/field/index.js +1 -1
  141. package/esm/components/index.d.ts +1 -0
  142. package/esm/components/index.js +10 -5
  143. package/esm/components/native-select/Component.js +1 -1
  144. package/esm/components/native-select/index.js +1 -1
  145. package/esm/components/optgroup/Component.js +1 -1
  146. package/esm/components/optgroup/index.css +8 -8
  147. package/esm/components/option/Component.js +10 -6
  148. package/esm/components/option/index.css +20 -20
  149. package/esm/components/option/index.js +5 -1
  150. package/esm/components/options-list/Component.js +2 -2
  151. package/esm/components/options-list/index.css +6 -6
  152. package/esm/components/options-list/index.js +1 -1
  153. package/esm/components/select-mobile/Component.js +10 -5
  154. package/esm/components/select-mobile/index.d.ts +1 -1
  155. package/esm/components/select-mobile/index.js +10 -5
  156. package/esm/components/select-modal-mobile/Component.js +10 -5
  157. package/esm/components/select-modal-mobile/index.d.ts +1 -1
  158. package/esm/components/select-modal-mobile/index.js +10 -5
  159. package/esm/components/virtual-options-list/Component.js +2 -2
  160. package/esm/components/virtual-options-list/index.css +12 -12
  161. package/esm/components/virtual-options-list/index.js +1 -1
  162. package/esm/index.js +10 -5
  163. package/esm/{intersection-observer-aafd2281.d.ts → intersection-observer-54d01139.d.ts} +0 -0
  164. package/esm/{intersection-observer-aafd2281.js → intersection-observer-54d01139.js} +0 -0
  165. package/esm/presets/index.js +10 -5
  166. package/esm/presets/useLazyLoading/hook.d.ts +3 -1
  167. package/esm/presets/useLazyLoading/hook.js +10 -6
  168. package/esm/presets/useLazyLoading/index.css +2 -2
  169. package/esm/presets/useSelectWithApply/hook.js +10 -5
  170. package/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +10 -5
  171. package/esm/presets/useSelectWithApply/options-list-with-apply/index.css +5 -6
  172. package/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  173. package/esm/presets/useSelectWithApply/options-list-with-apply/index.js +10 -5
  174. package/esm/presets/useSelectWithLoading/hook.d.ts +3 -1
  175. package/esm/presets/useSelectWithLoading/hook.js +9 -5
  176. package/esm/presets/useSelectWithLoading/index.css +2 -2
  177. package/esm/{tslib.es6-7b5f4eba.d.ts → tslib.es6-795118d5.d.ts} +0 -0
  178. package/esm/{tslib.es6-7b5f4eba.js → tslib.es6-795118d5.js} +0 -0
  179. package/esm/typings.d.ts +8 -0
  180. package/index.js +11 -5
  181. package/{intersection-observer-6dcf1728.d.ts → intersection-observer-0340401e.d.ts} +0 -0
  182. package/{intersection-observer-6dcf1728.js → intersection-observer-0340401e.js} +0 -0
  183. package/modern/{Component-b6cd6efa.d.ts → Component-81d1cf96.d.ts} +0 -0
  184. package/modern/{Component-b6cd6efa.js → Component-81d1cf96.js} +35 -26
  185. package/modern/{Component-81ee14d4.d.ts → Component-83edf513.d.ts} +0 -0
  186. package/modern/{Component-81ee14d4.js → Component-83edf513.js} +1 -1
  187. package/modern/Component.js +5 -1
  188. package/modern/components/arrow/Component.js +1 -1
  189. package/modern/components/arrow/index.css +3 -3
  190. package/modern/components/base-checkmark/Component.d.ts +4 -0
  191. package/modern/components/base-checkmark/Component.js +18 -0
  192. package/modern/components/base-checkmark/index.css +32 -0
  193. package/modern/components/base-checkmark/index.d.ts +1 -0
  194. package/modern/components/base-checkmark/index.js +5 -0
  195. package/modern/components/base-option/Component.d.ts +4 -0
  196. package/modern/components/base-option/Component.js +34 -0
  197. package/modern/components/base-option/index.css +95 -0
  198. package/modern/components/base-option/index.d.ts +1 -0
  199. package/modern/components/base-option/index.js +6 -0
  200. package/modern/components/base-select/Component.js +1 -1
  201. package/modern/components/base-select/index.css +7 -7
  202. package/modern/components/base-select/index.d.ts +1 -1
  203. package/modern/components/base-select/index.js +1 -1
  204. package/modern/components/base-select-mobile/Component.js +9 -4
  205. package/modern/components/base-select-mobile/checkmark/Component.js +8 -3
  206. package/modern/components/base-select-mobile/checkmark/index.css +12 -7
  207. package/modern/components/base-select-mobile/checkmark/index.js +3 -0
  208. package/modern/components/base-select-mobile/index.css +11 -11
  209. package/modern/components/base-select-mobile/index.d.ts +1 -1
  210. package/modern/components/base-select-mobile/index.js +9 -4
  211. package/modern/components/base-select-mobile/options-list/Component.js +1 -1
  212. package/modern/components/base-select-mobile/options-list/index.css +9 -9
  213. package/modern/components/checkmark/Component.js +5 -2
  214. package/modern/components/checkmark/index.css +11 -7
  215. package/modern/components/checkmark/index.js +2 -0
  216. package/modern/components/field/Component.js +1 -1
  217. package/modern/components/field/index.css +9 -9
  218. package/modern/components/index.d.ts +1 -0
  219. package/modern/components/index.js +9 -4
  220. package/modern/components/optgroup/Component.js +1 -1
  221. package/modern/components/optgroup/index.css +8 -8
  222. package/modern/components/option/Component.js +9 -5
  223. package/modern/components/option/index.css +20 -20
  224. package/modern/components/option/index.js +4 -0
  225. package/modern/components/options-list/Component.js +1 -1
  226. package/modern/components/options-list/index.css +6 -6
  227. package/modern/components/select-mobile/Component.js +9 -4
  228. package/modern/components/select-mobile/index.d.ts +1 -1
  229. package/modern/components/select-mobile/index.js +9 -4
  230. package/modern/components/select-modal-mobile/Component.js +9 -4
  231. package/modern/components/select-modal-mobile/index.d.ts +1 -1
  232. package/modern/components/select-modal-mobile/index.js +9 -4
  233. package/modern/components/virtual-options-list/Component.js +1 -1
  234. package/modern/components/virtual-options-list/index.css +12 -12
  235. package/modern/index.js +9 -4
  236. package/modern/{intersection-observer-aafd2281.d.ts → intersection-observer-54d01139.d.ts} +0 -0
  237. package/modern/{intersection-observer-aafd2281.js → intersection-observer-54d01139.js} +0 -0
  238. package/modern/presets/index.js +9 -4
  239. package/modern/presets/useLazyLoading/hook.d.ts +3 -1
  240. package/modern/presets/useLazyLoading/hook.js +8 -4
  241. package/modern/presets/useLazyLoading/index.css +2 -2
  242. package/modern/presets/useSelectWithApply/hook.js +9 -4
  243. package/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +9 -4
  244. package/modern/presets/useSelectWithApply/options-list-with-apply/index.css +5 -6
  245. package/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  246. package/modern/presets/useSelectWithApply/options-list-with-apply/index.js +9 -4
  247. package/modern/presets/useSelectWithLoading/hook.d.ts +3 -1
  248. package/modern/presets/useSelectWithLoading/hook.js +8 -4
  249. package/modern/presets/useSelectWithLoading/index.css +2 -2
  250. package/modern/typings.d.ts +8 -0
  251. package/package.json +6 -4
  252. package/presets/index.js +10 -5
  253. package/presets/useLazyLoading/hook.d.ts +3 -1
  254. package/presets/useLazyLoading/hook.js +10 -6
  255. package/presets/useLazyLoading/index.css +2 -2
  256. package/presets/useSelectWithApply/hook.js +10 -5
  257. package/presets/useSelectWithApply/options-list-with-apply/Component.js +10 -5
  258. package/presets/useSelectWithApply/options-list-with-apply/index.css +5 -6
  259. package/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  260. package/presets/useSelectWithApply/options-list-with-apply/index.js +10 -5
  261. package/presets/useSelectWithLoading/hook.d.ts +3 -1
  262. package/presets/useSelectWithLoading/hook.js +8 -4
  263. package/presets/useSelectWithLoading/index.css +2 -2
  264. package/{tslib.es6-e8cb2975.d.ts → tslib.es6-adf850c3.d.ts} +0 -0
  265. package/{tslib.es6-e8cb2975.js → tslib.es6-adf850c3.js} +0 -0
  266. package/typings.d.ts +8 -0
package/cssm/index.js CHANGED
@@ -22,6 +22,11 @@ require('./components/field/index.module.css');
22
22
  var components_field_Component = require('./components/field/Component.js');
23
23
  require('./components/optgroup/index.module.css');
24
24
  var components_optgroup_Component = require('./components/optgroup/Component.js');
25
+ require('@alfalab/core-components/badge');
26
+ require('@alfalab/icons-glyph/CheckmarkCircleMIcon');
27
+ require('@alfalab/icons-glyph/CheckmarkMIcon');
28
+ require('./components/base-select-mobile/checkmark/index.module.css');
29
+ require('./components/base-select-mobile/checkmark/Component.js');
25
30
  require('@alfalab/core-components-checkbox/cssm');
26
31
  require('./components/checkmark/index.module.css');
27
32
  require('./components/checkmark/Component.js');
@@ -34,10 +39,10 @@ var Component = require('./Component.js');
34
39
  require('@alfalab/core-components-bottom-sheet/cssm');
35
40
  require('@alfalab/core-components-modal/cssm/mobile');
36
41
  require('@alfalab/core-components-button/cssm');
37
- var presets_useSelectWithApply_hook = require('./Component-095a346d.js');
42
+ var presets_useSelectWithApply_hook = require('./Component-c7975bd7.js');
38
43
  require('./presets/useSelectWithApply/options-list-with-apply/index.module.css');
39
- require('./components/base-select-mobile/checkmark/index.module.css');
40
- require('./components/base-select-mobile/checkmark/Component.js');
44
+ require('./components/base-checkmark/index.module.css');
45
+ require('./components/base-checkmark/Component.js');
41
46
  require('@alfalab/core-components-base-modal/cssm');
42
47
  require('./components/base-select-mobile/options-list/index.module.css');
43
48
  require('./components/base-select-mobile/options-list/Component.js');
@@ -45,6 +50,8 @@ require('./components/base-select-mobile/index.module.css');
45
50
  require('react-virtual');
46
51
  require('./components/virtual-options-list/index.module.css');
47
52
  var components_virtualOptionsList_Component = require('./components/virtual-options-list/Component.js');
53
+ require('./components/base-option/index.module.css');
54
+ var components_baseOption_Component = require('./components/base-option/Component.js');
48
55
  require('@alfalab/core-components-skeleton/cssm');
49
56
  require('./presets/useSelectWithLoading/index.module.css');
50
57
  var presets_useSelectWithLoading_hook = require('./presets/useSelectWithLoading/hook.js');
@@ -73,5 +80,6 @@ exports.SelectMobile = presets_useSelectWithApply_hook.SelectMobile;
73
80
  exports.SelectModalMobile = presets_useSelectWithApply_hook.SelectModalMobile;
74
81
  exports.useSelectWithApply = presets_useSelectWithApply_hook.useSelectWithApply;
75
82
  exports.VirtualOptionsList = components_virtualOptionsList_Component.VirtualOptionsList;
83
+ exports.BaseOption = components_baseOption_Component.BaseOption;
76
84
  exports.useSelectWithLoading = presets_useSelectWithLoading_hook.useSelectWithLoading;
77
85
  exports.useLazyLoading = presets_useLazyLoading_hook.useLazyLoading;
@@ -22,6 +22,11 @@ require('../components/field/index.module.css');
22
22
  require('../components/field/Component.js');
23
23
  require('../components/optgroup/index.module.css');
24
24
  require('../components/optgroup/Component.js');
25
+ require('@alfalab/core-components/badge');
26
+ require('@alfalab/icons-glyph/CheckmarkCircleMIcon');
27
+ require('@alfalab/icons-glyph/CheckmarkMIcon');
28
+ require('../components/base-select-mobile/checkmark/index.module.css');
29
+ require('../components/base-select-mobile/checkmark/Component.js');
25
30
  require('@alfalab/core-components-checkbox/cssm');
26
31
  require('../components/checkmark/index.module.css');
27
32
  require('../components/checkmark/Component.js');
@@ -34,16 +39,18 @@ require('../Component.js');
34
39
  require('@alfalab/core-components-bottom-sheet/cssm');
35
40
  require('@alfalab/core-components-modal/cssm/mobile');
36
41
  require('@alfalab/core-components-button/cssm');
37
- var presets_useSelectWithApply_hook = require('../Component-095a346d.js');
42
+ var presets_useSelectWithApply_hook = require('../Component-c7975bd7.js');
38
43
  require('./useSelectWithApply/options-list-with-apply/index.module.css');
39
- require('../components/base-select-mobile/checkmark/index.module.css');
40
- require('../components/base-select-mobile/checkmark/Component.js');
44
+ require('../components/base-checkmark/index.module.css');
45
+ require('../components/base-checkmark/Component.js');
41
46
  require('@alfalab/core-components-base-modal/cssm');
42
47
  require('../components/base-select-mobile/options-list/index.module.css');
43
48
  require('../components/base-select-mobile/options-list/Component.js');
44
49
  require('../components/base-select-mobile/index.module.css');
45
50
  require('react-virtual');
46
51
  require('../components/virtual-options-list/index.module.css');
52
+ require('../components/base-option/index.module.css');
53
+ require('../components/base-option/Component.js');
47
54
  require('@alfalab/core-components-skeleton/cssm');
48
55
  require('./useSelectWithLoading/index.module.css');
49
56
  var presets_useSelectWithLoading_hook = require('./useSelectWithLoading/hook.js');
@@ -12,6 +12,8 @@ type useLazyLoadingProps = {
12
12
  initialOffset?: number;
13
13
  /** Скелетон загружаемых элементов */
14
14
  skeleton?: React.ReactNode;
15
+ /** Компонент пункта меню */
16
+ Option?: React.FC<OptionProps>;
15
17
  /**
16
18
  * Функция-загрузчик опций.
17
19
  * @param offset - текущая страница
@@ -24,7 +26,7 @@ type useLazyLoadingProps = {
24
26
  */
25
27
  optionsFetcher(offset: number, limit: number, queryString?: string): Promise<OptionsFetcherResponse>;
26
28
  };
27
- declare function useLazyLoading({ limit, initialOffset, optionsFetcher, skeleton, }: useLazyLoadingProps): {
29
+ declare function useLazyLoading({ limit, initialOffset, optionsFetcher, skeleton, Option, }: useLazyLoadingProps): {
28
30
  optionsProps: {
29
31
  Option: (props: OptionProps) => JSX.Element;
30
32
  options: OptionShape[];
@@ -5,6 +5,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var tslib_es6 = require('../../tslib.es6-0857346e.js');
6
6
  var React = require('react');
7
7
  require('classnames');
8
+ require('@alfalab/core-components/badge');
9
+ require('@alfalab/icons-glyph/CheckmarkCircleMIcon');
10
+ require('@alfalab/icons-glyph/CheckmarkMIcon');
11
+ require('../../components/base-select-mobile/checkmark/index.module.css');
12
+ require('../../components/base-select-mobile/checkmark/Component.js');
8
13
  require('@alfalab/core-components-checkbox/cssm');
9
14
  require('../../components/checkmark/index.module.css');
10
15
  require('../../components/checkmark/Component.js');
@@ -41,7 +46,7 @@ var actions = {
41
46
  },
42
47
  };
43
48
  function useLazyLoading(_a) {
44
- var _b = _a.limit, limit = _b === void 0 ? 10 : _b, _c = _a.initialOffset, initialOffset = _c === void 0 ? 0 : _c, optionsFetcher = _a.optionsFetcher, _d = _a.skeleton, skeleton = _d === void 0 ? React__default['default'].createElement(coreComponentsSkeleton.Skeleton, { className: styles__default['default'].skeleton, visible: true }) : _d;
49
+ var _b = _a.limit, limit = _b === void 0 ? 10 : _b, _c = _a.initialOffset, initialOffset = _c === void 0 ? 0 : _c, optionsFetcher = _a.optionsFetcher, _d = _a.skeleton, skeleton = _d === void 0 ? React__default['default'].createElement(coreComponentsSkeleton.Skeleton, { className: styles__default['default'].skeleton, visible: true }) : _d, _e = _a.Option, Option = _e === void 0 ? components_option_Component.Option : _e;
45
50
  var initialOptions = [];
46
51
  var initialLoading = false;
47
52
  var lazyLoadingInitialState = {
@@ -77,7 +82,7 @@ function useLazyLoading(_a) {
77
82
  }
78
83
  }
79
84
  };
80
- var _e = React.useReducer(lazyLoadingReducer, lazyLoadingInitialState), _f = _e[0], opened = _f.opened, offset = _f.offset, options = _f.options, loading = _f.loading, allOptionsLoaded = _f.allOptionsLoaded, queryString = _f.queryString, dispatch = _e[1];
85
+ var _f = React.useReducer(lazyLoadingReducer, lazyLoadingInitialState), _g = _f[0], opened = _g.opened, offset = _g.offset, options = _g.options, loading = _g.loading, allOptionsLoaded = _g.allOptionsLoaded, queryString = _g.queryString, dispatch = _f[1];
81
86
  var abortFetchingOptionsRef = React.useRef();
82
87
  var fetchNextOffsetOptions = React.useCallback(function () {
83
88
  dispatch(actions.fetchOptionsStart());
@@ -177,7 +182,7 @@ function useLazyLoading(_a) {
177
182
  }, DEBOUNCE_TIMEOUT);
178
183
  /* eslint-enable */
179
184
  }, []);
180
- var renderOption = React.useCallback(function (props) { return (React__default['default'].createElement(components_option_Component.Option, tslib_es6.__assign({}, props, { highlighted: loading ? false : props.highlighted }))); }, [loading]);
185
+ var renderOption = function (props) { return (React__default['default'].createElement(Option, tslib_es6.__assign({}, props, { highlighted: loading ? false : props.highlighted }))); };
181
186
  var skeletonOptions = React.useMemo(function () {
182
187
  return Array(loading ? limit : 0)
183
188
  .fill(0)
@@ -22,6 +22,11 @@ require('../../components/field/index.module.css');
22
22
  require('../../components/field/Component.js');
23
23
  require('../../components/optgroup/index.module.css');
24
24
  require('../../components/optgroup/Component.js');
25
+ require('@alfalab/core-components/badge');
26
+ require('@alfalab/icons-glyph/CheckmarkCircleMIcon');
27
+ require('@alfalab/icons-glyph/CheckmarkMIcon');
28
+ require('../../components/base-select-mobile/checkmark/index.module.css');
29
+ require('../../components/base-select-mobile/checkmark/Component.js');
25
30
  require('@alfalab/core-components-checkbox/cssm');
26
31
  require('../../components/checkmark/index.module.css');
27
32
  require('../../components/checkmark/Component.js');
@@ -34,16 +39,18 @@ require('../../Component.js');
34
39
  require('@alfalab/core-components-bottom-sheet/cssm');
35
40
  require('@alfalab/core-components-modal/cssm/mobile');
36
41
  require('@alfalab/core-components-button/cssm');
37
- var presets_useSelectWithApply_hook = require('../../Component-095a346d.js');
42
+ var presets_useSelectWithApply_hook = require('../../Component-c7975bd7.js');
38
43
  require('./options-list-with-apply/index.module.css');
39
- require('../../components/base-select-mobile/checkmark/index.module.css');
40
- require('../../components/base-select-mobile/checkmark/Component.js');
44
+ require('../../components/base-checkmark/index.module.css');
45
+ require('../../components/base-checkmark/Component.js');
41
46
  require('@alfalab/core-components-base-modal/cssm');
42
47
  require('../../components/base-select-mobile/options-list/index.module.css');
43
48
  require('../../components/base-select-mobile/options-list/Component.js');
44
49
  require('../../components/base-select-mobile/index.module.css');
45
50
  require('react-virtual');
46
51
  require('../../components/virtual-options-list/index.module.css');
52
+ require('../../components/base-option/index.module.css');
53
+ require('../../components/base-option/Component.js');
47
54
  require('@alfalab/core-components-skeleton/cssm');
48
55
  require('../useSelectWithLoading/index.module.css');
49
56
  require('../useLazyLoading/index.module.css');
@@ -22,6 +22,11 @@ require('../../../components/field/index.module.css');
22
22
  require('../../../components/field/Component.js');
23
23
  require('../../../components/optgroup/index.module.css');
24
24
  require('../../../components/optgroup/Component.js');
25
+ require('@alfalab/core-components/badge');
26
+ require('@alfalab/icons-glyph/CheckmarkCircleMIcon');
27
+ require('@alfalab/icons-glyph/CheckmarkMIcon');
28
+ require('../../../components/base-select-mobile/checkmark/index.module.css');
29
+ require('../../../components/base-select-mobile/checkmark/Component.js');
25
30
  require('@alfalab/core-components-checkbox/cssm');
26
31
  require('../../../components/checkmark/index.module.css');
27
32
  require('../../../components/checkmark/Component.js');
@@ -34,16 +39,18 @@ require('../../../Component.js');
34
39
  require('@alfalab/core-components-bottom-sheet/cssm');
35
40
  require('@alfalab/core-components-modal/cssm/mobile');
36
41
  require('@alfalab/core-components-button/cssm');
37
- var presets_useSelectWithApply_hook = require('../../../Component-095a346d.js');
42
+ var presets_useSelectWithApply_hook = require('../../../Component-c7975bd7.js');
38
43
  require('./index.module.css');
39
- require('../../../components/base-select-mobile/checkmark/index.module.css');
40
- require('../../../components/base-select-mobile/checkmark/Component.js');
44
+ require('../../../components/base-checkmark/index.module.css');
45
+ require('../../../components/base-checkmark/Component.js');
41
46
  require('@alfalab/core-components-base-modal/cssm');
42
47
  require('../../../components/base-select-mobile/options-list/index.module.css');
43
48
  require('../../../components/base-select-mobile/options-list/Component.js');
44
49
  require('../../../components/base-select-mobile/index.module.css');
45
50
  require('react-virtual');
46
51
  require('../../../components/virtual-options-list/index.module.css');
52
+ require('../../../components/base-option/index.module.css');
53
+ require('../../../components/base-option/Component.js');
47
54
  require('@alfalab/core-components-skeleton/cssm');
48
55
  require('../../useSelectWithLoading/index.module.css');
49
56
  require('../../useLazyLoading/index.module.css');
@@ -1 +1 @@
1
- export * from "../../../Component-095a346d";
1
+ export * from "../../../Component-c7975bd7";
@@ -22,6 +22,11 @@ require('../../../components/field/index.module.css');
22
22
  require('../../../components/field/Component.js');
23
23
  require('../../../components/optgroup/index.module.css');
24
24
  require('../../../components/optgroup/Component.js');
25
+ require('@alfalab/core-components/badge');
26
+ require('@alfalab/icons-glyph/CheckmarkCircleMIcon');
27
+ require('@alfalab/icons-glyph/CheckmarkMIcon');
28
+ require('../../../components/base-select-mobile/checkmark/index.module.css');
29
+ require('../../../components/base-select-mobile/checkmark/Component.js');
25
30
  require('@alfalab/core-components-checkbox/cssm');
26
31
  require('../../../components/checkmark/index.module.css');
27
32
  require('../../../components/checkmark/Component.js');
@@ -34,16 +39,18 @@ require('../../../Component.js');
34
39
  require('@alfalab/core-components-bottom-sheet/cssm');
35
40
  require('@alfalab/core-components-modal/cssm/mobile');
36
41
  require('@alfalab/core-components-button/cssm');
37
- var presets_useSelectWithApply_hook = require('../../../Component-095a346d.js');
42
+ var presets_useSelectWithApply_hook = require('../../../Component-c7975bd7.js');
38
43
  require('./index.module.css');
39
- require('../../../components/base-select-mobile/checkmark/index.module.css');
40
- require('../../../components/base-select-mobile/checkmark/Component.js');
44
+ require('../../../components/base-checkmark/index.module.css');
45
+ require('../../../components/base-checkmark/Component.js');
41
46
  require('@alfalab/core-components-base-modal/cssm');
42
47
  require('../../../components/base-select-mobile/options-list/index.module.css');
43
48
  require('../../../components/base-select-mobile/options-list/Component.js');
44
49
  require('../../../components/base-select-mobile/index.module.css');
45
50
  require('react-virtual');
46
51
  require('../../../components/virtual-options-list/index.module.css');
52
+ require('../../../components/base-option/index.module.css');
53
+ require('../../../components/base-option/Component.js');
47
54
  require('@alfalab/core-components-skeleton/cssm');
48
55
  require('../../useSelectWithLoading/index.module.css');
49
56
  require('../../useLazyLoading/index.module.css');
@@ -13,7 +13,6 @@
13
13
  :root {
14
14
  --gap-xs: 8px;
15
15
  --gap-s: 12px;
16
- --gap-m: 16px;
17
16
  }
18
17
  :root {
19
18
 
@@ -27,7 +26,7 @@
27
26
  }
28
27
  .footer {
29
28
  background: var(--color-light-bg-primary);
30
- padding: var(--gap-s) var(--gap-s) var(--gap-m);
29
+ padding: var(--gap-s);
31
30
  outline: none
32
31
  }
33
32
  .footer > * + * {
@@ -1,10 +1,12 @@
1
1
  /// <reference types="react" />
2
+ import React from 'react';
2
3
  import { BaseSelectProps, OptionProps, OptionShape } from "../../typings";
3
4
  type useSelectWithLoadingProps = {
4
5
  loading?: boolean;
5
6
  visibleOptions?: BaseSelectProps['visibleOptions'];
7
+ Option?: React.FC<OptionProps>;
6
8
  };
7
- declare function useSelectWithLoading({ loading, visibleOptions, }: useSelectWithLoadingProps): {
9
+ declare function useSelectWithLoading({ loading, visibleOptions, Option, }: useSelectWithLoadingProps): {
8
10
  Option: (props: OptionProps) => JSX.Element;
9
11
  options: OptionShape[];
10
12
  } | null;
@@ -5,6 +5,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var tslib_es6 = require('../../tslib.es6-0857346e.js');
6
6
  var React = require('react');
7
7
  require('classnames');
8
+ require('@alfalab/core-components/badge');
9
+ require('@alfalab/icons-glyph/CheckmarkCircleMIcon');
10
+ require('@alfalab/icons-glyph/CheckmarkMIcon');
11
+ require('../../components/base-select-mobile/checkmark/index.module.css');
12
+ require('../../components/base-select-mobile/checkmark/Component.js');
8
13
  require('@alfalab/core-components-checkbox/cssm');
9
14
  require('../../components/checkmark/index.module.css');
10
15
  require('../../components/checkmark/Component.js');
@@ -19,8 +24,8 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
19
24
  var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
20
25
 
21
26
  function useSelectWithLoading(_a) {
22
- var _b = _a.loading, loading = _b === void 0 ? false : _b, _c = _a.visibleOptions, visibleOptions = _c === void 0 ? 6 : _c;
23
- var renderOption = React.useCallback(function (props) { return (React__default['default'].createElement(components_option_Component.Option, tslib_es6.__assign({}, props, { Checkmark: null, highlighted: loading ? false : props.highlighted }))); }, [loading]);
27
+ var _b = _a.loading, loading = _b === void 0 ? false : _b, _c = _a.visibleOptions, visibleOptions = _c === void 0 ? 6 : _c, _d = _a.Option, Option = _d === void 0 ? components_option_Component.Option : _d;
28
+ var renderOption = function (props) { return (React__default['default'].createElement(Option, tslib_es6.__assign({}, props, { Checkmark: null, highlighted: loading ? false : props.highlighted }))); };
24
29
  var options = Array(visibleOptions)
25
30
  .fill(0)
26
31
  .map(function (_, key) { return ({
package/cssm/typings.d.ts CHANGED
@@ -516,6 +516,14 @@ type OptionProps = {
516
516
  * Идентификатор для систем автоматизированного тестирования
517
517
  */
518
518
  dataTestId?: string;
519
+ /**
520
+ * Позиция иконки "галочки"
521
+ */
522
+ checkmarkPosition?: 'before' | 'after';
523
+ /**
524
+ * Мобильная верcия option.
525
+ */
526
+ mobile?: boolean;
519
527
  };
520
528
  type CheckmarkProps = {
521
529
  /**
@@ -1,4 +1,4 @@
1
- import { a as __assign, b as __spreadArray } from './tslib.es6-7b5f4eba.js';
1
+ import { a as __assign, b as __spreadArray } from './tslib.es6-795118d5.js';
2
2
  import React, { forwardRef, useRef, useMemo, useCallback, useEffect } from 'react';
3
3
  import cn from 'classnames';
4
4
  import mergeRefs from 'react-merge-refs';
@@ -14,7 +14,7 @@ var getDataTestId = function (dataTestId, element) {
14
14
  return dataTestId ? "" + dataTestId + elementPart : undefined;
15
15
  };
16
16
 
17
- var styles = {"component":"select__component_kmgc8","popoverInner":"select__popoverInner_kmgc8","optionsList":"select__optionsList_kmgc8","nativeSelect":"select__nativeSelect_kmgc8","block":"select__block_kmgc8"};
17
+ var styles = {"component":"select__component_u7ia8","popoverInner":"select__popoverInner_u7ia8","optionsList":"select__optionsList_u7ia8","nativeSelect":"select__nativeSelect_u7ia8","block":"select__block_u7ia8"};
18
18
  require('./components/base-select/index.css')
19
19
 
20
20
  var BaseSelect = forwardRef(function (_a, ref) {
@@ -1,4 +1,4 @@
1
- import { _ as __rest, a as __assign, b as __spreadArray } from './tslib.es6-7b5f4eba.js';
1
+ import { _ as __rest, a as __assign, b as __spreadArray } from './tslib.es6-795118d5.js';
2
2
  import React, { useMemo, useState, useRef, useCallback, useEffect, forwardRef } from 'react';
3
3
  import cn from 'classnames';
4
4
  import '@alfalab/icons-glyph/ChevronDownMIcon';
@@ -6,11 +6,15 @@ import { Arrow } from './components/arrow/Component.js';
6
6
  import mergeRefs from 'react-merge-refs';
7
7
  import { useMultipleSelection, useCombobox } from 'downshift';
8
8
  import '@alfalab/hooks';
9
- import { g as getDataTestId } from './Component-ff051dbb.js';
9
+ import { g as getDataTestId } from './Component-42145c7f.js';
10
10
  import { processOptions } from './utils.js';
11
11
  import '@alfalab/core-components-form-control/esm';
12
12
  import { Field } from './components/field/Component.js';
13
13
  import { Optgroup } from './components/optgroup/Component.js';
14
+ import '@alfalab/core-components/badge';
15
+ import '@alfalab/icons-glyph/CheckmarkCircleMIcon';
16
+ import '@alfalab/icons-glyph/CheckmarkMIcon';
17
+ import { Checkmark } from './components/base-select-mobile/checkmark/Component.js';
14
18
  import '@alfalab/core-components-checkbox/esm';
15
19
  import { Option } from './components/option/Component.js';
16
20
  import '@alfalab/core-components-scrollbar/esm';
@@ -19,11 +23,12 @@ import './Component.js';
19
23
  import { BottomSheet } from '@alfalab/core-components-bottom-sheet/esm';
20
24
  import { ModalMobile } from '@alfalab/core-components-modal/esm/mobile';
21
25
  import { Button } from '@alfalab/core-components-button/esm';
22
- import { Checkmark } from './components/base-select-mobile/checkmark/Component.js';
26
+ import { BaseCheckmark } from './components/base-checkmark/Component.js';
23
27
  import { OptionsList as OptionsList$1 } from './components/base-select-mobile/options-list/Component.js';
24
28
  import 'react-virtual';
29
+ import { BaseOption } from './components/base-option/Component.js';
25
30
  import '@alfalab/core-components-skeleton/esm';
26
- import './intersection-observer-aafd2281.js';
31
+ import './intersection-observer-54d01139.js';
27
32
 
28
33
  var SELECT_ALL_KEY = 'select_all';
29
34
  var selectAllOption = { key: SELECT_ALL_KEY, content: 'Выбрать все' };
@@ -90,7 +95,7 @@ function useSelectWithApply(_a) {
90
95
  };
91
96
  }
92
97
 
93
- var styles = {"footer":"select__footer_izxok","withBorder":"select__withBorder_izxok"};
98
+ var styles = {"footer":"select__footer_crag3","withBorder":"select__withBorder_crag3"};
94
99
  require('./presets/useSelectWithApply/options-list-with-apply/index.css')
95
100
 
96
101
  var OptionsListWithApply = forwardRef(function (_a, ref) {
@@ -136,7 +141,7 @@ var OptionsListWithApply = forwardRef(function (_a, ref) {
136
141
  showClear && (React.createElement(Button, { size: 'xxs', view: 'secondary', onClick: handleClear }, "\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C"))) })));
137
142
  });
138
143
 
139
- var styles$1 = {"component":"select__component_1pk0l","popoverInner":"select__popoverInner_1pk0l","sheet":"select__sheet_1pk0l","sheetContent":"select__sheetContent_1pk0l","sheetContainer":"select__sheetContainer_1pk0l","block":"select__block_1pk0l","option":"select__option_1pk0l","optionGroup":"select__optionGroup_1pk0l"};
144
+ var styles$1 = {"component":"select__component_16wu7","popoverInner":"select__popoverInner_16wu7","sheet":"select__sheet_16wu7","sheetContent":"select__sheetContent_16wu7","sheetContainer":"select__sheetContainer_16wu7","block":"select__block_16wu7","option":"select__option_16wu7","optionGroup":"select__optionGroup_16wu7"};
140
145
  require('./components/base-select-mobile/index.css')
141
146
 
142
147
  var BaseSelectMobile = forwardRef(function (_a, ref) {
@@ -279,14 +284,19 @@ var BaseSelectMobile = forwardRef(function (_a, ref) {
279
284
  openMenu();
280
285
  }
281
286
  };
282
- var getOptionProps = function (option, index) { return (__assign(__assign({}, optionProps), { className: cn(styles$1.option, optionClassName), innerProps: getItemProps({
283
- index: index,
284
- item: option,
285
- disabled: option.disabled,
286
- onMouseDown: function (event) { return event.preventDefault(); },
287
- }), multiple: multiple, index: index, option: option, size: optionsSize, disabled: option.disabled, highlighted: index === highlightedIndex, selected: selectedItems.includes(option), dataTestId: getDataTestId(dataTestId, 'option'),
288
- // eslint-disable-next-line react/no-unstable-nested-components
289
- Checkmark: function () { return React.createElement(Checkmark, { selected: selectedItems.includes(option) }); } })); };
287
+ var getOptionProps = function (option, index) {
288
+ var selectedItem = selectedItems.includes(option);
289
+ return __assign(__assign({}, optionProps), { mobile: true, className: cn(styles$1.option, optionClassName), innerProps: getItemProps({
290
+ index: index,
291
+ item: option,
292
+ disabled: option.disabled,
293
+ onMouseDown: function (event) { return event.preventDefault(); },
294
+ }), multiple: multiple, index: index, option: option, size: optionsSize, disabled: option.disabled, highlighted: index === highlightedIndex, selected: selectedItem, dataTestId: getDataTestId(dataTestId, 'option'),
295
+ // eslint-disable-next-line react/no-unstable-nested-components
296
+ Checkmark: function () {
297
+ return Option$1 === BaseOption ? (React.createElement(BaseCheckmark, { selected: selectedItem, multiple: multiple })) : (React.createElement(Checkmark, { selected: selectedItem }));
298
+ } });
299
+ };
290
300
  useEffect(function () {
291
301
  if (defaultOpen)
292
302
  openMenu();
@@ -328,10 +338,10 @@ var BaseSelectMobile = forwardRef(function (_a, ref) {
328
338
  }, dataTestId: getDataTestId(dataTestId, 'field') }, fieldProps)),
329
339
  name && renderValue(),
330
340
  isBottomSheet ? (React.createElement(BottomSheet, __assign({ open: open, onClose: handleClose, className: styles$1.sheet, contentClassName: styles$1.sheetContent, containerClassName: styles$1.sheetContainer, title: placeholder, actionButton: footer, stickyHeader: true, hasCloser: true, swipeable: swipeable }, bottomSheetProps),
331
- React.createElement("div", __assign({}, menuProps, { className: cn(optionsListClassName, styles$1.optionsList) }),
341
+ React.createElement("div", __assign({}, menuProps, { className: optionsListClassName }),
332
342
  React.createElement(OptionsListWithApply, __assign({}, optionsListProps, { flatOptions: flatOptions, highlightedIndex: highlightedIndex, size: size, options: options, OptionsList: OptionsList$1, Optgroup: Optgroup$1, Option: Option$1, selectedItems: selectedItems, setSelectedItems: setSelectedItems, toggleMenu: toggleMenu, getOptionProps: getOptionProps, dataTestId: getDataTestId(dataTestId, 'options-list'), optionGroupClassName: cn(styles$1.optionGroup, optionGroupClassName), showFooter: multiple, onApply: handleApply, onClear: handleClear }))))) : (React.createElement(ModalMobile, { open: open, onClose: handleClose, contentClassName: styles$1.sheetContent, hasCloser: true },
333
- React.createElement(ModalMobile.Header, { hasCloser: true, title: placeholder, sticky: true, className: styles$1.sticky }),
334
- React.createElement("div", __assign({}, menuProps, { className: cn(optionsListClassName, styles$1.optionsList) }),
343
+ React.createElement(ModalMobile.Header, { hasCloser: true, title: placeholder, sticky: true }),
344
+ React.createElement("div", __assign({}, menuProps, { className: optionsListClassName }),
335
345
  React.createElement(OptionsListWithApply, __assign({}, optionsListProps, { flatOptions: flatOptions, highlightedIndex: highlightedIndex, size: size, options: options, OptionsList: OptionsList$1, Optgroup: Optgroup$1, Option: Option$1, selectedItems: selectedItems, setSelectedItems: setSelectedItems, toggleMenu: toggleMenu, getOptionProps: getOptionProps, dataTestId: getDataTestId(dataTestId, 'options-list'), optionGroupClassName: cn(styles$1.optionGroup, optionGroupClassName), showFooter: multiple, onApply: handleApply, onClear: handleClear })))))));
336
346
  });
337
347
 
package/esm/Component.js CHANGED
@@ -1,4 +1,4 @@
1
- import { _ as __rest, a as __assign } from './tslib.es6-7b5f4eba.js';
1
+ import { _ as __rest, a as __assign } from './tslib.es6-795118d5.js';
2
2
  import React, { forwardRef } from 'react';
3
3
  import 'classnames';
4
4
  import '@alfalab/icons-glyph/ChevronDownMIcon';
@@ -8,12 +8,16 @@ import '@juggle/resize-observer';
8
8
  import 'downshift';
9
9
  import '@alfalab/core-components-popover/esm';
10
10
  import '@alfalab/hooks';
11
- import { B as BaseSelect } from './Component-ff051dbb.js';
11
+ import { B as BaseSelect } from './Component-42145c7f.js';
12
12
  import './utils.js';
13
13
  import './components/native-select/Component.js';
14
14
  import '@alfalab/core-components-form-control/esm';
15
15
  import { Field } from './components/field/Component.js';
16
16
  import { Optgroup } from './components/optgroup/Component.js';
17
+ import '@alfalab/core-components/badge';
18
+ import '@alfalab/icons-glyph/CheckmarkCircleMIcon';
19
+ import '@alfalab/icons-glyph/CheckmarkMIcon';
20
+ import './components/base-select-mobile/checkmark/Component.js';
17
21
  import '@alfalab/core-components-checkbox/esm';
18
22
  import './components/checkmark/Component.js';
19
23
  import { Option } from './components/option/Component.js';
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import cn from 'classnames';
3
3
  import { ChevronDownMIcon } from '@alfalab/icons-glyph/ChevronDownMIcon';
4
4
 
5
- var styles = {"arrow":"select__arrow_1w4em","open":"select__open_1w4em"};
5
+ var styles = {"arrow":"select__arrow_1lcti","open":"select__open_1lcti"};
6
6
  require('./index.css')
7
7
 
8
8
  var Arrow = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: 1g38u */
1
+ /* hash: 15r8t */
2
2
  :root {
3
3
  --color-light-graphic-primary: #0b1f35;
4
4
  }
@@ -24,7 +24,7 @@
24
24
 
25
25
  /* optgroup */
26
26
  }
27
- .select__arrow_1w4em {
27
+ .select__arrow_1lcti {
28
28
  display: block;
29
29
  width: 24px;
30
30
  height: 24px;
@@ -32,6 +32,6 @@
32
32
 
33
33
  transition: transform 0.15s ease-in-out, opacity 0.2s ease;
34
34
  }
35
- .select__open_1w4em {
35
+ .select__open_1lcti {
36
36
  transform: var(--arrow-transform);
37
37
  }
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ import { CheckmarkProps } from "../../typings";
3
+ declare const BaseCheckmark: ({ selected, disabled, className, multiple, }: CheckmarkProps) => JSX.Element;
4
+ export { BaseCheckmark };
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import cn from 'classnames';
3
+ import { CheckmarkMIcon } from '@alfalab/icons-glyph/CheckmarkMIcon';
4
+ import { Checkbox } from '@alfalab/core-components-checkbox/esm';
5
+
6
+ var styles = {"checkmark":"select__checkmark_678c4","single":"select__single_678c4","selected":"select__selected_678c4"};
7
+ require('./index.css')
8
+
9
+ var BaseCheckmark = function (_a) {
10
+ var _b;
11
+ var selected = _a.selected, _c = _a.disabled, disabled = _c === void 0 ? false : _c, className = _a.className, multiple = _a.multiple;
12
+ var checkmarkClassNames = cn(styles.checkmark, className, (_b = {},
13
+ _b[styles.multiple] = multiple,
14
+ _b[styles.single] = !multiple,
15
+ _b[styles.selected] = selected,
16
+ _b));
17
+ return multiple ? (React.createElement(Checkbox, { checked: selected, disabled: disabled, className: checkmarkClassNames, size: 'm', onClick: function (event) { return event.stopPropagation(); } })) : (React.createElement(CheckmarkMIcon, { className: checkmarkClassNames }));
18
+ };
19
+
20
+ export { BaseCheckmark };
@@ -0,0 +1,32 @@
1
+ /* hash: 141zh */
2
+ :root {
3
+
4
+ /* Hard */
5
+
6
+ /* Up */
7
+
8
+ /* Hard up */
9
+ }
10
+ :root {
11
+
12
+ /* options list */
13
+
14
+ /* option */
15
+
16
+ /* checkmark */
17
+
18
+ /* optgroup */
19
+ }
20
+ .select__checkmark_678c4 {
21
+ flex-shrink: 0;
22
+ box-sizing: border-box;
23
+ }
24
+ .select__single_678c4 {
25
+ display: flex;
26
+ align-items: center;
27
+ justify-content: center;
28
+ opacity: 0
29
+ }
30
+ .select__single_678c4.select__selected_678c4 {
31
+ opacity: 1;
32
+ }
@@ -0,0 +1 @@
1
+ export * from "./Component";
@@ -0,0 +1,5 @@
1
+ import 'react';
2
+ import 'classnames';
3
+ import '@alfalab/icons-glyph/CheckmarkMIcon';
4
+ import '@alfalab/core-components-checkbox/esm';
5
+ export { BaseCheckmark } from './Component.js';
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ import { OptionProps } from "../../typings";
3
+ declare const BaseOption: FC<OptionProps>;
4
+ export { BaseOption };
@@ -0,0 +1,37 @@
1
+ import { a as __assign } from '../../tslib.es6-795118d5.js';
2
+ import React, { isValidElement } from 'react';
3
+ import cn from 'classnames';
4
+ import '@alfalab/icons-glyph/CheckmarkMIcon';
5
+ import '@alfalab/core-components-checkbox/esm';
6
+ import { BaseCheckmark } from '../base-checkmark/Component.js';
7
+
8
+ var styles = {"option":"select__option_8wful","disabled":"select__disabled_8wful","checkmarkBefore":"select__checkmarkBefore_8wful","checkmarkAfter":"select__checkmarkAfter_8wful","textContent":"select__textContent_8wful","mobileTextContent":"select__mobileTextContent_8wful","selected":"select__selected_8wful","highlighted":"select__highlighted_8wful","content":"select__content_8wful"};
9
+ require('./index.css')
10
+
11
+ var BaseOption = function (_a) {
12
+ var _b;
13
+ var className = _a.className, option = _a.option, children = _a.children, selected = _a.selected, highlighted = _a.highlighted, disabled = _a.disabled, multiple = _a.multiple, _c = _a.Checkmark, Checkmark = _c === void 0 ? BaseCheckmark : _c, _d = _a.checkmarkPosition, checkmarkPosition = _d === void 0 ? multiple ? 'before' : 'after' : _d, innerProps = _a.innerProps, dataTestId = _a.dataTestId, _e = _a.mobile, mobile = _e === void 0 ? false : _e;
14
+ var content = children || option.content || option.key;
15
+ var _f = option.showCheckMark, showCheckMark = _f === void 0 ? true : _f;
16
+ var isTextContent = !isValidElement(content);
17
+ var renderCheckmark = function () {
18
+ if (Checkmark && showCheckMark) {
19
+ return React.createElement(Checkmark, { disabled: disabled, selected: selected, multiple: multiple });
20
+ }
21
+ return null;
22
+ };
23
+ return (React.createElement("div", __assign({}, innerProps, { className: cn(styles.option, className, (_b = {},
24
+ _b[styles.highlighted] = highlighted,
25
+ _b[styles.selected] = selected,
26
+ _b[styles.disabled] = disabled,
27
+ _b[styles.textContent] = isTextContent && !mobile,
28
+ _b[styles.mobileTextContent] = isTextContent && mobile,
29
+ _b[styles.checkmarkAfter] = !isTextContent && checkmarkPosition === 'after',
30
+ _b[styles.checkmarkBefore] = !isTextContent && checkmarkPosition === 'before',
31
+ _b)), "data-test-id": dataTestId }),
32
+ checkmarkPosition === 'before' && renderCheckmark(),
33
+ React.createElement("div", { className: cn(styles.content) }, content),
34
+ checkmarkPosition === 'after' && renderCheckmark()));
35
+ };
36
+
37
+ export { BaseOption };