@geneui/components 3.0.0-next-9ffcb93-16102024 → 3.0.0-next-48d0ef7-31102024
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/Avatar.js +63 -0
- package/CHANGELOG.md +7 -0
- package/Divider.js +23 -0
- package/{GeneUIProvider/index.js → GeneUIProvider.js} +52 -65
- package/HelperText.js +69 -0
- package/Info.js +64 -0
- package/Label.js +38 -0
- package/Loader.js +21 -0
- package/Pill.js +64 -0
- package/TextLink.js +20 -0
- package/{index-65217440.js → Tooltip.js} +104 -80
- package/{lib → components}/atoms/Avatar/Avatar.d.ts +7 -6
- package/components/atoms/Avatar/index.d.ts +1 -0
- package/{lib → components}/atoms/Divider/Divider.d.ts +5 -5
- package/components/atoms/Divider/index.d.ts +1 -0
- package/{lib → components}/atoms/HelperText/HelperText.d.ts +6 -5
- package/components/atoms/HelperText/index.d.ts +1 -0
- package/{lib → components}/atoms/Info/Info.d.ts +5 -5
- package/components/atoms/Info/index.d.ts +1 -0
- package/{lib → components}/atoms/Label/Label.d.ts +3 -3
- package/components/atoms/Label/index.d.ts +1 -0
- package/{lib → components}/atoms/Loader/Loader.d.ts +5 -5
- package/components/atoms/Loader/index.d.ts +1 -0
- package/{lib → components}/atoms/Pill/Pill.d.ts +7 -6
- package/components/atoms/Pill/index.d.ts +1 -0
- package/{lib → components}/atoms/TextLink/TextLink.d.ts +5 -5
- package/components/atoms/TextLink/index.d.ts +1 -0
- package/{lib → components}/molecules/Tooltip/Tooltip.d.ts +26 -21
- package/components/molecules/Tooltip/index.d.ts +1 -0
- package/components/providers/GeneUIProvider/GeneUIProvider.d.ts +30 -0
- package/components/providers/GeneUIProvider/index.d.ts +1 -0
- package/hooks/index.d.ts +2 -20
- package/hooks/useDebounceCallback/index.d.ts +1 -0
- package/hooks/useDebounceCallback/useDebounceCallback.d.ts +2 -0
- package/hooks/useEllipsisDetection/index.d.ts +1 -1
- package/hooks/useEllipsisDetection/useEllipsisDetection.d.ts +2 -2
- package/{index-031ff73c.js → index-ce02421b.js} +4 -4
- package/index.d.ts +11 -121
- package/index.js +12 -159
- package/package.json +24 -43
- package/tokens-0abb4e1b.js +6 -0
- package/types/index.d.ts +0 -3
- package/useEllipsisDetection-46d712b6.js +34 -0
- package/ActionableList/index.js +0 -1694
- package/AdvancedSearch/index.js +0 -892
- package/Alert/index.js +0 -98
- package/Avatar/index.js +0 -58
- package/Badge/index.js +0 -29
- package/Breadcrumb/index.js +0 -130
- package/BusyLoader/index.js +0 -31
- package/Button/index.js +0 -30
- package/Card/index.js +0 -502
- package/CardList/index.js +0 -662
- package/CellMeasurerCache-80be385d.js +0 -229
- package/Charts/index.js +0 -17662
- package/Checkbox/index.js +0 -229
- package/CheckboxGroup/index.js +0 -203
- package/CheckboxGroupWithSearch/index.js +0 -280
- package/Collapse/index.js +0 -195
- package/ColorPicker/index.js +0 -210
- package/ComboBox/index.js +0 -524
- package/Copy/index.js +0 -56
- package/Counter/index.js +0 -312
- package/DateFilter/index.js +0 -183
- package/DatePicker/index.js +0 -1229
- package/DatePickerInput/index.js +0 -883
- package/Divider/index.js +0 -23
- package/Drawer/index.js +0 -261
- package/Dropdown/index.js +0 -43
- package/Editor/index.js +0 -22975
- package/Empty/index.js +0 -76
- package/ExtendedInput/index.js +0 -590
- package/Form/index.js +0 -85
- package/FormContainer/index.js +0 -189
- package/FormableCheckbox/index.js +0 -24
- package/FormableDatePicker/index.js +0 -43
- package/FormableDropdown/index.js +0 -50
- package/FormableEditor/index.js +0 -26
- package/FormableHOC-85f89a81.js +0 -83
- package/FormableMultiSelectDropdown/index.js +0 -50
- package/FormableNumberInput/index.js +0 -34
- package/FormableRadio/index.js +0 -22
- package/FormableSwitcher/index.js +0 -22
- package/FormableTextInput/index.js +0 -34
- package/FormableUploader/index.js +0 -44
- package/Grid/index.js +0 -167
- package/HelperText/index.js +0 -86
- package/Holder/index.js +0 -261
- package/Icon/index.js +0 -62
- package/Image/index.js +0 -45
- package/ImagePreview/index.js +0 -217
- package/Info/index.js +0 -41
- package/InfoOutline-dd2e89d9.js +0 -29
- package/InteractiveWidget/index.js +0 -78
- package/KeyValue/index.js +0 -22
- package/Label/index.js +0 -48
- package/LinkButton/index.js +0 -34
- package/Loader/index.js +0 -23
- package/Menu/index.js +0 -281
- package/MobileNavigation/index.js +0 -94
- package/MobilePopup/index.js +0 -182
- package/Modal/index.js +0 -251
- package/ModuleTitle/index.js +0 -141
- package/NavigationMenu/index.js +0 -222
- package/Notification/index.js +0 -120
- package/Option/index.js +0 -184
- package/Overlay/index.js +0 -187
- package/Overspread/index.js +0 -291
- package/Pagination/index.js +0 -261
- package/Paper/index.js +0 -96
- package/Pill/index.js +0 -67
- package/Popover/index.js +0 -725
- package/PopoverV2/index.js +0 -19
- package/Portal/index.js +0 -58
- package/Products/index.js +0 -115
- package/Profile/index.js +0 -589
- package/Progress/index.js +0 -200
- package/QRCode/index.js +0 -814
- package/Radio/index.js +0 -151
- package/RadioGroup/index.js +0 -104
- package/Range/index.js +0 -191
- package/Rating/index.js +0 -174
- package/RichEditor/index.js +0 -13
- package/RichEditor-78c2617e.js +0 -228
- package/Scrollbar/index.js +0 -1585
- package/Search/index.js +0 -75
- package/SearchWithDropdown/index.js +0 -140
- package/Section/index.js +0 -61
- package/SkeletonLoader/index.js +0 -81
- package/Slider/index.js +0 -261
- package/Status/index.js +0 -97
- package/Steps/index.js +0 -314
- package/SuggestionList/index.js +0 -385
- package/Switcher/index.js +0 -193
- package/Table/index.js +0 -57
- package/TableCompositions/index.js +0 -16995
- package/Tabs/index.js +0 -235
- package/Tag/index.js +0 -102
- package/TextLink/index.js +0 -20
- package/Textarea/index.js +0 -242
- package/Time/index.js +0 -62
- package/TimePicker/index.js +0 -575
- package/Timeline/index.js +0 -113
- package/Title/index.js +0 -65
- package/Toaster/index.js +0 -116
- package/Tooltip/index.js +0 -6
- package/TransferList/index.js +0 -493
- package/Uploader/index.js +0 -992
- package/ValidatableCheckbox/index.js +0 -123
- package/ValidatableDatePicker/index.js +0 -316
- package/ValidatableDropdown/index.js +0 -141
- package/ValidatableElements/index.js +0 -67
- package/ValidatableMultiSelectDropdown/index.js +0 -152
- package/ValidatableNumberInput/index.js +0 -204
- package/ValidatableRadio/index.js +0 -116
- package/ValidatableSwitcher/index.js +0 -93
- package/ValidatableTextInput/index.js +0 -167
- package/ValidatableTimeInput/index.js +0 -174
- package/ValidatableUploader/index.js +0 -98
- package/Widget/index.js +0 -225
- package/_commonjsHelpers-24198af3.js +0 -35
- package/_rollupPluginBabelHelpers-a83240e1.js +0 -11
- package/callAfterDelay-7272faca.js +0 -12
- package/checkTimeValidation-e56771be.js +0 -16
- package/checkboxRadioSwitcher-5b69d7bd.js +0 -4
- package/clsx.m-2bb6df4b.js +0 -3
- package/config-1053d64d.js +0 -20
- package/configs-00612ce0.js +0 -103
- package/configs.js +0 -111
- package/dateValidation-67caec66.js +0 -225
- package/debounce-4419bc2f.js +0 -17
- package/guid-8ddf77b3.js +0 -16
- package/hooks/useBodyScroll.js +0 -16
- package/hooks/useClick.js +0 -18
- package/hooks/useClickOutside.js +0 -25
- package/hooks/useDebounce.js +0 -28
- package/hooks/useDeviceType.js +0 -17
- package/hooks/useDidMount.js +0 -15
- package/hooks/useForceUpdate.js +0 -8
- package/hooks/useHover.js +0 -20
- package/hooks/useImgDownload.js +0 -18
- package/hooks/useKeyDown.js +0 -21
- package/hooks/useMount.js +0 -13
- package/hooks/useMutationObserver.js +0 -21
- package/hooks/usePrevious.js +0 -10
- package/hooks/useThrottle.js +0 -16
- package/hooks/useToggle.js +0 -11
- package/hooks/useUpdatableRef.js +0 -14
- package/hooks/useUpdate.js +0 -10
- package/hooks/useWidth.js +0 -16
- package/hooks/useWindowSize.js +0 -40
- package/index-122432cd.js +0 -270
- package/index-262edd7a.js +0 -77
- package/index-2f5aa51e.js +0 -6483
- package/index-370f9acd.js +0 -4
- package/index-45eafea6.js +0 -90
- package/index-480fd7d9.js +0 -10032
- package/index-5f37f281.js +0 -168
- package/index-73aaa093.js +0 -1940
- package/index.mobile.d.ts +0 -14
- package/lib/atoms/Avatar/index.d.ts +0 -1
- package/lib/atoms/Badge/Badge.d.ts +0 -36
- package/lib/atoms/Badge/index.d.ts +0 -1
- package/lib/atoms/BusyLoader/BusyLoader.d.ts +0 -32
- package/lib/atoms/BusyLoader/BusyLoaderHolderHOC.d.ts +0 -8
- package/lib/atoms/BusyLoader/index.d.ts +0 -1
- package/lib/atoms/Button/Button.d.ts +0 -70
- package/lib/atoms/Button/index.d.ts +0 -1
- package/lib/atoms/Divider/index.d.ts +0 -1
- package/lib/atoms/Empty/Empty.d.ts +0 -39
- package/lib/atoms/Empty/index.d.ts +0 -1
- package/lib/atoms/Empty/utils.d.ts +0 -9
- package/lib/atoms/HelperText/index.d.ts +0 -1
- package/lib/atoms/Image/Image.d.ts +0 -51
- package/lib/atoms/Image/index.d.ts +0 -1
- package/lib/atoms/ImagePreview/ImagePreview.d.ts +0 -56
- package/lib/atoms/ImagePreview/ImagePreviewHOC.d.ts +0 -4
- package/lib/atoms/ImagePreview/Magnifier.d.ts +0 -40
- package/lib/atoms/ImagePreview/index.d.ts +0 -1
- package/lib/atoms/Info/index.d.ts +0 -1
- package/lib/atoms/KeyValue/KeyValue.d.ts +0 -29
- package/lib/atoms/KeyValue/index.d.ts +0 -1
- package/lib/atoms/Label/index.d.ts +0 -1
- package/lib/atoms/LinkButton/LinkButton.d.ts +0 -46
- package/lib/atoms/LinkButton/index.d.ts +0 -1
- package/lib/atoms/Loader/index.d.ts +0 -1
- package/lib/atoms/Pill/index.d.ts +0 -1
- package/lib/atoms/Rating/DefaultSvg.d.ts +0 -3
- package/lib/atoms/Rating/Rating.d.ts +0 -49
- package/lib/atoms/Rating/index.d.ts +0 -1
- package/lib/atoms/TextLink/index.d.ts +0 -1
- package/lib/molecules/Copy/Copy.d.ts +0 -38
- package/lib/molecules/Copy/index.d.ts +0 -1
- package/lib/molecules/InteractiveWidget/InteractiveWidget.d.ts +0 -70
- package/lib/molecules/InteractiveWidget/InteractiveWidgetIcon.d.ts +0 -8
- package/lib/molecules/InteractiveWidget/index.d.ts +0 -1
- package/lib/molecules/Tooltip/index.d.ts +0 -1
- package/lib/providers/GeneUIProvider/GeneUIProvider.d.ts +0 -30
- package/lib/providers/GeneUIProvider/index.d.ts +0 -1
- package/localization-4ba17032.js +0 -46
- package/objectWithoutPropertiesLoose-e1596bdb.js +0 -62
- package/rangeAndSlider-693a3d41.js +0 -8684
- package/react-beautiful-dnd.esm-b637016a.js +0 -10116
- package/react-lifecycles-compat.es-6e1f3768.js +0 -158
- package/redux-e591c1b8.js +0 -536
- package/tokens-8ab1179c.js +0 -6
- package/tslib.es6-f211516f.js +0 -35
- package/useEllipsisDetection-c1c9ad94.js +0 -38
package/Alert/index.js
DELETED
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import { _ as _extends } from '../_rollupPluginBabelHelpers-a83240e1.js';
|
|
2
|
-
import React__default from 'react';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
|
-
import { c as classnames } from '../index-031ff73c.js';
|
|
5
|
-
import { s as screenTypes } from '../configs-00612ce0.js';
|
|
6
|
-
import '../dateValidation-67caec66.js';
|
|
7
|
-
import 'react-dom';
|
|
8
|
-
import useDeviceType from '../hooks/useDeviceType.js';
|
|
9
|
-
import Icon from '../Icon/index.js';
|
|
10
|
-
import { s as styleInject } from '../style-inject.es-746bb8ed.js';
|
|
11
|
-
import '../_commonjsHelpers-24198af3.js';
|
|
12
|
-
import '../hooks/useWindowSize.js';
|
|
13
|
-
import '../hooks/useDebounce.js';
|
|
14
|
-
|
|
15
|
-
var css_248z = "[data-gene-ui-version=\"2.16.3\"] .alert-holder{background:var(--background);border-radius:.6rem;width:100%;word-break:break-word}[data-gene-ui-version=\"2.16.3\"] .toaster-holder.top .alert-holder.mobile-view:first-child,[data-gene-ui-version=\"2.16.3\"] .toaster-holder.top .alert-holder.mobile-view:first-child .alert-box{border-top-left-radius:0;border-top-right-radius:0}[data-gene-ui-version=\"2.16.3\"] .toaster-holder.bottom .alert-holder.mobile-view:last-child,[data-gene-ui-version=\"2.16.3\"] .toaster-holder.bottom .alert-holder.mobile-view:last-child .alert-box{border-bottom-left-radius:0;border-bottom-right-radius:0}[data-gene-ui-version=\"2.16.3\"] .alert-box{background:rgba(var(--confirm-rgb),.1);border:1px solid var(--confirm);border-radius:.6rem;display:flex;min-height:4.2rem;padding:.8rem .7rem;width:100%}[data-gene-ui-version=\"2.16.3\"] .alert-box.type-info{--confirm:var(--hero);--confirm-hover:var(--hero-hover);--confirm-sc:var(--hero-sc);--confirm-rgb:var(--hero-rgb);--confirm-sc-rgb:var(--hero-sc-rgb)}[data-gene-ui-version=\"2.16.3\"] .alert-box.type-warning{--confirm:var(--warning);--confirm-hover:var(--warning-hover);--confirm-sc:var(--warning-sc);--confirm-rgb:var(--warning-rgb);--confirm-sc-rgb:var(--warning-sc-rgb)}[data-gene-ui-version=\"2.16.3\"] .alert-box.type-error{--confirm:var(--danger);--confirm-hover:var(--danger-hover);--confirm-sc:var(--danger-sc);--confirm-rgb:var(--danger-rgb);--confirm-sc-rgb:var(--danger-sc-rgb)}[data-gene-ui-version=\"2.16.3\"] .alert-box.type-note{--confirm:var(--note);--confirm-hover:var(--note-hover);--confirm-sc:var(--note-sc);--confirm-rgb:var(--note-rgb);--confirm-sc-rgb:var(--note-sc-rgb)}[data-gene-ui-version=\"2.16.3\"] .alert-box.type-message{--confirm:var(--message);--confirm-hover:var(--message-hover);--confirm-sc:var(--message-sc);--confirm-rgb:var(--message-rgb);--confirm-sc-rgb:var(--message-sc-rgb)}[data-gene-ui-version=\"2.16.3\"] .alert-holder.mobile-view .alert-box{border-bottom-color:rgba(var(--background-sc-rgb),.1);border-width:0 0 1px}[data-gene-ui-version=\"2.16.3\"] .toaster-holder:not(.top,.bottom,.center) .alert-holder.mobile-view .alert-box{border-radius:0}[data-gene-ui-version=\"2.16.3\"] .alert-box>li{flex-shrink:0;padding:0 .7rem}[data-gene-ui-version=\"2.16.3\"] .alert-box>li.ab-c-c{align-self:center;flex:auto;margin:.4rem 0}[data-gene-ui-version=\"2.16.3\"] .alert-box>li.ab-bc-icon-c{max-width:100%}[data-gene-ui-version=\"2.16.3\"] .alert-box>li a,[data-gene-ui-version=\"2.16.3\"] .alert-box>li.ab-bc-icon-c{color:var(--confirm)}[data-gene-ui-version=\"2.16.3\"] .alert-box .bc-icon-close{cursor:pointer}@media (hover:hover){[data-gene-ui-version=\"2.16.3\"] .alert-box .bc-icon-close:hover{color:var(--confirm)}}[data-gene-ui-version=\"2.16.3\"] .alert-box a{color:var(--hero);font-weight:600}[data-gene-ui-version=\"2.16.3\"] .alert-box-title{font:600 1.4rem/1.8rem var(--font-family)}[data-gene-ui-version=\"2.16.3\"] .alert-text{font:600 1.2rem/1.42 var(--font-family);margin:.8rem 0 0}";
|
|
16
|
-
styleInject(css_248z);
|
|
17
|
-
|
|
18
|
-
const alertTypes = ['success', 'info', 'warning', 'error', 'note', 'message'];
|
|
19
|
-
function Alert(_ref) {
|
|
20
|
-
let {
|
|
21
|
-
type,
|
|
22
|
-
title,
|
|
23
|
-
onClose,
|
|
24
|
-
message,
|
|
25
|
-
screenType,
|
|
26
|
-
iconProps,
|
|
27
|
-
swapIcon,
|
|
28
|
-
className,
|
|
29
|
-
...rest
|
|
30
|
-
} = _ref;
|
|
31
|
-
const {
|
|
32
|
-
isMobile
|
|
33
|
-
} = useDeviceType(screenType);
|
|
34
|
-
return /*#__PURE__*/React__default.createElement("div", _extends({
|
|
35
|
-
className: classnames('alert-holder', {
|
|
36
|
-
'mobile-view': isMobile
|
|
37
|
-
}, className)
|
|
38
|
-
}, rest), /*#__PURE__*/React__default.createElement("ul", {
|
|
39
|
-
className: classnames('alert-box', "type-".concat(type))
|
|
40
|
-
}, (swapIcon || iconProps) && /*#__PURE__*/React__default.createElement("li", {
|
|
41
|
-
className: "ab-bc-icon-c"
|
|
42
|
-
}, swapIcon || /*#__PURE__*/React__default.createElement(Icon, {
|
|
43
|
-
type: "bc-icon-".concat(type === 'warning' ? 'info' : type).concat(iconProps.isFilled ? '-fill' : '')
|
|
44
|
-
})), /*#__PURE__*/React__default.createElement("li", {
|
|
45
|
-
className: "ab-c-c"
|
|
46
|
-
}, /*#__PURE__*/React__default.createElement("div", {
|
|
47
|
-
className: "alert-box-title"
|
|
48
|
-
}, title), message && /*#__PURE__*/React__default.createElement("div", {
|
|
49
|
-
className: "alert-text"
|
|
50
|
-
}, message)), !!onClose && /*#__PURE__*/React__default.createElement("li", {
|
|
51
|
-
className: "ab-action-c",
|
|
52
|
-
onClick: onClose
|
|
53
|
-
}, /*#__PURE__*/React__default.createElement(Icon, {
|
|
54
|
-
type: "bc-icon-close"
|
|
55
|
-
}))));
|
|
56
|
-
}
|
|
57
|
-
Alert.propTypes = {
|
|
58
|
-
/**
|
|
59
|
-
* Alert type is for specifying information message to be delivered. Also a corresponding "Icon" atom will be displayed
|
|
60
|
-
*/
|
|
61
|
-
type: PropTypes.oneOf(alertTypes),
|
|
62
|
-
/**
|
|
63
|
-
* Main field to describe alert information. Any valid React node
|
|
64
|
-
*/
|
|
65
|
-
title: PropTypes.node.isRequired,
|
|
66
|
-
/**
|
|
67
|
-
* Additional classname
|
|
68
|
-
*/
|
|
69
|
-
className: PropTypes.string,
|
|
70
|
-
/**
|
|
71
|
-
* Use this field for describing information more verbose. Any valid React node
|
|
72
|
-
*/
|
|
73
|
-
message: PropTypes.node,
|
|
74
|
-
/**
|
|
75
|
-
* The switch between mobile and desktop version of Alert will be applied automatically, when the prop is not specified.
|
|
76
|
-
* When the prop is present it must be changed from outside.
|
|
77
|
-
*/
|
|
78
|
-
screenType: PropTypes.oneOf(screenTypes),
|
|
79
|
-
/**
|
|
80
|
-
* When function is passed an "Icon" atom("type": "bc-icon-close") will be displayed((event: Event) => void).
|
|
81
|
-
*/
|
|
82
|
-
onClose: PropTypes.func,
|
|
83
|
-
/**
|
|
84
|
-
* Same as "Icon" atom props
|
|
85
|
-
*/
|
|
86
|
-
iconProps: PropTypes.shape({
|
|
87
|
-
...Icon.propTypes
|
|
88
|
-
}),
|
|
89
|
-
/**
|
|
90
|
-
* Use this prop for replace main "Icon". Note that when the prop is specified "type" prop will not work(will be overlooked).
|
|
91
|
-
*/
|
|
92
|
-
swapIcon: PropTypes.node
|
|
93
|
-
};
|
|
94
|
-
Alert.defaultProps = {
|
|
95
|
-
type: 'info'
|
|
96
|
-
};
|
|
97
|
-
|
|
98
|
-
export { alertTypes, Alert as default };
|
package/Avatar/index.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import React__default, { useState, useEffect, cloneElement } from 'react';
|
|
2
|
-
import { c as classnames } from '../index-031ff73c.js';
|
|
3
|
-
import { _ as _objectWithoutProperties, a as _extends } from '../ArrowLeft-b88e2ba8.js';
|
|
4
|
-
import { s as styleInject } from '../style-inject.es-746bb8ed.js';
|
|
5
|
-
|
|
6
|
-
var _excluded = ["size", "color"];
|
|
7
|
-
var SvgSquare = function SvgSquare(_ref) {
|
|
8
|
-
var _ref$size = _ref.size,
|
|
9
|
-
size = _ref$size === void 0 ? 24 : _ref$size,
|
|
10
|
-
_ref$color = _ref.color,
|
|
11
|
-
color = _ref$color === void 0 ? "currentColor" : _ref$color,
|
|
12
|
-
props = _objectWithoutProperties(_ref, _excluded);
|
|
13
|
-
return /*#__PURE__*/React__default.createElement("svg", _extends({
|
|
14
|
-
width: size,
|
|
15
|
-
height: size,
|
|
16
|
-
viewBox: "0 0 24 24",
|
|
17
|
-
fill: color,
|
|
18
|
-
xmlns: "http://www.w3.org/2000/svg"
|
|
19
|
-
}, props), /*#__PURE__*/React__default.createElement("path", {
|
|
20
|
-
d: "M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-14a2 2 0 0 1-2-2v-14Z",
|
|
21
|
-
fill: color
|
|
22
|
-
}));
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
var css_248z = "[data-gene-ui-version=\"2.16.3\"] .avatar{align-items:center;border-radius:var(--guit-ref-radius-full);display:flex;justify-content:center;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none}[data-gene-ui-version=\"2.16.3\"] .avatar_size_6Xlarge{font-family:var(--guit-sem-font-heading-medium-semibold-font-family);font-size:var(--guit-sem-font-heading-medium-semibold-font-size);font-weight:var(--guit-sem-font-heading-medium-semibold-font-weight);height:var(--guit-sem-dimension-height-6xlarge);line-height:var(--guit-sem-font-heading-medium-semibold-line-height);width:var(--guit-sem-dimension-width-6xlarge)}[data-gene-ui-version=\"2.16.3\"] .avatar_size_large{height:var(--guit-sem-dimension-height-large);width:var(--guit-sem-dimension-width-large)}[data-gene-ui-version=\"2.16.3\"] .avatar_size_large,[data-gene-ui-version=\"2.16.3\"] .avatar_size_medium{font-family:var(--guit-sem-font-label-medium-default-semibold-font-family);font-size:var(--guit-sem-font-label-medium-default-semibold-font-size);font-weight:var(--guit-sem-font-label-medium-default-medium-font-weight);line-height:var(--guit-sem-font-label-medium-default-semibold-line-height)}[data-gene-ui-version=\"2.16.3\"] .avatar_size_medium{height:var(--guit-sem-dimension-height-medium);width:var(--guit-sem-dimension-width-medium)}[data-gene-ui-version=\"2.16.3\"] .avatar_size_small{font-family:var(--guit-sem-font-label-small-default-medium-font-family);font-size:var(--guit-sem-font-label-small-default-medium-font-size);font-weight:var(--guit-sem-font-label-small-default-medium-font-weight);height:var(--guit-sem-dimension-height-small);line-height:var(--guit-sem-font-label-small-default-medium-line-height);width:var(--guit-sem-dimension-width-small)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_neutral{background-color:var(--guit-sem-color-background-neutral-2);color:var(--guit-sem-color-foreground-neutral-2)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_blue{background-color:var(--guit-sem-color-background-accent-blue-1);color:var(--guit-sem-color-foreground-accent-blue)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_red{background-color:var(--guit-sem-color-background-accent-red-1);color:var(--guit-sem-color-foreground-accent-red)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_green{background-color:var(--guit-sem-color-background-accent-green-1);color:var(--guit-sem-color-foreground-accent-green)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_purple{background-color:var(--guit-sem-color-background-accent-purple-1);color:var(--guit-sem-color-foreground-accent-purple)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_orange{background-color:var(--guit-sem-color-background-accent-orange-1);color:var(--guit-sem-color-foreground-accent-orange)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_lagoon{background-color:var(--guit-sem-color-background-accent-lagoon-1);color:var(--guit-sem-color-foreground-accent-lagoon)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_magenta{background-color:var(--guit-sem-color-background-accent-magenta-1);color:var(--guit-sem-color-foreground-accent-magenta)}[data-gene-ui-version=\"2.16.3\"] .avatar_color_slate{background-color:var(--guit-sem-color-background-accent-slate-1);color:var(--guit-sem-color-foreground-accent-slate)}[data-gene-ui-version=\"2.16.3\"] .avatar__image{display:block;height:100%;object-fit:cover;object-position:center;width:100%}[data-gene-ui-version=\"2.16.3\"] .avatar__text{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;text-transform:uppercase}[data-gene-ui-version=\"2.16.3\"] .avatar:active:before,[data-gene-ui-version=\"2.16.3\"] .avatar:hover:before,[data-gene-ui-version=\"2.16.3\"] .avatar_disabled:before{content:\"\";display:block;height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}[data-gene-ui-version=\"2.16.3\"] .avatar_button{cursor:pointer}[data-gene-ui-version=\"2.16.3\"] .avatar_button:hover:before{background-color:var(--guit-sem-color-background-transparent-1-hover)}[data-gene-ui-version=\"2.16.3\"] .avatar_button:active:before{background-color:var(--guit-sem-color-background-transparent-1-pressed)}[data-gene-ui-version=\"2.16.3\"] .avatar_disabled{pointer-events:none}[data-gene-ui-version=\"2.16.3\"] .avatar_disabled:before{background-color:var(--guit-sem-color-background-transparent-inverse-disabled)}";
|
|
26
|
-
styleInject(css_248z);
|
|
27
|
-
|
|
28
|
-
const iconSizes = {
|
|
29
|
-
small: 16,
|
|
30
|
-
large: 20,
|
|
31
|
-
'6Xlarge': 48
|
|
32
|
-
};
|
|
33
|
-
const AvatarWrapper = ({ onClick, children, parentClass, isDisabled }) => {
|
|
34
|
-
return onClick ? (React__default.createElement("button", { onClick: onClick, className: `${parentClass} avatar_button`, disabled: isDisabled }, children)) : (React__default.createElement("div", { className: parentClass }, children));
|
|
35
|
-
};
|
|
36
|
-
/**
|
|
37
|
-
* An avatar is a graphical representation of a user, typically displayed as a small image or icon. It can be a photo, illustration, or initials, and is used to personalize the user experience by visually identifying the user in interfaces such as profiles, comment sections, and messaging apps.
|
|
38
|
-
*/
|
|
39
|
-
const Avatar = ({ size = 'medium', color = 'magenta', fullName = '', src, onClick, isDisabled, isLoading, Icon = React__default.createElement(SvgSquare, null), className }) => {
|
|
40
|
-
const [proceedFullName, setProceedFullName] = useState(fullName);
|
|
41
|
-
useEffect(() => {
|
|
42
|
-
const [firstName = '', lastName = ''] = fullName.split(' ');
|
|
43
|
-
const [firstNameFirstLetter] = firstName;
|
|
44
|
-
const [lastNameFirstLetter] = lastName || '';
|
|
45
|
-
setProceedFullName(firstNameFirstLetter
|
|
46
|
-
? `${firstNameFirstLetter}${!!lastNameFirstLetter && (size === '6Xlarge' || size === 'large') ? ' ' + lastNameFirstLetter : ''}`
|
|
47
|
-
: ``);
|
|
48
|
-
}, [fullName, size]);
|
|
49
|
-
const iconMock = Icon &&
|
|
50
|
-
cloneElement(Icon, {
|
|
51
|
-
size: iconSizes[size]
|
|
52
|
-
});
|
|
53
|
-
return isLoading ? (React__default.createElement("span", null, "skeleton")) : (React__default.createElement(AvatarWrapper, { parentClass: classnames(`avatar avatar_size_${size} avatar_color_${color}`, className, {
|
|
54
|
-
avatar_disabled: isDisabled
|
|
55
|
-
}), onClick: onClick, isDisabled: isDisabled }, src ? (React__default.createElement("img", { className: "avatar__image", alt: 'avatar', src: src })) : proceedFullName ? (React__default.createElement("span", { className: "avatar__text" }, proceedFullName)) : (iconMock)));
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
export { Avatar as default };
|
package/Badge/index.js
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { _ as __rest } from '../tslib.es6-f211516f.js';
|
|
2
|
-
import React__default from 'react';
|
|
3
|
-
import { c as classnames } from '../index-031ff73c.js';
|
|
4
|
-
import { s as styleInject } from '../style-inject.es-746bb8ed.js';
|
|
5
|
-
|
|
6
|
-
var css_248z = "[data-gene-ui-version=\"2.16.3\"] .badge{max-width:-webkit-fit-content;max-width:-moz-fit-content;max-width:fit-content;position:relative}[data-gene-ui-version=\"2.16.3\"] .badge__content{background:var(--danger);border-radius:3rem;color:var(--danger-sc);display:block;font:600 1rem/1.6rem var(--font-family);min-width:1.6rem;padding:0 .5rem;text-align:center}[data-gene-ui-version=\"2.16.3\"] .badge__content-children{position:absolute;top:-.8rem}html:not([dir=rtl]) .badge__content-children{right:-.8rem}html[dir=rtl] .badge__content-children{left:-.8rem}[data-gene-ui-version=\"2.16.3\"] .badge__content-dot{height:1rem;min-height:1rem;min-width:1rem;top:-.5rem;width:1rem}html:not([dir=rtl]) .badge__content-dot{right:-.5rem}html[dir=rtl] .badge__content-dot{left:-.5rem}[data-gene-ui-version=\"2.16.3\"] .badge__content-medium{line-height:1.8rem;min-height:1.8rem;min-width:1.8rem}[data-gene-ui-version=\"2.16.3\"] .badge__content-big{line-height:2.2rem;min-height:2.2rem;min-width:2.2rem}[data-gene-ui-version=\"2.16.3\"] .badge__content-huge{font-size:1.3rem;line-height:2.6rem;min-height:2.6rem;min-width:2.6rem}[data-gene-ui-version=\"2.16.3\"] .badge__content-big,[data-gene-ui-version=\"2.16.3\"] .badge__content-huge,[data-gene-ui-version=\"2.16.3\"] .badge__content-medium{top:-1rem}html:not([dir=rtl]) .badge__content-big,html:not([dir=rtl]) .badge__content-huge,html:not([dir=rtl]) .badge__content-medium{right:-1rem}html[dir=rtl] .badge__content-big,html[dir=rtl] .badge__content-huge,html[dir=rtl] .badge__content-medium{left:-1rem}[data-gene-ui-version=\"2.16.3\"] .badge__content-primary{background:var(--hero)}";
|
|
7
|
-
styleInject(css_248z);
|
|
8
|
-
|
|
9
|
-
const getShowValue = (count, maxCount) => {
|
|
10
|
-
if (!count && count !== 0)
|
|
11
|
-
return null;
|
|
12
|
-
if (!maxCount)
|
|
13
|
-
return count;
|
|
14
|
-
return count > maxCount ? `${maxCount}+` : count;
|
|
15
|
-
};
|
|
16
|
-
const Badge = (_a) => {
|
|
17
|
-
var { size = 'default', dot = false, color = 'danger', count, maxCount, className, children } = _a, restProps = __rest(_a, ["size", "dot", "color", "count", "maxCount", "className", "children"]);
|
|
18
|
-
const show = dot ? '' : getShowValue(count, maxCount);
|
|
19
|
-
return (React__default.createElement("div", Object.assign({ className: "badge" }, restProps),
|
|
20
|
-
show !== null && (React__default.createElement("span", { className: classnames('badge__content', className, {
|
|
21
|
-
[`badge__content-${size}`]: size,
|
|
22
|
-
[`badge__content-${color}`]: color,
|
|
23
|
-
[`badge__content-dot`]: dot,
|
|
24
|
-
[`badge__content-children`]: children
|
|
25
|
-
}) }, show)),
|
|
26
|
-
children));
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
export { Badge as default };
|
package/Breadcrumb/index.js
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import { _ as _extends } from '../_rollupPluginBabelHelpers-a83240e1.js';
|
|
2
|
-
import React__default, { useState, useCallback, Fragment } from 'react';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
|
-
import { c as classnames } from '../index-031ff73c.js';
|
|
5
|
-
import { n as noop } from '../index-5f37f281.js';
|
|
6
|
-
import Button from '../Button/index.js';
|
|
7
|
-
import Popover from '../Popover/index.js';
|
|
8
|
-
import Icon from '../Icon/index.js';
|
|
9
|
-
import Menu from '../Menu/index.js';
|
|
10
|
-
import { s as styleInject } from '../style-inject.es-746bb8ed.js';
|
|
11
|
-
import '../dateValidation-67caec66.js';
|
|
12
|
-
import '../_commonjsHelpers-24198af3.js';
|
|
13
|
-
import 'react-dom';
|
|
14
|
-
import '../tslib.es6-f211516f.js';
|
|
15
|
-
import '../index-122432cd.js';
|
|
16
|
-
import '../hooks/useDeviceType.js';
|
|
17
|
-
import '../configs-00612ce0.js';
|
|
18
|
-
import '../hooks/useWindowSize.js';
|
|
19
|
-
import '../hooks/useDebounce.js';
|
|
20
|
-
import '../hooks/useUpdatableRef.js';
|
|
21
|
-
import '../hooks/useForceUpdate.js';
|
|
22
|
-
import '../GeneUIProvider/index.js';
|
|
23
|
-
import '../Portal/index.js';
|
|
24
|
-
import '../Scrollbar/index.js';
|
|
25
|
-
import '../guid-8ddf77b3.js';
|
|
26
|
-
import '../Option/index.js';
|
|
27
|
-
import '../useEllipsisDetection-c1c9ad94.js';
|
|
28
|
-
import '../index-65217440.js';
|
|
29
|
-
|
|
30
|
-
function BreadcrumbItem(_ref) {
|
|
31
|
-
let {
|
|
32
|
-
data,
|
|
33
|
-
active,
|
|
34
|
-
onClick
|
|
35
|
-
} = _ref;
|
|
36
|
-
return /*#__PURE__*/React__default.createElement("button", {
|
|
37
|
-
onClick: onClick,
|
|
38
|
-
className: classnames('breadcrumbs-link', {
|
|
39
|
-
active
|
|
40
|
-
})
|
|
41
|
-
}, data.title);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
var css_248z = "[data-gene-ui-version=\"2.16.3\"] .bread-crumbs-holder{align-items:center;display:flex;font-weight:600;justify-content:flex-start;min-height:3.6rem;width:100%}[data-gene-ui-version=\"2.16.3\"] .bread-crumbs-holder>*+:not(button){margin:0 0 0 1rem}html[dir=rtl] .bread-crumbs-holder>*+:not(button){margin:0 1rem 0 0}[data-gene-ui-version=\"2.16.3\"] .bread-crumbs-holder>button{margin:0 .4rem}[data-gene-ui-version=\"2.16.3\"] .bread-crumbs-holder>button+.icon,html[dir=rtl] .bread-crumbs-holder>button+.icon{margin:0}[data-gene-ui-version=\"2.16.3\"] .breadcrumbs-link{color:inherit;cursor:pointer}@media (hover:hover){[data-gene-ui-version=\"2.16.3\"] .breadcrumbs-link:hover{color:var(--hero)}}[data-gene-ui-version=\"2.16.3\"] .breadcrumbs-link.active{color:var(--hero)}";
|
|
45
|
-
styleInject(css_248z);
|
|
46
|
-
|
|
47
|
-
function Breadcrumb(_ref) {
|
|
48
|
-
let {
|
|
49
|
-
data,
|
|
50
|
-
onClick,
|
|
51
|
-
collapsed,
|
|
52
|
-
className,
|
|
53
|
-
separator,
|
|
54
|
-
...restProps
|
|
55
|
-
} = _ref;
|
|
56
|
-
const [isPopoverOpen, setIsPopoverOpen] = useState(false);
|
|
57
|
-
const [firstItem, ...others] = data;
|
|
58
|
-
const handlePopoverItemClick = useCallback((_, item) => {
|
|
59
|
-
onClick(item);
|
|
60
|
-
setIsPopoverOpen(false);
|
|
61
|
-
}, [onClick]);
|
|
62
|
-
const handlePopoverToggle = useCallback(() => {
|
|
63
|
-
setIsPopoverOpen(prev => !prev);
|
|
64
|
-
}, []);
|
|
65
|
-
return /*#__PURE__*/React__default.createElement("div", _extends({
|
|
66
|
-
className: classnames('bread-crumbs-holder', className)
|
|
67
|
-
}, restProps), collapsed && data.length > 4 ? /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(BreadcrumbItem, {
|
|
68
|
-
onClick: () => onClick(firstItem),
|
|
69
|
-
data: firstItem
|
|
70
|
-
}), separator, /*#__PURE__*/React__default.createElement(Popover, {
|
|
71
|
-
isOpen: isPopoverOpen,
|
|
72
|
-
align: "start",
|
|
73
|
-
extendTargetWidth: false,
|
|
74
|
-
Content: /*#__PURE__*/React__default.createElement(Menu, {
|
|
75
|
-
onSelect: handlePopoverItemClick,
|
|
76
|
-
data: others.slice(0, -2)
|
|
77
|
-
})
|
|
78
|
-
}, /*#__PURE__*/React__default.createElement(Button, {
|
|
79
|
-
onClick: handlePopoverToggle,
|
|
80
|
-
icon: "bc-icon-more-horizontal",
|
|
81
|
-
appearance: "minimal",
|
|
82
|
-
color: "default"
|
|
83
|
-
})), separator, others.slice(-2).map((item, i) => /*#__PURE__*/React__default.createElement(Fragment, {
|
|
84
|
-
key: item.slug
|
|
85
|
-
}, /*#__PURE__*/React__default.createElement(BreadcrumbItem, {
|
|
86
|
-
onClick: () => onClick(item),
|
|
87
|
-
active: i === 1,
|
|
88
|
-
key: item.slug,
|
|
89
|
-
data: item
|
|
90
|
-
}), i !== 1 && separator))) : data.map((item, i) => /*#__PURE__*/React__default.createElement(Fragment, {
|
|
91
|
-
key: item.slug
|
|
92
|
-
}, /*#__PURE__*/React__default.createElement(BreadcrumbItem, {
|
|
93
|
-
onClick: () => onClick(item),
|
|
94
|
-
active: data.length - 1 === i,
|
|
95
|
-
data: item
|
|
96
|
-
}), data.length - 1 !== i && separator)));
|
|
97
|
-
}
|
|
98
|
-
Breadcrumb.propTypes = {
|
|
99
|
-
/**
|
|
100
|
-
* Data items to display
|
|
101
|
-
*/
|
|
102
|
-
data: PropTypes.arrayOf(PropTypes.shape({
|
|
103
|
-
title: PropTypes.node.isRequired
|
|
104
|
-
})).isRequired,
|
|
105
|
-
/**
|
|
106
|
-
* Additional className
|
|
107
|
-
*/
|
|
108
|
-
className: PropTypes.string,
|
|
109
|
-
/**
|
|
110
|
-
* Breadcrumbs will render collapsed view when "data" length is greater than 4, when set to "true"
|
|
111
|
-
*/
|
|
112
|
-
collapsed: PropTypes.bool,
|
|
113
|
-
/**
|
|
114
|
-
* Fires an event on breadcrumb item click((item: data[item] => void))
|
|
115
|
-
*/
|
|
116
|
-
onClick: PropTypes.func,
|
|
117
|
-
/**
|
|
118
|
-
* Use this prop to define the middle component between breadcrumb items.
|
|
119
|
-
*/
|
|
120
|
-
separator: PropTypes.node
|
|
121
|
-
};
|
|
122
|
-
Breadcrumb.defaultProps = {
|
|
123
|
-
collapsed: false,
|
|
124
|
-
onClick: noop,
|
|
125
|
-
separator: /*#__PURE__*/React__default.createElement(Icon, {
|
|
126
|
-
type: "bc-icon-arrow-right"
|
|
127
|
-
})
|
|
128
|
-
};
|
|
129
|
-
|
|
130
|
-
export { Breadcrumb as default };
|
package/BusyLoader/index.js
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import React__default from 'react';
|
|
2
|
-
import { c as classnames } from '../index-031ff73c.js';
|
|
3
|
-
import Icon from '../Icon/index.js';
|
|
4
|
-
import { s as styleInject } from '../style-inject.es-746bb8ed.js';
|
|
5
|
-
import '../_rollupPluginBabelHelpers-a83240e1.js';
|
|
6
|
-
import 'prop-types';
|
|
7
|
-
|
|
8
|
-
const BusyLoaderHolderHOC = ({ children, loadingText, className }) => {
|
|
9
|
-
return (React__default.createElement("div", { className: classnames('loader-holder', className) },
|
|
10
|
-
children,
|
|
11
|
-
loadingText && React__default.createElement("div", { className: "loader-text" }, loadingText)));
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
var css_248z = "[data-gene-ui-version=\"2.16.3\"] .loader-holder{align-items:center;color:var(--hero);display:flex;flex-direction:column;margin:auto;position:relative;text-align:center}[data-gene-ui-version=\"2.16.3\"] .loader-holder.p-static{margin:6rem}[data-gene-ui-version=\"2.16.3\"] .loader-holder.p-absolute{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}[data-gene-ui-version=\"2.16.3\"] .loader-holder .s-medium{font-size:2.8rem}[data-gene-ui-version=\"2.16.3\"] .loader-holder .s-big{font-size:5.4rem}[data-gene-ui-version=\"2.16.3\"] .loader-text{font:600 1.6rem/2rem var(--font-family);margin:1rem 0 0}[data-gene-ui-version=\"2.16.3\"] .bubble-loader{animation:sk-rotate 2s linear infinite;height:6.6rem;position:relative;width:6.6rem}@keyframes sk-rotate{to{transform:rotate(1turn)}}[data-gene-ui-version=\"2.16.3\"] .bubble-loader .dot{animation:sk-bounce 2s ease-in-out infinite;background:var(--hero);border-radius:100%;height:60%;position:absolute;top:0;width:60%}@keyframes sk-bounce{0%,to{transform:scale(0)}50%{transform:scale(1)}}[data-gene-ui-version=\"2.16.3\"] .bubble-loader .dot2{animation-delay:-1s;bottom:0;top:auto}[data-gene-ui-version=\"2.16.3\"] .bar-loader{height:.6rem;left:0;overflow:hidden;position:fixed;top:calc(var(--header-height, .6rem) - .6rem);width:100%}[data-gene-ui-version=\"2.16.3\"] .bar-loader:before{animation:bar-loader .8s linear infinite;background:linear-gradient(270deg,#7eb8ff 30%,#8d14e6 50%,#7eb8ff 70%) no-repeat 50% 50%/100vw .6rem;content:\"\";display:block;height:100%;left:50%;max-width:0;opacity:0;overflow:hidden;position:absolute;top:0;transform:translateX(-50%);width:100%}@keyframes bar-loader{0%,to{opacity:0}10%,90%{opacity:1}0%{max-width:0}to{max-width:100%}}";
|
|
15
|
-
styleInject(css_248z);
|
|
16
|
-
|
|
17
|
-
const BusyLoader = ({ type = 'spinner', isBusy = true, children = null, className, loadingText, spinnerSize = 'small' }) => {
|
|
18
|
-
const loaders = {
|
|
19
|
-
bar: React__default.createElement("div", { className: "bar-loader" }),
|
|
20
|
-
spinner: (React__default.createElement(BusyLoaderHolderHOC, { className: className, loadingText: loadingText },
|
|
21
|
-
// @ts-ignore
|
|
22
|
-
React__default.createElement(Icon, { type: `bc-icon-loader s-${spinnerSize}` }))),
|
|
23
|
-
bubbles: (React__default.createElement(BusyLoaderHolderHOC, { className: className, loadingText: loadingText },
|
|
24
|
-
React__default.createElement("div", { className: "bubble-loader" },
|
|
25
|
-
React__default.createElement("div", { className: "dot dot1" }),
|
|
26
|
-
React__default.createElement("div", { className: "dot dot2" }))))
|
|
27
|
-
};
|
|
28
|
-
return isBusy ? React__default.createElement(React__default.Fragment, null, loaders[type]) : children;
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
export { BusyLoader as default };
|
package/Button/index.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { _ as __rest } from '../tslib.es6-f211516f.js';
|
|
2
|
-
import React__default, { forwardRef } from 'react';
|
|
3
|
-
import { c as classnames } from '../index-031ff73c.js';
|
|
4
|
-
import Icon from '../Icon/index.js';
|
|
5
|
-
import { s as styleInject } from '../style-inject.es-746bb8ed.js';
|
|
6
|
-
import '../_rollupPluginBabelHelpers-a83240e1.js';
|
|
7
|
-
import 'prop-types';
|
|
8
|
-
|
|
9
|
-
var css_248z = "[data-gene-ui-version=\"2.16.3\"] .btn{--size:3.6rem;align-items:center;border:1px solid #0000;border-radius:var(--button-external-border-radius,var(--button-external-size,var(--size)));color:inherit;cursor:pointer;display:flex;font:600 1.4rem/2rem var(--font-family);justify-content:center;min-height:var(--button-external-size,var(--size));min-width:var(--button-external-size,var(--size));position:relative;transition:color .3s,background .3s,opacity .2s;-webkit-user-select:none;user-select:none}[data-gene-ui-version=\"2.16.3\"] .btn:focus-visible{border-radius:var(--button-external-border-radius,var(--button-external-size,var(--size)));outline:.2rem var(--hero) solid}[data-gene-ui-version=\"2.16.3\"] .btn:disabled{opacity:.5;pointer-events:none}[data-gene-ui-version=\"2.16.3\"] .btn.s-medium{--size:3.2rem;font-size:1.2rem}[data-gene-ui-version=\"2.16.3\"] .btn.s-big{--size:4.2rem}[data-gene-ui-version=\"2.16.3\"] .btn.cr-smooth{border-radius:var(--button-external-border-radius,.4rem)}[data-gene-ui-version=\"2.16.3\"] .btn>*+*{margin:0 0 0 .4rem}html[dir=rtl] .btn>*+*{margin:0 .4rem 0 0}[data-gene-ui-version=\"2.16.3\"] .btn.id-end{flex-direction:row-reverse}[data-gene-ui-version=\"2.16.3\"] .btn.id-end>*+*{margin:0 .7rem 0 0}html[dir=rtl] .btn.id-end>*+*{margin:0 0 0 .7rem}[data-gene-ui-version=\"2.16.3\"] .btn:not(.c-icon){padding:0 2rem}[data-gene-ui-version=\"2.16.3\"] .btn:not(.c-icon).f-content-size{padding:0 1.3rem}[data-gene-ui-version=\"2.16.3\"] .btn:not(.c-icon).f-default{min-width:10rem}[data-gene-ui-version=\"2.16.3\"] .btn:not(.c-icon).f-full-width{width:100%}[data-gene-ui-version=\"2.16.3\"] .btn:not(.c-icon).loading-padding{padding:0 .6rem}[data-gene-ui-version=\"2.16.3\"] .btn.c-confirm{--hero:var(--confirm);--hero-sc:var(--confirm-sc);--hero-hover:var(--confirm-hover)}[data-gene-ui-version=\"2.16.3\"] .btn.c-danger{--hero:var(--danger);--hero-sc:var(--danger-sc);--hero-hover:var(--danger-hover)}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-outline{border-color:var(--hero);color:var(--hero)}@media (hover:hover){[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-outline:hover{background:var(--hero);color:var(--hero-sc)}}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-outline:active{background:var(--hero);color:var(--hero-sc)}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-minimal:not(.c-default){color:var(--hero)}@media (hover:hover){[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-minimal:hover{background:rgba(var(--background-sc-rgb),.03)}}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-minimal.active{background:rgba(var(--background-sc-rgb),.03)}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-grayscale:not(:disabled){background:rgba(var(--background-sc-rgb),.01)}@media (hover:hover){[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-grayscale:not(:disabled):hover{background:rgba(var(--background-sc-rgb),.03)}}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-grayscale:not(:disabled).active{background:rgba(var(--background-sc-rgb),.03)}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-grayscale:not(.c-default){color:var(--hero)}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-clean:not(.c-default){color:rgba(var(--background-sc-rgb),.6)}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-clean:not(:disabled){background:rgba(var(--hero-rgb),.1);color:var(--hero)}@media (hover:hover){[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-clean:not(:disabled):hover{background:var(--hero);color:var(--hero-sc)}}[data-gene-ui-version=\"2.16.3\"] .btn:not(.active).a-clean:not(:disabled).active{background:var(--hero);color:var(--hero-sc)}[data-gene-ui-version=\"2.16.3\"] .btn:not(.a-grayscale).with-shadow{box-shadow:0 .2rem .4rem 0 #0000001a}[data-gene-ui-version=\"2.16.3\"] .btn.a-grayscale:not(:disabled){box-shadow:0 1px 0 0 #00000029}[data-gene-ui-version=\"2.16.3\"] .btn.a-default,[data-gene-ui-version=\"2.16.3\"] .btn.active{background:var(--hero);color:var(--hero-sc)}@media (hover:hover){[data-gene-ui-version=\"2.16.3\"] .btn.a-default:hover,[data-gene-ui-version=\"2.16.3\"] .btn.active:hover{background:var(--hero-hover)}}[data-gene-ui-version=\"2.16.3\"] .btn.loading-state>:not(.btn-loader-holder){color:#0000!important}[data-gene-ui-version=\"2.16.3\"] .btn .btn-loader-holder{left:50%;margin:0;position:absolute;top:50%;transform:translate(-50%,-50%)}";
|
|
10
|
-
styleInject(css_248z);
|
|
11
|
-
|
|
12
|
-
const Button = forwardRef((_a, ref) => {
|
|
13
|
-
var { children, appearance = 'default', size = 'default', flexibility = 'default', color = 'primary', cornerRadius = 'round', itemsDirection = 'start', icon, active, className, withShadow, loading, ariaLabel } = _a, restProps = __rest(_a, ["children", "appearance", "size", "flexibility", "color", "cornerRadius", "itemsDirection", "icon", "active", "className", "withShadow", "loading", "ariaLabel"]);
|
|
14
|
-
const noChildren = !children && children !== 0;
|
|
15
|
-
return (React__default.createElement("button", Object.assign({ className: classnames('btn', className, `a-${appearance}`, `s-${size}`, `f-${flexibility}`, `c-${color}`, `id-${itemsDirection}`, `cr-${cornerRadius}`, {
|
|
16
|
-
active,
|
|
17
|
-
'c-icon': !!icon && noChildren,
|
|
18
|
-
'with-shadow': withShadow,
|
|
19
|
-
'loading-padding': !noChildren && !icon && loading
|
|
20
|
-
}), ref: ref }, (ariaLabel ? { 'aria-label': ariaLabel } : {}), restProps),
|
|
21
|
-
icon && (loading ? React__default.createElement(Icon, { type: "bc-icon-loader" }) : React__default.createElement(Icon, { type: icon })),
|
|
22
|
-
!noChildren &&
|
|
23
|
-
(!icon && loading ? (React__default.createElement(React__default.Fragment, null,
|
|
24
|
-
React__default.createElement(Icon, { type: "bc-icon-loader" }),
|
|
25
|
-
React__default.createElement("span", null, children))) : (React__default.createElement("span", { className: "ellipsis-text" }, children))),
|
|
26
|
-
loading && noChildren && (React__default.createElement("div", { className: "btn-loader-holder" },
|
|
27
|
-
React__default.createElement(Icon, { type: "bc-icon-loader" })))));
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
export { Button as default };
|