stone-kit 0.0.1105 → 0.0.1107

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 (271) hide show
  1. package/README.md +30 -0
  2. package/dist/App.d.ts +2 -0
  3. package/dist/App.js +10 -0
  4. package/dist/Option-DmDx_xOt.js +99 -0
  5. package/dist/PinTrans-D6OZq76b.js +10 -0
  6. package/dist/Router.d.ts +2 -0
  7. package/dist/Router.js +103 -0
  8. package/dist/SmallFilter-C-VKnbkP.js +10 -0
  9. package/dist/chunk-4WY6JWTD-BeveLKf_.js +1582 -0
  10. package/dist/components/Button/ui/Button.d.ts +1 -2
  11. package/dist/components/Button/ui/Button.js +74 -67
  12. package/dist/components/Button/ui/Button.types.d.ts +7 -5
  13. package/dist/components/Button/ui/Button.types.js +5 -3
  14. package/dist/components/CheckBox/CheckBox.d.ts +2 -0
  15. package/dist/components/CheckBox/CheckBox.js +84 -0
  16. package/dist/components/CheckBox/CheckBox.types.d.ts +17 -0
  17. package/dist/components/CheckBox/CheckBox.types.js +1 -0
  18. package/dist/components/CheckBox/index.d.ts +2 -0
  19. package/dist/components/CheckBox/index.js +4 -0
  20. package/dist/components/CheckBoxNew/CheckBox.types.d.ts +16 -0
  21. package/dist/components/CheckBoxNew/CheckBox.types.js +6 -0
  22. package/dist/components/CheckBoxNew/CheckBoxNew.d.ts +11 -0
  23. package/dist/components/CheckBoxNew/CheckBoxNew.js +45 -0
  24. package/dist/components/CheckboxSelect/index.d.ts +1 -0
  25. package/dist/components/CheckboxSelect/index.js +4 -0
  26. package/dist/components/CheckboxSelect/ui/CheckboxSelect.d.ts +18 -0
  27. package/dist/components/CheckboxSelect/ui/CheckboxSelect.js +57 -0
  28. package/dist/components/CommercialLotCard/CommercialLotCard.d.ts +2 -0
  29. package/dist/components/CommercialLotCard/CommercialLotCard.js +81 -0
  30. package/dist/components/CommercialLotCard/components/PaymentLink/PaymentLink.d.ts +6 -0
  31. package/dist/components/CommercialLotCard/components/PaymentLink/PaymentLink.js +21 -0
  32. package/dist/components/CommercialLotCard/components/Price/Price.d.ts +9 -0
  33. package/dist/components/CommercialLotCard/components/Price/Price.js +39 -0
  34. package/dist/components/CommercialLotCard/components/Snippets/Snippets.d.ts +6 -0
  35. package/dist/components/CommercialLotCard/components/Snippets/Snippets.js +100 -0
  36. package/dist/components/CommercialLotCard/components/Tags/Tags.d.ts +7 -0
  37. package/dist/components/CommercialLotCard/components/Tags/Tags.js +37 -0
  38. package/dist/components/CommercialLotCard/types/CommercialLotCard.types.d.ts +10 -0
  39. package/dist/components/CommercialLotCard/types/CommercialLotCard.types.js +1 -0
  40. package/dist/components/CommercialLotCard/types/LotCard.d.ts +386 -0
  41. package/dist/components/CommercialLotCard/types/LotCard.js +1 -0
  42. package/dist/components/CommercialLotCard/utils/formatPrice.d.ts +1 -0
  43. package/dist/components/CommercialLotCard/utils/formatPrice.js +8 -0
  44. package/dist/components/CommercialLotCard/utils/getTagsFeatures.d.ts +4 -0
  45. package/dist/components/CommercialLotCard/utils/getTagsFeatures.js +13 -0
  46. package/dist/components/DestinationTab/ui/DestinationTab.d.ts +0 -1
  47. package/dist/components/DestinationTab/ui/DestinationTab.js +41 -41
  48. package/dist/components/DestinationTab/ui/DestinationTab.types.d.ts +0 -1
  49. package/dist/components/FavoriteIcon/FavoriteIcon.d.ts +7 -0
  50. package/dist/components/FavoriteIcon/FavoriteIcon.js +66 -0
  51. package/dist/components/FavoriteIcon/Heart.d.ts +3 -0
  52. package/dist/components/FavoriteIcon/Heart.js +24 -0
  53. package/dist/components/FavoriteIcon/HeartFilled.d.ts +5 -0
  54. package/dist/components/FavoriteIcon/HeartFilled.js +27 -0
  55. package/dist/components/FieldInput/ui/FieldInput.d.ts +1 -2
  56. package/dist/components/FieldInput/ui/FieldInput.js +28 -7
  57. package/dist/components/FieldInput/ui/FieldInput.types.d.ts +3 -1
  58. package/dist/components/FilterWithSave/hooks/useFilterWithSave.d.ts +43 -0
  59. package/dist/components/FilterWithSave/hooks/useFilterWithSave.js +56 -0
  60. package/dist/components/FilterWithSave/ui/FilterWithSave.d.ts +29 -0
  61. package/dist/components/FilterWithSave/ui/FilterWithSave.js +325 -0
  62. package/dist/components/Flex/ui/Flex.d.ts +0 -1
  63. package/dist/components/Flex/ui/Flex.js +1 -1
  64. package/dist/components/Flex/ui/Flex.types.d.ts +0 -1
  65. package/dist/components/FormModal/ui/ModalForm.d.ts +60 -0
  66. package/dist/components/FormModal/ui/ModalForm.js +1518 -0
  67. package/dist/components/FormModal/utils/reg.d.ts +4 -0
  68. package/dist/components/FormModal/utils/reg.js +6 -0
  69. package/dist/components/GroupedInput/ui/GroupedInputs.d.ts +0 -1
  70. package/dist/components/GroupedInput/ui/GroupedInputs.js +5 -5
  71. package/dist/components/GroupedInput/ui/GroupedInputs.types.d.ts +0 -1
  72. package/dist/components/Input/ui/Input.d.ts +28 -0
  73. package/dist/components/Input/ui/Input.js +3247 -49
  74. package/dist/components/Input/ui/Input.types.d.ts +0 -23
  75. package/dist/components/Input/ui/Input.types.js +1 -7
  76. package/dist/components/Logo/ui/Logo.d.ts +1 -2
  77. package/dist/components/Logo/ui/Logo.js +58 -33
  78. package/dist/components/Logo/ui/Logo.types.d.ts +13 -1
  79. package/dist/components/Logo/ui/Logo.types.js +14 -1
  80. package/dist/components/LotCard/hooks/useLotCard.d.ts +25 -0
  81. package/dist/components/LotCard/hooks/useLotCard.js +13 -0
  82. package/dist/components/LotCard/ui/LotCard.d.ts +1 -2
  83. package/dist/components/LotCard/ui/LotCard.js +203 -104
  84. package/dist/components/LotCard/ui/LotCard.types.d.ts +234 -75
  85. package/dist/components/LotCard/utils/checkBedroomsCount.js +2 -2
  86. package/dist/components/LotCard/utils/const.d.ts +8 -0
  87. package/dist/components/LotCard/utils/const.js +11 -0
  88. package/dist/components/LotCard/utils/formatPrice.d.ts +1 -1
  89. package/dist/components/LotCard/utils/formatPrice.js +5 -6
  90. package/dist/components/LotCard/utils/getTagsFeatures.d.ts +4 -0
  91. package/dist/components/LotCard/utils/getTagsFeatures.js +13 -0
  92. package/dist/components/LotCard/utils/monthlyPayment.d.ts +1 -0
  93. package/dist/components/LotCard/utils/monthlyPayment.js +4 -0
  94. package/dist/components/LotCardSkeleton/index.d.ts +1 -0
  95. package/dist/components/LotCardSkeleton/index.js +4 -0
  96. package/dist/components/LotCardSkeleton/ui/LotCardSkeleton.d.ts +5 -0
  97. package/dist/components/LotCardSkeleton/ui/LotCardSkeleton.js +83 -0
  98. package/dist/components/MetroLabel/ui/MetroLabel.d.ts +0 -1
  99. package/dist/components/MetroLabel/ui/MetroLabel.js +19 -19
  100. package/dist/components/MetroLabel/ui/MetroLabel.types.d.ts +0 -1
  101. package/dist/components/MetroTag/ui/MetroTag.d.ts +1 -2
  102. package/dist/components/MetroTag/ui/MetroTag.js +121 -25
  103. package/dist/components/MetroTag/ui/MetroTag.types.d.ts +21 -6
  104. package/dist/components/Modal/ui/Modal.d.ts +2 -17
  105. package/dist/components/Modal/ui/Modal.js +63 -19594
  106. package/dist/components/Modal/ui/Modal.types.d.ts +21 -0
  107. package/dist/components/ModalSuccess/ModalSuccess.d.ts +2 -0
  108. package/dist/components/ModalSuccess/ModalSuccess.js +60 -0
  109. package/dist/components/ModalSuccess/ModalSuccess.types.d.ts +8 -0
  110. package/dist/components/ModalSuccess/ModalSuccess.types.js +1 -0
  111. package/dist/components/ModalSuccess/index.d.ts +1 -0
  112. package/dist/components/ModalSuccess/index.js +4 -0
  113. package/dist/components/NewIcon/icons/PinTrans.d.ts +3 -0
  114. package/dist/components/NewIcon/icons/PinTrans.js +6 -0
  115. package/dist/components/NewIcon/icons/SmallFilter.d.ts +3 -0
  116. package/dist/components/NewIcon/icons/SmallFilter.js +6 -0
  117. package/dist/components/NewIcon/index.d.ts +1 -1
  118. package/dist/components/NewIcon/index.js +3 -2
  119. package/dist/components/NewIcon/ui/NewIcon.d.ts +2 -2
  120. package/dist/components/NewIcon/ui/NewIcon.js +204 -99
  121. package/dist/components/NewIcon/ui/NewIcon.types.d.ts +0 -1
  122. package/dist/components/NewIcon/ui/iconTypes.d.ts +3 -0
  123. package/dist/components/NewIcon/ui/iconTypes.js +60 -0
  124. package/dist/components/ProjectCardSkeleton/index.d.ts +1 -0
  125. package/dist/components/ProjectCardSkeleton/index.js +4 -0
  126. package/dist/components/ProjectCardSkeleton/ui/ProjectCardSkeleton.d.ts +1 -0
  127. package/dist/components/ProjectCardSkeleton/ui/ProjectCardSkeleton.js +32 -0
  128. package/dist/components/RoundButton/ui/RoundButton.d.ts +1 -2
  129. package/dist/components/RoundButton/ui/RoundButton.js +56 -45
  130. package/dist/components/RoundButton/ui/RoundButton.types.d.ts +10 -2
  131. package/dist/components/RoundButton/ui/RoundButton.types.js +13 -6
  132. package/dist/components/Select/model/selectMode.d.ts +16 -0
  133. package/dist/components/Select/model/selectMode.js +64 -0
  134. package/dist/components/Select/ui/Category.d.ts +13 -0
  135. package/dist/components/Select/ui/Category.js +79 -0
  136. package/dist/components/Select/ui/Option.d.ts +15 -0
  137. package/dist/components/Select/ui/Option.js +7 -0
  138. package/dist/components/Select/ui/Select.d.ts +1 -3
  139. package/dist/components/Select/ui/Select.js +196 -79
  140. package/dist/components/Select/ui/Select.types.d.ts +62 -6
  141. package/dist/components/SliderNavigation/index.d.ts +0 -1
  142. package/dist/components/SliderNavigation/ui/SliderNavigation.d.ts +1 -2
  143. package/dist/components/SliderNavigation/ui/SliderNavigation.js +45 -32
  144. package/dist/components/SliderNavigation/ui/SliderNavigation.types.d.ts +7 -0
  145. package/dist/components/SortSelect/hooks/useSortSelect.d.ts +5 -4
  146. package/dist/components/SortSelect/hooks/useSortSelect.js +2 -2
  147. package/dist/components/SortSelect/ui/SortSelect.d.ts +0 -1
  148. package/dist/components/SortSelect/ui/SortSelect.js +67 -56
  149. package/dist/components/SortSelect/ui/SortSelect.types.d.ts +9 -2
  150. package/dist/components/SummarySelect/index.d.ts +1 -0
  151. package/dist/components/SummarySelect/index.js +4 -0
  152. package/dist/components/SummarySelect/ui/SummarySelect.d.ts +15 -0
  153. package/dist/components/SummarySelect/ui/SummarySelect.js +172 -0
  154. package/dist/components/Switcher/ui/Switcher.d.ts +1 -2
  155. package/dist/components/Switcher/ui/Switcher.js +45 -30
  156. package/dist/components/Switcher/ui/Switcher.types.d.ts +3 -1
  157. package/dist/components/TabSelect/index.d.ts +1 -0
  158. package/dist/components/TabSelect/index.js +4 -0
  159. package/dist/components/TabSelect/ui/TabSelect.d.ts +32 -0
  160. package/dist/components/TabSelect/ui/TabSelect.js +64 -0
  161. package/dist/components/TabSelect/ui/TabSelect.types.d.ts +0 -0
  162. package/dist/components/TabSelect/ui/TabSelect.types.js +1 -0
  163. package/dist/components/TabSwitcher/ui/TabSwitcher.d.ts +4 -4
  164. package/dist/components/TabSwitcher/ui/TabSwitcher.js +114 -34
  165. package/dist/components/TabSwitcher/ui/TabSwitcher.types.d.ts +23 -4
  166. package/dist/components/Tag/ui/Tag.d.ts +1 -2
  167. package/dist/components/Tag/ui/Tag.js +96 -44
  168. package/dist/components/Tag/ui/Tag.types.d.ts +22 -2
  169. package/dist/components/Tag/ui/Tag.types.js +20 -3
  170. package/dist/components/Text/ui/Text.d.ts +1 -2
  171. package/dist/components/Text/ui/Text.js +20 -27
  172. package/dist/components/Text/ui/Text.types.d.ts +0 -1
  173. package/dist/components/TextArea/TextArea.d.ts +8 -0
  174. package/dist/components/TextArea/TextArea.js +25 -0
  175. package/dist/components/ZoomControls/index.d.ts +1 -0
  176. package/dist/components/ZoomControls/index.js +4 -0
  177. package/dist/components/ZoomControls/ui/ZoomControls.d.ts +2 -0
  178. package/dist/components/ZoomControls/ui/ZoomControls.js +33 -0
  179. package/dist/components/ZoomControls/ui/ZoomControls.types.d.ts +6 -0
  180. package/dist/components/ZoomControls/ui/ZoomControls.types.js +1 -0
  181. package/dist/components/mobileButton/ui/MobileButton.d.ts +0 -1
  182. package/dist/components/mobileButton/ui/MobileButton.js +38 -38
  183. package/dist/components/mobileButton/ui/MobileButton.types.d.ts +0 -1
  184. package/dist/index-BJwl9stn.js +33872 -0
  185. package/dist/index-YnD2EP-S.js +43 -0
  186. package/dist/layout/Layout.d.ts +5 -0
  187. package/dist/layout/Layout.js +11 -0
  188. package/dist/layout/components/Header/Header.d.ts +1 -0
  189. package/dist/layout/components/Header/Header.js +141 -0
  190. package/dist/layout/components/Menu.d.ts +1 -0
  191. package/dist/layout/components/Menu.js +109 -0
  192. package/dist/main.d.ts +14 -0
  193. package/dist/main.js +70 -42
  194. package/dist/pages/ButtonsPage/Buttons.d.ts +1 -0
  195. package/dist/pages/ButtonsPage/Buttons.js +106 -0
  196. package/dist/pages/CheckboxPage/CheckboxPage.d.ts +1 -0
  197. package/dist/pages/CheckboxPage/CheckboxPage.js +224 -0
  198. package/dist/pages/FormsPage/FormsPage.d.ts +2 -0
  199. package/dist/pages/FormsPage/FormsPage.js +58 -0
  200. package/dist/pages/HomePage/HomePage.d.ts +2 -0
  201. package/dist/pages/HomePage/HomePage.js +7 -0
  202. package/dist/pages/IconsPage/IconsPage.d.ts +1 -0
  203. package/dist/pages/IconsPage/IconsPage.js +19 -0
  204. package/dist/pages/InputPage/InputPage.d.ts +1 -0
  205. package/dist/pages/InputPage/InputPage.js +13 -0
  206. package/dist/pages/LogoPage/LogoPage.d.ts +1 -0
  207. package/dist/pages/LogoPage/LogoPage.js +16 -0
  208. package/dist/pages/LotsPage/LotsPage.d.ts +1 -0
  209. package/dist/pages/LotsPage/LotsPage.js +74 -0
  210. package/dist/pages/LotsPage/const.d.ts +4 -0
  211. package/dist/pages/LotsPage/const.js +678 -0
  212. package/dist/pages/ModalsPage/ModalPage.d.ts +2 -0
  213. package/dist/pages/ModalsPage/ModalPage.js +110 -0
  214. package/dist/pages/SelectPage/SelectPage.d.ts +1 -0
  215. package/dist/pages/SelectPage/SelectPage.js +211 -0
  216. package/dist/pages/SelectPage/const.d.ts +13 -0
  217. package/dist/pages/SelectPage/const.js +35 -0
  218. package/dist/pages/TabsPage/TabsPage.d.ts +2 -0
  219. package/dist/pages/TabsPage/TabsPage.js +168 -0
  220. package/dist/pages/TagsPage/TagsPage.d.ts +1 -0
  221. package/dist/pages/TagsPage/TagsPage.js +64 -0
  222. package/dist/shared/checkLargeOffice.d.ts +2 -0
  223. package/dist/shared/checkLargeOffice.js +4 -0
  224. package/dist/shared/deepEqual.d.ts +1 -0
  225. package/dist/shared/deepEqual.js +16 -0
  226. package/dist/shared/fmtNumber.d.ts +1 -0
  227. package/dist/shared/fmtNumber.js +4 -0
  228. package/dist/shared/mlnRound.d.ts +1 -0
  229. package/dist/shared/mlnRound.js +8 -0
  230. package/dist/shared/useClientWidth.d.ts +2 -0
  231. package/dist/shared/useClientWidth.js +6 -6
  232. package/dist/stone-kit.css +1 -0
  233. package/dist/stories/entities/CommercialLotCard/CommercialLotCard.stories.js +166 -0
  234. package/dist/stories/entities/index.js +4 -0
  235. package/dist/stories/shared/ui/Button/Button.stories.js +118 -0
  236. package/dist/stories/shared/ui/CheckBox/CheckBox.stories.js +71 -0
  237. package/dist/stories/shared/ui/CheckBox/CheckBoxNew.stories.js +45 -0
  238. package/dist/stories/shared/ui/CheckboxSelect/CheckboxSelect.stories.js +114 -0
  239. package/dist/stories/shared/ui/DestinationTab/DestinationTab.stories.js +89 -0
  240. package/dist/stories/shared/ui/FieldInput/FieldInput.stories.js +31 -0
  241. package/dist/stories/shared/ui/FilterWithSave/FilterWithSave.stories.js +44 -0
  242. package/dist/stories/shared/ui/Flex/Flex.stories.js +74 -0
  243. package/dist/stories/shared/ui/FormModal/FormModal.stories.js +65 -0
  244. package/dist/stories/shared/ui/GroupedInput/GroupedInput.stories.js +68 -0
  245. package/dist/stories/shared/ui/Input/Input.stories.js +82 -0
  246. package/dist/stories/shared/ui/Logo/Logo.stories.js +75 -0
  247. package/dist/stories/shared/ui/MetroLabel/MetroLabel.stories.js +91 -0
  248. package/dist/stories/shared/ui/MetroTag/MetroTag.stories.js +96 -0
  249. package/dist/stories/shared/ui/MobileButton/MobileButton.stories.js +77 -0
  250. package/dist/stories/shared/ui/Modal/Modal.stories.js +77 -0
  251. package/dist/stories/shared/ui/ModalSuccess/ModalSuccess.stories.js +34 -0
  252. package/dist/stories/shared/ui/NewIcon/NewIcon.stories.js +38 -0
  253. package/dist/stories/shared/ui/RoundButton/RoundButton.stories.js +83 -0
  254. package/dist/stories/shared/ui/Select/Select.stories.js +81 -0
  255. package/dist/stories/shared/ui/SliderNavigation/SliderNavigation.stories.js +82 -0
  256. package/dist/stories/shared/ui/SortSelect/SortSelect.stories.js +87 -0
  257. package/dist/stories/shared/ui/SummarySelect/SummarySelect.stories.js +85 -0
  258. package/dist/stories/shared/ui/Switcher/Switcher.stories.js +77 -0
  259. package/dist/stories/shared/ui/TabSelect/TabSelect.stories.js +76 -0
  260. package/dist/stories/shared/ui/TabSwitcher/TabSwitcher.stories.js +76 -0
  261. package/dist/stories/shared/ui/Tag/Tag.stories.js +51 -0
  262. package/dist/stories/shared/ui/Text/Text.stories.js +22 -0
  263. package/dist/stories/shared/ui/TextArea/TextArea.stories.js +37 -0
  264. package/dist/stories/shared/ui/ZoomControls/ZoomControls.stories.js +91 -0
  265. package/dist/stories/shared/ui/index.js +62 -0
  266. package/dist/useLotCard-D-gK4J_o.js +186 -0
  267. package/dist/useSortSelect-IeonkD5d.js +79 -0
  268. package/package.json +39 -30
  269. package/dist/index-DIxK0V-G.js +0 -44
  270. package/dist/style.css +0 -1
  271. package/dist/useSortSelect-A7A_pNcU.js +0 -76
@@ -1,95 +1,212 @@
1
- import { jsxs as u, jsx as l } from "react/jsx-runtime";
2
- import { memo as D, useState as h, useRef as E, useCallback as v, useEffect as f } from "react";
3
- import { c as w } from "../../../index-DIxK0V-G.js";
4
- import { NewIcon as S } from "../../NewIcon/ui/NewIcon.js";
5
- const y = "_multiSelectWrapper_1hlrv_1", I = "_selectedOptions_1hlrv_7", g = "_selectedOptionsOpened_1hlrv_28", j = "_selectOptionsDisabled_1hlrv_32", z = "_optionsList_1hlrv_39", R = "_inputWrapper_1hlrv_54", U = "_option_1hlrv_39", q = "_icon_1hlrv_76", s = {
6
- multiSelectWrapper: y,
7
- selectedOptions: I,
8
- selectedOptionsOpened: g,
9
- selectOptionsDisabled: j,
10
- optionsList: z,
11
- inputWrapper: R,
12
- option: U,
13
- icon: q
14
- }, c = w.bind(s), A = ({
15
- options: k,
16
- placeholder: W = "Выберите опции",
17
- error: b,
18
- disabled: N,
19
- additionalClass: x = "",
20
- onChange: i,
21
- onBlur: o,
22
- selectedValues: r = []
1
+ import { jsxs as d, jsx as t, Fragment as F } from "react/jsx-runtime";
2
+ import { useState as M, useRef as T, useEffect as k } from "react";
3
+ import { c as re } from "../../../index-YnD2EP-S.js";
4
+ import { s as e, O as q } from "../../../Option-DmDx_xOt.js";
5
+ import { Category as te } from "./Category.js";
6
+ import { handleClickModeOption as ne, handleClickModeCategory as le } from "../model/selectMode.js";
7
+ import { NewIcon as y } from "../../NewIcon/ui/NewIcon.js";
8
+ const c = re.bind(e), pe = ({
9
+ options: n,
10
+ customPlaceholder: S,
11
+ placeholder: D = "Выберите опции",
12
+ error: G,
13
+ disabled: $,
14
+ disabledOptions: p = [],
15
+ additionalClass: H = "",
16
+ additionalClassOption: J,
17
+ additionalClassBtn: K,
18
+ onChange: Q,
19
+ onBlur: A,
20
+ selectedValues: s = [],
21
+ isBtn: C = !1,
22
+ btnName: N,
23
+ clickableOptions: f,
24
+ isListRight: U = !1,
25
+ sizeIcon: m,
26
+ mode: o = "options",
27
+ onClickItem: x,
28
+ onCLickSelect: w,
29
+ size_s: E = "large",
30
+ size_m: W,
31
+ size_l: R,
32
+ betweenSize: X = "small",
33
+ isDisabledNotClickable: u,
34
+ isLast: Y,
35
+ isPositionLeftCheckbox: z,
36
+ selectAll: L,
37
+ scrollVersion: Z = "compact",
38
+ isLoading: I = !1,
39
+ selectPaddingBottom: h
23
40
  }) => {
24
- const [t, _] = h(r), [a, O] = h(!1), p = E(null), C = v(
25
- (e) => () => {
26
- const n = t.some((m) => m.value === e.value) ? t.filter((m) => m.value !== e.value) : [...t, e];
27
- _(n), i && i(n);
28
- },
29
- [t, i]
30
- ), d = v((e) => {
31
- p.current && !p.current.contains(e.target) && O(!1);
32
- }, []), L = v(() => {
33
- o && o(t);
34
- }, [t, o]);
35
- return f(() => (document.addEventListener("click", d), () => {
36
- document.removeEventListener("click", d);
37
- }), [d]), f(() => {
38
- _(r);
39
- }, [r]), /* @__PURE__ */ u(
41
+ const P = { value: "selectAll", label: L?.label ?? "Выбрать все" }, b = () => L?.enabled && n && n.length > 0 ? [P, .../* @__PURE__ */ new Set([...n])] : [.../* @__PURE__ */ new Set([...n])];
42
+ n = Array.isArray(n) ? b() : [];
43
+ const [a, _] = M(s), [i, g] = M(!1), v = T(null), V = a.filter((r) => r.value !== "selectAll").length, O = (r) => {
44
+ x && x(r);
45
+ const l = {
46
+ option: r,
47
+ selectedOptions: a,
48
+ disabledOptions: p,
49
+ setSelectedOptions: _,
50
+ onChange: Q,
51
+ mode: o,
52
+ optionsParentArr: n,
53
+ clickableOptions: f,
54
+ isDisabledNotClickable: u
55
+ };
56
+ Array.isArray(r) ? le(l) : ne(l);
57
+ }, ee = () => {
58
+ A && A(a);
59
+ }, j = (r) => {
60
+ const l = r.target;
61
+ if (v.current && !v.current.contains(r.target)) {
62
+ if (l.closest("svg"))
63
+ return;
64
+ g(!1);
65
+ }
66
+ };
67
+ k(() => (document.addEventListener("click", j), () => {
68
+ document.removeEventListener("click", j);
69
+ }), [i]);
70
+ const B = T(s);
71
+ return k(() => {
72
+ s.length !== B.current.length && (_(s), B.current = s);
73
+ }, [s]), /* @__PURE__ */ d(
40
74
  "div",
41
75
  {
42
- ref: p,
43
- className: c(s.multiSelectWrapper, { [s.multiSelectWrapperError]: b }, x),
76
+ ref: v,
77
+ className: c(e.multiSelectWrapper, { [e.multiSelectWrapperError]: G }, H),
78
+ style: h !== void 0 && i ? {
79
+ paddingBottom: `${h}px`,
80
+ marginBottom: `-${h}px`
81
+ } : void 0,
44
82
  tabIndex: 0,
45
- onBlur: L,
83
+ onBlur: ee,
46
84
  children: [
47
- /* @__PURE__ */ u("div", { className: c(s.inputWrapper), children: [
48
- /* @__PURE__ */ l(
49
- "input",
50
- {
51
- type: "text",
52
- readOnly: !0,
53
- value: t.length === 0 ? W : "Выбрано " + t.length + " опции",
54
- className: c(s.selectedOptions, { [s.selectOptionsDisabled]: N }),
55
- onClick: () => O(!a)
56
- }
57
- ),
58
- /* @__PURE__ */ l(
59
- S,
60
- {
61
- name: "arrowShort",
62
- deg: a ? "180" : "0",
63
- size: "24",
64
- additionalClass: s.icon
65
- }
66
- )
85
+ /* @__PURE__ */ d("div", { className: c(e.inputWrapper), children: [
86
+ !C && /* @__PURE__ */ d(F, { children: [
87
+ /* @__PURE__ */ t(
88
+ "div",
89
+ {
90
+ className: c(
91
+ e.selectedOptions,
92
+ e[`${E}-size`],
93
+ e[`${W}-size_m`],
94
+ e[`${R}-size)_l`],
95
+ { [e.selectedOptionsNotEmpty]: a.length > 0 },
96
+ { [e.selectOptionsDisabled]: $ }
97
+ ),
98
+ onClick: () => g(!i),
99
+ children: /* @__PURE__ */ t("div", { className: e.selectedText, children: S || (a.length === 0 ? D : "Выбрано " + V) })
100
+ }
101
+ ),
102
+ /* @__PURE__ */ t(
103
+ y,
104
+ {
105
+ name: "arrowShort",
106
+ deg: i ? "180" : "0",
107
+ size: m ?? "24",
108
+ additionalClass: e.icon
109
+ }
110
+ )
111
+ ] }),
112
+ C && /* @__PURE__ */ d(F, { children: [
113
+ /* @__PURE__ */ t(
114
+ "button",
115
+ {
116
+ className: c(
117
+ e.selectedOptions,
118
+ e[`${E}-size`],
119
+ e[`${W}-size_m`],
120
+ e[`${R}-size_l`],
121
+ e.selectedOptionsBtn,
122
+ { [e.selectOptionsDisabled]: $ },
123
+ K
124
+ ),
125
+ onClick: () => {
126
+ w && w(), g(!i);
127
+ },
128
+ children: N
129
+ }
130
+ ),
131
+ /* @__PURE__ */ t(
132
+ y,
133
+ {
134
+ name: "filter",
135
+ deg: i ? "180" : "0",
136
+ size: m ?? "24",
137
+ additionalClass: c(e.icon, { [e.iconBtn]: !N })
138
+ }
139
+ )
140
+ ] })
67
141
  ] }),
68
- a && /* @__PURE__ */ l("div", { className: s.optionsList, children: k.map((e) => /* @__PURE__ */ u(
142
+ i && /* @__PURE__ */ t("div", { className: c(
143
+ e.optionsOuterContainer,
144
+ e[`betweenSize_${X}`],
145
+ { [e.listRight]: U },
146
+ { [e.lastList]: Y },
147
+ J
148
+ ), children: I ? /* @__PURE__ */ t("div", { className: e.loaderWrapper, children: /* @__PURE__ */ t(
149
+ y,
150
+ {
151
+ name: "loader",
152
+ size: "24",
153
+ color: "currentColor",
154
+ additionalClass: e.loader
155
+ }
156
+ ) }) : !n || n.length === 0 ? /* @__PURE__ */ t("div", { className: e.emptyStateWrapper, children: "Список пуст" }) : /* @__PURE__ */ d(
69
157
  "div",
70
158
  {
71
- className: c(s.option, {
72
- [s.selected]: t.some((n) => n.value === e.value)
73
- }),
74
- onClick: C(e),
159
+ className: c(e.optionsList, e[`scroll_${Z}`]),
75
160
  children: [
76
- /* @__PURE__ */ l("div", { children: e.label }),
77
- /* @__PURE__ */ l(
78
- S,
161
+ (o === "options" || o === "single") && n?.map((r, l) => /* @__PURE__ */ t(
162
+ q,
163
+ {
164
+ disabledOptions: p,
165
+ clickableOptions: f,
166
+ selectedOptions: a,
167
+ sizeIcon: m,
168
+ option: r,
169
+ isPositionLeftCheckbox: z,
170
+ handleOptionClick: O,
171
+ isDisabledNotClickable: u
172
+ },
173
+ l
174
+ )),
175
+ (o === "category" || o === "double") && n?.map((r, l) => "options" in r ? /* @__PURE__ */ t(
176
+ te,
79
177
  {
80
- size: "20",
81
- name: t.some((n) => n.value === e.value) ? "selectChecked" : "selectUnchecked"
82
- }
83
- )
178
+ disabledOptions: p,
179
+ clickableOptions: f,
180
+ selectedOptions: a,
181
+ sizeIcon: m,
182
+ category: r,
183
+ mode: o,
184
+ selectedValues: s,
185
+ handleOptionClick: O,
186
+ isDisabledNotClickable: u
187
+ },
188
+ l
189
+ ) : r.value === "selectAll" ? /* @__PURE__ */ t(
190
+ q,
191
+ {
192
+ disabledOptions: p,
193
+ clickableOptions: f,
194
+ selectedOptions: a,
195
+ isPositionLeftCheckbox: z,
196
+ sizeIcon: m,
197
+ option: r,
198
+ handleOptionClick: O,
199
+ isDisabledNotClickable: u
200
+ },
201
+ l
202
+ ) : null)
84
203
  ]
85
- },
86
- e.value
87
- )) })
204
+ }
205
+ ) })
88
206
  ]
89
207
  }
90
208
  );
91
- }, B = D(A);
92
- B.displayName = "Select";
209
+ };
93
210
  export {
94
- B as Select
211
+ pe as Select
95
212
  };
@@ -1,14 +1,70 @@
1
- export interface Option {
1
+ export type TOption = {
2
2
  value: string | number;
3
3
  label: string;
4
- }
4
+ parent?: string;
5
+ id?: number | string;
6
+ };
7
+ export type TCategory = {
8
+ value: string | number;
9
+ label: string;
10
+ options: TOption[];
11
+ };
12
+ export type TModeSelect = 'options' | 'category' | 'double' | 'single';
13
+ type SelectSizes = 'medium' | 'small' | 'large';
14
+ type BetweenSize = 'small' | 'medium';
15
+ type ScrollVersion = 'standard' | 'compact';
5
16
  export interface MultiSelectProps {
6
- options: Option[];
17
+ options: TOption[] | TCategory[];
18
+ category?: TCategory[];
7
19
  placeholder?: string;
8
20
  error?: boolean;
9
21
  disabled?: boolean;
22
+ betweenSize?: BetweenSize;
23
+ size_s?: SelectSizes;
24
+ size_m?: SelectSizes;
25
+ size_l?: SelectSizes;
26
+ /**
27
+ * Доп стили для родителя-контейнера
28
+ */
10
29
  additionalClass?: string;
11
- onChange?: (selectedOptions: Option[]) => void;
12
- onBlur?: (selectedOptions: Option[]) => void;
13
- selectedValues?: Option[];
30
+ /**
31
+ * Доп стили для каждой опции
32
+ */
33
+ additionalClassOption?: string;
34
+ /**
35
+ * Доп стили для кнопки-контейнера
36
+ */
37
+ additionalClassBtn?: string;
38
+ onChange?: (selectedOptions: TOption[]) => unknown;
39
+ onBlur?: (selectedOptions: TOption[]) => unknown;
40
+ selectedValues?: TOption[];
41
+ isBtn?: boolean;
42
+ btnName?: string;
43
+ widthBtn?: string;
44
+ widthOptionList?: string;
45
+ isListRight?: boolean;
46
+ isPositionLeftCheckbox?: boolean;
47
+ isLast?: boolean;
48
+ /**
49
+ * Список опций которые будут задизейблены по умолчанию
50
+ */
51
+ disabledOptions?: TOption[];
52
+ /**
53
+ * Список опций которые доступны для клика
54
+ */
55
+ clickableOptions?: (string | undefined)[];
56
+ sizeIcon?: string;
57
+ mode?: TModeSelect;
58
+ onClickItem?: (option: TOption | TOption[]) => void;
59
+ onCLickSelect?: () => void;
60
+ isDisabledNotClickable?: boolean;
61
+ customPlaceholder?: string;
62
+ selectAll?: {
63
+ enabled: boolean;
64
+ label?: string;
65
+ };
66
+ scrollVersion?: ScrollVersion;
67
+ isLoading?: boolean;
68
+ selectPaddingBottom?: number;
14
69
  }
70
+ export {};
@@ -1,3 +1,2 @@
1
1
  import { SliderNavigation } from './ui/SliderNavigation.tsx';
2
-
3
2
  export { SliderNavigation };
@@ -1,3 +1,2 @@
1
1
  import { ISliderNavigation } from './SliderNavigation.types.ts';
2
-
3
- export declare const SliderNavigation: ({ indexSlide, goPrev, goNext, arr, additionalClassTag, navigationClassName, additionalClassNavButton }: ISliderNavigation) => import("react/jsx-runtime").JSX.Element;
2
+ export declare const SliderNavigation: ({ indexSlide, isDisabledOff, goPrev, goNext, arr, isNeedTag, additionalClassTag, navigationClassName, additionalClassNavButton, size, size_m, size_l, }: ISliderNavigation) => import("react/jsx-runtime").JSX.Element;
@@ -1,52 +1,65 @@
1
- import { jsxs as m, jsx as i } from "react/jsx-runtime";
2
- import { RoundButton as s } from "../../RoundButton/ui/RoundButton.js";
3
- import { Tag as g } from "../../Tag/ui/Tag.js";
4
- import { useClientWidth as c } from "../../../shared/useClientWidth.js";
5
- const f = ({
1
+ import { jsxs as f, jsx as r } from "react/jsx-runtime";
2
+ import { useClientWidth as C } from "../../../shared/useClientWidth.js";
3
+ import { c as T } from "../../../index-YnD2EP-S.js";
4
+ import { RoundButton as d } from "../../RoundButton/ui/RoundButton.js";
5
+ import { Tag as N } from "../../Tag/ui/Tag.js";
6
+ const k = "_sliderTag_1rvl9_1", l = {
7
+ sliderTag: k
8
+ }, v = T.bind(l), $ = ({
6
9
  indexSlide: o,
7
- goPrev: n,
8
- goNext: t,
10
+ isDisabledOff: s,
11
+ goPrev: m,
12
+ goNext: c,
9
13
  arr: e,
10
- additionalClassTag: d = "",
11
- navigationClassName: l = "",
12
- additionalClassNavButton: a = ""
14
+ isNeedTag: g = !0,
15
+ additionalClassTag: p = "",
16
+ navigationClassName: u = "",
17
+ additionalClassNavButton: t = "",
18
+ size: n = "medium",
19
+ size_m: i = "medium",
20
+ size_l: a = "large"
13
21
  }) => {
14
- const { isDesktop: r } = c();
15
- return /* @__PURE__ */ m("div", { className: l, children: [
16
- /* @__PURE__ */ i(
17
- s,
22
+ const { isDesktop: h } = C();
23
+ return /* @__PURE__ */ f("div", { className: u, children: [
24
+ /* @__PURE__ */ r(
25
+ d,
18
26
  {
19
- size: r ? "large" : "medium",
20
- iconName: "arrowLong",
27
+ iconName: "directionDown",
21
28
  deg: "90",
22
- disabled: o === 0,
23
- additionalClass: a,
24
- onClick: n
29
+ size: n,
30
+ size_m: i,
31
+ size_l: a,
32
+ disabled: s ? !1 : o === 0,
33
+ additionalClass: t,
34
+ onClick: m
25
35
  }
26
36
  ),
27
- /* @__PURE__ */ i(
28
- g,
37
+ g && /* @__PURE__ */ r(
38
+ N,
29
39
  {
30
- style: { backgroundColor: "#141416" },
31
- additionalClass: d,
40
+ additionalClass: v(l.sliderTag, p),
32
41
  variant: "shade",
33
- size: "medium",
42
+ size: h ? "large" : "medium",
43
+ size_m: i,
44
+ size_l: a,
34
45
  children: `${o + 1} из ${e.length}`
35
46
  }
36
47
  ),
37
- /* @__PURE__ */ i(
38
- s,
48
+ /* @__PURE__ */ r(
49
+ d,
39
50
  {
40
- disabled: o === e.length - 1,
41
- size: r ? "large" : "medium",
42
- iconName: "arrowLong",
51
+ disabled: s ? !1 : o === e.length - 1,
52
+ size: n,
53
+ size_m: i,
54
+ size_l: a,
55
+ iconName: "directionDown",
43
56
  deg: "-90",
44
- additionalClass: a,
45
- onClick: t
57
+ additionalClass: t,
58
+ onClick: c
46
59
  }
47
60
  )
48
61
  ] });
49
62
  };
50
63
  export {
51
- f as SliderNavigation
64
+ $ as SliderNavigation
52
65
  };
@@ -1,3 +1,4 @@
1
+ type Sizes = 'large' | 'medium' | 'small';
1
2
  export interface ISliderNavigation {
2
3
  indexSlide: number;
3
4
  goPrev: () => void;
@@ -6,4 +7,10 @@ export interface ISliderNavigation {
6
7
  additionalClassTag?: string;
7
8
  additionalClassNavButton?: string;
8
9
  navigationClassName?: string;
10
+ isNeedTag?: boolean;
11
+ isDisabledOff?: boolean;
12
+ size?: Sizes;
13
+ size_m?: Sizes;
14
+ size_l?: Sizes;
9
15
  }
16
+ export {};
@@ -1,11 +1,11 @@
1
1
  import { MouseEvent } from 'react';
2
2
  import { Option } from '../ui/SortSelect.types';
3
-
3
+ import { TOption } from '../../Select/ui/Select.types.ts';
4
4
  interface IUseSortSelect {
5
5
  selectedOption: Option | null;
6
- setSelectedOption: React.Dispatch<React.SetStateAction<Option | null>>;
6
+ setSelectedOption?: (event: Option | null) => void;
7
7
  setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
8
- containerRef: React.RefObject<HTMLDivElement>;
8
+ containerRef: React.RefObject<HTMLDivElement | null>;
9
9
  isOpen: boolean;
10
10
  isMobile: boolean;
11
11
  placeholder: string;
@@ -13,12 +13,13 @@ interface IUseSortSelect {
13
13
  label: string;
14
14
  value: string;
15
15
  }) => void;
16
+ onClickOption?: (option: TOption | TOption[]) => void;
16
17
  onBlur?: (event: {
17
18
  label: string;
18
19
  value: string;
19
20
  }) => void;
20
21
  }
21
- export declare const useSortSelect: ({ selectedOption, setSelectedOption, setIsOpen, containerRef, onBlur, onChange, isMobile, placeholder, }: IUseSortSelect) => {
22
+ export declare const useSortSelect: ({ selectedOption, setSelectedOption, setIsOpen, containerRef, onBlur, onChange, onClickOption, isMobile, placeholder, }: IUseSortSelect) => {
22
23
  handleDocumentClick: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
23
24
  handleBlur: (event: React.FocusEvent<HTMLDivElement>) => void;
24
25
  getInputValue: () => string;
@@ -1,6 +1,6 @@
1
1
  import "react/jsx-runtime";
2
- import { u as m } from "../../../useSortSelect-A7A_pNcU.js";
3
- import "../../../index-DIxK0V-G.js";
2
+ import { u as m } from "../../../useSortSelect-IeonkD5d.js";
3
+ import "../../../index-YnD2EP-S.js";
4
4
  export {
5
5
  m as useSortSelect
6
6
  };
@@ -1,4 +1,3 @@
1
1
  import { default as React } from 'react';
2
2
  import { SortSelectProps } from './SortSelect.types';
3
-
4
3
  export declare const SortSelect: React.FC<SortSelectProps>;