@laerdal/life-react-components 1.9.9 → 1.10.1-dev.3
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/AccordionItem.cjs +4 -3
- package/dist/Accordion/AccordionItem.cjs.map +1 -1
- package/dist/Accordion/AccordionItem.d.ts +0 -1
- package/dist/Accordion/AccordionItem.js +4 -3
- package/dist/Accordion/AccordionItem.js.map +1 -1
- package/dist/Accordion/AccordionMenu.cjs +5 -5
- package/dist/Accordion/AccordionMenu.cjs.map +1 -1
- package/dist/Accordion/AccordionMenu.d.ts +1 -2
- package/dist/Accordion/AccordionMenu.js +5 -5
- package/dist/Accordion/AccordionMenu.js.map +1 -1
- package/dist/Accordion/ContentAccordion.cjs +18 -15
- package/dist/Accordion/ContentAccordion.cjs.map +1 -1
- package/dist/Accordion/ContentAccordion.d.ts +1 -1
- package/dist/Accordion/ContentAccordion.js +19 -16
- package/dist/Accordion/ContentAccordion.js.map +1 -1
- package/dist/Accordion/styles.cjs +3 -5
- package/dist/Accordion/styles.cjs.map +1 -1
- package/dist/Accordion/styles.d.ts +0 -1
- package/dist/Accordion/styles.js +3 -5
- package/dist/Accordion/styles.js.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.cjs +10 -46
- package/dist/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/Breadcrumb/Breadcrumb.js +8 -43
- package/dist/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/Breadcrumb/styles.cjs +55 -0
- package/dist/Breadcrumb/styles.cjs.map +1 -0
- package/dist/Breadcrumb/styles.d.ts +7 -0
- package/dist/Breadcrumb/styles.js +39 -0
- package/dist/Breadcrumb/styles.js.map +1 -0
- package/dist/Button/Button.cjs +11 -19
- package/dist/Button/Button.cjs.map +1 -1
- package/dist/Button/Button.js +11 -19
- package/dist/Button/Button.js.map +1 -1
- package/dist/Button/DualFunctionButton.cjs +1 -0
- package/dist/Button/DualFunctionButton.cjs.map +1 -1
- package/dist/Button/DualFunctionButton.js +1 -0
- package/dist/Button/DualFunctionButton.js.map +1 -1
- package/dist/Button/Iconbutton.cjs +2 -1
- package/dist/Button/Iconbutton.cjs.map +1 -1
- package/dist/Button/Iconbutton.d.ts +1 -0
- package/dist/Button/Iconbutton.js +1 -1
- package/dist/Button/Iconbutton.js.map +1 -1
- package/dist/Card/HorizontalCard/HorizontalCard.cjs +97 -0
- package/dist/Card/HorizontalCard/HorizontalCard.cjs.map +1 -0
- package/dist/Card/HorizontalCard/HorizontalCard.d.ts +4 -0
- package/dist/Card/HorizontalCard/HorizontalCard.js +74 -0
- package/dist/Card/HorizontalCard/HorizontalCard.js.map +1 -0
- package/dist/Card/HorizontalCard/HorizontalCardActions.cjs +124 -0
- package/dist/Card/HorizontalCard/HorizontalCardActions.cjs.map +1 -0
- package/dist/Card/HorizontalCard/HorizontalCardActions.d.ts +5 -0
- package/dist/Card/HorizontalCard/HorizontalCardActions.js +98 -0
- package/dist/Card/HorizontalCard/HorizontalCardActions.js.map +1 -0
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs +60 -0
- package/dist/Card/HorizontalCard/HorizontalCardBody.cjs.map +1 -0
- package/dist/Card/HorizontalCard/HorizontalCardBody.d.ts +5 -0
- package/dist/Card/HorizontalCard/HorizontalCardBody.js +40 -0
- package/dist/Card/HorizontalCard/HorizontalCardBody.js.map +1 -0
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs +49 -0
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.cjs.map +1 -0
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.d.ts +5 -0
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js +33 -0
- package/dist/Card/HorizontalCard/HorizontalCardThumbnail.js.map +1 -0
- package/dist/Card/HorizontalCard/index.cjs +33 -0
- package/dist/Card/HorizontalCard/index.cjs.map +1 -0
- package/dist/Card/HorizontalCard/index.d.ts +2 -0
- package/dist/Card/HorizontalCard/index.js +3 -0
- package/dist/Card/HorizontalCard/index.js.map +1 -0
- package/dist/Card/HorizontalCard/types.cjs +6 -0
- package/dist/Card/HorizontalCard/types.cjs.map +1 -0
- package/dist/Card/HorizontalCard/types.d.ts +40 -0
- package/dist/Card/HorizontalCard/types.js +2 -0
- package/dist/Card/HorizontalCard/types.js.map +1 -0
- package/dist/Card/{Card.cjs → VerticalCard/Card.cjs} +33 -9
- package/dist/Card/VerticalCard/Card.cjs.map +1 -0
- package/dist/Card/{Card.d.ts → VerticalCard/Card.d.ts} +2 -1
- package/dist/Card/{Card.js → VerticalCard/Card.js} +30 -8
- package/dist/Card/VerticalCard/Card.js.map +1 -0
- package/dist/Card/{CardBottomSection.cjs → VerticalCard/CardBottomSection.cjs} +42 -25
- package/dist/Card/VerticalCard/CardBottomSection.cjs.map +1 -0
- package/dist/Card/{CardBottomSection.d.ts → VerticalCard/CardBottomSection.d.ts} +4 -4
- package/dist/Card/{CardBottomSection.js → VerticalCard/CardBottomSection.js} +27 -11
- package/dist/Card/VerticalCard/CardBottomSection.js.map +1 -0
- package/dist/Card/{CardMiddleSection.cjs → VerticalCard/CardMiddleSection.cjs} +14 -13
- package/dist/Card/VerticalCard/CardMiddleSection.cjs.map +1 -0
- package/dist/Card/{CardMiddleSection.d.ts → VerticalCard/CardMiddleSection.d.ts} +2 -2
- package/dist/Card/{CardMiddleSection.js → VerticalCard/CardMiddleSection.js} +3 -2
- package/dist/Card/VerticalCard/CardMiddleSection.js.map +1 -0
- package/dist/Card/{CardTopSection.cjs → VerticalCard/CardTopSection.cjs} +14 -12
- package/dist/Card/VerticalCard/CardTopSection.cjs.map +1 -0
- package/dist/Card/{CardTopSection.d.ts → VerticalCard/CardTopSection.d.ts} +5 -5
- package/dist/Card/{CardTopSection.js → VerticalCard/CardTopSection.js} +12 -10
- package/dist/Card/VerticalCard/CardTopSection.js.map +1 -0
- package/dist/Card/VerticalCard/index.cjs +88 -0
- package/dist/Card/VerticalCard/index.cjs.map +1 -0
- package/dist/Card/VerticalCard/index.d.ts +7 -0
- package/dist/Card/VerticalCard/index.js +8 -0
- package/dist/Card/VerticalCard/index.js.map +1 -0
- package/dist/Card/index.cjs +8 -64
- package/dist/Card/index.cjs.map +1 -1
- package/dist/Card/index.d.ts +2 -7
- package/dist/Card/index.js +2 -7
- package/dist/Card/index.js.map +1 -1
- package/dist/Chips/ActionChip.cjs +24 -23
- package/dist/Chips/ActionChip.cjs.map +1 -1
- package/dist/Chips/ActionChip.js +24 -25
- package/dist/Chips/ActionChip.js.map +1 -1
- package/dist/Chips/ChipTypes.d.ts +3 -3
- package/dist/Chips/ChoiceChips.cjs +6 -2
- package/dist/Chips/ChoiceChips.cjs.map +1 -1
- package/dist/Chips/ChoiceChips.js +5 -2
- package/dist/Chips/ChoiceChips.js.map +1 -1
- package/dist/Chips/FilterChip.cjs +24 -23
- package/dist/Chips/FilterChip.cjs.map +1 -1
- package/dist/Chips/FilterChip.js +24 -25
- package/dist/Chips/FilterChip.js.map +1 -1
- package/dist/Chips/InputChip.cjs +42 -40
- package/dist/Chips/InputChip.cjs.map +1 -1
- package/dist/Chips/InputChip.js +41 -41
- package/dist/Chips/InputChip.js.map +1 -1
- package/dist/ChipsInput/ChipInputField.cjs +2 -0
- package/dist/ChipsInput/ChipInputField.cjs.map +1 -1
- package/dist/ChipsInput/ChipInputField.js +2 -0
- package/dist/ChipsInput/ChipInputField.js.map +1 -1
- package/dist/Dropdown/CommonStyling.cjs +1 -1
- package/dist/Dropdown/CommonStyling.cjs.map +1 -1
- package/dist/Dropdown/CommonStyling.js +1 -1
- package/dist/Dropdown/CommonStyling.js.map +1 -1
- package/dist/Dropdown/DropdownButton.cjs +3 -3
- package/dist/Dropdown/DropdownButton.cjs.map +1 -1
- package/dist/Dropdown/DropdownButton.d.ts +5 -1
- package/dist/Dropdown/DropdownButton.js +3 -4
- package/dist/Dropdown/DropdownButton.js.map +1 -1
- package/dist/Dropdown/DropdownFilter.cjs +1 -1
- package/dist/Dropdown/DropdownFilter.cjs.map +1 -1
- package/dist/Dropdown/DropdownFilter.js +1 -1
- package/dist/Dropdown/DropdownFilter.js.map +1 -1
- package/dist/Dropdown/index.cjs +4 -4
- package/dist/Dropdown/index.cjs.map +1 -1
- package/dist/Dropdown/index.d.ts +4 -5
- package/dist/Dropdown/index.js +4 -5
- package/dist/Dropdown/index.js.map +1 -1
- package/dist/Footer/Components/FooterNavSection.cjs +1 -0
- package/dist/Footer/Components/FooterNavSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNavSection.js +1 -0
- package/dist/Footer/Components/FooterNavSection.js.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs +1 -0
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.cjs.map +1 -1
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js +1 -0
- package/dist/Footer/Components/FooterNewsletterAndSocialSection.js.map +1 -1
- package/dist/Footer/Components/FooterTop.cjs +1 -0
- package/dist/Footer/Components/FooterTop.cjs.map +1 -1
- package/dist/Footer/Components/FooterTop.js +1 -0
- package/dist/Footer/Components/FooterTop.js.map +1 -1
- package/dist/Footer/Footer.cjs +3 -1
- package/dist/Footer/Footer.cjs.map +1 -1
- package/dist/Footer/Footer.js +3 -1
- package/dist/Footer/Footer.js.map +1 -1
- package/dist/Footer/SiteFooter.cjs +1 -0
- package/dist/Footer/SiteFooter.cjs.map +1 -1
- package/dist/Footer/SiteFooter.js +1 -0
- package/dist/Footer/SiteFooter.js.map +1 -1
- package/dist/GlobalNavigationBar/__tests__/GlobalNavigationBar.tests.d.ts +1 -0
- package/dist/GlobalNavigationBar/__tests__/Logo.tests.d.ts +1 -0
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.js +1 -1
- package/dist/GlobalNavigationBar/desktop/MainMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs +2 -2
- package/dist/GlobalNavigationBar/desktop/UserMenu.cjs.map +1 -1
- package/dist/GlobalNavigationBar/desktop/UserMenu.js +2 -2
- package/dist/GlobalNavigationBar/desktop/UserMenu.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuContent.js.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs +5 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.cjs.map +1 -1
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.d.ts +2 -0
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js +2 -2
- package/dist/GlobalNavigationBar/mobile/MobileMenuHeader.js.map +1 -1
- package/dist/InputFields/NumberField.cjs +139 -63
- package/dist/InputFields/NumberField.cjs.map +1 -1
- package/dist/InputFields/NumberField.d.ts +4 -1
- package/dist/InputFields/NumberField.js +138 -63
- package/dist/InputFields/NumberField.js.map +1 -1
- package/dist/InputFields/SearchBar.cjs +78 -7
- package/dist/InputFields/SearchBar.cjs.map +1 -1
- package/dist/InputFields/SearchBar.d.ts +9 -0
- package/dist/InputFields/SearchBar.js +75 -7
- package/dist/InputFields/SearchBar.js.map +1 -1
- package/dist/InputFields/components/SearchBarInput.cjs +6 -3
- package/dist/InputFields/components/SearchBarInput.cjs.map +1 -1
- package/dist/InputFields/components/SearchBarInput.d.ts +1 -0
- package/dist/InputFields/components/SearchBarInput.js +6 -3
- package/dist/InputFields/components/SearchBarInput.js.map +1 -1
- package/dist/InputFields/styling.cjs +1 -1
- package/dist/InputFields/styling.cjs.map +1 -1
- package/dist/InputFields/styling.js +1 -1
- package/dist/InputFields/styling.js.map +1 -1
- package/dist/List/ListRow.cjs +24 -3
- package/dist/List/ListRow.cjs.map +1 -1
- package/dist/List/ListRow.d.ts +3 -0
- package/dist/List/ListRow.js +22 -3
- package/dist/List/ListRow.js.map +1 -1
- package/dist/MenuItem/MenuItem.cjs +5 -5
- package/dist/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/MenuItem/MenuItem.js +5 -5
- package/dist/MenuItem/MenuItem.js.map +1 -1
- package/dist/Modals/ModalContainer.cjs.map +1 -1
- package/dist/Modals/ModalContainer.js.map +1 -1
- package/dist/Popover/Popover.cjs +49 -46
- package/dist/Popover/Popover.cjs.map +1 -1
- package/dist/Popover/Popover.d.ts +1 -0
- package/dist/Popover/Popover.js +49 -45
- package/dist/Popover/Popover.js.map +1 -1
- package/dist/ProfileButton/ProfileButton.cjs +5 -3
- package/dist/ProfileButton/ProfileButton.cjs.map +1 -1
- package/dist/ProfileButton/ProfileButton.d.ts +3 -0
- package/dist/ProfileButton/ProfileButton.js +2 -2
- package/dist/ProfileButton/ProfileButton.js.map +1 -1
- package/dist/SideMenu/SideMenu.cjs +49 -0
- package/dist/SideMenu/SideMenu.cjs.map +1 -0
- package/dist/SideMenu/SideMenu.d.ts +4 -0
- package/dist/SideMenu/SideMenu.js +31 -0
- package/dist/SideMenu/SideMenu.js.map +1 -0
- package/dist/SideMenu/SideMenuBody.cjs +64 -0
- package/dist/SideMenu/SideMenuBody.cjs.map +1 -0
- package/dist/SideMenu/SideMenuBody.d.ts +2 -0
- package/dist/SideMenu/SideMenuBody.js +43 -0
- package/dist/SideMenu/SideMenuBody.js.map +1 -0
- package/dist/SideMenu/SideMenuFooter.cjs +74 -0
- package/dist/SideMenu/SideMenuFooter.cjs.map +1 -0
- package/dist/SideMenu/SideMenuFooter.d.ts +2 -0
- package/dist/SideMenu/SideMenuFooter.js +51 -0
- package/dist/SideMenu/SideMenuFooter.js.map +1 -0
- package/dist/SideMenu/SideMenuHeader.cjs +68 -0
- package/dist/SideMenu/SideMenuHeader.cjs.map +1 -0
- package/dist/SideMenu/SideMenuHeader.d.ts +2 -0
- package/dist/SideMenu/SideMenuHeader.js +48 -0
- package/dist/SideMenu/SideMenuHeader.js.map +1 -0
- package/dist/SideMenu/index.cjs +33 -0
- package/dist/SideMenu/index.cjs.map +1 -0
- package/dist/SideMenu/index.d.ts +2 -0
- package/dist/SideMenu/index.js +3 -0
- package/dist/SideMenu/index.js.map +1 -0
- package/dist/SideMenu/types.cjs +6 -0
- package/dist/SideMenu/types.cjs.map +1 -0
- package/dist/SideMenu/types.d.ts +27 -0
- package/dist/SideMenu/types.js +2 -0
- package/dist/SideMenu/types.js.map +1 -0
- package/dist/SkipToContent/SkipToContent.cjs +1 -3
- package/dist/SkipToContent/SkipToContent.cjs.map +1 -1
- package/dist/SkipToContent/SkipToContent.js +1 -1
- package/dist/SkipToContent/SkipToContent.js.map +1 -1
- package/dist/Switcher/MobileSwitcherMenu.cjs +1 -1
- package/dist/Switcher/MobileSwitcherMenu.cjs.map +1 -1
- package/dist/Switcher/MobileSwitcherMenu.js +1 -1
- package/dist/Switcher/MobileSwitcherMenu.js.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.cjs +16 -16
- package/dist/Switcher/SwitcherMenuItem.cjs.map +1 -1
- package/dist/Switcher/SwitcherMenuItem.d.ts +9 -2
- package/dist/Switcher/SwitcherMenuItem.js +16 -10
- package/dist/Switcher/SwitcherMenuItem.js.map +1 -1
- package/dist/Table/Table.cjs +3 -3
- package/dist/Table/Table.cjs.map +1 -1
- package/dist/Table/Table.js +3 -3
- package/dist/Table/Table.js.map +1 -1
- package/dist/Table/TableBody.cjs +4 -2
- package/dist/Table/TableBody.cjs.map +1 -1
- package/dist/Table/TableBody.js +5 -3
- package/dist/Table/TableBody.js.map +1 -1
- package/dist/Table/TableFooter.cjs +5 -3
- package/dist/Table/TableFooter.cjs.map +1 -1
- package/dist/Table/TableFooter.js +5 -3
- package/dist/Table/TableFooter.js.map +1 -1
- package/dist/Table/TableStyles.cjs +17 -13
- package/dist/Table/TableStyles.cjs.map +1 -1
- package/dist/Table/TableStyles.d.ts +1 -0
- package/dist/Table/TableStyles.js +13 -12
- package/dist/Table/TableStyles.js.map +1 -1
- package/dist/Table/TableTypes.d.ts +4 -0
- package/dist/Tabs/HorizontalTabs.cjs +3 -1
- package/dist/Tabs/HorizontalTabs.cjs.map +1 -1
- package/dist/Tabs/HorizontalTabs.js +3 -1
- package/dist/Tabs/HorizontalTabs.js.map +1 -1
- package/dist/Tabs/__tests__/Tablist.tests.d.ts +2 -0
- package/dist/Toasters/Toast.cjs +1 -3
- package/dist/Toasters/Toast.cjs.map +1 -1
- package/dist/Toasters/Toast.js +1 -1
- package/dist/Toasters/Toast.js.map +1 -1
- package/dist/Toggles/ToggleButton.cjs +5 -2
- package/dist/Toggles/ToggleButton.cjs.map +1 -1
- package/dist/Toggles/ToggleButton.d.ts +2 -1
- package/dist/Toggles/ToggleButton.js +5 -2
- package/dist/Toggles/ToggleButton.js.map +1 -1
- package/dist/Toggles/ToggleSwitch.cjs +1 -0
- package/dist/Toggles/ToggleSwitch.cjs.map +1 -1
- package/dist/Toggles/ToggleSwitch.js +1 -0
- package/dist/Toggles/ToggleSwitch.js.map +1 -1
- package/dist/Tooltips/TooltipTypes.cjs.map +1 -1
- package/dist/Tooltips/TooltipTypes.d.ts +1 -1
- package/dist/Tooltips/TooltipTypes.js.map +1 -1
- package/dist/Tooltips/TooltipWrapper.cjs +19 -4
- package/dist/Tooltips/TooltipWrapper.cjs.map +1 -1
- package/dist/Tooltips/TooltipWrapper.d.ts +1 -1
- package/dist/Tooltips/TooltipWrapper.js +16 -4
- package/dist/Tooltips/TooltipWrapper.js.map +1 -1
- package/dist/common/ActionWithin.cjs.map +1 -1
- package/dist/common/ActionWithin.js.map +1 -1
- package/dist/index.cjs +14 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/styles/global.cjs +1 -1
- package/dist/styles/global.cjs.map +1 -1
- package/dist/styles/global.js +1 -1
- package/dist/styles/global.js.map +1 -1
- package/dist/styles/index.cjs +0 -7
- package/dist/styles/index.cjs.map +1 -1
- package/dist/styles/index.d.ts +0 -2
- package/dist/styles/index.js +0 -2
- package/dist/styles/index.js.map +1 -1
- package/dist/styles/typography.cjs +4 -9
- package/dist/styles/typography.cjs.map +1 -1
- package/dist/styles/typography.d.ts +0 -4
- package/dist/styles/typography.js +3 -8
- package/dist/styles/typography.js.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.ts +0 -8
- package/dist/types.js.map +1 -1
- package/package.json +6 -1
- package/dist/Card/Card.cjs.map +0 -1
- package/dist/Card/Card.js.map +0 -1
- package/dist/Card/CardBottomSection.cjs.map +0 -1
- package/dist/Card/CardBottomSection.js.map +0 -1
- package/dist/Card/CardMiddleSection.cjs.map +0 -1
- package/dist/Card/CardMiddleSection.js.map +0 -1
- package/dist/Card/CardTopSection.cjs.map +0 -1
- package/dist/Card/CardTopSection.js.map +0 -1
|
@@ -33,6 +33,8 @@ var AccordionItem = function AccordionItem(props) {
|
|
|
33
33
|
id: id,
|
|
34
34
|
displaySeparator: !isActive && !isLast,
|
|
35
35
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_styles.ItemHeaderContainer, {
|
|
36
|
+
role: "button",
|
|
37
|
+
id: "itemHeaderFor_".concat(id),
|
|
36
38
|
tabIndex: !disabled ? 0 : undefined,
|
|
37
39
|
onClick: function onClick() {
|
|
38
40
|
if (!disabled) {
|
|
@@ -56,8 +58,8 @@ var AccordionItem = function AccordionItem(props) {
|
|
|
56
58
|
size: "20px"
|
|
57
59
|
})]
|
|
58
60
|
}), isActive && /*#__PURE__*/(0, _jsxRuntime.jsx)(_styles.ItemBodyContainer, {
|
|
61
|
+
"aria-describedby": "itemHeaderFor_".concat(id),
|
|
59
62
|
padding: props.padding,
|
|
60
|
-
margin: props.margin,
|
|
61
63
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_.ComponentS, {
|
|
62
64
|
children: props.children
|
|
63
65
|
})
|
|
@@ -69,8 +71,7 @@ AccordionItem.propTypes = {
|
|
|
69
71
|
onSelect: _propTypes.default.func.isRequired,
|
|
70
72
|
isActive: _propTypes.default.bool.isRequired,
|
|
71
73
|
isLast: _propTypes.default.bool.isRequired,
|
|
72
|
-
padding: _propTypes.default.string
|
|
73
|
-
margin: _propTypes.default.string
|
|
74
|
+
padding: _propTypes.default.string
|
|
74
75
|
};
|
|
75
76
|
var _default = AccordionItem;
|
|
76
77
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Accordion/AccordionItem.tsx"],"names":["AccordionItem","props","id","onSelect","isActive","title","icon","disabled","isLast","undefined","e","key","defaultOnMouseDownHandler","React","cloneElement","size","COLORS","neutral_800","neutral_600","padding","
|
|
1
|
+
{"version":3,"sources":["../../src/Accordion/AccordionItem.tsx"],"names":["AccordionItem","props","id","onSelect","isActive","title","icon","disabled","isLast","undefined","e","key","defaultOnMouseDownHandler","React","cloneElement","size","COLORS","neutral_800","neutral_600","padding","children"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AAEA;;AACA;;;;AASA,IAAMA,aAA+D,GAAG,SAAlEA,aAAkE,CAACC,KAAD,EAAoC;AAC1G,MAAQC,EAAR,GAAkED,KAAlE,CAAQC,EAAR;AAAA,MAAYC,QAAZ,GAAkEF,KAAlE,CAAYE,QAAZ;AAAA,MAAsBC,QAAtB,GAAkEH,KAAlE,CAAsBG,QAAtB;AAAA,MAAgCC,KAAhC,GAAkEJ,KAAlE,CAAgCI,KAAhC;AAAA,MAAuCC,IAAvC,GAAkEL,KAAlE,CAAuCK,IAAvC;AAAA,MAA6CC,QAA7C,GAAkEN,KAAlE,CAA6CM,QAA7C;AAAA,MAAuDC,MAAvD,GAAkEP,KAAlE,CAAuDO,MAAvD;AAEA,sBACE,sBAAC,8BAAD;AAAwB,IAAA,EAAE,EAAEN,EAA5B;AAAgC,IAAA,gBAAgB,EAAE,CAACE,QAAD,IAAa,CAACI,MAAhE;AAAA,4BACE,sBAAC,2BAAD;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,EAAE,0BAAmBN,EAAnB,CAFJ;AAGE,MAAA,QAAQ,EAAE,CAACK,QAAD,GAAY,CAAZ,GAAgBE,SAH5B;AAIE,MAAA,OAAO,EAAE,mBAAM;AACb,YAAI,CAACF,QAAL,EAAe;AACbJ,UAAAA,QAAQ,CAACD,EAAD,CAAR;AACD;AACF,OARH;AASE,MAAA,SAAS,EAAE,mBAACQ,CAAD,EAAY;AACrB,YAAIA,CAAC,CAACC,GAAF,KAAU,OAAd,EAAuBR,QAAQ,CAACD,EAAD,CAAR;AACxB,OAXH;AAYE,MAAA,WAAW,EAAEU,iCAZf;AAaE,MAAA,SAAS,EAAE,CAACR,QAAQ,GAAG,QAAH,GAAc,EAAvB,KAA8BG,QAAQ,GAAG,WAAH,GAAiB,EAAvD,CAbb;AAAA,iBAcGD,IAAI,iBAAIO,eAAMC,YAAN,CAAmBR,IAAnB,EAA+C;AAAES,QAAAA,IAAI,EAAE;AAAR,OAA/C,CAdX,eAeE;AAAA,kBAAOV;AAAP,QAfF,EAgBGD,QAAQ,gBAAG,qBAAC,kBAAD,CAAa,SAAb;AAAuB,QAAA,KAAK,EAAEY,SAAOC,WAArC;AAAkD,QAAA,IAAI,EAAC;AAAvD,QAAH,gBAAsE,qBAAC,kBAAD,CAAa,WAAb;AAAyB,QAAA,KAAK,EAAED,SAAOE,WAAvC;AAAoD,QAAA,IAAI,EAAC;AAAzD,QAhBjF;AAAA,MADF,EAmBGd,QAAQ,iBACP,qBAAC,yBAAD;AAAmB,kDAAmCF,EAAnC,CAAnB;AAA4D,MAAA,OAAO,EAAED,KAAK,CAACkB,OAA3E;AAAA,6BACE,qBAAC,YAAD;AAAA,kBAAalB,KAAK,CAACmB;AAAnB;AADF,MApBJ;AAAA,IADF;AA2BD,CA9BD;;;AANEjB,EAAAA,Q;AACAC,EAAAA,Q;AACAI,EAAAA,M;AACAW,EAAAA,O;;eAmCanB,a","sourcesContent":["import React from 'react';\nimport { COLORS, ComponentM, ComponentS } from '..';\nimport { SystemIcons } from '../icons';\nimport { AccordionItemProps } from './AccordionMenu';\nimport { AccordionItemContainer, ItemBodyContainer, ItemHeaderContainer } from './styles';\nimport { defaultOnMouseDownHandler } from '../common';\n\ninterface AccordionItemPropsInner extends AccordionItemProps {\n onSelect: (id: string) => void;\n isActive: boolean;\n isLast: boolean;\n padding?: string;\n}\n\nconst AccordionItem: React.FunctionComponent<AccordionItemPropsInner> = (props: AccordionItemPropsInner) => {\n const { id, onSelect, isActive, title, icon, disabled, isLast } = props;\n\n return (\n <AccordionItemContainer id={id} displaySeparator={!isActive && !isLast}>\n <ItemHeaderContainer\n role=\"button\"\n id={`itemHeaderFor_${id}`}\n tabIndex={!disabled ? 0 : undefined}\n onClick={() => {\n if (!disabled) {\n onSelect(id);\n }\n }}\n onKeyDown={(e: any) => {\n if (e.key === 'Enter') onSelect(id);\n }}\n onMouseDown={defaultOnMouseDownHandler}\n className={(isActive ? 'active' : '') + (disabled ? ' disabled' : '')}>\n {icon && React.cloneElement(icon as React.ReactElement, { size: '24px' })}\n <span>{title}</span>\n {isActive ? <SystemIcons.ChevronUp color={COLORS.neutral_800} size=\"20px\" /> : <SystemIcons.ChevronDown color={COLORS.neutral_600} size=\"20px\" />}\n </ItemHeaderContainer>\n {isActive && (\n <ItemBodyContainer aria-describedby={`itemHeaderFor_${id}`} padding={props.padding}>\n <ComponentS>{props.children}</ComponentS>\n </ItemBodyContainer>\n )}\n </AccordionItemContainer>\n );\n};\n\nexport default AccordionItem;\n"],"file":"AccordionItem.cjs"}
|
|
@@ -19,6 +19,8 @@ var AccordionItem = function AccordionItem(props) {
|
|
|
19
19
|
id: id,
|
|
20
20
|
displaySeparator: !isActive && !isLast,
|
|
21
21
|
children: [/*#__PURE__*/_jsxs(ItemHeaderContainer, {
|
|
22
|
+
role: "button",
|
|
23
|
+
id: "itemHeaderFor_".concat(id),
|
|
22
24
|
tabIndex: !disabled ? 0 : undefined,
|
|
23
25
|
onClick: function onClick() {
|
|
24
26
|
if (!disabled) {
|
|
@@ -42,8 +44,8 @@ var AccordionItem = function AccordionItem(props) {
|
|
|
42
44
|
size: "20px"
|
|
43
45
|
})]
|
|
44
46
|
}), isActive && /*#__PURE__*/_jsx(ItemBodyContainer, {
|
|
47
|
+
"aria-describedby": "itemHeaderFor_".concat(id),
|
|
45
48
|
padding: props.padding,
|
|
46
|
-
margin: props.margin,
|
|
47
49
|
children: /*#__PURE__*/_jsx(ComponentS, {
|
|
48
50
|
children: props.children
|
|
49
51
|
})
|
|
@@ -55,8 +57,7 @@ AccordionItem.propTypes = {
|
|
|
55
57
|
onSelect: _pt.func.isRequired,
|
|
56
58
|
isActive: _pt.bool.isRequired,
|
|
57
59
|
isLast: _pt.bool.isRequired,
|
|
58
|
-
padding: _pt.string
|
|
59
|
-
margin: _pt.string
|
|
60
|
+
padding: _pt.string
|
|
60
61
|
};
|
|
61
62
|
export default AccordionItem;
|
|
62
63
|
//# sourceMappingURL=AccordionItem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Accordion/AccordionItem.tsx"],"names":["React","COLORS","ComponentS","SystemIcons","AccordionItemContainer","ItemBodyContainer","ItemHeaderContainer","defaultOnMouseDownHandler","AccordionItem","props","id","onSelect","isActive","title","icon","disabled","isLast","undefined","e","key","cloneElement","size","neutral_800","neutral_600","padding","
|
|
1
|
+
{"version":3,"sources":["../../src/Accordion/AccordionItem.tsx"],"names":["React","COLORS","ComponentS","SystemIcons","AccordionItemContainer","ItemBodyContainer","ItemHeaderContainer","defaultOnMouseDownHandler","AccordionItem","props","id","onSelect","isActive","title","icon","disabled","isLast","undefined","e","key","cloneElement","size","neutral_800","neutral_600","padding","children"],"mappings":";AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,MAAT,EAA6BC,UAA7B,QAA+C,IAA/C;AACA,SAASC,WAAT,QAA4B,UAA5B;AAEA,SAASC,sBAAT,EAAiCC,iBAAjC,EAAoDC,mBAApD,QAA+E,UAA/E;AACA,SAASC,yBAAT,QAA0C,WAA1C;;;;AASA,IAAMC,aAA+D,GAAG,SAAlEA,aAAkE,CAACC,KAAD,EAAoC;AAC1G,MAAQC,EAAR,GAAkED,KAAlE,CAAQC,EAAR;AAAA,MAAYC,QAAZ,GAAkEF,KAAlE,CAAYE,QAAZ;AAAA,MAAsBC,QAAtB,GAAkEH,KAAlE,CAAsBG,QAAtB;AAAA,MAAgCC,KAAhC,GAAkEJ,KAAlE,CAAgCI,KAAhC;AAAA,MAAuCC,IAAvC,GAAkEL,KAAlE,CAAuCK,IAAvC;AAAA,MAA6CC,QAA7C,GAAkEN,KAAlE,CAA6CM,QAA7C;AAAA,MAAuDC,MAAvD,GAAkEP,KAAlE,CAAuDO,MAAvD;AAEA,sBACE,MAAC,sBAAD;AAAwB,IAAA,EAAE,EAAEN,EAA5B;AAAgC,IAAA,gBAAgB,EAAE,CAACE,QAAD,IAAa,CAACI,MAAhE;AAAA,4BACE,MAAC,mBAAD;AACE,MAAA,IAAI,EAAC,QADP;AAEE,MAAA,EAAE,0BAAmBN,EAAnB,CAFJ;AAGE,MAAA,QAAQ,EAAE,CAACK,QAAD,GAAY,CAAZ,GAAgBE,SAH5B;AAIE,MAAA,OAAO,EAAE,mBAAM;AACb,YAAI,CAACF,QAAL,EAAe;AACbJ,UAAAA,QAAQ,CAACD,EAAD,CAAR;AACD;AACF,OARH;AASE,MAAA,SAAS,EAAE,mBAACQ,CAAD,EAAY;AACrB,YAAIA,CAAC,CAACC,GAAF,KAAU,OAAd,EAAuBR,QAAQ,CAACD,EAAD,CAAR;AACxB,OAXH;AAYE,MAAA,WAAW,EAAEH,yBAZf;AAaE,MAAA,SAAS,EAAE,CAACK,QAAQ,GAAG,QAAH,GAAc,EAAvB,KAA8BG,QAAQ,GAAG,WAAH,GAAiB,EAAvD,CAbb;AAAA,iBAcGD,IAAI,iBAAId,KAAK,CAACoB,YAAN,CAAmBN,IAAnB,EAA+C;AAAEO,QAAAA,IAAI,EAAE;AAAR,OAA/C,CAdX,eAeE;AAAA,kBAAOR;AAAP,QAfF,EAgBGD,QAAQ,gBAAG,KAAC,WAAD,CAAa,SAAb;AAAuB,QAAA,KAAK,EAAEX,MAAM,CAACqB,WAArC;AAAkD,QAAA,IAAI,EAAC;AAAvD,QAAH,gBAAsE,KAAC,WAAD,CAAa,WAAb;AAAyB,QAAA,KAAK,EAAErB,MAAM,CAACsB,WAAvC;AAAoD,QAAA,IAAI,EAAC;AAAzD,QAhBjF;AAAA,MADF,EAmBGX,QAAQ,iBACP,KAAC,iBAAD;AAAmB,kDAAmCF,EAAnC,CAAnB;AAA4D,MAAA,OAAO,EAAED,KAAK,CAACe,OAA3E;AAAA,6BACE,KAAC,UAAD;AAAA,kBAAaf,KAAK,CAACgB;AAAnB;AADF,MApBJ;AAAA,IADF;AA2BD,CA9BD;;;AANEd,EAAAA,Q;AACAC,EAAAA,Q;AACAI,EAAAA,M;AACAQ,EAAAA,O;;AAmCF,eAAehB,aAAf","sourcesContent":["import React from 'react';\nimport { COLORS, ComponentM, ComponentS } from '..';\nimport { SystemIcons } from '../icons';\nimport { AccordionItemProps } from './AccordionMenu';\nimport { AccordionItemContainer, ItemBodyContainer, ItemHeaderContainer } from './styles';\nimport { defaultOnMouseDownHandler } from '../common';\n\ninterface AccordionItemPropsInner extends AccordionItemProps {\n onSelect: (id: string) => void;\n isActive: boolean;\n isLast: boolean;\n padding?: string;\n}\n\nconst AccordionItem: React.FunctionComponent<AccordionItemPropsInner> = (props: AccordionItemPropsInner) => {\n const { id, onSelect, isActive, title, icon, disabled, isLast } = props;\n\n return (\n <AccordionItemContainer id={id} displaySeparator={!isActive && !isLast}>\n <ItemHeaderContainer\n role=\"button\"\n id={`itemHeaderFor_${id}`}\n tabIndex={!disabled ? 0 : undefined}\n onClick={() => {\n if (!disabled) {\n onSelect(id);\n }\n }}\n onKeyDown={(e: any) => {\n if (e.key === 'Enter') onSelect(id);\n }}\n onMouseDown={defaultOnMouseDownHandler}\n className={(isActive ? 'active' : '') + (disabled ? ' disabled' : '')}>\n {icon && React.cloneElement(icon as React.ReactElement, { size: '24px' })}\n <span>{title}</span>\n {isActive ? <SystemIcons.ChevronUp color={COLORS.neutral_800} size=\"20px\" /> : <SystemIcons.ChevronDown color={COLORS.neutral_600} size=\"20px\" />}\n </ItemHeaderContainer>\n {isActive && (\n <ItemBodyContainer aria-describedby={`itemHeaderFor_${id}`} padding={props.padding}>\n <ComponentS>{props.children}</ComponentS>\n </ItemBodyContainer>\n )}\n </AccordionItemContainer>\n );\n};\n\nexport default AccordionItem;\n"],"file":"AccordionItem.js"}
|
|
@@ -33,8 +33,7 @@ var AccordionMenu = function AccordionMenu(_ref) {
|
|
|
33
33
|
setSelectedItems = _ref.setSelectedItems,
|
|
34
34
|
onSelect = _ref.onSelect,
|
|
35
35
|
multipleActive = _ref.multipleActive,
|
|
36
|
-
padding = _ref.padding
|
|
37
|
-
margin = _ref.margin;
|
|
36
|
+
padding = _ref.padding;
|
|
38
37
|
|
|
39
38
|
var _React$useState = React.useState([]),
|
|
40
39
|
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
|
|
@@ -71,6 +70,9 @@ var AccordionMenu = function AccordionMenu(_ref) {
|
|
|
71
70
|
disabled: item.disabled,
|
|
72
71
|
id: item.id,
|
|
73
72
|
title: item.title,
|
|
73
|
+
"aria-expanded": !!getCollection().find(function (x) {
|
|
74
|
+
return x == item.id;
|
|
75
|
+
}),
|
|
74
76
|
icon: item.icon,
|
|
75
77
|
isActive: !!getCollection().find(function (x) {
|
|
76
78
|
return x == item.id;
|
|
@@ -78,7 +80,6 @@ var AccordionMenu = function AccordionMenu(_ref) {
|
|
|
78
80
|
isLast: items.indexOf(item) === items.length - 1,
|
|
79
81
|
onSelect: onSelected,
|
|
80
82
|
padding: padding,
|
|
81
|
-
margin: margin,
|
|
82
83
|
children: item.children
|
|
83
84
|
}, item.id);
|
|
84
85
|
})
|
|
@@ -97,8 +98,7 @@ AccordionMenu.propTypes = {
|
|
|
97
98
|
setSelectedItems: _propTypes.default.func,
|
|
98
99
|
onSelect: _propTypes.default.func,
|
|
99
100
|
multipleActive: _propTypes.default.bool,
|
|
100
|
-
padding: _propTypes.default.string
|
|
101
|
-
margin: _propTypes.default.string
|
|
101
|
+
padding: _propTypes.default.string
|
|
102
102
|
};
|
|
103
103
|
var _default = AccordionMenu;
|
|
104
104
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Accordion/AccordionMenu.tsx"],"names":["AccordionMenu","items","selectedItems","setSelectedItems","onSelect","multipleActive","padding","
|
|
1
|
+
{"version":3,"sources":["../../src/Accordion/AccordionMenu.tsx"],"names":["AccordionMenu","items","selectedItems","setSelectedItems","onSelect","multipleActive","padding","React","useState","builtinSelectedItems","builtinSetSelectedItems","getCollection","getUpdateFunction","onSelected","id","collection","updateFunc","isActive","find","x","filter","map","item","disabled","title","icon","indexOf","length","children"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;;;;;;;AAmBA,IAAMA,aAAsD,GAAG,SAAzDA,aAAyD,OAAmG;AAAA,MAAhGC,KAAgG,QAAhGA,KAAgG;AAAA,MAAzFC,aAAyF,QAAzFA,aAAyF;AAAA,MAA1EC,gBAA0E,QAA1EA,gBAA0E;AAAA,MAAxDC,QAAwD,QAAxDA,QAAwD;AAAA,MAA9CC,cAA8C,QAA9CA,cAA8C;AAAA,MAA9BC,OAA8B,QAA9BA,OAA8B;;AAChK,wBAAwDC,KAAK,CAACC,QAAN,CAAyB,EAAzB,CAAxD;AAAA;AAAA,MAAOC,oBAAP;AAAA,MAA6BC,uBAA7B;;AAEA,MAAMC,aAAa,GAAG,SAAhBA,aAAgB,GAAM;AAC1B,WAAOT,aAAa,GAAGA,aAAH,GAAmBO,oBAAvC;AACD,GAFD;;AAIA,MAAMG,iBAAiB,GAAG,SAApBA,iBAAoB,GAAM;AAC9B,WAAOT,gBAAgB,GAAGA,gBAAH,GAAsBO,uBAA7C;AACD,GAFD;;AAIA,MAAMG,UAAU,GAAG,SAAbA,UAAa,CAACC,EAAD,EAAgB;AACjC,QAAMC,UAAU,GAAGJ,aAAa,EAAhC;AACA,QAAMK,UAAU,GAAGJ,iBAAiB,EAApC;AAEA,QAAMK,QAAQ,GAAG,CAAC,CAACF,UAAU,CAACG,IAAX,CAAgB,UAACC,CAAD;AAAA,aAAOA,CAAC,IAAIL,EAAZ;AAAA,KAAhB,CAAnB;;AACA,QAAIT,cAAJ,EAAoB;AAClB,UAAIY,QAAJ,EAAcD,UAAU,CAACD,UAAU,CAACK,MAAX,CAAkB,UAACD,CAAD;AAAA,eAAOA,CAAC,IAAIL,EAAZ;AAAA,OAAlB,CAAD,CAAV,CAAd,KACKE,UAAU,4CAAKD,UAAL,IAAiBD,EAAjB,GAAV;AACN,KAHD,MAGOE,UAAU,CAACC,QAAQ,GAAG,EAAH,GAAQ,CAACH,EAAD,CAAjB,CAAV;;AAEPV,IAAAA,QAAQ,IAAIA,QAAQ,CAACU,EAAD,CAApB;AACD,GAXD;;AAaA,sBACE,qBAAC,4BAAD;AAAA,cACGb,KAAK,CAACoB,GAAN,CAAU,UAACC,IAAD;AAAA,0BACT,qBAAC,sBAAD;AAEE,QAAA,QAAQ,EAAEA,IAAI,CAACC,QAFjB;AAGE,QAAA,EAAE,EAAED,IAAI,CAACR,EAHX;AAIE,QAAA,KAAK,EAAEQ,IAAI,CAACE,KAJd;AAKE,yBAAe,CAAC,CAACb,aAAa,GAAGO,IAAhB,CAAqB,UAACC,CAAD;AAAA,iBAAOA,CAAC,IAAIG,IAAI,CAACR,EAAjB;AAAA,SAArB,CALnB;AAME,QAAA,IAAI,EAAEQ,IAAI,CAACG,IANb;AAOE,QAAA,QAAQ,EAAE,CAAC,CAACd,aAAa,GAAGO,IAAhB,CAAqB,UAACC,CAAD;AAAA,iBAAOA,CAAC,IAAIG,IAAI,CAACR,EAAjB;AAAA,SAArB,CAPd;AAQE,QAAA,MAAM,EAAEb,KAAK,CAACyB,OAAN,CAAcJ,IAAd,MAAwBrB,KAAK,CAAC0B,MAAN,GAAe,CARjD;AASE,QAAA,QAAQ,EAAEd,UATZ;AAUE,QAAA,OAAO,EAAEP,OAVX;AAAA,kBAWGgB,IAAI,CAACM;AAXR,SACON,IAAI,CAACR,EADZ,CADS;AAAA,KAAV;AADH,IADF;AAmBD,CA3CD;;;AAhBEb,EAAAA,K;AASAa,IAAAA,E;AACAS,IAAAA,Q;AACAC,IAAAA,K;AACAC,IAAAA,I;AACAG,IAAAA,Q;;AAZA1B,EAAAA,a;AACAC,EAAAA,gB;AACAC,EAAAA,Q;AACAC,EAAAA,c;AACAC,EAAAA,O;;eAwDaN,a","sourcesContent":["import * as React from 'react';\nimport AccordionItem from './AccordionItem';\nimport { AccordionMenuWrapper } from './styles';\n\nexport interface AccordionProps {\n items: AccordionItemProps[];\n selectedItems?: string[];\n setSelectedItems?: (a: string[]) => void;\n onSelect?: (id: string) => void;\n multipleActive?: boolean;\n padding?: string;\n}\n\nexport interface AccordionItemProps extends React.AriaAttributes {\n id: string;\n disabled?: boolean;\n title: string;\n icon?: React.ReactNode;\n children: React.ReactNode;\n}\n\nconst AccordionMenu: React.FunctionComponent<AccordionProps> = ({ items, selectedItems, setSelectedItems, onSelect, multipleActive, padding }: AccordionProps) => {\n const [builtinSelectedItems, builtinSetSelectedItems] = React.useState<string[]>([]);\n\n const getCollection = () => {\n return selectedItems ? selectedItems : builtinSelectedItems;\n };\n\n const getUpdateFunction = () => {\n return setSelectedItems ? setSelectedItems : builtinSetSelectedItems;\n };\n\n const onSelected = (id: string) => {\n const collection = getCollection();\n const updateFunc = getUpdateFunction();\n\n const isActive = !!collection.find((x) => x == id);\n if (multipleActive) {\n if (isActive) updateFunc(collection.filter((x) => x != id));\n else updateFunc([...collection, id]);\n } else updateFunc(isActive ? [] : [id]);\n\n onSelect && onSelect(id);\n };\n\n return (\n <AccordionMenuWrapper>\n {items.map((item) => (\n <AccordionItem\n key={item.id}\n disabled={item.disabled}\n id={item.id}\n title={item.title}\n aria-expanded={!!getCollection().find((x) => x == item.id)}\n icon={item.icon}\n isActive={!!getCollection().find((x) => x == item.id)}\n isLast={items.indexOf(item) === items.length - 1}\n onSelect={onSelected}\n padding={padding}>\n {item.children}\n </AccordionItem>\n ))}\n </AccordionMenuWrapper>\n );\n};\n\nexport default AccordionMenu;\n"],"file":"AccordionMenu.cjs"}
|
|
@@ -6,9 +6,8 @@ export interface AccordionProps {
|
|
|
6
6
|
onSelect?: (id: string) => void;
|
|
7
7
|
multipleActive?: boolean;
|
|
8
8
|
padding?: string;
|
|
9
|
-
margin?: string;
|
|
10
9
|
}
|
|
11
|
-
export interface AccordionItemProps {
|
|
10
|
+
export interface AccordionItemProps extends React.AriaAttributes {
|
|
12
11
|
id: string;
|
|
13
12
|
disabled?: boolean;
|
|
14
13
|
title: string;
|
|
@@ -12,8 +12,7 @@ var AccordionMenu = function AccordionMenu(_ref) {
|
|
|
12
12
|
setSelectedItems = _ref.setSelectedItems,
|
|
13
13
|
onSelect = _ref.onSelect,
|
|
14
14
|
multipleActive = _ref.multipleActive,
|
|
15
|
-
padding = _ref.padding
|
|
16
|
-
margin = _ref.margin;
|
|
15
|
+
padding = _ref.padding;
|
|
17
16
|
|
|
18
17
|
var _React$useState = React.useState([]),
|
|
19
18
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -50,6 +49,9 @@ var AccordionMenu = function AccordionMenu(_ref) {
|
|
|
50
49
|
disabled: item.disabled,
|
|
51
50
|
id: item.id,
|
|
52
51
|
title: item.title,
|
|
52
|
+
"aria-expanded": !!getCollection().find(function (x) {
|
|
53
|
+
return x == item.id;
|
|
54
|
+
}),
|
|
53
55
|
icon: item.icon,
|
|
54
56
|
isActive: !!getCollection().find(function (x) {
|
|
55
57
|
return x == item.id;
|
|
@@ -57,7 +59,6 @@ var AccordionMenu = function AccordionMenu(_ref) {
|
|
|
57
59
|
isLast: items.indexOf(item) === items.length - 1,
|
|
58
60
|
onSelect: onSelected,
|
|
59
61
|
padding: padding,
|
|
60
|
-
margin: margin,
|
|
61
62
|
children: item.children
|
|
62
63
|
}, item.id);
|
|
63
64
|
})
|
|
@@ -76,8 +77,7 @@ AccordionMenu.propTypes = {
|
|
|
76
77
|
setSelectedItems: _pt.func,
|
|
77
78
|
onSelect: _pt.func,
|
|
78
79
|
multipleActive: _pt.bool,
|
|
79
|
-
padding: _pt.string
|
|
80
|
-
margin: _pt.string
|
|
80
|
+
padding: _pt.string
|
|
81
81
|
};
|
|
82
82
|
export default AccordionMenu;
|
|
83
83
|
//# sourceMappingURL=AccordionMenu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Accordion/AccordionMenu.tsx"],"names":["React","AccordionItem","AccordionMenuWrapper","AccordionMenu","items","selectedItems","setSelectedItems","onSelect","multipleActive","padding","
|
|
1
|
+
{"version":3,"sources":["../../src/Accordion/AccordionMenu.tsx"],"names":["React","AccordionItem","AccordionMenuWrapper","AccordionMenu","items","selectedItems","setSelectedItems","onSelect","multipleActive","padding","useState","builtinSelectedItems","builtinSetSelectedItems","getCollection","getUpdateFunction","onSelected","id","collection","updateFunc","isActive","find","x","filter","map","item","disabled","title","icon","indexOf","length","children"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport AccordionItem from './AccordionItem';\nimport { AccordionMenuWrapper } from './styles';\n\nexport interface AccordionProps {\n items: AccordionItemProps[];\n selectedItems?: string[];\n setSelectedItems?: (a: string[]) => void;\n onSelect?: (id: string) => void;\n multipleActive?: boolean;\n padding?: string;\n}\n\nexport interface AccordionItemProps extends React.AriaAttributes {\n id: string;\n disabled?: boolean;\n title: string;\n icon?: React.ReactNode;\n children: React.ReactNode;\n}\n\nconst AccordionMenu: React.FunctionComponent<AccordionProps> = ({ items, selectedItems, setSelectedItems, onSelect, multipleActive, padding }: AccordionProps) => {\n const [builtinSelectedItems, builtinSetSelectedItems] = React.useState<string[]>([]);\n\n const getCollection = () => {\n return selectedItems ? selectedItems : builtinSelectedItems;\n };\n\n const getUpdateFunction = () => {\n return setSelectedItems ? setSelectedItems : builtinSetSelectedItems;\n };\n\n const onSelected = (id: string) => {\n const collection = getCollection();\n const updateFunc = getUpdateFunction();\n\n const isActive = !!collection.find((x) => x == id);\n if (multipleActive) {\n if (isActive) updateFunc(collection.filter((x) => x != id));\n else updateFunc([...collection, id]);\n } else updateFunc(isActive ? [] : [id]);\n\n onSelect && onSelect(id);\n };\n\n return (\n <AccordionMenuWrapper>\n {items.map((item) => (\n <AccordionItem\n key={item.id}\n disabled={item.disabled}\n id={item.id}\n title={item.title}\n aria-expanded={!!getCollection().find((x) => x == item.id)}\n icon={item.icon}\n isActive={!!getCollection().find((x) => x == item.id)}\n isLast={items.indexOf(item) === items.length - 1}\n onSelect={onSelected}\n padding={padding}>\n {item.children}\n </AccordionItem>\n ))}\n </AccordionMenuWrapper>\n );\n};\n\nexport default AccordionMenu;\n"],"file":"AccordionMenu.js"}
|
|
@@ -43,7 +43,7 @@ var ContentAccordionItemHeaderIcon = _styledComponents.default.div(_templateObje
|
|
|
43
43
|
|
|
44
44
|
exports.ContentAccordionItemHeaderIcon = ContentAccordionItemHeaderIcon;
|
|
45
45
|
|
|
46
|
-
var ContentAccordionItemHeaderText = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["
|
|
46
|
+
var ContentAccordionItemHeaderText = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)([""])));
|
|
47
47
|
|
|
48
48
|
exports.ContentAccordionItemHeaderText = ContentAccordionItemHeaderText;
|
|
49
49
|
|
|
@@ -51,15 +51,15 @@ var ContentAccordionItemContent = _styledComponents.default.div(_templateObject4
|
|
|
51
51
|
|
|
52
52
|
exports.ContentAccordionItemContent = ContentAccordionItemContent;
|
|
53
53
|
|
|
54
|
-
var ContentAccordionItemContentHeader = _styledComponents.default.div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["
|
|
54
|
+
var ContentAccordionItemContentHeader = _styledComponents.default.div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)([""])));
|
|
55
55
|
|
|
56
56
|
exports.ContentAccordionItemContentHeader = ContentAccordionItemContentHeader;
|
|
57
57
|
|
|
58
|
-
var ContentAccordionItemContentBody = _styledComponents.default.div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["
|
|
58
|
+
var ContentAccordionItemContentBody = _styledComponents.default.div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)([""])));
|
|
59
59
|
|
|
60
60
|
exports.ContentAccordionItemContentBody = ContentAccordionItemContentBody;
|
|
61
61
|
|
|
62
|
-
var ContentAccordionItemContentFooter = _styledComponents.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["
|
|
62
|
+
var ContentAccordionItemContentFooter = _styledComponents.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)([""])));
|
|
63
63
|
|
|
64
64
|
exports.ContentAccordionItemContentFooter = ContentAccordionItemContentFooter;
|
|
65
65
|
|
|
@@ -67,7 +67,7 @@ var ContentAccordionItem = _styledComponents.default.div(_templateObject8 || (_t
|
|
|
67
67
|
|
|
68
68
|
exports.ContentAccordionItem = ContentAccordionItem;
|
|
69
69
|
|
|
70
|
-
var ContentAccordionWrapper = _styledComponents.default.div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n position: relative;\n\n ", ":last-child {\n border-bottom: 1px solid ", ";\n }\n\n &.small {\n min-width: 320px;\n max-width: 528px;\n\n ", " {\n gap: 8px;\n padding: 0 8px;\n ", "\n }\n\n ", " {\n padding: 0 8px 16px 40px;\n gap: 8px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n\n &.medium {\n min-width: 344px;\n max-width: 584px;\n\n ", " {\n gap: 12px;\n padding: 0 12px;\n ", "\n }\n\n ", " {\n padding: 8px 12px 24px 48px;\n gap: 12px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n
|
|
70
|
+
var ContentAccordionWrapper = _styledComponents.default.div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n position: relative;\n\n ", ":last-child {\n border-bottom: 1px solid ", ";\n }\n\n &.small {\n min-width: 320px;\n max-width: 528px;\n\n ", " {\n gap: 8px;\n padding: 0 8px;\n ", "\n }\n\n ", " {\n padding: 0 8px 16px 40px;\n gap: 8px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n\n &.medium {\n min-width: 344px;\n max-width: 584px;\n\n ", " {\n gap: 12px;\n padding: 0 12px;\n ", "\n }\n\n ", " {\n padding: 8px 12px 24px 48px;\n gap: 12px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n\n &.large {\n min-width: 384px;\n max-width: 656px;\n\n ", " {\n gap: 16px;\n padding: 0 16px;\n ", "\n }\n\n ", " {\n padding: 16px 16px 32px 56px;\n gap: 16px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n"])), ContentAccordionItem, _styles.COLORS.neutral_100, ContentAccordionItemHeader, (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Regular, null), ContentAccordionItemContent, ContentAccordionItemContentHeader, (0, _typography.ComponentSStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.black), ContentAccordionItemContentBody, (0, _typography.ParagraphSStyling)(_typography.ParagraphTextStyle.Regular, _styles.COLORS.black), ContentAccordionItemHeader, (0, _typography.ComponentMStyling)(_typography.ComponentTextStyle.Regular, null), ContentAccordionItemContent, ContentAccordionItemContentHeader, (0, _typography.ComponentMStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.black), ContentAccordionItemContentBody, (0, _typography.ParagraphMStyling)(_typography.ParagraphTextStyle.Regular, _styles.COLORS.black), ContentAccordionItemHeader, (0, _typography.ComponentLStyling)(_typography.ComponentTextStyle.Regular, null), ContentAccordionItemContent, ContentAccordionItemContentHeader, (0, _typography.ComponentLStyling)(_typography.ComponentTextStyle.Bold, _styles.COLORS.black), ContentAccordionItemContentBody, (0, _typography.ParagraphLStyling)(_typography.ParagraphTextStyle.Regular, _styles.COLORS.black));
|
|
71
71
|
|
|
72
72
|
exports.ContentAccordionWrapper = ContentAccordionWrapper;
|
|
73
73
|
|
|
@@ -84,14 +84,14 @@ var ContentAccordion = function ContentAccordion(props) {
|
|
|
84
84
|
setOpened(props.items.filter(function (item) {
|
|
85
85
|
return item.active;
|
|
86
86
|
}).map(function (item) {
|
|
87
|
-
return item.
|
|
87
|
+
return item.id;
|
|
88
88
|
}));
|
|
89
89
|
} else {
|
|
90
90
|
var _props$items$find;
|
|
91
91
|
|
|
92
92
|
var active = (_props$items$find = props.items.find(function (item) {
|
|
93
93
|
return !!item.active;
|
|
94
|
-
})) === null || _props$items$find === void 0 ? void 0 : _props$items$find.
|
|
94
|
+
})) === null || _props$items$find === void 0 ? void 0 : _props$items$find.id;
|
|
95
95
|
|
|
96
96
|
if (active) {
|
|
97
97
|
setOpened([active]);
|
|
@@ -102,25 +102,27 @@ var ContentAccordion = function ContentAccordion(props) {
|
|
|
102
102
|
var onItemClick = function onItemClick(item) {
|
|
103
103
|
if (item.disabled) return;
|
|
104
104
|
|
|
105
|
-
if (opened.includes(item.
|
|
105
|
+
if (opened.includes(item.id)) {
|
|
106
106
|
setOpened(opened.filter(function (key) {
|
|
107
|
-
return key !== item.
|
|
107
|
+
return key !== item.id;
|
|
108
108
|
}));
|
|
109
109
|
} else {
|
|
110
110
|
if (props.multi) {
|
|
111
|
-
setOpened([].concat((0, _toConsumableArray2.default)(opened), [item.
|
|
111
|
+
setOpened([].concat((0, _toConsumableArray2.default)(opened), [item.id]));
|
|
112
112
|
} else {
|
|
113
|
-
setOpened([item.
|
|
113
|
+
setOpened([item.id]);
|
|
114
114
|
}
|
|
115
115
|
}
|
|
116
116
|
};
|
|
117
117
|
|
|
118
118
|
var renderItem = function renderItem(item) {
|
|
119
|
-
var isActive = opened.includes(item.
|
|
119
|
+
var isActive = opened.includes(item.id);
|
|
120
120
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(ContentAccordionItem, {
|
|
121
|
-
id: "item_".concat(item.
|
|
121
|
+
id: "item_".concat(item.id),
|
|
122
122
|
className: ''.concat(isActive ? ' active' : '').concat(item.disabled ? ' disabled' : ''),
|
|
123
123
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(ContentAccordionItemHeader, {
|
|
124
|
+
role: "button",
|
|
125
|
+
id: "headerFor_".concat(item.id),
|
|
124
126
|
tabIndex: !item.disabled ? 0 : undefined,
|
|
125
127
|
onMouseDown: _common.defaultOnMouseDownHandler,
|
|
126
128
|
onClick: function onClick() {
|
|
@@ -135,6 +137,7 @@ var ContentAccordion = function ContentAccordion(props) {
|
|
|
135
137
|
children: item.title
|
|
136
138
|
})]
|
|
137
139
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(ContentAccordionItemContent, {
|
|
140
|
+
"aria-describedby": "headerFor_".concat(item.id),
|
|
138
141
|
children: [item.header && /*#__PURE__*/(0, _jsxRuntime.jsx)(ContentAccordionItemContentHeader, {
|
|
139
142
|
children: item.header
|
|
140
143
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(ContentAccordionItemContentBody, {
|
|
@@ -143,7 +146,7 @@ var ContentAccordion = function ContentAccordion(props) {
|
|
|
143
146
|
children: item.footer
|
|
144
147
|
})]
|
|
145
148
|
})]
|
|
146
|
-
}, item.
|
|
149
|
+
}, item.id);
|
|
147
150
|
};
|
|
148
151
|
|
|
149
152
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(ContentAccordionWrapper, {
|
|
@@ -157,7 +160,7 @@ var ContentAccordion = function ContentAccordion(props) {
|
|
|
157
160
|
exports.ContentAccordion = ContentAccordion;
|
|
158
161
|
ContentAccordion.propTypes = {
|
|
159
162
|
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
160
|
-
|
|
163
|
+
id: _propTypes.default.string.isRequired,
|
|
161
164
|
title: _propTypes.default.string.isRequired,
|
|
162
165
|
header: _propTypes.default.string,
|
|
163
166
|
body: _propTypes.default.any.isRequired,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Accordion/ContentAccordion.tsx"],"names":["ContentAccordionItemHeader","styled","div","COLORS","neutral_600","primary_700","primary_20","Z_INDEXES","hover","focusStyles","primary_800","primary_100","active","ContentAccordionItemHeaderIcon","ContentAccordionItemHeaderText","ContentAccordionItemContent","ContentAccordionItemContentHeader","ContentAccordionItemContentBody","ContentAccordionItemContentFooter","ContentAccordionItem","neutral_100","neutral_300","ContentAccordionWrapper","ComponentTextStyle","Regular","Bold","ContentAccordion","props","React","useState","opened","setOpened","useEffect","multi","items","filter","item","map","key","find","onItemClick","disabled","includes","renderItem","isActive","concat","undefined","defaultOnMouseDownHandler","event","title","header","body","footer","size","Size","Medium"],"mappings":"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","sourcesContent":["import React from 'react'\nimport styled from 'styled-components';\nimport {Size} from '../types';\nimport {SystemIcons} from '../icons';\nimport {ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle} from '../styles/typography';\nimport {COLORS, focusStyles} from '../styles';\nimport {Z_INDEXES} from '../styles/z-indexes';\nimport {defaultOnMouseDownHandler} from '../common';\n\n\nexport const ContentAccordionItemHeader = styled.div`\n display: flex;\n align-items: center;\n box-sizing: border-box;\n min-height: 48px;\n color: ${COLORS.neutral_600};\n cursor: pointer;\n\n &:hover {\n color: ${COLORS.primary_700};\n background-color: ${COLORS.primary_20};\n z-index: ${Z_INDEXES.hover};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &:active {\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_100};\n z-index: ${Z_INDEXES.active};\n }\n`;\n\nexport const ContentAccordionItemHeaderIcon = styled.div`\n width: 24px;\n height: 24px;\n\n svg {\n width: 24px;\n height: 24px;\n }\n`;\n\nexport const ContentAccordionItemHeaderText = styled.div`\n`;\n\nexport const ContentAccordionItemContent = styled.div`\n display: none;\n flex-direction: column;\n`;\n\nexport const ContentAccordionItemContentHeader = styled.div`\n`;\n\nexport const ContentAccordionItemContentBody = styled.div`\n`;\n\nexport const ContentAccordionItemContentFooter = styled.div`\n`;\n\nexport const ContentAccordionItem = styled.div`\n display: flex;\n flex-direction: column;\n border-top: 1px solid ${COLORS.neutral_100};\n\n &.active {\n ${ContentAccordionItemContent} {\n display: flex;\n }\n }\n\n &.disabled {\n ${ContentAccordionItemHeader} {\n color: ${COLORS.neutral_300};\n cursor: not-allowed;\n pointer-events: none;\n }\n }\n`;\n\nexport const ContentAccordionWrapper = styled.div`\n width: 100%;\n position: relative;\n\n ${ContentAccordionItem}:last-child {\n border-bottom: 1px solid ${COLORS.neutral_100};\n }\n\n &.small {\n min-width: 320px;\n max-width: 528px;\n\n ${ContentAccordionItemHeader} {\n gap: 8px;\n padding: 0 8px;\n ${ComponentSStyling(ComponentTextStyle.Regular, null)}\n }\n\n ${ContentAccordionItemContent} {\n padding: 0 8px 16px 40px;\n gap: 8px;\n\n ${ContentAccordionItemContentHeader} {\n ${ComponentSStyling(ComponentTextStyle.Bold, null)}\n }\n\n ${ContentAccordionItemContentBody} {\n ${ComponentSStyling(ComponentTextStyle.Regular, null)}\n }\n }\n }\n\n &.medium {\n min-width: 344px;\n max-width: 584px;\n\n ${ContentAccordionItemHeader} {\n gap: 12px;\n padding: 0 12px;\n ${ComponentMStyling(ComponentTextStyle.Regular, null)}\n }\n\n ${ContentAccordionItemContent} {\n padding: 8px 12px 24px 48px;\n gap: 12px;\n\n ${ContentAccordionItemContentHeader} {\n ${ComponentMStyling(ComponentTextStyle.Bold, null)}\n }\n\n ${ContentAccordionItemContentBody} {\n ${ComponentMStyling(ComponentTextStyle.Regular, null)}\n }\n\n }\n }\n\n &.large {\n min-width: 384px;\n max-width: 656px;\n\n ${ContentAccordionItemHeader} {\n gap: 16px;\n padding: 0 16px;\n ${ComponentLStyling(ComponentTextStyle.Regular, null)}\n }\n\n ${ContentAccordionItemContent} {\n padding: 16px 16px 32px 56px;\n gap: 16px;\n\n ${ContentAccordionItemContentHeader} {\n ${ComponentLStyling(ComponentTextStyle.Bold, null)}\n }\n\n ${ContentAccordionItemContentBody} {\n ${ComponentLStyling(ComponentTextStyle.Regular, null)}\n }\n }\n }\n`;\n\nexport interface ContentAccordionItem {\n key: string;\n title: string;\n header?: string;\n body: any;\n footer?: any;\n disabled?: boolean;\n active?: boolean;\n}\n\nexport interface ContentAccordionProps {\n items: ContentAccordionItem[];\n multi?: boolean;\n size?: Size.Small | Size.Medium | Size.Large;\n}\n\nexport const ContentAccordion: React.FunctionComponent<ContentAccordionProps> = (props) => {\n\n const [opened, setOpened] = React.useState<string[]>([]);\n\n React.useEffect(() => {\n if (props.multi) {\n setOpened(props.items.filter(item => item.active).map(item => item.key));\n } else {\n let active = props.items.find(item => !!item.active)?.key;\n if (active) {\n setOpened([active]);\n }\n }\n }, [props.items, props.multi]);\n\n const onItemClick = (item: ContentAccordionItem) => {\n if (item.disabled) return;\n if (opened.includes(item.key)) {\n setOpened(opened.filter(key => key !== item.key));\n } else {\n if (props.multi) {\n setOpened([...opened, item.key]);\n } else {\n setOpened([item.key]);\n }\n }\n }\n\n const renderItem = (item: ContentAccordionItem) => {\n const isActive = opened.includes(item.key);\n\n return (\n <ContentAccordionItem key={item.key}\n id={`item_${item.key}`}\n className={''.concat(isActive ? ' active' : '').concat(item.disabled ? ' disabled' : '')}>\n <ContentAccordionItemHeader tabIndex={!item.disabled ? 0 : undefined}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => !item.disabled && onItemClick(item)}\n onKeyPress={event => event.key === 'Enter' && onItemClick(item)}>\n <ContentAccordionItemHeaderIcon>\n {\n props.multi\n ? isActive\n ? <SystemIcons.Minus/>\n : <SystemIcons.Plus/>\n : isActive\n ? <SystemIcons.ChevronDown/>\n : <SystemIcons.ChevronRight/>\n }\n </ContentAccordionItemHeaderIcon>\n <ContentAccordionItemHeaderText>\n {item.title}\n </ContentAccordionItemHeaderText>\n </ContentAccordionItemHeader>\n <ContentAccordionItemContent>\n {\n item.header &&\n <ContentAccordionItemContentHeader>\n {item.header}\n </ContentAccordionItemContentHeader>\n }\n <ContentAccordionItemContentBody>\n {item.body}\n </ContentAccordionItemContentBody>\n {\n item.footer &&\n <ContentAccordionItemContentFooter>\n {item.footer}\n </ContentAccordionItemContentFooter>\n }\n </ContentAccordionItemContent>\n </ContentAccordionItem>\n );\n }\n\n return (\n <ContentAccordionWrapper className={''.concat(` ${props.size ?? Size.Medium}`)}>\n {props.items.map(item => renderItem(item))}\n </ContentAccordionWrapper>\n );\n};\n\nexport default ContentAccordion;\n"],"file":"ContentAccordion.cjs"}
|
|
1
|
+
{"version":3,"sources":["../../src/Accordion/ContentAccordion.tsx"],"names":["ContentAccordionItemHeader","styled","div","COLORS","neutral_600","primary_700","primary_20","Z_INDEXES","hover","focusStyles","primary_800","primary_100","active","ContentAccordionItemHeaderIcon","ContentAccordionItemHeaderText","ContentAccordionItemContent","ContentAccordionItemContentHeader","ContentAccordionItemContentBody","ContentAccordionItemContentFooter","ContentAccordionItem","neutral_100","neutral_300","ContentAccordionWrapper","ComponentTextStyle","Regular","Bold","black","ParagraphTextStyle","ContentAccordion","props","React","useState","opened","setOpened","useEffect","multi","items","filter","item","map","id","find","onItemClick","disabled","includes","key","renderItem","isActive","concat","undefined","defaultOnMouseDownHandler","event","title","header","body","footer","size","Size","Medium"],"mappings":"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","sourcesContent":["import React from 'react';\nimport styled from 'styled-components';\nimport { Size } from '../types';\nimport { SystemIcons } from '../icons';\nimport {\n ComponentLStyling,\n ComponentMStyling,\n ComponentSStyling,\n ComponentTextStyle,\n ParagraphLStyling,\n ParagraphMStyling,\n ParagraphSStyling,\n ParagraphTextStyle,\n} from '../styles/typography';\nimport { COLORS, focusStyles } from '../styles';\nimport { Z_INDEXES } from '../styles/z-indexes';\nimport { defaultOnMouseDownHandler } from '../common';\n\nexport const ContentAccordionItemHeader = styled.div`\n display: flex;\n align-items: center;\n box-sizing: border-box;\n min-height: 48px;\n color: ${COLORS.neutral_600};\n cursor: pointer;\n\n &:hover {\n color: ${COLORS.primary_700};\n background-color: ${COLORS.primary_20};\n z-index: ${Z_INDEXES.hover};\n }\n\n &:focus {\n ${focusStyles}\n }\n\n &:active {\n color: ${COLORS.primary_800};\n background-color: ${COLORS.primary_100};\n z-index: ${Z_INDEXES.active};\n }\n`;\n\nexport const ContentAccordionItemHeaderIcon = styled.div`\n width: 24px;\n height: 24px;\n\n svg {\n width: 24px;\n height: 24px;\n }\n`;\n\nexport const ContentAccordionItemHeaderText = styled.div``;\n\nexport const ContentAccordionItemContent = styled.div`\n display: none;\n flex-direction: column;\n`;\n\nexport const ContentAccordionItemContentHeader = styled.div``;\n\nexport const ContentAccordionItemContentBody = styled.div``;\n\nexport const ContentAccordionItemContentFooter = styled.div``;\n\nexport const ContentAccordionItem = styled.div`\n display: flex;\n flex-direction: column;\n border-top: 1px solid ${COLORS.neutral_100};\n\n &.active {\n ${ContentAccordionItemContent} {\n display: flex;\n }\n }\n\n &.disabled {\n ${ContentAccordionItemHeader} {\n color: ${COLORS.neutral_300};\n cursor: not-allowed;\n pointer-events: none;\n }\n }\n`;\n\nexport const ContentAccordionWrapper = styled.div`\n width: 100%;\n position: relative;\n\n ${ContentAccordionItem}:last-child {\n border-bottom: 1px solid ${COLORS.neutral_100};\n }\n\n &.small {\n min-width: 320px;\n max-width: 528px;\n\n ${ContentAccordionItemHeader} {\n gap: 8px;\n padding: 0 8px;\n ${ComponentSStyling(ComponentTextStyle.Regular, null)}\n }\n\n ${ContentAccordionItemContent} {\n padding: 0 8px 16px 40px;\n gap: 8px;\n\n ${ContentAccordionItemContentHeader} {\n ${ComponentSStyling(ComponentTextStyle.Bold, COLORS.black)}\n }\n\n ${ContentAccordionItemContentBody} {\n ${ParagraphSStyling(ParagraphTextStyle.Regular, COLORS.black)}\n }\n }\n }\n\n &.medium {\n min-width: 344px;\n max-width: 584px;\n\n ${ContentAccordionItemHeader} {\n gap: 12px;\n padding: 0 12px;\n ${ComponentMStyling(ComponentTextStyle.Regular, null)}\n }\n\n ${ContentAccordionItemContent} {\n padding: 8px 12px 24px 48px;\n gap: 12px;\n\n ${ContentAccordionItemContentHeader} {\n ${ComponentMStyling(ComponentTextStyle.Bold, COLORS.black)}\n }\n\n ${ContentAccordionItemContentBody} {\n ${ParagraphMStyling(ParagraphTextStyle.Regular, COLORS.black)}\n }\n }\n }\n\n &.large {\n min-width: 384px;\n max-width: 656px;\n\n ${ContentAccordionItemHeader} {\n gap: 16px;\n padding: 0 16px;\n ${ComponentLStyling(ComponentTextStyle.Regular, null)}\n }\n\n ${ContentAccordionItemContent} {\n padding: 16px 16px 32px 56px;\n gap: 16px;\n\n ${ContentAccordionItemContentHeader} {\n ${ComponentLStyling(ComponentTextStyle.Bold, COLORS.black)}\n }\n\n ${ContentAccordionItemContentBody} {\n ${ParagraphLStyling(ParagraphTextStyle.Regular, COLORS.black)}\n }\n }\n }\n`;\n\nexport interface ContentAccordionItem {\n id: string;\n title: string;\n header?: string;\n body: any;\n footer?: any;\n disabled?: boolean;\n active?: boolean;\n}\n\nexport interface ContentAccordionProps {\n items: ContentAccordionItem[];\n multi?: boolean;\n size?: Size.Small | Size.Medium | Size.Large;\n}\n\nexport const ContentAccordion: React.FunctionComponent<ContentAccordionProps> = (props) => {\n const [opened, setOpened] = React.useState<string[]>([]);\n\n React.useEffect(() => {\n if (props.multi) {\n setOpened(props.items.filter((item) => item.active).map((item) => item.id));\n } else {\n let active = props.items.find((item) => !!item.active)?.id;\n if (active) {\n setOpened([active]);\n }\n }\n }, [props.items, props.multi]);\n\n const onItemClick = (item: ContentAccordionItem) => {\n if (item.disabled) return;\n if (opened.includes(item.id)) {\n setOpened(opened.filter((key) => key !== item.id));\n } else {\n if (props.multi) {\n setOpened([...opened, item.id]);\n } else {\n setOpened([item.id]);\n }\n }\n };\n\n const renderItem = (item: ContentAccordionItem) => {\n const isActive = opened.includes(item.id);\n\n return (\n <ContentAccordionItem key={item.id} id={`item_${item.id}`} className={''.concat(isActive ? ' active' : '').concat(item.disabled ? ' disabled' : '')}>\n <ContentAccordionItemHeader\n role=\"button\"\n id={`headerFor_${item.id}`}\n tabIndex={!item.disabled ? 0 : undefined}\n onMouseDown={defaultOnMouseDownHandler}\n onClick={() => !item.disabled && onItemClick(item)}\n onKeyPress={(event) => event.key === 'Enter' && onItemClick(item)}>\n <ContentAccordionItemHeaderIcon>\n {props.multi ? isActive ? <SystemIcons.Minus /> : <SystemIcons.Plus /> : isActive ? <SystemIcons.ChevronDown /> : <SystemIcons.ChevronRight />}\n </ContentAccordionItemHeaderIcon>\n <ContentAccordionItemHeaderText>{item.title}</ContentAccordionItemHeaderText>\n </ContentAccordionItemHeader>\n <ContentAccordionItemContent aria-describedby={`headerFor_${item.id}`}>\n {item.header && <ContentAccordionItemContentHeader>{item.header}</ContentAccordionItemContentHeader>}\n <ContentAccordionItemContentBody>{item.body}</ContentAccordionItemContentBody>\n {item.footer && <ContentAccordionItemContentFooter>{item.footer}</ContentAccordionItemContentFooter>}\n </ContentAccordionItemContent>\n </ContentAccordionItem>\n );\n };\n\n return <ContentAccordionWrapper className={''.concat(` ${props.size ?? Size.Medium}`)}>{props.items.map((item) => renderItem(item))}</ContentAccordionWrapper>;\n};\n\nexport default ContentAccordion;\n"],"file":"ContentAccordion.cjs"}
|
|
@@ -10,7 +10,7 @@ export declare const ContentAccordionItemContentFooter: import("styled-component
|
|
|
10
10
|
export declare const ContentAccordionItem: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
11
11
|
export declare const ContentAccordionWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
|
|
12
12
|
export interface ContentAccordionItem {
|
|
13
|
-
|
|
13
|
+
id: string;
|
|
14
14
|
title: string;
|
|
15
15
|
header?: string;
|
|
16
16
|
body: any;
|
|
@@ -9,7 +9,7 @@ import React from 'react';
|
|
|
9
9
|
import styled from 'styled-components';
|
|
10
10
|
import { Size } from '../types';
|
|
11
11
|
import { SystemIcons } from '../icons';
|
|
12
|
-
import { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';
|
|
12
|
+
import { ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle, ParagraphLStyling, ParagraphMStyling, ParagraphSStyling, ParagraphTextStyle } from '../styles/typography';
|
|
13
13
|
import { COLORS, focusStyles } from '../styles';
|
|
14
14
|
import { Z_INDEXES } from '../styles/z-indexes';
|
|
15
15
|
import { defaultOnMouseDownHandler } from '../common';
|
|
@@ -17,13 +17,13 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
17
17
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
18
|
export var ContentAccordionItemHeader = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n align-items: center;\n box-sizing: border-box;\n min-height: 48px;\n color: ", ";\n cursor: pointer;\n\n &:hover {\n color: ", ";\n background-color: ", ";\n z-index: ", ";\n }\n\n &:focus {\n ", "\n }\n\n &:active {\n color: ", ";\n background-color: ", ";\n z-index: ", ";\n }\n"])), COLORS.neutral_600, COLORS.primary_700, COLORS.primary_20, Z_INDEXES.hover, focusStyles, COLORS.primary_800, COLORS.primary_100, Z_INDEXES.active);
|
|
19
19
|
export var ContentAccordionItemHeaderIcon = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n width: 24px;\n height: 24px;\n\n svg {\n width: 24px;\n height: 24px;\n }\n"])));
|
|
20
|
-
export var ContentAccordionItemHeaderText = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["
|
|
20
|
+
export var ContentAccordionItemHeaderText = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral([""])));
|
|
21
21
|
export var ContentAccordionItemContent = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n display: none;\n flex-direction: column;\n"])));
|
|
22
|
-
export var ContentAccordionItemContentHeader = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["
|
|
23
|
-
export var ContentAccordionItemContentBody = styled.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["
|
|
24
|
-
export var ContentAccordionItemContentFooter = styled.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["
|
|
22
|
+
export var ContentAccordionItemContentHeader = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral([""])));
|
|
23
|
+
export var ContentAccordionItemContentBody = styled.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral([""])));
|
|
24
|
+
export var ContentAccordionItemContentFooter = styled.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral([""])));
|
|
25
25
|
export var ContentAccordionItem = styled.div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n border-top: 1px solid ", ";\n\n &.active {\n ", " {\n display: flex;\n }\n }\n\n &.disabled {\n ", " {\n color: ", ";\n cursor: not-allowed;\n pointer-events: none;\n }\n }\n"])), COLORS.neutral_100, ContentAccordionItemContent, ContentAccordionItemHeader, COLORS.neutral_300);
|
|
26
|
-
export var ContentAccordionWrapper = styled.div(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n width: 100%;\n position: relative;\n\n ", ":last-child {\n border-bottom: 1px solid ", ";\n }\n\n &.small {\n min-width: 320px;\n max-width: 528px;\n\n ", " {\n gap: 8px;\n padding: 0 8px;\n ", "\n }\n\n ", " {\n padding: 0 8px 16px 40px;\n gap: 8px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n\n &.medium {\n min-width: 344px;\n max-width: 584px;\n\n ", " {\n gap: 12px;\n padding: 0 12px;\n ", "\n }\n\n ", " {\n padding: 8px 12px 24px 48px;\n gap: 12px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n
|
|
26
|
+
export var ContentAccordionWrapper = styled.div(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n width: 100%;\n position: relative;\n\n ", ":last-child {\n border-bottom: 1px solid ", ";\n }\n\n &.small {\n min-width: 320px;\n max-width: 528px;\n\n ", " {\n gap: 8px;\n padding: 0 8px;\n ", "\n }\n\n ", " {\n padding: 0 8px 16px 40px;\n gap: 8px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n\n &.medium {\n min-width: 344px;\n max-width: 584px;\n\n ", " {\n gap: 12px;\n padding: 0 12px;\n ", "\n }\n\n ", " {\n padding: 8px 12px 24px 48px;\n gap: 12px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n\n &.large {\n min-width: 384px;\n max-width: 656px;\n\n ", " {\n gap: 16px;\n padding: 0 16px;\n ", "\n }\n\n ", " {\n padding: 16px 16px 32px 56px;\n gap: 16px;\n\n ", " {\n ", "\n }\n\n ", " {\n ", "\n }\n }\n }\n"])), ContentAccordionItem, COLORS.neutral_100, ContentAccordionItemHeader, ComponentSStyling(ComponentTextStyle.Regular, null), ContentAccordionItemContent, ContentAccordionItemContentHeader, ComponentSStyling(ComponentTextStyle.Bold, COLORS.black), ContentAccordionItemContentBody, ParagraphSStyling(ParagraphTextStyle.Regular, COLORS.black), ContentAccordionItemHeader, ComponentMStyling(ComponentTextStyle.Regular, null), ContentAccordionItemContent, ContentAccordionItemContentHeader, ComponentMStyling(ComponentTextStyle.Bold, COLORS.black), ContentAccordionItemContentBody, ParagraphMStyling(ParagraphTextStyle.Regular, COLORS.black), ContentAccordionItemHeader, ComponentLStyling(ComponentTextStyle.Regular, null), ContentAccordionItemContent, ContentAccordionItemContentHeader, ComponentLStyling(ComponentTextStyle.Bold, COLORS.black), ContentAccordionItemContentBody, ParagraphLStyling(ParagraphTextStyle.Regular, COLORS.black));
|
|
27
27
|
export var ContentAccordion = function ContentAccordion(props) {
|
|
28
28
|
var _props$size;
|
|
29
29
|
|
|
@@ -37,14 +37,14 @@ export var ContentAccordion = function ContentAccordion(props) {
|
|
|
37
37
|
setOpened(props.items.filter(function (item) {
|
|
38
38
|
return item.active;
|
|
39
39
|
}).map(function (item) {
|
|
40
|
-
return item.
|
|
40
|
+
return item.id;
|
|
41
41
|
}));
|
|
42
42
|
} else {
|
|
43
43
|
var _props$items$find;
|
|
44
44
|
|
|
45
45
|
var active = (_props$items$find = props.items.find(function (item) {
|
|
46
46
|
return !!item.active;
|
|
47
|
-
})) === null || _props$items$find === void 0 ? void 0 : _props$items$find.
|
|
47
|
+
})) === null || _props$items$find === void 0 ? void 0 : _props$items$find.id;
|
|
48
48
|
|
|
49
49
|
if (active) {
|
|
50
50
|
setOpened([active]);
|
|
@@ -55,25 +55,27 @@ export var ContentAccordion = function ContentAccordion(props) {
|
|
|
55
55
|
var onItemClick = function onItemClick(item) {
|
|
56
56
|
if (item.disabled) return;
|
|
57
57
|
|
|
58
|
-
if (opened.includes(item.
|
|
58
|
+
if (opened.includes(item.id)) {
|
|
59
59
|
setOpened(opened.filter(function (key) {
|
|
60
|
-
return key !== item.
|
|
60
|
+
return key !== item.id;
|
|
61
61
|
}));
|
|
62
62
|
} else {
|
|
63
63
|
if (props.multi) {
|
|
64
|
-
setOpened([].concat(_toConsumableArray(opened), [item.
|
|
64
|
+
setOpened([].concat(_toConsumableArray(opened), [item.id]));
|
|
65
65
|
} else {
|
|
66
|
-
setOpened([item.
|
|
66
|
+
setOpened([item.id]);
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
};
|
|
70
70
|
|
|
71
71
|
var renderItem = function renderItem(item) {
|
|
72
|
-
var isActive = opened.includes(item.
|
|
72
|
+
var isActive = opened.includes(item.id);
|
|
73
73
|
return /*#__PURE__*/_jsxs(ContentAccordionItem, {
|
|
74
|
-
id: "item_".concat(item.
|
|
74
|
+
id: "item_".concat(item.id),
|
|
75
75
|
className: ''.concat(isActive ? ' active' : '').concat(item.disabled ? ' disabled' : ''),
|
|
76
76
|
children: [/*#__PURE__*/_jsxs(ContentAccordionItemHeader, {
|
|
77
|
+
role: "button",
|
|
78
|
+
id: "headerFor_".concat(item.id),
|
|
77
79
|
tabIndex: !item.disabled ? 0 : undefined,
|
|
78
80
|
onMouseDown: defaultOnMouseDownHandler,
|
|
79
81
|
onClick: function onClick() {
|
|
@@ -88,6 +90,7 @@ export var ContentAccordion = function ContentAccordion(props) {
|
|
|
88
90
|
children: item.title
|
|
89
91
|
})]
|
|
90
92
|
}), /*#__PURE__*/_jsxs(ContentAccordionItemContent, {
|
|
93
|
+
"aria-describedby": "headerFor_".concat(item.id),
|
|
91
94
|
children: [item.header && /*#__PURE__*/_jsx(ContentAccordionItemContentHeader, {
|
|
92
95
|
children: item.header
|
|
93
96
|
}), /*#__PURE__*/_jsx(ContentAccordionItemContentBody, {
|
|
@@ -96,7 +99,7 @@ export var ContentAccordion = function ContentAccordion(props) {
|
|
|
96
99
|
children: item.footer
|
|
97
100
|
})]
|
|
98
101
|
})]
|
|
99
|
-
}, item.
|
|
102
|
+
}, item.id);
|
|
100
103
|
};
|
|
101
104
|
|
|
102
105
|
return /*#__PURE__*/_jsx(ContentAccordionWrapper, {
|
|
@@ -108,7 +111,7 @@ export var ContentAccordion = function ContentAccordion(props) {
|
|
|
108
111
|
};
|
|
109
112
|
ContentAccordion.propTypes = {
|
|
110
113
|
items: _pt.arrayOf(_pt.shape({
|
|
111
|
-
|
|
114
|
+
id: _pt.string.isRequired,
|
|
112
115
|
title: _pt.string.isRequired,
|
|
113
116
|
header: _pt.string,
|
|
114
117
|
body: _pt.any.isRequired,
|