@laerdal/life-react-components 1.9.9 → 1.10.0
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/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/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/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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Modals/ModalContainer.tsx"],"names":["React","ReactModal","BOXSHADOWS","Z_INDEXES","ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOW_L3","modalTransitions","backdrop","modal","ModalContainer","defaultStyles","overlay","backgroundColor","document","querySelector","head","getElementsByTagName","style","createElement","setAttribute","appendChild","createTextNode","props","showModal","preventScroll","window","scrollY","prevProps","prevState","scroll","snapshot","resetScroll","id","closeModal","children","padding","minWidth","maxWidth","zIndex","parseInt","zIndexValue","Math","min","max","toast","stylesConfiguration","Object","assign","styles","getElementById","offset","openInstances","setState","body","position","state","scrollTo","Component"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport ReactModal from 'react-modal';\nimport {BOXSHADOWS} from '../styles';\nimport {Z_INDEXES} from '../styles';\n\nconst ModalContainerStyles = {\n content: {\n top: '50%',\n left: '50%',\n right: 'auto',\n bottom: 'auto',\n marginRight: '-50%',\n width: '640px',\n height: '320px',\n borderRadius: '8px',\n boxSizing: 'border-box' as any,\n margin: 0,\n overflow: 'auto',\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\n },\n};\n\n//override modal classes to define the animations\nconst modalTransitions = `\n.ReactModal__Overlay {\n opacity: 0;\n z-index: ${Z_INDEXES.backdrop};\n}\n\n.ReactModal__Overlay--after-open {\n opacity: 1;\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Content{\n z-index: ${Z_INDEXES.modal};\n opacity:0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n}\n\n.ReactModal__Content--after-open{\n opacity: 1;\n transform: translate(-50%, -50%) scale(1.0, 1.0);\n transition: transform 150ms ease-in-out, opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Overlay--before-close {\n opacity: 0;\n transition: opacity 120ms linear;\n}\n\n.ReactModal__Content--before-close{\n opacity: 0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\n}\n`;\n\n\ntype ModalContainerProps = {\n id?: string;\n showModal: boolean;\n closeModal: () => void;\n children: any;\n height?: any;\n width?: any;\n overflow?: string;\n padding?: string;\n minWidth?: string;\n maxWidth?: string;\n zIndex?: number;\n};\n\ntype ModalContainerState = {\n scroll: number;\n};\n\nclass ModalContainer extends React.Component<ModalContainerProps, ModalContainerState> {\n private static openInstances = 0;\n\n componentDidMount() {\n if (ReactModal.defaultStyles.overlay) {\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\n }\n\n //append style node to override modal transition classes\n if (!document.querySelector('[modal-custom-styling=\"active\"]')) {\n const head = document.head || document.getElementsByTagName('head')[0];\n const style = document.createElement('style');\n style.setAttribute('modal-custom-styling', 'active');\n head.appendChild(style);\n style.appendChild(document.createTextNode(modalTransitions));\n }\n\n if (this.props.showModal) {\n this.preventScroll(window.scrollY);\n }\n }\n\n getSnapshotBeforeUpdate(prevProps: Readonly<ModalContainerProps>, prevState: Readonly<ModalContainerState>): { scroll: number } {\n return {scroll: window.scrollY};\n }\n\n componentDidUpdate(prevProps: Readonly<ModalContainerProps>, prevState: Readonly<ModalContainerState>, snapshot?: { scroll: number }) {\n if (this.props.showModal && !prevProps.showModal) {\n this.preventScroll(snapshot!.scroll);\n }\n if (!this.props.showModal && prevProps.showModal) {\n this.resetScroll();\n }\n }\n\n componentWillUnmount() {\n if (this.props.showModal) {\n this.resetScroll();\n }\n }\n\n render() {\n const {\n id,\n showModal,\n closeModal,\n children,\n height = 'auto',\n width = 'auto',\n overflow = 'visible',\n padding,\n minWidth = '',\n maxWidth = '',\n zIndex = parseInt(Z_INDEXES.modal)\n } = this.props;\n\n // should be at least z-index of modal and below z-index of toast\n const zIndexValue = Math.min(Math.max(zIndex, +Z_INDEXES.modal), +Z_INDEXES.toast - 1);\n const stylesConfiguration = Object.assign({...ModalContainerStyles.content}, {\n height,\n width,\n padding,\n overflow,\n minWidth,\n maxWidth,\n zIndex: zIndexValue\n });\n const styles = {content: stylesConfiguration};\n\n return (\n <ReactModal id={id} isOpen={showModal} closeTimeoutMS={120} onRequestClose={() => closeModal()} style={styles}\n appElement={document.getElementById('root') || ''}>\n {children}\n </ReactModal>\n );\n }\n\n private preventScroll(offset: number) {\n if (!ModalContainer.openInstances) {\n this.setState({scroll: offset});\n document.body.style.position = 'fixed';\n document.body.style.left = `0px`;\n document.body.style.right = `0px`;\n document.body.style.top = `-${offset}px`;\n }\n ModalContainer.openInstances++\n }\n\n private resetScroll() {\n ModalContainer.openInstances--;\n if (!ModalContainer.openInstances) {\n //@ts-ignore\n document.body.style.position = null;\n //@ts-ignore\n document.body.style.left = null;\n //@ts-ignore\n document.body.style.top = null;\n //@ts-ignore\n document.body.style.right = null;\n this.state.scroll && window.scrollTo(0, this.state.scroll);\n this.setState({scroll: 0});\n }\n }\n}\n\nexport default ModalContainer;\n"],"file":"ModalContainer.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/Modals/ModalContainer.tsx"],"names":["React","ReactModal","BOXSHADOWS","Z_INDEXES","ModalContainerStyles","content","top","left","right","bottom","marginRight","width","height","borderRadius","boxSizing","margin","overflow","boxShadow","BOXSHADOW_L3","modalTransitions","backdrop","modal","ModalContainer","defaultStyles","overlay","backgroundColor","document","querySelector","head","getElementsByTagName","style","createElement","setAttribute","appendChild","createTextNode","props","showModal","preventScroll","window","scrollY","prevProps","prevState","scroll","snapshot","resetScroll","id","closeModal","children","padding","minWidth","maxWidth","zIndex","parseInt","zIndexValue","Math","min","max","toast","stylesConfiguration","Object","assign","styles","getElementById","offset","openInstances","setState","body","position","state","scrollTo","Component"],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,OAAOC,UAAP,MAAuB,aAAvB;AACA,SAAQC,UAAR,QAAyB,WAAzB;AACA,SAAQC,SAAR,QAAwB,WAAxB;;AAEA,IAAMC,oBAAoB,GAAG;AAC3BC,EAAAA,OAAO,EAAE;AACPC,IAAAA,GAAG,EAAE,KADE;AAEPC,IAAAA,IAAI,EAAE,KAFC;AAGPC,IAAAA,KAAK,EAAE,MAHA;AAIPC,IAAAA,MAAM,EAAE,MAJD;AAKPC,IAAAA,WAAW,EAAE,MALN;AAMPC,IAAAA,KAAK,EAAE,OANA;AAOPC,IAAAA,MAAM,EAAE,OAPD;AAQPC,IAAAA,YAAY,EAAE,KARP;AASPC,IAAAA,SAAS,EAAE,YATJ;AAUPC,IAAAA,MAAM,EAAE,CAVD;AAWPC,IAAAA,QAAQ,EAAE,MAXH;AAYPC,IAAAA,SAAS,EAAEf,UAAU,CAACgB;AAZf;AADkB,CAA7B,C,CAiBA;;AACA,IAAMC,gBAAgB,iEAGThB,SAAS,CAACiB,QAHD,+KAYTjB,SAAS,CAACkB,KAZD,okBAAtB;;IAsDMC,c;;;;;;;;;;;;;WAGJ,6BAAoB;AAClB,UAAIrB,UAAU,CAACsB,aAAX,CAAyBC,OAA7B,EAAsC;AACpCvB,QAAAA,UAAU,CAACsB,aAAX,CAAyBC,OAAzB,CAAiCC,eAAjC,GAAmD,iBAAnD;AACD,OAHiB,CAKlB;;;AACA,UAAI,CAACC,QAAQ,CAACC,aAAT,CAAuB,iCAAvB,CAAL,EAAgE;AAC9D,YAAMC,IAAI,GAAGF,QAAQ,CAACE,IAAT,IAAiBF,QAAQ,CAACG,oBAAT,CAA8B,MAA9B,EAAsC,CAAtC,CAA9B;AACA,YAAMC,KAAK,GAAGJ,QAAQ,CAACK,aAAT,CAAuB,OAAvB,CAAd;AACAD,QAAAA,KAAK,CAACE,YAAN,CAAmB,sBAAnB,EAA2C,QAA3C;AACAJ,QAAAA,IAAI,CAACK,WAAL,CAAiBH,KAAjB;AACAA,QAAAA,KAAK,CAACG,WAAN,CAAkBP,QAAQ,CAACQ,cAAT,CAAwBf,gBAAxB,CAAlB;AACD;;AAED,UAAI,KAAKgB,KAAL,CAAWC,SAAf,EAA0B;AACxB,aAAKC,aAAL,CAAmBC,MAAM,CAACC,OAA1B;AACD;AACF;;;WAED,iCAAwBC,SAAxB,EAAkEC,SAAlE,EAAgI;AAC9H,aAAO;AAACC,QAAAA,MAAM,EAAEJ,MAAM,CAACC;AAAhB,OAAP;AACD;;;WAED,4BAAmBC,SAAnB,EAA6DC,SAA7D,EAAuGE,QAAvG,EAAsI;AACpI,UAAI,KAAKR,KAAL,CAAWC,SAAX,IAAwB,CAACI,SAAS,CAACJ,SAAvC,EAAkD;AAChD,aAAKC,aAAL,CAAmBM,QAAQ,CAAED,MAA7B;AACD;;AACD,UAAI,CAAC,KAAKP,KAAL,CAAWC,SAAZ,IAAyBI,SAAS,CAACJ,SAAvC,EAAkD;AAChD,aAAKQ,WAAL;AACD;AACF;;;WAED,gCAAuB;AACrB,UAAI,KAAKT,KAAL,CAAWC,SAAf,EAA0B;AACxB,aAAKQ,WAAL;AACD;AACF;;;WAED,kBAAS;AACP,wBAYI,KAAKT,KAZT;AAAA,UACEU,EADF,eACEA,EADF;AAAA,UAEET,SAFF,eAEEA,SAFF;AAAA,UAGEU,UAHF,eAGEA,UAHF;AAAA,UAIEC,QAJF,eAIEA,QAJF;AAAA,2CAKEnC,MALF;AAAA,UAKEA,MALF,mCAKW,MALX;AAAA,0CAMED,KANF;AAAA,UAMEA,KANF,kCAMU,MANV;AAAA,6CAOEK,QAPF;AAAA,UAOEA,QAPF,qCAOa,SAPb;AAAA,UAQEgC,OARF,eAQEA,OARF;AAAA,6CASEC,QATF;AAAA,UASEA,QATF,qCASa,EATb;AAAA,6CAUEC,QAVF;AAAA,UAUEA,QAVF,qCAUa,EAVb;AAAA,2CAWEC,MAXF;AAAA,UAWEA,MAXF,mCAWWC,QAAQ,CAACjD,SAAS,CAACkB,KAAX,CAXnB,sBADO,CAeP;;AACA,UAAMgC,WAAW,GAAGC,IAAI,CAACC,GAAL,CAASD,IAAI,CAACE,GAAL,CAASL,MAAT,EAAiB,CAAChD,SAAS,CAACkB,KAA5B,CAAT,EAA6C,CAAClB,SAAS,CAACsD,KAAX,GAAmB,CAAhE,CAApB;AACA,UAAMC,mBAAmB,GAAGC,MAAM,CAACC,MAAP,mBAAkBxD,oBAAoB,CAACC,OAAvC,GAAiD;AAC3EO,QAAAA,MAAM,EAANA,MAD2E;AAE3ED,QAAAA,KAAK,EAALA,KAF2E;AAG3EqC,QAAAA,OAAO,EAAPA,OAH2E;AAI3EhC,QAAAA,QAAQ,EAARA,QAJ2E;AAK3EiC,QAAAA,QAAQ,EAARA,QAL2E;AAM3EC,QAAAA,QAAQ,EAARA,QAN2E;AAO3EC,QAAAA,MAAM,EAAEE;AAPmE,OAAjD,CAA5B;AASA,UAAMQ,MAAM,GAAG;AAACxD,QAAAA,OAAO,EAAEqD;AAAV,OAAf;AAEA,0BACE,KAAC,UAAD;AAAY,QAAA,EAAE,EAAEb,EAAhB;AACY,QAAA,MAAM,EAAET,SADpB;AAEY,QAAA,cAAc,EAAE,GAF5B;AAGY,QAAA,cAAc,EAAE;AAAA,iBAAMU,UAAU,EAAhB;AAAA,SAH5B;AAIY,QAAA,KAAK,EAAEe,MAJnB;AAKY,QAAA,UAAU,EAAEnC,QAAQ,CAACoC,cAAT,CAAwB,MAAxB,KAAmC,EAL3D;AAAA,kBAMGf;AANH,QADF;AAUD;;;WAED,uBAAsBgB,MAAtB,EAAsC;AACpC,UAAI,CAACzC,cAAc,CAAC0C,aAApB,EAAmC;AACjC,aAAKC,QAAL,CAAc;AAACvB,UAAAA,MAAM,EAAEqB;AAAT,SAAd;AACArC,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBqC,QAApB,GAA+B,OAA/B;AACAzC,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBvB,IAApB;AACAmB,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBtB,KAApB;AACAkB,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBxB,GAApB,cAA8ByD,MAA9B;AACD;;AACDzC,MAAAA,cAAc,CAAC0C,aAAf;AACD;;;WAED,uBAAsB;AACpB1C,MAAAA,cAAc,CAAC0C,aAAf;;AACA,UAAI,CAAC1C,cAAc,CAAC0C,aAApB,EAAmC;AACjC;AACAtC,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBqC,QAApB,GAA+B,IAA/B,CAFiC,CAGjC;;AACAzC,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBvB,IAApB,GAA2B,IAA3B,CAJiC,CAKjC;;AACAmB,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBxB,GAApB,GAA0B,IAA1B,CANiC,CAOjC;;AACAoB,QAAAA,QAAQ,CAACwC,IAAT,CAAcpC,KAAd,CAAoBtB,KAApB,GAA4B,IAA5B;AACA,aAAK4D,KAAL,CAAW1B,MAAX,IAAqBJ,MAAM,CAAC+B,QAAP,CAAgB,CAAhB,EAAmB,KAAKD,KAAL,CAAW1B,MAA9B,CAArB;AACA,aAAKuB,QAAL,CAAc;AAACvB,UAAAA,MAAM,EAAE;AAAT,SAAd;AACD;AACF;;;;EA1G0B1C,KAAK,CAACsE,S;;gBAA7BhD,c;AAjBJuB,EAAAA,E;AACAT,EAAAA,S;AACAU,EAAAA,U;AACAC,EAAAA,Q;AACAnC,EAAAA,M;AACAD,EAAAA,K;AACAK,EAAAA,Q;AACAgC,EAAAA,O;AACAC,EAAAA,Q;AACAC,EAAAA,Q;AACAC,EAAAA,M;;;gBAOI7B,c,mBAC2B,C;;AA4GjC,eAAeA,cAAf","sourcesContent":["import * as React from 'react';\nimport ReactModal from 'react-modal';\nimport {BOXSHADOWS} from '../styles';\nimport {Z_INDEXES} from '../styles';\n\nconst ModalContainerStyles = {\n content: {\n top: '50%',\n left: '50%',\n right: 'auto',\n bottom: 'auto',\n marginRight: '-50%',\n width: '640px',\n height: '320px',\n borderRadius: '8px',\n boxSizing: 'border-box' as any,\n margin: 0,\n overflow: 'auto',\n boxShadow: BOXSHADOWS.BOXSHADOW_L3,\n },\n};\n\n//override modal classes to define the animations\nconst modalTransitions = `\n.ReactModal__Overlay {\n opacity: 0;\n z-index: ${Z_INDEXES.backdrop};\n}\n\n.ReactModal__Overlay--after-open {\n opacity: 1;\n transition: opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Content{\n z-index: ${Z_INDEXES.modal};\n opacity:0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n}\n\n.ReactModal__Content--after-open{\n opacity: 1;\n transform: translate(-50%, -50%) scale(1.0, 1.0);\n transition: transform 150ms ease-in-out, opacity 150ms cubic-bezier(0.22, 0.61, 0.35, 1);\n}\n\n.ReactModal__Overlay--before-close {\n opacity: 0;\n transition: opacity 120ms linear;\n}\n\n.ReactModal__Content--before-close{\n opacity: 0;\n transform: translate(-50%, -50%) scale(1.1, 1.1);\n transition: transform 120ms ease-in-out, opacity 120ms cubic-bezier(0.55, 0.05, 0.67, 0.19);\n}\n`;\n\n\ntype ModalContainerProps = {\n id?: string;\n showModal: boolean;\n closeModal: () => void;\n children: any;\n height?: any;\n width?: any;\n overflow?: string;\n padding?: string;\n minWidth?: string;\n maxWidth?: string;\n zIndex?: number;\n};\n\ntype ModalContainerState = {\n scroll: number;\n};\n\nclass ModalContainer extends React.Component<ModalContainerProps, ModalContainerState> {\n private static openInstances = 0;\n\n componentDidMount() {\n if (ReactModal.defaultStyles.overlay) {\n ReactModal.defaultStyles.overlay.backgroundColor = 'rgba(0,0,0,0.5)';\n }\n\n //append style node to override modal transition classes\n if (!document.querySelector('[modal-custom-styling=\"active\"]')) {\n const head = document.head || document.getElementsByTagName('head')[0];\n const style = document.createElement('style');\n style.setAttribute('modal-custom-styling', 'active');\n head.appendChild(style);\n style.appendChild(document.createTextNode(modalTransitions));\n }\n\n if (this.props.showModal) {\n this.preventScroll(window.scrollY);\n }\n }\n\n getSnapshotBeforeUpdate(prevProps: Readonly<ModalContainerProps>, prevState: Readonly<ModalContainerState>): { scroll: number } {\n return {scroll: window.scrollY};\n }\n\n componentDidUpdate(prevProps: Readonly<ModalContainerProps>, prevState: Readonly<ModalContainerState>, snapshot?: { scroll: number }) {\n if (this.props.showModal && !prevProps.showModal) {\n this.preventScroll(snapshot!.scroll);\n }\n if (!this.props.showModal && prevProps.showModal) {\n this.resetScroll();\n }\n }\n\n componentWillUnmount() {\n if (this.props.showModal) {\n this.resetScroll();\n }\n }\n\n render() {\n const {\n id,\n showModal,\n closeModal,\n children,\n height = 'auto',\n width = 'auto',\n overflow = 'visible',\n padding,\n minWidth = '',\n maxWidth = '',\n zIndex = parseInt(Z_INDEXES.modal)\n } = this.props;\n\n // should be at least z-index of modal and below z-index of toast\n const zIndexValue = Math.min(Math.max(zIndex, +Z_INDEXES.modal), +Z_INDEXES.toast - 1);\n const stylesConfiguration = Object.assign({...ModalContainerStyles.content}, {\n height,\n width,\n padding,\n overflow,\n minWidth,\n maxWidth,\n zIndex: zIndexValue\n });\n const styles = {content: stylesConfiguration};\n\n return (\n <ReactModal id={id}\n isOpen={showModal}\n closeTimeoutMS={120}\n onRequestClose={() => closeModal()}\n style={styles}\n appElement={document.getElementById('root') || ''}>\n {children}\n </ReactModal>\n );\n }\n\n private preventScroll(offset: number) {\n if (!ModalContainer.openInstances) {\n this.setState({scroll: offset});\n document.body.style.position = 'fixed';\n document.body.style.left = `0px`;\n document.body.style.right = `0px`;\n document.body.style.top = `-${offset}px`;\n }\n ModalContainer.openInstances++\n }\n\n private resetScroll() {\n ModalContainer.openInstances--;\n if (!ModalContainer.openInstances) {\n //@ts-ignore\n document.body.style.position = null;\n //@ts-ignore\n document.body.style.left = null;\n //@ts-ignore\n document.body.style.top = null;\n //@ts-ignore\n document.body.style.right = null;\n this.state.scroll && window.scrollTo(0, this.state.scroll);\n this.setState({scroll: 0});\n }\n }\n}\n\nexport default ModalContainer;\n"],"file":"ModalContainer.js"}
|
package/dist/Popover/Popover.cjs
CHANGED
|
@@ -31,86 +31,70 @@ var _types = require("../types");
|
|
|
31
31
|
|
|
32
32
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
33
33
|
|
|
34
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11
|
|
34
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
|
|
35
35
|
|
|
36
36
|
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); }
|
|
37
37
|
|
|
38
38
|
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; }
|
|
39
39
|
|
|
40
|
-
var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n height: ", ";\n width: ", ";\n border-radius: 4px;\n background: ", ";\n cursor: default;\n box-shadow: ", ";\n\n position: absolute; \n visibility: hidden;\n opacity: 0;\n z-index: ", ";\n\n ", "\n ", "\n\n ", "\n ", "\n\n &::after {\n
|
|
40
|
+
var Container = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n //height: ", ";\n min-width: ", ";\n border-radius: 4px;\n background: ", ";\n cursor: default;\n box-shadow: ", ";\n\n position: absolute; \n visibility: hidden;\n opacity: 0;\n z-index: ", ";\n\n ", "\n ", "\n\n ", "\n ", "\n\n &::after {\n ", "\n"])), function (props) {
|
|
41
41
|
return props.size === _types.Size.Small ? '240px' : props.size === _types.Size.Large ? '480px' : '360px';
|
|
42
42
|
}, function (props) {
|
|
43
|
-
return props.size === _types.Size.Small ? '
|
|
43
|
+
return props.size === _types.Size.Small ? '320px' : props.size === _types.Size.Large ? '640px' : '480px';
|
|
44
44
|
}, _.COLORS.white, _styles.BOXSHADOWS.BOXSHADOW_CENTERED, _styles.Z_INDEXES.popover, function (props) {
|
|
45
|
-
return props.position == _types.Position.Bottom ? 'right: 50%; top: calc(100% +
|
|
45
|
+
return props.position == _types.Position.Bottom ? 'right: 50%; top: calc(100% + 16px); transform: translateX(50%);' : '';
|
|
46
46
|
}, function (props) {
|
|
47
|
-
return props.position == _types.Position.Top ? 'right: 50%; bottom: calc(100% +
|
|
47
|
+
return props.position == _types.Position.Top ? 'right: 50%; bottom: calc(100% + 16px); transform: translateX(50%);' : '';
|
|
48
48
|
}, function (props) {
|
|
49
|
-
return props.position == _types.Position.Left ? 'bottom: 50%; right: calc(100% +
|
|
49
|
+
return props.position == _types.Position.Left ? 'bottom: 50%; right: calc(100% + 16px); transform: translateY(50%);' : '';
|
|
50
50
|
}, function (props) {
|
|
51
|
-
return props.position == _types.Position.Right ? 'bottom: 50%; left: calc(100% +
|
|
52
|
-
}, _.COLORS.white, function (props) {
|
|
53
|
-
return props.position == _types.Position.Bottom ? 'right: 50%; bottom: 100%; transform: translateY(50%) rotate(45deg);' : '';
|
|
51
|
+
return props.position == _types.Position.Right ? 'bottom: 50%; left: calc(100% + 16px); transform: translateY(50%);' : '';
|
|
54
52
|
}, function (props) {
|
|
55
|
-
return props.
|
|
56
|
-
}, function (props) {
|
|
57
|
-
return props.position == _types.Position.Left ? 'bottom: 50%; left: 100%; transform: translateX(-50%) rotate(45deg);' : '';
|
|
58
|
-
}, function (props) {
|
|
59
|
-
return props.position == _types.Position.Right ? 'bottom: 50%; right: 100%; transform: translateX(50%) rotate(45deg);' : '';
|
|
53
|
+
return props.showArrowPointer ? renderArrowStyles(props.position) : '';
|
|
60
54
|
});
|
|
61
55
|
|
|
62
|
-
var TopContainer = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n height: ", ";\n
|
|
56
|
+
var TopContainer = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n height: ", ";\n display: flex;\n"])), function (props) {
|
|
63
57
|
return props.size === _types.Size.Small ? '56px' : props.size === _types.Size.Large ? '72px' : '64px';
|
|
64
|
-
}, function (props) {
|
|
65
|
-
return props.size === _types.Size.Small ? '344px' : props.size === _types.Size.Large ? '624px' : '464px';
|
|
66
|
-
});
|
|
67
|
-
|
|
68
|
-
var MainContentWrapper = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n padding: ", ";\n"])), function (props) {
|
|
69
|
-
return props.size === _types.Size.Small ? '8px 0 8px 16px' : props.size === _types.Size.Large ? '8px 0 8px 24px' : '8px 0 8px 20px';
|
|
70
58
|
});
|
|
71
59
|
|
|
72
|
-
var MiddleContainer = _styledComponents.default.div(
|
|
60
|
+
var MiddleContainer = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n margin: 8px;\n height: ", ";\n padding: ", ";\n overflow-y: auto;\n ", "\n"])), function (props) {
|
|
73
61
|
return props.size === _types.Size.Small ? '104px' : props.size === _types.Size.Large ? '304px' : '208px';
|
|
74
62
|
}, function (props) {
|
|
75
|
-
return props.size === _types.Size.Small ? '
|
|
76
|
-
}, function (props) {
|
|
77
|
-
return props.size === _types.Size.Small ? '6px' : props.size === _types.Size.Large ? '14px' : '10px';
|
|
63
|
+
return props.size === _types.Size.Small ? '0 8px' : props.size === _types.Size.Large ? '0 16px' : '0 12px';
|
|
78
64
|
}, (0, _styles.scrollBarStyling)(_types.Size.Small));
|
|
79
65
|
|
|
80
|
-
var BottomContainer = _styledComponents.default.div(
|
|
66
|
+
var BottomContainer = _styledComponents.default.div(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n height: ", "; \n display: flex;\n\n .bottom-flex {\n flex: 1;\n }\n"])), function (props) {
|
|
81
67
|
return props.size === _types.Size.Small ? '64px' : props.size === _types.Size.Large ? '88px' : '72px';
|
|
82
|
-
}, function (props) {
|
|
83
|
-
return props.size === _types.Size.Small ? '344px' : props.size === _types.Size.Large ? '624px' : '464px';
|
|
84
68
|
});
|
|
85
69
|
|
|
86
|
-
var TextContainer = _styledComponents.default.div(
|
|
70
|
+
var TextContainer = _styledComponents.default.div(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n display: flex;\n flex-direction: column;\n margin: ", ";\n flex-grow: 1;\n"])), function (props) {
|
|
87
71
|
return renderMargins(props.note, props.size);
|
|
88
72
|
});
|
|
89
73
|
|
|
90
|
-
var NoteContainer = _styledComponents.default.div(
|
|
74
|
+
var NoteContainer = _styledComponents.default.div(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n"])), function (props) {
|
|
91
75
|
return props.size === _types.Size.Small ? (0, _styles.ComponentXXSStyling)(_.ComponentTextStyle.Regular, _.COLORS.neutral_600) : props.size === _types.Size.Large ? (0, _styles.ComponentSStyling)(_.ComponentTextStyle.Regular, _.COLORS.neutral_600) : (0, _.ComponentXSStyling)(_.ComponentTextStyle.Regular, _.COLORS.neutral_600);
|
|
92
76
|
});
|
|
93
77
|
|
|
94
|
-
var LabelContainer = _styledComponents.default.div(
|
|
78
|
+
var LabelContainer = _styledComponents.default.div(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["\n ", "\n"])), function (props) {
|
|
95
79
|
return props.size === _types.Size.Small ? (0, _styles.ComponentSStyling)(_.ComponentTextStyle.Bold, null) : props.size === _types.Size.Large ? (0, _styles.ComponentLStyling)(_.ComponentTextStyle.Bold, null) : (0, _styles.ComponentMStyling)(_.ComponentTextStyle.Bold, null);
|
|
96
80
|
});
|
|
97
81
|
|
|
98
|
-
var CloseButtonContainer = _styledComponents.default.div(
|
|
82
|
+
var CloseButtonContainer = _styledComponents.default.div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["\n margin: ", ";\n"])), function (props) {
|
|
99
83
|
return props.size === _types.Size.Small ? '4px 16px 4px 0' : props.size === _types.Size.Large ? '12px 24px 12px 0' : '8px 20px 8px 0';
|
|
100
84
|
});
|
|
101
85
|
|
|
102
|
-
var TextButtonContainer = _styledComponents.default.div(
|
|
86
|
+
var TextButtonContainer = _styledComponents.default.div(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["\n margin: ", ";\n"])), function (props) {
|
|
103
87
|
return props.size === _types.Size.Small ? '8px 0 8px 16px' : props.size === _types.Size.Large ? '16px 0 16px 24px' : '12px 0 12px 20px';
|
|
104
88
|
});
|
|
105
89
|
|
|
106
|
-
var IconButtonContainer = _styledComponents.default.div(
|
|
90
|
+
var IconButtonContainer = _styledComponents.default.div(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["\n margin: ", ";\n display: flex;\n"])), function (props) {
|
|
107
91
|
return props.size === _types.Size.Small ? '8px 16px 8px 0' : props.size === _types.Size.Large ? '16px 24px 16px 0' : '12px 20px 12px 0';
|
|
108
92
|
});
|
|
109
93
|
|
|
110
|
-
var Wrapper = _styledComponents.default.div(
|
|
111
|
-
return props.position === _types.Position.Top || props.position === _types.Position.Bottom ? '
|
|
94
|
+
var Wrapper = _styledComponents.default.div(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["\n position: relative;\n\n .pointer-space {\n height: ", ";\n width: ", ";\n position: absolute;\n\n ", ";\n ", ";\n\n ", ";\n ", ";\n }\n\n ", "\n"])), function (props) {
|
|
95
|
+
return props.position === _types.Position.Top || props.position === _types.Position.Bottom ? '16px' : '100%';
|
|
112
96
|
}, function (props) {
|
|
113
|
-
return props.position === _types.Position.Left || props.position === _types.Position.Right ? '
|
|
97
|
+
return props.position === _types.Position.Left || props.position === _types.Position.Right ? '16px' : '100%';
|
|
114
98
|
}, function (props) {
|
|
115
99
|
return props.position === _types.Position.Left ? 'right:100%; bottom: 0%' : '';
|
|
116
100
|
}, function (props) {
|
|
@@ -131,6 +115,24 @@ var renderMargins = function renderMargins(isNotePresent, size) {
|
|
|
131
115
|
}
|
|
132
116
|
};
|
|
133
117
|
|
|
118
|
+
var renderArrowStyles = function renderArrowStyles(position) {
|
|
119
|
+
if (position === _types.Position.Bottom) {
|
|
120
|
+
return "height: 0px;\n width: 0px;\n border-top: 16px solid transparent;\n border-right: 12px solid transparent;\n border-bottom: 16px solid rgb(255,255,255);\n border-left: 12px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(50% - 12px);\n bottom: calc(100% - 1px);";
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
if (position === _types.Position.Top) {
|
|
124
|
+
return "height: 0px;\n width: 0px;\n border-top: 16px solid rgb(255,255,255);\n border-right: 12px solid transparent;\n border-bottom: 16px solid transparent;\n border-left: 12px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(50% - 12px);\n top: calc(100% - 1px);";
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
if (position === _types.Position.Left) {
|
|
128
|
+
return "height: 0px;\n width: 0px;\n border-top: 12px solid transparent;\n border-right: 16px solid transparent;\n border-bottom: 12px solid transparent;\n border-left: 16px solid rgb(255,255,255);\n content: \"\";\n position: absolute;\n left: calc(100% - 1px);\n bottom: calc(50% - 12px);";
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
if (position === _types.Position.Right) {
|
|
132
|
+
return "height: 0px;\n width: 0px;\n border-top: 12px solid transparent;\n border-right: 16px solid rgb(255,255,255);\n border-bottom: 12px solid transparent;\n border-left: 16px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(100% - 1px);\n bottom: calc(50% - 12px);";
|
|
133
|
+
}
|
|
134
|
+
};
|
|
135
|
+
|
|
134
136
|
var Popover = function Popover(_ref) {
|
|
135
137
|
var _bottomSectionProps$t, _bottomSectionProps$i;
|
|
136
138
|
|
|
@@ -142,7 +144,9 @@ var Popover = function Popover(_ref) {
|
|
|
142
144
|
children = _ref.children,
|
|
143
145
|
position = _ref.position,
|
|
144
146
|
_ref$showOnClick = _ref.showOnClick,
|
|
145
|
-
showOnClick = _ref$showOnClick === void 0 ? false : _ref$showOnClick
|
|
147
|
+
showOnClick = _ref$showOnClick === void 0 ? false : _ref$showOnClick,
|
|
148
|
+
_ref$showArrowPointer = _ref.showArrowPointer,
|
|
149
|
+
showArrowPointer = _ref$showArrowPointer === void 0 ? false : _ref$showArrowPointer;
|
|
146
150
|
|
|
147
151
|
var _React$useState = React.useState(false),
|
|
148
152
|
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
|
|
@@ -157,9 +161,9 @@ var Popover = function Popover(_ref) {
|
|
|
157
161
|
}
|
|
158
162
|
};
|
|
159
163
|
|
|
160
|
-
document.addEventListener(
|
|
164
|
+
document.addEventListener('mousedown', checkIfClickedOutside);
|
|
161
165
|
return function () {
|
|
162
|
-
document.removeEventListener(
|
|
166
|
+
document.removeEventListener('mousedown', checkIfClickedOutside);
|
|
163
167
|
};
|
|
164
168
|
}, [showPopover]);
|
|
165
169
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Wrapper, {
|
|
@@ -170,6 +174,7 @@ var Popover = function Popover(_ref) {
|
|
|
170
174
|
size: size,
|
|
171
175
|
position: position,
|
|
172
176
|
ref: popoverRef,
|
|
177
|
+
showArrowPointer: showArrowPointer,
|
|
173
178
|
children: [!!topSectionProps && /*#__PURE__*/(0, _jsxRuntime.jsxs)(TopContainer, {
|
|
174
179
|
size: size,
|
|
175
180
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(TextContainer, {
|
|
@@ -196,12 +201,9 @@ var Popover = function Popover(_ref) {
|
|
|
196
201
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.SystemIcons.Close, {})
|
|
197
202
|
})
|
|
198
203
|
})]
|
|
199
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
204
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(MiddleContainer, {
|
|
200
205
|
size: size,
|
|
201
|
-
children:
|
|
202
|
-
size: size,
|
|
203
|
-
children: mainContent
|
|
204
|
-
})
|
|
206
|
+
children: mainContent
|
|
205
207
|
}), !!bottomSectionProps && /*#__PURE__*/(0, _jsxRuntime.jsxs)(BottomContainer, {
|
|
206
208
|
size: size,
|
|
207
209
|
children: [!!(bottomSectionProps !== null && bottomSectionProps !== void 0 && (_bottomSectionProps$t = bottomSectionProps.textButton) !== null && _bottomSectionProps$t !== void 0 && _bottomSectionProps$t.icon) && /*#__PURE__*/(0, _jsxRuntime.jsx)(TextButtonContainer, {
|
|
@@ -260,7 +262,8 @@ Popover.propTypes = {
|
|
|
260
262
|
}),
|
|
261
263
|
mainContent: _propTypes.default.node.isRequired,
|
|
262
264
|
children: _propTypes.default.node.isRequired,
|
|
263
|
-
showOnClick: _propTypes.default.bool.isRequired
|
|
265
|
+
showOnClick: _propTypes.default.bool.isRequired,
|
|
266
|
+
showArrowPointer: _propTypes.default.bool
|
|
264
267
|
};
|
|
265
268
|
var _default = Popover;
|
|
266
269
|
exports.default = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/Popover/Popover.tsx"],"names":["Container","styled","div","props","size","Size","Small","Large","COLORS","white","BOXSHADOWS","BOXSHADOW_CENTERED","Z_INDEXES","popover","position","Position","Bottom","Top","Left","Right","TopContainer","MainContentWrapper","MiddleContainer","BottomContainer","TextContainer","renderMargins","note","NoteContainer","ComponentTextStyle","Regular","neutral_600","LabelContainer","Bold","CloseButtonContainer","TextButtonContainer","IconButtonContainer","Wrapper","showOnClick","showPopover","isNotePresent","Popover","Medium","topSectionProps","bottomSectionProps","mainContent","children","React","useState","setShowPopover","popoverRef","useRef","useEffect","checkIfClickedOutside","e","current","contains","target","document","addEventListener","removeEventListener","text","textButton","icon","action","label","iconButtons","map","iconButton"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { COLORS, ComponentTextStyle, ComponentXSStyling } from '..';\nimport { Button, IconButton } from '../Button';\nimport { SystemIcons } from '../icons';\nimport { BOXSHADOWS, ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXXSStyling, scrollBarStyling, Z_INDEXES } from '../styles';\nimport { Position, Size } from '../types';\n\nconst Container = styled.div<{size: Size, position: Position}>`\n height: ${props=>props.size===Size.Small ? '240px' : (props.size===Size.Large ? '480px' : '360px')};\n width: ${props=>props.size===Size.Small ? '344px' : (props.size===Size.Large ? '624px' : '464px')};\n border-radius: 4px;\n background: ${COLORS.white};\n cursor: default;\n box-shadow: ${BOXSHADOWS.BOXSHADOW_CENTERED};\n\n position: absolute; \n visibility: hidden;\n opacity: 0;\n z-index: ${Z_INDEXES.popover};\n\n ${props => (props.position == Position.Bottom ? 'right: 50%; top: calc(100% + 8px); transform: translateX(50%);' : '')}\n ${props => (props.position == Position.Top ? 'right: 50%; bottom: calc(100% + 8px); transform: translateX(50%);' : '')}\n\n ${props => (props.position == Position.Left ? 'bottom: 50%; right: calc(100% + 8px); transform: translateY(50%);' : '')}\n ${props => (props.position == Position.Right ? 'bottom: 50%; left: calc(100% + 8px); transform: translateY(50%);' : '')}\n\n &::after {\n height: 16px;\n width: 16px;\n content: \"\";\n position: absolute;\n background: ${COLORS.white};\n\n ${props => (props.position == Position.Bottom ? 'right: 50%; bottom: 100%; transform: translateY(50%) rotate(45deg);' : '')}\n ${props => (props.position == Position.Top ? 'right: 50%; top: 100%; transform: translateY(-50%) rotate(45deg);' : '')}\n\n ${props => (props.position == Position.Left ? 'bottom: 50%; left: 100%; transform: translateX(-50%) rotate(45deg);' : '')}\n ${props => (props.position == Position.Right ? 'bottom: 50%; right: 100%; transform: translateX(50%) rotate(45deg);' : '')}\n`;\n\nconst TopContainer = styled.div<{size: Size}>`\n height: ${props=>props.size===Size.Small ? '56px' : (props.size===Size.Large ? '72px' : '64px')};\n width: ${props=>props.size===Size.Small ? '344px' : (props.size===Size.Large ? '624px' : '464px')};\n display: flex;\n`;\n\nconst MainContentWrapper = styled.div<{size: Size}>`\n padding: ${props=>props.size===Size.Small ? '8px 0 8px 16px' : (props.size===Size.Large ? '8px 0 8px 24px' : '8px 0 8px 20px')};\n`;\n\nconst MiddleContainer = styled.div<{size: Size}>`\n height: ${props=>props.size===Size.Small ? '104px' : (props.size===Size.Large ? '304px' : '208px')};\n width: ${props=>props.size===Size.Small ? '312px' : (props.size===Size.Large ? '576px' : '424px')};\n padding-right: ${props=>props.size===Size.Small ? '6px' : (props.size===Size.Large ? '14px' : '10px')};\n overflow-y: auto;\n ${scrollBarStyling(Size.Small)}\n`;\n\nconst BottomContainer = styled.div<{size: Size}>`\n height: ${props=>props.size===Size.Small ? '64px' : (props.size===Size.Large ? '88px' : '72px')};\n width: ${props=>props.size===Size.Small ? '344px' : (props.size===Size.Large ? '624px' : '464px')};\n display: flex;\n\n .bottom-flex {\n flex: 1;\n }\n`;\n\nconst TextContainer = styled.div<{note: boolean, size: Size}>`\n display: flex;\n flex-direction: column;\n margin: ${props=>renderMargins(props.note, props.size)};\n flex-grow: 1;\n`;\n\nconst NoteContainer = styled.div<{size: Size}>`\n ${props=>props.size===Size.Small ? ComponentXXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600) : (props.size===Size.Large ? ComponentSStyling(ComponentTextStyle.Regular, COLORS.neutral_600) : ComponentXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600))}\n`;\n\nconst LabelContainer = styled.div<{size: Size}>`\n ${props=>props.size===Size.Small ? ComponentSStyling(ComponentTextStyle.Bold, null) : (props.size===Size.Large ? ComponentLStyling(ComponentTextStyle.Bold, null) : ComponentMStyling(ComponentTextStyle.Bold, null))}\n`;\n\nconst CloseButtonContainer = styled.div<{size: Size}>`\n margin: ${props=>props.size===Size.Small ? '4px 16px 4px 0' : (props.size===Size.Large ? '12px 24px 12px 0' : '8px 20px 8px 0')};\n`;\n\nconst TextButtonContainer = styled.div<{size: Size}>`\n margin: ${props=>props.size===Size.Small ? '8px 0 8px 16px' : (props.size===Size.Large ? '16px 0 16px 24px' : '12px 0 12px 20px')};\n`;\n\nconst IconButtonContainer = styled.div<{size: Size}>`\n margin: ${props=>props.size===Size.Small ? '8px 16px 8px 0' : (props.size===Size.Large ? '16px 24px 16px 0' : '12px 20px 12px 0')};\n display: flex;\n`;\n\nconst Wrapper = styled.div<{position: Position, showOnClick: boolean, showPopover: boolean}>`\n position: relative;\n\n .pointer-space {\n height: ${props=>props.position===Position.Top || props.position===Position.Bottom ? '8px' : '100%'};\n width: ${props=>props.position===Position.Left || props.position===Position.Right ? '8px' : '100%'};\n position: absolute;\n\n ${props=>props.position===Position.Left ? 'right:100%; bottom: 0%' : ''};\n ${props=>props.position===Position.Right ? 'left:100%; bottom: 0%' : ''};\n\n ${props=>props.position===Position.Top ? 'bottom: 100%' : ''};\n ${props=>props.position===Position.Bottom ? 'top: 100%' : ''};\n }\n\n ${props=>props.showOnClick ? \n `${Container} {\n visibility: ${props.showPopover ? 'visible' : 'hidden'};\n opacity: ${props.showPopover ? '1' : '0'};\n }\n cursor: pointer;` \n : \n `&:hover {\n ${Container} {\n visibility: visible;\n opacity: 1;\n }\n }`\n }\n`;\n\nconst renderMargins = (isNotePresent: boolean, size: Size): string => {\n if(isNotePresent){\n return (size===Size.Small ? '10px 16px' : (size===Size.Large ? '14px 24px' : '12px 20px'));\n }\n else{\n return (size===Size.Small ? '18px 16px' : (size===Size.Large ? '24px' : '20px'));\n }\n}\n\ntype topSectionProps = {\n text: string;\n note?: string;\n}\n\ntype actionButtonProps = {\n icon: React.ReactNode;\n action: ()=>void;\n label?: string;\n}\n\ntype bottomSectionProps = {\n iconButtons?: actionButtonProps[];\n textButton?: actionButtonProps;\n}\n\ntype PopoverProps = {\n size?: Size.Small | Size.Medium | Size.Large;\n topSectionProps?: topSectionProps;\n bottomSectionProps?: bottomSectionProps;\n mainContent: React.ReactNode;\n children: React.ReactNode;\n position: Position.Top | Position.Bottom | Position.Right | Position.Left;\n showOnClick: boolean;\n}\n\nconst Popover: React.FunctionComponent<PopoverProps> = \n({\n size=Size.Medium,\n topSectionProps,\n bottomSectionProps,\n mainContent,\n children,\n position,\n showOnClick=false\n}) => {\n\n const [showPopover, setShowPopover] = React.useState(false);\n const popoverRef = React.useRef<any>();\n\n React.useEffect(()=>{\n const checkIfClickedOutside = (e: { target: any; }) => {\n if (showPopover && popoverRef.current && !popoverRef.current.contains(e.target)) {\n setShowPopover(false);\n }\n }\n\n document.addEventListener(\"mousedown\", checkIfClickedOutside)\n\n return () => {\n document.removeEventListener(\"mousedown\", checkIfClickedOutside)\n }\n },[showPopover]);\n\n return (\n <Wrapper position={position} showOnClick={showOnClick} showPopover={showPopover}>\n <Container size={size} position={position} ref={popoverRef}>\n {!!topSectionProps && \n <TopContainer size={size}>\n <TextContainer note={!!topSectionProps?.note} size={size}>\n {topSectionProps?.note && \n <NoteContainer size={size}>\n {topSectionProps.note}\n </NoteContainer>\n }\n <LabelContainer size={size}>\n {topSectionProps?.text}\n </LabelContainer>\n </TextContainer>\n\n {showOnClick && \n <CloseButtonContainer size={size} data-testid={'closeBtn'}>\n <IconButton action={()=>setShowPopover(false)} useTransparentBackground iconColor={COLORS.neutral_600} variant='secondary' shape='circular'>\n <SystemIcons.Close />\n </IconButton>\n </CloseButtonContainer>\n }\n </TopContainer>\n }\n\n <MainContentWrapper size={size}>\n <MiddleContainer size={size}>\n {mainContent}\n </MiddleContainer>\n </MainContentWrapper>\n\n {!!bottomSectionProps && \n <BottomContainer size={size}>\n {!!bottomSectionProps?.textButton?.icon && \n <TextButtonContainer size={size} data-testid={'textBtn'}>\n <Button size={size} variant='secondary' icon={bottomSectionProps.textButton.icon} onClick={bottomSectionProps.textButton.action}>\n {bottomSectionProps.textButton.label}\n </Button>\n </TextButtonContainer>\n }\n\n <div className='bottom-flex'/>\n \n <IconButtonContainer size={size} data-testid={'iconBtn'}>\n {bottomSectionProps?.iconButtons?.map((iconButton) =>\n \n <IconButton action={iconButton.action} variant='secondary' shape='circular' useTransparentBackground>\n {iconButton.icon}\n </IconButton> \n )}\n </IconButtonContainer>\n </BottomContainer>\n }\n </Container>\n\n <div onClick={()=>showOnClick && setShowPopover(!showPopover)}>\n {children}\n\n <div className='pointer-space'/>\n </div>\n\n </Wrapper>\n );\n};\n\nexport default Popover;"],"file":"Popover.cjs"}
|
|
1
|
+
{"version":3,"sources":["../../src/Popover/Popover.tsx"],"names":["Container","styled","div","props","size","Size","Small","Large","COLORS","white","BOXSHADOWS","BOXSHADOW_CENTERED","Z_INDEXES","popover","position","Position","Bottom","Top","Left","Right","showArrowPointer","renderArrowStyles","TopContainer","MiddleContainer","BottomContainer","TextContainer","renderMargins","note","NoteContainer","ComponentTextStyle","Regular","neutral_600","LabelContainer","Bold","CloseButtonContainer","TextButtonContainer","IconButtonContainer","Wrapper","showOnClick","showPopover","isNotePresent","Popover","Medium","topSectionProps","bottomSectionProps","mainContent","children","React","useState","setShowPopover","popoverRef","useRef","useEffect","checkIfClickedOutside","e","current","contains","target","document","addEventListener","removeEventListener","text","textButton","icon","action","label","iconButtons","map","iconButton"],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport styled from 'styled-components';\nimport { COLORS, ComponentTextStyle, ComponentXSStyling } from '..';\nimport { Button, IconButton } from '../Button';\nimport { SystemIcons } from '../icons';\nimport { BOXSHADOWS, ComponentLStyling, ComponentMStyling, ComponentSStyling, ComponentXXSStyling, scrollBarStyling, Z_INDEXES } from '../styles';\nimport { Position, Size } from '../types';\n\nconst Container = styled.div<{ size: Size; position: Position; showArrowPointer: boolean }>`\n //height: ${(props) => (props.size === Size.Small ? '240px' : props.size === Size.Large ? '480px' : '360px')};\n min-width: ${(props) => (props.size === Size.Small ? '320px' : props.size === Size.Large ? '640px' : '480px')};\n border-radius: 4px;\n background: ${COLORS.white};\n cursor: default;\n box-shadow: ${BOXSHADOWS.BOXSHADOW_CENTERED};\n\n position: absolute; \n visibility: hidden;\n opacity: 0;\n z-index: ${Z_INDEXES.popover};\n\n ${(props) => (props.position == Position.Bottom ? 'right: 50%; top: calc(100% + 16px); transform: translateX(50%);' : '')}\n ${(props) => (props.position == Position.Top ? 'right: 50%; bottom: calc(100% + 16px); transform: translateX(50%);' : '')}\n\n ${(props) => (props.position == Position.Left ? 'bottom: 50%; right: calc(100% + 16px); transform: translateY(50%);' : '')}\n ${(props) => (props.position == Position.Right ? 'bottom: 50%; left: calc(100% + 16px); transform: translateY(50%);' : '')}\n\n &::after {\n ${(props) => (props.showArrowPointer ? renderArrowStyles(props.position) : '')}\n`;\n\nconst TopContainer = styled.div<{ size: Size }>`\n height: ${(props) => (props.size === Size.Small ? '56px' : props.size === Size.Large ? '72px' : '64px')};\n display: flex;\n`;\n\nconst MiddleContainer = styled.div<{ size: Size }>`\n margin: 8px;\n height: ${(props) => (props.size === Size.Small ? '104px' : props.size === Size.Large ? '304px' : '208px')};\n padding: ${(props) => (props.size === Size.Small ? '0 8px' : props.size === Size.Large ? '0 16px' : '0 12px')};\n overflow-y: auto;\n ${scrollBarStyling(Size.Small)}\n`;\n\nconst BottomContainer = styled.div<{ size: Size }>`\n height: ${(props) => (props.size === Size.Small ? '64px' : props.size === Size.Large ? '88px' : '72px')}; \n display: flex;\n\n .bottom-flex {\n flex: 1;\n }\n`;\n\nconst TextContainer = styled.div<{ note: boolean; size: Size }>`\n display: flex;\n flex-direction: column;\n margin: ${(props) => renderMargins(props.note, props.size)};\n flex-grow: 1;\n`;\n\nconst NoteContainer = styled.div<{ size: Size }>`\n ${(props) =>\n props.size === Size.Small\n ? ComponentXXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600)\n : props.size === Size.Large\n ? ComponentSStyling(ComponentTextStyle.Regular, COLORS.neutral_600)\n : ComponentXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600)}\n`;\n\nconst LabelContainer = styled.div<{ size: Size }>`\n ${(props) =>\n props.size === Size.Small\n ? ComponentSStyling(ComponentTextStyle.Bold, null)\n : props.size === Size.Large\n ? ComponentLStyling(ComponentTextStyle.Bold, null)\n : ComponentMStyling(ComponentTextStyle.Bold, null)}\n`;\n\nconst CloseButtonContainer = styled.div<{ size: Size }>`\n margin: ${(props) => (props.size === Size.Small ? '4px 16px 4px 0' : props.size === Size.Large ? '12px 24px 12px 0' : '8px 20px 8px 0')};\n`;\n\nconst TextButtonContainer = styled.div<{ size: Size }>`\n margin: ${(props) => (props.size === Size.Small ? '8px 0 8px 16px' : props.size === Size.Large ? '16px 0 16px 24px' : '12px 0 12px 20px')};\n`;\n\nconst IconButtonContainer = styled.div<{ size: Size }>`\n margin: ${(props) => (props.size === Size.Small ? '8px 16px 8px 0' : props.size === Size.Large ? '16px 24px 16px 0' : '12px 20px 12px 0')};\n display: flex;\n`;\n\nconst Wrapper = styled.div<{ position: Position; showOnClick: boolean; showPopover: boolean }>`\n position: relative;\n\n .pointer-space {\n height: ${(props) => (props.position === Position.Top || props.position === Position.Bottom ? '16px' : '100%')};\n width: ${(props) => (props.position === Position.Left || props.position === Position.Right ? '16px' : '100%')};\n position: absolute;\n\n ${(props) => (props.position === Position.Left ? 'right:100%; bottom: 0%' : '')};\n ${(props) => (props.position === Position.Right ? 'left:100%; bottom: 0%' : '')};\n\n ${(props) => (props.position === Position.Top ? 'bottom: 100%' : '')};\n ${(props) => (props.position === Position.Bottom ? 'top: 100%' : '')};\n }\n\n ${(props) =>\n props.showOnClick\n ? `${Container} {\n visibility: ${props.showPopover ? 'visible' : 'hidden'};\n opacity: ${props.showPopover ? '1' : '0'};\n }\n cursor: pointer;`\n : `&:hover {\n ${Container} {\n visibility: visible;\n opacity: 1;\n }\n }`}\n`;\n\nconst renderMargins = (isNotePresent: boolean, size: Size): string => {\n if (isNotePresent) {\n return size === Size.Small ? '10px 16px' : size === Size.Large ? '14px 24px' : '12px 20px';\n } else {\n return size === Size.Small ? '18px 16px' : size === Size.Large ? '24px' : '20px';\n }\n};\n\nconst renderArrowStyles = (position: Position) => {\n if (position === Position.Bottom) {\n return `height: 0px;\n width: 0px;\n border-top: 16px solid transparent;\n border-right: 12px solid transparent;\n border-bottom: 16px solid rgb(255,255,255);\n border-left: 12px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(50% - 12px);\n bottom: calc(100% - 1px);`;\n }\n\n if (position === Position.Top) {\n return `height: 0px;\n width: 0px;\n border-top: 16px solid rgb(255,255,255);\n border-right: 12px solid transparent;\n border-bottom: 16px solid transparent;\n border-left: 12px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(50% - 12px);\n top: calc(100% - 1px);`;\n }\n\n if (position === Position.Left) {\n return `height: 0px;\n width: 0px;\n border-top: 12px solid transparent;\n border-right: 16px solid transparent;\n border-bottom: 12px solid transparent;\n border-left: 16px solid rgb(255,255,255);\n content: \"\";\n position: absolute;\n left: calc(100% - 1px);\n bottom: calc(50% - 12px);`;\n }\n\n if (position === Position.Right) {\n return `height: 0px;\n width: 0px;\n border-top: 12px solid transparent;\n border-right: 16px solid rgb(255,255,255);\n border-bottom: 12px solid transparent;\n border-left: 16px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(100% - 1px);\n bottom: calc(50% - 12px);`;\n }\n};\n\ntype topSectionProps = {\n text: string;\n note?: string;\n};\n\ntype actionButtonProps = {\n icon: React.ReactNode;\n action: () => void;\n label?: string;\n};\n\ntype bottomSectionProps = {\n iconButtons?: actionButtonProps[];\n textButton?: actionButtonProps;\n};\n\ntype PopoverProps = {\n size?: Size.Small | Size.Medium | Size.Large;\n topSectionProps?: topSectionProps;\n bottomSectionProps?: bottomSectionProps;\n mainContent: React.ReactNode;\n children: React.ReactNode;\n position: Position.Top | Position.Bottom | Position.Right | Position.Left;\n showOnClick: boolean;\n showArrowPointer?: boolean;\n};\n\nconst Popover: React.FunctionComponent<PopoverProps> = ({\n size = Size.Medium,\n topSectionProps,\n bottomSectionProps,\n mainContent,\n children,\n position,\n showOnClick = false,\n showArrowPointer = false,\n}) => {\n const [showPopover, setShowPopover] = React.useState(false);\n const popoverRef = React.useRef<any>();\n\n React.useEffect(() => {\n const checkIfClickedOutside = (e: { target: any }) => {\n if (showPopover && popoverRef.current && !popoverRef.current.contains(e.target)) {\n setShowPopover(false);\n }\n };\n\n document.addEventListener('mousedown', checkIfClickedOutside);\n\n return () => {\n document.removeEventListener('mousedown', checkIfClickedOutside);\n };\n }, [showPopover]);\n\n return (\n <Wrapper position={position} showOnClick={showOnClick} showPopover={showPopover}>\n <Container size={size} position={position} ref={popoverRef} showArrowPointer={showArrowPointer}>\n {!!topSectionProps && (\n <TopContainer size={size}>\n <TextContainer note={!!topSectionProps?.note} size={size}>\n {topSectionProps?.note && <NoteContainer size={size}>{topSectionProps.note}</NoteContainer>}\n <LabelContainer size={size}>{topSectionProps?.text}</LabelContainer>\n </TextContainer>\n\n {showOnClick && (\n <CloseButtonContainer size={size} data-testid={'closeBtn'}>\n <IconButton action={() => setShowPopover(false)} useTransparentBackground iconColor={COLORS.neutral_600} variant=\"secondary\" shape=\"circular\">\n <SystemIcons.Close />\n </IconButton>\n </CloseButtonContainer>\n )}\n </TopContainer>\n )}\n\n <MiddleContainer size={size}>{mainContent}</MiddleContainer>\n\n {!!bottomSectionProps && (\n <BottomContainer size={size}>\n {!!bottomSectionProps?.textButton?.icon && (\n <TextButtonContainer size={size} data-testid={'textBtn'}>\n <Button size={size} variant=\"secondary\" icon={bottomSectionProps.textButton.icon} onClick={bottomSectionProps.textButton.action}>\n {bottomSectionProps.textButton.label}\n </Button>\n </TextButtonContainer>\n )}\n\n <div className=\"bottom-flex\" />\n\n <IconButtonContainer size={size} data-testid={'iconBtn'}>\n {bottomSectionProps?.iconButtons?.map((iconButton) => (\n <IconButton action={iconButton.action} variant=\"secondary\" shape=\"circular\" useTransparentBackground>\n {iconButton.icon}\n </IconButton>\n ))}\n </IconButtonContainer>\n </BottomContainer>\n )}\n </Container>\n\n <div onClick={() => showOnClick && setShowPopover(!showPopover)}>\n {children}\n\n <div className=\"pointer-space\" />\n </div>\n </Wrapper>\n );\n};\n\nexport default Popover;\n"],"file":"Popover.cjs"}
|
|
@@ -21,6 +21,7 @@ declare type PopoverProps = {
|
|
|
21
21
|
children: React.ReactNode;
|
|
22
22
|
position: Position.Top | Position.Bottom | Position.Right | Position.Left;
|
|
23
23
|
showOnClick: boolean;
|
|
24
|
+
showArrowPointer?: boolean;
|
|
24
25
|
};
|
|
25
26
|
declare const Popover: React.FunctionComponent<PopoverProps>;
|
|
26
27
|
export default Popover;
|
package/dist/Popover/Popover.js
CHANGED
|
@@ -2,7 +2,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
|
2
2
|
import _taggedTemplateLiteral from "@babel/runtime/helpers/esm/taggedTemplateLiteral";
|
|
3
3
|
import _pt from "prop-types";
|
|
4
4
|
|
|
5
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11
|
|
5
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11;
|
|
6
6
|
|
|
7
7
|
import * as React from 'react';
|
|
8
8
|
import styled from 'styled-components';
|
|
@@ -13,69 +13,54 @@ import { BOXSHADOWS, ComponentLStyling, ComponentMStyling, ComponentSStyling, Co
|
|
|
13
13
|
import { Position, Size } from '../types';
|
|
14
14
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
15
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
|
-
var Container = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n height: ", ";\n width: ", ";\n border-radius: 4px;\n background: ", ";\n cursor: default;\n box-shadow: ", ";\n\n position: absolute; \n visibility: hidden;\n opacity: 0;\n z-index: ", ";\n\n ", "\n ", "\n\n ", "\n ", "\n\n &::after {\n
|
|
16
|
+
var Container = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n //height: ", ";\n min-width: ", ";\n border-radius: 4px;\n background: ", ";\n cursor: default;\n box-shadow: ", ";\n\n position: absolute; \n visibility: hidden;\n opacity: 0;\n z-index: ", ";\n\n ", "\n ", "\n\n ", "\n ", "\n\n &::after {\n ", "\n"])), function (props) {
|
|
17
17
|
return props.size === Size.Small ? '240px' : props.size === Size.Large ? '480px' : '360px';
|
|
18
18
|
}, function (props) {
|
|
19
|
-
return props.size === Size.Small ? '
|
|
19
|
+
return props.size === Size.Small ? '320px' : props.size === Size.Large ? '640px' : '480px';
|
|
20
20
|
}, COLORS.white, BOXSHADOWS.BOXSHADOW_CENTERED, Z_INDEXES.popover, function (props) {
|
|
21
|
-
return props.position == Position.Bottom ? 'right: 50%; top: calc(100% +
|
|
21
|
+
return props.position == Position.Bottom ? 'right: 50%; top: calc(100% + 16px); transform: translateX(50%);' : '';
|
|
22
22
|
}, function (props) {
|
|
23
|
-
return props.position == Position.Top ? 'right: 50%; bottom: calc(100% +
|
|
23
|
+
return props.position == Position.Top ? 'right: 50%; bottom: calc(100% + 16px); transform: translateX(50%);' : '';
|
|
24
24
|
}, function (props) {
|
|
25
|
-
return props.position == Position.Left ? 'bottom: 50%; right: calc(100% +
|
|
25
|
+
return props.position == Position.Left ? 'bottom: 50%; right: calc(100% + 16px); transform: translateY(50%);' : '';
|
|
26
26
|
}, function (props) {
|
|
27
|
-
return props.position == Position.Right ? 'bottom: 50%; left: calc(100% +
|
|
28
|
-
}, COLORS.white, function (props) {
|
|
29
|
-
return props.position == Position.Bottom ? 'right: 50%; bottom: 100%; transform: translateY(50%) rotate(45deg);' : '';
|
|
27
|
+
return props.position == Position.Right ? 'bottom: 50%; left: calc(100% + 16px); transform: translateY(50%);' : '';
|
|
30
28
|
}, function (props) {
|
|
31
|
-
return props.
|
|
32
|
-
}, function (props) {
|
|
33
|
-
return props.position == Position.Left ? 'bottom: 50%; left: 100%; transform: translateX(-50%) rotate(45deg);' : '';
|
|
34
|
-
}, function (props) {
|
|
35
|
-
return props.position == Position.Right ? 'bottom: 50%; right: 100%; transform: translateX(50%) rotate(45deg);' : '';
|
|
29
|
+
return props.showArrowPointer ? renderArrowStyles(props.position) : '';
|
|
36
30
|
});
|
|
37
|
-
var TopContainer = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n height: ", ";\n
|
|
31
|
+
var TopContainer = styled.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n height: ", ";\n display: flex;\n"])), function (props) {
|
|
38
32
|
return props.size === Size.Small ? '56px' : props.size === Size.Large ? '72px' : '64px';
|
|
39
|
-
}, function (props) {
|
|
40
|
-
return props.size === Size.Small ? '344px' : props.size === Size.Large ? '624px' : '464px';
|
|
41
|
-
});
|
|
42
|
-
var MainContentWrapper = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n padding: ", ";\n"])), function (props) {
|
|
43
|
-
return props.size === Size.Small ? '8px 0 8px 16px' : props.size === Size.Large ? '8px 0 8px 24px' : '8px 0 8px 20px';
|
|
44
33
|
});
|
|
45
|
-
var MiddleContainer = styled.div(
|
|
34
|
+
var MiddleContainer = styled.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n margin: 8px;\n height: ", ";\n padding: ", ";\n overflow-y: auto;\n ", "\n"])), function (props) {
|
|
46
35
|
return props.size === Size.Small ? '104px' : props.size === Size.Large ? '304px' : '208px';
|
|
47
36
|
}, function (props) {
|
|
48
|
-
return props.size === Size.Small ? '
|
|
49
|
-
}, function (props) {
|
|
50
|
-
return props.size === Size.Small ? '6px' : props.size === Size.Large ? '14px' : '10px';
|
|
37
|
+
return props.size === Size.Small ? '0 8px' : props.size === Size.Large ? '0 16px' : '0 12px';
|
|
51
38
|
}, scrollBarStyling(Size.Small));
|
|
52
|
-
var BottomContainer = styled.div(
|
|
39
|
+
var BottomContainer = styled.div(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n height: ", "; \n display: flex;\n\n .bottom-flex {\n flex: 1;\n }\n"])), function (props) {
|
|
53
40
|
return props.size === Size.Small ? '64px' : props.size === Size.Large ? '88px' : '72px';
|
|
54
|
-
}, function (props) {
|
|
55
|
-
return props.size === Size.Small ? '344px' : props.size === Size.Large ? '624px' : '464px';
|
|
56
41
|
});
|
|
57
|
-
var TextContainer = styled.div(
|
|
42
|
+
var TextContainer = styled.div(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["\n display: flex;\n flex-direction: column;\n margin: ", ";\n flex-grow: 1;\n"])), function (props) {
|
|
58
43
|
return renderMargins(props.note, props.size);
|
|
59
44
|
});
|
|
60
|
-
var NoteContainer = styled.div(
|
|
45
|
+
var NoteContainer = styled.div(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n ", "\n"])), function (props) {
|
|
61
46
|
return props.size === Size.Small ? ComponentXXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600) : props.size === Size.Large ? ComponentSStyling(ComponentTextStyle.Regular, COLORS.neutral_600) : ComponentXSStyling(ComponentTextStyle.Regular, COLORS.neutral_600);
|
|
62
47
|
});
|
|
63
|
-
var LabelContainer = styled.div(
|
|
48
|
+
var LabelContainer = styled.div(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["\n ", "\n"])), function (props) {
|
|
64
49
|
return props.size === Size.Small ? ComponentSStyling(ComponentTextStyle.Bold, null) : props.size === Size.Large ? ComponentLStyling(ComponentTextStyle.Bold, null) : ComponentMStyling(ComponentTextStyle.Bold, null);
|
|
65
50
|
});
|
|
66
|
-
var CloseButtonContainer = styled.div(
|
|
51
|
+
var CloseButtonContainer = styled.div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n margin: ", ";\n"])), function (props) {
|
|
67
52
|
return props.size === Size.Small ? '4px 16px 4px 0' : props.size === Size.Large ? '12px 24px 12px 0' : '8px 20px 8px 0';
|
|
68
53
|
});
|
|
69
|
-
var TextButtonContainer = styled.div(
|
|
54
|
+
var TextButtonContainer = styled.div(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["\n margin: ", ";\n"])), function (props) {
|
|
70
55
|
return props.size === Size.Small ? '8px 0 8px 16px' : props.size === Size.Large ? '16px 0 16px 24px' : '12px 0 12px 20px';
|
|
71
56
|
});
|
|
72
|
-
var IconButtonContainer = styled.div(
|
|
57
|
+
var IconButtonContainer = styled.div(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["\n margin: ", ";\n display: flex;\n"])), function (props) {
|
|
73
58
|
return props.size === Size.Small ? '8px 16px 8px 0' : props.size === Size.Large ? '16px 24px 16px 0' : '12px 20px 12px 0';
|
|
74
59
|
});
|
|
75
|
-
var Wrapper = styled.div(
|
|
76
|
-
return props.position === Position.Top || props.position === Position.Bottom ? '
|
|
60
|
+
var Wrapper = styled.div(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["\n position: relative;\n\n .pointer-space {\n height: ", ";\n width: ", ";\n position: absolute;\n\n ", ";\n ", ";\n\n ", ";\n ", ";\n }\n\n ", "\n"])), function (props) {
|
|
61
|
+
return props.position === Position.Top || props.position === Position.Bottom ? '16px' : '100%';
|
|
77
62
|
}, function (props) {
|
|
78
|
-
return props.position === Position.Left || props.position === Position.Right ? '
|
|
63
|
+
return props.position === Position.Left || props.position === Position.Right ? '16px' : '100%';
|
|
79
64
|
}, function (props) {
|
|
80
65
|
return props.position === Position.Left ? 'right:100%; bottom: 0%' : '';
|
|
81
66
|
}, function (props) {
|
|
@@ -96,6 +81,24 @@ var renderMargins = function renderMargins(isNotePresent, size) {
|
|
|
96
81
|
}
|
|
97
82
|
};
|
|
98
83
|
|
|
84
|
+
var renderArrowStyles = function renderArrowStyles(position) {
|
|
85
|
+
if (position === Position.Bottom) {
|
|
86
|
+
return "height: 0px;\n width: 0px;\n border-top: 16px solid transparent;\n border-right: 12px solid transparent;\n border-bottom: 16px solid rgb(255,255,255);\n border-left: 12px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(50% - 12px);\n bottom: calc(100% - 1px);";
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
if (position === Position.Top) {
|
|
90
|
+
return "height: 0px;\n width: 0px;\n border-top: 16px solid rgb(255,255,255);\n border-right: 12px solid transparent;\n border-bottom: 16px solid transparent;\n border-left: 12px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(50% - 12px);\n top: calc(100% - 1px);";
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
if (position === Position.Left) {
|
|
94
|
+
return "height: 0px;\n width: 0px;\n border-top: 12px solid transparent;\n border-right: 16px solid transparent;\n border-bottom: 12px solid transparent;\n border-left: 16px solid rgb(255,255,255);\n content: \"\";\n position: absolute;\n left: calc(100% - 1px);\n bottom: calc(50% - 12px);";
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
if (position === Position.Right) {
|
|
98
|
+
return "height: 0px;\n width: 0px;\n border-top: 12px solid transparent;\n border-right: 16px solid rgb(255,255,255);\n border-bottom: 12px solid transparent;\n border-left: 16px solid transparent;\n content: \"\";\n position: absolute;\n right: calc(100% - 1px);\n bottom: calc(50% - 12px);";
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
|
|
99
102
|
var Popover = function Popover(_ref) {
|
|
100
103
|
var _bottomSectionProps$t, _bottomSectionProps$i;
|
|
101
104
|
|
|
@@ -107,7 +110,9 @@ var Popover = function Popover(_ref) {
|
|
|
107
110
|
children = _ref.children,
|
|
108
111
|
position = _ref.position,
|
|
109
112
|
_ref$showOnClick = _ref.showOnClick,
|
|
110
|
-
showOnClick = _ref$showOnClick === void 0 ? false : _ref$showOnClick
|
|
113
|
+
showOnClick = _ref$showOnClick === void 0 ? false : _ref$showOnClick,
|
|
114
|
+
_ref$showArrowPointer = _ref.showArrowPointer,
|
|
115
|
+
showArrowPointer = _ref$showArrowPointer === void 0 ? false : _ref$showArrowPointer;
|
|
111
116
|
|
|
112
117
|
var _React$useState = React.useState(false),
|
|
113
118
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -122,9 +127,9 @@ var Popover = function Popover(_ref) {
|
|
|
122
127
|
}
|
|
123
128
|
};
|
|
124
129
|
|
|
125
|
-
document.addEventListener(
|
|
130
|
+
document.addEventListener('mousedown', checkIfClickedOutside);
|
|
126
131
|
return function () {
|
|
127
|
-
document.removeEventListener(
|
|
132
|
+
document.removeEventListener('mousedown', checkIfClickedOutside);
|
|
128
133
|
};
|
|
129
134
|
}, [showPopover]);
|
|
130
135
|
return /*#__PURE__*/_jsxs(Wrapper, {
|
|
@@ -135,6 +140,7 @@ var Popover = function Popover(_ref) {
|
|
|
135
140
|
size: size,
|
|
136
141
|
position: position,
|
|
137
142
|
ref: popoverRef,
|
|
143
|
+
showArrowPointer: showArrowPointer,
|
|
138
144
|
children: [!!topSectionProps && /*#__PURE__*/_jsxs(TopContainer, {
|
|
139
145
|
size: size,
|
|
140
146
|
children: [/*#__PURE__*/_jsxs(TextContainer, {
|
|
@@ -161,12 +167,9 @@ var Popover = function Popover(_ref) {
|
|
|
161
167
|
children: /*#__PURE__*/_jsx(SystemIcons.Close, {})
|
|
162
168
|
})
|
|
163
169
|
})]
|
|
164
|
-
}), /*#__PURE__*/_jsx(
|
|
170
|
+
}), /*#__PURE__*/_jsx(MiddleContainer, {
|
|
165
171
|
size: size,
|
|
166
|
-
children:
|
|
167
|
-
size: size,
|
|
168
|
-
children: mainContent
|
|
169
|
-
})
|
|
172
|
+
children: mainContent
|
|
170
173
|
}), !!bottomSectionProps && /*#__PURE__*/_jsxs(BottomContainer, {
|
|
171
174
|
size: size,
|
|
172
175
|
children: [!!(bottomSectionProps !== null && bottomSectionProps !== void 0 && (_bottomSectionProps$t = bottomSectionProps.textButton) !== null && _bottomSectionProps$t !== void 0 && _bottomSectionProps$t.icon) && /*#__PURE__*/_jsx(TextButtonContainer, {
|
|
@@ -225,7 +228,8 @@ Popover.propTypes = {
|
|
|
225
228
|
}),
|
|
226
229
|
mainContent: _pt.node.isRequired,
|
|
227
230
|
children: _pt.node.isRequired,
|
|
228
|
-
showOnClick: _pt.bool.isRequired
|
|
231
|
+
showOnClick: _pt.bool.isRequired,
|
|
232
|
+
showArrowPointer: _pt.bool
|
|
229
233
|
};
|
|
230
234
|
export default Popover;
|
|
231
235
|
//# sourceMappingURL=Popover.js.map
|