@alfalab/core-components-select 17.11.0 → 17.12.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 (195) hide show
  1. package/components/arrow/Component.js +1 -1
  2. package/components/arrow/index.css +3 -3
  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 +18 -17
  7. package/components/base-select/Component.js +2 -2
  8. package/components/base-select/components/list-desktop/list-popover-desktop.js +1 -1
  9. package/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +1 -1
  10. package/components/base-select/components/list-mobile/list-modal-mobile.js +1 -1
  11. package/components/base-select/index.css +24 -22
  12. package/components/base-select/mobile.css +16 -15
  13. package/components/checkmark/Component.js +1 -1
  14. package/components/checkmark/index.css +12 -11
  15. package/components/checkmark-mobile/Component.js +1 -1
  16. package/components/checkmark-mobile/index.css +6 -6
  17. package/components/clear-button/Component.js +1 -1
  18. package/components/clear-button/index.css +6 -6
  19. package/components/field/Component.js +1 -1
  20. package/components/field/index.css +12 -12
  21. package/components/footer/Component.js +1 -1
  22. package/components/footer/index.css +5 -5
  23. package/components/optgroup/Component.js +1 -1
  24. package/components/optgroup/index.css +6 -6
  25. package/components/option/Component.js +1 -1
  26. package/components/option/index.css +21 -21
  27. package/components/options-list/Component.js +3 -3
  28. package/components/options-list/index.css +14 -11
  29. package/components/search/Component.js +1 -1
  30. package/components/search/index.css +2 -2
  31. package/components/virtual-options-list/Component.js +1 -1
  32. package/components/virtual-options-list/index.css +20 -19
  33. package/cssm/components/base-option/index.module.css +3 -2
  34. package/cssm/components/base-select/index.module.css +13 -11
  35. package/cssm/components/base-select/mobile.module.css +4 -3
  36. package/cssm/components/checkmark/index.module.css +2 -1
  37. package/cssm/components/option/index.module.css +2 -2
  38. package/cssm/components/options-list/Component.js +2 -2
  39. package/cssm/components/options-list/index.module.css +4 -1
  40. package/cssm/components/virtual-options-list/index.module.css +5 -4
  41. package/cssm/presets/useSelectWithApply/options-list-with-apply/footer/index.module.css +3 -1
  42. package/cssm/presets/useSelectWithApply/options-list-with-apply/footer/vars.css +0 -0
  43. package/cssm/utils.d.ts +1 -1
  44. package/cssm/utils.js +11 -0
  45. package/esm/components/arrow/Component.js +1 -1
  46. package/esm/components/arrow/index.css +3 -3
  47. package/esm/components/base-checkmark/Component.js +1 -1
  48. package/esm/components/base-checkmark/index.css +6 -6
  49. package/esm/components/base-option/Component.js +1 -1
  50. package/esm/components/base-option/index.css +18 -17
  51. package/esm/components/base-select/Component.js +2 -2
  52. package/esm/components/base-select/components/list-desktop/list-popover-desktop.js +1 -1
  53. package/esm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +1 -1
  54. package/esm/components/base-select/components/list-mobile/list-modal-mobile.js +1 -1
  55. package/esm/components/base-select/index.css +24 -22
  56. package/esm/components/base-select/mobile.css +16 -15
  57. package/esm/components/checkmark/Component.js +1 -1
  58. package/esm/components/checkmark/index.css +12 -11
  59. package/esm/components/checkmark-mobile/Component.js +1 -1
  60. package/esm/components/checkmark-mobile/index.css +6 -6
  61. package/esm/components/clear-button/Component.js +1 -1
  62. package/esm/components/clear-button/index.css +6 -6
  63. package/esm/components/field/Component.js +1 -1
  64. package/esm/components/field/index.css +12 -12
  65. package/esm/components/footer/Component.js +1 -1
  66. package/esm/components/footer/index.css +5 -5
  67. package/esm/components/optgroup/Component.js +1 -1
  68. package/esm/components/optgroup/index.css +6 -6
  69. package/esm/components/option/Component.js +1 -1
  70. package/esm/components/option/index.css +21 -21
  71. package/esm/components/options-list/Component.js +3 -3
  72. package/esm/components/options-list/index.css +14 -11
  73. package/esm/components/search/Component.js +1 -1
  74. package/esm/components/search/index.css +2 -2
  75. package/esm/components/virtual-options-list/Component.js +1 -1
  76. package/esm/components/virtual-options-list/index.css +20 -19
  77. package/esm/{list-popover-desktop-3b5200e4.js → list-popover-desktop-e4b69ce0.js} +1 -1
  78. package/esm/mobile/Component.mobile.js +1 -1
  79. package/esm/mobile.module-a3e68caf.js +4 -0
  80. package/esm/presets/index.js +1 -1
  81. package/esm/presets/useSelectWithApply/hook.js +1 -1
  82. package/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  83. package/esm/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +1 -1
  84. package/esm/presets/useSelectWithApply/options-list-with-apply/footer/index.css +6 -4
  85. package/esm/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  86. package/esm/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
  87. package/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  88. package/esm/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  89. package/esm/presets/useSelectWithLoading/hook.js +1 -1
  90. package/esm/presets/useSelectWithLoading/index.css +2 -2
  91. package/esm/shared/index.js +1 -1
  92. package/esm/utils.d.ts +1 -1
  93. package/esm/utils.js +13 -2
  94. package/{list-popover-desktop-3e8f155e.js → list-popover-desktop-8ffefe6e.js} +1 -1
  95. package/mobile/Component.mobile.js +1 -1
  96. package/mobile.module-97d68ba9.js +6 -0
  97. package/modern/components/arrow/Component.js +1 -1
  98. package/modern/components/arrow/index.css +3 -3
  99. package/modern/components/base-checkmark/Component.js +1 -1
  100. package/modern/components/base-checkmark/index.css +6 -6
  101. package/modern/components/base-option/Component.js +1 -1
  102. package/modern/components/base-option/index.css +18 -17
  103. package/modern/components/base-select/Component.js +2 -2
  104. package/modern/components/base-select/components/list-desktop/list-popover-desktop.js +1 -1
  105. package/modern/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +1 -1
  106. package/modern/components/base-select/components/list-mobile/list-modal-mobile.js +1 -1
  107. package/modern/components/base-select/index.css +24 -22
  108. package/modern/components/base-select/mobile.css +16 -15
  109. package/modern/components/checkmark/Component.js +1 -1
  110. package/modern/components/checkmark/index.css +12 -11
  111. package/modern/components/checkmark-mobile/Component.js +1 -1
  112. package/modern/components/checkmark-mobile/index.css +6 -6
  113. package/modern/components/clear-button/Component.js +1 -1
  114. package/modern/components/clear-button/index.css +6 -6
  115. package/modern/components/field/Component.js +1 -1
  116. package/modern/components/field/index.css +12 -12
  117. package/modern/components/footer/Component.js +1 -1
  118. package/modern/components/footer/index.css +5 -5
  119. package/modern/components/optgroup/Component.js +1 -1
  120. package/modern/components/optgroup/index.css +6 -6
  121. package/modern/components/option/Component.js +1 -1
  122. package/modern/components/option/index.css +21 -21
  123. package/modern/components/options-list/Component.js +3 -3
  124. package/modern/components/options-list/index.css +14 -11
  125. package/modern/components/search/Component.js +1 -1
  126. package/modern/components/search/index.css +2 -2
  127. package/modern/components/virtual-options-list/Component.js +1 -1
  128. package/modern/components/virtual-options-list/index.css +20 -19
  129. package/modern/{list-popover-desktop-387dae64.js → list-popover-desktop-85370c2c.js} +1 -1
  130. package/modern/mobile/Component.mobile.js +1 -1
  131. package/modern/mobile.module-eb08a4de.js +4 -0
  132. package/modern/presets/index.js +1 -1
  133. package/modern/presets/useSelectWithApply/hook.js +1 -1
  134. package/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  135. package/modern/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +1 -1
  136. package/modern/presets/useSelectWithApply/options-list-with-apply/footer/index.css +6 -4
  137. package/modern/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  138. package/modern/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
  139. package/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  140. package/modern/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  141. package/modern/presets/useSelectWithLoading/hook.js +1 -1
  142. package/modern/presets/useSelectWithLoading/index.css +2 -2
  143. package/modern/shared/index.js +1 -1
  144. package/modern/utils.d.ts +1 -1
  145. package/modern/utils.js +13 -2
  146. package/moderncssm/components/base-option/index.module.css +2 -2
  147. package/moderncssm/components/base-select/index.module.css +11 -11
  148. package/moderncssm/components/base-select/mobile.module.css +3 -3
  149. package/moderncssm/components/checkmark/index.module.css +1 -1
  150. package/moderncssm/components/option/index.module.css +1 -2
  151. package/moderncssm/components/options-list/Component.js +2 -2
  152. package/moderncssm/components/options-list/index.module.css +4 -1
  153. package/moderncssm/components/virtual-options-list/index.module.css +4 -4
  154. package/moderncssm/presets/useSelectWithApply/options-list-with-apply/footer/index.module.css +4 -3
  155. package/moderncssm/presets/useSelectWithApply/options-list-with-apply/footer/vars.css +0 -0
  156. package/moderncssm/utils.d.ts +1 -1
  157. package/moderncssm/utils.js +13 -2
  158. package/package.json +15 -15
  159. package/presets/index.js +1 -1
  160. package/presets/useSelectWithApply/hook.js +1 -1
  161. package/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
  162. package/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +1 -1
  163. package/presets/useSelectWithApply/options-list-with-apply/footer/index.css +6 -4
  164. package/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
  165. package/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
  166. package/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
  167. package/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
  168. package/presets/useSelectWithLoading/hook.js +1 -1
  169. package/presets/useSelectWithLoading/index.css +2 -2
  170. package/shared/index.js +1 -1
  171. package/src/components/base-option/index.module.css +2 -2
  172. package/src/components/base-select/index.module.css +8 -8
  173. package/src/components/base-select/mobile.module.css +3 -3
  174. package/src/components/option/index.module.css +1 -2
  175. package/src/components/options-list/Component.tsx +2 -1
  176. package/src/components/options-list/index.module.css +5 -1
  177. package/src/components/virtual-options-list/index.module.css +4 -4
  178. package/src/presets/useSelectWithApply/options-list-with-apply/footer/index.module.css +2 -1
  179. package/src/presets/useSelectWithApply/options-list-with-apply/footer/vars.css +3 -0
  180. package/src/utils.ts +28 -3
  181. package/src/vars.css +4 -4
  182. package/utils.d.ts +1 -1
  183. package/utils.js +11 -0
  184. package/esm/mobile.module-841dbab1.js +0 -4
  185. package/mobile.module-6a431abb.js +0 -6
  186. package/modern/mobile.module-5583797d.js +0 -4
  187. /package/esm/{hook-4a4a5429.d.ts → hook-276c96dc.d.ts} +0 -0
  188. /package/esm/{hook-4a4a5429.js → hook-276c96dc.js} +0 -0
  189. /package/esm/{list-popover-desktop-3b5200e4.d.ts → list-popover-desktop-e4b69ce0.d.ts} +0 -0
  190. /package/{hook-06aedfaf.d.ts → hook-c8ba558c.d.ts} +0 -0
  191. /package/{hook-06aedfaf.js → hook-c8ba558c.js} +0 -0
  192. /package/{list-popover-desktop-3e8f155e.d.ts → list-popover-desktop-8ffefe6e.d.ts} +0 -0
  193. /package/modern/{hook-07ac3ee1.d.ts → hook-a054f3bb.d.ts} +0 -0
  194. /package/modern/{hook-07ac3ee1.js → hook-a054f3bb.js} +0 -0
  195. /package/modern/{list-popover-desktop-387dae64.d.ts → list-popover-desktop-85370c2c.d.ts} +0 -0
@@ -1,5 +1,5 @@
1
- import { isValidElement, cloneElement, useEffect, useRef } from 'react';
2
- import { getDataTestId } from '@alfalab/core-components-shared/moderncssm';
1
+ import { isValidElement, cloneElement, useState, useEffect, useRef } from 'react';
2
+ import { useIsMounted, fnUtils, getDataTestId } from '@alfalab/core-components-shared/moderncssm';
3
3
 
4
4
  const isGroup = (item) => Object.prototype.hasOwnProperty.call(item, 'options');
5
5
  const isOptionShape = (item) => !!item && Object.prototype.hasOwnProperty.call(item, 'key');
@@ -69,6 +69,8 @@ function processOptions(options, selected = [], filterFn = () => true, filterGro
69
69
  return { filteredOptions, flatOptions, selectedOptions };
70
70
  }
71
71
  function useVisibleOptions({ visibleOptions, listRef, styleTargetRef = listRef, open, invalidate, options, size, actualOptionsCount, }) {
72
+ const [, runIfMounted] = useIsMounted();
73
+ const [measured, setMeasured] = useState(false);
72
74
  useEffect(() => {
73
75
  const measureOptionHeight = (element) => typeof size === 'number' ? Math.min(element.clientHeight, size) : element.clientHeight;
74
76
  const list = listRef.current;
@@ -96,8 +98,15 @@ function useVisibleOptions({ visibleOptions, listRef, styleTargetRef = listRef,
96
98
  height += size / 2;
97
99
  }
98
100
  }
101
+ const prevHeight = styleTarget.style.height;
99
102
  styleTarget.style.height = `${height}px`;
103
+ setMeasured(true);
104
+ return () => {
105
+ styleTarget.style.height = prevHeight;
106
+ runIfMounted(() => setMeasured(false));
107
+ };
100
108
  }
109
+ return fnUtils.noop;
101
110
  }, [
102
111
  actualOptionsCount,
103
112
  listRef,
@@ -107,7 +116,9 @@ function useVisibleOptions({ visibleOptions, listRef, styleTargetRef = listRef,
107
116
  styleTargetRef,
108
117
  visibleOptions,
109
118
  invalidate,
119
+ runIfMounted,
110
120
  ]);
121
+ return measured;
111
122
  }
112
123
  function defaultFilterFn(optionText, search) {
113
124
  if (!search)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alfalab/core-components-select",
3
- "version": "17.11.0",
3
+ "version": "17.12.0",
4
4
  "description": "Select component",
5
5
  "keywords": [],
6
6
  "license": "MIT",
@@ -15,19 +15,19 @@
15
15
  "react-dom": "^16.9.0 || ^17.0.1 || ^18.0.0"
16
16
  },
17
17
  "dependencies": {
18
- "@alfalab/core-components-badge": "^5.6.0",
19
- "@alfalab/core-components-base-modal": "^5.8.0",
20
- "@alfalab/core-components-bottom-sheet": "^6.17.0",
21
- "@alfalab/core-components-button": "^11.6.0",
22
- "@alfalab/core-components-checkbox": "^4.6.0",
23
- "@alfalab/core-components-form-control": "^12.3.0",
24
- "@alfalab/core-components-input": "^15.1.0",
25
- "@alfalab/core-components-modal": "^9.4.0",
18
+ "@alfalab/core-components-badge": "^5.6.1",
19
+ "@alfalab/core-components-base-modal": "^5.8.1",
20
+ "@alfalab/core-components-bottom-sheet": "^6.17.1",
21
+ "@alfalab/core-components-button": "^11.7.0",
22
+ "@alfalab/core-components-checkbox": "^4.6.1",
23
+ "@alfalab/core-components-form-control": "^12.4.0",
24
+ "@alfalab/core-components-input": "^15.1.1",
25
+ "@alfalab/core-components-modal": "^9.5.0",
26
26
  "@alfalab/core-components-mq": "^4.3.0",
27
- "@alfalab/core-components-popover": "^6.3.0",
28
- "@alfalab/core-components-scrollbar": "^3.1.0",
29
- "@alfalab/core-components-skeleton": "^5.1.0",
30
- "@alfalab/core-components-shared": "^0.12.0",
27
+ "@alfalab/core-components-popover": "^6.3.1",
28
+ "@alfalab/core-components-scrollbar": "^3.1.1",
29
+ "@alfalab/core-components-skeleton": "^5.2.0",
30
+ "@alfalab/core-components-shared": "^0.12.1",
31
31
  "@alfalab/hooks": "^1.13.0",
32
32
  "@alfalab/icons-glyph": "^2.139.0",
33
33
  "@juggle/resize-observer": "^3.3.1",
@@ -39,6 +39,6 @@
39
39
  "react-virtual": "^2.3.2",
40
40
  "tslib": "^2.4.0"
41
41
  },
42
- "themesVersion": "13.1.0",
43
- "varsVersion": "9.12.0"
42
+ "themesVersion": "13.2.0",
43
+ "varsVersion": "9.13.0"
44
44
  }
package/presets/index.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var presets_useSelectWithLoading_hook = require('./useSelectWithLoading/hook.js');
6
6
  var presets_useLazyLoading_hook = require('./useLazyLoading/hook.js');
7
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../hook-06aedfaf.js');
7
+ var presets_useSelectWithApply_optionsListWithApply_Component = require('../hook-c8ba558c.js');
8
8
 
9
9
 
10
10
 
@@ -6,7 +6,7 @@ require('tslib');
6
6
  require('react');
7
7
  require('deep-equal');
8
8
  require('../../utils.js');
9
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../../hook-06aedfaf.js');
9
+ var presets_useSelectWithApply_optionsListWithApply_Component = require('../../hook-c8ba558c.js');
10
10
 
11
11
 
12
12
 
@@ -6,7 +6,7 @@ require('tslib');
6
6
  require('react');
7
7
  require('../../../components/options-list/Component.js');
8
8
  require('../../../consts.js');
9
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../../../hook-06aedfaf.js');
9
+ var presets_useSelectWithApply_optionsListWithApply_Component = require('../../../hook-c8ba558c.js');
10
10
  require('./footer/Component.js');
11
11
  require('./header/Component.js');
12
12
 
@@ -10,7 +10,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
10
10
 
11
11
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
12
12
 
13
- var styles = {"footer":"select__footer_xl99m","button":"select__button_xl99m"};
13
+ var styles = {"footer":"select__footer_1mgzl","button":"select__button_1mgzl"};
14
14
  require('./index.css')
15
15
 
16
16
  var Footer = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: f1i06 */
1
+ /* hash: s7f2p */
2
2
  :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
3
  } /* deprecated */ :root {
4
4
  --color-light-base-bg-primary: #fff; /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
@@ -23,10 +23,12 @@
23
23
  --gap-12: var(--gap-s);
24
24
  } :root {
25
25
  } :root {
26
- } .select__footer_xl99m {
26
+ } :root {
27
+ --select-option-list-footer-button-gap: var(--gap-8);
28
+ } .select__footer_1mgzl {
27
29
  background-color: var(--color-light-base-bg-primary);
28
30
  padding: var(--gap-12);
29
31
  outline: none
30
- } .select__footer_xl99m > .select__button_xl99m + .select__button_xl99m {
31
- margin-left: var(--gap-8);
32
+ } .select__footer_1mgzl > .select__button_1mgzl + .select__button_1mgzl {
33
+ margin-left: var(--select-option-list-footer-button-gap);
32
34
  }
@@ -11,7 +11,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
11
11
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
12
12
  var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
13
13
 
14
- var styles = {"desktop":"select__desktop_rc4tb","mobile":"select__mobile_rc4tb"};
14
+ var styles = {"desktop":"select__desktop_1g7v5","mobile":"select__mobile_1g7v5"};
15
15
  require('./index.css')
16
16
 
17
17
  var Header = function (_a) {
@@ -1,4 +1,4 @@
1
- /* hash: 8sdjv */
1
+ /* hash: lyame */
2
2
  :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
3
3
  } /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
4
4
  } :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
@@ -22,8 +22,8 @@
22
22
  --gap-12: var(--gap-s);
23
23
  } :root {
24
24
  } :root {
25
- } .select__desktop_rc4tb {
25
+ } .select__desktop_1g7v5 {
26
26
  padding: var(--gap-12);
27
- } .select__mobile_rc4tb {
27
+ } .select__mobile_1g7v5 {
28
28
  padding: var(--gap-12) var(--gap-8);
29
29
  }
@@ -1 +1 @@
1
- export * from "../../../hook-06aedfaf";
1
+ export * from "../../../hook-c8ba558c";
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../../../hook-06aedfaf.js');
5
+ var presets_useSelectWithApply_optionsListWithApply_Component = require('../../../hook-c8ba558c.js');
6
6
 
7
7
 
8
8
 
@@ -11,7 +11,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
11
11
 
12
12
  var React__default = /*#__PURE__*/_interopDefaultCompat(React);
13
13
 
14
- var styles = {"skeleton":"select__skeleton_1tkpm"};
14
+ var styles = {"skeleton":"select__skeleton_15yyc"};
15
15
  require('./index.css')
16
16
 
17
17
  function useSelectWithLoading(_a) {
@@ -1,5 +1,5 @@
1
- /* hash: pke3d */
2
- .select__skeleton_1tkpm {
1
+ /* hash: 26o9h */
2
+ .select__skeleton_15yyc {
3
3
  position: absolute;
4
4
  top: 50%;
5
5
  transform: translateY(-50%);
package/shared/index.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var presets_useSelectWithLoading_hook = require('../presets/useSelectWithLoading/hook.js');
6
6
  var presets_useLazyLoading_hook = require('../presets/useLazyLoading/hook.js');
7
- var presets_useSelectWithApply_optionsListWithApply_Component = require('../hook-06aedfaf.js');
7
+ var presets_useSelectWithApply_optionsListWithApply_Component = require('../hook-c8ba558c.js');
8
8
  var utils = require('../utils.js');
9
9
  var components_option_Component = require('../components/option/Component.js');
10
10
  var components_baseOption_Component = require('../components/base-option/Component.js');
@@ -20,7 +20,7 @@
20
20
  }
21
21
 
22
22
  &.checkmarkBefore {
23
- padding: 0 0 0 var(--gap-12);
23
+ padding: var(--gap-0) var(--gap-0) var(--gap-0) var(--gap-12);
24
24
 
25
25
  &.mobile {
26
26
  padding-left: var(--gap-16);
@@ -28,7 +28,7 @@
28
28
  }
29
29
 
30
30
  &.checkmarkAfter.checkmarkAfter {
31
- padding: 0 var(--gap-12) 0 0;
31
+ padding: var(--gap-0) var(--gap-12) var(--gap-0) var(--gap-0);
32
32
 
33
33
  &.mobile {
34
34
  padding-right: var(--gap-20);
@@ -34,10 +34,10 @@
34
34
 
35
35
  .optionsListBorder {
36
36
  position: absolute;
37
- top: 0;
38
- right: 0;
39
- bottom: 0;
40
- left: 0;
37
+ top: var(--gap-0);
38
+ right: var(--gap-0);
39
+ bottom: var(--gap-0);
40
+ left: var(--gap-0);
41
41
  box-shadow: inset 0 0 0 1px var(--color-light-neutral-300);
42
42
  border-radius: inherit;
43
43
  pointer-events: none;
@@ -47,9 +47,9 @@
47
47
  opacity: 0;
48
48
  overflow: hidden;
49
49
  position: absolute;
50
- top: 0;
51
- bottom: 0;
52
- left: 0;
50
+ top: var(--gap-0);
51
+ bottom: var(--gap-0);
52
+ left: var(--gap-0);
53
53
  width: 100%;
54
54
  max-width: 100%;
55
55
  min-width: 0;
@@ -67,7 +67,7 @@
67
67
  }
68
68
 
69
69
  .search {
70
- margin: var(--gap-12) var(--gap-12) 0;
70
+ margin: var(--gap-12) var(--gap-12) var(--gap-0);
71
71
 
72
72
  &:last-child {
73
73
  margin-bottom: var(--gap-12);
@@ -6,17 +6,17 @@
6
6
  }
7
7
 
8
8
  .sheetContent.sheetContent {
9
- padding: 0;
9
+ padding: var(--gap-0);
10
10
 
11
11
  & .modalContent {
12
- padding: 0;
12
+ padding: var(--gap-0);
13
13
  display: flex;
14
14
  flex-direction: column;
15
15
  }
16
16
  }
17
17
 
18
18
  .sheetContainer {
19
- padding: 0;
19
+ padding: var(--gap-0);
20
20
  }
21
21
 
22
22
  .optionsListWrapper {
@@ -25,7 +25,7 @@
25
25
  position: absolute;
26
26
  left: var(--select-option-left-padding);
27
27
  right: var(--select-option-right-padding);
28
- top: 0;
28
+ top: var(--gap-0);
29
29
  height: 1px;
30
30
  background: var(--select-option-divider-background);
31
31
  display: var(--select-option-divider-display);
@@ -90,7 +90,6 @@
90
90
  overflow: hidden;
91
91
  flex: 1;
92
92
  text-overflow: ellipsis;
93
- white-space: nowrap;
94
93
  }
95
94
 
96
95
  .textContent {
@@ -114,7 +114,7 @@ export const OptionsList = forwardRef<HTMLDivElement, OptionsListProps>(
114
114
  );
115
115
  };
116
116
 
117
- useVisibleOptions({
117
+ const measured = useVisibleOptions({
118
118
  ...(!nativeScrollbar && { styleTargetRef: scrollbarRef }),
119
119
  visibleOptions,
120
120
  listRef,
@@ -165,6 +165,7 @@ export const OptionsList = forwardRef<HTMLDivElement, OptionsListProps>(
165
165
  horizontalAutoStretch={optionsListWidth === 'content'}
166
166
  scrollableNodeProps={scrollableNodeProps}
167
167
  contentNodeProps={{ ref: listRef }}
168
+ maskProps={{ className: measured ? undefined : styles.mask }}
168
169
  >
169
170
  {renderListItems()}
170
171
  </Scrollbar>
@@ -20,7 +20,7 @@
20
20
 
21
21
  .optionsListFooter {
22
22
  position: sticky;
23
- bottom: 0;
23
+ bottom: var(--gap-0);
24
24
  box-sizing: border-box;
25
25
  border-top: 1px solid transparent;
26
26
  transition: border-color 0.2s ease;
@@ -35,6 +35,10 @@
35
35
  width: 100%;
36
36
  }
37
37
 
38
+ .mask {
39
+ min-width: 4000px;
40
+ }
41
+
38
42
  .emptyPlaceholder {
39
43
  padding: var(--gap-16) var(--gap-12);
40
44
  color: var(--select-options-list-empty-placeholder-color);
@@ -16,7 +16,7 @@
16
16
 
17
17
  .virtualOptionsListFooter {
18
18
  position: sticky;
19
- bottom: 0;
19
+ bottom: var(--gap-0);
20
20
  box-sizing: border-box;
21
21
  border-top: 1px solid transparent;
22
22
 
@@ -38,8 +38,8 @@
38
38
 
39
39
  .virtualRow {
40
40
  position: absolute;
41
- top: 0;
42
- left: 0;
41
+ top: var(--gap-0);
42
+ left: var(--gap-0);
43
43
  width: 100%;
44
44
 
45
45
  &:before {
@@ -48,7 +48,7 @@
48
48
  z-index: 1;
49
49
  left: var(--select-option-left-padding);
50
50
  right: var(--select-option-right-padding);
51
- top: 0;
51
+ top: var(--gap-0);
52
52
  height: 1px;
53
53
  background: var(--select-option-divider-background);
54
54
  display: var(--select-option-divider-display);
@@ -1,4 +1,5 @@
1
1
  @import '@alfalab/core-components-vars/src/index.css';
2
+ @import './vars.css';
2
3
 
3
4
  .footer {
4
5
  background-color: var(--color-light-base-bg-primary);
@@ -6,6 +7,6 @@
6
7
  outline: none;
7
8
 
8
9
  & > .button + .button {
9
- margin-left: var(--gap-8);
10
+ margin-left: var(--select-option-list-footer-button-gap);
10
11
  }
11
12
  }
@@ -0,0 +1,3 @@
1
+ :root {
2
+ --select-option-list-footer-button-gap: var(--gap-8);
3
+ }
package/src/utils.ts CHANGED
@@ -1,6 +1,14 @@
1
- import { cloneElement, isValidElement, ReactNode, RefObject, useEffect, useRef } from 'react';
2
-
3
- import { getDataTestId } from '@alfalab/core-components-shared';
1
+ import {
2
+ cloneElement,
3
+ isValidElement,
4
+ ReactNode,
5
+ RefObject,
6
+ useEffect,
7
+ useRef,
8
+ useState,
9
+ } from 'react';
10
+
11
+ import { fnUtils, getDataTestId, useIsMounted } from '@alfalab/core-components-shared';
4
12
 
5
13
  import { BaseSelectProps, GroupShape, OptionShape, OptionsListProps } from './typings';
6
14
 
@@ -154,6 +162,9 @@ export function useVisibleOptions({
154
162
  size,
155
163
  actualOptionsCount,
156
164
  }: useVisibleOptionsArgs) {
165
+ const [, runIfMounted] = useIsMounted();
166
+ const [measured, setMeasured] = useState(false);
167
+
157
168
  useEffect(() => {
158
169
  const measureOptionHeight = (element: HTMLElement) =>
159
170
  typeof size === 'number' ? Math.min(element.clientHeight, size) : element.clientHeight;
@@ -205,8 +216,19 @@ export function useVisibleOptions({
205
216
  }
206
217
  }
207
218
 
219
+ const prevHeight = styleTarget.style.height;
220
+
208
221
  styleTarget.style.height = `${height}px`;
222
+
223
+ setMeasured(true);
224
+
225
+ return () => {
226
+ styleTarget.style.height = prevHeight;
227
+ runIfMounted(() => setMeasured(false));
228
+ };
209
229
  }
230
+
231
+ return fnUtils.noop;
210
232
  }, [
211
233
  actualOptionsCount,
212
234
  listRef,
@@ -216,7 +238,10 @@ export function useVisibleOptions({
216
238
  styleTargetRef,
217
239
  visibleOptions,
218
240
  invalidate,
241
+ runIfMounted,
219
242
  ]);
243
+
244
+ return measured;
220
245
  }
221
246
 
222
247
  export function defaultFilterFn(optionText: string, search: string) {
package/src/vars.css CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  /* options list */
7
7
 
8
- --select-options-list-border-radius: var(--border-radius-m);
8
+ --select-options-list-border-radius: var(--border-radius-8);
9
9
  --select-options-list-box-shadow: var(--shadow-m);
10
10
  --select-options-list-offset: var(--gap-4);
11
- --select-options-list-top-padding: 0;
12
- --select-options-list-bottom-padding: 0;
11
+ --select-options-list-top-padding: var(--gap-0);
12
+ --select-options-list-bottom-padding: var(--gap-0);
13
13
  --select-options-list-empty-placeholder-color: var(--color-light-text-secondary);
14
14
  --select-option-divider-display: none;
15
15
  --select-option-divider-background: var(--color-light-neutral-400);
@@ -33,7 +33,7 @@
33
33
 
34
34
  /* checkmark */
35
35
 
36
- --select-checkmark-margin: 0 var(--gap-8) 0 0;
36
+ --select-checkmark-margin: var(--gap-0) var(--gap-8) var(--gap-0) var(--gap-0);
37
37
  --select-checkmark-margin-after: var(--select-checkmark-margin);
38
38
  --select-checkmark-size: 4px;
39
39
  --select-checkmark-before-display: 'flex';
package/utils.d.ts CHANGED
@@ -45,7 +45,7 @@ type useVisibleOptionsArgs = {
45
45
  */
46
46
  actualOptionsCount?: boolean;
47
47
  };
48
- declare function useVisibleOptions({ visibleOptions, listRef, styleTargetRef, open, invalidate, options, size, actualOptionsCount, }: useVisibleOptionsArgs): void;
48
+ declare function useVisibleOptions({ visibleOptions, listRef, styleTargetRef, open, invalidate, options, size, actualOptionsCount, }: useVisibleOptionsArgs): boolean;
49
49
  declare function defaultFilterFn(optionText: string, search: string): boolean;
50
50
  declare function defaultGroupAccessor(option: GroupShape): string | undefined;
51
51
  declare function defaultAccessor(option: OptionShape): string;
package/utils.js CHANGED
@@ -80,6 +80,8 @@ function processOptions(options, selected, filterFn, filterGroup) {
80
80
  }
81
81
  function useVisibleOptions(_a) {
82
82
  var visibleOptions = _a.visibleOptions, listRef = _a.listRef, _b = _a.styleTargetRef, styleTargetRef = _b === void 0 ? listRef : _b, open = _a.open, invalidate = _a.invalidate, options = _a.options, size = _a.size, actualOptionsCount = _a.actualOptionsCount;
83
+ var _c = coreComponentsShared.useIsMounted(), runIfMounted = _c[1];
84
+ var _d = React.useState(false), measured = _d[0], setMeasured = _d[1];
83
85
  React.useEffect(function () {
84
86
  var measureOptionHeight = function (element) {
85
87
  return typeof size === 'number' ? Math.min(element.clientHeight, size) : element.clientHeight;
@@ -109,8 +111,15 @@ function useVisibleOptions(_a) {
109
111
  height += size / 2;
110
112
  }
111
113
  }
114
+ var prevHeight_1 = styleTarget.style.height;
112
115
  styleTarget.style.height = "".concat(height, "px");
116
+ setMeasured(true);
117
+ return function () {
118
+ styleTarget.style.height = prevHeight_1;
119
+ runIfMounted(function () { return setMeasured(false); });
120
+ };
113
121
  }
122
+ return coreComponentsShared.fnUtils.noop;
114
123
  }, [
115
124
  actualOptionsCount,
116
125
  listRef,
@@ -120,7 +129,9 @@ function useVisibleOptions(_a) {
120
129
  styleTargetRef,
121
130
  visibleOptions,
122
131
  invalidate,
132
+ runIfMounted,
123
133
  ]);
134
+ return measured;
124
135
  }
125
136
  function defaultFilterFn(optionText, search) {
126
137
  if (!search)
@@ -1,4 +0,0 @@
1
- var mobileStyles = {"sheet":"select__sheet_92zot","sheetContent":"select__sheetContent_92zot","modalContent":"select__modalContent_92zot","sheetContainer":"select__sheetContainer_92zot","optionsListWrapper":"select__optionsListWrapper_92zot","optionsList":"select__optionsList_92zot","scrollbar":"select__scrollbar_92zot","search":"select__search_92zot","option":"select__option_92zot","optionGroup":"select__optionGroup_92zot"};
2
- require('./components/base-select/mobile.css')
3
-
4
- export { mobileStyles as m };
@@ -1,6 +0,0 @@
1
- 'use strict';
2
-
3
- var mobileStyles = {"sheet":"select__sheet_92zot","sheetContent":"select__sheetContent_92zot","modalContent":"select__modalContent_92zot","sheetContainer":"select__sheetContainer_92zot","optionsListWrapper":"select__optionsListWrapper_92zot","optionsList":"select__optionsList_92zot","scrollbar":"select__scrollbar_92zot","search":"select__search_92zot","option":"select__option_92zot","optionGroup":"select__optionGroup_92zot"};
4
- require('./components/base-select/mobile.css')
5
-
6
- exports.mobileStyles = mobileStyles;
@@ -1,4 +0,0 @@
1
- const mobileStyles = {"sheet":"select__sheet_92zot","sheetContent":"select__sheetContent_92zot","modalContent":"select__modalContent_92zot","sheetContainer":"select__sheetContainer_92zot","optionsListWrapper":"select__optionsListWrapper_92zot","optionsList":"select__optionsList_92zot","scrollbar":"select__scrollbar_92zot","search":"select__search_92zot","option":"select__option_92zot","optionGroup":"select__optionGroup_92zot"};
2
- require('./components/base-select/mobile.css')
3
-
4
- export { mobileStyles as m };
File without changes
File without changes