@itcase/ui 1.8.122 → 1.8.124
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_mojzcWRL.js +161 -0
- package/dist/Avatar_es_BFom0nAS.js +157 -0
- package/dist/{Button_cjs_i0Dn1pkl.js → Button_cjs_CZz8OjWi.js} +42 -30
- package/dist/{Button_es_CtH5EKJd.js → Button_es_Cn3wtv3M.js} +42 -30
- package/dist/ChipsGroup_cjs_Dgskkc1e.js +344 -0
- package/dist/{ChipsGroup_es_ayPPUwQ7.js → ChipsGroup_es_BVQ7_n0k.js} +48 -35
- package/dist/DatePicker_cjs_Lzrr9Amf.js +182 -0
- package/dist/DatePicker_es_D1LvY5RT.js +178 -0
- package/dist/Divider_cjs_DrmV2ezS.js +105 -0
- package/dist/Divider_es_BiYozVBS.js +101 -0
- package/dist/DropdownItem_cjs_rKLdFxSj.js +211 -0
- package/dist/DropdownItem_es_B-1qtEa7.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_DpFxIFv5.js} +170 -121
- package/dist/{Icon_es_BrwLifge.js → Icon_es_D5eiycFI.js} +170 -121
- package/dist/Image_cjs_CBDMUzv_.js +29 -0
- package/dist/Image_es_BHec4iVN.js +27 -0
- package/dist/{Input_cjs_Du73R-wm.js → Input_cjs_DDi5JVAV.js} +27 -19
- package/dist/{Input_es_CiDHjDqJ.js → Input_es_BnCXATnh.js} +27 -19
- package/dist/{Label_cjs_DMoaOoHi.js → Label_cjs_C-x9blCL.js} +45 -33
- package/dist/{Label_es_SULlg9bL.js → Label_es_DCqpSw_F.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 +114 -84
- 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 +102 -84
- 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 +47 -42
- 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 +59 -69
- 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 +114 -84
- 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 +102 -84
- 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 +47 -42
- 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 +59 -69
- 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/Checkmark/Checkmark.css +2 -0
- package/dist/css/components/DatePeriod/DatePeriod.css +3 -0
- package/dist/css/components/Input/Input.css +0 -8
- package/dist/css/components/InputPassword/InputPassword.css +34 -43
- 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/InputPassword/InputPassword.appearance.d.ts +179 -2
- package/dist/types/components/InputPassword/appearance/inputPasswordDefault.d.ts +7 -4
- package/dist/types/components/InputPassword/appearance/inputPasswordDisabled.d.ts +6 -4
- package/dist/types/components/InputPassword/appearance/inputPasswordError.d.ts +6 -4
- package/dist/types/components/InputPassword/appearance/inputPasswordRequire.d.ts +6 -4
- package/dist/types/components/InputPassword/appearance/inputPasswordShape.d.ts +25 -0
- package/dist/types/components/InputPassword/appearance/inputPasswordSize.d.ts +14 -28
- package/dist/types/components/InputPassword/appearance/inputPasswordStyle.d.ts +5 -5
- package/dist/types/components/InputPassword/appearance/inputPasswordSuccess.d.ts +6 -4
- package/dist/types/components/Response/Response.constant.d.ts +32 -35
- package/dist/types/components/Response/appearance/responseConfirm.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseDanger.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseEmpty.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseError.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseFail.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseNothingFound.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseRefresh.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseSuccess.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseUnableLoadData.d.ts +1 -0
- package/dist/types/components/Response/appearance/responseWarning.d.ts +1 -0
- package/dist/types/components/Select/SelectContainer.d.ts +1 -1
- package/dist/types/components/Tab/appearance/tabSize.d.ts +0 -14
- package/dist/types/components/Tab/appearance/tabSurface.d.ts +7 -7
- package/dist/utils/setViewportProperty.js +3 -3
- package/package.json +14 -14
- package/dist/Avatar_cjs_kuE0Rueg.js +0 -157
- package/dist/Avatar_es_lx7s4Vla.js +0 -153
- package/dist/ChipsGroup_cjs_C8L3ZeD_.js +0 -331
- package/dist/DatePicker_cjs_DsIAoi01.js +0 -183
- package/dist/DatePicker_es_BP5BrEr-.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_B6YlGx8G.js +0 -28
- package/dist/Image_es_BvYo_cHH.js +0 -26
- 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
|
@@ -6,10 +6,9 @@ var clsx = require('clsx');
|
|
|
6
6
|
var useAppearanceConfig = require('../hooks/useAppearanceConfig/useAppearanceConfig.js');
|
|
7
7
|
var useDevicePropsGenerator = require('../hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
|
|
8
8
|
var useStyles = require('../hooks/useStyles/useStyles.js');
|
|
9
|
-
var Icon = require('../../
|
|
10
|
-
var Link = require('../../
|
|
11
|
-
var Text = require('../../
|
|
12
|
-
var tslib_es6 = require('../../tslib.es6_cjs_CCZ3TN_7.js');
|
|
9
|
+
var Icon = require('../../Icon_cjs_DpFxIFv5.js');
|
|
10
|
+
var Link = require('../../Link_cjs_qKXVfU8e.js');
|
|
11
|
+
var Text = require('../../Text_cjs_BDTjOTVB.js');
|
|
13
12
|
require('lodash/camelCase');
|
|
14
13
|
require('lodash/castArray');
|
|
15
14
|
require('lodash/upperFirst');
|
|
@@ -27,7 +26,7 @@ require('react-inlinesvg');
|
|
|
27
26
|
require('../hoc/urlWithAssetPrefix.js');
|
|
28
27
|
require('../context/UrlAssetPrefix.js');
|
|
29
28
|
|
|
30
|
-
|
|
29
|
+
const menuItemAppearanceAccent = {
|
|
31
30
|
accentMutedPrimary: {
|
|
32
31
|
fill: 'accentTertiary',
|
|
33
32
|
fillHover: 'accentTertiaryHover',
|
|
@@ -54,7 +53,7 @@ var menuItemAppearanceAccent = {
|
|
|
54
53
|
},
|
|
55
54
|
};
|
|
56
55
|
|
|
57
|
-
|
|
56
|
+
const menuItemAppearanceError = {
|
|
58
57
|
errorMutedPrimary: {
|
|
59
58
|
fill: 'errorDisabled',
|
|
60
59
|
labelTextColor: 'errorTextQuaternary',
|
|
@@ -73,7 +72,7 @@ var menuItemAppearanceError = {
|
|
|
73
72
|
},
|
|
74
73
|
};
|
|
75
74
|
|
|
76
|
-
|
|
75
|
+
const menuItemAppearanceSize = {
|
|
77
76
|
sizeXXL: {
|
|
78
77
|
size: 'xxl',
|
|
79
78
|
labelTextSize: 'l',
|
|
@@ -118,7 +117,7 @@ var menuItemAppearanceSize = {
|
|
|
118
117
|
},
|
|
119
118
|
};
|
|
120
119
|
|
|
121
|
-
|
|
120
|
+
const menuItemAppearanceStyle = {
|
|
122
121
|
solid: {
|
|
123
122
|
borderColor: 'none',
|
|
124
123
|
},
|
|
@@ -132,7 +131,7 @@ var menuItemAppearanceStyle = {
|
|
|
132
131
|
},
|
|
133
132
|
};
|
|
134
133
|
|
|
135
|
-
|
|
134
|
+
const menuItemAppearanceSurface = {
|
|
136
135
|
surfaceMutedPrimary: {
|
|
137
136
|
fill: 'surfaceSecondary',
|
|
138
137
|
fillActive: 'surfacePrimary',
|
|
@@ -176,43 +175,47 @@ var menuItemAppearanceSurface = {
|
|
|
176
175
|
},
|
|
177
176
|
};
|
|
178
177
|
|
|
179
|
-
|
|
178
|
+
const menuItemAppearance = {
|
|
179
|
+
...menuItemAppearanceSize,
|
|
180
|
+
...menuItemAppearanceStyle,
|
|
181
|
+
...menuItemAppearanceAccent,
|
|
182
|
+
...menuItemAppearanceError,
|
|
183
|
+
...menuItemAppearanceSurface,
|
|
184
|
+
};
|
|
180
185
|
|
|
181
|
-
|
|
186
|
+
const menuItemConfig = {
|
|
182
187
|
appearance: menuItemAppearance,
|
|
183
|
-
setAppearance:
|
|
188
|
+
setAppearance: (appearanceConfig) => {
|
|
184
189
|
menuItemConfig.appearance = appearanceConfig;
|
|
185
190
|
},
|
|
186
191
|
};
|
|
187
192
|
function MenuItem(props) {
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
var _a;
|
|
193
|
+
const { className, appearance, label, isDisabled, href, link, LinkComponent, rel, showTooltip, target, tooltipAppearance, underline, before, after, isActive, onClick, children, } = props;
|
|
194
|
+
const tooltipRef = React.useRef(null);
|
|
195
|
+
const onMouseEnter = React.useCallback(() => {
|
|
192
196
|
if (showTooltip) {
|
|
193
|
-
|
|
197
|
+
tooltipRef.current?.openTooltip();
|
|
194
198
|
}
|
|
195
199
|
}, [showTooltip]);
|
|
196
|
-
|
|
197
|
-
var _a;
|
|
200
|
+
const onMouseLeave = React.useCallback(() => {
|
|
198
201
|
if (showTooltip) {
|
|
199
|
-
|
|
202
|
+
tooltipRef.current?.closeTooltip();
|
|
200
203
|
}
|
|
201
204
|
}, [showTooltip]);
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
+
const appearanceConfig = useAppearanceConfig.useAppearanceConfig(appearance, menuItemConfig, isDisabled);
|
|
206
|
+
const propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props, appearanceConfig);
|
|
207
|
+
const { directionClass, justifyContentClass, alignClass, alignDirectionClass, fillActiveClass, fillActiveHoverClass, fillClass, fillHoverClass, labelStyle, labelTextActiveColor, labelTextActiveHoverColor, labelTextColor, labelTextColorDisabled, labelTextHoverColor, labelTextSize, labelWeight, labelWrap, borderColorClass, iconAfter, iconAfterFill, iconAfterFillIcon, iconAfterFillSize, iconAfterShape, iconAfterSize, iconAfterSrc, iconBadgeAppearance, iconBadgeShape, iconBadgeSize, iconBadgeTextColor, iconBadgeTextSize, iconBadgeValue, iconBefore, iconBeforeFill, iconBeforeFillIcon, iconBeforeFillSize, iconBeforeShape, iconBeforeSize, iconBeforeSrc, shapeClass, shapeStrengthClass, sizeClass, tooltipFill, tooltipShapeStrength, tooltipText, tooltipTextColor, tooltipTitleTextColor, typeClass, widthClass, isSkeleton, } = propsGenerator;
|
|
205
208
|
// @ts-expect-error
|
|
206
|
-
|
|
207
|
-
return (jsxRuntime.jsxs("div", { className: clsx('menu-item', isActive && 'menu-item_state_active', isDisabled &&
|
|
208
|
-
'menu-item_label-icon', sizeClass &&
|
|
209
|
-
? fillClass &&
|
|
210
|
-
: fillActiveClass &&
|
|
211
|
-
? fillHoverClass &&
|
|
212
|
-
: fillActiveHoverClass &&
|
|
213
|
-
?
|
|
214
|
-
: shapeClass === 'rounded' && 'shape-strength_default', typeClass &&
|
|
215
|
-
|
|
209
|
+
const { styles: menuItem } = useStyles.useStyles(props);
|
|
210
|
+
return (jsxRuntime.jsxs("div", { className: clsx('menu-item', isActive && 'menu-item_state_active', isDisabled && `menu-item_state_disabled`, directionClass && `menu-item_direction_${directionClass}`, className, (iconBefore || iconBeforeSrc || iconAfter || iconAfterSrc) &&
|
|
211
|
+
'menu-item_label-icon', sizeClass && `menu-item_size_${sizeClass}`, borderColorClass && `border-color_${borderColorClass}`, !isActive
|
|
212
|
+
? fillClass && `fill_${fillClass}`
|
|
213
|
+
: fillActiveClass && `fill_active_${fillActiveClass}`, !isActive
|
|
214
|
+
? fillHoverClass && `fill_hover_${fillHoverClass}`
|
|
215
|
+
: fillActiveHoverClass && `fill_active_hover_${fillActiveHoverClass}`, shapeClass && `shape_${shapeClass}`, shapeStrengthClass
|
|
216
|
+
? `shape-strength_${shapeStrengthClass}`
|
|
217
|
+
: shapeClass === 'rounded' && 'shape-strength_default', typeClass && `menu-item_type_${typeClass}`, widthClass && `width_${widthClass}`, justifyContentClass &&
|
|
218
|
+
`menu-item_justify-content_${justifyContentClass}`, isSkeleton && `menu-item_skeleton`), style: menuItem, onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, children: [jsxRuntime.jsxs(Link.Link, { className: clsx('menu-item__wrapper', alignDirectionClass && `align_${alignDirectionClass}`, alignClass && `align_${alignClass}`), href: link || href, LinkComponent: LinkComponent, rel: rel, target: target, underline: underline, children: [before, children || (jsxRuntime.jsxs(React.Fragment, { children: [(iconBefore || iconBeforeSrc) && (jsxRuntime.jsx(Icon.Icon, { className: clsx('menu-item__icon_before', iconBadgeValue && 'menu-item__icon_before-badge'), fill: iconBeforeFill, fillSize: iconBeforeFillSize, badgeAppearance: iconBadgeAppearance, badgeClass: 'menu-item__icon_before_badge', badgeShape: iconBadgeShape, badgeSize: iconBadgeSize, badgeTextColor: iconBadgeTextColor, badgeTextSize: iconBadgeTextSize, badgeValue: iconBadgeValue, iconFill: iconBeforeFillIcon, iconSize: iconBeforeSize, imageSrc: iconBeforeSrc, shape: iconBeforeShape, SvgImage: iconBefore })), label && (jsxRuntime.jsx(Text.Text, { className: "menu-item__label", size: labelTextSize, isDisabled: isDisabled, textColorDisabled: labelTextColorDisabled, textColor: labelTextColor, textColorActive: labelTextActiveColor, textColorActiveHover: labelTextActiveHoverColor, textColorHover: labelTextHoverColor, textStyle: labelStyle, textWeight: labelWeight, textWrap: labelWrap, isActive: isActive, children: label })), (iconAfter || iconAfterSrc) && (jsxRuntime.jsx(Icon.Icon, { className: clsx('menu-item__icon_after', iconBadgeValue && 'menu-item__icon_after-badge'), fill: iconAfterFill, fillSize: iconAfterFillSize, badgeAppearance: iconBadgeAppearance, badgeClass: "menu-item__icon_after_badge", badgeShape: iconBadgeShape, badgeSize: iconBadgeSize, badgeTextColor: iconBadgeTextColor, badgeTextSize: iconBadgeTextSize, badgeValue: iconBadgeValue, iconFill: iconAfterFillIcon, iconSize: iconAfterSize, imageSrc: iconAfterSrc, shape: iconAfterShape, SvgImage: iconAfter }))] })), after] }), showTooltip && (jsxRuntime.jsx(Icon.Tooltip, { className: "menu-item__tooltip", ref: tooltipRef, appearance: tooltipAppearance, minWidth: "auto", fill: tooltipFill, left: "100%", zIndex: "100", titleTextColor: tooltipTitleTextColor, text: tooltipText, textColor: tooltipTextColor, centering: "vertical", shapeStrength: tooltipShapeStrength }))] }));
|
|
216
219
|
}
|
|
217
220
|
|
|
218
221
|
exports.MenuItem = MenuItem;
|
|
@@ -7,11 +7,10 @@ var ReactDOM = require('react-dom');
|
|
|
7
7
|
var useAppearanceConfig = require('../hooks/useAppearanceConfig/useAppearanceConfig.js');
|
|
8
8
|
var useDevicePropsGenerator = require('../hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
|
|
9
9
|
var useStyles = require('../hooks/useStyles/useStyles.js');
|
|
10
|
-
var Icon = require('../../
|
|
11
|
-
var Overlay = require('../../
|
|
12
|
-
var tslib_es6 = require('../../tslib.es6_cjs_CCZ3TN_7.js');
|
|
10
|
+
var Icon = require('../../Icon_cjs_DpFxIFv5.js');
|
|
11
|
+
var Overlay = require('../../Overlay_cjs_tGA2fU43.js');
|
|
13
12
|
var _default = require('@itcase/icons/default');
|
|
14
|
-
var Loader = require('../../
|
|
13
|
+
var Loader = require('../../Loader_cjs_DIDsIq3J.js');
|
|
15
14
|
require('lodash/camelCase');
|
|
16
15
|
require('lodash/castArray');
|
|
17
16
|
require('lodash/upperFirst');
|
|
@@ -28,10 +27,10 @@ require('lodash/maxBy');
|
|
|
28
27
|
require('react-inlinesvg');
|
|
29
28
|
require('../hoc/urlWithAssetPrefix.js');
|
|
30
29
|
require('../context/UrlAssetPrefix.js');
|
|
31
|
-
require('../../
|
|
32
|
-
require('../../
|
|
30
|
+
require('../../Link_cjs_qKXVfU8e.js');
|
|
31
|
+
require('../../Text_cjs_BDTjOTVB.js');
|
|
33
32
|
|
|
34
|
-
|
|
33
|
+
const modalAppearanceShape = {
|
|
35
34
|
circular: {
|
|
36
35
|
shape: 'circular',
|
|
37
36
|
},
|
|
@@ -56,7 +55,7 @@ var modalAppearanceShape = {
|
|
|
56
55
|
},
|
|
57
56
|
};
|
|
58
57
|
|
|
59
|
-
|
|
58
|
+
const modalAppearanceSize = {
|
|
60
59
|
sizeXL: {
|
|
61
60
|
size: 'xl',
|
|
62
61
|
titleTextSize: 'h2',
|
|
@@ -83,7 +82,7 @@ var modalAppearanceSize = {
|
|
|
83
82
|
},
|
|
84
83
|
};
|
|
85
84
|
|
|
86
|
-
|
|
85
|
+
const modalAppearanceStyle = {
|
|
87
86
|
solid: {
|
|
88
87
|
borderColor: 'none',
|
|
89
88
|
},
|
|
@@ -97,7 +96,7 @@ var modalAppearanceStyle = {
|
|
|
97
96
|
},
|
|
98
97
|
};
|
|
99
98
|
|
|
100
|
-
|
|
99
|
+
const modalAppearanceSurface = {
|
|
101
100
|
surfacePrimary: {
|
|
102
101
|
fill: 'surfacePrimary',
|
|
103
102
|
borderColor: 'surfaceBorderPrimary',
|
|
@@ -105,43 +104,46 @@ var modalAppearanceSurface = {
|
|
|
105
104
|
},
|
|
106
105
|
};
|
|
107
106
|
|
|
108
|
-
|
|
107
|
+
const modalAppearance = {
|
|
108
|
+
...modalAppearanceSurface,
|
|
109
|
+
...modalAppearanceShape,
|
|
110
|
+
...modalAppearanceStyle,
|
|
111
|
+
...modalAppearanceSize,
|
|
112
|
+
};
|
|
109
113
|
|
|
110
|
-
|
|
114
|
+
const modalConfig = {
|
|
111
115
|
appearance: modalAppearance,
|
|
112
|
-
setAppearance:
|
|
116
|
+
setAppearance: (appearanceConfig) => {
|
|
113
117
|
modalConfig.appearance = appearanceConfig;
|
|
114
118
|
},
|
|
115
119
|
};
|
|
116
|
-
|
|
117
|
-
var _a;
|
|
118
|
-
if (className === void 0) { className = ''; }
|
|
120
|
+
const getOrCreateModalElement = (modalQuerySelector, className = '') => {
|
|
119
121
|
// prettier-ignore
|
|
120
|
-
|
|
122
|
+
const classList = className && typeof className === 'string'
|
|
121
123
|
? className.split(' ').filter(Boolean)
|
|
122
124
|
: [];
|
|
123
|
-
|
|
125
|
+
let modalElement = document.querySelector(modalQuerySelector);
|
|
124
126
|
if (!modalElement) {
|
|
125
127
|
// Add modal element into the DOM on mount.
|
|
126
128
|
modalElement = document.createElement('div');
|
|
127
129
|
modalElement.setAttribute('id', 'modal-global');
|
|
128
130
|
modalElement.classList.add('modal');
|
|
129
131
|
if (classList.length) {
|
|
130
|
-
|
|
132
|
+
modalElement.classList.add(...classList);
|
|
131
133
|
}
|
|
132
134
|
document.body.prepend(modalElement);
|
|
133
135
|
}
|
|
134
136
|
return modalElement;
|
|
135
137
|
};
|
|
136
138
|
// Modal component that is an abstraction around the portal API.
|
|
137
|
-
|
|
138
|
-
|
|
139
|
+
const Modal = React.forwardRef(function Modal(props, ref) {
|
|
140
|
+
const { id, dataTestId, dataTour, className, appearance, title, contentClassName, modalQuerySelector = '#modal-global', scroll = false, stickyHeader = false, isCloseOnBlur = true, isOpen: initialIsOpen = false, isOverlay = true, isDisabled, isScrollOnOpen = true, isSetFocusOnOpen = true, isSkeleton, onClickOverlay, onCloseModal, onOpenModal, children, } = props;
|
|
139
141
|
// Query DOM element
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
142
|
+
const [modalElement, setModalElement] = React.useState(null);
|
|
143
|
+
const [isOpen, setIsOpen] = React.useState(initialIsOpen);
|
|
144
|
+
const modalContentRef = React.useRef(null);
|
|
143
145
|
// const modalOverlayRef = useRef(null)
|
|
144
|
-
|
|
146
|
+
const addModalProps = React.useCallback((element) => {
|
|
145
147
|
// Change class need in "useEffect"
|
|
146
148
|
if (isOpen) {
|
|
147
149
|
// Show modal
|
|
@@ -154,7 +156,7 @@ var Modal = React.forwardRef(function Modal(props, ref) {
|
|
|
154
156
|
// "setTimeout" in this implementation is needs for set focus on modal
|
|
155
157
|
// after "onMouseDown" event on button
|
|
156
158
|
if (isSetFocusOnOpen) {
|
|
157
|
-
setTimeout(
|
|
159
|
+
setTimeout(() => {
|
|
158
160
|
if (modalContentRef.current) {
|
|
159
161
|
modalContentRef.current.focus();
|
|
160
162
|
}
|
|
@@ -167,7 +169,7 @@ var Modal = React.forwardRef(function Modal(props, ref) {
|
|
|
167
169
|
}
|
|
168
170
|
}, [isOpen, isScrollOnOpen, isSetFocusOnOpen]);
|
|
169
171
|
// Show modal with children content
|
|
170
|
-
|
|
172
|
+
const openModal = React.useCallback(() => {
|
|
171
173
|
setIsOpen(true);
|
|
172
174
|
// Callback
|
|
173
175
|
if (typeof onOpenModal === 'function') {
|
|
@@ -188,10 +190,10 @@ var Modal = React.forwardRef(function Modal(props, ref) {
|
|
|
188
190
|
*/
|
|
189
191
|
}, [onOpenModal]);
|
|
190
192
|
// Hide modal and unmount children content
|
|
191
|
-
|
|
193
|
+
const closeModal = React.useCallback((event) => {
|
|
192
194
|
if (event) {
|
|
193
195
|
// prettier-ignore
|
|
194
|
-
|
|
196
|
+
const hasRelatedTarget = (event.relatedTarget &&
|
|
195
197
|
modalElement &&
|
|
196
198
|
modalElement.contains(event.relatedTarget));
|
|
197
199
|
if (hasRelatedTarget) {
|
|
@@ -202,31 +204,31 @@ var Modal = React.forwardRef(function Modal(props, ref) {
|
|
|
202
204
|
// Callback
|
|
203
205
|
onCloseModal && onCloseModal();
|
|
204
206
|
}, [modalElement, onCloseModal]);
|
|
205
|
-
React.useEffect(
|
|
207
|
+
React.useEffect(() => {
|
|
206
208
|
if (!modalElement) {
|
|
207
209
|
return;
|
|
208
210
|
}
|
|
209
211
|
addModalProps(modalElement);
|
|
210
212
|
}, [isOpen]); // eslint-disable-line
|
|
211
|
-
React.useLayoutEffect(
|
|
212
|
-
|
|
213
|
+
React.useLayoutEffect(() => {
|
|
214
|
+
const element = getOrCreateModalElement(modalQuerySelector, className);
|
|
213
215
|
setModalElement(element);
|
|
214
216
|
if (element) {
|
|
215
217
|
addModalProps(element);
|
|
216
218
|
}
|
|
217
219
|
}, [addModalProps, className, modalQuerySelector]);
|
|
218
220
|
// Save ref things
|
|
219
|
-
React.useImperativeHandle(ref,
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
221
|
+
React.useImperativeHandle(ref, () => ({ modalElement, openModal, closeModal, isOpen }), [isOpen, openModal, closeModal, modalElement]);
|
|
222
|
+
const appearanceConfig = useAppearanceConfig.useAppearanceConfig(appearance, modalConfig, isDisabled);
|
|
223
|
+
const propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props, appearanceConfig);
|
|
224
|
+
const { fillClass, titleTextColor, titleTextColorHover, titleTextSize, titleTextTruncate, titleTextWeight, titleTextWidth, titleTextWrap, borderColorClass, borderTypeClass, borderWidthClass, elevationClass, overlayFill, overlayOpacity, shapeClass, shapeStrengthClass, sizeClass, closeIconAppearance, closeIconAppearanceSize, closeIconFillSize, closeIconImage, closeIconShape, closeIconSize, } = propsGenerator;
|
|
223
225
|
// @ts-expect-error
|
|
224
|
-
|
|
226
|
+
const { styles: modalStyles } = useStyles.useStyles(props);
|
|
225
227
|
// Use a portal to render the children into the element
|
|
226
228
|
return (modalElement &&
|
|
227
229
|
ReactDOM.createPortal(
|
|
228
230
|
// Any valid React child: JSX, strings, arrays, etc.
|
|
229
|
-
isOpen ? (jsxRuntime.jsxs(React.Fragment, { children: [jsxRuntime.jsxs("div", { id: id, className: clsx('modal__content', contentClassName, fillClass &&
|
|
231
|
+
isOpen ? (jsxRuntime.jsxs(React.Fragment, { children: [jsxRuntime.jsxs("div", { id: id, className: clsx('modal__content', contentClassName, fillClass && `fill_${fillClass}`, borderWidthClass && `border-width_${borderWidthClass}`, borderColorClass && `border-color_${borderColorClass}`, borderTypeClass && `border_type_${borderTypeClass}`, shapeClass && `shape_${shapeClass}`, sizeClass && `modal_size_${sizeClass}`, shapeStrengthClass && `shape-strength_${shapeStrengthClass}`, borderColorClass && `border-color_${borderColorClass}`, borderWidthClass && `border-width_${borderWidthClass}`, borderTypeClass && `border_type_${borderTypeClass}`, elevationClass && `elevation_${elevationClass}`, scroll && !stickyHeader && `modal-scroll_${scroll}`, stickyHeader && 'modal-scroll_header_sticky', isSkeleton && 'modal_skeleton'), ref: modalContentRef, "data-test-id": dataTestId, "data-tour": dataTour, style: modalStyles, tabIndex: 0, onBlur: isCloseOnBlur ? closeModal : undefined, children: [(title || closeIconImage) && (jsxRuntime.jsxs("div", { className: clsx('modal__header'), children: [title && (jsxRuntime.jsx(Icon.Title, { className: "modal__title", width: titleTextWidth, size: titleTextSize, textColor: titleTextColor, textColorHover: titleTextColorHover, textTruncate: titleTextTruncate, textWeight: titleTextWeight, textWrap: titleTextWrap, children: title })), closeIconImage && (jsxRuntime.jsx("div", { className: "modal__close", onClick: closeModal, children: jsxRuntime.jsx(Icon.Icon, { appearance: `${closeIconAppearance} ${closeIconAppearanceSize}`, fillSize: closeIconFillSize, iconSize: closeIconSize, shape: closeIconShape, SvgImage: closeIconImage }) }))] })), jsxRuntime.jsx("div", { className: "modal__content-wrapper", children: children })] }), jsxRuntime.jsx(Overlay.Overlay, { className: "modal__overlay",
|
|
230
232
|
// ref={modalOverlayRef}
|
|
231
233
|
fill: overlayFill, opacity: overlayOpacity, isOverlay: isOverlay, onClick: onClickOverlay })] })) : null,
|
|
232
234
|
// A DOM element
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var tslib_es6 = require('../../tslib.es6_cjs_CCZ3TN_7.js');
|
|
4
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
5
4
|
var React = require('react');
|
|
6
5
|
var clsx = require('clsx');
|
|
@@ -8,7 +7,7 @@ var reactModalSheet = require('react-modal-sheet');
|
|
|
8
7
|
var useAppearanceConfig = require('../hooks/useAppearanceConfig/useAppearanceConfig.js');
|
|
9
8
|
var useDevicePropsGenerator = require('../hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
|
|
10
9
|
var useStyles = require('../hooks/useStyles/useStyles.js');
|
|
11
|
-
var Icon = require('../../
|
|
10
|
+
var Icon = require('../../Icon_cjs_DpFxIFv5.js');
|
|
12
11
|
require('lodash/camelCase');
|
|
13
12
|
require('lodash/castArray');
|
|
14
13
|
require('lodash/upperFirst');
|
|
@@ -25,10 +24,10 @@ require('lodash/maxBy');
|
|
|
25
24
|
require('react-inlinesvg');
|
|
26
25
|
require('../hoc/urlWithAssetPrefix.js');
|
|
27
26
|
require('../context/UrlAssetPrefix.js');
|
|
28
|
-
require('../../
|
|
29
|
-
require('../../
|
|
27
|
+
require('../../Link_cjs_qKXVfU8e.js');
|
|
28
|
+
require('../../Text_cjs_BDTjOTVB.js');
|
|
30
29
|
|
|
31
|
-
|
|
30
|
+
const modalSheetBottomAppearance = {
|
|
32
31
|
sizeL: {
|
|
33
32
|
size: 'l',
|
|
34
33
|
titleTextSize: 'h4',
|
|
@@ -42,31 +41,31 @@ var modalSheetBottomAppearance = {
|
|
|
42
41
|
},
|
|
43
42
|
};
|
|
44
43
|
|
|
45
|
-
|
|
44
|
+
const modalSheetBottomConfig = {
|
|
46
45
|
appearance: modalSheetBottomAppearance};
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
46
|
+
const ModalSheetBottom = React.forwardRef(function Modal(props, ref) {
|
|
47
|
+
const { appearance, initialIsOpen, title, isDisabled, closeButton, onCloseModalSheetBottom, onOpenModalSheetBottom, children, } = props;
|
|
48
|
+
const [isOpen, setIsOpen] = React.useState(initialIsOpen);
|
|
49
|
+
const openModalSheetBottom = React.useCallback(() => {
|
|
51
50
|
setIsOpen(true);
|
|
52
51
|
onOpenModalSheetBottom && onOpenModalSheetBottom();
|
|
53
52
|
}, [onOpenModalSheetBottom]);
|
|
54
|
-
|
|
53
|
+
const closeModalSheetBottom = React.useCallback(() => {
|
|
55
54
|
setIsOpen(false);
|
|
56
55
|
onCloseModalSheetBottom && onCloseModalSheetBottom();
|
|
57
56
|
}, [onCloseModalSheetBottom]);
|
|
58
57
|
// Save ref things
|
|
59
|
-
React.useImperativeHandle(ref,
|
|
58
|
+
React.useImperativeHandle(ref, () => ({
|
|
60
59
|
openModal: openModalSheetBottom,
|
|
61
60
|
closeModal: closeModalSheetBottom,
|
|
62
61
|
isOpen: isOpen,
|
|
63
|
-
})
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
62
|
+
}), [isOpen, openModalSheetBottom, closeModalSheetBottom]);
|
|
63
|
+
const appearanceConfig = useAppearanceConfig.useAppearanceConfig(appearance, modalSheetBottomConfig, isDisabled);
|
|
64
|
+
const propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props, appearanceConfig);
|
|
65
|
+
const { titleTextColor, titleTextColorHover, titleTextSize, titleTextTruncate, titleTextWeight, titleTextWidth, titleTextWrap, zeroPadding, } = propsGenerator;
|
|
67
66
|
// @ts-expect-error
|
|
68
|
-
|
|
69
|
-
return (jsxRuntime.jsxs(reactModalSheet.Sheet,
|
|
67
|
+
const { styles } = useStyles.useStyles(props);
|
|
68
|
+
return (jsxRuntime.jsxs(reactModalSheet.Sheet, { className: "modal-sheet-bottom", isOpen: isOpen, onClose: closeModalSheetBottom, ...props, children: [jsxRuntime.jsxs(reactModalSheet.Sheet.Container, { className: "modal-sheet-bottom__container", style: styles, children: [jsxRuntime.jsx(reactModalSheet.Sheet.Header, { className: "modal-sheet-bottom__header", children: closeButton && (jsxRuntime.jsx("div", { className: "modal-sheet-bottom__close", onClick: closeModalSheetBottom, children: closeButton })) }), jsxRuntime.jsx(reactModalSheet.Sheet.Content, { className: "modal-sheet-bottom__content", children: jsxRuntime.jsx(reactModalSheet.Sheet.Scroller, { autoPadding: true, children: jsxRuntime.jsxs("div", { className: clsx('modal-sheet-bottom__content-wrapper', zeroPadding && 'modal-sheet-bottom__content-reset-padding'), children: [title && (jsxRuntime.jsx(Icon.Title, { className: "modal__title", width: titleTextWidth, size: titleTextSize, textColor: titleTextColor, textColorHover: titleTextColorHover, textTruncate: titleTextTruncate, textWeight: titleTextWeight, textWrap: titleTextWrap, children: title })), children] }) }) })] }), jsxRuntime.jsx(reactModalSheet.Sheet.Backdrop, { className: "modal-sheet-bottom__backdrop", onClick: closeModalSheetBottom })] }));
|
|
70
69
|
});
|
|
71
70
|
|
|
72
71
|
exports.ModalSheetBottom = ModalSheetBottom;
|
|
@@ -5,9 +5,8 @@ var clsx = require('clsx');
|
|
|
5
5
|
var useAppearanceConfig = require('../hooks/useAppearanceConfig/useAppearanceConfig.js');
|
|
6
6
|
var useDevicePropsGenerator = require('../hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
|
|
7
7
|
var useStyles = require('../hooks/useStyles/useStyles.js');
|
|
8
|
-
var Icon = require('../../
|
|
9
|
-
var Text = require('../../
|
|
10
|
-
var tslib_es6 = require('../../tslib.es6_cjs_CCZ3TN_7.js');
|
|
8
|
+
var Icon = require('../../Icon_cjs_DpFxIFv5.js');
|
|
9
|
+
var Text = require('../../Text_cjs_BDTjOTVB.js');
|
|
11
10
|
var _default = require('@itcase/icons/default');
|
|
12
11
|
var Notifications = require('../context/Notifications.js');
|
|
13
12
|
require('../context/UIContext.js');
|
|
@@ -26,9 +25,9 @@ require('lodash/maxBy');
|
|
|
26
25
|
require('react-inlinesvg');
|
|
27
26
|
require('../hoc/urlWithAssetPrefix.js');
|
|
28
27
|
require('../context/UrlAssetPrefix.js');
|
|
29
|
-
require('../../
|
|
28
|
+
require('../../Link_cjs_qKXVfU8e.js');
|
|
30
29
|
|
|
31
|
-
|
|
30
|
+
const notificationAppearanceDefault = {
|
|
32
31
|
defaultPrimary: {
|
|
33
32
|
fill: 'surfacePrimary',
|
|
34
33
|
fillHover: 'surfacePrimaryHover',
|
|
@@ -44,7 +43,7 @@ var notificationAppearanceDefault = {
|
|
|
44
43
|
},
|
|
45
44
|
};
|
|
46
45
|
|
|
47
|
-
|
|
46
|
+
const notificationAppearanceError = {
|
|
48
47
|
errorPrimary: {
|
|
49
48
|
fill: 'errorPrimary',
|
|
50
49
|
fillHover: 'errorPrimaryHover',
|
|
@@ -60,7 +59,7 @@ var notificationAppearanceError = {
|
|
|
60
59
|
},
|
|
61
60
|
};
|
|
62
61
|
|
|
63
|
-
|
|
62
|
+
const notificationAppearanceInfo = {
|
|
64
63
|
infoPrimary: {
|
|
65
64
|
fill: 'infoPrimary',
|
|
66
65
|
fillHover: 'infoPrimaryHover',
|
|
@@ -76,9 +75,9 @@ var notificationAppearanceInfo = {
|
|
|
76
75
|
},
|
|
77
76
|
};
|
|
78
77
|
|
|
79
|
-
|
|
78
|
+
const notificationAppearanceSize = {};
|
|
80
79
|
|
|
81
|
-
|
|
80
|
+
const notificationAppearanceStyle = {
|
|
82
81
|
solid: {
|
|
83
82
|
borderColor: 'none',
|
|
84
83
|
},
|
|
@@ -92,7 +91,7 @@ var notificationAppearanceStyle = {
|
|
|
92
91
|
},
|
|
93
92
|
};
|
|
94
93
|
|
|
95
|
-
|
|
94
|
+
const notificationAppearanceSuccess = {
|
|
96
95
|
successPrimary: {
|
|
97
96
|
fill: 'successPrimary',
|
|
98
97
|
fillHover: 'successPrimaryHover',
|
|
@@ -108,7 +107,7 @@ var notificationAppearanceSuccess = {
|
|
|
108
107
|
},
|
|
109
108
|
};
|
|
110
109
|
|
|
111
|
-
|
|
110
|
+
const notificationAppearanceWarning = {
|
|
112
111
|
warningPrimary: {
|
|
113
112
|
fill: 'warningPrimary',
|
|
114
113
|
fillHover: 'warningPrimaryHover',
|
|
@@ -124,29 +123,37 @@ var notificationAppearanceWarning = {
|
|
|
124
123
|
},
|
|
125
124
|
};
|
|
126
125
|
|
|
127
|
-
|
|
126
|
+
const notificationAppearance = {
|
|
127
|
+
...notificationAppearanceDefault,
|
|
128
|
+
...notificationAppearanceSize,
|
|
129
|
+
...notificationAppearanceStyle,
|
|
130
|
+
...notificationAppearanceError,
|
|
131
|
+
...notificationAppearanceInfo,
|
|
132
|
+
...notificationAppearanceSuccess,
|
|
133
|
+
...notificationAppearanceWarning,
|
|
134
|
+
};
|
|
128
135
|
|
|
129
|
-
|
|
136
|
+
const notificationConfig = {
|
|
130
137
|
appearance: notificationAppearance,
|
|
131
|
-
setAppearance:
|
|
138
|
+
setAppearance: (appearanceConfig) => {
|
|
132
139
|
notificationConfig.appearance = appearanceConfig;
|
|
133
140
|
},
|
|
134
141
|
};
|
|
135
142
|
function Notification(props) {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
143
|
+
const { id, dataTestId, dataTour, className, appearance, title, desc, before, after, close, isSkeleton, onClickClose, } = props;
|
|
144
|
+
const appearanceConfig = useAppearanceConfig.useAppearanceConfig(appearance, notificationConfig);
|
|
145
|
+
const propsGenerator = useDevicePropsGenerator.useDevicePropsGenerator(props, appearanceConfig);
|
|
146
|
+
const { fillClass, titleTextColor, titleTextSize, descTextColor, descTextSize, elevationClass, sizeClass, widthClass, closeIcon, closeIconFill, closeIconFillIcon, closeIconFillSize, closeIconShape, closeIconSize, closeIconSrc, } = propsGenerator;
|
|
140
147
|
// @ts-expect-error
|
|
141
|
-
|
|
142
|
-
return (jsxRuntime.jsxs("div", { className: clsx('notification__item', elevationClass &&
|
|
148
|
+
const { styles: notificationStyles } = useStyles.useStyles(props);
|
|
149
|
+
return (jsxRuntime.jsxs("div", { className: clsx('notification__item', elevationClass && `elevation_${elevationClass}`, sizeClass && `notification__item_set_${sizeClass}`, widthClass && `width_${widthClass}`, fillClass && `fill_${fillClass}`, isSkeleton && `notification__item_skeleton`), "data-test-id": dataTestId, "data-tour": dataTour, style: notificationStyles, children: [before, jsxRuntime.jsxs("div", { className: clsx(className, 'notification__item-wrapper'), children: [title && (jsxRuntime.jsx(Text.Text, { className: "notification__item-title", size: titleTextSize, textColor: titleTextColor, children: title })), desc && (jsxRuntime.jsx(Text.Text, { className: "notification__item-text", size: descTextSize, textColor: descTextColor, children: desc })), close && (closeIcon || closeIconSrc) && (jsxRuntime.jsx(Icon.Icon, { className: clsx('notification__item-close', 'cursor_type_pointer'), fill: closeIconFill, fillSize: closeIconFillSize, iconFill: closeIconFillIcon, iconSize: closeIconSize, imageSrc: closeIconSrc, shape: closeIconShape, SvgImage: closeIcon, onClick: () => onClickClose && onClickClose(id) }))] }), after] }));
|
|
143
150
|
}
|
|
144
151
|
|
|
145
152
|
function NotificationWrapper(props) {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
return (jsxRuntime.jsx("div", { className: clsx('notification', className), children: jsxRuntime.jsx("div", { className: "notification__wrapper", children: notifications.map(
|
|
153
|
+
const notifications = Notifications.useNotifications();
|
|
154
|
+
const { hideNotifications } = Notifications.useNotificationsAPI();
|
|
155
|
+
const { className, close } = props;
|
|
156
|
+
return (jsxRuntime.jsx("div", { className: clsx('notification', className), children: jsxRuntime.jsx("div", { className: "notification__wrapper", children: notifications.map((notification, i) => (jsxRuntime.jsx(Notification, { id: notification.id, appearance: notification.appearance, title: notification.title, status: notification.status, text: notification.text, close: close, onClickClose: hideNotifications }, i))) }) }));
|
|
150
157
|
}
|
|
151
158
|
|
|
152
159
|
exports.Notification = Notification;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var Overlay = require('../../
|
|
3
|
+
var Overlay = require('../../Overlay_cjs_tGA2fU43.js');
|
|
4
4
|
require('react/jsx-runtime');
|
|
5
5
|
require('clsx');
|
|
6
6
|
require('../hooks/useAppearanceConfig/useAppearanceConfig.js');
|
|
7
|
-
require('../../tslib.es6_cjs_CCZ3TN_7.js');
|
|
8
7
|
require('react');
|
|
9
8
|
require('../hooks/useDevicePropsGenerator/useDevicePropsGenerator.js');
|
|
10
9
|
require('lodash/camelCase');
|