@laerdal/life-react-components 1.7.0-dev.9.full → 1.7.0-dev.95
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Accordion/ContentAccordion.cjs +1 -1
- package/dist/Accordion/ContentAccordion.cjs.map +1 -1
- package/dist/Accordion/ContentAccordion.js +2 -2
- package/dist/Accordion/ContentAccordion.js.map +1 -1
- package/dist/Accordion/styles.cjs +1 -1
- package/dist/Accordion/styles.cjs.map +1 -1
- package/dist/Accordion/styles.js +2 -2
- package/dist/Accordion/styles.js.map +1 -1
- package/dist/Banners/Banner.cjs +3 -3
- package/dist/Banners/Banner.cjs.map +1 -1
- package/dist/Banners/Banner.js +3 -3
- package/dist/Banners/Banner.js.map +1 -1
- package/dist/Banners/styles.cjs +1 -1
- package/dist/Banners/styles.cjs.map +1 -1
- package/dist/Banners/styles.js +1 -1
- package/dist/Banners/styles.js.map +1 -1
- package/dist/Button/BackButton.cjs +2 -2
- package/dist/Button/BackButton.cjs.map +1 -1
- package/dist/Button/BackButton.js +3 -3
- package/dist/Button/BackButton.js.map +1 -1
- package/dist/Button/Button.cjs +21 -8
- package/dist/Button/Button.cjs.map +1 -1
- package/dist/Button/Button.d.ts +0 -1
- package/dist/Button/Button.js +22 -9
- package/dist/Button/Button.js.map +1 -1
- package/dist/Button/Iconbutton.cjs +27 -14
- package/dist/Button/Iconbutton.cjs.map +1 -1
- package/dist/Button/Iconbutton.d.ts +0 -2
- package/dist/Button/Iconbutton.js +28 -15
- package/dist/Button/Iconbutton.js.map +1 -1
- package/dist/Card/Card.cjs +44 -28
- package/dist/Card/Card.cjs.map +1 -1
- package/dist/Card/Card.d.ts +11 -3
- package/dist/Card/Card.js +44 -26
- package/dist/Card/Card.js.map +1 -1
- package/dist/Card/CardBottomSection.cjs +9 -2
- package/dist/Card/CardBottomSection.cjs.map +1 -1
- package/dist/Card/CardBottomSection.d.ts +2 -1
- package/dist/Card/CardBottomSection.js +10 -3
- package/dist/Card/CardBottomSection.js.map +1 -1
- package/dist/Card/CardMiddleSection.cjs +7 -2
- package/dist/Card/CardMiddleSection.cjs.map +1 -1
- package/dist/Card/CardMiddleSection.d.ts +2 -0
- package/dist/Card/CardMiddleSection.js +8 -3
- package/dist/Card/CardMiddleSection.js.map +1 -1
- package/dist/Card/CardTopSection.cjs +12 -9
- package/dist/Card/CardTopSection.cjs.map +1 -1
- package/dist/Card/CardTopSection.d.ts +4 -2
- package/dist/Card/CardTopSection.js +13 -10
- package/dist/Card/CardTopSection.js.map +1 -1
- package/dist/Card/index.cjs +13 -1
- package/dist/Card/index.cjs.map +1 -1
- package/dist/Card/index.d.ts +1 -0
- package/dist/Card/index.js +1 -0
- package/dist/Card/index.js.map +1 -1
- package/dist/Chips/ActionChip.cjs +4 -4
- package/dist/Chips/ActionChip.cjs.map +1 -1
- package/dist/Chips/ActionChip.js +4 -4
- package/dist/Chips/ActionChip.js.map +1 -1
- package/dist/Chips/ChipInput.cjs +199 -0
- package/dist/Chips/ChipInput.cjs.map +1 -0
- package/dist/{ChipsInput → Chips}/ChipInput.d.ts +4 -1
- package/dist/Chips/ChipInput.js +182 -0
- package/dist/Chips/ChipInput.js.map +1 -0
- package/dist/Chips/ChipStyles.cjs +15 -3
- package/dist/Chips/ChipStyles.cjs.map +1 -1
- package/dist/Chips/ChipStyles.d.ts +3 -0
- package/dist/Chips/ChipStyles.js +6 -3
- package/dist/Chips/ChipStyles.js.map +1 -1
- package/dist/Chips/ChipTypes.d.ts +18 -6
- package/dist/Chips/ChoiceChips.cjs +2 -2
- package/dist/Chips/ChoiceChips.cjs.map +1 -1
- package/dist/Chips/ChoiceChips.js +2 -2
- package/dist/Chips/ChoiceChips.js.map +1 -1
- package/dist/Chips/FilterChip.cjs +3 -3
- package/dist/Chips/FilterChip.cjs.map +1 -1
- package/dist/Chips/FilterChip.js +3 -3
- package/dist/Chips/FilterChip.js.map +1 -1
- package/dist/Chips/InputChip.cjs +4 -4
- package/dist/Chips/InputChip.cjs.map +1 -1
- package/dist/Chips/InputChip.js +4 -4
- package/dist/Chips/InputChip.js.map +1 -1
- package/dist/Chips/index.cjs +1 -1
- package/dist/Chips/index.cjs.map +1 -1
- package/dist/Chips/index.d.ts +1 -1
- package/dist/Chips/index.js +1 -1
- package/dist/Chips/index.js.map +1 -1
- package/dist/Dropdown/BasicDropdown.cjs +0 -1
- package/dist/Dropdown/BasicDropdown.cjs.map +1 -1
- package/dist/Dropdown/BasicDropdown.js +1 -2
- package/dist/Dropdown/BasicDropdown.js.map +1 -1
- package/dist/Dropdown/ChipDropdownInput.cjs +431 -0
- package/dist/Dropdown/ChipDropdownInput.cjs.map +1 -0
- package/dist/Dropdown/ChipDropdownInput.d.ts +24 -0
- package/dist/Dropdown/ChipDropdownInput.js +418 -0
- package/dist/Dropdown/ChipDropdownInput.js.map +1 -0
- package/dist/Dropdown/CommonStyling.cjs +5 -7
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.js +6 -7
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownContent.cjs +22 -17
- package/dist/Dropdown/DropdownContent.cjs.map +1 -1
- package/dist/Dropdown/DropdownContent.js +22 -17
- package/dist/Dropdown/DropdownContent.js.map +1 -1
- package/dist/Dropdown/index.cjs +8 -0
- package/dist/Dropdown/index.cjs.map +1 -1
- package/dist/Dropdown/index.d.ts +2 -1
- package/dist/Dropdown/index.js +2 -1
- package/dist/Dropdown/index.js.map +1 -1
- package/dist/Footer/Components/FooterDropdownLinks.cjs +3 -6
- package/dist/Footer/Components/FooterDropdownLinks.cjs.map +1 -1
- package/dist/Footer/Components/FooterDropdownLinks.js +4 -6
- package/dist/Footer/Components/FooterDropdownLinks.js.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs +3 -5
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js +4 -5
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/Footer/Components/FooterTop.cjs +1 -2
- package/dist/Footer/Components/FooterTop.cjs.map +1 -1
- package/dist/Footer/Components/FooterTop.js +2 -3
- package/dist/Footer/Components/FooterTop.js.map +1 -1
- package/dist/GlobalNavigationBar/Avatar.cjs +7 -5
- package/dist/GlobalNavigationBar/Avatar.cjs.map +1 -1
- package/dist/GlobalNavigationBar/Avatar.js +8 -5
- package/dist/GlobalNavigationBar/Avatar.js.map +1 -1
- package/dist/GlobalNavigationBar/Logo.cjs +6 -9
- package/dist/GlobalNavigationBar/Logo.cjs.map +1 -1
- package/dist/GlobalNavigationBar/Logo.d.ts +1 -2
- package/dist/GlobalNavigationBar/Logo.js +7 -9
- package/dist/GlobalNavigationBar/Logo.js.map +1 -1
- package/dist/GlobalNavigationBar/MainMenu.cjs +13 -11
- package/dist/GlobalNavigationBar/MainMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/MainMenu.js +13 -10
- package/dist/GlobalNavigationBar/MainMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/RightSideNav.cjs +5 -3
- package/dist/GlobalNavigationBar/RightSideNav.cjs.map +1 -1
- package/dist/GlobalNavigationBar/RightSideNav.js +5 -2
- package/dist/GlobalNavigationBar/RightSideNav.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js +2 -2
- package/dist/GlobalNavigationBar/mobile/CommonStyles.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js +2 -2
- package/dist/GlobalNavigationBar/mobile/MobileMenu.js.map +1 -1
- package/dist/HyperLink/styling.cjs +1 -1
- package/dist/HyperLink/styling.cjs.map +1 -1
- package/dist/HyperLink/styling.js +1 -1
- package/dist/HyperLink/styling.js.map +1 -1
- package/dist/InputFields/Checkbox.cjs +2 -2
- package/dist/InputFields/Checkbox.cjs.map +1 -1
- package/dist/InputFields/Checkbox.js +3 -3
- package/dist/InputFields/Checkbox.js.map +1 -1
- package/dist/InputFields/DatepickerField.cjs +21 -33
- package/dist/InputFields/DatepickerField.cjs.map +1 -1
- package/dist/InputFields/DatepickerField.js +22 -34
- package/dist/InputFields/DatepickerField.js.map +1 -1
- package/dist/InputFields/QuickSearch.cjs +96 -119
- package/dist/InputFields/QuickSearch.cjs.map +1 -1
- package/dist/InputFields/QuickSearch.js +96 -119
- package/dist/InputFields/QuickSearch.js.map +1 -1
- package/dist/InputFields/RadioButton.cjs +2 -2
- package/dist/InputFields/RadioButton.cjs.map +1 -1
- package/dist/InputFields/RadioButton.js +3 -3
- package/dist/InputFields/RadioButton.js.map +1 -1
- package/dist/InputFields/SearchBar.cjs +3 -3
- package/dist/InputFields/SearchBar.cjs.map +1 -1
- package/dist/InputFields/SearchBar.js +3 -3
- package/dist/InputFields/SearchBar.js.map +1 -1
- package/dist/InputFields/Textarea.cjs +1 -1
- package/dist/InputFields/Textarea.cjs.map +1 -1
- package/dist/InputFields/Textarea.js +1 -1
- package/dist/InputFields/Textarea.js.map +1 -1
- package/dist/InputFields/components/SearchBarInput.cjs +8 -6
- package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
- package/dist/InputFields/components/SearchBarInput.d.ts +3 -0
- package/dist/InputFields/components/SearchBarInput.js +5 -4
- package/dist/InputFields/components/SearchBarInput.js.map +1 -1
- package/dist/InputFields/components/SearchField.cjs +19 -29
- package/dist/InputFields/components/SearchField.cjs.map +1 -1
- package/dist/InputFields/components/SearchField.d.ts +8 -8
- package/dist/InputFields/components/SearchField.js +18 -25
- package/dist/InputFields/components/SearchField.js.map +1 -1
- package/dist/InputFields/styling.cjs +8 -6
- package/dist/InputFields/styling.cjs.map +1 -1
- package/dist/InputFields/styling.js +8 -7
- package/dist/InputFields/styling.js.map +1 -1
- package/dist/List/ListRow.cjs +5 -5
- package/dist/List/ListRow.cjs.map +1 -1
- package/dist/List/ListRow.js +5 -8
- package/dist/List/ListRow.js.map +1 -1
- package/dist/MenuItem/MenuItem.cjs +0 -1
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.js +1 -2
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/Modals/ModalContainer.cjs +38 -78
- package/dist/Modals/ModalContainer.cjs.map +1 -1
- package/dist/Modals/ModalContainer.d.ts +8 -15
- package/dist/Modals/ModalContainer.js +36 -78
- package/dist/Modals/ModalContainer.js.map +1 -1
- package/dist/Modals/ModalContent.cjs +1 -0
- package/dist/Modals/ModalContent.cjs.map +1 -1
- package/dist/Modals/ModalContent.d.ts +1 -0
- package/dist/Modals/ModalContent.js +1 -0
- package/dist/Modals/ModalContent.js.map +1 -1
- package/dist/Modals/ModalDialog.cjs +17 -2
- package/dist/Modals/ModalDialog.cjs.map +1 -1
- package/dist/Modals/ModalDialog.d.ts +1 -0
- package/dist/Modals/ModalDialog.js +16 -2
- package/dist/Modals/ModalDialog.js.map +1 -1
- package/dist/Modals/ModalStyles.cjs +8 -2
- package/dist/Modals/ModalStyles.cjs.map +1 -1
- package/dist/Modals/ModalStyles.js +8 -2
- package/dist/Modals/ModalStyles.js.map +1 -1
- package/dist/NavItem/NavItem.cjs +1 -1
- package/dist/NavItem/NavItem.cjs.map +1 -1
- package/dist/NavItem/NavItem.js +2 -2
- package/dist/NavItem/NavItem.js.map +1 -1
- package/dist/Paginator/Paginator.cjs +1 -1
- package/dist/Paginator/Paginator.cjs.map +1 -1
- package/dist/Paginator/Paginator.js +2 -2
- package/dist/Paginator/Paginator.js.map +1 -1
- package/dist/QuizButton/QuizButton.cjs +8 -4
- package/dist/QuizButton/QuizButton.cjs.map +1 -1
- package/dist/QuizButton/QuizButton.js +9 -5
- package/dist/QuizButton/QuizButton.js.map +1 -1
- package/dist/SegmentControl/SegmentControl.cjs +1 -1
- package/dist/SegmentControl/SegmentControl.cjs.map +1 -1
- package/dist/SegmentControl/SegmentControl.js +2 -2
- package/dist/SegmentControl/SegmentControl.js.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.cjs +1 -1
- package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.js +2 -2
- package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
- package/dist/Table/TableStyles.cjs +4 -4
- package/dist/Table/TableStyles.cjs.map +1 -1
- package/dist/Table/TableStyles.js +5 -5
- package/dist/Table/TableStyles.js.map +1 -1
- package/dist/Tabs/HorizontalTabs.cjs +1 -5
- package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
- package/dist/Tabs/HorizontalTabs.js +3 -6
- package/dist/Tabs/HorizontalTabs.js.map +1 -1
- package/dist/Tabs/TabLink.cjs +45 -48
- package/dist/Tabs/TabLink.cjs.map +1 -1
- package/dist/Tabs/TabLink.js +46 -47
- package/dist/Tabs/TabLink.js.map +1 -1
- package/dist/Tabs/VerticalTabs.cjs.map +1 -1
- package/dist/Tabs/VerticalTabs.js.map +1 -1
- package/dist/Toasters/Toast.cjs +0 -2
- package/dist/Toasters/Toast.cjs.map +1 -1
- package/dist/Toasters/Toast.js +0 -2
- package/dist/Toasters/Toast.js.map +1 -1
- package/dist/Toggles/ToggleSwitch.cjs +6 -8
- package/dist/Toggles/ToggleSwitch.cjs.map +1 -1
- package/dist/Toggles/ToggleSwitch.js +6 -8
- package/dist/Toggles/ToggleSwitch.js.map +1 -1
- package/dist/Toggles/TogglerStyles.cjs +2 -2
- package/dist/Toggles/TogglerStyles.cjs.map +1 -1
- package/dist/Toggles/TogglerStyles.js +3 -3
- package/dist/Toggles/TogglerStyles.js.map +1 -1
- package/dist/Tooltips/TooltipStyles.cjs +2 -2
- package/dist/Tooltips/TooltipStyles.cjs.map +1 -1
- package/dist/Tooltips/TooltipStyles.js +3 -3
- package/dist/Tooltips/TooltipStyles.js.map +1 -1
- package/dist/Tooltips/TooltipTypes.cjs.map +1 -1
- package/dist/Tooltips/TooltipTypes.d.ts +0 -1
- package/dist/Tooltips/TooltipTypes.js.map +1 -1
- package/dist/Tooltips/TooltipWrapper.cjs +0 -2
- package/dist/Tooltips/TooltipWrapper.cjs.map +1 -1
- package/dist/Tooltips/TooltipWrapper.d.ts +1 -1
- package/dist/Tooltips/TooltipWrapper.js +0 -2
- package/dist/Tooltips/TooltipWrapper.js.map +1 -1
- package/dist/common/FocusVisible.cjs +1 -24
- package/dist/common/FocusVisible.cjs.map +1 -1
- package/dist/common/FocusVisible.js +1 -24
- package/dist/common/FocusVisible.js.map +1 -1
- package/dist/common/InputStyling.cjs +1 -1
- package/dist/common/InputStyling.cjs.map +1 -1
- package/dist/common/InputStyling.js +2 -2
- package/dist/common/InputStyling.js.map +1 -1
- package/dist/index.cjs +0 -14
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/styles/index.cjs +0 -60
- package/dist/styles/index.cjs.map +1 -1
- package/dist/styles/index.d.ts +0 -1
- package/dist/styles/index.js +0 -1
- package/dist/styles/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/ChipsInput/ChipDropdownInput.cjs +0 -398
- package/dist/ChipsInput/ChipDropdownInput.cjs.map +0 -1
- package/dist/ChipsInput/ChipDropdownInput.d.ts +0 -22
- package/dist/ChipsInput/ChipDropdownInput.js +0 -382
- package/dist/ChipsInput/ChipDropdownInput.js.map +0 -1
- package/dist/ChipsInput/ChipInput.cjs +0 -141
- package/dist/ChipsInput/ChipInput.cjs.map +0 -1
- package/dist/ChipsInput/ChipInput.js +0 -122
- package/dist/ChipsInput/ChipInput.js.map +0 -1
- package/dist/ChipsInput/ChipInputField.cjs +0 -193
- package/dist/ChipsInput/ChipInputField.cjs.map +0 -1
- package/dist/ChipsInput/ChipInputField.d.ts +0 -24
- package/dist/ChipsInput/ChipInputField.js +0 -158
- package/dist/ChipsInput/ChipInputField.js.map +0 -1
- package/dist/ChipsInput/ChipInputTypes.cjs +0 -6
- package/dist/ChipsInput/ChipInputTypes.cjs.map +0 -1
- package/dist/ChipsInput/ChipInputTypes.d.ts +0 -22
- package/dist/ChipsInput/ChipInputTypes.js +0 -2
- package/dist/ChipsInput/ChipInputTypes.js.map +0 -1
- package/dist/ChipsInput/index.cjs +0 -19
- package/dist/ChipsInput/index.cjs.map +0 -1
- package/dist/ChipsInput/index.d.ts +0 -1
- package/dist/ChipsInput/index.js +0 -2
- package/dist/ChipsInput/index.js.map +0 -1
- package/dist/styles/focus-styles.cjs +0 -22
- package/dist/styles/focus-styles.cjs.map +0 -1
- package/dist/styles/focus-styles.d.ts +0 -2
- package/dist/styles/focus-styles.js +0 -9
- package/dist/styles/focus-styles.js.map +0 -1
|
@@ -0,0 +1,431 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
exports.default = void 0;
|
|
11
|
+
|
|
12
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
13
|
+
|
|
14
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
15
|
+
|
|
16
|
+
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
17
|
+
|
|
18
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
19
|
+
|
|
20
|
+
var React = _interopRequireWildcard(require("react"));
|
|
21
|
+
|
|
22
|
+
var _styledComponents = _interopRequireDefault(require("styled-components"));
|
|
23
|
+
|
|
24
|
+
var _index = require("../Chips/index");
|
|
25
|
+
|
|
26
|
+
var _SystemIcons = require("../icons/systemicons/SystemIcons");
|
|
27
|
+
|
|
28
|
+
var _styling = require("../InputFields/styling");
|
|
29
|
+
|
|
30
|
+
var _styles = require("../styles");
|
|
31
|
+
|
|
32
|
+
var _ChipStyles = require("../Chips/ChipStyles");
|
|
33
|
+
|
|
34
|
+
var _types = require("../types");
|
|
35
|
+
|
|
36
|
+
var _DropdownContent = _interopRequireDefault(require("./DropdownContent"));
|
|
37
|
+
|
|
38
|
+
var _LoadingIndicator = require("../LoadingIndicator");
|
|
39
|
+
|
|
40
|
+
var _typography = require("../styles/typography");
|
|
41
|
+
|
|
42
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
43
|
+
|
|
44
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
45
|
+
|
|
46
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
47
|
+
|
|
48
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
49
|
+
|
|
50
|
+
var Wrapper = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n display: inline-block;\n width: 100%;\n min-width: 344px;\n"])));
|
|
51
|
+
|
|
52
|
+
var StyledChipInputContainer = (0, _styledComponents.default)(_ChipStyles.ChipInputContainer)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n padding: 2px 2px 2px 48px !important;\n min-height: 56px;\n max-height: 176px;\n overflow-y: auto;\n box-shadow: 0px 0px 0px 1px ", ";\n\n .medium {\n margin-right: 8px !important;\n }\n .SearchIcon {\n position: absolute;\n left: 18px;\n top: 18px;\n }\n\n &:active {\n background-color: ", ";\n }\n\n &.invalid {\n -webkit-box-shadow: inset 0px 0px 0px 2px ", ";\n -moz-box-shadow: inset 0px 0px 0px 2px ", ";\n box-shadow: inset 0px 0px 0px 2px ", ";\n }\n &.alreadyInOrganization {\n -webkit-box-shadow: inset 0px 0px 0px 2px ", ";\n -moz-box-shadow: inset 0px 0px 0px 2px ", ";\n box-shadow: inset 0px 0px 0px 2px ", ";\n }\n\n &.empty:hover {\n -webkit-box-shadow: 0px 0px 0px 2px ", ";\n -moz-box-shadow: 0px 0px 0px 2px ", ";\n box-shadow: 0px 0px 0px 2px ", ";\n }\n\n &.inputHasFocus {\n -webkit-box-shadow: 0px 0px 0px 2px ", ";\n -moz-box-shadow: 0px 0px 0px 2px ", ";\n box-shadow: 0px 0px 0px 2px ", ";\n }\n &:hover {\n -webkit-box-shadow: 0px 0px 0px 2px ", ";\n -moz-box-shadow: 0px 0px 0px 2px ", ";\n box-shadow: 0px 0px 0px 2px ", ";\n }\n"])), _styles.COLORS.neutral_400, _styles.COLORS.primary_100, _styles.COLORS.critical_400, _styles.COLORS.critical_400, _styles.COLORS.critical_400, _styles.COLORS.warning_400, _styles.COLORS.warning_400, _styles.COLORS.warning_400, _styles.COLORS.primary_600, _styles.COLORS.primary_600, _styles.COLORS.primary_600, _styles.COLORS.primary_800, _styles.COLORS.primary_800, _styles.COLORS.primary_800, _styles.COLORS.primary_700, _styles.COLORS.primary_700, _styles.COLORS.primary_700);
|
|
53
|
+
|
|
54
|
+
var ChipInput = _styledComponents.default.input(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n height: 40px;\n width: auto;\n display: inline-flex;\n border: none;\n outline: none;\n margin: 4px;\n\n ", "\n color: ", " !important;\n background-color: inherit;\n"])), (0, _typography.ComponentMStyling)(_typography.ComponentTextStyle.Regular, _styles.COLORS.black), _styles.COLORS.black);
|
|
55
|
+
|
|
56
|
+
var Loading = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n margin: auto 16px auto auto !important;\n height: 20px;\n div {\n height: 20px;\n }\n"])));
|
|
57
|
+
|
|
58
|
+
var ChipDropdownInput = function ChipDropdownInput(_ref) {
|
|
59
|
+
var list = _ref.list,
|
|
60
|
+
onInputChange = _ref.onInputChange,
|
|
61
|
+
disableSorting = _ref.disableSorting,
|
|
62
|
+
messageOnNoResults = _ref.messageOnNoResults,
|
|
63
|
+
values = _ref.values,
|
|
64
|
+
inputId = _ref.inputId,
|
|
65
|
+
variants = _ref.variants,
|
|
66
|
+
placeholder = _ref.placeholder,
|
|
67
|
+
validationType = _ref.validationType,
|
|
68
|
+
validationMessage = _ref.validationMessage,
|
|
69
|
+
onValueChange = _ref.onValueChange,
|
|
70
|
+
suggestion = _ref.suggestion,
|
|
71
|
+
excludeIcon = _ref.excludeIcon,
|
|
72
|
+
loading = _ref.loading,
|
|
73
|
+
maxSelectedItems = _ref.maxSelectedItems;
|
|
74
|
+
|
|
75
|
+
// Initiate states
|
|
76
|
+
var _React$useState = React.useState([]),
|
|
77
|
+
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
|
|
78
|
+
givenList = _React$useState2[0],
|
|
79
|
+
setGivenList = _React$useState2[1];
|
|
80
|
+
|
|
81
|
+
var _React$useState3 = React.useState([]),
|
|
82
|
+
_React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
|
|
83
|
+
chips = _React$useState4[0],
|
|
84
|
+
setChips = _React$useState4[1];
|
|
85
|
+
|
|
86
|
+
var _React$useState5 = React.useState(''),
|
|
87
|
+
_React$useState6 = (0, _slicedToArray2.default)(_React$useState5, 2),
|
|
88
|
+
value = _React$useState6[0],
|
|
89
|
+
setValue = _React$useState6[1];
|
|
90
|
+
|
|
91
|
+
var _React$useState7 = React.useState(false),
|
|
92
|
+
_React$useState8 = (0, _slicedToArray2.default)(_React$useState7, 2),
|
|
93
|
+
dropdownIsOpen = _React$useState8[0],
|
|
94
|
+
setDropdownIsOpen = _React$useState8[1];
|
|
95
|
+
|
|
96
|
+
var _React$useState9 = React.useState(),
|
|
97
|
+
_React$useState10 = (0, _slicedToArray2.default)(_React$useState9, 2),
|
|
98
|
+
currentSearchResult = _React$useState10[0],
|
|
99
|
+
setCurrentSearchResult = _React$useState10[1];
|
|
100
|
+
|
|
101
|
+
var _React$useState11 = React.useState(false),
|
|
102
|
+
_React$useState12 = (0, _slicedToArray2.default)(_React$useState11, 2),
|
|
103
|
+
restartFilter = _React$useState12[0],
|
|
104
|
+
setRestartFilter = _React$useState12[1];
|
|
105
|
+
|
|
106
|
+
var _React$useState13 = React.useState(null),
|
|
107
|
+
_React$useState14 = (0, _slicedToArray2.default)(_React$useState13, 2),
|
|
108
|
+
focused = _React$useState14[0],
|
|
109
|
+
setFocused = _React$useState14[1]; // Initiate refs
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
var chipInput = React.useRef();
|
|
113
|
+
var styledFieldRef = React.useRef(null);
|
|
114
|
+
/**
|
|
115
|
+
* Sets initial values for the chips.
|
|
116
|
+
*/
|
|
117
|
+
|
|
118
|
+
React.useEffect(function () {
|
|
119
|
+
// Let's add initial chip values
|
|
120
|
+
setChips(values);
|
|
121
|
+
}, [values]);
|
|
122
|
+
/**
|
|
123
|
+
* Convert string[] to List[] if necessary
|
|
124
|
+
*/
|
|
125
|
+
|
|
126
|
+
React.useEffect(function () {
|
|
127
|
+
if (typeof list[0] === 'string') {
|
|
128
|
+
var newList = list.map(function (e) {
|
|
129
|
+
return {
|
|
130
|
+
label: e,
|
|
131
|
+
value: e
|
|
132
|
+
};
|
|
133
|
+
});
|
|
134
|
+
setGivenList(newList);
|
|
135
|
+
} else {
|
|
136
|
+
setGivenList(list);
|
|
137
|
+
}
|
|
138
|
+
}, [list]);
|
|
139
|
+
|
|
140
|
+
var addChip = function addChip(newChip) {
|
|
141
|
+
// Let's add the chip
|
|
142
|
+
setChips([].concat((0, _toConsumableArray2.default)(chips), [newChip]));
|
|
143
|
+
onValueChange([].concat((0, _toConsumableArray2.default)(chips), [newChip])); // Let's clear the old value
|
|
144
|
+
|
|
145
|
+
chipInput.current.value = '';
|
|
146
|
+
setValue('');
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Adds a chip to the chip list.
|
|
150
|
+
* @param event - Event handler from the key down event.
|
|
151
|
+
*/
|
|
152
|
+
|
|
153
|
+
|
|
154
|
+
var onAddChip = function onAddChip(event) {
|
|
155
|
+
// Let's trigger only on enter, comma and space key press
|
|
156
|
+
if ((event.keyCode === 13 || event.keyCode === 32 || event.keyCode === 188) && value) {
|
|
157
|
+
if (!givenList.find(function (e) {
|
|
158
|
+
return e.value === value;
|
|
159
|
+
})) {
|
|
160
|
+
setValue('');
|
|
161
|
+
return;
|
|
162
|
+
} // Let's prevent default action - adding new key to the value
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
event.preventDefault();
|
|
166
|
+
addChip(value);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
if (event.keyCode === 8 && value === '') {
|
|
170
|
+
onRemoveChip(chips.length - 1);
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* Removes a specific chip from the chip list.
|
|
175
|
+
* @param index - Index of the chip that needs to be removed.
|
|
176
|
+
* @param elementToAdd - Element which needs to be added in the deleted element place.
|
|
177
|
+
*/
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
var onRemoveChip = function onRemoveChip(index, elementToAdd) {
|
|
181
|
+
// Let's copy the chips
|
|
182
|
+
var newChips = (0, _toConsumableArray2.default)(chips); // Let's delete the chip
|
|
183
|
+
// If necessary, let's replace it with a different chip
|
|
184
|
+
|
|
185
|
+
if (elementToAdd) {
|
|
186
|
+
newChips.splice(index, 1, elementToAdd);
|
|
187
|
+
} else {
|
|
188
|
+
newChips.splice(index, 1);
|
|
189
|
+
} // Let's update the chip list
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
setChips((0, _toConsumableArray2.default)(newChips));
|
|
193
|
+
onValueChange((0, _toConsumableArray2.default)(newChips));
|
|
194
|
+
};
|
|
195
|
+
/**
|
|
196
|
+
* Changes a status of the chip to edit.
|
|
197
|
+
* @param text - Text of the chip that is being edited.
|
|
198
|
+
* @param index - Index of the chip in the array.
|
|
199
|
+
*/
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
var onEditChip = function onEditChip(text, index) {
|
|
203
|
+
// Let's check if we have to add value as a chip (in case we have entered something in the input field)
|
|
204
|
+
if (chipInput.current.value !== '') {
|
|
205
|
+
// Let's replace the chip
|
|
206
|
+
onRemoveChip(index, chipInput.current.value);
|
|
207
|
+
} else {
|
|
208
|
+
// Let's just remove the chip
|
|
209
|
+
onRemoveChip(index);
|
|
210
|
+
} // Let's update the text value of input field
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
chipInput.current.value = text;
|
|
214
|
+
setValue(text);
|
|
215
|
+
};
|
|
216
|
+
|
|
217
|
+
React.useEffect(function () {
|
|
218
|
+
var options = (0, _toConsumableArray2.default)(givenList);
|
|
219
|
+
|
|
220
|
+
if (!restartFilter && value !== '') {
|
|
221
|
+
options = options.filter(function (option) {
|
|
222
|
+
var _option$secondaryLabe;
|
|
223
|
+
|
|
224
|
+
return option.label.toUpperCase().indexOf(value.toUpperCase()) !== -1 || option.secondaryLabel && ((_option$secondaryLabe = option.secondaryLabel) === null || _option$secondaryLabe === void 0 ? void 0 : _option$secondaryLabe.toUpperCase().indexOf(value.toUpperCase())) !== -1;
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
if (!disableSorting) {
|
|
229
|
+
options = options.sort();
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
options = options.filter(function (o) {
|
|
233
|
+
return !chips.includes(o.value);
|
|
234
|
+
});
|
|
235
|
+
setCurrentSearchResult(options);
|
|
236
|
+
}, [value, givenList, chips]);
|
|
237
|
+
|
|
238
|
+
var handleValueUpdate = function handleValueUpdate(values) {
|
|
239
|
+
var _chipInput$current;
|
|
240
|
+
|
|
241
|
+
setRestartFilter(true);
|
|
242
|
+
addChip(values[0]);
|
|
243
|
+
chipInput === null || chipInput === void 0 ? void 0 : (_chipInput$current = chipInput.current) === null || _chipInput$current === void 0 ? void 0 : _chipInput$current.focus();
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
var handleKeyPress = function handleKeyPress(e) {
|
|
247
|
+
if (styledFieldRef !== null && styledFieldRef !== void 0 && styledFieldRef.current && styledFieldRef.current.contains(e.target)) {
|
|
248
|
+
if (e.keyCode === 13) {
|
|
249
|
+
var matches = currentSearchResult === null || currentSearchResult === void 0 ? void 0 : currentSearchResult.filter(function (c) {
|
|
250
|
+
return c.value.toLowerCase() === value.toLowerCase();
|
|
251
|
+
});
|
|
252
|
+
|
|
253
|
+
if ((matches === null || matches === void 0 ? void 0 : matches.length) === 1
|
|
254
|
+
/*&& onSelect*/
|
|
255
|
+
) {
|
|
256
|
+
addChip(matches[0].value); //onSelect(chips);
|
|
257
|
+
} else if (e.target.value === (suggestion === null || suggestion === void 0 ? void 0 : suggestion.label)) {
|
|
258
|
+
addChip(e.target.value);
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
setDropdownIsOpen(!dropdownIsOpen);
|
|
262
|
+
|
|
263
|
+
if ((matches === null || matches === void 0 ? void 0 : matches.length) === 0) {
|
|
264
|
+
setValue('');
|
|
265
|
+
}
|
|
266
|
+
} else if (e.keyCode === 40) {
|
|
267
|
+
setDropdownIsOpen(!dropdownIsOpen);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
};
|
|
271
|
+
|
|
272
|
+
var handleClickOutside = function handleClickOutside(e) {
|
|
273
|
+
if (styledFieldRef !== null && styledFieldRef !== void 0 && styledFieldRef.current && !styledFieldRef.current.contains(e.target)) {
|
|
274
|
+
if (dropdownIsOpen) {
|
|
275
|
+
setDropdownIsOpen(false);
|
|
276
|
+
|
|
277
|
+
if (!givenList.find(function (e) {
|
|
278
|
+
return e.value === value;
|
|
279
|
+
})) {
|
|
280
|
+
setValue('');
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
};
|
|
285
|
+
|
|
286
|
+
React.useEffect(function () {
|
|
287
|
+
document.addEventListener('keypress', handleKeyPress);
|
|
288
|
+
document.addEventListener('click', handleClickOutside);
|
|
289
|
+
return function () {
|
|
290
|
+
document.removeEventListener('keypress', handleKeyPress);
|
|
291
|
+
document.removeEventListener('click', handleClickOutside);
|
|
292
|
+
};
|
|
293
|
+
});
|
|
294
|
+
/**
|
|
295
|
+
* Return Chip Input component.
|
|
296
|
+
*/
|
|
297
|
+
|
|
298
|
+
var dropdownItems = [];
|
|
299
|
+
if (currentSearchResult) dropdownItems = currentSearchResult.map(function (x) {
|
|
300
|
+
return {
|
|
301
|
+
value: x.value,
|
|
302
|
+
displayLabel: x.label,
|
|
303
|
+
noteLabel: x.secondaryLabel
|
|
304
|
+
};
|
|
305
|
+
});
|
|
306
|
+
if (suggestion && !chips.includes(suggestion.value)) dropdownItems = [{
|
|
307
|
+
value: suggestion.value,
|
|
308
|
+
displayLabel: suggestion.label,
|
|
309
|
+
noteLabel: suggestion.secondaryLabel,
|
|
310
|
+
suggestion: true
|
|
311
|
+
}].concat((0, _toConsumableArray2.default)(dropdownItems));
|
|
312
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Wrapper, {
|
|
313
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(StyledChipInputContainer, {
|
|
314
|
+
id: inputId,
|
|
315
|
+
onClick: function onClick(e) {
|
|
316
|
+
e.stopPropagation();
|
|
317
|
+
setDropdownIsOpen(true);
|
|
318
|
+
chipInput.current.focus();
|
|
319
|
+
},
|
|
320
|
+
className: validationType,
|
|
321
|
+
ref: styledFieldRef,
|
|
322
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.Search, {
|
|
323
|
+
size: "24px",
|
|
324
|
+
className: "SearchIcon"
|
|
325
|
+
}), chips === null || chips === void 0 ? void 0 : chips.map(function (chip, index) {
|
|
326
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.InputChip, {
|
|
327
|
+
icon: givenList.find(function (l) {
|
|
328
|
+
return l.value === chip;
|
|
329
|
+
}) ? 'User' : undefined,
|
|
330
|
+
size: _types.Size.Medium,
|
|
331
|
+
variant: variants && variants !== null && variants !== void 0 && variants.length && variants[index] ? variants[index] : 'normal',
|
|
332
|
+
text: chip,
|
|
333
|
+
onRemove: function onRemove() {
|
|
334
|
+
return onRemoveChip(index);
|
|
335
|
+
},
|
|
336
|
+
onClick: function onClick() {
|
|
337
|
+
return onEditChip(chip, index);
|
|
338
|
+
}
|
|
339
|
+
}, "chip_".concat(index));
|
|
340
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(ChipInput, {
|
|
341
|
+
type: "text",
|
|
342
|
+
onChange: function onChange(event) {
|
|
343
|
+
setValue(event.target.value);
|
|
344
|
+
setRestartFilter(false);
|
|
345
|
+
setDropdownIsOpen(true);
|
|
346
|
+
|
|
347
|
+
if (onInputChange) {
|
|
348
|
+
onInputChange(event.target.value || '');
|
|
349
|
+
}
|
|
350
|
+
},
|
|
351
|
+
onKeyDown: function onKeyDown(event) {
|
|
352
|
+
onAddChip(event);
|
|
353
|
+
},
|
|
354
|
+
placeholder: placeholder && (chips === null || chips === void 0 ? void 0 : chips.length) === 0 ? placeholder : '',
|
|
355
|
+
onClick: function onClick(e) {
|
|
356
|
+
e.stopPropagation();
|
|
357
|
+
setDropdownIsOpen(true);
|
|
358
|
+
},
|
|
359
|
+
onFocus: function onFocus() {
|
|
360
|
+
setDropdownIsOpen(true);
|
|
361
|
+
},
|
|
362
|
+
ref: chipInput
|
|
363
|
+
}), loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(Loading, {
|
|
364
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LoadingIndicator.LoadingIndicator, {
|
|
365
|
+
size: _types.Size.Small,
|
|
366
|
+
color: _styles.COLORS.neutral_600
|
|
367
|
+
})
|
|
368
|
+
}) : null]
|
|
369
|
+
}), (!maxSelectedItems || maxSelectedItems && chips.length < maxSelectedItems) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_DropdownContent.default, {
|
|
370
|
+
customizationProps: {
|
|
371
|
+
action: function action() {},
|
|
372
|
+
pinTopItem: true,
|
|
373
|
+
itemsType: 'normal',
|
|
374
|
+
scrollable: true,
|
|
375
|
+
actionLabel: '',
|
|
376
|
+
multiSelect: false,
|
|
377
|
+
onValueUpdate: handleValueUpdate,
|
|
378
|
+
items: dropdownItems
|
|
379
|
+
},
|
|
380
|
+
focused: focused,
|
|
381
|
+
setFocused: setFocused,
|
|
382
|
+
hideOnClickOutside: false,
|
|
383
|
+
selectedValues: [],
|
|
384
|
+
messageOnNoResults: messageOnNoResults !== null && messageOnNoResults !== void 0 ? messageOnNoResults : '',
|
|
385
|
+
setSelectedValues: function setSelectedValues() {},
|
|
386
|
+
isOpen: dropdownIsOpen,
|
|
387
|
+
setIsOpen: setDropdownIsOpen,
|
|
388
|
+
filter: '',
|
|
389
|
+
isButton: false,
|
|
390
|
+
id: "".concat(inputId, "_dropdowncontent")
|
|
391
|
+
}), validationMessage && validationType === 'warning' ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styling.WarningMessage, {
|
|
392
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.TechnicalWarning, {
|
|
393
|
+
size: "20px",
|
|
394
|
+
color: _styles.COLORS.critical_500
|
|
395
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
396
|
+
children: validationMessage
|
|
397
|
+
})]
|
|
398
|
+
}) : validationType === 'error' && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_styling.ErrorMessage, {
|
|
399
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_SystemIcons.TechnicalWarning, {
|
|
400
|
+
size: "20px",
|
|
401
|
+
color: _styles.COLORS.critical_400
|
|
402
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
403
|
+
children: validationMessage
|
|
404
|
+
})]
|
|
405
|
+
})]
|
|
406
|
+
});
|
|
407
|
+
};
|
|
408
|
+
|
|
409
|
+
ChipDropdownInput.propTypes = {
|
|
410
|
+
list: _propTypes.default.oneOfType([_propTypes.default.arrayOf(_propTypes.default.shape({
|
|
411
|
+
label: _propTypes.default.string.isRequired,
|
|
412
|
+
secondaryLabel: _propTypes.default.string,
|
|
413
|
+
value: _propTypes.default.string.isRequired
|
|
414
|
+
})), _propTypes.default.arrayOf(_propTypes.default.string)]).isRequired,
|
|
415
|
+
onInputChange: _propTypes.default.func,
|
|
416
|
+
disableSorting: _propTypes.default.bool,
|
|
417
|
+
messageOnNoResults: _propTypes.default.string,
|
|
418
|
+
isButton: _propTypes.default.bool,
|
|
419
|
+
autofilledMessage: _propTypes.default.string,
|
|
420
|
+
suggestion: _propTypes.default.shape({
|
|
421
|
+
label: _propTypes.default.string.isRequired,
|
|
422
|
+
secondaryLabel: _propTypes.default.string,
|
|
423
|
+
value: _propTypes.default.string.isRequired
|
|
424
|
+
}),
|
|
425
|
+
excludeIcon: _propTypes.default.bool,
|
|
426
|
+
loading: _propTypes.default.bool,
|
|
427
|
+
maxSelectedItems: _propTypes.default.number
|
|
428
|
+
};
|
|
429
|
+
var _default = ChipDropdownInput;
|
|
430
|
+
exports.default = _default;
|
|
431
|
+
//# sourceMappingURL=ChipDropdownInput.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/Dropdown/ChipDropdownInput.tsx"],"names":["Wrapper","styled","div","StyledChipInputContainer","ChipInputContainer","COLORS","neutral_400","primary_100","critical_400","warning_400","primary_600","primary_800","primary_700","ChipInput","input","ComponentTextStyle","Regular","black","Loading","ChipDropdownInput","list","onInputChange","disableSorting","messageOnNoResults","values","inputId","variants","placeholder","validationType","validationMessage","onValueChange","suggestion","excludeIcon","loading","maxSelectedItems","React","useState","givenList","setGivenList","chips","setChips","value","setValue","dropdownIsOpen","setDropdownIsOpen","currentSearchResult","setCurrentSearchResult","restartFilter","setRestartFilter","focused","setFocused","chipInput","useRef","styledFieldRef","useEffect","newList","map","e","label","addChip","newChip","current","onAddChip","event","keyCode","find","preventDefault","onRemoveChip","length","index","elementToAdd","newChips","splice","onEditChip","text","options","filter","option","toUpperCase","indexOf","secondaryLabel","sort","o","includes","handleValueUpdate","focus","handleKeyPress","contains","target","matches","c","toLowerCase","handleClickOutside","document","addEventListener","removeEventListener","dropdownItems","x","displayLabel","noteLabel","stopPropagation","chip","l","undefined","Size","Medium","Small","neutral_600","action","pinTopItem","itemsType","scrollable","actionLabel","multiSelect","onValueUpdate","items","critical_500","isButton","autofilledMessage"],"mappings":"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","sourcesContent":["/**\n * Import React libraries.\n */\nimport * as React from 'react';\n\n/**\n * Import third-party libraries.\n */\nimport styled from 'styled-components';\n\n/**\n * Import custom components.\n */\nimport { InputChip } from '../Chips/index';\nimport { Search, TechnicalWarning, User } from '../icons/systemicons/SystemIcons';\nimport { WarningMessage, ErrorMessage } from '../InputFields/styling';\nimport { COLORS, scrollBarStyling } from '../styles';\n\n/**\n * Import custom styles.\n */\nimport { ChipInputContainer } from '../Chips/ChipStyles';\n\n/**\n * Import custom types.\n */\nimport { Size } from '../types';\nimport { ChipInputProps } from '../Chips/ChipTypes';\n\nimport DropdownContent, { DropdownItem } from './DropdownContent';\nimport { LoadingIndicator } from '../LoadingIndicator';\nimport { ComponentMStyling, ComponentXXSStyling, ComponentTextStyle } from '../styles/typography';\n\nconst Wrapper = styled.div`\n position: relative;\n display: inline-block;\n width: 100%;\n min-width: 344px;\n`;\n\nconst StyledChipInputContainer = styled(ChipInputContainer)`\n padding: 2px 2px 2px 48px !important;\n min-height: 56px;\n max-height: 176px;\n overflow-y: auto;\n box-shadow: 0px 0px 0px 1px ${COLORS.neutral_400};\n\n .medium {\n margin-right: 8px !important;\n }\n .SearchIcon {\n position: absolute;\n left: 18px;\n top: 18px;\n }\n\n &:active {\n background-color: ${COLORS.primary_100};\n }\n\n &.invalid {\n -webkit-box-shadow: inset 0px 0px 0px 2px ${COLORS.critical_400};\n -moz-box-shadow: inset 0px 0px 0px 2px ${COLORS.critical_400};\n box-shadow: inset 0px 0px 0px 2px ${COLORS.critical_400};\n }\n &.alreadyInOrganization {\n -webkit-box-shadow: inset 0px 0px 0px 2px ${COLORS.warning_400};\n -moz-box-shadow: inset 0px 0px 0px 2px ${COLORS.warning_400};\n box-shadow: inset 0px 0px 0px 2px ${COLORS.warning_400};\n }\n\n &.empty:hover {\n -webkit-box-shadow: 0px 0px 0px 2px ${COLORS.primary_600};\n -moz-box-shadow: 0px 0px 0px 2px ${COLORS.primary_600};\n box-shadow: 0px 0px 0px 2px ${COLORS.primary_600};\n }\n\n &.inputHasFocus {\n -webkit-box-shadow: 0px 0px 0px 2px ${COLORS.primary_800};\n -moz-box-shadow: 0px 0px 0px 2px ${COLORS.primary_800};\n box-shadow: 0px 0px 0px 2px ${COLORS.primary_800};\n }\n &:hover {\n -webkit-box-shadow: 0px 0px 0px 2px ${COLORS.primary_700};\n -moz-box-shadow: 0px 0px 0px 2px ${COLORS.primary_700};\n box-shadow: 0px 0px 0px 2px ${COLORS.primary_700};\n }\n`;\n\nconst ChipInput = styled.input`\n height: 40px;\n width: auto;\n display: inline-flex;\n border: none;\n outline: none;\n margin: 4px;\n\n ${ComponentMStyling(ComponentTextStyle.Regular, COLORS.black)}\n color: ${COLORS.black} !important;\n background-color: inherit;\n`;\n\nconst Loading = styled.div`\n margin: auto 16px auto auto !important;\n height: 20px;\n div {\n height: 20px;\n }\n`;\n\ninterface List {\n label: string;\n secondaryLabel?: string;\n value: string;\n}\n\ninterface ChipDropdownInputProps extends ChipInputProps {\n list: List[] | string[];\n onInputChange?: (input: string) => void;\n disableSorting?: boolean;\n messageOnNoResults?: string;\n isButton?: boolean;\n autofilledMessage?: string;\n suggestion?: List;\n excludeIcon?: boolean;\n loading?: boolean;\n maxSelectedItems?: number;\n}\n\nconst ChipDropdownInput: React.FunctionComponent<ChipDropdownInputProps> = ({\n list,\n onInputChange,\n disableSorting,\n messageOnNoResults,\n values,\n inputId,\n variants,\n placeholder,\n validationType,\n validationMessage,\n onValueChange,\n suggestion,\n excludeIcon,\n loading,\n maxSelectedItems,\n}: ChipDropdownInputProps) => {\n // Initiate states\n const [givenList, setGivenList] = React.useState<List[]>([]);\n const [chips, setChips] = React.useState<string[]>([]);\n const [value, setValue] = React.useState<string>('');\n const [dropdownIsOpen, setDropdownIsOpen] = React.useState<boolean>(false);\n const [currentSearchResult, setCurrentSearchResult] = React.useState<List[]>();\n const [restartFilter, setRestartFilter] = React.useState<boolean>(false);\n const [focused, setFocused] = React.useState<number | null>(null);\n\n // Initiate refs\n const chipInput = React.useRef<any>();\n const styledFieldRef = React.useRef<HTMLDivElement>(null);\n\n /**\n * Sets initial values for the chips.\n */\n React.useEffect(() => {\n // Let's add initial chip values\n setChips(values);\n }, [values]);\n\n /**\n * Convert string[] to List[] if necessary\n */\n React.useEffect(() => {\n if (typeof list[0] === 'string') {\n const newList: List[] = (list as string[]).map((e: string) => ({ label: e, value: e }));\n setGivenList(newList);\n } else {\n setGivenList(list as List[]);\n }\n }, [list]);\n\n const addChip = (newChip: string) => {\n // Let's add the chip\n setChips([...chips, newChip]);\n onValueChange([...chips, newChip]);\n\n // Let's clear the old value\n chipInput.current.value = '';\n setValue('');\n };\n\n /**\n * Adds a chip to the chip list.\n * @param event - Event handler from the key down event.\n */\n const onAddChip = (event: React.KeyboardEvent<HTMLInputElement>): void => {\n // Let's trigger only on enter, comma and space key press\n if ((event.keyCode === 13 || event.keyCode === 32 || event.keyCode === 188) && value) {\n if (!givenList.find((e) => e.value === value)) {\n setValue('');\n return;\n }\n // Let's prevent default action - adding new key to the value\n event.preventDefault();\n\n addChip(value);\n }\n if (event.keyCode === 8 && value === '') {\n onRemoveChip(chips.length - 1);\n }\n };\n\n /**\n * Removes a specific chip from the chip list.\n * @param index - Index of the chip that needs to be removed.\n * @param elementToAdd - Element which needs to be added in the deleted element place.\n */\n const onRemoveChip = (index: number, elementToAdd?: string): void => {\n // Let's copy the chips\n const newChips = [...chips];\n\n // Let's delete the chip\n // If necessary, let's replace it with a different chip\n if (elementToAdd) {\n newChips.splice(index, 1, elementToAdd);\n } else {\n newChips.splice(index, 1);\n }\n\n // Let's update the chip list\n setChips([...newChips]);\n onValueChange([...newChips]);\n };\n\n /**\n * Changes a status of the chip to edit.\n * @param text - Text of the chip that is being edited.\n * @param index - Index of the chip in the array.\n */\n const onEditChip = (text: string, index: number): void => {\n // Let's check if we have to add value as a chip (in case we have entered something in the input field)\n if (chipInput.current.value !== '') {\n // Let's replace the chip\n onRemoveChip(index, chipInput.current.value);\n } else {\n // Let's just remove the chip\n onRemoveChip(index);\n }\n\n // Let's update the text value of input field\n chipInput.current.value = text;\n setValue(text);\n };\n\n React.useEffect(() => {\n let options = [...givenList];\n if (!restartFilter && value !== '') {\n options = options.filter((option) => option.label.toUpperCase().indexOf(value.toUpperCase()) !== -1 ||\n (option.secondaryLabel && option.secondaryLabel?.toUpperCase().indexOf(value.toUpperCase()) !== -1));\n }\n if (!disableSorting) {\n options = options.sort();\n }\n options = options.filter((o) => !chips.includes(o.value));\n setCurrentSearchResult(options);\n }, [value, givenList, chips]);\n\n const handleValueUpdate = (values: string[]) => {\n setRestartFilter(true);\n addChip(values[0]);\n chipInput?.current?.focus();\n }\n\n const handleKeyPress = (e: any) => {\n if (styledFieldRef?.current && styledFieldRef.current.contains(e.target)) {\n if (e.keyCode === 13) {\n const matches = currentSearchResult?.filter((c) => c.value.toLowerCase() === value.toLowerCase());\n if (matches?.length === 1 /*&& onSelect*/) {\n addChip(matches[0].value);\n //onSelect(chips);\n } else if (e.target.value === suggestion?.label) {\n addChip(e.target.value);\n }\n\n setDropdownIsOpen(!dropdownIsOpen);\n if (matches?.length === 0) {\n setValue('');\n }\n } else if (e.keyCode === 40) {\n setDropdownIsOpen(!dropdownIsOpen);\n }\n }\n };\n\n const handleClickOutside = (e: any) => {\n if (styledFieldRef?.current && !styledFieldRef.current.contains(e.target)) {\n if (dropdownIsOpen) {\n setDropdownIsOpen(false);\n if (!givenList.find((e) => e.value === value)) {\n setValue('');\n }\n }\n }\n };\n\n React.useEffect(() => {\n document.addEventListener('keypress', handleKeyPress);\n document.addEventListener('click', handleClickOutside);\n return () => {\n document.removeEventListener('keypress', handleKeyPress);\n document.removeEventListener('click', handleClickOutside);\n };\n });\n\n /**\n * Return Chip Input component.\n */\n\n let dropdownItems: DropdownItem[] = [];\n if(currentSearchResult)\n dropdownItems = currentSearchResult.map(x => ({ value: x.value, displayLabel: x.label, noteLabel: x.secondaryLabel }));\n \n if(suggestion && !chips.includes(suggestion.value))\n dropdownItems = [{ value: suggestion.value, displayLabel: suggestion.label, noteLabel: suggestion.secondaryLabel, suggestion: true }, ...dropdownItems];\n\n return (\n <Wrapper>\n <StyledChipInputContainer\n id={inputId}\n onClick={(e: any) => {\n e.stopPropagation();\n setDropdownIsOpen(true);\n chipInput.current.focus();\n }}\n className={validationType}\n ref={styledFieldRef}>\n <Search size=\"24px\" className=\"SearchIcon\" />\n {chips?.map((chip: string, index: number) => (\n <InputChip\n icon={givenList.find((l: List) => l.value === chip) ? 'User' : undefined}\n size={Size.Medium}\n variant={variants && variants?.length && variants[index] ? variants[index] : 'normal'}\n text={chip}\n onRemove={() => onRemoveChip(index)}\n onClick={() => onEditChip(chip, index)}\n key={`chip_${index}`}></InputChip>\n ))}\n\n <ChipInput\n type=\"text\"\n onChange={(event: React.ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n setRestartFilter(false);\n setDropdownIsOpen(true);\n if (onInputChange) {\n onInputChange(event.target.value || '');\n }\n }}\n onKeyDown={(event: React.KeyboardEvent<HTMLInputElement>) => {\n onAddChip(event);\n }}\n placeholder={placeholder && chips?.length === 0 ? placeholder : ''}\n onClick={(e: any) => {\n e.stopPropagation();\n setDropdownIsOpen(true);\n }}\n onFocus={() => {\n setDropdownIsOpen(true);\n }}\n ref={chipInput}\n />\n {loading ? (\n <Loading>\n <LoadingIndicator size={Size.Small} color={COLORS.neutral_600} />\n </Loading>\n ) : null}\n </StyledChipInputContainer>\n {(!maxSelectedItems || (maxSelectedItems && chips.length < maxSelectedItems)) && (\n <DropdownContent \n customizationProps={{\n action: () => {},\n pinTopItem: true,\n \n itemsType: 'normal',\n scrollable: true,\n actionLabel: '',\n multiSelect: false,\n onValueUpdate: handleValueUpdate,\n items: dropdownItems\n }}\n focused={focused}\n setFocused={setFocused}\n hideOnClickOutside={false}\n selectedValues={[]}\n messageOnNoResults={messageOnNoResults ?? ''}\n setSelectedValues={() => {}}\n isOpen={dropdownIsOpen}\n setIsOpen={setDropdownIsOpen}\n filter={''}\n isButton={false} \n id={`${inputId}_dropdowncontent`} />\n )}\n\n {/* If there is an error, let's render the error */}\n {validationMessage && validationType === 'warning' ? (\n <WarningMessage>\n <TechnicalWarning size=\"20px\" color={COLORS.critical_500} />\n <span>{validationMessage}</span>\n </WarningMessage>\n ) : (\n validationType === 'error' && (\n <ErrorMessage>\n <TechnicalWarning size=\"20px\" color={COLORS.critical_400} />\n <span>{validationMessage}</span>\n </ErrorMessage>\n )\n )}\n </Wrapper>\n );\n};\n\nexport default ChipDropdownInput;\n"],"file":"ChipDropdownInput.cjs"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Import React libraries.
|
|
3
|
+
*/
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { ChipInputProps } from '../Chips/ChipTypes';
|
|
6
|
+
interface List {
|
|
7
|
+
label: string;
|
|
8
|
+
secondaryLabel?: string;
|
|
9
|
+
value: string;
|
|
10
|
+
}
|
|
11
|
+
interface ChipDropdownInputProps extends ChipInputProps {
|
|
12
|
+
list: List[] | string[];
|
|
13
|
+
onInputChange?: (input: string) => void;
|
|
14
|
+
disableSorting?: boolean;
|
|
15
|
+
messageOnNoResults?: string;
|
|
16
|
+
isButton?: boolean;
|
|
17
|
+
autofilledMessage?: string;
|
|
18
|
+
suggestion?: List;
|
|
19
|
+
excludeIcon?: boolean;
|
|
20
|
+
loading?: boolean;
|
|
21
|
+
maxSelectedItems?: number;
|
|
22
|
+
}
|
|
23
|
+
declare const ChipDropdownInput: React.FunctionComponent<ChipDropdownInputProps>;
|
|
24
|
+
export default ChipDropdownInput;
|