qpp-style 1.2.0-rm.1 → 1.3.0-rm.1
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/README.md +37 -0
- package/components/Breadcrumb/Breadcrumb.stories.js +18 -0
- package/components/Breadcrumb/index.js +4 -4
- package/components/Dropdown/Dropdown.stories.js +94 -0
- package/components/Dropdown/index.js +85 -0
- package/components/DropdownButton/DropdownButton.stories.js +137 -0
- package/components/DropdownButton/index.js +148 -0
- package/components/Footer/Footer.stories.js +2 -2
- package/components/Footer/FooterUI.jsx +162 -152
- package/components/GovBanner/index.js +109 -0
- package/components/Header/HeaderContainer.jsx +6 -1
- package/components/Header/HeaderUI.jsx +7 -0
- package/components/Header/ImpersonatorBanner.jsx +82 -0
- package/components/Header/header.js +2 -0
- package/components/Infotip/InfotipIcon.jsx +3 -3
- package/components/Link/Link.stories.js +81 -0
- package/components/Link/index.js +61 -0
- package/components/Search/index.js +45 -32
- package/components/SideNav/AnimationGroup/AnimationGroup.jsx +7 -2
- package/components/SideNav/Content/LevelOneContent.jsx +42 -4
- package/components/SideNav/Content/LevelTwoContent.jsx +2 -0
- package/components/SideNav/Details/PracticeDetails.jsx +4 -0
- package/components/SideNav/Links/NavLinkDrawer.jsx +75 -12
- package/components/SideNav/SideNav.stories.js +30 -0
- package/components/SideNav/UI/SideNavUI.jsx +15 -3
- package/components/SideNav/UI/default-content.json +24 -2
- package/components/SideNav/helpers.js +4 -2
- package/components/Tabs/Tab.js +18 -58
- package/components/Tabs/TabPanel.js +13 -19
- package/components/Tabs/Tabs.stories.js +1 -1
- package/components/Tabs/index.js +68 -108
- package/components/index.js +4 -0
- package/dist/browser.js +1 -1
- package/dist/browser.js.LICENSE.txt +19 -2
- package/dist/browser.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.LICENSE.txt +19 -2
- package/dist/index.js.map +1 -1
- package/dist/react/index.js +1 -1
- package/dist/react/index.js.LICENSE.txt +27 -1
- package/dist/react/index.js.map +1 -1
- package/fonts/PublicSans-Black.ttf +0 -0
- package/fonts/PublicSans-BlackItalic.ttf +0 -0
- package/fonts/PublicSans-Bold.ttf +0 -0
- package/fonts/PublicSans-BoldItalic.ttf +0 -0
- package/fonts/PublicSans-ExtraBold.ttf +0 -0
- package/fonts/PublicSans-ExtraBoldItalic.ttf +0 -0
- package/fonts/PublicSans-ExtraLight.ttf +0 -0
- package/fonts/PublicSans-ExtraLightItalic.ttf +0 -0
- package/fonts/PublicSans-Italic.ttf +0 -0
- package/fonts/PublicSans-Light.ttf +0 -0
- package/fonts/PublicSans-LightItalic.ttf +0 -0
- package/fonts/PublicSans-Medium.ttf +0 -0
- package/fonts/PublicSans-MediumItalic.ttf +0 -0
- package/fonts/PublicSans-Regular.ttf +0 -0
- package/fonts/PublicSans-SemiBold.ttf +0 -0
- package/fonts/PublicSans-SemiBoldItalic.ttf +0 -0
- package/fonts/PublicSans-Thin.ttf +0 -0
- package/fonts/PublicSans-ThinItalic.ttf +0 -0
- package/images/icon-dot-gov.svg +1 -0
- package/images/icon-https.svg +1 -0
- package/images/icons/svg/arrow-down.svg +1 -3
- package/images/icons/svg/arrow-download.svg +1 -5
- package/images/icons/svg/arrow-right.svg +1 -5
- package/images/icons/svg/calendar.svg +1 -0
- package/images/icons/svg/close.svg +1 -3
- package/images/icons/svg/download.svg +1 -1
- package/images/icons/svg/dropdown-arrow.svg +1 -0
- package/images/icons/svg/external.svg +1 -4
- package/images/icons/svg/file-download.svg +1 -0
- package/images/icons/svg/file-upload.svg +1 -1
- package/images/icons/svg/print.svg +1 -4
- package/images/icons/svg/search.svg +1 -0
- package/images/icons/svg/tooltip-question.svg +1 -0
- package/images/icons/svg/trash.svg +1 -5
- package/images/icons/svg/upload.svg +1 -3
- package/images/us_flag_small.png +0 -0
- package/package.json +42 -44
- package/session/logout.js +35 -2
- package/styles/_main.scss +1 -0
- package/styles/components/_text.scss +102 -102
- package/styles/qppds/base/_fonts.scss +24 -0
- package/styles/qppds/base/_icon.scss +23 -0
- package/styles/qppds/base/_typography.scss +55 -47
- package/styles/qppds/base/index.scss +2 -6
- package/styles/qppds/components/_breadcrumbs.scss +16 -5
- package/styles/qppds/components/_button.scss +14 -4
- package/styles/qppds/components/_circular-loader.scss +47 -0
- package/styles/qppds/components/_dropdown-menu.scss +119 -0
- package/styles/qppds/components/_dropdown.scss +4 -0
- package/styles/qppds/components/_footer.scss +7 -0
- package/styles/qppds/components/_gov-banner.scss +344 -0
- package/styles/qppds/components/_header.scss +3 -1
- package/styles/qppds/components/_link.scss +2 -2
- package/styles/qppds/components/_modal.scss +37 -1
- package/styles/qppds/components/_page-header.scss +1 -0
- package/styles/qppds/components/_pagination.scss +227 -0
- package/styles/qppds/components/_search.scss +3 -1
- package/styles/qppds/components/_step-indicator.scss +190 -0
- package/styles/qppds/components/_table.scss +19 -1
- package/styles/qppds/components/_tabs.scss +44 -1
- package/styles/qppds/components/_text-input.scss +1 -1
- package/styles/qppds/components/index.scss +5 -0
- package/styles/qppds/components/sidebar/_links.scss +34 -0
- package/styles/qppds/components/sidebar/_sidebar-animation.scss +4 -0
- package/styles/qppds/components/sidebar/_sidebar.scss +5 -0
- package/styles/qppds/settings/_functions.scss +1 -1
- package/styles/qppds/settings/mixins/_icons.scss +29 -2
- package/styles/qppds/settings/mixins/_index.scss +1 -0
- package/styles/qppds/settings/mixins/_type.scss +65 -0
- package/styles/qppds/settings/variables/_type.scss +3 -0
- package/styles/qppds/utilities/_color.scss +4 -0
- package/styles/qppds/utilities/_height.scss +38 -0
- package/styles/qppds/utilities/_text-transform.scss +1 -1
- package/styles/qppds/utilities/_vertical-align.scss +72 -0
- package/styles/qppds/utilities/_width.scss +35 -0
- package/styles/qppds/utilities/index.scss +2 -0
- package/test/components/Infotip.test.js +1 -1
- package/test-setup.js +0 -4
- package/Session.vim +0 -83
- package/coverage/clover.xml +0 -1218
- package/coverage/coverage-final.json +0 -67
- package/coverage/lcov-report/Accordion/index.html +0 -111
- package/coverage/lcov-report/Accordion/index.jsx.html +0 -389
- package/coverage/lcov-report/Error/Collapsible.jsx.html +0 -344
- package/coverage/lcov-report/Error/ErrorUI.jsx.html +0 -173
- package/coverage/lcov-report/Error/index.html +0 -111
- package/coverage/lcov-report/ErrorUI.jsx.html +0 -173
- package/coverage/lcov-report/HeaderUI.jsx.html +0 -593
- package/coverage/lcov-report/ScoreChart.jsx.html +0 -1025
- package/coverage/lcov-report/SideNav/Chart/ScoreChart.jsx.html +0 -884
- package/coverage/lcov-report/SideNav/Chart/index.html +0 -111
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -79
- package/coverage/lcov-report/components/Accordion/index.html +0 -111
- package/coverage/lcov-report/components/Accordion/index.jsx.html +0 -389
- package/coverage/lcov-report/components/Error/Collapsible.jsx.html +0 -344
- package/coverage/lcov-report/components/Error/ErrorUI.jsx.html +0 -179
- package/coverage/lcov-report/components/Error/index.html +0 -126
- package/coverage/lcov-report/components/Footer/FooterUI.jsx.html +0 -710
- package/coverage/lcov-report/components/Footer/LegacyFooterUI.jsx.html +0 -668
- package/coverage/lcov-report/components/Footer/SocialLinks.jsx.html +0 -302
- package/coverage/lcov-report/components/Footer/Subscribe.jsx.html +0 -182
- package/coverage/lcov-report/components/Footer/index.html +0 -156
- package/coverage/lcov-report/components/Header/HeaderAccountMenu.jsx.html +0 -794
- package/coverage/lcov-report/components/Header/HeaderCancel.jsx.html +0 -137
- package/coverage/lcov-report/components/Header/HeaderUI.jsx.html +0 -1142
- package/coverage/lcov-report/components/Header/NavigationButtonIcon.jsx.html +0 -161
- package/coverage/lcov-report/components/Header/index.html +0 -156
- package/coverage/lcov-report/components/InfoModal/index.html +0 -111
- package/coverage/lcov-report/components/InfoModal/index.jsx.html +0 -401
- package/coverage/lcov-report/components/Infotip/Infotip.jsx.html +0 -305
- package/coverage/lcov-report/components/Infotip/InfotipIcon.jsx.html +0 -203
- package/coverage/lcov-report/components/Infotip/index.html +0 -141
- package/coverage/lcov-report/components/Infotip/index.js.html +0 -89
- package/coverage/lcov-report/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -1010
- package/coverage/lcov-report/components/NotificationBanner/index.html +0 -111
- package/coverage/lcov-report/components/SanitizedContent/index.html +0 -111
- package/coverage/lcov-report/components/SanitizedContent/index.jsx.html +0 -260
- package/coverage/lcov-report/components/SessionDialogUI.jsx.html +0 -863
- package/coverage/lcov-report/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -131
- package/coverage/lcov-report/components/SideNav/AnimationGroup/index.html +0 -111
- package/coverage/lcov-report/components/SideNav/Chart/ScoreChart.jsx.html +0 -1025
- package/coverage/lcov-report/components/SideNav/Chart/index.html +0 -126
- package/coverage/lcov-report/components/SideNav/Chart/index.js.html +0 -89
- package/coverage/lcov-report/components/SideNav/Content/LevelOneContent.jsx.html +0 -1007
- package/coverage/lcov-report/components/SideNav/Content/LevelTwoContent.jsx.html +0 -728
- package/coverage/lcov-report/components/SideNav/Content/index.html +0 -141
- package/coverage/lcov-report/components/SideNav/Content/index.js.html +0 -92
- package/coverage/lcov-report/components/SideNav/Details/IndividualDetails.jsx.html +0 -143
- package/coverage/lcov-report/components/SideNav/Details/PracticeDetails.jsx.html +0 -203
- package/coverage/lcov-report/components/SideNav/Details/index.html +0 -141
- package/coverage/lcov-report/components/SideNav/Details/index.js.html +0 -92
- package/coverage/lcov-report/components/SideNav/Links/CmsSwitchLink.jsx.html +0 -200
- package/coverage/lcov-report/components/SideNav/Links/NavItemInline.jsx.html +0 -242
- package/coverage/lcov-report/components/SideNav/Links/NavLinkContainer.jsx.html +0 -200
- package/coverage/lcov-report/components/SideNav/Links/NavLinkDrawer.jsx.html +0 -779
- package/coverage/lcov-report/components/SideNav/Links/NavLinkInline.jsx.html +0 -356
- package/coverage/lcov-report/components/SideNav/Links/NavLinkToggle.jsx.html +0 -179
- package/coverage/lcov-report/components/SideNav/Links/index.html +0 -201
- package/coverage/lcov-report/components/SideNav/Links/index.js.html +0 -119
- package/coverage/lcov-report/components/SideNav/UI/SideNavUI.jsx.html +0 -1298
- package/coverage/lcov-report/components/SideNav/UI/index.html +0 -126
- package/coverage/lcov-report/components/SideNav/UI/index.js.html +0 -89
- package/coverage/lcov-report/components/SideNav/helpers.js.html +0 -197
- package/coverage/lcov-report/components/SideNav/index.html +0 -111
- package/coverage/lcov-report/components/Tooltip/Tooltip.jsx.html +0 -344
- package/coverage/lcov-report/components/Tooltip/index.html +0 -141
- package/coverage/lcov-report/components/Tooltip/index.js.html +0 -89
- package/coverage/lcov-report/components/Tooltip/position.js.html +0 -296
- package/coverage/lcov-report/components/index.html +0 -111
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -426
- package/coverage/lcov-report/lib/index.html +0 -111
- package/coverage/lcov-report/lib/svg-definitions.svg.html +0 -1319
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/react/components/Accordion/index.html +0 -111
- package/coverage/lcov-report/react/components/Accordion/index.jsx.html +0 -359
- package/coverage/lcov-report/react/components/Error/Collapsible.jsx.html +0 -344
- package/coverage/lcov-report/react/components/Error/ErrorUI.jsx.html +0 -173
- package/coverage/lcov-report/react/components/Error/error.js.html +0 -158
- package/coverage/lcov-report/react/components/Error/index.html +0 -141
- package/coverage/lcov-report/react/components/FlashNotification/FlashNotificationUI.jsx.html +0 -296
- package/coverage/lcov-report/react/components/FlashNotification/index.html +0 -126
- package/coverage/lcov-report/react/components/FlashNotification/index.js.html +0 -170
- package/coverage/lcov-report/react/components/Footer/FooterUI.jsx.html +0 -845
- package/coverage/lcov-report/react/components/Footer/LegacyFooterUI.jsx.html +0 -662
- package/coverage/lcov-report/react/components/Footer/SocialLinks.jsx.html +0 -260
- package/coverage/lcov-report/react/components/Footer/Subscribe.jsx.html +0 -182
- package/coverage/lcov-report/react/components/Footer/footer.js.html +0 -170
- package/coverage/lcov-report/react/components/Footer/index.html +0 -171
- package/coverage/lcov-report/react/components/Header/HeaderAccountMenu.jsx.html +0 -587
- package/coverage/lcov-report/react/components/Header/HeaderCancel.jsx.html +0 -128
- package/coverage/lcov-report/react/components/Header/HeaderContainer.jsx.html +0 -266
- package/coverage/lcov-report/react/components/Header/HeaderLogo.jsx.html +0 -206
- package/coverage/lcov-report/react/components/Header/HeaderMenuButton.js.html +0 -230
- package/coverage/lcov-report/react/components/Header/HeaderMenuItem.jsx.html +0 -758
- package/coverage/lcov-report/react/components/Header/HeaderMenuLink.js.html +0 -230
- package/coverage/lcov-report/react/components/Header/HeaderMenuSignOutButton.js.html +0 -266
- package/coverage/lcov-report/react/components/Header/HeaderMobileButton.js.html +0 -191
- package/coverage/lcov-report/react/components/Header/HeaderUI.jsx.html +0 -557
- package/coverage/lcov-report/react/components/Header/HelpIcon.jsx.html +0 -170
- package/coverage/lcov-report/react/components/Header/NavigationButtonIcon.jsx.html +0 -161
- package/coverage/lcov-report/react/components/Header/header.js.html +0 -194
- package/coverage/lcov-report/react/components/Header/hooks.js.html +0 -236
- package/coverage/lcov-report/react/components/Header/index.html +0 -321
- package/coverage/lcov-report/react/components/Header/utag-helpers.js.html +0 -110
- package/coverage/lcov-report/react/components/InfoModal/index.html +0 -111
- package/coverage/lcov-report/react/components/InfoModal/index.jsx.html +0 -392
- package/coverage/lcov-report/react/components/Infotip/Infotip.jsx.html +0 -305
- package/coverage/lcov-report/react/components/Infotip/InfotipIcon.jsx.html +0 -203
- package/coverage/lcov-report/react/components/Infotip/index.html +0 -141
- package/coverage/lcov-report/react/components/Infotip/index.js.html +0 -89
- package/coverage/lcov-report/react/components/Modal/LegacyModal.jsx.html +0 -296
- package/coverage/lcov-report/react/components/Modal/Modal.jsx.html +0 -500
- package/coverage/lcov-report/react/components/Modal/index.html +0 -141
- package/coverage/lcov-report/react/components/Modal/index.jsx.html +0 -146
- package/coverage/lcov-report/react/components/NotificationBanner/NotificationBannerUI.jsx.html +0 -926
- package/coverage/lcov-report/react/components/NotificationBanner/index.html +0 -111
- package/coverage/lcov-report/react/components/NotificationBanner/index.js.html +0 -875
- package/coverage/lcov-report/react/components/SanitizedContent/index.html +0 -111
- package/coverage/lcov-report/react/components/SanitizedContent/index.jsx.html +0 -680
- package/coverage/lcov-report/react/components/SessionDialog/index.html +0 -111
- package/coverage/lcov-report/react/components/SessionDialog/sessionDialog.js.html +0 -158
- package/coverage/lcov-report/react/components/SessionDialogUI.jsx.html +0 -863
- package/coverage/lcov-report/react/components/SideNav/AnimationGroup/AnimationGroup.jsx.html +0 -140
- package/coverage/lcov-report/react/components/SideNav/AnimationGroup/index.html +0 -111
- package/coverage/lcov-report/react/components/SideNav/Chart/ScoreChart.jsx.html +0 -884
- package/coverage/lcov-report/react/components/SideNav/Chart/index.html +0 -126
- package/coverage/lcov-report/react/components/SideNav/Chart/index.js.html +0 -89
- package/coverage/lcov-report/react/components/SideNav/Content/LevelOneContent.jsx.html +0 -1007
- package/coverage/lcov-report/react/components/SideNav/Content/LevelTwoContent.jsx.html +0 -722
- package/coverage/lcov-report/react/components/SideNav/Content/index.html +0 -141
- package/coverage/lcov-report/react/components/SideNav/Content/index.js.html +0 -92
- package/coverage/lcov-report/react/components/SideNav/Details/IndividualDetails.jsx.html +0 -134
- package/coverage/lcov-report/react/components/SideNav/Details/PracticeDetails.jsx.html +0 -203
- package/coverage/lcov-report/react/components/SideNav/Details/index.html +0 -141
- package/coverage/lcov-report/react/components/SideNav/Details/index.js.html +0 -92
- package/coverage/lcov-report/react/components/SideNav/Links/CmsSwitchLink.jsx.html +0 -203
- package/coverage/lcov-report/react/components/SideNav/Links/NavItemInline.jsx.html +0 -242
- package/coverage/lcov-report/react/components/SideNav/Links/NavLinkContainer.jsx.html +0 -209
- package/coverage/lcov-report/react/components/SideNav/Links/NavLinkDrawer.jsx.html +0 -659
- package/coverage/lcov-report/react/components/SideNav/Links/NavLinkInline.jsx.html +0 -401
- package/coverage/lcov-report/react/components/SideNav/Links/NavLinkToggle.jsx.html +0 -182
- package/coverage/lcov-report/react/components/SideNav/Links/index.html +0 -201
- package/coverage/lcov-report/react/components/SideNav/Links/index.js.html +0 -119
- package/coverage/lcov-report/react/components/SideNav/UI/SideNavUI.jsx.html +0 -1103
- package/coverage/lcov-report/react/components/SideNav/UI/index.html +0 -126
- package/coverage/lcov-report/react/components/SideNav/UI/index.js.html +0 -89
- package/coverage/lcov-report/react/components/SideNav/helpers.js.html +0 -221
- package/coverage/lcov-report/react/components/SideNav/index.html +0 -126
- package/coverage/lcov-report/react/components/SideNav/index.js.html +0 -239
- package/coverage/lcov-report/react/components/Spinner/index.html +0 -111
- package/coverage/lcov-report/react/components/Spinner/index.js.html +0 -107
- package/coverage/lcov-report/react/components/Tabs/TabsUI.jsx.html +0 -443
- package/coverage/lcov-report/react/components/Tabs/index.html +0 -126
- package/coverage/lcov-report/react/components/Tabs/tabs.js.html +0 -188
- package/coverage/lcov-report/react/components/Tooltip/Tooltip.jsx.html +0 -344
- package/coverage/lcov-report/react/components/Tooltip/index.html +0 -141
- package/coverage/lcov-report/react/components/Tooltip/index.js.html +0 -89
- package/coverage/lcov-report/react/components/Tooltip/position.js.html +0 -284
- package/coverage/lcov-report/react/components/hooks/index.html +0 -111
- package/coverage/lcov-report/react/components/hooks/useGetConfig.js.html +0 -302
- package/coverage/lcov-report/react/components/index.html +0 -111
- package/coverage/lcov-report/react/index.html +0 -111
- package/coverage/lcov-report/react/index.js.html +0 -173
- package/coverage/lcov-report/react/lib/Chevron.jsx.html +0 -161
- package/coverage/lcov-report/react/lib/SvgComponents.jsx.html +0 -1697
- package/coverage/lcov-report/react/lib/index.html +0 -141
- package/coverage/lcov-report/react/lib/svg-definitions.svg.html +0 -455
- package/coverage/lcov-report/react/session/index.html +0 -156
- package/coverage/lcov-report/react/session/index.js.html +0 -95
- package/coverage/lcov-report/react/session/logout.js.html +0 -203
- package/coverage/lcov-report/react/session/refresh.js.html +0 -227
- package/coverage/lcov-report/react/session/ttl.js.html +0 -191
- package/coverage/lcov-report/session/index.html +0 -126
- package/coverage/lcov-report/session/index.js.html +0 -95
- package/coverage/lcov-report/session/logout.js.html +0 -203
- package/coverage/lcov-report/session/refresh.js.html +0 -227
- package/coverage/lcov-report/session/ttl.js.html +0 -191
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -170
- package/coverage/lcov.info +0 -2704
- package/styles/components/_footer.scss +0 -593
- package/styles/components/_header.scss +0 -887
- package/styles/components/_header_backup.scss +0 -574
- package/styles/components/_sidebar.scss +0 -8
- package/styles/components/sidebar/_animations.scss +0 -38
- package/styles/components/sidebar/_cms.scss +0 -61
- package/styles/components/sidebar/_details.scss +0 -58
- package/styles/components/sidebar/_links.scss +0 -415
- package/styles/components/sidebar/_sidebar-animation.scss +0 -121
- package/styles/components/sidebar/_sidebar-tooltip.scss +0 -33
- package/styles/components/sidebar/_sidebar.scss +0 -141
- package/styles/components/sidebar/project-specific/_wi.scss +0 -42
- package/styles/qppds/utilities/_display-visability.scss +0 -83
package/README.md
CHANGED
|
@@ -3,3 +3,40 @@
|
|
|
3
3
|
This directory contains react implementations of the components for QPP.
|
|
4
4
|
|
|
5
5
|
A storybook with examples is published at [https://cmsgov.github.io/qpp-style](https://cmsgov.github.io/qpp-style)
|
|
6
|
+
|
|
7
|
+
## Github Branch and Pull Request process
|
|
8
|
+
1. Create branch off main and create a Pull Request into main for the feature.
|
|
9
|
+
>Example Branch Name: feature/QPPXX-XXXX_make_icon_better
|
|
10
|
+
2. Once merged into main, create release branch from main.
|
|
11
|
+
3. Name the new branch release/x.xx.x
|
|
12
|
+
4. Run the version bump:
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
cd qpp-style/react
|
|
16
|
+
npm version --no-git-tag-version patch
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Example Commit Message:
|
|
20
|
+
> x.xx.x release
|
|
21
|
+
|
|
22
|
+
5. Create a pull request against main with the PR Title: x.xx.x release [Example PR](https://github.com/CMSgov/qpp-style/pull/1065)
|
|
23
|
+
6. Enter the change in the description of the pull request i.e.:
|
|
24
|
+
> Added new svg for Icon Name
|
|
25
|
+
|
|
26
|
+
## Generate an NPM token with Publish permissions
|
|
27
|
+
1. If you do not already have an access token, sign in to npmjs.com and navigate to access tokens.
|
|
28
|
+
2. Click generate new token.
|
|
29
|
+
3. Select publish under type.
|
|
30
|
+
4. Copy the npm token and set its value as the environment variable: NPM_TOKEN
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
export NPM_TOKEN={npm_token}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
## Publish the react qpp-style npm package (used by both react and angular)
|
|
37
|
+
```bash
|
|
38
|
+
cd qpp-style/react
|
|
39
|
+
npm i
|
|
40
|
+
npm publish
|
|
41
|
+
```
|
|
42
|
+
7. Once published successfully, merge into main.
|
|
@@ -32,6 +32,24 @@ export const ExampleLightBreadcrumb = () => (
|
|
|
32
32
|
|
|
33
33
|
ExampleLightBreadcrumb.storyName = 'Light';
|
|
34
34
|
|
|
35
|
+
export const ExampleScreenreaderOnlyBreadcrumb = () => (
|
|
36
|
+
<div className="qppds qpp-u-padding--16 qpp-u-fill--blue-80">
|
|
37
|
+
<Breadcrumb
|
|
38
|
+
newBreadcrumb={boolean('newBreadcrumb', true)}
|
|
39
|
+
crumbs={[
|
|
40
|
+
{
|
|
41
|
+
url: '/',
|
|
42
|
+
category: 'MainContent',
|
|
43
|
+
label: 'Home',
|
|
44
|
+
title: 'Home',
|
|
45
|
+
},
|
|
46
|
+
'Mips Overview',
|
|
47
|
+
]}
|
|
48
|
+
/>
|
|
49
|
+
</div>
|
|
50
|
+
);
|
|
51
|
+
ExampleScreenreaderOnlyBreadcrumb.storyName = 'SR Only Breadcrumb';
|
|
52
|
+
|
|
35
53
|
export const ExampleDarkBreadcrumb = () => (
|
|
36
54
|
<div className="qppds qpp-u-padding--16">
|
|
37
55
|
<Breadcrumb
|
|
@@ -50,12 +50,12 @@ const Breadcrumb = ({
|
|
|
50
50
|
return (
|
|
51
51
|
<li
|
|
52
52
|
key={crumb}
|
|
53
|
-
className=
|
|
53
|
+
className={`${
|
|
54
|
+
i === crumbs.length - 1 ? 'sr-only' : ''
|
|
55
|
+
} qpp-c-breadcrumbs__list-itemqpp-c-breadcrumbs__list-item--current`}
|
|
54
56
|
aria-current="page"
|
|
55
57
|
>
|
|
56
|
-
<span
|
|
57
|
-
{crumb}
|
|
58
|
-
</span>
|
|
58
|
+
<span>{crumb}</span>
|
|
59
59
|
</li>
|
|
60
60
|
);
|
|
61
61
|
}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import Dropdown from './index';
|
|
3
|
+
import { withKnobs } from '@storybook/addon-knobs';
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
title: 'Dropdown',
|
|
7
|
+
component: Dropdown,
|
|
8
|
+
decorators: [withKnobs],
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export const DropdownField = () => (
|
|
12
|
+
<Dropdown
|
|
13
|
+
id="id-example"
|
|
14
|
+
value="value-example"
|
|
15
|
+
name="name-example"
|
|
16
|
+
ariaLabel="arial label example"
|
|
17
|
+
options={[
|
|
18
|
+
{ name: 'Name 1', value: 'Value 1' },
|
|
19
|
+
{ name: 'Name 2', value: 'Value 2' },
|
|
20
|
+
{ name: 'Name 3', value: 'Value 3' },
|
|
21
|
+
]}
|
|
22
|
+
/>
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
export const DropdownFieldAutoWidth = () => (
|
|
26
|
+
<Dropdown
|
|
27
|
+
id="id-example"
|
|
28
|
+
value="value-example"
|
|
29
|
+
name="name-example"
|
|
30
|
+
ariaLabel="arial label example"
|
|
31
|
+
className="qpp-u-width--auto"
|
|
32
|
+
options={[
|
|
33
|
+
{ name: 'Name 1', value: 'Value 1' },
|
|
34
|
+
{ name: 'Name 2', value: 'Value 2' },
|
|
35
|
+
{ name: 'Name 3', value: 'Value 3' },
|
|
36
|
+
]}
|
|
37
|
+
/>
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
export const DisabledDropdown = () => (
|
|
41
|
+
<Dropdown
|
|
42
|
+
disabled
|
|
43
|
+
id="id-example"
|
|
44
|
+
value="value-example"
|
|
45
|
+
name="name-example"
|
|
46
|
+
ariaLabel="arial label example"
|
|
47
|
+
options={[
|
|
48
|
+
{ name: 'Name 1', value: 'Value 1' },
|
|
49
|
+
{ name: 'Name 2', value: 'Value 2' },
|
|
50
|
+
{ name: 'Name 3', value: 'Value 3' },
|
|
51
|
+
]}
|
|
52
|
+
/>
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
export const DropdownBigVariant = () => (
|
|
56
|
+
<Dropdown
|
|
57
|
+
id="id-example"
|
|
58
|
+
value="value-example"
|
|
59
|
+
name="name-example"
|
|
60
|
+
ariaLabel="arial label example"
|
|
61
|
+
size="big"
|
|
62
|
+
options={[
|
|
63
|
+
{ name: 'Name 1', value: 'Value 1' },
|
|
64
|
+
{ name: 'Name 2', value: 'Value 2' },
|
|
65
|
+
{ name: 'Name 3', value: 'Value 3' },
|
|
66
|
+
]}
|
|
67
|
+
/>
|
|
68
|
+
);
|
|
69
|
+
|
|
70
|
+
export const DropdownWithDisabledOption = () => (
|
|
71
|
+
<Dropdown
|
|
72
|
+
id="id-example"
|
|
73
|
+
value="value-example"
|
|
74
|
+
name="name-example"
|
|
75
|
+
ariaLabel="arial label example"
|
|
76
|
+
options={[
|
|
77
|
+
{ disabled: true, name: 'Select Category', value: 'default' },
|
|
78
|
+
{ name: 'Name 1', value: 'Value 1' },
|
|
79
|
+
{ name: 'Name 2', value: 'Value 2' },
|
|
80
|
+
]}
|
|
81
|
+
/>
|
|
82
|
+
);
|
|
83
|
+
|
|
84
|
+
export const DropdownUsingChildrenProp = () => (
|
|
85
|
+
<Dropdown
|
|
86
|
+
id="id-example"
|
|
87
|
+
value="value-example"
|
|
88
|
+
name="name-example"
|
|
89
|
+
ariaLabel="arial label example"
|
|
90
|
+
>
|
|
91
|
+
<option value="Value 1">Name 1</option>
|
|
92
|
+
<option value="Value 2">Name 2</option>
|
|
93
|
+
</Dropdown>
|
|
94
|
+
);
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
|
|
4
|
+
const Dropdown = ({
|
|
5
|
+
className,
|
|
6
|
+
id,
|
|
7
|
+
ariaLabelledBy,
|
|
8
|
+
ariaLabel,
|
|
9
|
+
onChange,
|
|
10
|
+
dataTestId,
|
|
11
|
+
name,
|
|
12
|
+
dataType,
|
|
13
|
+
disabled,
|
|
14
|
+
size,
|
|
15
|
+
options,
|
|
16
|
+
children,
|
|
17
|
+
parentElement,
|
|
18
|
+
...rest
|
|
19
|
+
}) => {
|
|
20
|
+
const dropdownClass = [
|
|
21
|
+
'qpp-c-dropdown',
|
|
22
|
+
size === 'big' && 'qpp-c-dropdown--big',
|
|
23
|
+
className,
|
|
24
|
+
]
|
|
25
|
+
.filter(Boolean)
|
|
26
|
+
.join(' ');
|
|
27
|
+
|
|
28
|
+
return (
|
|
29
|
+
<select
|
|
30
|
+
id={id}
|
|
31
|
+
aria-labelledby={ariaLabelledBy}
|
|
32
|
+
aria-label={ariaLabel}
|
|
33
|
+
className={dropdownClass || ''}
|
|
34
|
+
onChange={onChange}
|
|
35
|
+
data-testid={dataTestId}
|
|
36
|
+
name={name}
|
|
37
|
+
disabled={disabled}
|
|
38
|
+
data-type={dataType}
|
|
39
|
+
{...rest}
|
|
40
|
+
>
|
|
41
|
+
{children}
|
|
42
|
+
{options.map(({ disabled, name, value }) => (
|
|
43
|
+
<option disabled={disabled} key={value} value={value}>
|
|
44
|
+
{name}
|
|
45
|
+
</option>
|
|
46
|
+
))}
|
|
47
|
+
</select>
|
|
48
|
+
);
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
Dropdown.propTypes = {
|
|
52
|
+
children: PropTypes.node,
|
|
53
|
+
className: PropTypes.string,
|
|
54
|
+
id: PropTypes.string,
|
|
55
|
+
ariaLabelledBy: PropTypes.string,
|
|
56
|
+
ariaLabel: PropTypes.string,
|
|
57
|
+
onChange: PropTypes.func,
|
|
58
|
+
value: PropTypes.string,
|
|
59
|
+
defaultValue: PropTypes.string,
|
|
60
|
+
dataTestId: PropTypes.string,
|
|
61
|
+
name: PropTypes.string,
|
|
62
|
+
dataType: PropTypes.string,
|
|
63
|
+
disabled: PropTypes.bool,
|
|
64
|
+
size: PropTypes.oneOf(['big']),
|
|
65
|
+
options: PropTypes.array,
|
|
66
|
+
parentElement: PropTypes.string,
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
Dropdown.defaultProps = {
|
|
70
|
+
children: false,
|
|
71
|
+
className: 'qpp-u-width--100',
|
|
72
|
+
id: null,
|
|
73
|
+
ariaLabelledBy: null,
|
|
74
|
+
ariaLabel: null,
|
|
75
|
+
onChange: () => null,
|
|
76
|
+
dataTestId: null,
|
|
77
|
+
name: null,
|
|
78
|
+
dataType: null,
|
|
79
|
+
disabled: false,
|
|
80
|
+
size: null,
|
|
81
|
+
options: [],
|
|
82
|
+
parentElement: 'span',
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
export default Dropdown;
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import SvgIcon from '@material-ui/core/SvgIcon';
|
|
3
|
+
import DropdownButton from './index';
|
|
4
|
+
import { withKnobs, boolean } from '@storybook/addon-knobs';
|
|
5
|
+
|
|
6
|
+
export default {
|
|
7
|
+
title: 'DropdownButton',
|
|
8
|
+
component: DropdownButton,
|
|
9
|
+
decorators: [withKnobs],
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
// mat-ui v4 doesn't include this "FileDownload" icon, but mat-ui v5 does
|
|
13
|
+
// whenever we update to v5, we could replace this svg with the one from npm
|
|
14
|
+
const DownloadIcon = (...props) => (
|
|
15
|
+
<SvgIcon {...props}>
|
|
16
|
+
<path d="M18,15v3H6v-3H4v3c0,1.1,0.9,2,2,2h12c1.1,0,2-0.9,2-2v-3H18z M17,11l-1.41-1.41L13,12.17V4h-2v8.17L8.41,9.59L7,11l5,5 L17,11z" />
|
|
17
|
+
</SvgIcon>
|
|
18
|
+
);
|
|
19
|
+
|
|
20
|
+
export const BasicExample = () => (
|
|
21
|
+
<div className="qpp-u-padding--48">
|
|
22
|
+
<DropdownButton
|
|
23
|
+
menuId="example-menu-1"
|
|
24
|
+
ariaLabel="aria label example"
|
|
25
|
+
buttonLabel="Test"
|
|
26
|
+
options={[
|
|
27
|
+
{
|
|
28
|
+
value: 'option 1',
|
|
29
|
+
},
|
|
30
|
+
{ value: 'option 2', name: 'Name of Option 2' },
|
|
31
|
+
]}
|
|
32
|
+
loading={boolean('loading', false)}
|
|
33
|
+
/>
|
|
34
|
+
</div>
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
/*
|
|
38
|
+
Dropdown menu headers were removed from designs for now. We may revisit this
|
|
39
|
+
in the future so we're leaving this here until we decide on design.
|
|
40
|
+
*/
|
|
41
|
+
// export const WithHeader = () => (
|
|
42
|
+
// <div className="qpp-u-padding--48">
|
|
43
|
+
// <DropdownButton
|
|
44
|
+
// menuId="example-menu-2"
|
|
45
|
+
// ariaLabel="aria label example"
|
|
46
|
+
// buttonLabel="Test"
|
|
47
|
+
// options={[
|
|
48
|
+
// {
|
|
49
|
+
// value: 'option 1',
|
|
50
|
+
// },
|
|
51
|
+
// { value: 'option 2', name: 'Name of Option 2' },
|
|
52
|
+
// ]}
|
|
53
|
+
// header="Header"
|
|
54
|
+
// />
|
|
55
|
+
// </div>
|
|
56
|
+
// );
|
|
57
|
+
|
|
58
|
+
export const Loading = () => (
|
|
59
|
+
<div className="qpp-u-padding--48">
|
|
60
|
+
<DropdownButton
|
|
61
|
+
menuId="example-menu-3"
|
|
62
|
+
ariaLabel="aria label example"
|
|
63
|
+
buttonLabel="Test"
|
|
64
|
+
options={[
|
|
65
|
+
{
|
|
66
|
+
value: 'option 1',
|
|
67
|
+
},
|
|
68
|
+
{ value: 'option 2', name: 'Name of Option 2' },
|
|
69
|
+
]}
|
|
70
|
+
loading
|
|
71
|
+
/>
|
|
72
|
+
</div>
|
|
73
|
+
);
|
|
74
|
+
|
|
75
|
+
export const MaxHeight = () => (
|
|
76
|
+
<div className="qpp-u-padding--48">
|
|
77
|
+
<DropdownButton
|
|
78
|
+
menuId="example-menu-3"
|
|
79
|
+
ariaLabel="aria label example"
|
|
80
|
+
buttonLabel="Test"
|
|
81
|
+
options={[
|
|
82
|
+
{ value: 'option 1' },
|
|
83
|
+
{ value: 'option 2' },
|
|
84
|
+
{ value: 'option 3' },
|
|
85
|
+
{ value: 'option 4' },
|
|
86
|
+
{ value: 'option 5' },
|
|
87
|
+
{ value: 'option 6' },
|
|
88
|
+
{ value: 'option 7' },
|
|
89
|
+
{ value: 'option 8' },
|
|
90
|
+
{ value: 'option 9' },
|
|
91
|
+
]}
|
|
92
|
+
loading={boolean('loading', false)}
|
|
93
|
+
/>
|
|
94
|
+
</div>
|
|
95
|
+
);
|
|
96
|
+
|
|
97
|
+
export const MaxWidth = () => (
|
|
98
|
+
<div className="qpp-u-padding--48">
|
|
99
|
+
<DropdownButton
|
|
100
|
+
menuId="example-menu-1"
|
|
101
|
+
ariaLabel="aria label example"
|
|
102
|
+
buttonLabel="Test"
|
|
103
|
+
options={[
|
|
104
|
+
{ value: 'option 1' },
|
|
105
|
+
{
|
|
106
|
+
value: 'option 2',
|
|
107
|
+
name: 'very long item text 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24',
|
|
108
|
+
},
|
|
109
|
+
]}
|
|
110
|
+
loading={boolean('loading', false)}
|
|
111
|
+
/>
|
|
112
|
+
</div>
|
|
113
|
+
);
|
|
114
|
+
|
|
115
|
+
export const ItemsWithIcons = () => (
|
|
116
|
+
<div className="qpp-u-padding--48">
|
|
117
|
+
<DropdownButton
|
|
118
|
+
menuId="example-menu-1"
|
|
119
|
+
ariaLabel="aria label example"
|
|
120
|
+
buttonLabel="Test"
|
|
121
|
+
options={[
|
|
122
|
+
{
|
|
123
|
+
value: 'option 1',
|
|
124
|
+
Icon: DownloadIcon,
|
|
125
|
+
'aria-roledescription': 'Download file',
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
value: 'option 2',
|
|
129
|
+
name: 'very long item text 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24',
|
|
130
|
+
Icon: DownloadIcon,
|
|
131
|
+
'aria-roledescription': 'Download file',
|
|
132
|
+
},
|
|
133
|
+
]}
|
|
134
|
+
loading={boolean('loading', false)}
|
|
135
|
+
/>
|
|
136
|
+
</div>
|
|
137
|
+
);
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import MuiMenu from '@material-ui/core/Menu';
|
|
4
|
+
import MuiMenuItem from '@material-ui/core/MenuItem';
|
|
5
|
+
import MuiProgressCircle from '@material-ui/core/CircularProgress';
|
|
6
|
+
import ExpandMore from '@material-ui/icons/ExpandMore';
|
|
7
|
+
import ExpandLess from '@material-ui/icons/ExpandLess';
|
|
8
|
+
import Button, { TextButton } from '../Button';
|
|
9
|
+
|
|
10
|
+
const ITEM_HEIGHT = 48;
|
|
11
|
+
|
|
12
|
+
const DropdownButton = ({
|
|
13
|
+
text = false,
|
|
14
|
+
loading = false,
|
|
15
|
+
options = [],
|
|
16
|
+
menuId,
|
|
17
|
+
buttonLabel,
|
|
18
|
+
header,
|
|
19
|
+
children,
|
|
20
|
+
...buttonProps
|
|
21
|
+
}) => {
|
|
22
|
+
const Btn = text ? TextButton : Button;
|
|
23
|
+
const [anchorEl, setAnchorEl] = useState(null);
|
|
24
|
+
const open = Boolean(anchorEl);
|
|
25
|
+
const handleClick = (event) => {
|
|
26
|
+
setAnchorEl(event.currentTarget);
|
|
27
|
+
};
|
|
28
|
+
const handleClose = () => {
|
|
29
|
+
setAnchorEl(null);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<>
|
|
34
|
+
<Btn
|
|
35
|
+
aria-haspopup="true"
|
|
36
|
+
aria-controls={menuId}
|
|
37
|
+
onClick={handleClick}
|
|
38
|
+
{...buttonProps}
|
|
39
|
+
>
|
|
40
|
+
{buttonLabel}{' '}
|
|
41
|
+
{!anchorEl && (
|
|
42
|
+
<ExpandMore classes={{ root: 'qpp-icon-mat qpp-icon-inline--lg' }} />
|
|
43
|
+
)}
|
|
44
|
+
{anchorEl && (
|
|
45
|
+
<ExpandLess classes={{ root: 'qpp-icon-mat qpp-icon-inline--lg' }} />
|
|
46
|
+
)}
|
|
47
|
+
</Btn>
|
|
48
|
+
<MuiMenu
|
|
49
|
+
id={menuId}
|
|
50
|
+
keepMounted
|
|
51
|
+
open={open}
|
|
52
|
+
anchorEl={anchorEl}
|
|
53
|
+
onClose={handleClose}
|
|
54
|
+
getContentAnchorEl={null}
|
|
55
|
+
anchorOrigin={{
|
|
56
|
+
vertical: 'bottom',
|
|
57
|
+
}}
|
|
58
|
+
className="qpp-c-dropdown-menu"
|
|
59
|
+
classes={{
|
|
60
|
+
paper: 'qpp-c-dropdown-menu__box',
|
|
61
|
+
list: 'qpp-c-dropdown-menu__list',
|
|
62
|
+
}}
|
|
63
|
+
MenuListProps={{
|
|
64
|
+
['aria-labelledby']: header ? `${menuId}-header` : null,
|
|
65
|
+
}}
|
|
66
|
+
PaperProps={{
|
|
67
|
+
style: {
|
|
68
|
+
maxHeight: ITEM_HEIGHT * 5.5,
|
|
69
|
+
maxWidth: '400px',
|
|
70
|
+
},
|
|
71
|
+
}}
|
|
72
|
+
>
|
|
73
|
+
{header && (
|
|
74
|
+
<MuiMenuItem
|
|
75
|
+
id={`${menuId}-header`}
|
|
76
|
+
onClick={(e) => {
|
|
77
|
+
e.preventDefault();
|
|
78
|
+
e.stopPropagation();
|
|
79
|
+
}}
|
|
80
|
+
classes={{
|
|
81
|
+
root: 'qpp-c-dropdown-menu__item qpp-c-dropdown-menu__item--header',
|
|
82
|
+
}}
|
|
83
|
+
disabled
|
|
84
|
+
aria-hidden
|
|
85
|
+
role="presentation"
|
|
86
|
+
disableRipple
|
|
87
|
+
>
|
|
88
|
+
{header}
|
|
89
|
+
</MuiMenuItem>
|
|
90
|
+
)}
|
|
91
|
+
{loading && (
|
|
92
|
+
<MuiMenuItem
|
|
93
|
+
onClick={(e) => {
|
|
94
|
+
e.preventDefault();
|
|
95
|
+
e.stopPropagation();
|
|
96
|
+
}}
|
|
97
|
+
classes={{
|
|
98
|
+
root: 'qpp-c-dropdown-menu__item qpp-c-dropdown-menu__item--loading',
|
|
99
|
+
}}
|
|
100
|
+
disableRipple
|
|
101
|
+
disabled
|
|
102
|
+
>
|
|
103
|
+
<MuiProgressCircle
|
|
104
|
+
size="1em"
|
|
105
|
+
color="inherit"
|
|
106
|
+
classes={{ root: 'qpp-c-dropdown-menu__spinner' }}
|
|
107
|
+
/>{' '}
|
|
108
|
+
<span role="status">Loading...</span>
|
|
109
|
+
</MuiMenuItem>
|
|
110
|
+
)}
|
|
111
|
+
{!loading &&
|
|
112
|
+
options.map(({ disabled, name, value, Icon, ...itemProps }) => (
|
|
113
|
+
<MuiMenuItem
|
|
114
|
+
disabled={disabled}
|
|
115
|
+
key={value}
|
|
116
|
+
value={value}
|
|
117
|
+
onClick={handleClose}
|
|
118
|
+
classes={{ root: 'qpp-c-dropdown-menu__item' }}
|
|
119
|
+
disableRipple
|
|
120
|
+
{...itemProps}
|
|
121
|
+
>
|
|
122
|
+
{Icon && (
|
|
123
|
+
<div className="qpp-c-dropdown-menu__icon">
|
|
124
|
+
<Icon classes={{ root: 'qpp-icon-mat' }} />
|
|
125
|
+
</div>
|
|
126
|
+
)}
|
|
127
|
+
<span>{name || value}</span>
|
|
128
|
+
</MuiMenuItem>
|
|
129
|
+
))}
|
|
130
|
+
</MuiMenu>
|
|
131
|
+
</>
|
|
132
|
+
);
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
DropdownButton.propTypes = {
|
|
136
|
+
menuId: PropTypes.string.isRequired,
|
|
137
|
+
text: PropTypes.bool,
|
|
138
|
+
buttonLabel: PropTypes.string,
|
|
139
|
+
loading: PropTypes.bool,
|
|
140
|
+
options: PropTypes.arrayOf(PropTypes.object),
|
|
141
|
+
header: PropTypes.string,
|
|
142
|
+
children: PropTypes.oneOfType([
|
|
143
|
+
PropTypes.node,
|
|
144
|
+
PropTypes.arrayOf(PropTypes.node),
|
|
145
|
+
]),
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
export default DropdownButton;
|
|
@@ -12,8 +12,8 @@ export const ExampleFooter = () => (
|
|
|
12
12
|
<Footer
|
|
13
13
|
isFullWidth={boolean('isFullWidth', false)}
|
|
14
14
|
buildVersion={text('buildVersion', 'BUILD VERSION')}
|
|
15
|
-
isNewFooter={boolean('isNewFooter',
|
|
16
|
-
showHcdResearch={boolean('showHcdResearch',
|
|
15
|
+
isNewFooter={boolean('isNewFooter', true)}
|
|
16
|
+
showHcdResearch={boolean('showHcdResearch', true)}
|
|
17
17
|
/>
|
|
18
18
|
);
|
|
19
19
|
|