@itcase/ui 1.8.123 → 1.8.125
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.
- package/dist/Avatar_cjs_AwXEUY8j.js +161 -0
- package/dist/Avatar_es_BtlaCRc5.js +157 -0
- package/dist/{Button_cjs_Ce97psFT.js → Button_cjs_C34BU1BK.js} +46 -34
- package/dist/{Button_es_CZss7cXh.js → Button_es_DnlzLBUT.js} +46 -34
- package/dist/ChipsGroup_cjs_DfAKN5CA.js +344 -0
- package/dist/{ChipsGroup_es_ayPPUwQ7.js → ChipsGroup_es_DBKY2UyF.js} +48 -35
- package/dist/DatePicker_cjs_DfbeIL2m.js +182 -0
- package/dist/DatePicker_es_BIJNx427.js +178 -0
- package/dist/Divider_cjs_DrmV2ezS.js +105 -0
- package/dist/Divider_es_BiYozVBS.js +101 -0
- package/dist/DropdownItem_cjs_vHuzXW9M.js +211 -0
- package/dist/DropdownItem_es_DVHWWgnU.js +206 -0
- package/dist/Group_cjs_DmfeUcFI.js +59 -0
- package/dist/Group_es_BU5k8f5S.js +55 -0
- package/dist/{Icon_cjs_Cz6IyOkb.js → Icon_cjs_BVLGzj7Y.js} +170 -157
- package/dist/{Icon_es_BrwLifge.js → Icon_es_DkVkzTha.js} +170 -157
- package/dist/Image_cjs_BUM81t4Y.js +28 -0
- package/dist/Image_es_C-IjVkKX.js +26 -0
- package/dist/{Input_cjs_DRPK_RHK.js → Input_cjs_DDi5JVAV.js} +27 -19
- package/dist/{Input_es_Cv5nEb_n.js → Input_es_BnCXATnh.js} +27 -19
- package/dist/{Label_cjs_DMoaOoHi.js → Label_cjs_DwAmukik.js} +45 -33
- package/dist/{Label_es_SULlg9bL.js → Label_es_B2kcstsG.js} +45 -33
- package/dist/{Link_cjs_C5UsZUiF.js → Link_cjs_qKXVfU8e.js} +43 -30
- package/dist/{Link_es_XiqbdwLp.js → Link_es_P2b6ya7P.js} +43 -30
- package/dist/Loader_cjs_DIDsIq3J.js +143 -0
- package/dist/Loader_es_CmSggwbR.js +139 -0
- package/dist/Overlay_cjs_tGA2fU43.js +42 -0
- package/dist/Overlay_es_BS7OTFoy.js +38 -0
- package/dist/{Scrollbar_cjs_DcKOfcNp.js → Scrollbar_cjs_Cp-7v2Mt.js} +1 -1
- package/dist/{Scrollbar_es_CThJeCLF.js → Scrollbar_es_CcMgNvGi.js} +1 -1
- package/dist/Text_cjs_BDTjOTVB.js +69 -0
- package/dist/Text_es_CnymlElo.js +65 -0
- package/dist/cjs/components/Accordion.js +37 -34
- package/dist/cjs/components/Avatar.js +5 -6
- package/dist/cjs/components/AvatarStack/stories/__mock__.js +1 -1
- package/dist/cjs/components/AvatarStack.js +17 -16
- package/dist/cjs/components/Badge.js +3 -4
- package/dist/cjs/components/Breadcrumbs/stories/__mock__.js +1 -1
- package/dist/cjs/components/Breadcrumbs.js +27 -23
- package/dist/cjs/components/Button.js +5 -6
- package/dist/cjs/components/Cell/stories/__mock__.js +1 -1
- package/dist/cjs/components/Cell.js +28 -25
- package/dist/cjs/components/Checkbox.js +33 -26
- package/dist/cjs/components/Checkmark.js +28 -23
- package/dist/cjs/components/Chips/stories/__mock__.js +1 -1
- package/dist/cjs/components/Chips.js +4 -5
- package/dist/cjs/components/Choice/stories/__mock__.js +2 -2
- package/dist/cjs/components/Choice.js +46 -40
- package/dist/cjs/components/Code.js +34 -26
- package/dist/cjs/components/CookiesWarning.js +23 -23
- package/dist/cjs/components/Dadata.js +14 -9
- package/dist/cjs/components/DatePeriod.js +32 -30
- package/dist/cjs/components/DatePicker.js +8 -9
- package/dist/cjs/components/Divider.js +1 -2
- package/dist/cjs/components/Dot.js +5 -6
- package/dist/cjs/components/Drawer.js +23 -21
- package/dist/cjs/components/Dropdown/stories/__mock__.js +6 -6
- package/dist/cjs/components/Dropdown.js +5 -6
- package/dist/cjs/components/Flex.js +11 -12
- package/dist/cjs/components/Grid.js +15 -16
- package/dist/cjs/components/Group.js +1 -2
- package/dist/cjs/components/HTMLContent.js +5 -6
- package/dist/cjs/components/HeroTitle.js +17 -16
- package/dist/cjs/components/Icon.js +3 -4
- package/dist/cjs/components/Image.js +1 -2
- package/dist/cjs/components/Input.js +1 -2
- package/dist/cjs/components/InputPassword.js +34 -26
- package/dist/cjs/components/Label.js +4 -5
- package/dist/cjs/components/Link.js +1 -2
- package/dist/cjs/components/List.js +39 -28
- package/dist/cjs/components/Loader.js +2 -3
- package/dist/cjs/components/Logo.js +10 -11
- package/dist/cjs/components/MenuItem.js +36 -33
- package/dist/cjs/components/Modal.js +40 -38
- package/dist/cjs/components/ModalSheetBottom.js +17 -18
- package/dist/cjs/components/Notification/stories/__mock__.js +1 -1
- package/dist/cjs/components/Notification.js +31 -24
- package/dist/cjs/components/Overlay.js +1 -2
- package/dist/cjs/components/Pagination.js +43 -41
- package/dist/cjs/components/Radio.js +34 -26
- package/dist/cjs/components/RangeSlider.js +8 -9
- package/dist/cjs/components/Response/img.js +1 -1
- package/dist/cjs/components/Response.js +45 -34
- package/dist/cjs/components/SVGContent.js +6 -7
- package/dist/cjs/components/ScrollOnDrag/stories/__mock__.js +2 -2
- package/dist/cjs/components/ScrollOnDrag.js +7 -8
- package/dist/cjs/components/ScrollToView.js +8 -9
- package/dist/cjs/components/Scrollbar/stories/__mock__.js +1 -1
- package/dist/cjs/components/Scrollbar.js +1 -1
- package/dist/cjs/components/Search.js +39 -31
- package/dist/cjs/components/Segmented/stories/__mock__.js +23 -10
- package/dist/cjs/components/Segmented.js +46 -41
- package/dist/cjs/components/Select.js +118 -113
- package/dist/cjs/components/Swiper/stories/__mock__.js +3 -3
- package/dist/cjs/components/Swiper.js +27 -29
- package/dist/cjs/components/Switch.js +33 -26
- package/dist/cjs/components/Tab/stories/__mock__.js +1 -1
- package/dist/cjs/components/Tab.js +33 -29
- package/dist/cjs/components/Text.js +1 -2
- package/dist/cjs/components/Textarea.js +26 -18
- package/dist/cjs/components/Tile.js +21 -17
- package/dist/cjs/components/Title.js +3 -4
- package/dist/cjs/components/Tooltip.js +3 -4
- package/dist/cjs/components/Video/stories/__mocks__.js +1 -1
- package/dist/cjs/components/Video.js +3 -4
- package/dist/cjs/components/Warning.js +26 -20
- package/dist/cjs/context/Notifications.js +38 -42
- package/dist/cjs/context/UIContext.js +19 -17
- package/dist/cjs/context/UrlAssetPrefix.js +3 -3
- package/dist/cjs/hoc/urlWithAssetPrefix.js +13 -16
- package/dist/cjs/hooks/useActiveClasses/useActiveClasses.helpers.js +13 -40
- package/dist/cjs/hooks/useActiveClasses/useActiveClasses.interface.js +1 -1
- package/dist/cjs/hooks/useActiveClasses/useActiveClasses.js +25 -29
- package/dist/cjs/hooks/useAppearanceConfig/useAppearanceConfig.js +13 -15
- package/dist/cjs/hooks/useAppearanceConfig.js +0 -1
- package/dist/cjs/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js +21 -28
- package/dist/cjs/hooks/useDevicePropsGenerator.js +0 -1
- package/dist/cjs/hooks/useDeviceTargetClass.js +0 -1
- package/dist/cjs/hooks/useStyles/styleAttributes.js +1 -1
- package/dist/cjs/hooks/useStyles/useStyles.js +0 -1
- package/dist/cjs/hooks/useStyles.js +0 -1
- package/dist/cjs/hooks/useViewportFix.js +5 -5
- package/dist/cjs/hooks.js +1 -1
- package/dist/cjs/utils/setViewportProperty.js +3 -3
- package/dist/components/Accordion.js +37 -34
- package/dist/components/Avatar.js +5 -6
- package/dist/components/AvatarStack/stories/__mock__.js +1 -1
- package/dist/components/AvatarStack.js +17 -16
- package/dist/components/Badge.js +3 -4
- package/dist/components/Breadcrumbs/stories/__mock__.js +1 -1
- package/dist/components/Breadcrumbs.js +27 -23
- package/dist/components/Button.js +5 -6
- package/dist/components/Cell/stories/__mock__.js +1 -1
- package/dist/components/Cell.js +28 -25
- package/dist/components/Checkbox.js +33 -26
- package/dist/components/Checkmark.js +28 -23
- package/dist/components/Chips/stories/__mock__.js +1 -1
- package/dist/components/Chips.js +4 -5
- package/dist/components/Choice/stories/__mock__.js +2 -2
- package/dist/components/Choice.js +46 -40
- package/dist/components/Code.js +34 -26
- package/dist/components/CookiesWarning.js +23 -23
- package/dist/components/Dadata.js +14 -9
- package/dist/components/DatePeriod.js +32 -30
- package/dist/components/DatePicker.js +8 -9
- package/dist/components/Divider.js +1 -2
- package/dist/components/Dot.js +5 -6
- package/dist/components/Drawer.js +23 -21
- package/dist/components/Dropdown/stories/__mock__.js +6 -6
- package/dist/components/Dropdown.js +5 -6
- package/dist/components/Flex.js +11 -12
- package/dist/components/Grid.js +15 -16
- package/dist/components/Group.js +1 -2
- package/dist/components/HTMLContent.js +5 -6
- package/dist/components/HeroTitle.js +17 -16
- package/dist/components/Icon.js +3 -4
- package/dist/components/Image.js +1 -2
- package/dist/components/Input.js +1 -2
- package/dist/components/InputPassword.js +34 -26
- package/dist/components/Label.js +4 -5
- package/dist/components/Link.js +1 -2
- package/dist/components/List.js +39 -28
- package/dist/components/Loader.js +2 -3
- package/dist/components/Logo.js +10 -11
- package/dist/components/MenuItem.js +36 -33
- package/dist/components/Modal.js +40 -38
- package/dist/components/ModalSheetBottom.js +17 -18
- package/dist/components/Notification/stories/__mock__.js +1 -1
- package/dist/components/Notification.js +31 -24
- package/dist/components/Overlay.js +1 -2
- package/dist/components/Pagination.js +43 -41
- package/dist/components/Radio.js +34 -26
- package/dist/components/RangeSlider.js +8 -9
- package/dist/components/Response/img.js +1 -1
- package/dist/components/Response.js +45 -34
- package/dist/components/SVGContent.js +6 -7
- package/dist/components/ScrollOnDrag/stories/__mock__.js +2 -2
- package/dist/components/ScrollOnDrag.js +7 -8
- package/dist/components/ScrollToView.js +8 -9
- package/dist/components/Scrollbar/stories/__mock__.js +1 -1
- package/dist/components/Scrollbar.js +1 -1
- package/dist/components/Search.js +39 -31
- package/dist/components/Segmented/stories/__mock__.js +23 -10
- package/dist/components/Segmented.js +46 -41
- package/dist/components/Select.js +118 -113
- package/dist/components/Swiper/stories/__mock__.js +3 -3
- package/dist/components/Swiper.js +27 -29
- package/dist/components/Switch.js +33 -26
- package/dist/components/Tab/stories/__mock__.js +1 -1
- package/dist/components/Tab.js +33 -29
- package/dist/components/Text.js +1 -2
- package/dist/components/Textarea.js +26 -18
- package/dist/components/Tile.js +21 -17
- package/dist/components/Title.js +3 -4
- package/dist/components/Tooltip.js +3 -4
- package/dist/components/Video/stories/__mocks__.js +1 -1
- package/dist/components/Video.js +3 -4
- package/dist/components/Warning.js +26 -20
- package/dist/context/Notifications.js +38 -42
- package/dist/context/UIContext.js +19 -17
- package/dist/context/UrlAssetPrefix.js +3 -3
- package/dist/css/components/Tile/Tile.css +3 -3
- package/dist/hoc/urlWithAssetPrefix.js +13 -16
- package/dist/hooks/useActiveClasses/useActiveClasses.helpers.js +13 -40
- package/dist/hooks/useActiveClasses/useActiveClasses.interface.js +1 -1
- package/dist/hooks/useActiveClasses/useActiveClasses.js +25 -29
- package/dist/hooks/useAppearanceConfig/useAppearanceConfig.js +13 -15
- package/dist/hooks/useAppearanceConfig.js +0 -1
- package/dist/hooks/useDevicePropsGenerator/useDevicePropsGenerator.js +21 -28
- package/dist/hooks/useDevicePropsGenerator.js +0 -1
- package/dist/hooks/useDeviceTargetClass.js +0 -1
- package/dist/hooks/useStyles/styleAttributes.js +1 -1
- package/dist/hooks/useStyles/useStyles.js +0 -1
- package/dist/hooks/useStyles.js +0 -1
- package/dist/hooks/useViewportFix.js +5 -5
- package/dist/hooks.js +1 -1
- package/dist/types/components/Button/Button.appearance.d.ts +232 -232
- package/dist/types/components/Button/Button.d.ts +4 -4
- package/dist/types/components/Button/Button.interface.d.ts +5 -5
- package/dist/types/components/Pagination/Pagination.d.ts +1 -1
- package/dist/types/components/Select/SelectContainer.d.ts +1 -1
- package/dist/types/components/Text/Text.appearance.d.ts +58 -58
- package/dist/types/components/Text/Text.interface.d.ts +1 -1
- package/dist/utils/setViewportProperty.js +3 -3
- package/package.json +3 -3
- package/dist/Avatar_cjs_CLJnKU39.js +0 -157
- package/dist/Avatar_es_BgN-fbOj.js +0 -153
- package/dist/ChipsGroup_cjs_C8L3ZeD_.js +0 -331
- package/dist/DatePicker_cjs_BzEtDAb8.js +0 -183
- package/dist/DatePicker_es_DRyCMO0I.js +0 -179
- package/dist/Divider_cjs_DUYtmwn2.js +0 -97
- package/dist/Divider_es_CCLBFIx6.js +0 -93
- package/dist/DropdownItem_cjs_Bhss6lyM.js +0 -207
- package/dist/DropdownItem_es_BXl6lPJx.js +0 -202
- package/dist/Group_cjs_CsJ6ICKK.js +0 -59
- package/dist/Group_es_DRqIIM9m.js +0 -55
- package/dist/Image_cjs_DRhhc66R.js +0 -29
- package/dist/Image_es_BpMidmve.js +0 -27
- package/dist/Loader_cjs_D3lnxPlI.js +0 -132
- package/dist/Loader_es_BUSqFrCd.js +0 -128
- package/dist/Overlay_cjs_CcfJYN5o.js +0 -41
- package/dist/Overlay_es_DF3DAdxS.js +0 -37
- package/dist/Text_cjs_0EINiUq4.js +0 -68
- package/dist/Text_es_CwV9rjFD.js +0 -64
- package/dist/tslib.es6_cjs_CCZ3TN_7.js +0 -59
- package/dist/tslib.es6_es_Bwu1Cn-t.js +0 -56
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tslib_es6 = require('../../../../tslib.es6_cjs_CCZ3TN_7.js');
|
|
4
3
|
var _default = require('@itcase/icons/default');
|
|
5
4
|
|
|
6
|
-
|
|
5
|
+
const segmentedMock = {
|
|
7
6
|
activeSegment: {
|
|
8
7
|
value: 1,
|
|
9
8
|
},
|
|
@@ -34,17 +33,31 @@ var segmentedMock = {
|
|
|
34
33
|
},
|
|
35
34
|
],
|
|
36
35
|
};
|
|
37
|
-
|
|
36
|
+
const segmentedLabelMock = segmentedMock?.segments.map((segment) => ({
|
|
38
37
|
label: segment.label,
|
|
39
38
|
value: segment.value,
|
|
40
|
-
})
|
|
41
|
-
|
|
39
|
+
}));
|
|
40
|
+
const segmentedIconMock = segmentedMock?.segments
|
|
41
|
+
.map((segment) => ({
|
|
42
42
|
iconBefore: segment.iconBefore,
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
43
|
+
}))
|
|
44
|
+
.slice(3);
|
|
45
|
+
const segmentedMockSize = {
|
|
46
|
+
14: segmentedMock.segments.map((segment) => ({
|
|
47
|
+
...segment,
|
|
48
|
+
iconAfter: _default.icons14.Placeholder.Default,
|
|
49
|
+
iconBefore: _default.icons14.Placeholder.Default,
|
|
50
|
+
})),
|
|
51
|
+
16: segmentedMock.segments.map((segment) => ({
|
|
52
|
+
...segment,
|
|
53
|
+
iconAfter: _default.icons16.Placeholder.Default,
|
|
54
|
+
iconBefore: _default.icons16.Placeholder.Default,
|
|
55
|
+
})),
|
|
56
|
+
20: segmentedMock.segments.map((segment) => ({
|
|
57
|
+
...segment,
|
|
58
|
+
iconAfter: _default.icons20.Placeholder.Default,
|
|
59
|
+
iconBefore: _default.icons20.Placeholder.Default,
|
|
60
|
+
})),
|
|
48
61
|
};
|
|
49
62
|
|
|
50
63
|
exports.segmentedIconMock = segmentedIconMock;
|
|
@@ -3,11 +3,10 @@
|
|
|
3
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var clsx = require('clsx');
|
|
6
|
-
var Icon = require('../../
|
|
6
|
+
var Icon = require('../../Icon_cjs_BVLGzj7Y.js');
|
|
7
7
|
var useAppearanceConfig = require('../hooks/useAppearanceConfig/useAppearanceConfig.js');
|
|
8
8
|
var useDevicePropsGenerator = require('../hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
|
|
9
|
-
var Text = require('../../
|
|
10
|
-
var tslib_es6 = require('../../tslib.es6_cjs_CCZ3TN_7.js');
|
|
9
|
+
var Text = require('../../Text_cjs_BDTjOTVB.js');
|
|
11
10
|
require('react-inlinesvg');
|
|
12
11
|
require('../hoc/urlWithAssetPrefix.js');
|
|
13
12
|
require('@itcase/common');
|
|
@@ -24,10 +23,10 @@ require('react-responsive');
|
|
|
24
23
|
require('../utils/setViewportProperty.js');
|
|
25
24
|
require('../hooks.js');
|
|
26
25
|
require('../hooks/useStyles/styleAttributes.js');
|
|
27
|
-
require('../../
|
|
26
|
+
require('../../Link_cjs_qKXVfU8e.js');
|
|
28
27
|
require('lodash/castArray');
|
|
29
28
|
|
|
30
|
-
|
|
29
|
+
const segmentedAppearanceDefault = {
|
|
31
30
|
defaultPrimary: {
|
|
32
31
|
fill: 'surfacePrimary',
|
|
33
32
|
fillActive: 'accentPrimary',
|
|
@@ -64,7 +63,7 @@ var segmentedAppearanceDefault = {
|
|
|
64
63
|
},
|
|
65
64
|
};
|
|
66
65
|
|
|
67
|
-
|
|
66
|
+
const segmentedAppearanceDisabled = {
|
|
68
67
|
disabledPrimary: {
|
|
69
68
|
fill: 'surfaceDisabled',
|
|
70
69
|
fillActive: 'surfaceItemTertiary',
|
|
@@ -80,7 +79,7 @@ var segmentedAppearanceDisabled = {
|
|
|
80
79
|
},
|
|
81
80
|
};
|
|
82
81
|
|
|
83
|
-
|
|
82
|
+
const segmentedAppearanceError = {
|
|
84
83
|
errorPrimary: {
|
|
85
84
|
fill: 'errorTertiary',
|
|
86
85
|
fillActive: 'errorPrimary',
|
|
@@ -98,7 +97,7 @@ var segmentedAppearanceError = {
|
|
|
98
97
|
},
|
|
99
98
|
};
|
|
100
99
|
|
|
101
|
-
|
|
100
|
+
const segmentedAppearanceShape = {
|
|
102
101
|
circular: {
|
|
103
102
|
shape: 'circular',
|
|
104
103
|
},
|
|
@@ -123,7 +122,7 @@ var segmentedAppearanceShape = {
|
|
|
123
122
|
},
|
|
124
123
|
};
|
|
125
124
|
|
|
126
|
-
|
|
125
|
+
const segmentedAppearanceSize = {
|
|
127
126
|
sizeL: {
|
|
128
127
|
size: 'l',
|
|
129
128
|
labelTextSize: 'm',
|
|
@@ -151,7 +150,7 @@ var segmentedAppearanceSize = {
|
|
|
151
150
|
},
|
|
152
151
|
};
|
|
153
152
|
|
|
154
|
-
|
|
153
|
+
const segmentedAppearanceStyle = {
|
|
155
154
|
solid: {
|
|
156
155
|
borderColor: 'none',
|
|
157
156
|
},
|
|
@@ -167,7 +166,7 @@ var segmentedAppearanceStyle = {
|
|
|
167
166
|
},
|
|
168
167
|
};
|
|
169
168
|
|
|
170
|
-
|
|
169
|
+
const segmentedAppearanceSuccess = {
|
|
171
170
|
successPrimary: {
|
|
172
171
|
fill: 'successTertiary',
|
|
173
172
|
fillActive: 'successItemSecondary',
|
|
@@ -185,7 +184,7 @@ var segmentedAppearanceSuccess = {
|
|
|
185
184
|
},
|
|
186
185
|
};
|
|
187
186
|
|
|
188
|
-
|
|
187
|
+
const segmentedAppearanceWarning = {
|
|
189
188
|
warningPrimary: {
|
|
190
189
|
fill: 'warningTertiary',
|
|
191
190
|
fillActive: 'accentPrimary',
|
|
@@ -204,55 +203,61 @@ var segmentedAppearanceWarning = {
|
|
|
204
203
|
},
|
|
205
204
|
};
|
|
206
205
|
|
|
207
|
-
|
|
206
|
+
const segmentedAppearance = {
|
|
207
|
+
...segmentedAppearanceDisabled,
|
|
208
|
+
...segmentedAppearanceSize,
|
|
209
|
+
...segmentedAppearanceShape,
|
|
210
|
+
...segmentedAppearanceStyle,
|
|
211
|
+
...segmentedAppearanceError,
|
|
212
|
+
...segmentedAppearanceSuccess,
|
|
213
|
+
...segmentedAppearanceDefault,
|
|
214
|
+
...segmentedAppearanceWarning,
|
|
215
|
+
};
|
|
208
216
|
|
|
209
|
-
|
|
217
|
+
const segmentedConfig = {
|
|
210
218
|
appearance: segmentedAppearance,
|
|
211
|
-
setAppearance:
|
|
219
|
+
setAppearance: (appearanceConfig) => {
|
|
212
220
|
segmentedConfig.appearance = appearanceConfig;
|
|
213
221
|
},
|
|
214
222
|
};
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
}, [segments]);
|
|
221
|
-
var onChangeValue = React.useCallback(function (item) {
|
|
223
|
+
const Segmented = (props) => {
|
|
224
|
+
const { appearance, className, name, activeSegment = {}, segments, isDisabled, isSkeleton, setActiveSegment, onChange, } = props;
|
|
225
|
+
const controlRef = React.useRef(null);
|
|
226
|
+
const segmentsRefs = React.useMemo(() => new Map(segments.map((item) => [item.value, React.createRef()])), [segments]);
|
|
227
|
+
const onChangeValue = React.useCallback((item) => {
|
|
222
228
|
onChange && onChange(item.value, name);
|
|
223
229
|
setActiveSegment && setActiveSegment(item);
|
|
224
230
|
}, [name, onChange, setActiveSegment]);
|
|
225
|
-
React.useEffect(
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
if (activeSegmentRef === null || activeSegmentRef === void 0 ? void 0 : activeSegmentRef.current) {
|
|
231
|
+
React.useEffect(() => {
|
|
232
|
+
let offsetWidth = 0;
|
|
233
|
+
let offsetLeft = 0;
|
|
234
|
+
const activeSegmentRef = segmentsRefs.get(activeSegment?.value);
|
|
235
|
+
if (activeSegmentRef?.current) {
|
|
231
236
|
offsetWidth = activeSegmentRef.current.offsetWidth;
|
|
232
237
|
offsetLeft = activeSegmentRef.current.offsetLeft;
|
|
233
238
|
}
|
|
234
|
-
|
|
239
|
+
controlRef.current?.style.setProperty('--segmented-active-width', `${offsetWidth}px`);
|
|
235
240
|
// controlRef.current.style.setProperty('--segmented-active-x-pos', `${offsetLeft - 2}px`)
|
|
236
|
-
|
|
241
|
+
controlRef.current?.style.setProperty('--segmented-active-x-pos', `${offsetLeft}px`);
|
|
237
242
|
}, [activeSegment, segmentsRefs]);
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
return (jsxRuntime.jsx("div", { className: clsx(className, 'segmented', shapeClass &&
|
|
242
|
-
|
|
243
|
-
return (jsxRuntime.jsx("div", { className: clsx('segmented__item', !item.label && 'segmented__item_icon', sizeClass &&
|
|
243
|
+
const appearanceConfig = useAppearanceConfig.useAppearanceConfig(appearance, segmentedConfig, isDisabled);
|
|
244
|
+
const propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props, appearanceConfig);
|
|
245
|
+
const { fillActiveClass, fillActiveHoverClass, fillClass, fillHoverClass, labelTextActiveColor, labelTextActiveHoverColor, labelTextColor, labelTextHoverColor, labelTextSize, labelTextWrap, borderColorClass, borderTypeClass, borderWidthClass, iconFill, iconFillActive, iconFillDisabled, iconSize, indicatorFillClass, shapeClass, shapeStrengthClass, sizeClass, widthClass, } = propsGenerator;
|
|
246
|
+
return (jsxRuntime.jsx("div", { className: clsx(className, 'segmented', shapeClass && `shape_${shapeClass}`, shapeStrengthClass && `shape-strength_${shapeStrengthClass}`, fillClass && `fill_${fillClass}`, widthClass && `segmented_width_${widthClass}`, sizeClass && `segmented_size_${sizeClass}`, borderColorClass && `border-color_${borderColorClass}`, borderWidthClass && `border-width_${borderWidthClass}`, borderTypeClass && `border_type_${borderTypeClass}`, isSkeleton && `segmented_skeleton`), ref: controlRef, children: jsxRuntime.jsx("div", { className: "segmented__wrapper", children: jsxRuntime.jsxs("div", { className: clsx('segmented__wrapper-inner'), children: [segments?.map((item) => {
|
|
247
|
+
const isActive = String(activeSegment?.value) === String(item.value);
|
|
248
|
+
return (jsxRuntime.jsx("div", { className: clsx('segmented__item', !item.label && 'segmented__item_icon', sizeClass && `segmented__item_size_${sizeClass}`, isActive && 'segmented__item_active', !isActive && isDisabled && 'segmented__item_state_disabled', isActive &&
|
|
244
249
|
isDisabled &&
|
|
245
250
|
'segmented__item_active_state_disabled', !isActive
|
|
246
|
-
? fillHoverClass &&
|
|
251
|
+
? fillHoverClass && `fill_hover_${fillHoverClass}`
|
|
247
252
|
: fillActiveHoverClass &&
|
|
248
|
-
|
|
253
|
+
`fill_active_hover_${fillActiveHoverClass}`, isActive &&
|
|
249
254
|
fillActiveClass &&
|
|
250
|
-
|
|
255
|
+
`fill_active_${fillActiveClass}`), ref: segmentsRefs.get(item.value), onClick: () => !isDisabled && onChangeValue(item), children: jsxRuntime.jsxs("div", { className: clsx('segmented__item-label', sizeClass && `segmented_size_${sizeClass}`), children: [item.iconBefore || item.iconBeforeActive ? (jsxRuntime.jsx(Icon.Icon, { className: "segmented__item-icon", iconFill: iconFill, iconFillActive: iconFillActive, iconFillDisabled: iconFillDisabled, iconSize: iconSize, SvgImage: isActive
|
|
251
256
|
? item.iconBeforeActive || item.iconBefore
|
|
252
257
|
: item.iconBefore, isActive: isActive, isDisabled: isDisabled })) : null, item.label && (jsxRuntime.jsx(Text.Text, { size: labelTextSize, textColor: labelTextColor, textColorActive: labelTextActiveColor, textColorActiveHover: labelTextActiveHoverColor, textColorHover: labelTextHoverColor, textWrap: labelTextWrap, isActive: isActive, children: item.label })), item.icon || item.iconActive ? (jsxRuntime.jsx(Icon.Icon, { className: "segmented__item-icon", iconFill: iconFill, iconFillActive: iconFillActive, iconFillDisabled: iconFillDisabled, iconSize: iconSize, SvgImage: isActive ? item.iconActive || item.icon : item.icon, isActive: isActive, isDisabled: isDisabled })) : null, item.iconAfter || item.iconAfterActive ? (jsxRuntime.jsx(Icon.Icon, { className: "segmented__item-icon", iconFill: iconFill, iconFillActive: iconFillActive, iconFillDisabled: iconFillDisabled, iconSize: iconSize, SvgImage: isActive
|
|
253
258
|
? item.iconAfterActive || item.iconAfter
|
|
254
|
-
: item.iconAfter, isActive: isActive, isDisabled: isDisabled })) : null] }) },
|
|
255
|
-
}), jsxRuntime.jsx("div", { className: clsx('segmented__indicator', indicatorFillClass &&
|
|
259
|
+
: item.iconAfter, isActive: isActive, isDisabled: isDisabled })) : null] }) }, `${name}-${item.value}`));
|
|
260
|
+
}), jsxRuntime.jsx("div", { className: clsx('segmented__indicator', indicatorFillClass && `fill_${indicatorFillClass}`) })] }) }) }));
|
|
256
261
|
};
|
|
257
262
|
|
|
258
263
|
exports.Segmented = Segmented;
|