@dreamcommerce/aurora 2.17.21 → 2.17.22
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/build/cjs/external/uuid/dist/esm-browser/regex.js +8 -0
- package/build/cjs/external/uuid/dist/esm-browser/regex.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/rng.js +26 -0
- package/build/cjs/external/uuid/dist/esm-browser/rng.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/stringify.js +36 -0
- package/build/cjs/external/uuid/dist/esm-browser/stringify.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/v4.js +29 -0
- package/build/cjs/external/uuid/dist/esm-browser/v4.js.map +1 -0
- package/build/cjs/external/uuid/dist/esm-browser/validate.js +12 -0
- package/build/cjs/external/uuid/dist/esm-browser/validate.js.map +1 -0
- package/build/cjs/packages/aurora/src/components/color_picker_new/components/pure-color-picker.js +7 -6
- package/build/cjs/packages/aurora/src/components/color_picker_new/components/pure-color-picker.js.map +1 -1
- package/build/cjs/packages/aurora/src/components/controls/hoc/control_color_picker/index.js +9 -9
- package/build/cjs/packages/aurora/src/components/controls/hoc/control_date_picker/index.js +9 -9
- package/build/cjs/packages/aurora/src/components/date_picker/components/month_controller.js +5 -5
- package/build/cjs/packages/aurora/src/components/dropdown/components/content.js +33 -1
- package/build/cjs/packages/aurora/src/components/dropdown/components/content.js.map +1 -1
- package/build/cjs/packages/aurora/src/components/dropdown/components/dropdown.js +100 -0
- package/build/cjs/packages/aurora/src/components/dropdown/components/dropdown.js.map +1 -0
- package/build/cjs/packages/aurora/src/components/dropdown/context/dropdowns_manager.js +17 -0
- package/build/cjs/packages/aurora/src/components/dropdown/context/dropdowns_manager.js.map +1 -0
- package/build/cjs/packages/aurora/src/components/dropdown/hoc/multiselect/index.js +6 -6
- package/build/cjs/packages/aurora/src/components/dropdown/hoc/select/index.js +7 -7
- package/build/cjs/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager.js +62 -0
- package/build/cjs/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager.js.map +1 -0
- package/build/cjs/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager_context.js +19 -0
- package/build/cjs/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager_context.js.map +1 -0
- package/build/cjs/packages/aurora/src/components/dropdown/hooks/use_toggle.js +4 -1
- package/build/cjs/packages/aurora/src/components/dropdown/hooks/use_toggle.js.map +1 -1
- package/build/cjs/packages/aurora/src/components/dropdown/index.js +18 -78
- package/build/cjs/packages/aurora/src/components/dropdown/index.js.map +1 -1
- package/build/cjs/packages/aurora/src/components/hint/index.js +2 -2
- package/build/cjs/packages/aurora/src/components/tooltip/index.js +2 -2
- package/build/cjs/packages/aurora/src/index.js +73 -71
- package/build/cjs/packages/aurora/src/index.js.map +1 -1
- package/build/esm/external/uuid/dist/esm-browser/regex.js +4 -0
- package/build/esm/external/uuid/dist/esm-browser/regex.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/rng.js +22 -0
- package/build/esm/external/uuid/dist/esm-browser/rng.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/stringify.js +32 -0
- package/build/esm/external/uuid/dist/esm-browser/stringify.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/v4.js +25 -0
- package/build/esm/external/uuid/dist/esm-browser/v4.js.map +1 -0
- package/build/esm/external/uuid/dist/esm-browser/validate.js +8 -0
- package/build/esm/external/uuid/dist/esm-browser/validate.js.map +1 -0
- package/build/esm/packages/aurora/src/components/color_picker_new/components/pure-color-picker.js +3 -2
- package/build/esm/packages/aurora/src/components/color_picker_new/components/pure-color-picker.js.map +1 -1
- package/build/esm/packages/aurora/src/components/controls/hoc/control_color_picker/index.js +1 -1
- package/build/esm/packages/aurora/src/components/controls/hoc/control_date_picker/index.js +1 -1
- package/build/esm/packages/aurora/src/components/date_picker/components/month_controller.js +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/components/content.js +33 -1
- package/build/esm/packages/aurora/src/components/dropdown/components/content.js.map +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/components/dropdown.d.ts +23 -0
- package/build/esm/packages/aurora/src/components/dropdown/components/dropdown.js +92 -0
- package/build/esm/packages/aurora/src/components/dropdown/components/dropdown.js.map +1 -0
- package/build/esm/packages/aurora/src/components/dropdown/context/dropdowns_manager.d.ts +3 -0
- package/build/esm/packages/aurora/src/components/dropdown/context/dropdowns_manager.js +13 -0
- package/build/esm/packages/aurora/src/components/dropdown/context/dropdowns_manager.js.map +1 -0
- package/build/esm/packages/aurora/src/components/dropdown/context/types.d.ts +7 -0
- package/build/esm/packages/aurora/src/components/dropdown/context/types.js +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/context/types.js.map +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/hoc/multiselect/index.js +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/hoc/select/index.js +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager.d.ts +8 -0
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager.js +58 -0
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager.js.map +1 -0
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager_context.d.ts +2 -0
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager_context.js +15 -0
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager_context.js.map +1 -0
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_toggle.d.ts +2 -1
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_toggle.js +4 -1
- package/build/esm/packages/aurora/src/components/dropdown/hooks/use_toggle.js.map +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/index.d.ts +6 -23
- package/build/esm/packages/aurora/src/components/dropdown/index.js +19 -79
- package/build/esm/packages/aurora/src/components/dropdown/index.js.map +1 -1
- package/build/esm/packages/aurora/src/components/dropdown/types.d.ts +5 -0
- package/build/esm/packages/aurora/src/components/hint/index.js +1 -1
- package/build/esm/packages/aurora/src/components/tooltip/index.js +1 -1
- package/build/esm/packages/aurora/src/index.d.ts +3 -2
- package/build/esm/packages/aurora/src/index.js +2 -1
- package/build/esm/packages/aurora/src/index.js.map +1 -1
- package/package.json +1 -1
package/build/esm/packages/aurora/src/components/color_picker_new/components/pure-color-picker.js
CHANGED
|
@@ -10,7 +10,7 @@ import { ColorPickerHeader } from './color-picker-header.js';
|
|
|
10
10
|
import { ColorPickerInputs } from './color-picker-inputs/color-picker-inputs.js';
|
|
11
11
|
import { ColorPickerSwatch } from './color-picker-swatch.js';
|
|
12
12
|
import { ColorPickerSwatches } from './color-picker-swatches.js';
|
|
13
|
-
import Dropdown from '../../dropdown/
|
|
13
|
+
import Dropdown from '../../dropdown/components/dropdown.js';
|
|
14
14
|
|
|
15
15
|
var ColorPickerNewPure = function ColorPickerNewPure(_ref) {
|
|
16
16
|
var id = _ref.id,
|
|
@@ -33,7 +33,8 @@ var ColorPickerNewPure = function ColorPickerNewPure(_ref) {
|
|
|
33
33
|
name: name
|
|
34
34
|
}))), /*#__PURE__*/React.createElement(Dropdown.Content, {
|
|
35
35
|
shouldCloseOnClickOutside: false,
|
|
36
|
-
shouldCloseOnScroll: false
|
|
36
|
+
shouldCloseOnScroll: false,
|
|
37
|
+
shouldCloseOthersOnOpen: true
|
|
37
38
|
}, /*#__PURE__*/React.createElement(ColorPickerHeader, null), /*#__PURE__*/React.createElement("div", {
|
|
38
39
|
className: "".concat(styles[cssColorPickerContainer])
|
|
39
40
|
}, /*#__PURE__*/React.createElement(ColorPicker, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA,4BAA4B,0FAA8F;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA,4BAA4B,0FAA8F;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -5,7 +5,7 @@ import withTranslation from '../../../../utilities/translation/with_translation.
|
|
|
5
5
|
import { PureColorPicker } from '../../../color_picker/index.js';
|
|
6
6
|
import Control from '../../index.js';
|
|
7
7
|
import Hint from '../../../hint/index.js';
|
|
8
|
-
import Dropdown from '../../../dropdown/
|
|
8
|
+
import Dropdown from '../../../dropdown/components/dropdown.js';
|
|
9
9
|
import ColorPickerLabel from '../../../color_picker/components/label.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -3,7 +3,7 @@ import { objectSpread2 as _objectSpread2 } from '../../../../../../../_virtual/_
|
|
|
3
3
|
import withTranslation from '../../../../utilities/translation/with_translation.js';
|
|
4
4
|
import Control from '../../index.js';
|
|
5
5
|
import Hint from '../../../hint/index.js';
|
|
6
|
-
import Dropdown from '../../../dropdown/
|
|
6
|
+
import Dropdown from '../../../dropdown/components/dropdown.js';
|
|
7
7
|
import useValueController from '../../../date_picker/hooks/use_value_controller.js';
|
|
8
8
|
import DatepickerContext from '../../../date_picker/context/value_controller_context.js';
|
|
9
9
|
import { RangePicker } from '../../../date_picker/hoc/range_picker.js';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { useContext, useRef } from 'react';
|
|
2
|
-
import Dropdown from '../../dropdown/
|
|
2
|
+
import Dropdown from '../../dropdown/components/dropdown.js';
|
|
3
3
|
import { DATE_PICKER_TEST_ID } from '../constants.js';
|
|
4
4
|
import MonthYearNavigationContext from '../context/month_year_navigation_context.js';
|
|
5
5
|
import { cssDatePickerController, cssDatePickerControllerArrow, cssDatePickerControllerArrowLeft, cssDatePickerControllerTitle, cssDatePickerControllerArrowRight } from '../css_classes.js';
|
|
@@ -18,6 +18,8 @@ import { useClickOutside } from '../../../hooks/use_click_outside.js';
|
|
|
18
18
|
import IconArrow from '../../../assets/icon_arrow.js';
|
|
19
19
|
import cssClasses$1 from '../../../css/hint/main.module.less.js';
|
|
20
20
|
import cssClasses$2 from '../../../css/tooltip/main.module.less.js';
|
|
21
|
+
import { useDropdownsManagerContext } from '../hooks/use_dropdowns_manager_context.js';
|
|
22
|
+
import v4 from '../../../../../../external/uuid/dist/esm-browser/v4.js';
|
|
21
23
|
|
|
22
24
|
/**
|
|
23
25
|
* Dropdown.Content component. This togglable part of dropdown.
|
|
@@ -43,7 +45,9 @@ var Content = function Content(_ref) {
|
|
|
43
45
|
shouldCloseOnClickOutside = _ref$shouldCloseOnCli === void 0 ? true : _ref$shouldCloseOnCli,
|
|
44
46
|
onClickOutside = _ref.onClickOutside,
|
|
45
47
|
_ref$shouldCloseOnScr = _ref.shouldCloseOnScroll,
|
|
46
|
-
shouldCloseOnScroll = _ref$shouldCloseOnScr === void 0 ? true : _ref$shouldCloseOnScr
|
|
48
|
+
shouldCloseOnScroll = _ref$shouldCloseOnScr === void 0 ? true : _ref$shouldCloseOnScr,
|
|
49
|
+
_ref$shouldCloseOther = _ref.shouldCloseOthersOnOpen,
|
|
50
|
+
shouldCloseOthersOnOpen = _ref$shouldCloseOther === void 0 ? false : _ref$shouldCloseOther;
|
|
47
51
|
|
|
48
52
|
var _useTranslation = useTranslation(),
|
|
49
53
|
_useTranslation2 = _slicedToArray(_useTranslation, 1),
|
|
@@ -54,6 +58,8 @@ var Content = function Content(_ref) {
|
|
|
54
58
|
var _useDropdownContext = useDropdownContext(),
|
|
55
59
|
wrapperRef = _useDropdownContext.wrapperRef,
|
|
56
60
|
toggleDropdown = _useDropdownContext.toggleDropdown,
|
|
61
|
+
openDropdown = _useDropdownContext.openDropdown,
|
|
62
|
+
closeDropdown = _useDropdownContext.closeDropdown,
|
|
57
63
|
isOpen = _useDropdownContext.isOpen;
|
|
58
64
|
|
|
59
65
|
var _useState = useState(),
|
|
@@ -66,6 +72,15 @@ var Content = function Content(_ref) {
|
|
|
66
72
|
parentScrollTop = _useState4[0],
|
|
67
73
|
setParentScrollTop = _useState4[1];
|
|
68
74
|
|
|
75
|
+
var dropdownIdRef = useRef("dropdown-".concat(v4()));
|
|
76
|
+
|
|
77
|
+
var _useDropdownsManagerC = useDropdownsManagerContext(),
|
|
78
|
+
addDropdown = _useDropdownsManagerC.addDropdown,
|
|
79
|
+
updateDropdown = _useDropdownsManagerC.updateDropdown,
|
|
80
|
+
getDropdown = _useDropdownsManagerC.getDropdown;
|
|
81
|
+
|
|
82
|
+
var dropdown = getDropdown(dropdownIdRef.current);
|
|
83
|
+
|
|
69
84
|
var _useState5 = useState({
|
|
70
85
|
top: '0px',
|
|
71
86
|
bottom: '0px',
|
|
@@ -78,6 +93,23 @@ var Content = function Content(_ref) {
|
|
|
78
93
|
|
|
79
94
|
var windowYScroll = window.scrollY;
|
|
80
95
|
var windowHeightMinusYOffset = window.innerHeight - windowYScroll;
|
|
96
|
+
useEffect(function () {
|
|
97
|
+
addDropdown({
|
|
98
|
+
id: dropdownIdRef.current,
|
|
99
|
+
isOpen: false
|
|
100
|
+
});
|
|
101
|
+
}, []);
|
|
102
|
+
useEffect(function () {
|
|
103
|
+
updateDropdown({
|
|
104
|
+
id: dropdownIdRef.current,
|
|
105
|
+
isOpen: !!isOpen
|
|
106
|
+
});
|
|
107
|
+
}, [isOpen]);
|
|
108
|
+
useEffect(function () {
|
|
109
|
+
if (shouldCloseOthersOnOpen) {
|
|
110
|
+
dropdown !== null && dropdown !== void 0 && dropdown.isOpen ? openDropdown === null || openDropdown === void 0 ? void 0 : openDropdown() : closeDropdown === null || closeDropdown === void 0 ? void 0 : closeDropdown();
|
|
111
|
+
}
|
|
112
|
+
}, [dropdown === null || dropdown === void 0 ? void 0 : dropdown.isOpen]);
|
|
81
113
|
useEffect(function () {
|
|
82
114
|
contentRef.current && setBounding(getBounding(contentRef.current));
|
|
83
115
|
return function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA,+BAA+B,oEAAwE;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA,+BAA+B,oEAAwE;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,wDAA4D;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { IDropdownComposition, IDropdownProps } from '../types';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
/**
|
|
4
|
+
* Dropdown composition component. Provides several Dropdown dependant components which can be composed to create
|
|
5
|
+
* selects, multiselects or dropdowns.
|
|
6
|
+
*
|
|
7
|
+
* @component
|
|
8
|
+
* @example
|
|
9
|
+
* return (
|
|
10
|
+
* <Dropdown>
|
|
11
|
+
* <Dropdown.Label label="Wybierz link" />
|
|
12
|
+
* <Dropdown.Content>
|
|
13
|
+
* <Dropdown.List>
|
|
14
|
+
* <Dropdown.Link text="shoper.pl" href="https://shoper.pl" />
|
|
15
|
+
* <Dropdown.Link text="forum.shoper.pl" href="https://forum.shoper.pl" />
|
|
16
|
+
* <Dropdown.Link text="shoper.pl/help" href="https://shoper.pl/help" />
|
|
17
|
+
* </Dropdown.List>
|
|
18
|
+
* </Dropdown.Content>
|
|
19
|
+
* <Dropdown>
|
|
20
|
+
* )
|
|
21
|
+
*/
|
|
22
|
+
declare const Dropdown: React.FC<IDropdownProps> & IDropdownComposition;
|
|
23
|
+
export default Dropdown;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import React, { useRef } from 'react';
|
|
2
|
+
import { slicedToArray as _slicedToArray } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
3
|
+
import { DropdownContext } from '../context/index.js';
|
|
4
|
+
import cssClasses from '../../../css/dropdown/main.module.less.js';
|
|
5
|
+
import { useDropdownsManagerContext } from '../hooks/use_dropdowns_manager_context.js';
|
|
6
|
+
import Content from './content.js';
|
|
7
|
+
import CustomLabel from './custom_label.js';
|
|
8
|
+
import Header from './header.js';
|
|
9
|
+
import Item from './item.js';
|
|
10
|
+
import ItemWithHover from './item_with_hover.js';
|
|
11
|
+
import Label from './label.js';
|
|
12
|
+
import Link from './link.js';
|
|
13
|
+
import List from './list.js';
|
|
14
|
+
import Option from './option.js';
|
|
15
|
+
import { useToggle } from '../hooks/use_toggle.js';
|
|
16
|
+
import OptionMultiple from './option_multiple.js';
|
|
17
|
+
import Search from './search.js';
|
|
18
|
+
import Select from './select.js';
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Dropdown composition component. Provides several Dropdown dependant components which can be composed to create
|
|
22
|
+
* selects, multiselects or dropdowns.
|
|
23
|
+
*
|
|
24
|
+
* @component
|
|
25
|
+
* @example
|
|
26
|
+
* return (
|
|
27
|
+
* <Dropdown>
|
|
28
|
+
* <Dropdown.Label label="Wybierz link" />
|
|
29
|
+
* <Dropdown.Content>
|
|
30
|
+
* <Dropdown.List>
|
|
31
|
+
* <Dropdown.Link text="shoper.pl" href="https://shoper.pl" />
|
|
32
|
+
* <Dropdown.Link text="forum.shoper.pl" href="https://forum.shoper.pl" />
|
|
33
|
+
* <Dropdown.Link text="shoper.pl/help" href="https://shoper.pl/help" />
|
|
34
|
+
* </Dropdown.List>
|
|
35
|
+
* </Dropdown.Content>
|
|
36
|
+
* <Dropdown>
|
|
37
|
+
* )
|
|
38
|
+
*/
|
|
39
|
+
|
|
40
|
+
var Dropdown = function Dropdown(_ref) {
|
|
41
|
+
var _ref$defaultIsOpen = _ref.defaultIsOpen,
|
|
42
|
+
defaultIsOpen = _ref$defaultIsOpen === void 0 ? false : _ref$defaultIsOpen,
|
|
43
|
+
onToggle = _ref.onToggle,
|
|
44
|
+
children = _ref.children;
|
|
45
|
+
var wrapperRef = useRef(null);
|
|
46
|
+
|
|
47
|
+
var _useDropdownsManagerC = useDropdownsManagerContext(),
|
|
48
|
+
closeAllDropdowns = _useDropdownsManagerC.closeAllDropdowns;
|
|
49
|
+
|
|
50
|
+
var _useToggle = useToggle(defaultIsOpen, onToggle, closeAllDropdowns),
|
|
51
|
+
_useToggle2 = _slicedToArray(_useToggle, 4),
|
|
52
|
+
isOpen = _useToggle2[0],
|
|
53
|
+
toggleDropdown = _useToggle2[1],
|
|
54
|
+
openDropdown = _useToggle2[2],
|
|
55
|
+
closeDropdown = _useToggle2[3];
|
|
56
|
+
/**
|
|
57
|
+
* context values, they may be used with useContext in any component which is part of Dropdown composition
|
|
58
|
+
*/
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
var value = React.useMemo(function () {
|
|
62
|
+
return {
|
|
63
|
+
wrapperRef: wrapperRef,
|
|
64
|
+
isOpen: isOpen,
|
|
65
|
+
toggleDropdown: toggleDropdown,
|
|
66
|
+
openDropdown: openDropdown,
|
|
67
|
+
closeDropdown: closeDropdown
|
|
68
|
+
};
|
|
69
|
+
}, [isOpen, toggleDropdown, openDropdown, closeDropdown]);
|
|
70
|
+
return /*#__PURE__*/React.createElement(DropdownContext.Provider, {
|
|
71
|
+
value: value
|
|
72
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
73
|
+
ref: wrapperRef,
|
|
74
|
+
className: cssClasses.dropdown
|
|
75
|
+
}, children));
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
Dropdown.Select = Select;
|
|
79
|
+
Dropdown.Content = Content;
|
|
80
|
+
Dropdown.ItemWithHover = ItemWithHover;
|
|
81
|
+
Dropdown.Search = Search;
|
|
82
|
+
Dropdown.List = List;
|
|
83
|
+
Dropdown.Header = Header;
|
|
84
|
+
Dropdown.Option = Option;
|
|
85
|
+
Dropdown.OptionMultiple = OptionMultiple;
|
|
86
|
+
Dropdown.Link = Link;
|
|
87
|
+
Dropdown.Label = Label;
|
|
88
|
+
Dropdown.CustomLabel = CustomLabel;
|
|
89
|
+
Dropdown.Item = Item;
|
|
90
|
+
|
|
91
|
+
export default Dropdown;
|
|
92
|
+
//# sourceMappingURL=dropdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createContext } from 'react';
|
|
2
|
+
|
|
3
|
+
var DropdownsManagerContext = /*#__PURE__*/createContext({
|
|
4
|
+
addDropdown: function addDropdown() {},
|
|
5
|
+
updateDropdown: function updateDropdown() {},
|
|
6
|
+
getDropdown: function getDropdown() {
|
|
7
|
+
return undefined;
|
|
8
|
+
},
|
|
9
|
+
closeAllDropdowns: function closeAllDropdowns() {}
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export { DropdownsManagerContext };
|
|
13
|
+
//# sourceMappingURL=dropdowns_manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { IDropdown } from '../types';
|
|
2
3
|
export interface IDropdownContext {
|
|
3
4
|
wrapperRef?: React.RefObject<HTMLDivElement>;
|
|
4
5
|
isOpen?: boolean;
|
|
@@ -6,3 +7,9 @@ export interface IDropdownContext {
|
|
|
6
7
|
openDropdown?: () => void;
|
|
7
8
|
closeDropdown?: () => void;
|
|
8
9
|
}
|
|
10
|
+
export interface IDropdownsManagerContextProps {
|
|
11
|
+
addDropdown: (dropdown: IDropdown) => void;
|
|
12
|
+
updateDropdown: (dropdown: IDropdown) => void;
|
|
13
|
+
getDropdown: (dropdownId: string) => IDropdown | undefined;
|
|
14
|
+
closeAllDropdowns: () => void;
|
|
15
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import '../types';
|
|
2
2
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../../src/components/dropdown/context/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../../../../src/components/dropdown/context/types.ts"],"names":[],"mappings":"AAAA,OAA0B,UAAU,CAAC"}
|
|
@@ -7,7 +7,7 @@ import { handleSearchKeyUp, isSelected, handleItemClick } from '../../utilities.
|
|
|
7
7
|
import { useValues } from '../../hooks/use_values.js';
|
|
8
8
|
import { useToggle } from '../../hooks/use_toggle.js';
|
|
9
9
|
import { useSetOptionsOnClose } from '../../hooks/use_set_options_on_close.js';
|
|
10
|
-
import Dropdown from '../../
|
|
10
|
+
import Dropdown from '../../components/dropdown.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* MultiSelect component. Build with Dropdown composed components.
|
|
@@ -7,7 +7,7 @@ import { handleSearchKeyUp, isSelected, handleItemClick } from '../../utilities.
|
|
|
7
7
|
import { useValue } from '../../hooks/use_value.js';
|
|
8
8
|
import { useToggle } from '../../hooks/use_toggle.js';
|
|
9
9
|
import { useSetOptionsOnClose } from '../../hooks/use_set_options_on_close.js';
|
|
10
|
-
import Dropdown from '../../
|
|
10
|
+
import Dropdown from '../../components/dropdown.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Select component. Build with Dropdown composed components.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IDropdown } from '../types';
|
|
2
|
+
declare const useDropdownsManager: () => {
|
|
3
|
+
addDropdown: (dropdown: IDropdown) => void;
|
|
4
|
+
updateDropdown: (dropdown: IDropdown) => void;
|
|
5
|
+
getDropdown: (dropdownId: string) => IDropdown | undefined;
|
|
6
|
+
closeAllDropdowns: () => void;
|
|
7
|
+
};
|
|
8
|
+
export default useDropdownsManager;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { useState } from 'react';
|
|
2
|
+
import { slicedToArray as _slicedToArray, toConsumableArray as _toConsumableArray, objectSpread2 as _objectSpread2 } from '../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
3
|
+
|
|
4
|
+
var useDropdownsManager = function useDropdownsManager() {
|
|
5
|
+
var _useState = useState([]),
|
|
6
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
7
|
+
dropdownsStack = _useState2[0],
|
|
8
|
+
setDropdownsStack = _useState2[1];
|
|
9
|
+
|
|
10
|
+
var addDropdown = function addDropdown(dropdown) {
|
|
11
|
+
setDropdownsStack(function (stack) {
|
|
12
|
+
var dropdownIdAlreadyExist = stack.some(function (stackModal) {
|
|
13
|
+
return stackModal.id === dropdown.id;
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
if (dropdownIdAlreadyExist) {
|
|
17
|
+
return _toConsumableArray(stack);
|
|
18
|
+
} else {
|
|
19
|
+
return [].concat(_toConsumableArray(stack), [dropdown]);
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
var updateDropdown = function updateDropdown(dropdown) {
|
|
25
|
+
setDropdownsStack(function (previousStack) {
|
|
26
|
+
var updatedStack = previousStack.map(function (stackDropdown) {
|
|
27
|
+
return stackDropdown.id === dropdown.id ? _objectSpread2({}, dropdown) : stackDropdown;
|
|
28
|
+
});
|
|
29
|
+
return updatedStack;
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
var closeAllDropdowns = function closeAllDropdowns() {
|
|
34
|
+
setDropdownsStack(function (previousStack) {
|
|
35
|
+
var updatedStack = previousStack.map(function (stackDropdown) {
|
|
36
|
+
stackDropdown.isOpen = false;
|
|
37
|
+
return stackDropdown;
|
|
38
|
+
});
|
|
39
|
+
return updatedStack;
|
|
40
|
+
});
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
var getDropdown = function getDropdown(dropdownId) {
|
|
44
|
+
return dropdownsStack.find(function (stackModal) {
|
|
45
|
+
return stackModal.id === dropdownId;
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
return {
|
|
50
|
+
addDropdown: addDropdown,
|
|
51
|
+
updateDropdown: updateDropdown,
|
|
52
|
+
getDropdown: getDropdown,
|
|
53
|
+
closeAllDropdowns: closeAllDropdowns
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
export default useDropdownsManager;
|
|
58
|
+
//# sourceMappingURL=use_dropdowns_manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager_context.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { useContext } from 'react';
|
|
2
|
+
import { DropdownsManagerContext } from '../context/dropdowns_manager.js';
|
|
3
|
+
|
|
4
|
+
function useDropdownsManagerContext() {
|
|
5
|
+
var context = useContext(DropdownsManagerContext);
|
|
6
|
+
|
|
7
|
+
if (Object.keys(context).length === 0 && context.constructor === Object) {
|
|
8
|
+
throw new Error("Dropdown cannot be rendered outside the DropdownsManagerContext");
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
return context;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export { useDropdownsManagerContext };
|
|
15
|
+
//# sourceMappingURL=use_dropdowns_manager_context.js.map
|
package/build/esm/packages/aurora/src/components/dropdown/hooks/use_dropdowns_manager_context.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Hook used for toggling dropdown
|
|
3
3
|
* @param defaultIsOpen should dropdown be opened at render
|
|
4
4
|
* @param onToggleCb callback onToggle
|
|
5
|
+
* @param closeAllDropdowns close all already opened dropdowns
|
|
5
6
|
* @returns {Array} tuple - open state and and method to change open state
|
|
6
7
|
*/
|
|
7
|
-
export declare function useToggle(defaultIsOpen?: boolean, onToggleCb?: (isOpen: boolean) => void): [boolean, () => void, () => void, () => void];
|
|
8
|
+
export declare function useToggle(defaultIsOpen?: boolean, onToggleCb?: (isOpen: boolean) => void, closeAllDropdowns?: () => void): [boolean, () => void, () => void, () => void];
|
|
@@ -6,12 +6,14 @@ import { useEffectAfterMount } from '../../../hooks/use_effect_after_mount.js';
|
|
|
6
6
|
* Hook used for toggling dropdown
|
|
7
7
|
* @param defaultIsOpen should dropdown be opened at render
|
|
8
8
|
* @param onToggleCb callback onToggle
|
|
9
|
+
* @param closeAllDropdowns close all already opened dropdowns
|
|
9
10
|
* @returns {Array} tuple - open state and and method to change open state
|
|
10
11
|
*/
|
|
11
12
|
|
|
12
13
|
function useToggle() {
|
|
13
14
|
var defaultIsOpen = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
14
15
|
var onToggleCb = arguments.length > 1 ? arguments[1] : undefined;
|
|
16
|
+
var closeAllDropdowns = arguments.length > 2 ? arguments[2] : undefined;
|
|
15
17
|
|
|
16
18
|
var _useState = useState(defaultIsOpen),
|
|
17
19
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -19,7 +21,8 @@ function useToggle() {
|
|
|
19
21
|
setIsOpen = _useState2[1];
|
|
20
22
|
|
|
21
23
|
var onToggle = useCallback(function () {
|
|
22
|
-
|
|
24
|
+
closeAllDropdowns && closeAllDropdowns();
|
|
25
|
+
setIsOpen(function (oldIsOpen) {
|
|
23
26
|
return !oldIsOpen;
|
|
24
27
|
});
|
|
25
28
|
}, []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -1,23 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
* @component
|
|
8
|
-
* @example
|
|
9
|
-
* return (
|
|
10
|
-
* <Dropdown>
|
|
11
|
-
* <Dropdown.Label label="Wybierz link" />
|
|
12
|
-
* <Dropdown.Content>
|
|
13
|
-
* <Dropdown.List>
|
|
14
|
-
* <Dropdown.Link text="shoper.pl" href="https://shoper.pl" />
|
|
15
|
-
* <Dropdown.Link text="forum.shoper.pl" href="https://forum.shoper.pl" />
|
|
16
|
-
* <Dropdown.Link text="shoper.pl/help" href="https://shoper.pl/help" />
|
|
17
|
-
* </Dropdown.List>
|
|
18
|
-
* </Dropdown.Content>
|
|
19
|
-
* <Dropdown>
|
|
20
|
-
* )
|
|
21
|
-
*/
|
|
22
|
-
declare const Dropdown: React.FC<IDropdownProps> & IDropdownComposition;
|
|
23
|
-
export default Dropdown;
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
interface IDropdownsManagerContextProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
}
|
|
5
|
+
declare const DropdownsManager: React.FC<IDropdownsManagerContextProps>;
|
|
6
|
+
export default DropdownsManager;
|
|
@@ -1,88 +1,28 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import cssClasses from '../../css/dropdown/main.module.less.js';
|
|
5
|
-
import Content from './components/content.js';
|
|
6
|
-
import CustomLabel from './components/custom_label.js';
|
|
7
|
-
import Header from './components/header.js';
|
|
8
|
-
import Item from './components/item.js';
|
|
9
|
-
import ItemWithHover from './components/item_with_hover.js';
|
|
10
|
-
import Label from './components/label.js';
|
|
11
|
-
import Link from './components/link.js';
|
|
12
|
-
import List from './components/list.js';
|
|
13
|
-
import Option from './components/option.js';
|
|
14
|
-
import { useToggle } from './hooks/use_toggle.js';
|
|
15
|
-
import OptionMultiple from './components/option_multiple.js';
|
|
16
|
-
import Search from './components/search.js';
|
|
17
|
-
import Select from './components/select.js';
|
|
1
|
+
import React, { useMemo } from 'react';
|
|
2
|
+
import { DropdownsManagerContext } from './context/dropdowns_manager.js';
|
|
3
|
+
import useDropdownsManager from './hooks/use_dropdowns_manager.js';
|
|
18
4
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
* selects, multiselects or dropdowns.
|
|
22
|
-
*
|
|
23
|
-
* @component
|
|
24
|
-
* @example
|
|
25
|
-
* return (
|
|
26
|
-
* <Dropdown>
|
|
27
|
-
* <Dropdown.Label label="Wybierz link" />
|
|
28
|
-
* <Dropdown.Content>
|
|
29
|
-
* <Dropdown.List>
|
|
30
|
-
* <Dropdown.Link text="shoper.pl" href="https://shoper.pl" />
|
|
31
|
-
* <Dropdown.Link text="forum.shoper.pl" href="https://forum.shoper.pl" />
|
|
32
|
-
* <Dropdown.Link text="shoper.pl/help" href="https://shoper.pl/help" />
|
|
33
|
-
* </Dropdown.List>
|
|
34
|
-
* </Dropdown.Content>
|
|
35
|
-
* <Dropdown>
|
|
36
|
-
* )
|
|
37
|
-
*/
|
|
5
|
+
var DropdownsManager = function DropdownsManager(_ref) {
|
|
6
|
+
var children = _ref.children;
|
|
38
7
|
|
|
39
|
-
var
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
var wrapperRef = useRef(null);
|
|
8
|
+
var _useDropdownsManager = useDropdownsManager(),
|
|
9
|
+
addDropdown = _useDropdownsManager.addDropdown,
|
|
10
|
+
updateDropdown = _useDropdownsManager.updateDropdown,
|
|
11
|
+
getDropdown = _useDropdownsManager.getDropdown,
|
|
12
|
+
closeAllDropdowns = _useDropdownsManager.closeAllDropdowns;
|
|
45
13
|
|
|
46
|
-
var
|
|
47
|
-
_useToggle2 = _slicedToArray(_useToggle, 4),
|
|
48
|
-
isOpen = _useToggle2[0],
|
|
49
|
-
toggleDropdown = _useToggle2[1],
|
|
50
|
-
openDropdown = _useToggle2[2],
|
|
51
|
-
closeDropdown = _useToggle2[3];
|
|
52
|
-
/**
|
|
53
|
-
* context values, they may be used with useContext in any component which is part of Dropdown composition
|
|
54
|
-
*/
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
var value = React.useMemo(function () {
|
|
14
|
+
var value = useMemo(function () {
|
|
58
15
|
return {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
closeDropdown: closeDropdown
|
|
16
|
+
addDropdown: addDropdown,
|
|
17
|
+
updateDropdown: updateDropdown,
|
|
18
|
+
getDropdown: getDropdown,
|
|
19
|
+
closeAllDropdowns: closeAllDropdowns
|
|
64
20
|
};
|
|
65
|
-
}, [
|
|
66
|
-
return /*#__PURE__*/React.createElement(
|
|
21
|
+
}, [addDropdown, updateDropdown, getDropdown, closeAllDropdowns]);
|
|
22
|
+
return /*#__PURE__*/React.createElement(DropdownsManagerContext.Provider, {
|
|
67
23
|
value: value
|
|
68
|
-
},
|
|
69
|
-
ref: wrapperRef,
|
|
70
|
-
className: cssClasses.dropdown
|
|
71
|
-
}, children));
|
|
24
|
+
}, children);
|
|
72
25
|
};
|
|
73
26
|
|
|
74
|
-
|
|
75
|
-
Dropdown.Content = Content;
|
|
76
|
-
Dropdown.ItemWithHover = ItemWithHover;
|
|
77
|
-
Dropdown.Search = Search;
|
|
78
|
-
Dropdown.List = List;
|
|
79
|
-
Dropdown.Header = Header;
|
|
80
|
-
Dropdown.Option = Option;
|
|
81
|
-
Dropdown.OptionMultiple = OptionMultiple;
|
|
82
|
-
Dropdown.Link = Link;
|
|
83
|
-
Dropdown.Label = Label;
|
|
84
|
-
Dropdown.CustomLabel = CustomLabel;
|
|
85
|
-
Dropdown.Item = Item;
|
|
86
|
-
|
|
87
|
-
export default Dropdown;
|
|
27
|
+
export default DropdownsManager;
|
|
88
28
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;
|
|
1
|
+
{"version":3,"file":null,"sources":[null],"sourcesContent":[null],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;"}
|
|
@@ -39,6 +39,10 @@ export interface IDropdownCustomLabelProps {
|
|
|
39
39
|
children: ReactNode;
|
|
40
40
|
disabled?: boolean;
|
|
41
41
|
}
|
|
42
|
+
export interface IDropdown {
|
|
43
|
+
id: string;
|
|
44
|
+
isOpen: boolean;
|
|
45
|
+
}
|
|
42
46
|
export interface IDropdownContentProps {
|
|
43
47
|
search?: ReactNode;
|
|
44
48
|
children?: ReactNode;
|
|
@@ -53,6 +57,7 @@ export interface IDropdownContentProps {
|
|
|
53
57
|
shouldCloseOnClickOutside?: boolean;
|
|
54
58
|
onClickOutside?: () => void;
|
|
55
59
|
shouldCloseOnScroll?: boolean;
|
|
60
|
+
shouldCloseOthersOnOpen?: boolean;
|
|
56
61
|
}
|
|
57
62
|
export interface IDropdownItemWithHover {
|
|
58
63
|
children?: ReactNode;
|
|
@@ -5,7 +5,7 @@ import cssClasses from '../../css/hint/main.module.less.js';
|
|
|
5
5
|
import { classNames } from '../../utilities/styles/classNames.js';
|
|
6
6
|
import IconHint from '../../assets/icon_hint.js';
|
|
7
7
|
import { useToggle } from '../dropdown/hooks/use_toggle.js';
|
|
8
|
-
import Dropdown from '../dropdown/
|
|
8
|
+
import Dropdown from '../dropdown/components/dropdown.js';
|
|
9
9
|
|
|
10
10
|
var Hint = function Hint(_ref) {
|
|
11
11
|
var hint = _ref.hint,
|