@geneui/components 2.11.1
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/ActionableList.js +1761 -0
- package/AdvancedSearch.js +872 -0
- package/Alert.js +98 -0
- package/Avatar.js +77 -0
- package/Badge.js +76 -0
- package/Breadcrumb.js +128 -0
- package/BusyLoader.js +69 -0
- package/Button.js +130 -0
- package/CHANGELOG.md +424 -0
- package/Card.js +513 -0
- package/CardList.js +705 -0
- package/CellMeasurerCache-c11cec83.js +229 -0
- package/Charts.js +99 -0
- package/Checkbox.js +232 -0
- package/CheckboxGroup.js +206 -0
- package/CheckboxGroupWithSearch.js +279 -0
- package/Collapse.js +196 -0
- package/ColorPicker.js +210 -0
- package/ComboBox.js +99 -0
- package/Counter.js +99 -0
- package/DateFilter.js +179 -0
- package/DatePicker.js +1231 -0
- package/DatePickerInput.js +30 -0
- package/Divider.js +56 -0
- package/Drawer.js +264 -0
- package/Dropdown.js +99 -0
- package/Editor.js +22965 -0
- package/Empty.js +132 -0
- package/ExtendedInput.js +578 -0
- package/Form.js +116 -0
- package/FormContainer.js +189 -0
- package/FormableCheckbox.js +27 -0
- package/FormableDatePicker.js +39 -0
- package/FormableDropdown.js +105 -0
- package/FormableEditor.js +24 -0
- package/FormableHOC-21051057.js +83 -0
- package/FormableMultiSelectDropdown.js +105 -0
- package/FormableNumberInput.js +31 -0
- package/FormableRadio.js +23 -0
- package/FormableSwitcher.js +23 -0
- package/FormableTextInput.js +31 -0
- package/FormableUploader.js +40 -0
- package/GeneUIProvider.js +256 -0
- package/Grid.js +166 -0
- package/Holder.js +99 -0
- package/Icon.js +63 -0
- package/Image.js +130 -0
- package/ImagePreview.js +99 -0
- package/KeyValue.js +63 -0
- package/Label.js +58 -0
- package/LinkButton.js +104 -0
- package/Menu.js +277 -0
- package/MobileNavigation.js +95 -0
- package/MobilePopup.js +180 -0
- package/Modal.js +251 -0
- package/ModuleTitle.js +99 -0
- package/NavigationMenu.js +212 -0
- package/Notification.js +120 -0
- package/Option.js +186 -0
- package/Overlay.js +99 -0
- package/Overspread.js +343 -0
- package/Pagination.js +258 -0
- package/Paper.js +97 -0
- package/Popover-f4d1cac0.js +411 -0
- package/Popover.js +20 -0
- package/PopoverV2.js +19 -0
- package/Portal.js +58 -0
- package/Products.js +115 -0
- package/Profile.js +99 -0
- package/Progress.js +200 -0
- package/QRCode.js +816 -0
- package/README.md +90 -0
- package/Radio.js +152 -0
- package/RadioGroup.js +105 -0
- package/Range.js +14 -0
- package/RichEditor-b7928765.js +228 -0
- package/RichEditor.js +13 -0
- package/Scrollbar.js +1587 -0
- package/Search.js +72 -0
- package/SearchWithDropdown.js +195 -0
- package/Section.js +62 -0
- package/SkeletonLoader.js +82 -0
- package/Slider.js +256 -0
- package/Status.js +104 -0
- package/Steps.js +312 -0
- package/SuggestionList.js +15 -0
- package/Switcher.js +194 -0
- package/Table.js +102 -0
- package/TableCompositions.js +17028 -0
- package/Tabs.js +236 -0
- package/Tag.js +103 -0
- package/TextLink.js +22 -0
- package/Textarea.js +239 -0
- package/Time.js +63 -0
- package/TimePicker.js +99 -0
- package/Timeline.js +114 -0
- package/Title.js +66 -0
- package/Toaster.js +116 -0
- package/Tooltip.js +157 -0
- package/TransferList.js +502 -0
- package/Uploader.js +32 -0
- package/ValidatableCheckbox.js +126 -0
- package/ValidatableDatePicker.js +312 -0
- package/ValidatableDropdown.js +99 -0
- package/ValidatableElements.js +99 -0
- package/ValidatableMultiSelectDropdown.js +99 -0
- package/ValidatableNumberInput.js +194 -0
- package/ValidatableRadio.js +117 -0
- package/ValidatableSwitcher.js +94 -0
- package/ValidatableTextInput.js +164 -0
- package/ValidatableTimeInput.js +171 -0
- package/ValidatableUploader.js +94 -0
- package/Widget.js +99 -0
- package/_commonjsHelpers-24198af3.js +35 -0
- package/_rollupPluginBabelHelpers-e8fb2e5c.js +16 -0
- package/checkTimeValidation-e56771be.js +16 -0
- package/checkboxRadioSwitcher-5b69d7bd.js +4 -0
- package/clsx.m-2bb6df4b.js +3 -0
- package/configs-91c86664.js +96 -0
- package/configs.js +131 -0
- package/dateValidation-67caec66.js +225 -0
- package/debounce-4419bc2f.js +17 -0
- package/globalStyling-9c60a159.js +4 -0
- package/guid-8ddf77b3.js +16 -0
- package/index-00fe8887.js +193 -0
- package/index-0cf65939.js +30991 -0
- package/index-122432cd.js +270 -0
- package/index-262edd7a.js +77 -0
- package/index-5cea9a7d.js +407 -0
- package/index-5e722d91.js +867 -0
- package/index-67f4d4d1.js +6568 -0
- package/index-6ff23041.js +66 -0
- package/index-702bf24a.js +1938 -0
- package/index-a4635754.js +329 -0
- package/index-a59530cd.js +4 -0
- package/index-ac59cb10.js +169 -0
- package/index-b7a33c58.js +11 -0
- package/index-d9e8a888.js +987 -0
- package/index-e0af0caf.js +1182 -0
- package/index-e8776f3d.js +807 -0
- package/index.js +128 -0
- package/localization-4ba17032.js +46 -0
- package/objectWithoutPropertiesLoose-299691d8.js +78 -0
- package/package.json +190 -0
- package/rangeAndSlider-20599da4.js +8839 -0
- package/react-beautiful-dnd.esm-38c37304.js +10117 -0
- package/style-inject.es-746bb8ed.js +28 -0
- package/useClickOutside-5183e396.js +25 -0
- package/useDeviceType-dd51db38.js +15 -0
- package/useEllipsisDetection-ef536015.js +23 -0
- package/useKeyDown-38102ae7.js +21 -0
- package/useMount-6fef51a5.js +9 -0
- package/useWidth-9f4647f8.js +15 -0
- package/useWindowSize-80369d76.js +33 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import './globalStyling-9c60a159.js';
|
|
2
|
+
export { D as default } from './index-5e722d91.js';
|
|
3
|
+
import './style-inject.es-746bb8ed.js';
|
|
4
|
+
import './_rollupPluginBabelHelpers-e8fb2e5c.js';
|
|
5
|
+
import 'react';
|
|
6
|
+
import './index-e0af0caf.js';
|
|
7
|
+
import './dateValidation-67caec66.js';
|
|
8
|
+
import './_commonjsHelpers-24198af3.js';
|
|
9
|
+
import './configs-91c86664.js';
|
|
10
|
+
import './index-ac59cb10.js';
|
|
11
|
+
import 'react-dom';
|
|
12
|
+
import './useKeyDown-38102ae7.js';
|
|
13
|
+
import './useDeviceType-dd51db38.js';
|
|
14
|
+
import './useWindowSize-80369d76.js';
|
|
15
|
+
import './index-6ff23041.js';
|
|
16
|
+
import './index-702bf24a.js';
|
|
17
|
+
import './index-122432cd.js';
|
|
18
|
+
import './useClickOutside-5183e396.js';
|
|
19
|
+
import './Scrollbar.js';
|
|
20
|
+
import './GeneUIProvider.js';
|
|
21
|
+
import './debounce-4419bc2f.js';
|
|
22
|
+
import './DatePicker.js';
|
|
23
|
+
import './guid-8ddf77b3.js';
|
|
24
|
+
import './Button.js';
|
|
25
|
+
import './Icon.js';
|
|
26
|
+
import './ExtendedInput.js';
|
|
27
|
+
import './index-5cea9a7d.js';
|
|
28
|
+
import './Tooltip.js';
|
|
29
|
+
import './Popover-f4d1cac0.js';
|
|
30
|
+
import './localization-4ba17032.js';
|
package/Divider.js
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { _ as _extends } from './_rollupPluginBabelHelpers-e8fb2e5c.js';
|
|
2
|
+
import React__default, { useMemo } from 'react';
|
|
3
|
+
import { p as propTypesExports } from './index-e0af0caf.js';
|
|
4
|
+
import { c as classnames } from './index-6ff23041.js';
|
|
5
|
+
import './globalStyling-9c60a159.js';
|
|
6
|
+
import { s as styleInject } from './style-inject.es-746bb8ed.js';
|
|
7
|
+
|
|
8
|
+
var css_248z = "[data-gene-ui-version=\"2.11.0\"] .divider{background:rgba(var(--background-sc-rgb),.05);height:2.6rem;width:1px}[data-gene-ui-version=\"2.11.0\"] .divider:not(.divider-withNoSpace){margin:0 1.5rem}[data-gene-ui-version=\"2.11.0\"] .divider:not(.divider-withNoSpace).type-horizontal{margin:1.5rem 0}[data-gene-ui-version=\"2.11.0\"] .divider.type-horizontal{height:1px;width:2.6rem}[data-gene-ui-version=\"2.11.0\"] .divider.type-horizontal.full-width{width:100%}";
|
|
9
|
+
styleInject(css_248z);
|
|
10
|
+
|
|
11
|
+
function Divider(_ref) {
|
|
12
|
+
let {
|
|
13
|
+
type,
|
|
14
|
+
className,
|
|
15
|
+
size,
|
|
16
|
+
withSpace,
|
|
17
|
+
...restProps
|
|
18
|
+
} = _ref;
|
|
19
|
+
const modifiedSize = useMemo(() => typeof size === 'number' ? "".concat(size / 10, "rem") : size, [size]);
|
|
20
|
+
const styles = useMemo(() => type === 'vertical' ? {
|
|
21
|
+
height: modifiedSize
|
|
22
|
+
} : {
|
|
23
|
+
width: modifiedSize
|
|
24
|
+
}, [modifiedSize, type]);
|
|
25
|
+
return /*#__PURE__*/React__default.createElement("div", _extends({
|
|
26
|
+
className: classnames('divider', "type-".concat(type), {
|
|
27
|
+
'divider-withNoSpace': !withSpace
|
|
28
|
+
}, className),
|
|
29
|
+
style: styles
|
|
30
|
+
}, restProps));
|
|
31
|
+
}
|
|
32
|
+
Divider.propTypes = {
|
|
33
|
+
/**
|
|
34
|
+
* Divider direction
|
|
35
|
+
*/
|
|
36
|
+
type: propTypesExports.oneOf(['horizontal', 'vertical']),
|
|
37
|
+
/**
|
|
38
|
+
* Divider additional className
|
|
39
|
+
*/
|
|
40
|
+
className: propTypesExports.string,
|
|
41
|
+
/**
|
|
42
|
+
* Divider size will be applied to height(when "type" is set to "vertical") or to width(when "type" is set to "horizontal")
|
|
43
|
+
*/
|
|
44
|
+
size: propTypesExports.oneOfType([propTypesExports.string, propTypesExports.number]),
|
|
45
|
+
/**
|
|
46
|
+
* withSpace by default true. If you want to remove the divider`s spacing, switch to false
|
|
47
|
+
*/
|
|
48
|
+
withSpace: propTypesExports.bool
|
|
49
|
+
};
|
|
50
|
+
Divider.defaultProps = {
|
|
51
|
+
type: 'vertical',
|
|
52
|
+
withSpace: true
|
|
53
|
+
};
|
|
54
|
+
Divider.displayName = 'Divider';
|
|
55
|
+
|
|
56
|
+
export { Divider as default };
|
package/Drawer.js
ADDED
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import React__default, { useRef, useState, useEffect, useCallback, useMemo, Fragment } from 'react';
|
|
2
|
+
import { p as propTypesExports } from './index-e0af0caf.js';
|
|
3
|
+
import { c as clsx } from './clsx.m-2bb6df4b.js';
|
|
4
|
+
import { n as noop } from './index-ac59cb10.js';
|
|
5
|
+
import './configs-91c86664.js';
|
|
6
|
+
import { u as useClickOutside } from './useClickOutside-5183e396.js';
|
|
7
|
+
import Icon from './Icon.js';
|
|
8
|
+
import Tooltip from './Tooltip.js';
|
|
9
|
+
import { s as styleInject } from './style-inject.es-746bb8ed.js';
|
|
10
|
+
import './dateValidation-67caec66.js';
|
|
11
|
+
import './_commonjsHelpers-24198af3.js';
|
|
12
|
+
import 'react-dom';
|
|
13
|
+
import './_rollupPluginBabelHelpers-e8fb2e5c.js';
|
|
14
|
+
import './index-6ff23041.js';
|
|
15
|
+
import './globalStyling-9c60a159.js';
|
|
16
|
+
import './Popover-f4d1cac0.js';
|
|
17
|
+
import './useDeviceType-dd51db38.js';
|
|
18
|
+
import './useWindowSize-80369d76.js';
|
|
19
|
+
import './GeneUIProvider.js';
|
|
20
|
+
|
|
21
|
+
var css_248z = "[data-gene-ui-version=\"2.11.0\"] .bc-drawer{--width:7.2rem;--head-justify:center;--item-width:4.2rem;--item-padding:0;--item-justify:center;--item-title-display:none;--item-icon-margin:0;background:var(--background);border-right:1px solid rgba(var(--background-sc-rgb),.1);left:0;overflow:hidden;top:0;transition:width .15s cubic-bezier(.4,0,.2,1);width:var(--width);z-index:200}[data-gene-ui-version=\"2.11.0\"] .bc-drawer.open{--width:30rem;--head-justify:space-between;--item-width:100%;--item-padding:0 14px;--item-justify:flex-start;--item-title-display:block;--item-icon-margin:17px}[data-gene-ui-version=\"2.11.0\"] .bc-drawer.open .bc-drawer-head:after{background-color:#1473e6;bottom:0;content:\"\";height:3px;left:20px;margin:17px 198px 0 0;position:absolute;width:34px}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-head{align-items:center;border-bottom:1px solid rgba(var(--background-sc-rgb),.1);display:flex;height:64px;justify-content:var(--head-justify);padding:20px;position:relative;width:var(--width)}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-head .bc-drawer-head-title{font-size:16px;font-weight:600}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-head .bc-drawer-head-icon{cursor:pointer}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-head .bc-drawer-head-icon:hover{color:#1473e6}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-content{display:flex;flex-direction:column;height:calc(100% - 64px);overflow-x:hidden;overflow-y:auto;padding:10px 12px;width:var(--width)}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item{align-items:center;border-radius:21px;cursor:pointer;display:flex;height:42px;justify-content:var(--item-justify);min-height:42px;overflow:hidden;padding:var(--item-padding);position:relative;transition:width .15s cubic-bezier(.4,0,.2,1);transition:color .3s,background .3s,opacity .2s;width:var(--item-width)}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item:hover{background-color:#00000008}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item.disabled{opacity:.5;pointer-events:none}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item.active:not(.nested){background-color:#1473e6;color:#fff}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item.active.nested{background-color:#1473e608;color:#1473e6}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item.nested{padding-left:57px}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item .bc-drawer-item-icon{margin-right:var(--item-icon-margin)}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item .bc-drawer-item-title{display:var(--item-title-display);font-weight:600}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item .bc-drawer-item-arrow{position:absolute;right:17px;transition:.15s cubic-bezier(.4,0,.2,1)}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item .bc-drawer-item-arrow.open{transform:rotate(-180deg)}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item-nested-list{max-height:0;overflow:hidden;transition:.15s cubic-bezier(.4,0,.2,1);width:100%}[data-gene-ui-version=\"2.11.0\"] .bc-drawer .bc-drawer-item-nested-list.open{max-height:100%}";
|
|
22
|
+
styleInject(css_248z);
|
|
23
|
+
|
|
24
|
+
function Drawer(_ref) {
|
|
25
|
+
let {
|
|
26
|
+
menu,
|
|
27
|
+
title,
|
|
28
|
+
value,
|
|
29
|
+
defaultValue,
|
|
30
|
+
className,
|
|
31
|
+
onOpen,
|
|
32
|
+
onClose,
|
|
33
|
+
onChange,
|
|
34
|
+
onOutsideClick,
|
|
35
|
+
defaultOpen,
|
|
36
|
+
height,
|
|
37
|
+
position,
|
|
38
|
+
isOpen,
|
|
39
|
+
closeAfterSelect,
|
|
40
|
+
closeWithOutsideClick
|
|
41
|
+
} = _ref;
|
|
42
|
+
const isOpenControlled = typeof isOpen === 'boolean';
|
|
43
|
+
const drawerRef = useRef(null);
|
|
44
|
+
const [isDrawerOpen, setIsDrawerOpen] = useState(defaultOpen);
|
|
45
|
+
const [selectedVaule, setSelectedValue] = useState(defaultValue);
|
|
46
|
+
const [openNested, setOpenNested] = useState(null);
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
setSelectedValue(value);
|
|
49
|
+
}, [value]);
|
|
50
|
+
useEffect(() => {
|
|
51
|
+
isOpenControlled && setIsDrawerOpen(isOpen);
|
|
52
|
+
}, [isOpenControlled, isOpen]);
|
|
53
|
+
const handleOpen = useCallback(event => {
|
|
54
|
+
if (!isDrawerOpen) {
|
|
55
|
+
!isOpenControlled && setIsDrawerOpen(true);
|
|
56
|
+
onOpen(event);
|
|
57
|
+
}
|
|
58
|
+
}, [isDrawerOpen, isOpenControlled, onOpen]);
|
|
59
|
+
const handleClose = useCallback(event => {
|
|
60
|
+
if (isDrawerOpen) {
|
|
61
|
+
!isOpenControlled && setIsDrawerOpen(false);
|
|
62
|
+
onClose(event);
|
|
63
|
+
}
|
|
64
|
+
}, [isDrawerOpen, isOpenControlled, onClose]);
|
|
65
|
+
const selectedNestedParent = useMemo(() => {
|
|
66
|
+
const selectedItem = menu.find(item => item.id === selectedVaule || item.nested && item.nested.length && item.nested.findIndex(nestedItem => nestedItem.id === selectedVaule) > -1);
|
|
67
|
+
return selectedItem && selectedItem.id;
|
|
68
|
+
}, [selectedVaule, menu]);
|
|
69
|
+
const handleItemClick = useCallback((item, index, event) => {
|
|
70
|
+
if (!item.disabled) {
|
|
71
|
+
if (item.nested && item.nested.length > 0) {
|
|
72
|
+
if (isDrawerOpen) {
|
|
73
|
+
setOpenNested(prev => prev !== index && index);
|
|
74
|
+
} else {
|
|
75
|
+
setOpenNested(index);
|
|
76
|
+
handleOpen(event);
|
|
77
|
+
}
|
|
78
|
+
} else if (item.id !== selectedVaule) {
|
|
79
|
+
onChange(item);
|
|
80
|
+
setSelectedValue(item.id);
|
|
81
|
+
closeAfterSelect && handleClose(event);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}, [closeAfterSelect, handleClose, handleOpen, isDrawerOpen, onChange, selectedVaule]);
|
|
85
|
+
const handleNestedItemClick = useCallback((item, nested, event) => {
|
|
86
|
+
if (!item.disabled && !nested.disabled && nested.id !== selectedVaule) {
|
|
87
|
+
onChange(item, nested);
|
|
88
|
+
setSelectedValue(nested.id);
|
|
89
|
+
closeAfterSelect && handleClose(event);
|
|
90
|
+
}
|
|
91
|
+
}, [closeAfterSelect, handleClose, onChange, selectedVaule]);
|
|
92
|
+
const handleMenuIconClick = useCallback(event => {
|
|
93
|
+
isDrawerOpen ? handleClose(event) : handleOpen(event);
|
|
94
|
+
}, [isDrawerOpen, handleClose, handleOpen]);
|
|
95
|
+
const drawerStyles = useMemo(() => ({
|
|
96
|
+
position,
|
|
97
|
+
height
|
|
98
|
+
}), [position, height]);
|
|
99
|
+
const handleOutsideClick = useClickOutside(event => {
|
|
100
|
+
if (drawerRef && !drawerRef.current.contains(event.target)) {
|
|
101
|
+
closeWithOutsideClick && handleClose();
|
|
102
|
+
onOutsideClick(event);
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
const generateDrawerRef = useCallback(node => {
|
|
106
|
+
if (node && drawerRef) {
|
|
107
|
+
drawerRef.current = node;
|
|
108
|
+
handleOutsideClick(node);
|
|
109
|
+
}
|
|
110
|
+
}, [handleOutsideClick]);
|
|
111
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
112
|
+
ref: generateDrawerRef,
|
|
113
|
+
className: clsx('bc-drawer', className, {
|
|
114
|
+
open: isDrawerOpen
|
|
115
|
+
}),
|
|
116
|
+
style: drawerStyles
|
|
117
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
118
|
+
className: "bc-drawer-head"
|
|
119
|
+
}, isDrawerOpen && /*#__PURE__*/React__default.createElement("span", {
|
|
120
|
+
className: "bc-drawer-head-title"
|
|
121
|
+
}, title), /*#__PURE__*/React__default.createElement(Icon, {
|
|
122
|
+
className: "bc-drawer-head-icon",
|
|
123
|
+
onClick: handleMenuIconClick,
|
|
124
|
+
type: isDrawerOpen ? 'bc-icon-menu-collapsed' : 'bc-icon-menu-expanded'
|
|
125
|
+
})), /*#__PURE__*/React__default.createElement("div", {
|
|
126
|
+
className: "bc-drawer-content"
|
|
127
|
+
}, menu && menu.length > 0 && menu.map((item, index) => {
|
|
128
|
+
const {
|
|
129
|
+
nested
|
|
130
|
+
} = item;
|
|
131
|
+
const hasNested = nested && nested.length;
|
|
132
|
+
const isNestedOpen = isDrawerOpen && openNested === index;
|
|
133
|
+
return /*#__PURE__*/React__default.createElement(Fragment, {
|
|
134
|
+
key: item.id
|
|
135
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
136
|
+
className: clsx('bc-drawer-item', {
|
|
137
|
+
active: selectedNestedParent === item.id,
|
|
138
|
+
disabled: item.disabled
|
|
139
|
+
}),
|
|
140
|
+
onClick: event => handleItemClick(item, index, event)
|
|
141
|
+
}, /*#__PURE__*/React__default.createElement(Tooltip, {
|
|
142
|
+
title: isDrawerOpen ? '' : item.title,
|
|
143
|
+
position: "right"
|
|
144
|
+
}, item.icon && /*#__PURE__*/React__default.createElement(Icon, {
|
|
145
|
+
className: "bc-drawer-item-icon",
|
|
146
|
+
type: item.icon
|
|
147
|
+
})), /*#__PURE__*/React__default.createElement("span", {
|
|
148
|
+
className: "bc-drawer-item-title"
|
|
149
|
+
}, item.title), isDrawerOpen && hasNested && /*#__PURE__*/React__default.createElement(Icon, {
|
|
150
|
+
type: "bc-icon-arrow-down",
|
|
151
|
+
className: clsx('bc-drawer-item-arrow', {
|
|
152
|
+
open: isNestedOpen
|
|
153
|
+
})
|
|
154
|
+
})), hasNested && /*#__PURE__*/React__default.createElement("div", {
|
|
155
|
+
className: clsx('bc-drawer-item-nested-list', {
|
|
156
|
+
open: isNestedOpen
|
|
157
|
+
})
|
|
158
|
+
}, nested.map(nestedItem => /*#__PURE__*/React__default.createElement("div", {
|
|
159
|
+
key: nestedItem.id,
|
|
160
|
+
className: clsx('bc-drawer-item nested', {
|
|
161
|
+
active: selectedVaule === nestedItem.id,
|
|
162
|
+
disabled: nestedItem.disabled
|
|
163
|
+
}),
|
|
164
|
+
onClick: event => handleNestedItemClick(item, nestedItem, event)
|
|
165
|
+
}, /*#__PURE__*/React__default.createElement("span", {
|
|
166
|
+
className: "bc-drawer-item-title"
|
|
167
|
+
}, nestedItem.title)))));
|
|
168
|
+
})));
|
|
169
|
+
}
|
|
170
|
+
Drawer.defaultProps = {
|
|
171
|
+
onOpen: noop,
|
|
172
|
+
onClose: noop,
|
|
173
|
+
onChange: noop,
|
|
174
|
+
defaultOpen: false,
|
|
175
|
+
height: '100vh',
|
|
176
|
+
position: 'relative'
|
|
177
|
+
};
|
|
178
|
+
Drawer.propTypes = {
|
|
179
|
+
/**
|
|
180
|
+
* Date for display the menu
|
|
181
|
+
*/
|
|
182
|
+
menu: propTypesExports.arrayOf(propTypesExports.shape({
|
|
183
|
+
title: propTypesExports.string,
|
|
184
|
+
icon: propTypesExports.string,
|
|
185
|
+
id: propTypesExports.oneOfType([propTypesExports.string, propTypesExports.number]),
|
|
186
|
+
disabled: propTypesExports.bool,
|
|
187
|
+
nested: propTypesExports.arrayOf(propTypesExports.shape({
|
|
188
|
+
title: propTypesExports.string,
|
|
189
|
+
id: propTypesExports.oneOfType([propTypesExports.string, propTypesExports.number]),
|
|
190
|
+
disabled: propTypesExports.bool
|
|
191
|
+
}))
|
|
192
|
+
})),
|
|
193
|
+
/**
|
|
194
|
+
* If you want to control the selected item in the menu, you must date id of one of the 'menu' items.
|
|
195
|
+
*/
|
|
196
|
+
value: propTypesExports.oneOfType([propTypesExports.string, propTypesExports.number]),
|
|
197
|
+
/**
|
|
198
|
+
* If you want not to control the menu from the top but have a default value, you can send it using defaultValue
|
|
199
|
+
*/
|
|
200
|
+
defaultValue: propTypesExports.oneOfType([propTypesExports.string, propTypesExports.number]),
|
|
201
|
+
/**
|
|
202
|
+
* Label is displayed at the top in the driver
|
|
203
|
+
*/
|
|
204
|
+
title: propTypesExports.string,
|
|
205
|
+
/**
|
|
206
|
+
* Override or extend the className applied to the component.
|
|
207
|
+
*/
|
|
208
|
+
className: propTypesExports.string,
|
|
209
|
+
/**
|
|
210
|
+
* Callback fired when a menu item is selected.
|
|
211
|
+
Signature:
|
|
212
|
+
function(item, nested) => void
|
|
213
|
+
item: Item is the element that was select from the menu
|
|
214
|
+
nested: If you select an item from the submenu, it will be sent as the second argument, and the first will be the item of its parent.
|
|
215
|
+
*/
|
|
216
|
+
onChange: propTypesExports.func,
|
|
217
|
+
/**
|
|
218
|
+
* Callback fired when a drawer is opened.
|
|
219
|
+
Signature:
|
|
220
|
+
function(event: object) => void
|
|
221
|
+
event: The event source of the callback.
|
|
222
|
+
*/
|
|
223
|
+
onOpen: propTypesExports.func,
|
|
224
|
+
/**
|
|
225
|
+
* Callback fired when a drawer is closed.
|
|
226
|
+
Signature:
|
|
227
|
+
function(event: object) => void
|
|
228
|
+
event: The event source of the callback.
|
|
229
|
+
*/
|
|
230
|
+
onClose: propTypesExports.func,
|
|
231
|
+
/**
|
|
232
|
+
* If true, the component is shown by default.
|
|
233
|
+
*/
|
|
234
|
+
defaultOpen: propTypesExports.bool,
|
|
235
|
+
/**
|
|
236
|
+
* Height for the component
|
|
237
|
+
by default: 100vh
|
|
238
|
+
*/
|
|
239
|
+
height: propTypesExports.string,
|
|
240
|
+
/**
|
|
241
|
+
* The positioning type. The behavior of the different options is described in the MDN web docs.
|
|
242
|
+
'absolute' | 'fixed' | 'relative' | 'static' | 'sticky'
|
|
243
|
+
*/
|
|
244
|
+
position: propTypesExports.string,
|
|
245
|
+
/**
|
|
246
|
+
* With this prop you can control Drawer opening and closing from parent component
|
|
247
|
+
*/
|
|
248
|
+
isOpen: propTypesExports.bool,
|
|
249
|
+
/**
|
|
250
|
+
* Drawer to close after item select
|
|
251
|
+
*/
|
|
252
|
+
closeAfterSelect: propTypesExports.bool,
|
|
253
|
+
/**
|
|
254
|
+
* Closes when click outside
|
|
255
|
+
*/
|
|
256
|
+
closeWithOutsideClick: propTypesExports.bool,
|
|
257
|
+
/**
|
|
258
|
+
* Callback fired when a outside click.
|
|
259
|
+
* (event: MouseEvent) => void.
|
|
260
|
+
*/
|
|
261
|
+
onOutsideClick: propTypesExports.func
|
|
262
|
+
};
|
|
263
|
+
|
|
264
|
+
export { Drawer as default };
|
package/Dropdown.js
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import './_rollupPluginBabelHelpers-e8fb2e5c.js';
|
|
2
|
+
import 'react';
|
|
3
|
+
export { m as default } from './index-0cf65939.js';
|
|
4
|
+
import './index-6ff23041.js';
|
|
5
|
+
import './index-e0af0caf.js';
|
|
6
|
+
import './useMount-6fef51a5.js';
|
|
7
|
+
import './index-5e722d91.js';
|
|
8
|
+
import './useKeyDown-38102ae7.js';
|
|
9
|
+
import './useDeviceType-dd51db38.js';
|
|
10
|
+
import './useClickOutside-5183e396.js';
|
|
11
|
+
import './index-a4635754.js';
|
|
12
|
+
import './useEllipsisDetection-ef536015.js';
|
|
13
|
+
import './configs-91c86664.js';
|
|
14
|
+
import './index-ac59cb10.js';
|
|
15
|
+
import './index-5cea9a7d.js';
|
|
16
|
+
import './ExtendedInput.js';
|
|
17
|
+
import './BusyLoader.js';
|
|
18
|
+
import './Tooltip.js';
|
|
19
|
+
import './index-702bf24a.js';
|
|
20
|
+
import './Empty.js';
|
|
21
|
+
import './globalStyling-9c60a159.js';
|
|
22
|
+
import './index-a59530cd.js';
|
|
23
|
+
import './Editor.js';
|
|
24
|
+
import './_commonjsHelpers-24198af3.js';
|
|
25
|
+
import 'react-dom';
|
|
26
|
+
import './Button.js';
|
|
27
|
+
import './Icon.js';
|
|
28
|
+
import './style-inject.es-746bb8ed.js';
|
|
29
|
+
import './dateValidation-67caec66.js';
|
|
30
|
+
import './useWindowSize-80369d76.js';
|
|
31
|
+
import './ValidatableUploader.js';
|
|
32
|
+
import './index-d9e8a888.js';
|
|
33
|
+
import './Grid.js';
|
|
34
|
+
import './useWidth-9f4647f8.js';
|
|
35
|
+
import './Image.js';
|
|
36
|
+
import './Checkbox.js';
|
|
37
|
+
import './checkboxRadioSwitcher-5b69d7bd.js';
|
|
38
|
+
import './guid-8ddf77b3.js';
|
|
39
|
+
import './Popover-f4d1cac0.js';
|
|
40
|
+
import './GeneUIProvider.js';
|
|
41
|
+
import './Scrollbar.js';
|
|
42
|
+
import './ValidatableRadio.js';
|
|
43
|
+
import './RadioGroup.js';
|
|
44
|
+
import './Radio.js';
|
|
45
|
+
import './ValidatableCheckbox.js';
|
|
46
|
+
import './ValidatableSwitcher.js';
|
|
47
|
+
import './Switcher.js';
|
|
48
|
+
import './ValidatableNumberInput.js';
|
|
49
|
+
import './ValidatableTextInput.js';
|
|
50
|
+
import './ValidatableDatePicker.js';
|
|
51
|
+
import './checkTimeValidation-e56771be.js';
|
|
52
|
+
import './localization-4ba17032.js';
|
|
53
|
+
import './index-122432cd.js';
|
|
54
|
+
import './debounce-4419bc2f.js';
|
|
55
|
+
import './DatePicker.js';
|
|
56
|
+
import './Tabs.js';
|
|
57
|
+
import './Steps.js';
|
|
58
|
+
import './Portal.js';
|
|
59
|
+
import './Timeline.js';
|
|
60
|
+
import './Card.js';
|
|
61
|
+
import './MobilePopup.js';
|
|
62
|
+
import './Menu.js';
|
|
63
|
+
import './Option.js';
|
|
64
|
+
import './SkeletonLoader.js';
|
|
65
|
+
import './KeyValue.js';
|
|
66
|
+
import './configs.js';
|
|
67
|
+
import './Tag.js';
|
|
68
|
+
import './Alert.js';
|
|
69
|
+
import './index-00fe8887.js';
|
|
70
|
+
import './rangeAndSlider-20599da4.js';
|
|
71
|
+
import './Slider.js';
|
|
72
|
+
import './Pagination.js';
|
|
73
|
+
import './Divider.js';
|
|
74
|
+
import './objectWithoutPropertiesLoose-299691d8.js';
|
|
75
|
+
import './clsx.m-2bb6df4b.js';
|
|
76
|
+
import './Notification.js';
|
|
77
|
+
import './Modal.js';
|
|
78
|
+
import './Collapse.js';
|
|
79
|
+
import './Status.js';
|
|
80
|
+
import './Avatar.js';
|
|
81
|
+
import './Search.js';
|
|
82
|
+
import './TextLink.js';
|
|
83
|
+
import './Label.js';
|
|
84
|
+
import './Paper.js';
|
|
85
|
+
import './Badge.js';
|
|
86
|
+
import './Time.js';
|
|
87
|
+
import './Title.js';
|
|
88
|
+
import './index-b7a33c58.js';
|
|
89
|
+
import './QRCode.js';
|
|
90
|
+
import './Progress.js';
|
|
91
|
+
import './MobileNavigation.js';
|
|
92
|
+
import './Products.js';
|
|
93
|
+
import './Breadcrumb.js';
|
|
94
|
+
import './Section.js';
|
|
95
|
+
import './ColorPicker.js';
|
|
96
|
+
import './NavigationMenu.js';
|
|
97
|
+
import './Textarea.js';
|
|
98
|
+
import './AdvancedSearch.js';
|
|
99
|
+
import './LinkButton.js';
|