@alfalab/core-components-select 10.6.4 → 10.6.7

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 (242) hide show
  1. package/CHANGELOG.md +130 -130
  2. package/dist/Component-a1a4a76b.d.ts +5 -0
  3. package/dist/Component-a1a4a76b.js +247 -0
  4. package/dist/Component-d0f16ea7.d.ts +33 -0
  5. package/dist/Component-d0f16ea7.js +359 -0
  6. package/dist/Component.d.ts +1 -1
  7. package/dist/Component.js +2 -2
  8. package/dist/components/arrow/Component.js +1 -1
  9. package/dist/components/arrow/index.css +3 -3
  10. package/dist/components/base-select/Component.d.ts +0 -5
  11. package/dist/components/base-select/Component.js +11 -241
  12. package/dist/components/base-select/index.css +7 -7
  13. package/dist/components/base-select/index.d.ts +1 -1
  14. package/dist/components/base-select/index.js +2 -2
  15. package/dist/components/checkmark/Component.js +1 -1
  16. package/dist/components/checkmark/index.css +7 -7
  17. package/dist/components/field/Component.js +2 -2
  18. package/dist/components/field/index.css +9 -9
  19. package/dist/components/field/index.js +1 -1
  20. package/dist/components/index.d.ts +1 -0
  21. package/dist/components/index.js +12 -2
  22. package/dist/components/native-select/Component.js +1 -1
  23. package/dist/components/native-select/index.js +1 -1
  24. package/dist/components/optgroup/Component.d.ts +1 -1
  25. package/dist/components/optgroup/Component.js +3 -3
  26. package/dist/components/optgroup/index.css +6 -6
  27. package/dist/components/option/Component.js +2 -2
  28. package/dist/components/option/index.css +20 -20
  29. package/dist/components/option/index.js +1 -1
  30. package/dist/components/options-list/Component.js +4 -4
  31. package/dist/components/options-list/index.css +6 -6
  32. package/dist/components/options-list/index.js +1 -1
  33. package/dist/components/select-mobile/Component.d.ts +0 -0
  34. package/dist/components/select-mobile/Component.js +38 -0
  35. package/dist/components/select-mobile/checkmark/Component.d.ts +4 -0
  36. package/dist/components/select-mobile/checkmark/Component.js +24 -0
  37. package/dist/components/select-mobile/checkmark/index.css +37 -0
  38. package/dist/components/select-mobile/checkmark/index.d.ts +1 -0
  39. package/dist/components/select-mobile/checkmark/index.js +11 -0
  40. package/dist/components/select-mobile/index.css +68 -0
  41. package/dist/components/select-mobile/index.d.ts +1 -0
  42. package/dist/components/select-mobile/index.js +38 -0
  43. package/dist/components/select-mobile/options-list/Component.d.ts +4 -0
  44. package/dist/components/select-mobile/options-list/Component.js +51 -0
  45. package/dist/components/select-mobile/options-list/index.css +65 -0
  46. package/dist/components/select-mobile/options-list/index.d.ts +1 -0
  47. package/dist/components/select-mobile/options-list/index.js +16 -0
  48. package/dist/components/virtual-options-list/Component.js +2 -2
  49. package/dist/components/virtual-options-list/index.css +12 -12
  50. package/dist/components/virtual-options-list/index.js +1 -1
  51. package/dist/cssm/Component-9bc41b6c.d.ts +5 -0
  52. package/dist/cssm/Component-9bc41b6c.js +246 -0
  53. package/dist/cssm/Component-d45c0e41.d.ts +33 -0
  54. package/dist/cssm/Component-d45c0e41.js +365 -0
  55. package/dist/cssm/Component.d.ts +1 -1
  56. package/dist/cssm/Component.js +1 -1
  57. package/dist/cssm/components/base-select/Component.d.ts +0 -5
  58. package/dist/cssm/components/base-select/Component.js +12 -240
  59. package/dist/cssm/components/base-select/index.d.ts +1 -1
  60. package/dist/cssm/components/base-select/index.js +1 -1
  61. package/dist/cssm/components/index.d.ts +1 -0
  62. package/dist/cssm/components/index.js +17 -1
  63. package/dist/cssm/components/optgroup/Component.d.ts +1 -1
  64. package/dist/cssm/components/optgroup/Component.js +2 -2
  65. package/dist/cssm/components/options-list/Component.js +2 -2
  66. package/dist/cssm/components/select-mobile/Component.d.ts +0 -0
  67. package/dist/cssm/components/select-mobile/Component.js +52 -0
  68. package/dist/cssm/components/select-mobile/checkmark/Component.d.ts +4 -0
  69. package/dist/cssm/components/select-mobile/checkmark/Component.js +23 -0
  70. package/dist/cssm/components/select-mobile/checkmark/index.d.ts +1 -0
  71. package/dist/cssm/components/select-mobile/checkmark/index.js +12 -0
  72. package/dist/cssm/components/select-mobile/checkmark/index.module.css +36 -0
  73. package/dist/cssm/components/select-mobile/index.d.ts +1 -0
  74. package/dist/cssm/components/select-mobile/index.js +52 -0
  75. package/dist/cssm/components/select-mobile/index.module.css +67 -0
  76. package/dist/cssm/components/select-mobile/options-list/Component.d.ts +4 -0
  77. package/dist/cssm/components/select-mobile/options-list/Component.js +51 -0
  78. package/dist/cssm/components/select-mobile/options-list/index.d.ts +1 -0
  79. package/dist/cssm/components/select-mobile/options-list/index.js +18 -0
  80. package/dist/cssm/components/select-mobile/options-list/index.module.css +64 -0
  81. package/dist/cssm/getDataTestId-3fe0d3e6.d.ts +2 -0
  82. package/dist/cssm/hook-f5b8fe4f.d.ts +3 -3
  83. package/dist/cssm/index.js +14 -6
  84. package/dist/cssm/presets/index.js +13 -6
  85. package/dist/cssm/presets/useSelectWithApply/hook.js +13 -6
  86. package/dist/cssm/presets/useSelectWithApply/options-list-with-apply/Component.js +12 -5
  87. package/dist/cssm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  88. package/dist/cssm/presets/useSelectWithApply/options-list-with-apply/index.js +12 -5
  89. package/dist/cssm/typings.d.ts +29 -0
  90. package/dist/esm/Component-18e6b97f.d.ts +5 -0
  91. package/dist/esm/Component-18e6b97f.js +238 -0
  92. package/dist/esm/Component-516f02d9.d.ts +33 -0
  93. package/dist/esm/Component-516f02d9.js +348 -0
  94. package/dist/esm/Component.d.ts +1 -1
  95. package/dist/esm/Component.js +2 -2
  96. package/dist/esm/components/arrow/Component.js +1 -1
  97. package/dist/esm/components/arrow/index.css +3 -3
  98. package/dist/esm/components/base-select/Component.d.ts +0 -5
  99. package/dist/esm/components/base-select/Component.js +10 -238
  100. package/dist/esm/components/base-select/index.css +7 -7
  101. package/dist/esm/components/base-select/index.d.ts +1 -1
  102. package/dist/esm/components/base-select/index.js +2 -2
  103. package/dist/esm/components/checkmark/Component.js +1 -1
  104. package/dist/esm/components/checkmark/index.css +7 -7
  105. package/dist/esm/components/field/Component.js +2 -2
  106. package/dist/esm/components/field/index.css +9 -9
  107. package/dist/esm/components/field/index.js +1 -1
  108. package/dist/esm/components/index.d.ts +1 -0
  109. package/dist/esm/components/index.js +11 -2
  110. package/dist/esm/components/native-select/Component.js +1 -1
  111. package/dist/esm/components/native-select/index.js +1 -1
  112. package/dist/esm/components/optgroup/Component.d.ts +1 -1
  113. package/dist/esm/components/optgroup/Component.js +3 -3
  114. package/dist/esm/components/optgroup/index.css +6 -6
  115. package/dist/esm/components/option/Component.js +2 -2
  116. package/dist/esm/components/option/index.css +20 -20
  117. package/dist/esm/components/option/index.js +1 -1
  118. package/dist/esm/components/options-list/Component.js +4 -4
  119. package/dist/esm/components/options-list/index.css +6 -6
  120. package/dist/esm/components/options-list/index.js +1 -1
  121. package/dist/esm/components/select-mobile/Component.d.ts +0 -0
  122. package/dist/esm/components/select-mobile/Component.js +30 -0
  123. package/dist/esm/components/select-mobile/checkmark/Component.d.ts +4 -0
  124. package/dist/esm/components/select-mobile/checkmark/Component.js +15 -0
  125. package/dist/esm/components/select-mobile/checkmark/index.css +37 -0
  126. package/dist/esm/components/select-mobile/checkmark/index.d.ts +1 -0
  127. package/dist/esm/components/select-mobile/checkmark/index.js +3 -0
  128. package/dist/esm/components/select-mobile/index.css +68 -0
  129. package/dist/esm/components/select-mobile/index.d.ts +1 -0
  130. package/dist/esm/components/select-mobile/index.js +30 -0
  131. package/dist/esm/components/select-mobile/options-list/Component.d.ts +4 -0
  132. package/dist/esm/components/select-mobile/options-list/Component.js +42 -0
  133. package/dist/esm/components/select-mobile/options-list/index.css +65 -0
  134. package/dist/esm/components/select-mobile/options-list/index.d.ts +1 -0
  135. package/dist/esm/components/select-mobile/options-list/index.js +8 -0
  136. package/dist/esm/components/virtual-options-list/Component.js +2 -2
  137. package/dist/esm/components/virtual-options-list/index.css +12 -12
  138. package/dist/esm/components/virtual-options-list/index.js +1 -1
  139. package/dist/esm/getDataTestId-3fe0d3e6.d.ts +2 -0
  140. package/dist/esm/hook-f5b8fe4f.d.ts +3 -3
  141. package/dist/esm/index.js +9 -5
  142. package/dist/esm/{intersection-observer-812c9e4f.d.ts → intersection-observer-ade41fff.d.ts} +0 -0
  143. package/dist/esm/{intersection-observer-812c9e4f.js → intersection-observer-ade41fff.js} +0 -0
  144. package/dist/esm/presets/index.js +9 -5
  145. package/dist/esm/presets/useLazyLoading/hook.js +3 -3
  146. package/dist/esm/presets/useLazyLoading/index.css +2 -2
  147. package/dist/esm/presets/useSelectWithApply/hook.js +9 -5
  148. package/dist/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +9 -5
  149. package/dist/esm/presets/useSelectWithApply/options-list-with-apply/index.css +4 -4
  150. package/dist/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  151. package/dist/esm/presets/useSelectWithApply/options-list-with-apply/index.js +9 -5
  152. package/dist/esm/presets/useSelectWithLoading/hook.js +2 -2
  153. package/dist/esm/presets/useSelectWithLoading/index.css +2 -2
  154. package/dist/esm/{tslib.es6-de132685.d.ts → tslib.es6-a11a4f58.d.ts} +0 -0
  155. package/dist/esm/{tslib.es6-de132685.js → tslib.es6-a11a4f58.js} +0 -0
  156. package/dist/esm/typings.d.ts +29 -0
  157. package/dist/getDataTestId-3fe0d3e6.d.ts +2 -0
  158. package/dist/hook-f5b8fe4f.d.ts +3 -3
  159. package/dist/index.js +12 -7
  160. package/dist/{intersection-observer-25b5554f.d.ts → intersection-observer-f6329639.d.ts} +0 -0
  161. package/dist/{intersection-observer-25b5554f.js → intersection-observer-f6329639.js} +0 -0
  162. package/dist/modern/Component-6db2b45d.d.ts +33 -0
  163. package/dist/modern/Component-6db2b45d.js +363 -0
  164. package/dist/modern/Component-9c4c2de2.d.ts +5 -0
  165. package/dist/modern/Component-9c4c2de2.js +247 -0
  166. package/dist/modern/Component.d.ts +1 -1
  167. package/dist/modern/Component.js +1 -1
  168. package/dist/modern/components/arrow/Component.js +1 -1
  169. package/dist/modern/components/arrow/index.css +3 -3
  170. package/dist/modern/components/base-select/Component.d.ts +0 -5
  171. package/dist/modern/components/base-select/Component.js +9 -247
  172. package/dist/modern/components/base-select/index.css +7 -7
  173. package/dist/modern/components/base-select/index.d.ts +1 -1
  174. package/dist/modern/components/base-select/index.js +1 -1
  175. package/dist/modern/components/checkmark/Component.js +1 -1
  176. package/dist/modern/components/checkmark/index.css +7 -7
  177. package/dist/modern/components/field/Component.js +1 -1
  178. package/dist/modern/components/field/index.css +9 -9
  179. package/dist/modern/components/index.d.ts +1 -0
  180. package/dist/modern/components/index.js +10 -1
  181. package/dist/modern/components/optgroup/Component.d.ts +1 -1
  182. package/dist/modern/components/optgroup/Component.js +3 -3
  183. package/dist/modern/components/optgroup/index.css +6 -6
  184. package/dist/modern/components/option/Component.js +1 -1
  185. package/dist/modern/components/option/index.css +20 -20
  186. package/dist/modern/components/options-list/Component.js +3 -3
  187. package/dist/modern/components/options-list/index.css +6 -6
  188. package/dist/modern/components/select-mobile/Component.d.ts +0 -0
  189. package/dist/modern/components/select-mobile/Component.js +29 -0
  190. package/dist/modern/components/select-mobile/checkmark/Component.d.ts +4 -0
  191. package/dist/modern/components/select-mobile/checkmark/Component.js +11 -0
  192. package/dist/modern/components/select-mobile/checkmark/index.css +37 -0
  193. package/dist/modern/components/select-mobile/checkmark/index.d.ts +1 -0
  194. package/dist/modern/components/select-mobile/checkmark/index.js +3 -0
  195. package/dist/modern/components/select-mobile/index.css +68 -0
  196. package/dist/modern/components/select-mobile/index.d.ts +1 -0
  197. package/dist/modern/components/select-mobile/index.js +29 -0
  198. package/dist/modern/components/select-mobile/options-list/Component.d.ts +4 -0
  199. package/dist/modern/components/select-mobile/options-list/Component.js +37 -0
  200. package/dist/modern/components/select-mobile/options-list/index.css +65 -0
  201. package/dist/modern/components/select-mobile/options-list/index.d.ts +1 -0
  202. package/dist/modern/components/select-mobile/options-list/index.js +7 -0
  203. package/dist/modern/components/virtual-options-list/Component.js +1 -1
  204. package/dist/modern/components/virtual-options-list/index.css +12 -12
  205. package/dist/modern/getDataTestId-3fe0d3e6.d.ts +2 -0
  206. package/dist/modern/hook-f5b8fe4f.d.ts +3 -3
  207. package/dist/modern/index.js +8 -4
  208. package/dist/modern/{intersection-observer-812c9e4f.d.ts → intersection-observer-ade41fff.d.ts} +0 -0
  209. package/dist/modern/{intersection-observer-812c9e4f.js → intersection-observer-ade41fff.js} +0 -0
  210. package/dist/modern/presets/index.js +8 -4
  211. package/dist/modern/presets/useLazyLoading/hook.js +2 -2
  212. package/dist/modern/presets/useLazyLoading/index.css +2 -2
  213. package/dist/modern/presets/useSelectWithApply/hook.js +8 -4
  214. package/dist/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +8 -4
  215. package/dist/modern/presets/useSelectWithApply/options-list-with-apply/index.css +4 -4
  216. package/dist/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  217. package/dist/modern/presets/useSelectWithApply/options-list-with-apply/index.js +8 -4
  218. package/dist/modern/presets/useSelectWithLoading/hook.js +1 -1
  219. package/dist/modern/presets/useSelectWithLoading/index.css +2 -2
  220. package/dist/modern/typings.d.ts +29 -0
  221. package/dist/presets/index.js +11 -7
  222. package/dist/presets/useLazyLoading/hook.js +3 -3
  223. package/dist/presets/useLazyLoading/index.css +2 -2
  224. package/dist/presets/useSelectWithApply/hook.js +11 -7
  225. package/dist/presets/useSelectWithApply/options-list-with-apply/Component.js +10 -6
  226. package/dist/presets/useSelectWithApply/options-list-with-apply/index.css +4 -4
  227. package/dist/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  228. package/dist/presets/useSelectWithApply/options-list-with-apply/index.js +10 -6
  229. package/dist/presets/useSelectWithLoading/hook.js +2 -2
  230. package/dist/presets/useSelectWithLoading/index.css +2 -2
  231. package/dist/{tslib.es6-2027080d.d.ts → tslib.es6-1a72f42c.d.ts} +0 -0
  232. package/dist/{tslib.es6-2027080d.js → tslib.es6-1a72f42c.js} +0 -0
  233. package/dist/typings.d.ts +29 -0
  234. package/package.json +14 -12
  235. package/dist/cssm/hook-3b9bd559.d.ts +0 -12
  236. package/dist/cssm/hook-3b9bd559.js +0 -147
  237. package/dist/esm/hook-73d6fe0f.d.ts +0 -12
  238. package/dist/esm/hook-73d6fe0f.js +0 -131
  239. package/dist/hook-81a989b0.d.ts +0 -12
  240. package/dist/hook-81a989b0.js +0 -140
  241. package/dist/modern/hook-42b89ed1.d.ts +0 -12
  242. package/dist/modern/hook-42b89ed1.js +0 -132
@@ -16,10 +16,14 @@ import 'resize-observer';
16
16
  import '@alfalab/core-components-popover/dist/modern';
17
17
  import 'downshift';
18
18
  import '../../components/native-select/Component.js';
19
- import '../../components/base-select/Component.js';
19
+ import '../../Component-9c4c2de2.js';
20
20
  import '../../Component.js';
21
+ import '@alfalab/core-components-bottom-sheet/dist/modern';
22
+ import '@alfalab/core-components-button/dist/modern';
23
+ import '@alfalab/core-components-base-modal/dist/modern';
24
+ import '../../components/select-mobile/options-list/Component.js';
25
+ import '../../components/select-mobile/checkmark/Component.js';
26
+ export { a as SELECT_ALL_KEY, u as useSelectWithApply } from '../../Component-6db2b45d.js';
21
27
  import 'react-virtual';
22
28
  import '@alfalab/core-components-skeleton/dist/modern';
23
- import '../../intersection-observer-812c9e4f.js';
24
- import '@alfalab/core-components-button/dist/modern';
25
- export { S as SELECT_ALL_KEY, u as useSelectWithApply } from '../../hook-42b89ed1.js';
29
+ import '../../intersection-observer-ade41fff.js';
@@ -16,10 +16,14 @@ import 'resize-observer';
16
16
  import '@alfalab/core-components-popover/dist/modern';
17
17
  import 'downshift';
18
18
  import '../../../components/native-select/Component.js';
19
- import '../../../components/base-select/Component.js';
19
+ import '../../../Component-9c4c2de2.js';
20
20
  import '../../../Component.js';
21
+ import '@alfalab/core-components-bottom-sheet/dist/modern';
22
+ import '@alfalab/core-components-button/dist/modern';
23
+ import '@alfalab/core-components-base-modal/dist/modern';
24
+ import '../../../components/select-mobile/options-list/Component.js';
25
+ import '../../../components/select-mobile/checkmark/Component.js';
26
+ export { O as OptionsListWithApply } from '../../../Component-6db2b45d.js';
21
27
  import 'react-virtual';
22
28
  import '@alfalab/core-components-skeleton/dist/modern';
23
- import '../../../intersection-observer-812c9e4f.js';
24
- import '@alfalab/core-components-button/dist/modern';
25
- export { O as OptionsListWithApply } from '../../../hook-42b89ed1.js';
29
+ import '../../../intersection-observer-ade41fff.js';
@@ -1,4 +1,4 @@
1
- /* hash: gte5i */
1
+ /* hash: 1q3ip */
2
2
  :root {
3
3
  --color-light-bg-primary: #fff;
4
4
  --color-light-border-secondary: #e7e9eb;
@@ -26,14 +26,14 @@
26
26
 
27
27
  /* optgroup */
28
28
  }
29
- .select__footer_1ev80 {
29
+ .select__footer_gn30j {
30
30
  background: var(--color-light-bg-primary);
31
31
  padding: var(--gap-s) var(--gap-s) var(--gap-m);
32
32
  outline: none
33
33
  }
34
- .select__footer_1ev80 > * + * {
34
+ .select__footer_gn30j > * + * {
35
35
  margin-left: var(--gap-xs);
36
36
  }
37
- .select__withBorder_1ev80 {
37
+ .select__withBorder_gn30j {
38
38
  box-shadow: inset 0 1px 0 var(--color-light-border-secondary);
39
39
  }
@@ -1 +1 @@
1
- export * from "../../../hook-42b89ed1";
1
+ export * from "../../../Component-6db2b45d";
@@ -16,10 +16,14 @@ import 'resize-observer';
16
16
  import '@alfalab/core-components-popover/dist/modern';
17
17
  import 'downshift';
18
18
  import '../../../components/native-select/Component.js';
19
- import '../../../components/base-select/Component.js';
19
+ import '../../../Component-9c4c2de2.js';
20
20
  import '../../../Component.js';
21
+ import '@alfalab/core-components-bottom-sheet/dist/modern';
22
+ import '@alfalab/core-components-button/dist/modern';
23
+ import '@alfalab/core-components-base-modal/dist/modern';
24
+ import '../../../components/select-mobile/options-list/Component.js';
25
+ import '../../../components/select-mobile/checkmark/Component.js';
26
+ export { O as OptionsListWithApply } from '../../../Component-6db2b45d.js';
21
27
  import 'react-virtual';
22
28
  import '@alfalab/core-components-skeleton/dist/modern';
23
- import '../../../intersection-observer-812c9e4f.js';
24
- import '@alfalab/core-components-button/dist/modern';
25
- export { O as OptionsListWithApply } from '../../../hook-42b89ed1.js';
29
+ import '../../../intersection-observer-ade41fff.js';
@@ -5,7 +5,7 @@ import '../../components/checkmark/Component.js';
5
5
  import { Option } from '../../components/option/Component.js';
6
6
  import { Skeleton } from '@alfalab/core-components-skeleton/dist/modern';
7
7
 
8
- var styles = {"skeleton":"select__skeleton_wn3f8"};
8
+ var styles = {"skeleton":"select__skeleton_dpghp"};
9
9
  require('./index.css')
10
10
 
11
11
  function useSelectWithLoading({ loading = false, visibleOptions = 6, }) {
@@ -1,5 +1,5 @@
1
- /* hash: 1tpz4 */
2
- .select__skeleton_wn3f8 {
1
+ /* hash: kfujo */
2
+ .select__skeleton_dpghp {
3
3
  position: absolute;
4
4
  top: 50%;
5
5
  transform: translateY(-50%);
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { ReactNode, FC, RefAttributes, AriaAttributes, FocusEvent, MouseEvent, ReactElement } from 'react';
2
3
  import { PopoverProps } from "@alfalab/core-components-popover";
3
4
  import { InputProps } from "@alfalab/core-components-input";
@@ -50,6 +51,10 @@ type BaseSelectProps = {
50
51
  * Дополнительный класс для пункта меню
51
52
  */
52
53
  optionClassName?: string;
54
+ /**
55
+ * Дополнительный класс для компонента группы пунктов
56
+ */
57
+ optionGroupClassName?: string;
53
58
  /**
54
59
  * Дополнительный класс для поповера
55
60
  */
@@ -327,6 +332,10 @@ type OptionsListProps = {
327
332
  * Дополнительный класс
328
333
  */
329
334
  className?: string;
335
+ /**
336
+ * Дополнительный класс для компонента группы пунктов
337
+ */
338
+ optionGroupClassName?: string;
330
339
  /**
331
340
  * Размер компонента
332
341
  */
@@ -399,8 +408,24 @@ type OptionsListProps = {
399
408
  * Дополнительные пропсы для Input'a, находящегося внутри кастомного OptionsList
400
409
  */
401
410
  inputProps?: InputProps;
411
+ /**
412
+ * Нужно ли показывать футер
413
+ */
414
+ showFooter?: boolean;
415
+ /**
416
+ * Обработчик подтверждения изменений
417
+ */
418
+ onApply?: () => void;
419
+ /**
420
+ * Обработчик отмены изменений
421
+ */
422
+ onClear?: () => void;
402
423
  };
403
424
  type OptgroupProps = {
425
+ /**
426
+ * Дополнительный класс для компонента группы пунктов
427
+ */
428
+ className?: string;
404
429
  /**
405
430
  * Размер компонента
406
431
  */
@@ -487,5 +512,9 @@ type CheckmarkProps = {
487
512
  * Расположение отметки
488
513
  */
489
514
  position?: 'before' | 'after';
515
+ /**
516
+ * Иконка выбранного пункта
517
+ */
518
+ icon?: React.FC<React.SVGProps<SVGSVGElement>>;
490
519
  };
491
520
  export { OptionShape, GroupShape, BaseSelectProps, FieldProps, ArrowProps, OptionsListProps, OptgroupProps, OptionProps, CheckmarkProps };
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../tslib.es6-2027080d.js');
5
+ require('../tslib.es6-1a72f42c.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/hooks');
@@ -21,19 +21,23 @@ require('resize-observer');
21
21
  require('@alfalab/core-components-popover');
22
22
  require('downshift');
23
23
  require('../components/native-select/Component.js');
24
- require('../components/base-select/Component.js');
24
+ require('../Component-a1a4a76b.js');
25
25
  require('../Component.js');
26
+ require('@alfalab/core-components-bottom-sheet');
27
+ require('@alfalab/core-components-button');
28
+ require('@alfalab/core-components-base-modal');
29
+ require('../components/select-mobile/options-list/Component.js');
30
+ require('../components/select-mobile/checkmark/Component.js');
31
+ var presets_useSelectWithApply_hook = require('../Component-d0f16ea7.js');
26
32
  require('react-virtual');
27
33
  require('@alfalab/core-components-skeleton');
28
34
  var presets_useSelectWithLoading_hook = require('./useSelectWithLoading/hook.js');
29
- require('../intersection-observer-25b5554f.js');
35
+ require('../intersection-observer-f6329639.js');
30
36
  var presets_useLazyLoading_hook = require('./useLazyLoading/hook.js');
31
- require('@alfalab/core-components-button');
32
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../hook-81a989b0.js');
33
37
 
34
38
 
35
39
 
40
+ exports.SELECT_ALL_KEY = presets_useSelectWithApply_hook.SELECT_ALL_KEY;
41
+ exports.useSelectWithApply = presets_useSelectWithApply_hook.useSelectWithApply;
36
42
  exports.useSelectWithLoading = presets_useSelectWithLoading_hook.useSelectWithLoading;
37
43
  exports.useLazyLoading = presets_useLazyLoading_hook.useLazyLoading;
38
- exports.SELECT_ALL_KEY = presets_useSelectWithApply_optionsListWithApply_Component.SELECT_ALL_KEY;
39
- exports.useSelectWithApply = presets_useSelectWithApply_optionsListWithApply_Component.useSelectWithApply;
@@ -2,20 +2,20 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../../tslib.es6-2027080d.js');
5
+ var tslib_es6 = require('../../tslib.es6-1a72f42c.js');
6
6
  var React = require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/core-components-checkbox');
9
9
  require('../../components/checkmark/Component.js');
10
10
  var components_option_Component = require('../../components/option/Component.js');
11
11
  var coreComponentsSkeleton = require('@alfalab/core-components-skeleton');
12
- require('../../intersection-observer-25b5554f.js');
12
+ require('../../intersection-observer-f6329639.js');
13
13
 
14
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
15
 
16
16
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
17
 
18
- var styles = {"skeleton":"select__skeleton_1cpda"};
18
+ var styles = {"skeleton":"select__skeleton_gdnja"};
19
19
  require('./index.css')
20
20
 
21
21
  var DEBOUNCE_TIMEOUT = 300;
@@ -1,5 +1,5 @@
1
- /* hash: 1cgdy */
2
- .select__skeleton_1cpda {
1
+ /* hash: mpehg */
2
+ .select__skeleton_gdnja {
3
3
  position: absolute;
4
4
  top: 50%;
5
5
  transform: translateY(-50%);
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../tslib.es6-2027080d.js');
5
+ require('../../tslib.es6-1a72f42c.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/hooks');
@@ -21,15 +21,19 @@ require('resize-observer');
21
21
  require('@alfalab/core-components-popover');
22
22
  require('downshift');
23
23
  require('../../components/native-select/Component.js');
24
- require('../../components/base-select/Component.js');
24
+ require('../../Component-a1a4a76b.js');
25
25
  require('../../Component.js');
26
+ require('@alfalab/core-components-bottom-sheet');
27
+ require('@alfalab/core-components-button');
28
+ require('@alfalab/core-components-base-modal');
29
+ require('../../components/select-mobile/options-list/Component.js');
30
+ require('../../components/select-mobile/checkmark/Component.js');
31
+ var presets_useSelectWithApply_hook = require('../../Component-d0f16ea7.js');
26
32
  require('react-virtual');
27
33
  require('@alfalab/core-components-skeleton');
28
- require('../../intersection-observer-25b5554f.js');
29
- require('@alfalab/core-components-button');
30
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../../hook-81a989b0.js');
34
+ require('../../intersection-observer-f6329639.js');
31
35
 
32
36
 
33
37
 
34
- exports.SELECT_ALL_KEY = presets_useSelectWithApply_optionsListWithApply_Component.SELECT_ALL_KEY;
35
- exports.useSelectWithApply = presets_useSelectWithApply_optionsListWithApply_Component.useSelectWithApply;
38
+ exports.SELECT_ALL_KEY = presets_useSelectWithApply_hook.SELECT_ALL_KEY;
39
+ exports.useSelectWithApply = presets_useSelectWithApply_hook.useSelectWithApply;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../tslib.es6-2027080d.js');
5
+ require('../../../tslib.es6-1a72f42c.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/hooks');
@@ -21,14 +21,18 @@ require('resize-observer');
21
21
  require('@alfalab/core-components-popover');
22
22
  require('downshift');
23
23
  require('../../../components/native-select/Component.js');
24
- require('../../../components/base-select/Component.js');
24
+ require('../../../Component-a1a4a76b.js');
25
25
  require('../../../Component.js');
26
+ require('@alfalab/core-components-bottom-sheet');
27
+ require('@alfalab/core-components-button');
28
+ require('@alfalab/core-components-base-modal');
29
+ require('../../../components/select-mobile/options-list/Component.js');
30
+ require('../../../components/select-mobile/checkmark/Component.js');
31
+ var presets_useSelectWithApply_hook = require('../../../Component-d0f16ea7.js');
26
32
  require('react-virtual');
27
33
  require('@alfalab/core-components-skeleton');
28
- require('../../../intersection-observer-25b5554f.js');
29
- require('@alfalab/core-components-button');
30
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../../../hook-81a989b0.js');
34
+ require('../../../intersection-observer-f6329639.js');
31
35
 
32
36
 
33
37
 
34
- exports.OptionsListWithApply = presets_useSelectWithApply_optionsListWithApply_Component.OptionsListWithApply;
38
+ exports.OptionsListWithApply = presets_useSelectWithApply_hook.OptionsListWithApply;
@@ -1,4 +1,4 @@
1
- /* hash: gte5i */
1
+ /* hash: 1q3ip */
2
2
  :root {
3
3
  --color-light-bg-primary: #fff;
4
4
  --color-light-border-secondary: #e7e9eb;
@@ -26,14 +26,14 @@
26
26
 
27
27
  /* optgroup */
28
28
  }
29
- .select__footer_1ev80 {
29
+ .select__footer_gn30j {
30
30
  background: var(--color-light-bg-primary);
31
31
  padding: var(--gap-s) var(--gap-s) var(--gap-m);
32
32
  outline: none
33
33
  }
34
- .select__footer_1ev80 > * + * {
34
+ .select__footer_gn30j > * + * {
35
35
  margin-left: var(--gap-xs);
36
36
  }
37
- .select__withBorder_1ev80 {
37
+ .select__withBorder_gn30j {
38
38
  box-shadow: inset 0 1px 0 var(--color-light-border-secondary);
39
39
  }
@@ -1 +1 @@
1
- export * from "../../../hook-81a989b0";
1
+ export * from "../../../Component-d0f16ea7";
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../tslib.es6-2027080d.js');
5
+ require('../../../tslib.es6-1a72f42c.js');
6
6
  require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/hooks');
@@ -21,14 +21,18 @@ require('resize-observer');
21
21
  require('@alfalab/core-components-popover');
22
22
  require('downshift');
23
23
  require('../../../components/native-select/Component.js');
24
- require('../../../components/base-select/Component.js');
24
+ require('../../../Component-a1a4a76b.js');
25
25
  require('../../../Component.js');
26
+ require('@alfalab/core-components-bottom-sheet');
27
+ require('@alfalab/core-components-button');
28
+ require('@alfalab/core-components-base-modal');
29
+ require('../../../components/select-mobile/options-list/Component.js');
30
+ require('../../../components/select-mobile/checkmark/Component.js');
31
+ var presets_useSelectWithApply_hook = require('../../../Component-d0f16ea7.js');
26
32
  require('react-virtual');
27
33
  require('@alfalab/core-components-skeleton');
28
- require('../../../intersection-observer-25b5554f.js');
29
- require('@alfalab/core-components-button');
30
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../../../hook-81a989b0.js');
34
+ require('../../../intersection-observer-f6329639.js');
31
35
 
32
36
 
33
37
 
34
- exports.OptionsListWithApply = presets_useSelectWithApply_optionsListWithApply_Component.OptionsListWithApply;
38
+ exports.OptionsListWithApply = presets_useSelectWithApply_hook.OptionsListWithApply;
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('../../tslib.es6-2027080d.js');
5
+ var tslib_es6 = require('../../tslib.es6-1a72f42c.js');
6
6
  var React = require('react');
7
7
  require('classnames');
8
8
  require('@alfalab/core-components-checkbox');
@@ -14,7 +14,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
14
14
 
15
15
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
16
16
 
17
- var styles = {"skeleton":"select__skeleton_wn3f8"};
17
+ var styles = {"skeleton":"select__skeleton_dpghp"};
18
18
  require('./index.css')
19
19
 
20
20
  function useSelectWithLoading(_a) {
@@ -1,5 +1,5 @@
1
- /* hash: 1tpz4 */
2
- .select__skeleton_wn3f8 {
1
+ /* hash: kfujo */
2
+ .select__skeleton_dpghp {
3
3
  position: absolute;
4
4
  top: 50%;
5
5
  transform: translateY(-50%);
package/dist/typings.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { ReactNode, FC, RefAttributes, AriaAttributes, FocusEvent, MouseEvent, ReactElement } from 'react';
2
3
  import { PopoverProps } from "@alfalab/core-components-popover";
3
4
  import { InputProps } from "@alfalab/core-components-input";
@@ -50,6 +51,10 @@ type BaseSelectProps = {
50
51
  * Дополнительный класс для пункта меню
51
52
  */
52
53
  optionClassName?: string;
54
+ /**
55
+ * Дополнительный класс для компонента группы пунктов
56
+ */
57
+ optionGroupClassName?: string;
53
58
  /**
54
59
  * Дополнительный класс для поповера
55
60
  */
@@ -327,6 +332,10 @@ type OptionsListProps = {
327
332
  * Дополнительный класс
328
333
  */
329
334
  className?: string;
335
+ /**
336
+ * Дополнительный класс для компонента группы пунктов
337
+ */
338
+ optionGroupClassName?: string;
330
339
  /**
331
340
  * Размер компонента
332
341
  */
@@ -399,8 +408,24 @@ type OptionsListProps = {
399
408
  * Дополнительные пропсы для Input'a, находящегося внутри кастомного OptionsList
400
409
  */
401
410
  inputProps?: InputProps;
411
+ /**
412
+ * Нужно ли показывать футер
413
+ */
414
+ showFooter?: boolean;
415
+ /**
416
+ * Обработчик подтверждения изменений
417
+ */
418
+ onApply?: () => void;
419
+ /**
420
+ * Обработчик отмены изменений
421
+ */
422
+ onClear?: () => void;
402
423
  };
403
424
  type OptgroupProps = {
425
+ /**
426
+ * Дополнительный класс для компонента группы пунктов
427
+ */
428
+ className?: string;
404
429
  /**
405
430
  * Размер компонента
406
431
  */
@@ -487,5 +512,9 @@ type CheckmarkProps = {
487
512
  * Расположение отметки
488
513
  */
489
514
  position?: 'before' | 'after';
515
+ /**
516
+ * Иконка выбранного пункта
517
+ */
518
+ icon?: React.FC<React.SVGProps<SVGSVGElement>>;
490
519
  };
491
520
  export { OptionShape, GroupShape, BaseSelectProps, FieldProps, ArrowProps, OptionsListProps, OptgroupProps, OptionProps, CheckmarkProps };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alfalab/core-components-select",
3
- "version": "10.6.4",
3
+ "version": "10.6.7",
4
4
  "description": "Select component",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -20,18 +20,20 @@
20
20
  "react-dom": "^16.9.0 || ^17.0.1"
21
21
  },
22
22
  "dependencies": {
23
- "@alfalab/core-components-button": "^5.1.1",
24
- "@alfalab/core-components-checkbox": "^2.7.0",
25
- "@alfalab/core-components-form-control": "^7.4.0",
26
- "@alfalab/core-components-input": "^8.1.0",
27
- "@alfalab/core-components-popover": "^5.6.1",
28
- "@alfalab/core-components-skeleton": "^3.1.0",
23
+ "@alfalab/core-components-base-modal": "^4.0.2",
24
+ "@alfalab/core-components-bottom-sheet": "^4.1.2",
25
+ "@alfalab/core-components-button": "^5.1.4",
26
+ "@alfalab/core-components-checkbox": "^2.7.2",
27
+ "@alfalab/core-components-form-control": "^7.4.2",
28
+ "@alfalab/core-components-input": "^8.1.3",
29
+ "@alfalab/core-components-popover": "^5.6.3",
30
+ "@alfalab/core-components-skeleton": "^3.1.2",
29
31
  "@alfalab/hooks": "^1.4.1",
30
- "classnames": "^2.2.6",
32
+ "classnames": "2.2.6",
31
33
  "downshift": "5.4.7",
32
- "react-merge-refs": "^1.1.0",
33
- "react-virtual": "^2.2.0",
34
- "resize-observer": "^1.0.0"
34
+ "react-merge-refs": "1.1.0",
35
+ "react-virtual": "2.3.2",
36
+ "resize-observer": "1.0.0"
35
37
  },
36
- "gitHead": "881a2a4c909d4b1d632ff398fe6a7dab22926f37"
38
+ "gitHead": "a185c42cf9dbfd14311fd756c696fa116214e289"
37
39
  }
@@ -1,12 +0,0 @@
1
- /// <reference types="react" />
2
- import React from 'react';
3
- import { OptionShape, OptionsListProps } from "./typings";
4
- declare const OptionsListWithApply: React.ForwardRefExoticComponent<OptionsListProps & {
5
- showClear?: boolean | undefined;
6
- onApply?: (() => void) | undefined;
7
- onClear?: (() => void) | undefined;
8
- onClose?: (() => void) | undefined;
9
- selectedDraft?: OptionShape[] | undefined;
10
- OptionsList?: React.FC<OptionsListProps & React.RefAttributes<unknown>> | undefined;
11
- } & React.RefAttributes<unknown>>;
12
- export { OptionsListWithApply };