@canonical/react-components 1.3.1 → 1.3.2
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/package.json +7 -10
- package/dist-esm/components/Accordion/Accordion.js +0 -52
- package/dist-esm/components/Accordion/AccordionSection/AccordionSection.js +0 -47
- package/dist-esm/components/Accordion/AccordionSection/index.js +0 -1
- package/dist-esm/components/Accordion/index.js +0 -1
- package/dist-esm/components/ActionButton/ActionButton.js +0 -106
- package/dist-esm/components/ActionButton/index.js +0 -1
- package/dist-esm/components/ApplicationLayout/AppAside/AppAside.js +0 -29
- package/dist-esm/components/ApplicationLayout/AppAside/index.js +0 -1
- package/dist-esm/components/ApplicationLayout/AppMain/AppMain.js +0 -21
- package/dist-esm/components/ApplicationLayout/AppMain/index.js +0 -1
- package/dist-esm/components/ApplicationLayout/AppNavigation/AppNavigation.js +0 -31
- package/dist-esm/components/ApplicationLayout/AppNavigation/index.js +0 -1
- package/dist-esm/components/ApplicationLayout/AppNavigationBar/AppNavigationBar.js +0 -24
- package/dist-esm/components/ApplicationLayout/AppNavigationBar/index.js +0 -1
- package/dist-esm/components/ApplicationLayout/AppStatus/AppStatus.js +0 -21
- package/dist-esm/components/ApplicationLayout/AppStatus/index.js +0 -1
- package/dist-esm/components/ApplicationLayout/Application/Application.js +0 -22
- package/dist-esm/components/ApplicationLayout/Application/index.js +0 -1
- package/dist-esm/components/ApplicationLayout/ApplicationLayout.js +0 -113
- package/dist-esm/components/ApplicationLayout/index.js +0 -7
- package/dist-esm/components/ArticlePagination/ArticlePagination.js +0 -39
- package/dist-esm/components/ArticlePagination/index.js +0 -1
- package/dist-esm/components/Badge/Badge.js +0 -64
- package/dist-esm/components/Badge/index.js +0 -1
- package/dist-esm/components/Button/Button.js +0 -55
- package/dist-esm/components/Button/index.js +0 -1
- package/dist-esm/components/Card/Card.js +0 -45
- package/dist-esm/components/Card/index.js +0 -1
- package/dist-esm/components/CheckboxInput/CheckableInput/CheckableInput.js +0 -35
- package/dist-esm/components/CheckboxInput/CheckableInput/index.js +0 -1
- package/dist-esm/components/CheckboxInput/CheckboxInput.js +0 -24
- package/dist-esm/components/CheckboxInput/index.js +0 -1
- package/dist-esm/components/Chip/Chip.js +0 -81
- package/dist-esm/components/Chip/index.js +0 -1
- package/dist-esm/components/Code/Code.js +0 -49
- package/dist-esm/components/Code/index.js +0 -1
- package/dist-esm/components/CodeSnippet/CodeSnippet.js +0 -28
- package/dist-esm/components/CodeSnippet/CodeSnippetBlock.js +0 -64
- package/dist-esm/components/CodeSnippet/CodeSnippetDropdown.js +0 -27
- package/dist-esm/components/CodeSnippet/index.js +0 -2
- package/dist-esm/components/Col/Col.js +0 -38
- package/dist-esm/components/Col/index.js +0 -1
- package/dist-esm/components/ConfirmationButton/ConfirmationButton.js +0 -63
- package/dist-esm/components/ConfirmationButton/index.js +0 -1
- package/dist-esm/components/ConfirmationModal/ConfirmationModal.js +0 -47
- package/dist-esm/components/ConfirmationModal/index.js +0 -1
- package/dist-esm/components/ContextualMenu/ContextualMenu.js +0 -215
- package/dist-esm/components/ContextualMenu/ContextualMenuDropdown/ContextualMenuDropdown.js +0 -249
- package/dist-esm/components/ContextualMenu/ContextualMenuDropdown/index.js +0 -1
- package/dist-esm/components/ContextualMenu/index.js +0 -1
- package/dist-esm/components/EmptyState/EmptyState.js +0 -28
- package/dist-esm/components/EmptyState/index.js +0 -1
- package/dist-esm/components/Field/Field.js +0 -126
- package/dist-esm/components/Field/index.js +0 -1
- package/dist-esm/components/Form/Form.js +0 -28
- package/dist-esm/components/Form/index.js +0 -1
- package/dist-esm/components/FormikField/FormikField.js +0 -33
- package/dist-esm/components/FormikField/index.js +0 -1
- package/dist-esm/components/Icon/Icon.js +0 -61
- package/dist-esm/components/Icon/index.js +0 -1
- package/dist-esm/components/Input/Input.js +0 -103
- package/dist-esm/components/Input/index.js +0 -1
- package/dist-esm/components/Label/Label.js +0 -27
- package/dist-esm/components/Label/index.js +0 -1
- package/dist-esm/components/Link/Link.js +0 -37
- package/dist-esm/components/Link/index.js +0 -1
- package/dist-esm/components/List/List.js +0 -110
- package/dist-esm/components/List/index.js +0 -1
- package/dist-esm/components/Loader/Loader.js +0 -14
- package/dist-esm/components/Loader/index.js +0 -1
- package/dist-esm/components/LoginPageLayout/LoginPageLayout.js +0 -63
- package/dist-esm/components/LoginPageLayout/index.js +0 -1
- package/dist-esm/components/MainTable/MainTable.js +0 -211
- package/dist-esm/components/MainTable/index.js +0 -1
- package/dist-esm/components/Modal/Modal.js +0 -135
- package/dist-esm/components/Modal/index.js +0 -1
- package/dist-esm/components/ModularTable/ModularTable.js +0 -166
- package/dist-esm/components/ModularTable/index.js +0 -1
- package/dist-esm/components/MultiSelect/FadeInDown/FadeInDown.js +0 -25
- package/dist-esm/components/MultiSelect/FadeInDown/index.js +0 -1
- package/dist-esm/components/MultiSelect/MultiSelect.js +0 -308
- package/dist-esm/components/MultiSelect/index.js +0 -1
- package/dist-esm/components/Navigation/Navigation.js +0 -215
- package/dist-esm/components/Navigation/NavigationLink/NavigationLink.js +0 -58
- package/dist-esm/components/Navigation/NavigationLink/index.js +0 -1
- package/dist-esm/components/Navigation/NavigationMenu/NavigationMenu.js +0 -57
- package/dist-esm/components/Navigation/NavigationMenu/index.js +0 -1
- package/dist-esm/components/Navigation/index.js +0 -1
- package/dist-esm/components/Navigation/types.js +0 -1
- package/dist-esm/components/Notification/Notification.js +0 -119
- package/dist-esm/components/Notification/index.js +0 -1
- package/dist-esm/components/NotificationProvider/NotificationProvider.js +0 -83
- package/dist-esm/components/NotificationProvider/index.js +0 -2
- package/dist-esm/components/NotificationProvider/messageBuilder.js +0 -31
- package/dist-esm/components/NotificationProvider/types.js +0 -1
- package/dist-esm/components/Pagination/Pagination.js +0 -173
- package/dist-esm/components/Pagination/PaginationButton/PaginationButton.js +0 -31
- package/dist-esm/components/Pagination/PaginationButton/index.js +0 -1
- package/dist-esm/components/Pagination/PaginationItem/PaginationItem.js +0 -20
- package/dist-esm/components/Pagination/PaginationItem/index.js +0 -1
- package/dist-esm/components/Pagination/index.js +0 -1
- package/dist-esm/components/Panel/Panel.js +0 -89
- package/dist-esm/components/Panel/index.js +0 -1
- package/dist-esm/components/PasswordToggle/PasswordToggle.js +0 -90
- package/dist-esm/components/PasswordToggle/index.js +0 -1
- package/dist-esm/components/RadioInput/RadioInput.js +0 -22
- package/dist-esm/components/RadioInput/index.js +0 -1
- package/dist-esm/components/Row/Row.js +0 -22
- package/dist-esm/components/Row/index.js +0 -1
- package/dist-esm/components/SearchAndFilter/FilterPanelSection/FilterPanelSection.js +0 -107
- package/dist-esm/components/SearchAndFilter/FilterPanelSection/index.js +0 -1
- package/dist-esm/components/SearchAndFilter/SearchAndFilter.js +0 -286
- package/dist-esm/components/SearchAndFilter/index.js +0 -1
- package/dist-esm/components/SearchAndFilter/types.js +0 -1
- package/dist-esm/components/SearchAndFilter/utils.js +0 -22
- package/dist-esm/components/SearchBox/SearchBox.js +0 -95
- package/dist-esm/components/SearchBox/index.js +0 -1
- package/dist-esm/components/Select/Select.js +0 -84
- package/dist-esm/components/Select/index.js +0 -1
- package/dist-esm/components/SideNavigation/SideNavigation.js +0 -89
- package/dist-esm/components/SideNavigation/SideNavigationBase/SideNavigationBase.js +0 -31
- package/dist-esm/components/SideNavigation/SideNavigationBase/index.js +0 -1
- package/dist-esm/components/SideNavigation/SideNavigationItem/SideNavigationItem.js +0 -32
- package/dist-esm/components/SideNavigation/SideNavigationItem/index.js +0 -1
- package/dist-esm/components/SideNavigation/SideNavigationLink/SideNavigationLink.js +0 -25
- package/dist-esm/components/SideNavigation/SideNavigationLink/index.js +0 -1
- package/dist-esm/components/SideNavigation/SideNavigationText/SideNavigationText.js +0 -20
- package/dist-esm/components/SideNavigation/SideNavigationText/index.js +0 -1
- package/dist-esm/components/SideNavigation/index.js +0 -4
- package/dist-esm/components/Slider/Slider.js +0 -83
- package/dist-esm/components/Slider/index.js +0 -1
- package/dist-esm/components/Spinner/Spinner.js +0 -36
- package/dist-esm/components/Spinner/index.js +0 -1
- package/dist-esm/components/StatusLabel/StatusLabel.js +0 -36
- package/dist-esm/components/StatusLabel/index.js +0 -1
- package/dist-esm/components/Strip/Strip.js +0 -50
- package/dist-esm/components/Strip/index.js +0 -1
- package/dist-esm/components/SummaryButton/SummaryButton.js +0 -28
- package/dist-esm/components/SummaryButton/index.js +0 -1
- package/dist-esm/components/Switch/Switch.js +0 -28
- package/dist-esm/components/Switch/index.js +0 -1
- package/dist-esm/components/Table/Table.js +0 -23
- package/dist-esm/components/Table/index.js +0 -1
- package/dist-esm/components/TableCell/TableCell.js +0 -26
- package/dist-esm/components/TableCell/index.js +0 -1
- package/dist-esm/components/TableHeader/TableHeader.js +0 -17
- package/dist-esm/components/TableHeader/index.js +0 -1
- package/dist-esm/components/TablePagination/TablePagination.js +0 -104
- package/dist-esm/components/TablePagination/TablePaginationControls/TablePaginationControls.js +0 -120
- package/dist-esm/components/TablePagination/TablePaginationControls/index.js +0 -1
- package/dist-esm/components/TablePagination/index.js +0 -1
- package/dist-esm/components/TablePagination/utils.js +0 -67
- package/dist-esm/components/TableRow/TableRow.js +0 -15
- package/dist-esm/components/TableRow/index.js +0 -1
- package/dist-esm/components/Tabs/Tabs.js +0 -42
- package/dist-esm/components/Tabs/index.js +0 -1
- package/dist-esm/components/Textarea/Textarea.js +0 -115
- package/dist-esm/components/Textarea/index.js +0 -1
- package/dist-esm/components/Tooltip/Tooltip.js +0 -245
- package/dist-esm/components/Tooltip/index.js +0 -1
- package/dist-esm/enums.js +0 -8
- package/dist-esm/hooks/index.js +0 -8
- package/dist-esm/hooks/useId.js +0 -13
- package/dist-esm/hooks/useListener.js +0 -51
- package/dist-esm/hooks/useOnClickOutside.js +0 -38
- package/dist-esm/hooks/useOnEscapePressed.js +0 -25
- package/dist-esm/hooks/usePagination.js +0 -45
- package/dist-esm/hooks/usePrevious.js +0 -16
- package/dist-esm/hooks/useThrottle.js +0 -49
- package/dist-esm/hooks/useWindowFitment.js +0 -109
- package/dist-esm/index.js +0 -69
- package/dist-esm/types/index.js +0 -1
- package/dist-esm/types/react-table-config.d.js +0 -1
- package/dist-esm/utils.js +0 -41
- /package/{dist-types → dist}/components/Accordion/Accordion.d.ts +0 -0
- /package/{dist-types → dist}/components/Accordion/AccordionSection/AccordionSection.d.ts +0 -0
- /package/{dist-types → dist}/components/Accordion/AccordionSection/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Accordion/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ActionButton/ActionButton.d.ts +0 -0
- /package/{dist-types → dist}/components/ActionButton/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppAside/AppAside.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppAside/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppMain/AppMain.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppMain/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppNavigation/AppNavigation.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppNavigation/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppNavigationBar/AppNavigationBar.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppNavigationBar/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppStatus/AppStatus.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/AppStatus/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/Application/Application.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/Application/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/ApplicationLayout.d.ts +0 -0
- /package/{dist-types → dist}/components/ApplicationLayout/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ArticlePagination/ArticlePagination.d.ts +0 -0
- /package/{dist-types → dist}/components/ArticlePagination/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Badge/Badge.d.ts +0 -0
- /package/{dist-types → dist}/components/Badge/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Button/Button.d.ts +0 -0
- /package/{dist-types → dist}/components/Button/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Card/Card.d.ts +0 -0
- /package/{dist-types → dist}/components/Card/index.d.ts +0 -0
- /package/{dist-types → dist}/components/CheckboxInput/CheckableInput/CheckableInput.d.ts +0 -0
- /package/{dist-types → dist}/components/CheckboxInput/CheckableInput/index.d.ts +0 -0
- /package/{dist-types → dist}/components/CheckboxInput/CheckboxInput.d.ts +0 -0
- /package/{dist-types → dist}/components/CheckboxInput/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Chip/Chip.d.ts +0 -0
- /package/{dist-types → dist}/components/Chip/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Code/Code.d.ts +0 -0
- /package/{dist-types → dist}/components/Code/index.d.ts +0 -0
- /package/{dist-types → dist}/components/CodeSnippet/CodeSnippet.d.ts +0 -0
- /package/{dist-types → dist}/components/CodeSnippet/CodeSnippetBlock.d.ts +0 -0
- /package/{dist-types → dist}/components/CodeSnippet/CodeSnippetDropdown.d.ts +0 -0
- /package/{dist-types → dist}/components/CodeSnippet/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Col/Col.d.ts +0 -0
- /package/{dist-types → dist}/components/Col/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ConfirmationButton/ConfirmationButton.d.ts +0 -0
- /package/{dist-types → dist}/components/ConfirmationButton/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ConfirmationModal/ConfirmationModal.d.ts +0 -0
- /package/{dist-types → dist}/components/ConfirmationModal/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ContextualMenu/ContextualMenu.d.ts +0 -0
- /package/{dist-types → dist}/components/ContextualMenu/ContextualMenuDropdown/ContextualMenuDropdown.d.ts +0 -0
- /package/{dist-types → dist}/components/ContextualMenu/ContextualMenuDropdown/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ContextualMenu/index.d.ts +0 -0
- /package/{dist-types → dist}/components/EmptyState/EmptyState.d.ts +0 -0
- /package/{dist-types → dist}/components/EmptyState/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Field/Field.d.ts +0 -0
- /package/{dist-types → dist}/components/Field/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Form/Form.d.ts +0 -0
- /package/{dist-types → dist}/components/Form/index.d.ts +0 -0
- /package/{dist-types → dist}/components/FormikField/FormikField.d.ts +0 -0
- /package/{dist-types → dist}/components/FormikField/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Icon/Icon.d.ts +0 -0
- /package/{dist-types → dist}/components/Icon/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Input/Input.d.ts +0 -0
- /package/{dist-types → dist}/components/Input/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Label/Label.d.ts +0 -0
- /package/{dist-types → dist}/components/Label/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Link/Link.d.ts +0 -0
- /package/{dist-types → dist}/components/Link/index.d.ts +0 -0
- /package/{dist-types → dist}/components/List/List.d.ts +0 -0
- /package/{dist-types → dist}/components/List/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Loader/Loader.d.ts +0 -0
- /package/{dist-types → dist}/components/Loader/index.d.ts +0 -0
- /package/{dist-types → dist}/components/LoginPageLayout/LoginPageLayout.d.ts +0 -0
- /package/{dist-types → dist}/components/LoginPageLayout/index.d.ts +0 -0
- /package/{dist-types → dist}/components/MainTable/MainTable.d.ts +0 -0
- /package/{dist-types → dist}/components/MainTable/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Modal/Modal.d.ts +0 -0
- /package/{dist-types → dist}/components/Modal/index.d.ts +0 -0
- /package/{dist-types → dist}/components/ModularTable/ModularTable.d.ts +0 -0
- /package/{dist-types → dist}/components/ModularTable/index.d.ts +0 -0
- /package/{dist-types → dist}/components/MultiSelect/FadeInDown/FadeInDown.d.ts +0 -0
- /package/{dist-types → dist}/components/MultiSelect/FadeInDown/index.d.ts +0 -0
- /package/{dist-types → dist}/components/MultiSelect/MultiSelect.d.ts +0 -0
- /package/{dist-types → dist}/components/MultiSelect/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Navigation/Navigation.d.ts +0 -0
- /package/{dist-types → dist}/components/Navigation/NavigationLink/NavigationLink.d.ts +0 -0
- /package/{dist-types → dist}/components/Navigation/NavigationLink/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Navigation/NavigationMenu/NavigationMenu.d.ts +0 -0
- /package/{dist-types → dist}/components/Navigation/NavigationMenu/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Navigation/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Navigation/types.d.ts +0 -0
- /package/{dist-types → dist}/components/Notification/Notification.d.ts +0 -0
- /package/{dist-types → dist}/components/Notification/index.d.ts +0 -0
- /package/{dist-types → dist}/components/NotificationProvider/NotificationProvider.d.ts +0 -0
- /package/{dist-types → dist}/components/NotificationProvider/index.d.ts +0 -0
- /package/{dist-types → dist}/components/NotificationProvider/messageBuilder.d.ts +0 -0
- /package/{dist-types → dist}/components/NotificationProvider/types.d.ts +0 -0
- /package/{dist-types → dist}/components/Pagination/Pagination.d.ts +0 -0
- /package/{dist-types → dist}/components/Pagination/PaginationButton/PaginationButton.d.ts +0 -0
- /package/{dist-types → dist}/components/Pagination/PaginationButton/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Pagination/PaginationItem/PaginationItem.d.ts +0 -0
- /package/{dist-types → dist}/components/Pagination/PaginationItem/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Pagination/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Panel/Panel.d.ts +0 -0
- /package/{dist-types → dist}/components/Panel/index.d.ts +0 -0
- /package/{dist-types → dist}/components/PasswordToggle/PasswordToggle.d.ts +0 -0
- /package/{dist-types → dist}/components/PasswordToggle/index.d.ts +0 -0
- /package/{dist-types → dist}/components/RadioInput/RadioInput.d.ts +0 -0
- /package/{dist-types → dist}/components/RadioInput/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Row/Row.d.ts +0 -0
- /package/{dist-types → dist}/components/Row/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchAndFilter/FilterPanelSection/FilterPanelSection.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchAndFilter/FilterPanelSection/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchAndFilter/SearchAndFilter.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchAndFilter/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchAndFilter/types.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchAndFilter/utils.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchBox/SearchBox.d.ts +0 -0
- /package/{dist-types → dist}/components/SearchBox/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Select/Select.d.ts +0 -0
- /package/{dist-types → dist}/components/Select/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigation.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationBase/SideNavigationBase.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationBase/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationItem/SideNavigationItem.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationItem/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationLink/SideNavigationLink.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationLink/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationText/SideNavigationText.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/SideNavigationText/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SideNavigation/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Slider/Slider.d.ts +0 -0
- /package/{dist-types → dist}/components/Slider/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Spinner/Spinner.d.ts +0 -0
- /package/{dist-types → dist}/components/Spinner/index.d.ts +0 -0
- /package/{dist-types → dist}/components/StatusLabel/StatusLabel.d.ts +0 -0
- /package/{dist-types → dist}/components/StatusLabel/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Strip/Strip.d.ts +0 -0
- /package/{dist-types → dist}/components/Strip/index.d.ts +0 -0
- /package/{dist-types → dist}/components/SummaryButton/SummaryButton.d.ts +0 -0
- /package/{dist-types → dist}/components/SummaryButton/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Switch/Switch.d.ts +0 -0
- /package/{dist-types → dist}/components/Switch/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Table/Table.d.ts +0 -0
- /package/{dist-types → dist}/components/Table/index.d.ts +0 -0
- /package/{dist-types → dist}/components/TableCell/TableCell.d.ts +0 -0
- /package/{dist-types → dist}/components/TableCell/index.d.ts +0 -0
- /package/{dist-types → dist}/components/TableHeader/TableHeader.d.ts +0 -0
- /package/{dist-types → dist}/components/TableHeader/index.d.ts +0 -0
- /package/{dist-types → dist}/components/TablePagination/TablePagination.d.ts +0 -0
- /package/{dist-types → dist}/components/TablePagination/TablePaginationControls/TablePaginationControls.d.ts +0 -0
- /package/{dist-types → dist}/components/TablePagination/TablePaginationControls/index.d.ts +0 -0
- /package/{dist-types → dist}/components/TablePagination/index.d.ts +0 -0
- /package/{dist-types → dist}/components/TablePagination/utils.d.ts +0 -0
- /package/{dist-types → dist}/components/TableRow/TableRow.d.ts +0 -0
- /package/{dist-types → dist}/components/TableRow/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Tabs/Tabs.d.ts +0 -0
- /package/{dist-types → dist}/components/Tabs/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Textarea/Textarea.d.ts +0 -0
- /package/{dist-types → dist}/components/Textarea/index.d.ts +0 -0
- /package/{dist-types → dist}/components/Tooltip/Tooltip.d.ts +0 -0
- /package/{dist-types → dist}/components/Tooltip/index.d.ts +0 -0
- /package/{dist-types → dist}/enums.d.ts +0 -0
- /package/{dist-types → dist}/hooks/index.d.ts +0 -0
- /package/{dist-types → dist}/hooks/useId.d.ts +0 -0
- /package/{dist-types → dist}/hooks/useListener.d.ts +0 -0
- /package/{dist-types → dist}/hooks/useOnClickOutside.d.ts +0 -0
- /package/{dist-types → dist}/hooks/useOnEscapePressed.d.ts +0 -0
- /package/{dist-types → dist}/hooks/usePagination.d.ts +0 -0
- /package/{dist-types → dist}/hooks/usePrevious.d.ts +0 -0
- /package/{dist-types → dist}/hooks/useThrottle.d.ts +0 -0
- /package/{dist-types → dist}/hooks/useWindowFitment.d.ts +0 -0
- /package/{dist-types → dist}/index.d.ts +0 -0
- /package/{dist-types → dist}/types/index.d.ts +0 -0
- /package/{dist-types → dist}/utils.d.ts +0 -0
|
@@ -1,245 +0,0 @@
|
|
|
1
|
-
import classNames from "classnames";
|
|
2
|
-
import React, { useCallback, useEffect, useId, useRef, useState } from "react";
|
|
3
|
-
import usePortal from "react-useportal";
|
|
4
|
-
import { useWindowFitment, useListener } from "../../hooks";
|
|
5
|
-
export var position = {
|
|
6
|
-
btmCenter: "btm-center",
|
|
7
|
-
btmLeft: "btm-left",
|
|
8
|
-
btmRight: "btm-right",
|
|
9
|
-
left: "left",
|
|
10
|
-
right: "right",
|
|
11
|
-
topCenter: "top-center",
|
|
12
|
-
topLeft: "top-left",
|
|
13
|
-
topRight: "top-right"
|
|
14
|
-
};
|
|
15
|
-
var getPositionStyle = (pos, wrapperNode) => {
|
|
16
|
-
if (!wrapperNode) {
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
var dimensions = wrapperNode.getBoundingClientRect();
|
|
20
|
-
var {
|
|
21
|
-
x,
|
|
22
|
-
y,
|
|
23
|
-
height,
|
|
24
|
-
width
|
|
25
|
-
} = dimensions;
|
|
26
|
-
var left = x + window.scrollX || 0;
|
|
27
|
-
var top = y + window.scrollY || 0;
|
|
28
|
-
switch (pos) {
|
|
29
|
-
case "btm-center":
|
|
30
|
-
left += width / 2;
|
|
31
|
-
top += height;
|
|
32
|
-
break;
|
|
33
|
-
case "btm-left":
|
|
34
|
-
top += height;
|
|
35
|
-
break;
|
|
36
|
-
case "btm-right":
|
|
37
|
-
left += width;
|
|
38
|
-
top += height;
|
|
39
|
-
break;
|
|
40
|
-
case "left":
|
|
41
|
-
top += height / 2;
|
|
42
|
-
break;
|
|
43
|
-
case "right":
|
|
44
|
-
left += width;
|
|
45
|
-
top += height / 2;
|
|
46
|
-
break;
|
|
47
|
-
case "top-center":
|
|
48
|
-
left += width / 2;
|
|
49
|
-
break;
|
|
50
|
-
case "top-left":
|
|
51
|
-
break;
|
|
52
|
-
case "top-right":
|
|
53
|
-
left += width;
|
|
54
|
-
break;
|
|
55
|
-
default:
|
|
56
|
-
break;
|
|
57
|
-
}
|
|
58
|
-
return {
|
|
59
|
-
position: "absolute",
|
|
60
|
-
left,
|
|
61
|
-
top
|
|
62
|
-
};
|
|
63
|
-
};
|
|
64
|
-
export var adjustForWindow = (position, fitsWindow) => {
|
|
65
|
-
var newPosition = position;
|
|
66
|
-
if (!fitsWindow.fromLeft.fitsLeft && newPosition === "left") {
|
|
67
|
-
newPosition = "top-right";
|
|
68
|
-
}
|
|
69
|
-
if (!fitsWindow.fromRight.fitsRight && newPosition === "right") {
|
|
70
|
-
newPosition = "top-left";
|
|
71
|
-
}
|
|
72
|
-
if (!fitsWindow.fromRight.fitsLeft && newPosition.endsWith("-right")) {
|
|
73
|
-
newPosition = newPosition.replace("right", "left");
|
|
74
|
-
}
|
|
75
|
-
if (!fitsWindow.fromLeft.fitsRight && newPosition.endsWith("-left")) {
|
|
76
|
-
newPosition = newPosition.replace("left", "right");
|
|
77
|
-
}
|
|
78
|
-
if (!fitsWindow.fromTop.fitsAbove && newPosition.startsWith("top")) {
|
|
79
|
-
newPosition = newPosition.replace("top", "btm");
|
|
80
|
-
}
|
|
81
|
-
if (!fitsWindow.fromBottom.fitsBelow && newPosition.startsWith("btm")) {
|
|
82
|
-
newPosition = newPosition.replace("btm", "top");
|
|
83
|
-
}
|
|
84
|
-
if (!fitsWindow.fromLeft.fitsRight && !fitsWindow.fromRight.fitsLeft && (newPosition.endsWith("-left") || newPosition.endsWith("-right"))) {
|
|
85
|
-
newPosition = newPosition.replace("left", "center").replace("right", "center");
|
|
86
|
-
}
|
|
87
|
-
if (newPosition.endsWith("center") && (fitsWindow.fromCenter.fitsCentered.fitsRight || fitsWindow.fromCenter.fitsCentered.fitsLeft)) {
|
|
88
|
-
if (!fitsWindow.fromCenter.fitsCentered.fitsRight) {
|
|
89
|
-
newPosition = newPosition.replace("center", "right");
|
|
90
|
-
}
|
|
91
|
-
if (!fitsWindow.fromCenter.fitsCentered.fitsLeft) {
|
|
92
|
-
newPosition = newPosition.replace("center", "left");
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
return newPosition;
|
|
96
|
-
};
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* This is the [React](https://reactjs.org/) component for Vanilla [Tooltips](https://vanillaframework.io/docs/patterns/tooltips).
|
|
100
|
-
*
|
|
101
|
-
* Tooltips are text labels that appear when the user hovers over, focuses on, or touches an element on the screen.
|
|
102
|
-
*
|
|
103
|
-
* They can be used to provide information about concepts/terms/actions that are not self-explanatory or well known.
|
|
104
|
-
*
|
|
105
|
-
* An alternative use of tooltips is to provide information on a disabled actionable element, e.g. for disabled buttons, providing information about why they are disabled.
|
|
106
|
-
*/
|
|
107
|
-
var Tooltip = _ref => {
|
|
108
|
-
var {
|
|
109
|
-
autoAdjust = true,
|
|
110
|
-
children,
|
|
111
|
-
className,
|
|
112
|
-
followMouse = false,
|
|
113
|
-
message,
|
|
114
|
-
position = "top-left",
|
|
115
|
-
positionElementClassName,
|
|
116
|
-
tooltipClassName,
|
|
117
|
-
zIndex,
|
|
118
|
-
delay = 350
|
|
119
|
-
} = _ref;
|
|
120
|
-
var wrapperRef = useRef(null);
|
|
121
|
-
var messageRef = useRef(null);
|
|
122
|
-
var [adjustedPosition, setAdjustedPosition] = useState(position);
|
|
123
|
-
var [positionStyle, setPositionStyle] = useState({
|
|
124
|
-
position: "absolute",
|
|
125
|
-
// Initially position the tooltip of the screen in case it gets shown
|
|
126
|
-
// before setting the position.
|
|
127
|
-
left: -9999999,
|
|
128
|
-
top: -9999999
|
|
129
|
-
});
|
|
130
|
-
var {
|
|
131
|
-
openPortal,
|
|
132
|
-
closePortal,
|
|
133
|
-
isOpen,
|
|
134
|
-
Portal
|
|
135
|
-
} = usePortal({
|
|
136
|
-
programmaticallyOpen: true
|
|
137
|
-
});
|
|
138
|
-
var tooltipId = useId();
|
|
139
|
-
var [timer, setTimer] = useState(null);
|
|
140
|
-
var cancelableClosePortal = useCallback(() => {
|
|
141
|
-
clearTimeout(timer);
|
|
142
|
-
closePortal();
|
|
143
|
-
}, [timer, closePortal]);
|
|
144
|
-
useEffect(() => {
|
|
145
|
-
if (isOpen && !followMouse && wrapperRef.current) {
|
|
146
|
-
// Position the tooltip when it becomes visible.
|
|
147
|
-
setPositionStyle(getPositionStyle(adjustedPosition, wrapperRef.current));
|
|
148
|
-
}
|
|
149
|
-
}, [adjustedPosition, isOpen, followMouse]);
|
|
150
|
-
var mouseHandler = useCallback(evt => {
|
|
151
|
-
// Set the position of the tooltip next to the mouse.
|
|
152
|
-
setPositionStyle({
|
|
153
|
-
// Don't allow the tooltip to block the mouse events.
|
|
154
|
-
pointerEvents: "none",
|
|
155
|
-
position: "absolute",
|
|
156
|
-
left: evt.pageX,
|
|
157
|
-
top: evt.pageY
|
|
158
|
-
});
|
|
159
|
-
}, []);
|
|
160
|
-
var onUpdateWindowFitment = useCallback(fitsWindow => {
|
|
161
|
-
setAdjustedPosition(adjustForWindow(position, fitsWindow));
|
|
162
|
-
}, [setAdjustedPosition, position]);
|
|
163
|
-
|
|
164
|
-
// Handle mouse events.
|
|
165
|
-
useListener(wrapperRef.current, mouseHandler, "mousemove", true, followMouse && isOpen);
|
|
166
|
-
|
|
167
|
-
// Handle adjusting the position of the tooltip so that it remains on screen.
|
|
168
|
-
useWindowFitment(messageRef.current, wrapperRef.current, onUpdateWindowFitment, 20, isOpen, autoAdjust && followMouse);
|
|
169
|
-
var handleKeyPress = useCallback(event => {
|
|
170
|
-
if (event.key === "Escape") {
|
|
171
|
-
cancelableClosePortal();
|
|
172
|
-
}
|
|
173
|
-
}, [cancelableClosePortal]);
|
|
174
|
-
useEffect(() => {
|
|
175
|
-
window.addEventListener("keypress", handleKeyPress);
|
|
176
|
-
return () => {
|
|
177
|
-
window.removeEventListener("keypress", handleKeyPress);
|
|
178
|
-
};
|
|
179
|
-
}, [handleKeyPress]);
|
|
180
|
-
var handleBlur = e => {
|
|
181
|
-
var _wrapperRef$current, _messageRef$current, _wrapperRef$current2;
|
|
182
|
-
// do not close if the focus is within the tooltip wrapper
|
|
183
|
-
if (wrapperRef !== null && wrapperRef !== void 0 && (_wrapperRef$current = wrapperRef.current) !== null && _wrapperRef$current !== void 0 && _wrapperRef$current.contains(document.activeElement)) {
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
186
|
-
if (e.relatedTarget ? !((_messageRef$current = messageRef.current) !== null && _messageRef$current !== void 0 && _messageRef$current.contains(e.relatedTarget)) && !((_wrapperRef$current2 = wrapperRef.current) !== null && _wrapperRef$current2 !== void 0 && _wrapperRef$current2.contains(e.relatedTarget)) : e.target !== messageRef.current) {
|
|
187
|
-
cancelableClosePortal();
|
|
188
|
-
}
|
|
189
|
-
};
|
|
190
|
-
var handleClick = e => {
|
|
191
|
-
var _messageRef$current2;
|
|
192
|
-
// ignore clicks within the tooltip message
|
|
193
|
-
if ((_messageRef$current2 = messageRef.current) !== null && _messageRef$current2 !== void 0 && _messageRef$current2.contains(e.target)) {
|
|
194
|
-
return;
|
|
195
|
-
}
|
|
196
|
-
e.target.focus();
|
|
197
|
-
openPortal(e);
|
|
198
|
-
};
|
|
199
|
-
var delayedOpenPortal = useCallback(() => {
|
|
200
|
-
if (isOpen) {
|
|
201
|
-
return;
|
|
202
|
-
}
|
|
203
|
-
if (timer) {
|
|
204
|
-
clearTimeout(timer);
|
|
205
|
-
}
|
|
206
|
-
var timeout = setTimeout(() => openPortal(), delay);
|
|
207
|
-
setTimer(timeout);
|
|
208
|
-
}, [delay, openPortal, timer, isOpen]);
|
|
209
|
-
return /*#__PURE__*/React.createElement(React.Fragment, null, message ? /*#__PURE__*/React.createElement("span", {
|
|
210
|
-
className: className,
|
|
211
|
-
onBlur: handleBlur,
|
|
212
|
-
onClick: handleClick,
|
|
213
|
-
onFocus: openPortal,
|
|
214
|
-
onMouseOut: handleBlur,
|
|
215
|
-
onMouseOver: delayedOpenPortal
|
|
216
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
217
|
-
className: positionElementClassName,
|
|
218
|
-
ref: wrapperRef,
|
|
219
|
-
style: {
|
|
220
|
-
display: "inline-block"
|
|
221
|
-
}
|
|
222
|
-
}, React.Children.map(children, child => child && /*#__PURE__*/React.isValidElement(child) ? /*#__PURE__*/React.cloneElement(child, {
|
|
223
|
-
"aria-describedby": isOpen ? tooltipId : undefined
|
|
224
|
-
}) : child)), isOpen ? /*#__PURE__*/React.createElement(Portal, null, /*#__PURE__*/React.createElement("span", {
|
|
225
|
-
className: classNames("p-tooltip--".concat(adjustedPosition), "is-detached", tooltipClassName),
|
|
226
|
-
"data-testid": "tooltip-portal",
|
|
227
|
-
style: positionStyle
|
|
228
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
229
|
-
role: "tooltip",
|
|
230
|
-
className: "p-tooltip__message",
|
|
231
|
-
onClick: event => {
|
|
232
|
-
// Prevent clicks inside the message from bubbling to parent
|
|
233
|
-
// click handlers.
|
|
234
|
-
event.stopPropagation();
|
|
235
|
-
},
|
|
236
|
-
ref: messageRef,
|
|
237
|
-
id: tooltipId,
|
|
238
|
-
style: {
|
|
239
|
-
zIndex: zIndex
|
|
240
|
-
}
|
|
241
|
-
}, message))) : null) : /*#__PURE__*/React.createElement("span", {
|
|
242
|
-
className: className
|
|
243
|
-
}, children));
|
|
244
|
-
};
|
|
245
|
-
export default Tooltip;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { default, position } from "./Tooltip";
|
package/dist-esm/enums.js
DELETED
package/dist-esm/hooks/index.js
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export { useOnClickOutside, useClickOutside } from "./useOnClickOutside";
|
|
2
|
-
export { useId } from "./useId";
|
|
3
|
-
export { useListener } from "./useListener";
|
|
4
|
-
export { useOnEscapePressed } from "./useOnEscapePressed";
|
|
5
|
-
export { usePrevious } from "./usePrevious";
|
|
6
|
-
export { useThrottle } from "./useThrottle";
|
|
7
|
-
export { usePagination } from "./usePagination";
|
|
8
|
-
export { useWindowFitment } from "./useWindowFitment";
|
package/dist-esm/hooks/useId.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { useId as useIdReact } from "react";
|
|
2
|
-
import { IS_DEV } from "../utils";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @deprecated Code component is deprecated. Use CodeSnippet component or inline `<code>` instead.
|
|
6
|
-
*/
|
|
7
|
-
export var useId = () => {
|
|
8
|
-
var id = useIdReact();
|
|
9
|
-
if (IS_DEV) {
|
|
10
|
-
console.warn('The useId hook has been deprecated. Use `import { useId } from "react";` instead.');
|
|
11
|
-
}
|
|
12
|
-
return id;
|
|
13
|
-
};
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { useEffect, useRef } from "react";
|
|
2
|
-
import { useThrottle } from "./useThrottle";
|
|
3
|
-
import { usePrevious } from "./usePrevious";
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* A hook that handles attaching/removing listeners and smartly reattaching if
|
|
7
|
-
* any of the attributes change.
|
|
8
|
-
* @param targetNode The node to attach the listener to.
|
|
9
|
-
* @param callback The function to call from the listener.
|
|
10
|
-
* @param eventType The event name.
|
|
11
|
-
* @param shouldThrottle Whether the callback calls should be throttled.
|
|
12
|
-
* @param shouldListen When the listener should be active.
|
|
13
|
-
* @param options Native event listener options.
|
|
14
|
-
*/
|
|
15
|
-
export var useListener = function useListener(targetNode, callback, eventType) {
|
|
16
|
-
var shouldThrottle = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
|
17
|
-
var shouldListen = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;
|
|
18
|
-
var options = arguments.length > 5 ? arguments[5] : undefined;
|
|
19
|
-
var isListening = useRef(false);
|
|
20
|
-
var throttle = useThrottle(callback);
|
|
21
|
-
var eventListener = useRef(shouldThrottle ? throttle : callback);
|
|
22
|
-
var previousEventType = usePrevious(eventType);
|
|
23
|
-
var previousShouldThrottle = usePrevious(shouldThrottle);
|
|
24
|
-
var previousTargetNode = usePrevious(targetNode);
|
|
25
|
-
var previousCallback = usePrevious(callback);
|
|
26
|
-
var previousOptions = usePrevious(options);
|
|
27
|
-
useEffect(() => {
|
|
28
|
-
// If any of the props related to the attached listener changed then the
|
|
29
|
-
// listener needs to be re-attached.
|
|
30
|
-
var listenerAttributesChanged = callback !== previousCallback || eventType !== previousEventType || shouldThrottle !== previousShouldThrottle || targetNode !== previousTargetNode || options !== previousOptions;
|
|
31
|
-
if (isListening.current && (!shouldListen || listenerAttributesChanged)) {
|
|
32
|
-
previousTargetNode.removeEventListener(previousEventType, eventListener.current, previousOptions);
|
|
33
|
-
isListening.current = false;
|
|
34
|
-
}
|
|
35
|
-
if (shouldThrottle !== previousShouldThrottle || callback !== previousCallback) {
|
|
36
|
-
// Set the listener to the callback, or used the throttled callback.
|
|
37
|
-
eventListener.current = shouldThrottle ? throttle : callback;
|
|
38
|
-
}
|
|
39
|
-
if (targetNode && shouldListen && !isListening.current) {
|
|
40
|
-
targetNode.addEventListener(eventType, eventListener.current, options);
|
|
41
|
-
isListening.current = true;
|
|
42
|
-
}
|
|
43
|
-
}, [callback, eventType, options, previousCallback, previousEventType, previousOptions, previousShouldThrottle, previousTargetNode, shouldListen, shouldThrottle, targetNode, throttle]);
|
|
44
|
-
useEffect(() => () => {
|
|
45
|
-
// Unattach the listener if the component gets unmounted while
|
|
46
|
-
// listening.
|
|
47
|
-
if (targetNode && isListening.current) {
|
|
48
|
-
targetNode.removeEventListener(eventType, eventListener.current, options);
|
|
49
|
-
}
|
|
50
|
-
}, [eventType, targetNode, options]);
|
|
51
|
-
};
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useRef } from "react";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Handle clicks outside an element.
|
|
5
|
-
*/
|
|
6
|
-
export var useOnClickOutside = function useOnClickOutside(elementRef, onClickOutside) {
|
|
7
|
-
var {
|
|
8
|
-
isEnabled
|
|
9
|
-
} = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {
|
|
10
|
-
isEnabled: true
|
|
11
|
-
};
|
|
12
|
-
var handleClickOutside = useCallback(evt => {
|
|
13
|
-
var _evt$target, _elementRef$current;
|
|
14
|
-
var target = evt.target;
|
|
15
|
-
// The target might be something like an SVG node which doesn't provide
|
|
16
|
-
// the class name as a string.
|
|
17
|
-
var isValidTarget = typeof (evt === null || evt === void 0 || (_evt$target = evt.target) === null || _evt$target === void 0 ? void 0 : _evt$target.className) === "string";
|
|
18
|
-
if (!isValidTarget || elementRef !== null && elementRef !== void 0 && elementRef.current && !((_elementRef$current = elementRef.current) !== null && _elementRef$current !== void 0 && _elementRef$current.contains(target)) && elementRef.current !== target) {
|
|
19
|
-
onClickOutside();
|
|
20
|
-
}
|
|
21
|
-
}, [elementRef, onClickOutside]);
|
|
22
|
-
useEffect(() => {
|
|
23
|
-
if (isEnabled) {
|
|
24
|
-
document.addEventListener("click", handleClickOutside, false);
|
|
25
|
-
}
|
|
26
|
-
return () => document.removeEventListener("click", handleClickOutside, false);
|
|
27
|
-
}, [handleClickOutside, isEnabled]);
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Handle clicks outside an element.
|
|
32
|
-
* @returns A ref to pass to the element to handle clicks outside of.
|
|
33
|
-
*/
|
|
34
|
-
export var useClickOutside = onClickOutside => {
|
|
35
|
-
var ref = useRef(null);
|
|
36
|
-
useOnClickOutside(ref, onClickOutside);
|
|
37
|
-
return ref;
|
|
38
|
-
};
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect } from "react";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Handle the escape key pressed.
|
|
5
|
-
*/
|
|
6
|
-
export var useOnEscapePressed = function useOnEscapePressed(onEscape) {
|
|
7
|
-
var {
|
|
8
|
-
isEnabled
|
|
9
|
-
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
|
|
10
|
-
isEnabled: true
|
|
11
|
-
};
|
|
12
|
-
var keyDown = useCallback(evt => {
|
|
13
|
-
if (evt.code === "Escape") {
|
|
14
|
-
onEscape();
|
|
15
|
-
}
|
|
16
|
-
}, [onEscape]);
|
|
17
|
-
useEffect(() => {
|
|
18
|
-
if (isEnabled) {
|
|
19
|
-
document.addEventListener("keydown", keyDown);
|
|
20
|
-
}
|
|
21
|
-
return () => {
|
|
22
|
-
document.removeEventListener("keydown", keyDown);
|
|
23
|
-
};
|
|
24
|
-
}, [keyDown, isEnabled]);
|
|
25
|
-
};
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { useMemo, useEffect, useState } from "react";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* A hook that handles pagination.
|
|
5
|
-
* @param data - The data array to paginate.
|
|
6
|
-
* @param {Object} options
|
|
7
|
-
* @param {number} [options.itemsPerPage] - Number of items per page. Returns all items if no value has been provided.
|
|
8
|
-
* @param {number} [options.initialPage=1] - Initial page number. Defaults to 1.
|
|
9
|
-
* @param {boolean} [options.autoResetPage=false] - Whether to reset the page number to 1 when the data changes.
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
export function usePagination(data, options) {
|
|
13
|
-
var _data$length;
|
|
14
|
-
var defaultOptions = {
|
|
15
|
-
initialPage: 1,
|
|
16
|
-
autoResetPage: false
|
|
17
|
-
};
|
|
18
|
-
var {
|
|
19
|
-
itemsPerPage,
|
|
20
|
-
initialPage,
|
|
21
|
-
autoResetPage
|
|
22
|
-
} = Object.assign(defaultOptions, options);
|
|
23
|
-
var totalItems = (_data$length = data === null || data === void 0 ? void 0 : data.length) !== null && _data$length !== void 0 ? _data$length : 0;
|
|
24
|
-
var initialPageIndex = initialPage > 0 ? initialPage - 1 : 0;
|
|
25
|
-
var [pageIndex, setPageIndex] = useState(initialPageIndex);
|
|
26
|
-
var startIndex = typeof itemsPerPage === "number" ? pageIndex * itemsPerPage : 0;
|
|
27
|
-
var paginate = pageNumber => setPageIndex(pageNumber - 1);
|
|
28
|
-
useEffect(() => {
|
|
29
|
-
if (typeof itemsPerPage === "number" && startIndex >= totalItems) {
|
|
30
|
-
!autoResetPage && Math.floor(totalItems / itemsPerPage) > 0 ?
|
|
31
|
-
// go to the last available page if the current page is out of bounds
|
|
32
|
-
setPageIndex(Math.floor(totalItems / itemsPerPage) - 1) :
|
|
33
|
-
// go to the initial page if autoResetPage is true
|
|
34
|
-
setPageIndex(0);
|
|
35
|
-
}
|
|
36
|
-
}, [pageIndex, startIndex, setPageIndex, totalItems, itemsPerPage, autoResetPage]);
|
|
37
|
-
var pageData = useMemo(() => typeof itemsPerPage === "number" ? data === null || data === void 0 ? void 0 : data.slice(startIndex, startIndex + itemsPerPage) : data, [startIndex, data, itemsPerPage]);
|
|
38
|
-
return {
|
|
39
|
-
pageData,
|
|
40
|
-
currentPage: pageIndex + 1,
|
|
41
|
-
paginate,
|
|
42
|
-
itemsPerPage,
|
|
43
|
-
totalItems
|
|
44
|
-
};
|
|
45
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { useEffect, useRef } from "react";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* A hook to handle storing the previous value of anything.
|
|
5
|
-
* @param value - The value to watch.
|
|
6
|
-
* @param setInitial - Whether it should initialise with the current value.
|
|
7
|
-
* @return The previous value.
|
|
8
|
-
*/
|
|
9
|
-
export var usePrevious = function usePrevious(value) {
|
|
10
|
-
var setInitial = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
11
|
-
var ref = useRef(setInitial ? value : undefined);
|
|
12
|
-
useEffect(() => {
|
|
13
|
-
ref.current = value;
|
|
14
|
-
}, [value]);
|
|
15
|
-
return ref.current;
|
|
16
|
-
};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useRef } from "react";
|
|
2
|
-
export var THROTTLE_DELAY = 1000 / 60;
|
|
3
|
-
// eslint-disable-line @typescript-eslint/no-explicit-any
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* A hook to handle throttling calls to a function.
|
|
7
|
-
* @param callback The function to throttle.
|
|
8
|
-
* @param delay The throttle delay in ms.
|
|
9
|
-
* @return The callback function wrapped in the throttle.
|
|
10
|
-
*/
|
|
11
|
-
export var useThrottle = function useThrottle(callback) {
|
|
12
|
-
var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : THROTTLE_DELAY;
|
|
13
|
-
var timeout = useRef();
|
|
14
|
-
var lastCall = useRef();
|
|
15
|
-
var lastArgs = useRef(null);
|
|
16
|
-
var throttle = useCallback(function () {
|
|
17
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
18
|
-
args[_key] = arguments[_key];
|
|
19
|
-
}
|
|
20
|
-
lastArgs.current = args;
|
|
21
|
-
var callCallback = () => {
|
|
22
|
-
callback(...lastArgs.current);
|
|
23
|
-
lastCall.current = Date.now();
|
|
24
|
-
timeout.current = null;
|
|
25
|
-
};
|
|
26
|
-
var createTimeout = () => {
|
|
27
|
-
timeout.current = window.setTimeout(() => {
|
|
28
|
-
callCallback();
|
|
29
|
-
timeout.current = null;
|
|
30
|
-
}, delay);
|
|
31
|
-
};
|
|
32
|
-
if (!lastCall.current) {
|
|
33
|
-
// Initially call the callback and start a timeout for the next call.
|
|
34
|
-
callCallback();
|
|
35
|
-
createTimeout();
|
|
36
|
-
} else if (!timeout.current && Date.now() - lastCall.current > delay) {
|
|
37
|
-
// If a timeout isn't active then create a new one if the delay time
|
|
38
|
-
// has elapsed.
|
|
39
|
-
createTimeout();
|
|
40
|
-
}
|
|
41
|
-
}, [callback, delay]);
|
|
42
|
-
useEffect(() => () => {
|
|
43
|
-
// Clear the timeout when unmounting.
|
|
44
|
-
if (timeout.current) {
|
|
45
|
-
clearTimeout(timeout.current);
|
|
46
|
-
}
|
|
47
|
-
}, []);
|
|
48
|
-
return throttle;
|
|
49
|
-
};
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { useCallback, useEffect, useRef } from "react";
|
|
2
|
-
import { useListener } from "./useListener";
|
|
3
|
-
/**
|
|
4
|
-
* A hook to determine if an element fits on the window.
|
|
5
|
-
* @param targetNode The element to try and fit on the window.
|
|
6
|
-
* @param referenceNode The element to use to position the target.
|
|
7
|
-
* @param callback The function to call when updating fitment info.
|
|
8
|
-
* @param spacer An additional space to leave between the target and reference.
|
|
9
|
-
* @param shouldCheck Whether the fitment info should be being checked.
|
|
10
|
-
* @param fromMouse Whether the target should be being positioned in relation
|
|
11
|
-
* to the mouse. In this case refernceNode will be used to
|
|
12
|
-
* listen for mouseover events.
|
|
13
|
-
*/
|
|
14
|
-
export var useWindowFitment = function useWindowFitment(targetNode, referenceNode, callback) {
|
|
15
|
-
var spacer = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
16
|
-
var shouldCheck = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;
|
|
17
|
-
var fromMouse = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
|
|
18
|
-
var htmlRef = useRef(document.querySelector("html"));
|
|
19
|
-
var update = useCallback(evt => {
|
|
20
|
-
var referenceCoordinates;
|
|
21
|
-
if (fromMouse) {
|
|
22
|
-
if (evt) {
|
|
23
|
-
referenceCoordinates = {
|
|
24
|
-
// The mouse is a single point so use 0 for the height and width.
|
|
25
|
-
height: 0,
|
|
26
|
-
left: evt.x || 0,
|
|
27
|
-
top: evt.y || 0,
|
|
28
|
-
width: 0
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
} else if (referenceNode) {
|
|
32
|
-
referenceCoordinates = referenceNode.getBoundingClientRect();
|
|
33
|
-
}
|
|
34
|
-
if (shouldCheck && targetNode && referenceCoordinates) {
|
|
35
|
-
var {
|
|
36
|
-
height: targetHeight,
|
|
37
|
-
width: targetWidth
|
|
38
|
-
} = targetNode.getBoundingClientRect();
|
|
39
|
-
var {
|
|
40
|
-
height: referenceHeight,
|
|
41
|
-
left: referenceLeft,
|
|
42
|
-
top: referenceTop,
|
|
43
|
-
width: referenceWidth
|
|
44
|
-
} = referenceCoordinates;
|
|
45
|
-
var referenceBottom = referenceTop + referenceHeight;
|
|
46
|
-
var referenceRight = referenceLeft + referenceWidth;
|
|
47
|
-
var referenceCenterX = referenceLeft + referenceWidth / 2;
|
|
48
|
-
var referenceCenterY = referenceTop + referenceHeight / 2;
|
|
49
|
-
var windowLeft = htmlRef.current.scrollLeft;
|
|
50
|
-
var windowRight = window.innerWidth - htmlRef.current.scrollLeft;
|
|
51
|
-
var windowTop = 0;
|
|
52
|
-
var windowBottom = window.innerHeight;
|
|
53
|
-
var heightIncludingSpace = targetHeight + spacer;
|
|
54
|
-
var widthIncludingSpace = targetWidth + spacer;
|
|
55
|
-
var widthFromCenter = targetWidth / 2;
|
|
56
|
-
var heightFromCenter = targetHeight / 2;
|
|
57
|
-
callback({
|
|
58
|
-
fromTop: {
|
|
59
|
-
fitsAbove: referenceTop - heightIncludingSpace > windowTop,
|
|
60
|
-
fitsBelow: referenceTop + heightIncludingSpace < windowBottom,
|
|
61
|
-
spaceAbove: Math.abs(windowTop - referenceTop),
|
|
62
|
-
spaceBelow: windowBottom - referenceTop
|
|
63
|
-
},
|
|
64
|
-
fromBottom: {
|
|
65
|
-
fitsAbove: referenceBottom - heightIncludingSpace > windowTop,
|
|
66
|
-
fitsBelow: referenceBottom + heightIncludingSpace < windowBottom,
|
|
67
|
-
spaceAbove: Math.abs(windowTop - referenceBottom),
|
|
68
|
-
spaceBelow: windowBottom - referenceBottom
|
|
69
|
-
},
|
|
70
|
-
fromLeft: {
|
|
71
|
-
fitsLeft: referenceLeft - widthIncludingSpace > windowLeft,
|
|
72
|
-
fitsRight: referenceLeft + widthIncludingSpace < windowRight,
|
|
73
|
-
spaceLeft: Math.abs(windowLeft - referenceLeft),
|
|
74
|
-
spaceRight: windowRight - referenceLeft
|
|
75
|
-
},
|
|
76
|
-
fromRight: {
|
|
77
|
-
fitsLeft: referenceRight - widthIncludingSpace > windowLeft,
|
|
78
|
-
fitsRight: referenceRight + widthIncludingSpace < windowRight,
|
|
79
|
-
spaceLeft: Math.abs(windowLeft - referenceRight),
|
|
80
|
-
spaceRight: windowRight - referenceRight
|
|
81
|
-
},
|
|
82
|
-
fromCenter: {
|
|
83
|
-
fitsLeft: referenceCenterX - widthIncludingSpace > windowLeft,
|
|
84
|
-
fitsRight: referenceCenterX + widthIncludingSpace < windowRight,
|
|
85
|
-
fitsAbove: referenceCenterY - heightIncludingSpace > windowTop,
|
|
86
|
-
fitsBelow: referenceCenterY + heightIncludingSpace < windowBottom,
|
|
87
|
-
spaceAbove: Math.abs(windowTop - referenceCenterY),
|
|
88
|
-
spaceBelow: windowBottom - referenceCenterY,
|
|
89
|
-
spaceLeft: Math.abs(windowLeft - referenceCenterX),
|
|
90
|
-
spaceRight: windowRight - referenceCenterX,
|
|
91
|
-
fitsCentered: {
|
|
92
|
-
fitsLeft: referenceCenterX - widthFromCenter > windowLeft,
|
|
93
|
-
fitsRight: referenceCenterX + widthFromCenter < windowRight,
|
|
94
|
-
fitsAbove: referenceCenterY - heightFromCenter > windowTop,
|
|
95
|
-
fitsBelow: referenceCenterY + heightFromCenter < windowBottom
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
}, [shouldCheck, targetNode, callback, spacer, fromMouse, referenceNode]);
|
|
101
|
-
useListener(window, update, "resize", true, shouldCheck && !fromMouse);
|
|
102
|
-
useListener(window, update, "scroll", true, shouldCheck && !fromMouse);
|
|
103
|
-
useListener(referenceNode, update, "mousemove", true, fromMouse && shouldCheck);
|
|
104
|
-
useEffect(() => {
|
|
105
|
-
if (!fromMouse) {
|
|
106
|
-
update();
|
|
107
|
-
}
|
|
108
|
-
}, [fromMouse, update]);
|
|
109
|
-
};
|