@skyscanner/backpack-web 17.1.0-beta.1 → 17.1.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/bpk-animate-height/README.md +53 -0
- package/bpk-animate-height/index.js +4 -10
- package/bpk-animate-height/src/AnimateHeight.js +92 -71
- package/bpk-component-accordion/README.md +122 -0
- package/bpk-component-accordion/index.js +30 -33
- package/bpk-component-accordion/src/BpkAccordion.js +45 -31
- package/{bpk-component-boilerplate/src/BpkBoilerplate.module.css → bpk-component-accordion/src/BpkAccordion.module.scss} +11 -6
- package/bpk-component-accordion/src/BpkAccordionItem.js +113 -76
- package/bpk-component-accordion/src/BpkAccordionItem.module.css +1 -1
- package/bpk-component-accordion/src/BpkAccordionItem.module.scss +76 -0
- package/bpk-component-accordion/src/withAccordionItemState.js +76 -52
- package/bpk-component-accordion/src/withSingleItemAccordionState.js +83 -48
- package/bpk-component-aria-live/README.md +40 -0
- package/bpk-component-aria-live/index.js +9 -17
- package/bpk-component-aria-live/src/BpkAriaLive.js +56 -33
- package/{bpk-component-split-input/src/BpkInputField.module.css → bpk-component-aria-live/src/BpkAriaLive.module.scss} +13 -6
- package/bpk-component-autosuggest/README.md +124 -0
- package/bpk-component-autosuggest/index.js +8 -17
- package/bpk-component-autosuggest/src/BpkAutosuggest.js +55 -36
- package/bpk-component-autosuggest/src/BpkAutosuggest.module.css +1 -1
- package/bpk-component-autosuggest/src/BpkAutosuggest.module.scss +156 -0
- package/bpk-component-autosuggest/src/BpkAutosuggestSuggestion.js +86 -50
- package/bpk-component-badge/README.md +37 -0
- package/bpk-component-badge/index.js +9 -25
- package/bpk-component-badge/src/BpkBadge.js +54 -38
- package/bpk-component-badge/src/BpkBadge.module.css +1 -1
- package/bpk-component-badge/src/BpkBadge.module.scss +63 -0
- package/bpk-component-badge/src/themeAttributes.js +6 -8
- package/bpk-component-banner-alert/README.md +151 -0
- package/bpk-component-banner-alert/index.js +17 -45
- package/bpk-component-banner-alert/src/AnimateAndFade.js +148 -105
- package/bpk-component-banner-alert/src/BpkAnimateAndFade.module.scss +53 -0
- package/bpk-component-banner-alert/src/BpkBannerAlert.js +21 -15
- package/bpk-component-banner-alert/src/BpkBannerAlert.module.css +1 -1
- package/bpk-component-banner-alert/src/BpkBannerAlert.module.scss +159 -0
- package/bpk-component-banner-alert/src/BpkBannerAlertDismissable.js +51 -33
- package/bpk-component-banner-alert/src/BpkBannerAlertExpandable.js +57 -41
- package/bpk-component-banner-alert/src/BpkBannerAlertInner.js +205 -129
- package/bpk-component-banner-alert/src/common-types.js +42 -23
- package/bpk-component-banner-alert/src/themeAttributes.js +7 -8
- package/bpk-component-banner-alert/src/withBannerAlertState.js +160 -104
- package/bpk-component-barchart/README.md +187 -0
- package/bpk-component-barchart/data.json +20 -0
- package/bpk-component-barchart/index.js +21 -52
- package/bpk-component-barchart/src/BpkBarchart.js +304 -213
- package/{bpk-storybook-utils/src/BpkDarkExampleWrapper.module.css → bpk-component-barchart/src/BpkBarchart.module.scss} +9 -6
- package/bpk-component-barchart/src/BpkBarchartBar.js +131 -81
- package/bpk-component-barchart/src/BpkBarchartBar.module.css +1 -1
- package/bpk-component-barchart/src/BpkBarchartBar.module.scss +70 -0
- package/bpk-component-barchart/src/BpkBarchartBars.js +146 -116
- package/bpk-component-barchart/src/BpkBarchartDefs.js +42 -30
- package/bpk-component-barchart/src/BpkChartAxis.js +149 -93
- package/bpk-component-barchart/src/BpkChartAxis.module.css +1 -1
- package/bpk-component-barchart/src/BpkChartAxis.module.scss +37 -0
- package/bpk-component-barchart/src/BpkChartDataTable.js +53 -36
- package/bpk-component-barchart/src/BpkChartDataTable.module.scss +28 -0
- package/bpk-component-barchart/src/BpkChartGridLines.js +107 -65
- package/bpk-component-barchart/src/BpkChartGridLines.module.css +1 -1
- package/bpk-component-barchart/src/BpkChartGridLines.module.scss +26 -0
- package/bpk-component-barchart/src/BpkChartMargin.js +48 -31
- package/bpk-component-barchart/src/RTLtransforms.js +47 -36
- package/bpk-component-barchart/src/customPropTypes.js +24 -15
- package/bpk-component-barchart/src/orientation.js +6 -10
- package/bpk-component-barchart/src/themeAttributes.js +9 -8
- package/bpk-component-barchart/src/utils.js +14 -14
- package/bpk-component-blockquote/README.md +33 -0
- package/bpk-component-blockquote/index.js +6 -17
- package/bpk-component-blockquote/src/BpkBlockquote.js +24 -21
- package/bpk-component-blockquote/src/BpkBlockquote.module.css +1 -1
- package/bpk-component-blockquote/src/BpkBlockquote.module.scss +29 -0
- package/bpk-component-blockquote/src/themeAttributes.js +2 -8
- package/bpk-component-breadcrumb/README.md +56 -0
- package/bpk-component-breadcrumb/index.js +14 -17
- package/bpk-component-breadcrumb/src/BpkBreadcrumb.js +86 -57
- package/bpk-component-breadcrumb/src/BpkBreadcrumb.module.scss +27 -0
- package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.js +80 -55
- package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.module.css +1 -1
- package/{bpk-component-boilerplate/index.js → bpk-component-breadcrumb/src/BpkBreadcrumbItem.module.scss} +23 -10
- package/bpk-component-breakpoint/README.md +32 -0
- package/bpk-component-breakpoint/index.js +7 -17
- package/bpk-component-breakpoint/src/BpkBreakpoint.js +42 -39
- package/bpk-component-button/BpkButtonDestructive.js +20 -12
- package/bpk-component-button/BpkButtonFeatured.js +20 -12
- package/bpk-component-button/BpkButtonLink.js +20 -12
- package/bpk-component-button/BpkButtonLinkOnDark.js +20 -12
- package/bpk-component-button/BpkButtonOutline.js +20 -12
- package/bpk-component-button/BpkButtonPrimary.js +20 -12
- package/bpk-component-button/BpkButtonPrimaryOnDark.js +20 -12
- package/bpk-component-button/BpkButtonPrimaryOnLight.js +20 -12
- package/bpk-component-button/BpkButtonSecondary.js +20 -12
- package/bpk-component-button/BpkButtonSecondaryOnDark.js +20 -12
- package/bpk-component-button/README.md +138 -0
- package/bpk-component-button/index.js +40 -130
- package/bpk-component-button/src/BpkButton.js +100 -56
- package/bpk-component-button/src/BpkButtonBase.js +88 -60
- package/bpk-component-button/src/BpkButtonBase.module.css +1 -1
- package/bpk-component-button/src/BpkButtonBase.module.scss +50 -0
- package/bpk-component-button/src/BpkButtonDestructive.js +39 -36
- package/bpk-component-button/src/BpkButtonDestructive.module.css +1 -1
- package/bpk-component-button/src/BpkButtonDestructive.module.scss +24 -0
- package/bpk-component-button/src/BpkButtonFeatured.js +39 -36
- package/bpk-component-button/src/BpkButtonFeatured.module.css +1 -1
- package/bpk-component-button/src/BpkButtonFeatured.module.scss +23 -0
- package/bpk-component-button/src/BpkButtonLink.js +47 -38
- package/bpk-component-button/src/BpkButtonLink.module.css +1 -1
- package/bpk-component-button/src/BpkButtonLink.module.scss +25 -0
- package/bpk-component-button/src/BpkButtonLinkOnDark.js +47 -38
- package/bpk-component-button/src/BpkButtonLinkOnDark.module.scss +23 -0
- package/bpk-component-button/src/BpkButtonOutline.js +39 -36
- package/bpk-component-button/src/BpkButtonOutline.module.scss +23 -0
- package/bpk-component-button/src/BpkButtonPrimary.js +30 -19
- package/bpk-component-button/src/BpkButtonPrimaryOnDark.js +39 -36
- package/bpk-component-button/src/BpkButtonPrimaryOnDark.module.scss +23 -0
- package/bpk-component-button/src/BpkButtonPrimaryOnLight.js +39 -36
- package/bpk-component-button/src/BpkButtonPrimaryOnLight.module.scss +23 -0
- package/bpk-component-button/src/BpkButtonSecondary.js +39 -36
- package/bpk-component-button/src/BpkButtonSecondary.module.css +1 -1
- package/bpk-component-button/src/BpkButtonSecondary.module.scss +23 -0
- package/bpk-component-button/src/BpkButtonSecondaryOnDark.js +39 -36
- package/bpk-component-button/src/BpkButtonSecondaryOnDark.module.scss +23 -0
- package/bpk-component-button/src/common-types.js +35 -22
- package/bpk-component-button/src/commonButtonTests.js +59 -72
- package/bpk-component-button/src/themeAttributes.js +74 -22
- package/bpk-component-button/themeAttributes.js +29 -53
- package/bpk-component-calendar/DOCS.md +23 -0
- package/bpk-component-calendar/README.md +394 -0
- package/bpk-component-calendar/index.js +41 -106
- package/bpk-component-calendar/src/BpkCalendar.module.scss +42 -0
- package/bpk-component-calendar/src/BpkCalendarContainer.js +292 -202
- package/bpk-component-calendar/src/BpkCalendarDate.js +136 -102
- package/bpk-component-calendar/src/BpkCalendarDate.module.css +1 -1
- package/bpk-component-calendar/src/BpkCalendarDate.module.scss +122 -0
- package/bpk-component-calendar/src/BpkCalendarGrid.js +150 -110
- package/bpk-component-calendar/src/BpkCalendarGrid.module.css +1 -1
- package/bpk-component-calendar/src/BpkCalendarGrid.module.scss +65 -0
- package/bpk-component-calendar/src/BpkCalendarGridHeader.js +63 -58
- package/bpk-component-calendar/src/BpkCalendarGridHeader.module.css +1 -1
- package/{bpk-storybook-utils/src/BpkStorybookUtils.js → bpk-component-calendar/src/BpkCalendarGridHeader.module.scss} +31 -19
- package/bpk-component-calendar/src/BpkCalendarGridTransition.js +159 -87
- package/bpk-component-calendar/src/BpkCalendarGridTransition.module.scss +47 -0
- package/bpk-component-calendar/src/BpkCalendarNav.js +139 -129
- package/bpk-component-calendar/src/BpkCalendarNav.module.css +1 -1
- package/bpk-component-calendar/src/BpkCalendarNav.module.scss +89 -0
- package/bpk-component-calendar/src/Week.js +283 -168
- package/bpk-component-calendar/src/_variables.scss +22 -0
- package/bpk-component-calendar/src/composeCalendar.js +125 -89
- package/bpk-component-calendar/src/custom-proptypes.js +41 -37
- package/bpk-component-calendar/src/date-utils.js +96 -175
- package/bpk-component-calendar/src/themeAttributes.js +13 -8
- package/bpk-component-calendar/src/utils.js +24 -19
- package/bpk-component-calendar/test-utils.js +274 -228
- package/bpk-component-card/README.md +61 -0
- package/bpk-component-card/index.js +8 -25
- package/bpk-component-card/src/BpkCard.js +72 -49
- package/bpk-component-card/src/BpkCard.module.css +1 -1
- package/bpk-component-card/src/BpkCard.module.scss +27 -0
- package/bpk-component-card/src/BpkDividedCard.js +81 -47
- package/bpk-component-card/src/BpkDividedCard.module.css +1 -1
- package/bpk-component-card/src/BpkDividedCard.module.scss +62 -0
- package/bpk-component-checkbox/README.md +45 -0
- package/bpk-component-checkbox/index.js +8 -17
- package/bpk-component-checkbox/src/BpkCheckbox.js +116 -66
- package/bpk-component-checkbox/src/BpkCheckbox.module.css +1 -1
- package/bpk-component-checkbox/src/BpkCheckbox.module.scss +78 -0
- package/bpk-component-checkbox/src/themeAttributes.js +4 -8
- package/bpk-component-chip/README.md +136 -0
- package/bpk-component-chip/index.js +21 -38
- package/bpk-component-chip/src/BpkDismissibleChip.js +65 -40
- package/bpk-component-chip/src/BpkDropdownChip.js +52 -22
- package/bpk-component-chip/src/BpkSelectableChip.js +98 -62
- package/bpk-component-chip/src/BpkSelectableChip.module.css +1 -1
- package/bpk-component-chip/src/BpkSelectableChip.module.scss +23 -0
- package/bpk-component-chip/src/commonTypes.js +34 -25
- package/bpk-component-chip/src/themeAttributes.js +13 -8
- package/bpk-component-close-button/README.md +25 -0
- package/bpk-component-close-button/index.js +6 -10
- package/bpk-component-close-button/src/BpkCloseButton.js +61 -43
- package/bpk-component-close-button/src/BpkCloseButton.module.css +1 -1
- package/bpk-component-close-button/src/BpkCloseButton.module.scss +52 -0
- package/bpk-component-code/README.md +41 -0
- package/bpk-component-code/index.js +22 -19
- package/bpk-component-code/src/BpkCode.js +49 -33
- package/bpk-component-code/src/BpkCode.module.css +1 -1
- package/bpk-component-code/src/BpkCode.module.scss +27 -0
- package/bpk-component-code/src/BpkCodeBlock.js +53 -36
- package/bpk-component-code/src/BpkCodeBlock.module.css +1 -1
- package/bpk-component-code/src/BpkCodeBlock.module.scss +33 -0
- package/bpk-component-content-cards/README.md +38 -0
- package/bpk-component-content-cards/index.js +4 -10
- package/bpk-component-content-cards/src/BpkContentCard.js +62 -37
- package/bpk-component-content-cards/src/BpkContentCard.module.scss +87 -0
- package/bpk-component-content-cards/src/BpkContentCards.js +46 -33
- package/bpk-component-content-cards/src/BpkContentCards.module.css +1 -1
- package/bpk-component-content-cards/src/BpkContentCards.module.scss +51 -0
- package/bpk-component-datatable/README.md +196 -0
- package/bpk-component-datatable/index.js +20 -19
- package/bpk-component-datatable/src/BpkDataTable.js +197 -129
- package/bpk-component-datatable/src/BpkDataTable.module.css +1 -1
- package/bpk-component-datatable/src/BpkDataTable.module.scss +90 -0
- package/bpk-component-datatable/src/BpkDataTableColumn.js +31 -29
- package/bpk-component-datatable/src/BpkDataTableHeader.js +108 -60
- package/bpk-component-datatable/src/BpkDataTableHeader.module.scss +65 -0
- package/bpk-component-datatable/src/common-types.js +72 -1
- package/bpk-component-datatable/src/hasChildrenOfType.js +41 -25
- package/bpk-component-datatable/src/sort-types.js +16 -10
- package/bpk-component-datatable/src/utils.js +65 -93
- package/bpk-component-datepicker/README.md +179 -0
- package/bpk-component-datepicker/index.js +8 -24
- package/bpk-component-datepicker/src/BpkDatepicker.js +304 -211
- package/bpk-component-datepicker/src/BpkDatepicker.module.css +1 -1
- package/bpk-component-datepicker/src/BpkDatepicker.module.scss +30 -0
- package/bpk-component-datepicker/src/themeAttributes.js +12 -11
- package/bpk-component-description-list/README.md +44 -0
- package/bpk-component-description-list/index.js +22 -26
- package/bpk-component-description-list/src/BpkDescriptionDetails.js +4 -10
- package/bpk-component-description-list/src/BpkDescriptionList.js +4 -10
- package/bpk-component-description-list/src/BpkDescriptionList.module.scss +37 -0
- package/bpk-component-description-list/src/BpkDescriptionTerm.js +4 -10
- package/bpk-component-description-list/src/ComponentFactory.js +43 -30
- package/bpk-component-dialog/README.md +103 -0
- package/bpk-component-dialog/index.js +9 -17
- package/bpk-component-dialog/src/BpkDialog.js +87 -56
- package/bpk-component-dialog/src/BpkDialog.module.css +1 -1
- package/bpk-component-dialog/src/BpkDialog.module.scss +80 -0
- package/bpk-component-dialog/src/BpkDialogInner.js +79 -47
- package/bpk-component-dialog/src/BpkDialogInner.module.css +1 -1
- package/bpk-component-dialog/src/BpkDialogInner.module.scss +64 -0
- package/bpk-component-dialog/src/common-types.js +83 -49
- package/bpk-component-drawer/README.md +88 -0
- package/bpk-component-drawer/index.js +8 -17
- package/bpk-component-drawer/src/BpkDrawer.js +84 -66
- package/bpk-component-drawer/src/BpkDrawer.module.scss +23 -0
- package/bpk-component-drawer/src/BpkDrawerContent.js +142 -94
- package/bpk-component-drawer/src/BpkDrawerContent.module.css +1 -1
- package/bpk-component-drawer/src/BpkDrawerContent.module.scss +107 -0
- package/bpk-component-drawer/src/themeAttributes.js +6 -9
- package/bpk-component-fieldset/README.md +71 -0
- package/bpk-component-fieldset/index.js +13 -31
- package/bpk-component-fieldset/src/BpkFieldset.js +144 -92
- package/bpk-component-fieldset/src/BpkFieldset.module.css +1 -1
- package/bpk-component-fieldset/src/BpkFieldset.module.scss +39 -0
- package/bpk-component-fieldset/src/themeAttributes.js +2 -8
- package/bpk-component-flare/README.md +50 -0
- package/bpk-component-flare/index.js +8 -23
- package/bpk-component-flare/src/BpkContentBubble.js +78 -49
- package/bpk-component-flare/src/BpkFlareBar.js +60 -42
- package/bpk-component-flare/src/__generated__/js/corner-radius.js +5 -24
- package/bpk-component-flare/src/__generated__/js/pointer.js +5 -24
- package/bpk-component-flare/src/bpk-content-bubble.module.scss +61 -0
- package/bpk-component-flare/src/bpk-flare-bar.module.css +1 -1
- package/bpk-component-flare/src/bpk-flare-bar.module.scss +75 -0
- package/bpk-component-flare/src/svgs/corner-radius.svg +1 -0
- package/bpk-component-flare/src/svgs/pointer.svg +1 -0
- package/bpk-component-floating-notification/README.md +48 -0
- package/bpk-component-floating-notification/index.js +8 -10
- package/bpk-component-floating-notification/src/BpkFloatingNotification.js +117 -78
- package/bpk-component-floating-notification/src/BpkFloatingNotification.module.css +1 -1
- package/bpk-component-floating-notification/src/BpkFloatingNotification.module.scss +83 -0
- package/bpk-component-form-validation/README.md +31 -0
- package/bpk-component-form-validation/index.js +6 -17
- package/bpk-component-form-validation/src/BpkFormValidation.js +77 -51
- package/bpk-component-form-validation/src/BpkFormValidation.module.css +1 -1
- package/bpk-component-form-validation/src/BpkFormValidation.module.scss +44 -0
- package/bpk-component-form-validation/src/themeAttributes.js +2 -8
- package/bpk-component-graphic-promotion/README.md +68 -0
- package/bpk-component-graphic-promotion/index.js +9 -17
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.js +133 -75
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.module.scss +270 -0
- package/bpk-component-grid/README.md +88 -0
- package/bpk-component-grid/index.js +7 -16
- package/bpk-component-grid/src/BpkGridColumn.js +78 -50
- package/bpk-component-grid/src/BpkGridColumn.module.css +1 -1
- package/bpk-component-grid/src/BpkGridColumn.module.scss +73 -0
- package/bpk-component-grid/src/BpkGridContainer.js +45 -34
- package/bpk-component-grid/src/BpkGridContainer.module.css +1 -1
- package/bpk-component-grid/src/BpkGridContainer.module.scss +33 -0
- package/bpk-component-grid/src/BpkGridRow.js +44 -32
- package/bpk-component-grid/src/BpkGridRow.module.css +1 -1
- package/bpk-component-grid/src/BpkGridRow.module.scss +29 -0
- package/bpk-component-grid-toggle/README.md +25 -0
- package/bpk-component-grid-toggle/index.js +4 -10
- package/bpk-component-grid-toggle/src/BpkGridToggle.js +75 -47
- package/bpk-component-grid-toggle/src/BpkGridToggle.module.css +1 -1
- package/bpk-component-grid-toggle/src/BpkGridToggle.module.scss +52 -0
- package/bpk-component-horizontal-nav/README.md +101 -0
- package/bpk-component-horizontal-nav/index.js +15 -30
- package/bpk-component-horizontal-nav/src/BpkHorizontalNav.js +169 -112
- package/bpk-component-horizontal-nav/src/BpkHorizontalNav.module.css +1 -1
- package/bpk-component-horizontal-nav/src/BpkHorizontalNav.module.scss +37 -0
- package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.js +120 -78
- package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.module.css +1 -1
- package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.module.scss +152 -0
- package/bpk-component-icon/README.md +77 -0
- package/bpk-component-icon/all.js +6 -5
- package/bpk-component-icon/index.js +24 -33
- package/bpk-component-icon/lg/accessibility.js +8 -30
- package/bpk-component-icon/lg/account--add.js +8 -30
- package/bpk-component-icon/lg/account--female.js +8 -30
- package/bpk-component-icon/lg/account--id-card.js +8 -30
- package/bpk-component-icon/lg/account--name.js +8 -30
- package/bpk-component-icon/lg/account--permit.js +8 -30
- package/bpk-component-icon/lg/account-circle.js +8 -30
- package/bpk-component-icon/lg/account.js +8 -30
- package/bpk-component-icon/lg/add-circle.js +8 -30
- package/bpk-component-icon/lg/adult.js +8 -30
- package/bpk-component-icon/lg/aircon.js +8 -30
- package/bpk-component-icon/lg/aircraft.js +8 -32
- package/bpk-component-icon/lg/airline--multiple.js +8 -30
- package/bpk-component-icon/lg/airline.js +8 -30
- package/bpk-component-icon/lg/airports.js +8 -30
- package/bpk-component-icon/lg/alert--active.js +8 -30
- package/bpk-component-icon/lg/alert--add.js +8 -30
- package/bpk-component-icon/lg/alert--expired.js +8 -30
- package/bpk-component-icon/lg/alert--remove.js +8 -30
- package/bpk-component-icon/lg/arrow-down.js +8 -30
- package/bpk-component-icon/lg/arrow-left.js +8 -30
- package/bpk-component-icon/lg/arrow-right.js +8 -30
- package/bpk-component-icon/lg/arrow-up.js +8 -30
- package/bpk-component-icon/lg/award.js +8 -30
- package/bpk-component-icon/lg/baby-carriage.js +8 -30
- package/bpk-component-icon/lg/baggage--add.js +8 -30
- package/bpk-component-icon/lg/baggage--remove.js +8 -30
- package/bpk-component-icon/lg/baggage-cabin-add.js +8 -30
- package/bpk-component-icon/lg/baggage-cabin-not-included.js +8 -30
- package/bpk-component-icon/lg/baggage-cabin.js +8 -30
- package/bpk-component-icon/lg/baggage-checked-add.js +8 -30
- package/bpk-component-icon/lg/baggage-checked-not-included.js +8 -30
- package/bpk-component-icon/lg/baggage-checked.js +8 -30
- package/bpk-component-icon/lg/baggage-cross.js +8 -30
- package/bpk-component-icon/lg/baggage-generic.js +8 -30
- package/bpk-component-icon/lg/baggage-tick.js +8 -30
- package/bpk-component-icon/lg/baggage.js +8 -30
- package/bpk-component-icon/lg/bar.js +8 -30
- package/bpk-component-icon/lg/beach.js +8 -32
- package/bpk-component-icon/lg/beer.js +8 -30
- package/bpk-component-icon/lg/breakfast-cross.js +8 -30
- package/bpk-component-icon/lg/breakfast-tick.js +8 -30
- package/bpk-component-icon/lg/bus.js +8 -30
- package/bpk-component-icon/lg/business.js +8 -30
- package/bpk-component-icon/lg/cafe.js +8 -30
- package/bpk-component-icon/lg/calendar.js +8 -30
- package/bpk-component-icon/lg/call-back.js +8 -32
- package/bpk-component-icon/lg/camera.js +8 -30
- package/bpk-component-icon/lg/camper-van.js +8 -32
- package/bpk-component-icon/lg/car-door.js +8 -30
- package/bpk-component-icon/lg/car-wash.js +8 -32
- package/bpk-component-icon/lg/cars-flexible.js +8 -30
- package/bpk-component-icon/lg/cars.js +8 -32
- package/bpk-component-icon/lg/center-location.js +8 -30
- package/bpk-component-icon/lg/chart.js +8 -30
- package/bpk-component-icon/lg/chauffeur.js +8 -30
- package/bpk-component-icon/lg/chevron-down.js +8 -30
- package/bpk-component-icon/lg/chevron-left.js +8 -30
- package/bpk-component-icon/lg/chevron-right.js +8 -30
- package/bpk-component-icon/lg/chevron-up.js +8 -30
- package/bpk-component-icon/lg/child-seat.js +8 -30
- package/bpk-component-icon/lg/child.js +8 -30
- package/bpk-component-icon/lg/city-center.js +8 -30
- package/bpk-component-icon/lg/city.js +8 -30
- package/bpk-component-icon/lg/clean-policy.js +8 -30
- package/bpk-component-icon/lg/clean.js +8 -34
- package/bpk-component-icon/lg/cleaning-medical.js +8 -30
- package/bpk-component-icon/lg/cloakroom.js +8 -34
- package/bpk-component-icon/lg/close-circle.js +8 -30
- package/bpk-component-icon/lg/close.js +8 -30
- package/bpk-component-icon/lg/collapse.js +8 -30
- package/bpk-component-icon/lg/content--copy.js +8 -32
- package/bpk-component-icon/lg/content--event.js +8 -30
- package/bpk-component-icon/lg/content--guides.js +8 -30
- package/bpk-component-icon/lg/currency.js +8 -30
- package/bpk-component-icon/lg/data.js +8 -32
- package/bpk-component-icon/lg/deals.js +8 -30
- package/bpk-component-icon/lg/depart.js +8 -32
- package/bpk-component-icon/lg/device-mid.js +8 -30
- package/bpk-component-icon/lg/device-wide.js +8 -30
- package/bpk-component-icon/lg/direct.js +8 -30
- package/bpk-component-icon/lg/document-csv.js +8 -30
- package/bpk-component-icon/lg/document-pdf.js +8 -30
- package/bpk-component-icon/lg/download.js +8 -32
- package/bpk-component-icon/lg/duration.js +8 -30
- package/bpk-component-icon/lg/eco-leaf.js +8 -30
- package/bpk-component-icon/lg/edit.js +8 -30
- package/bpk-component-icon/lg/education.js +8 -32
- package/bpk-component-icon/lg/electric.js +8 -30
- package/bpk-component-icon/lg/end-call.js +8 -30
- package/bpk-component-icon/lg/estimated.js +8 -30
- package/bpk-component-icon/lg/exclamation-circle.js +8 -30
- package/bpk-component-icon/lg/exclamation.js +8 -30
- package/bpk-component-icon/lg/expand.js +8 -30
- package/bpk-component-icon/lg/explore.js +8 -30
- package/bpk-component-icon/lg/face--blank.js +8 -30
- package/bpk-component-icon/lg/face--happy.js +8 -30
- package/bpk-component-icon/lg/face--sad.js +8 -30
- package/bpk-component-icon/lg/face-id.js +8 -30
- package/bpk-component-icon/lg/face-mask.js +8 -30
- package/bpk-component-icon/lg/family.js +8 -30
- package/bpk-component-icon/lg/fast-track.js +8 -32
- package/bpk-component-icon/lg/fast-train.js +8 -32
- package/bpk-component-icon/lg/filter.js +8 -31
- package/bpk-component-icon/lg/fingerprint.js +8 -30
- package/bpk-component-icon/lg/flag.js +8 -30
- package/bpk-component-icon/lg/flask.js +8 -30
- package/bpk-component-icon/lg/flight-flexible.js +8 -30
- package/bpk-component-icon/lg/flight-landing.js +8 -34
- package/bpk-component-icon/lg/flight-takeoff.js +8 -32
- package/bpk-component-icon/lg/flight.js +8 -32
- package/bpk-component-icon/lg/food.js +8 -30
- package/bpk-component-icon/lg/gears-automatic-circle.js +8 -30
- package/bpk-component-icon/lg/gears-automatic.js +8 -30
- package/bpk-component-icon/lg/gears-manual-circle.js +8 -30
- package/bpk-component-icon/lg/gears-manual.js +8 -30
- package/bpk-component-icon/lg/globe.js +8 -30
- package/bpk-component-icon/lg/grid-layout.js +8 -30
- package/bpk-component-icon/lg/headset.js +8 -30
- package/bpk-component-icon/lg/health-fitness.js +8 -30
- package/bpk-component-icon/lg/heart--outline.js +8 -30
- package/bpk-component-icon/lg/heart.js +8 -30
- package/bpk-component-icon/lg/help-circle.js +8 -30
- package/bpk-component-icon/lg/help.js +8 -30
- package/bpk-component-icon/lg/hide.js +8 -30
- package/bpk-component-icon/lg/hotel-flexible.js +8 -30
- package/bpk-component-icon/lg/hotels--disabled-facilities.js +8 -30
- package/bpk-component-icon/lg/hotels--jacuzzi.js +8 -30
- package/bpk-component-icon/lg/hotels--pets-allowed.js +8 -30
- package/bpk-component-icon/lg/hotels--smoking.js +8 -30
- package/bpk-component-icon/lg/hotels.js +8 -30
- package/bpk-component-icon/lg/infant.js +8 -30
- package/bpk-component-icon/lg/information--language-alert.js +8 -30
- package/bpk-component-icon/lg/information--language-question.js +8 -30
- package/bpk-component-icon/lg/information--language.js +8 -30
- package/bpk-component-icon/lg/information-circle.js +8 -30
- package/bpk-component-icon/lg/information.js +8 -30
- package/bpk-component-icon/lg/insurance.js +8 -30
- package/bpk-component-icon/lg/key.js +8 -30
- package/bpk-component-icon/lg/keypad.js +8 -30
- package/bpk-component-icon/lg/landmark.js +8 -30
- package/bpk-component-icon/lg/language.js +8 -30
- package/bpk-component-icon/lg/legroom--extra.js +8 -32
- package/bpk-component-icon/lg/legroom--normal.js +8 -32
- package/bpk-component-icon/lg/legroom--reduced.js +8 -32
- package/bpk-component-icon/lg/leisure.js +8 -30
- package/bpk-component-icon/lg/lightning.js +8 -30
- package/bpk-component-icon/lg/list.js +8 -30
- package/bpk-component-icon/lg/location.js +8 -30
- package/bpk-component-icon/lg/lock.js +8 -30
- package/bpk-component-icon/lg/logout.js +8 -32
- package/bpk-component-icon/lg/long-arrow-down.js +8 -30
- package/bpk-component-icon/lg/long-arrow-left.js +8 -30
- package/bpk-component-icon/lg/long-arrow-right.js +8 -30
- package/bpk-component-icon/lg/long-arrow-up.js +8 -30
- package/bpk-component-icon/lg/lounge.js +8 -32
- package/bpk-component-icon/lg/luggageall.js +8 -30
- package/bpk-component-icon/lg/mail.js +8 -32
- package/bpk-component-icon/lg/map.js +8 -30
- package/bpk-component-icon/lg/meal.js +8 -30
- package/bpk-component-icon/lg/media.js +8 -30
- package/bpk-component-icon/lg/menu--horizontal.js +8 -30
- package/bpk-component-icon/lg/menu--vertical.js +8 -30
- package/bpk-component-icon/lg/menu.js +8 -30
- package/bpk-component-icon/lg/mileage.js +8 -32
- package/bpk-component-icon/lg/minus.js +8 -30
- package/bpk-component-icon/lg/mobile.js +8 -30
- package/bpk-component-icon/lg/money.js +8 -30
- package/bpk-component-icon/lg/multiple-bookings.js +8 -30
- package/bpk-component-icon/lg/music.js +8 -30
- package/bpk-component-icon/lg/mute.js +8 -30
- package/bpk-component-icon/lg/native-android--back.js +8 -30
- package/bpk-component-icon/lg/native-android--close.js +8 -30
- package/bpk-component-icon/lg/native-android--forward.js +8 -30
- package/bpk-component-icon/lg/native-ios-close.js +8 -30
- package/bpk-component-icon/lg/navigation.js +8 -30
- package/bpk-component-icon/lg/new-window.js +8 -32
- package/bpk-component-icon/lg/news.js +8 -30
- package/bpk-component-icon/lg/night.js +8 -30
- package/bpk-component-icon/lg/not-allowed.js +8 -30
- package/bpk-component-icon/lg/onsen.js +8 -30
- package/bpk-component-icon/lg/paid.js +8 -30
- package/bpk-component-icon/lg/paperclip.js +8 -30
- package/bpk-component-icon/lg/parking.js +8 -30
- package/bpk-component-icon/lg/passport.js +8 -30
- package/bpk-component-icon/lg/pause.js +8 -30
- package/bpk-component-icon/lg/payment-card.js +8 -30
- package/bpk-component-icon/lg/petrol.js +8 -30
- package/bpk-component-icon/lg/phone-call.js +8 -30
- package/bpk-component-icon/lg/picture.js +8 -30
- package/bpk-component-icon/lg/pin.js +8 -30
- package/bpk-component-icon/lg/plane-seat.js +8 -32
- package/bpk-component-icon/lg/play.js +8 -30
- package/bpk-component-icon/lg/plus.js +8 -30
- package/bpk-component-icon/lg/policy.js +8 -30
- package/bpk-component-icon/lg/powerplug.js +8 -30
- package/bpk-component-icon/lg/ppe.js +8 -30
- package/bpk-component-icon/lg/price-alerts.js +8 -30
- package/bpk-component-icon/lg/price-tag.js +8 -30
- package/bpk-component-icon/lg/print.js +8 -30
- package/bpk-component-icon/lg/recent-searches.js +8 -30
- package/bpk-component-icon/lg/redo.js +8 -30
- package/bpk-component-icon/lg/refresh.js +8 -30
- package/bpk-component-icon/lg/return.js +8 -32
- package/bpk-component-icon/lg/room.js +8 -30
- package/bpk-component-icon/lg/scales.js +8 -32
- package/bpk-component-icon/lg/search.js +8 -30
- package/bpk-component-icon/lg/self-service.js +8 -30
- package/bpk-component-icon/lg/send-message.js +8 -30
- package/bpk-component-icon/lg/services.js +8 -30
- package/bpk-component-icon/lg/settings.js +8 -30
- package/bpk-component-icon/lg/share--android.js +8 -30
- package/bpk-component-icon/lg/share--ios.js +8 -32
- package/bpk-component-icon/lg/share.js +8 -30
- package/bpk-component-icon/lg/single-booking.js +8 -30
- package/bpk-component-icon/lg/social-distancing.js +8 -0
- package/bpk-component-icon/lg/social-like.js +8 -30
- package/bpk-component-icon/lg/sort-down.js +8 -30
- package/bpk-component-icon/lg/sort-up.js +8 -30
- package/bpk-component-icon/lg/sort.js +8 -30
- package/bpk-component-icon/lg/speaker.js +8 -32
- package/bpk-component-icon/lg/star-half.js +8 -30
- package/bpk-component-icon/lg/star-outline.js +8 -30
- package/bpk-component-icon/lg/star.js +8 -30
- package/bpk-component-icon/lg/stops.js +8 -30
- package/bpk-component-icon/lg/swap--horizontal.js +8 -30
- package/bpk-component-icon/lg/swap--vertical.js +8 -30
- package/bpk-component-icon/lg/swap.js +8 -30
- package/bpk-component-icon/lg/taxi.js +8 -32
- package/bpk-component-icon/lg/thumbs-down.js +8 -30
- package/bpk-component-icon/lg/thumbs-up.js +8 -30
- package/bpk-component-icon/lg/tick-circle.js +8 -30
- package/bpk-component-icon/lg/tick.js +8 -30
- package/bpk-component-icon/lg/ticket-flexible.js +8 -30
- package/bpk-component-icon/lg/ticket.js +8 -30
- package/bpk-component-icon/lg/time.js +8 -30
- package/bpk-component-icon/lg/toilets.js +8 -30
- package/bpk-component-icon/lg/train.js +8 -30
- package/bpk-component-icon/lg/transmission-automatic.js +8 -30
- package/bpk-component-icon/lg/transmission-manual.js +8 -30
- package/bpk-component-icon/lg/trash.js +8 -30
- package/bpk-component-icon/lg/trend--down.js +8 -30
- package/bpk-component-icon/lg/trend--steady.js +8 -30
- package/bpk-component-icon/lg/trend--will-rise.js +8 -30
- package/bpk-component-icon/lg/trend.js +8 -30
- package/bpk-component-icon/lg/trips.js +8 -30
- package/bpk-component-icon/lg/undo.js +8 -30
- package/bpk-component-icon/lg/unlock.js +8 -30
- package/bpk-component-icon/lg/unmute.js +8 -32
- package/bpk-component-icon/lg/upgrade.js +8 -30
- package/bpk-component-icon/lg/use-location.js +8 -30
- package/bpk-component-icon/lg/view.js +8 -30
- package/bpk-component-icon/lg/virus.js +8 -30
- package/bpk-component-icon/lg/wallet.js +8 -32
- package/bpk-component-icon/lg/weather--clear.js +8 -30
- package/bpk-component-icon/lg/weather--cloudy.js +8 -32
- package/bpk-component-icon/lg/weather--fog.js +8 -30
- package/bpk-component-icon/lg/weather--partly-cloudy.js +8 -32
- package/bpk-component-icon/lg/weather--rain.js +8 -34
- package/bpk-component-icon/lg/weather--snow.js +8 -30
- package/bpk-component-icon/lg/weather--thunderstorm.js +8 -34
- package/bpk-component-icon/lg/weather--tornado.js +8 -30
- package/bpk-component-icon/lg/weather--wind.js +8 -30
- package/bpk-component-icon/lg/weather.js +8 -30
- package/bpk-component-icon/lg/wifi.js +8 -30
- package/bpk-component-icon/lg/window--reduce.js +8 -32
- package/bpk-component-icon/lg/window.js +8 -30
- package/bpk-component-icon/lg/world--amer.js +8 -30
- package/bpk-component-icon/lg/world--apac.js +8 -30
- package/bpk-component-icon/lg/world--emea.js +8 -32
- package/bpk-component-icon/sm/accessibility.js +8 -31
- package/bpk-component-icon/sm/account--add.js +8 -31
- package/bpk-component-icon/sm/account--female.js +8 -31
- package/bpk-component-icon/sm/account--id-card.js +8 -31
- package/bpk-component-icon/sm/account--name.js +8 -31
- package/bpk-component-icon/sm/account--permit.js +8 -31
- package/bpk-component-icon/sm/account-circle.js +8 -31
- package/bpk-component-icon/sm/account.js +8 -31
- package/bpk-component-icon/sm/add-circle.js +8 -31
- package/bpk-component-icon/sm/adult.js +8 -31
- package/bpk-component-icon/sm/aircon.js +8 -31
- package/bpk-component-icon/sm/aircraft.js +8 -33
- package/bpk-component-icon/sm/airline--multiple.js +8 -31
- package/bpk-component-icon/sm/airline.js +8 -31
- package/bpk-component-icon/sm/airports.js +8 -31
- package/bpk-component-icon/sm/alert--active.js +8 -31
- package/bpk-component-icon/sm/alert--add.js +8 -31
- package/bpk-component-icon/sm/alert--expired.js +8 -31
- package/bpk-component-icon/sm/alert--remove.js +8 -31
- package/bpk-component-icon/sm/arrow-down.js +8 -31
- package/bpk-component-icon/sm/arrow-left.js +8 -31
- package/bpk-component-icon/sm/arrow-right.js +8 -31
- package/bpk-component-icon/sm/arrow-up.js +8 -31
- package/bpk-component-icon/sm/award.js +8 -31
- package/bpk-component-icon/sm/baby-carriage.js +8 -31
- package/bpk-component-icon/sm/baggage--add.js +8 -31
- package/bpk-component-icon/sm/baggage--remove.js +8 -31
- package/bpk-component-icon/sm/baggage-cabin-add.js +8 -31
- package/bpk-component-icon/sm/baggage-cabin-not-included.js +8 -33
- package/bpk-component-icon/sm/baggage-cabin.js +8 -31
- package/bpk-component-icon/sm/baggage-checked-add.js +8 -31
- package/bpk-component-icon/sm/baggage-checked-not-included.js +8 -33
- package/bpk-component-icon/sm/baggage-checked.js +8 -31
- package/bpk-component-icon/sm/baggage-cross.js +8 -31
- package/bpk-component-icon/sm/baggage-generic.js +8 -31
- package/bpk-component-icon/sm/baggage-tick.js +8 -31
- package/bpk-component-icon/sm/baggage.js +8 -31
- package/bpk-component-icon/sm/bar.js +8 -31
- package/bpk-component-icon/sm/beach.js +8 -33
- package/bpk-component-icon/sm/beer.js +8 -31
- package/bpk-component-icon/sm/breakfast-cross.js +8 -31
- package/bpk-component-icon/sm/breakfast-tick.js +8 -31
- package/bpk-component-icon/sm/bus.js +8 -33
- package/bpk-component-icon/sm/business.js +8 -31
- package/bpk-component-icon/sm/cafe.js +8 -31
- package/bpk-component-icon/sm/calendar.js +8 -31
- package/bpk-component-icon/sm/call-back.js +8 -33
- package/bpk-component-icon/sm/camera.js +8 -31
- package/bpk-component-icon/sm/camper-van.js +8 -33
- package/bpk-component-icon/sm/car-door.js +8 -31
- package/bpk-component-icon/sm/car-wash.js +8 -33
- package/bpk-component-icon/sm/cars-flexible.js +8 -31
- package/bpk-component-icon/sm/cars.js +8 -33
- package/bpk-component-icon/sm/center-location.js +8 -31
- package/bpk-component-icon/sm/chart.js +8 -31
- package/bpk-component-icon/sm/chauffeur.js +8 -33
- package/bpk-component-icon/sm/chevron-down.js +8 -31
- package/bpk-component-icon/sm/chevron-left.js +8 -31
- package/bpk-component-icon/sm/chevron-right.js +8 -31
- package/bpk-component-icon/sm/chevron-up.js +8 -31
- package/bpk-component-icon/sm/child-seat.js +8 -31
- package/bpk-component-icon/sm/child.js +8 -31
- package/bpk-component-icon/sm/city-center.js +8 -31
- package/bpk-component-icon/sm/city.js +8 -31
- package/bpk-component-icon/sm/clean-policy.js +8 -31
- package/bpk-component-icon/sm/clean.js +8 -33
- package/bpk-component-icon/sm/cleaning-medical.js +8 -31
- package/bpk-component-icon/sm/cloakroom.js +8 -31
- package/bpk-component-icon/sm/close-circle.js +8 -31
- package/bpk-component-icon/sm/close.js +8 -31
- package/bpk-component-icon/sm/collapse.js +8 -31
- package/bpk-component-icon/sm/content--copy.js +8 -33
- package/bpk-component-icon/sm/content--event.js +8 -31
- package/bpk-component-icon/sm/content--guides.js +8 -31
- package/bpk-component-icon/sm/currency.js +8 -31
- package/bpk-component-icon/sm/data.js +8 -33
- package/bpk-component-icon/sm/deals.js +8 -31
- package/bpk-component-icon/sm/depart.js +8 -35
- package/bpk-component-icon/sm/device-mid.js +8 -31
- package/bpk-component-icon/sm/device-wide.js +8 -31
- package/bpk-component-icon/sm/direct.js +8 -33
- package/bpk-component-icon/sm/document-csv.js +8 -31
- package/bpk-component-icon/sm/document-pdf.js +8 -31
- package/bpk-component-icon/sm/download.js +8 -33
- package/bpk-component-icon/sm/duration.js +8 -31
- package/bpk-component-icon/sm/eco-leaf.js +8 -31
- package/bpk-component-icon/sm/edit.js +8 -31
- package/bpk-component-icon/sm/education.js +8 -33
- package/bpk-component-icon/sm/electric.js +8 -31
- package/bpk-component-icon/sm/end-call.js +8 -31
- package/bpk-component-icon/sm/estimated.js +8 -31
- package/bpk-component-icon/sm/exclamation-circle.js +8 -31
- package/bpk-component-icon/sm/exclamation.js +8 -31
- package/bpk-component-icon/sm/expand.js +8 -31
- package/bpk-component-icon/sm/explore.js +8 -31
- package/bpk-component-icon/sm/face--blank.js +8 -31
- package/bpk-component-icon/sm/face--happy.js +8 -31
- package/bpk-component-icon/sm/face--sad.js +8 -31
- package/bpk-component-icon/sm/face-id.js +8 -31
- package/bpk-component-icon/sm/face-mask.js +8 -31
- package/bpk-component-icon/sm/family.js +8 -31
- package/bpk-component-icon/sm/fast-track.js +8 -33
- package/bpk-component-icon/sm/fast-train.js +8 -33
- package/bpk-component-icon/sm/filter.js +8 -32
- package/bpk-component-icon/sm/fingerprint.js +8 -31
- package/bpk-component-icon/sm/flag.js +8 -31
- package/bpk-component-icon/sm/flask.js +8 -31
- package/bpk-component-icon/sm/flight-flexible.js +8 -31
- package/bpk-component-icon/sm/flight-landing.js +8 -35
- package/bpk-component-icon/sm/flight-takeoff.js +8 -33
- package/bpk-component-icon/sm/flight.js +8 -33
- package/bpk-component-icon/sm/food.js +8 -31
- package/bpk-component-icon/sm/gears-automatic-circle.js +8 -31
- package/bpk-component-icon/sm/gears-automatic.js +8 -31
- package/bpk-component-icon/sm/gears-manual-circle.js +8 -31
- package/bpk-component-icon/sm/gears-manual.js +8 -31
- package/bpk-component-icon/sm/globe.js +8 -31
- package/bpk-component-icon/sm/grid-layout.js +8 -31
- package/bpk-component-icon/sm/headset.js +8 -31
- package/bpk-component-icon/sm/health-fitness.js +8 -31
- package/bpk-component-icon/sm/heart--outline.js +8 -31
- package/bpk-component-icon/sm/heart.js +8 -31
- package/bpk-component-icon/sm/help-circle.js +8 -31
- package/bpk-component-icon/sm/help.js +8 -31
- package/bpk-component-icon/sm/hide.js +8 -31
- package/bpk-component-icon/sm/hotel-flexible.js +8 -31
- package/bpk-component-icon/sm/hotels--disabled-facilities.js +8 -31
- package/bpk-component-icon/sm/hotels--jacuzzi.js +8 -33
- package/bpk-component-icon/sm/hotels--pets-allowed.js +8 -31
- package/bpk-component-icon/sm/hotels--smoking.js +8 -31
- package/bpk-component-icon/sm/hotels.js +8 -31
- package/bpk-component-icon/sm/infant.js +8 -33
- package/bpk-component-icon/sm/information--language-alert.js +8 -31
- package/bpk-component-icon/sm/information--language-question.js +8 -31
- package/bpk-component-icon/sm/information--language.js +8 -31
- package/bpk-component-icon/sm/information-circle.js +8 -31
- package/bpk-component-icon/sm/information.js +8 -31
- package/bpk-component-icon/sm/insurance.js +8 -31
- package/bpk-component-icon/sm/key.js +8 -31
- package/bpk-component-icon/sm/keypad.js +8 -31
- package/bpk-component-icon/sm/landmark.js +8 -31
- package/bpk-component-icon/sm/language.js +8 -31
- package/bpk-component-icon/sm/legroom--extra.js +8 -33
- package/bpk-component-icon/sm/legroom--normal.js +8 -33
- package/bpk-component-icon/sm/legroom--reduced.js +8 -33
- package/bpk-component-icon/sm/leisure.js +8 -31
- package/bpk-component-icon/sm/lightning.js +8 -31
- package/bpk-component-icon/sm/list.js +8 -31
- package/bpk-component-icon/sm/location.js +8 -31
- package/bpk-component-icon/sm/lock.js +8 -31
- package/bpk-component-icon/sm/logout.js +8 -33
- package/bpk-component-icon/sm/long-arrow-down.js +8 -32
- package/bpk-component-icon/sm/long-arrow-left.js +8 -32
- package/bpk-component-icon/sm/long-arrow-right.js +8 -32
- package/bpk-component-icon/sm/long-arrow-up.js +8 -32
- package/bpk-component-icon/sm/lounge.js +8 -31
- package/bpk-component-icon/sm/luggageall.js +8 -31
- package/bpk-component-icon/sm/mail.js +8 -33
- package/bpk-component-icon/sm/map.js +8 -31
- package/bpk-component-icon/sm/meal.js +8 -31
- package/bpk-component-icon/sm/media.js +8 -31
- package/bpk-component-icon/sm/menu--horizontal.js +8 -31
- package/bpk-component-icon/sm/menu--vertical.js +8 -31
- package/bpk-component-icon/sm/menu.js +8 -31
- package/bpk-component-icon/sm/mileage.js +8 -33
- package/bpk-component-icon/sm/minus.js +8 -31
- package/bpk-component-icon/sm/mobile.js +8 -31
- package/bpk-component-icon/sm/money.js +8 -31
- package/bpk-component-icon/sm/multiple-bookings.js +8 -31
- package/bpk-component-icon/sm/music.js +8 -31
- package/bpk-component-icon/sm/mute.js +8 -31
- package/bpk-component-icon/sm/native-android--back.js +8 -31
- package/bpk-component-icon/sm/native-android--close.js +8 -31
- package/bpk-component-icon/sm/native-android--forward.js +8 -31
- package/bpk-component-icon/sm/native-ios-close.js +8 -31
- package/bpk-component-icon/sm/navigation.js +8 -31
- package/bpk-component-icon/sm/new-window.js +8 -37
- package/bpk-component-icon/sm/news.js +8 -31
- package/bpk-component-icon/sm/night.js +8 -31
- package/bpk-component-icon/sm/not-allowed.js +8 -31
- package/bpk-component-icon/sm/onsen.js +8 -33
- package/bpk-component-icon/sm/paid.js +8 -31
- package/bpk-component-icon/sm/paperclip.js +8 -31
- package/bpk-component-icon/sm/parking.js +8 -31
- package/bpk-component-icon/sm/passport.js +8 -31
- package/bpk-component-icon/sm/pause.js +8 -31
- package/bpk-component-icon/sm/payment-card.js +8 -31
- package/bpk-component-icon/sm/petrol.js +8 -31
- package/bpk-component-icon/sm/phone-call.js +8 -31
- package/bpk-component-icon/sm/picture.js +8 -31
- package/bpk-component-icon/sm/pin.js +8 -31
- package/bpk-component-icon/sm/plane-seat.js +8 -33
- package/bpk-component-icon/sm/play.js +8 -31
- package/bpk-component-icon/sm/plus.js +8 -31
- package/bpk-component-icon/sm/policy.js +8 -31
- package/bpk-component-icon/sm/powerplug.js +8 -31
- package/bpk-component-icon/sm/ppe.js +8 -31
- package/bpk-component-icon/sm/price-alerts.js +8 -31
- package/bpk-component-icon/sm/price-tag.js +8 -31
- package/bpk-component-icon/sm/print.js +8 -31
- package/bpk-component-icon/sm/recent-searches.js +8 -31
- package/bpk-component-icon/sm/redo.js +8 -31
- package/bpk-component-icon/sm/refresh.js +8 -31
- package/bpk-component-icon/sm/return.js +8 -35
- package/bpk-component-icon/sm/room.js +8 -31
- package/bpk-component-icon/sm/scales.js +8 -31
- package/bpk-component-icon/sm/search.js +8 -31
- package/bpk-component-icon/sm/self-service.js +8 -31
- package/bpk-component-icon/sm/send-message.js +8 -31
- package/bpk-component-icon/sm/services.js +8 -31
- package/bpk-component-icon/sm/settings.js +8 -31
- package/bpk-component-icon/sm/share--android.js +8 -31
- package/bpk-component-icon/sm/share--ios.js +8 -35
- package/bpk-component-icon/sm/share.js +8 -31
- package/bpk-component-icon/sm/single-booking.js +8 -31
- package/bpk-component-icon/sm/social-distancing.js +8 -0
- package/bpk-component-icon/sm/social-like.js +8 -31
- package/bpk-component-icon/sm/sort-down.js +8 -31
- package/bpk-component-icon/sm/sort-up.js +8 -31
- package/bpk-component-icon/sm/sort.js +8 -31
- package/bpk-component-icon/sm/speaker.js +8 -31
- package/bpk-component-icon/sm/star-half.js +8 -31
- package/bpk-component-icon/sm/star-outline.js +8 -31
- package/bpk-component-icon/sm/star.js +8 -31
- package/bpk-component-icon/sm/stops.js +8 -31
- package/bpk-component-icon/sm/swap--horizontal.js +8 -32
- package/bpk-component-icon/sm/swap--vertical.js +8 -31
- package/bpk-component-icon/sm/swap.js +8 -32
- package/bpk-component-icon/sm/taxi.js +8 -33
- package/bpk-component-icon/sm/thumbs-down.js +8 -31
- package/bpk-component-icon/sm/thumbs-up.js +8 -31
- package/bpk-component-icon/sm/tick-circle.js +8 -31
- package/bpk-component-icon/sm/tick.js +8 -31
- package/bpk-component-icon/sm/ticket-flexible.js +8 -31
- package/bpk-component-icon/sm/ticket.js +8 -31
- package/bpk-component-icon/sm/time.js +8 -31
- package/bpk-component-icon/sm/toilets.js +8 -31
- package/bpk-component-icon/sm/train.js +8 -31
- package/bpk-component-icon/sm/transmission-automatic.js +8 -31
- package/bpk-component-icon/sm/transmission-manual.js +8 -31
- package/bpk-component-icon/sm/trash.js +8 -31
- package/bpk-component-icon/sm/trend--down.js +8 -31
- package/bpk-component-icon/sm/trend--steady.js +8 -32
- package/bpk-component-icon/sm/trend--will-rise.js +8 -31
- package/bpk-component-icon/sm/trend.js +8 -31
- package/bpk-component-icon/sm/trips.js +8 -31
- package/bpk-component-icon/sm/undo.js +8 -31
- package/bpk-component-icon/sm/unlock.js +8 -31
- package/bpk-component-icon/sm/unmute.js +8 -33
- package/bpk-component-icon/sm/upgrade.js +8 -31
- package/bpk-component-icon/sm/use-location.js +8 -31
- package/bpk-component-icon/sm/view.js +8 -31
- package/bpk-component-icon/sm/virus.js +8 -31
- package/bpk-component-icon/sm/wallet.js +8 -31
- package/bpk-component-icon/sm/weather--clear.js +8 -31
- package/bpk-component-icon/sm/weather--cloudy.js +8 -33
- package/bpk-component-icon/sm/weather--fog.js +8 -31
- package/bpk-component-icon/sm/weather--partly-cloudy.js +8 -31
- package/bpk-component-icon/sm/weather--rain.js +8 -33
- package/bpk-component-icon/sm/weather--snow.js +8 -31
- package/bpk-component-icon/sm/weather--thunderstorm.js +8 -35
- package/bpk-component-icon/sm/weather--tornado.js +8 -31
- package/bpk-component-icon/sm/weather--wind.js +8 -33
- package/bpk-component-icon/sm/weather.js +8 -31
- package/bpk-component-icon/sm/wifi.js +8 -31
- package/bpk-component-icon/sm/window--reduce.js +8 -33
- package/bpk-component-icon/sm/window.js +8 -31
- package/bpk-component-icon/sm/world--amer.js +8 -31
- package/bpk-component-icon/sm/world--apac.js +8 -31
- package/bpk-component-icon/sm/world--emea.js +8 -31
- package/bpk-component-icon/src/BpkIcon.module.css +1 -1
- package/bpk-component-icon/src/BpkIcon.module.scss +33 -0
- package/bpk-component-icon/src/classNameModifierHOCFactory.js +53 -38
- package/bpk-component-icon/src/withAlignment.js +26 -22
- package/bpk-component-icon/src/withDescription.js +26 -17
- package/bpk-component-icon/src/withDescription.module.scss +22 -0
- package/bpk-component-icon/src/withRtlSupport.js +10 -13
- package/bpk-component-image/README.md +140 -0
- package/bpk-component-image/index.js +20 -38
- package/bpk-component-image/src/BpkBackgroundImage.js +171 -115
- package/bpk-component-image/src/BpkBackgroundImage.module.css +1 -1
- package/bpk-component-image/src/BpkBackgroundImage.module.scss +46 -0
- package/bpk-component-image/src/BpkImage.js +220 -152
- package/bpk-component-image/src/BpkImage.module.css +1 -1
- package/bpk-component-image/src/BpkImage.module.scss +89 -0
- package/bpk-component-image/src/BpkImageBorderRadiusStyles.js +7 -12
- package/bpk-component-image/src/customPropTypes.js +15 -10
- package/bpk-component-image/src/withLazyLoading.js +165 -110
- package/bpk-component-image/src/withLoadingBehavior.js +57 -27
- package/bpk-component-infinite-scroll/README.md +185 -0
- package/bpk-component-infinite-scroll/index.js +12 -25
- package/bpk-component-infinite-scroll/src/DataSource.js +31 -30
- package/bpk-component-infinite-scroll/src/intersection-observer.js +1 -3
- package/bpk-component-infinite-scroll/src/withInfiniteScroll-test.flow.js +102 -0
- package/bpk-component-infinite-scroll/src/withInfiniteScroll.js +228 -157
- package/bpk-component-infinite-scroll/src/withInfiniteScroll.module.scss +25 -0
- package/bpk-component-input/README.md +119 -0
- package/bpk-component-input/index.js +43 -50
- package/bpk-component-input/src/BpkClearButton.js +63 -44
- package/bpk-component-input/src/BpkClearButton.module.css +1 -1
- package/bpk-component-input/src/BpkClearButton.module.scss +40 -0
- package/bpk-component-input/src/BpkInput.js +126 -90
- package/bpk-component-input/src/BpkInput.module.css +1 -1
- package/bpk-component-input/src/BpkInput.module.scss +86 -0
- package/bpk-component-input/src/common-types.js +79 -40
- package/bpk-component-input/src/themeAttributes.js +2 -8
- package/bpk-component-input/src/withOpenEvents.js +131 -87
- package/bpk-component-label/README.md +28 -0
- package/bpk-component-label/index.js +7 -10
- package/bpk-component-label/src/BpkLabel.js +67 -42
- package/bpk-component-label/src/BpkLabel.module.css +1 -1
- package/bpk-component-label/src/BpkLabel.module.scss +47 -0
- package/bpk-component-link/README.md +66 -0
- package/bpk-component-link/index.js +11 -32
- package/bpk-component-link/src/BpkButtonLink.js +60 -45
- package/bpk-component-link/src/BpkLink.js +84 -60
- package/bpk-component-link/src/BpkLink.module.css +1 -1
- package/bpk-component-link/src/BpkLink.module.scss +31 -0
- package/bpk-component-link/src/themeAttributes.js +18 -10
- package/bpk-component-list/README.md +49 -0
- package/bpk-component-list/index.js +23 -19
- package/bpk-component-list/src/BpkList.js +50 -35
- package/bpk-component-list/src/BpkList.module.css +1 -1
- package/bpk-component-list/src/BpkList.module.scss +37 -0
- package/bpk-component-list/src/BpkListItem.js +33 -25
- package/bpk-component-loading-button/README.md +46 -0
- package/bpk-component-loading-button/index.js +7 -17
- package/bpk-component-loading-button/src/BpkLoadingButton.js +150 -88
- package/bpk-component-loading-button/src/BpkLoadingButton.module.scss +67 -0
- package/bpk-component-map/README.md +211 -0
- package/bpk-component-map/index.js +28 -59
- package/bpk-component-map/src/BpkBasicMapMarker.js +48 -31
- package/bpk-component-map/src/BpkIconMarker.js +93 -55
- package/bpk-component-map/src/BpkIconMarker.module.css +1 -1
- package/bpk-component-map/src/BpkIconMarker.module.scss +79 -0
- package/bpk-component-map/src/BpkIconMarkerBackground.js +68 -46
- package/bpk-component-map/src/BpkIconMarkerBackground.module.css +1 -1
- package/bpk-component-map/src/BpkIconMarkerBackground.module.scss +53 -0
- package/bpk-component-map/src/BpkMap.js +145 -89
- package/bpk-component-map/src/{BpkMap.module.css → BpkMap.module.scss} +9 -6
- package/bpk-component-map/src/BpkOverlayView.js +43 -32
- package/bpk-component-map/src/BpkPriceMarker.js +107 -61
- package/bpk-component-map/src/BpkPriceMarker.module.css +1 -1
- package/bpk-component-map/src/BpkPriceMarker.module.scss +148 -0
- package/bpk-component-map/src/DefaultLoadingElement.js +19 -19
- package/bpk-component-map/src/DefaultLoadingElement.module.css +1 -1
- package/bpk-component-map/src/DefaultLoadingElement.module.scss +28 -0
- package/bpk-component-map/src/common-types.js +14 -12
- package/bpk-component-map/src/themeAttributes.js +18 -13
- package/bpk-component-map/src/withGoogleMapsScript.js +61 -38
- package/bpk-component-mobile-scroll-container/README.md +72 -0
- package/bpk-component-mobile-scroll-container/index.js +6 -10
- package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.js +187 -120
- package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.module.scss +52 -0
- package/bpk-component-modal/README.md +112 -0
- package/bpk-component-modal/index.js +10 -31
- package/bpk-component-modal/src/BpkModal.js +111 -73
- package/bpk-component-modal/src/BpkModal.module.css +1 -1
- package/bpk-component-modal/src/BpkModal.module.scss +46 -0
- package/bpk-component-modal/src/BpkModalInner.js +143 -82
- package/bpk-component-modal/src/BpkModalInner.module.css +1 -1
- package/bpk-component-modal/src/BpkModalInner.module.scss +125 -0
- package/bpk-component-modal/src/customPropTypes.js +29 -13
- package/bpk-component-modal/src/themeAttributes.js +6 -9
- package/bpk-component-navigation-bar/README.md +112 -0
- package/bpk-component-navigation-bar/index.js +25 -31
- package/bpk-component-navigation-bar/src/BpkNavigationBar.js +88 -54
- package/bpk-component-navigation-bar/src/BpkNavigationBar.module.css +1 -1
- package/bpk-component-navigation-bar/src/BpkNavigationBar.module.scss +77 -0
- package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.js +57 -36
- package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.module.scss +51 -0
- package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.js +54 -38
- package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.module.scss +43 -0
- package/bpk-component-navigation-bar/src/themeAttributes.js +16 -8
- package/bpk-component-nudger/README.md +168 -0
- package/bpk-component-nudger/index.js +9 -24
- package/bpk-component-nudger/src/BpkConfigurableNudger.js +142 -93
- package/bpk-component-nudger/src/BpkNudger.js +65 -43
- package/bpk-component-nudger/src/BpkNudger.module.css +1 -1
- package/bpk-component-nudger/src/BpkNudger.module.scss +50 -0
- package/bpk-component-nudger/src/common-types.js +26 -19
- package/bpk-component-nudger/src/themeAttributes.js +6 -9
- package/bpk-component-overlay/README.md +51 -0
- package/bpk-component-overlay/index.js +12 -29
- package/bpk-component-overlay/src/BpkOverlay.js +80 -49
- package/bpk-component-overlay/src/BpkOverlay.module.css +1 -1
- package/bpk-component-overlay/src/BpkOverlay.module.scss +163 -0
- package/bpk-component-page-indicator/README.md +42 -0
- package/bpk-component-page-indicator/index.js +11 -24
- package/bpk-component-page-indicator/src/BpkPageIndicator.js +111 -69
- package/bpk-component-page-indicator/src/BpkPageIndicator.module.css +1 -1
- package/bpk-component-page-indicator/src/BpkPageIndicator.module.scss +91 -0
- package/bpk-component-page-indicator/src/NavButton.js +60 -47
- package/bpk-component-pagination/README.md +57 -0
- package/bpk-component-pagination/index.js +6 -17
- package/bpk-component-pagination/src/BpkPagination.js +82 -61
- package/bpk-component-pagination/src/BpkPagination.module.scss +22 -0
- package/bpk-component-pagination/src/BpkPaginationBreak.js +12 -18
- package/bpk-component-pagination/src/BpkPaginationList.js +71 -53
- package/bpk-component-pagination/src/BpkPaginationList.module.css +1 -1
- package/bpk-component-pagination/src/BpkPaginationList.module.scss +46 -0
- package/bpk-component-pagination/src/BpkPaginationNudger.js +51 -46
- package/bpk-component-pagination/src/BpkPaginationNudger.module.css +1 -1
- package/bpk-component-pagination/src/BpkPaginationNudger.module.scss +34 -0
- package/bpk-component-pagination/src/BpkPaginationPage.js +35 -35
- package/bpk-component-pagination/src/BpkPaginationPage.module.css +1 -1
- package/bpk-component-pagination/src/BpkPaginationPage.module.scss +59 -0
- package/bpk-component-pagination/src/themeAttributes.js +9 -9
- package/bpk-component-panel/README.md +31 -0
- package/bpk-component-panel/index.js +4 -10
- package/bpk-component-panel/src/BpkPanel.js +45 -34
- package/bpk-component-panel/src/BpkPanel.module.css +1 -1
- package/bpk-component-panel/src/BpkPanel.module.scss +31 -0
- package/bpk-component-phone-input/README.md +98 -0
- package/bpk-component-phone-input/index.js +9 -10
- package/bpk-component-phone-input/src/BpkPhoneInput.js +185 -116
- package/bpk-component-phone-input/src/BpkPhoneInput.module.css +1 -1
- package/bpk-component-phone-input/src/BpkPhoneInput.module.scss +42 -0
- package/bpk-component-popover/README.md +138 -0
- package/bpk-component-popover/index.js +17 -31
- package/bpk-component-popover/src/BpkPopover.js +159 -101
- package/bpk-component-popover/src/BpkPopover.module.css +1 -1
- package/bpk-component-popover/src/BpkPopover.module.scss +127 -0
- package/bpk-component-popover/src/BpkPopoverPortal.js +185 -124
- package/bpk-component-popover/src/constants.js +7 -12
- package/bpk-component-popover/src/keyboardFocusScope.js +21 -19
- package/bpk-component-popover/src/themeAttributes.js +6 -9
- package/bpk-component-price/README.md +35 -0
- package/bpk-component-price/index.js +7 -23
- package/bpk-component-price/src/BpkPrice.js +102 -60
- package/bpk-component-price/src/BpkPrice.module.scss +61 -0
- package/bpk-component-price/src/common-types.js +9 -12
- package/bpk-component-progress/README.md +53 -0
- package/bpk-component-progress/index.js +8 -17
- package/bpk-component-progress/src/BpkProgress.js +136 -102
- package/bpk-component-progress/src/BpkProgress.module.css +1 -1
- package/bpk-component-progress/src/BpkProgress.module.scss +64 -0
- package/bpk-component-progress/src/themeAttributes.js +4 -8
- package/bpk-component-radio/README.md +41 -0
- package/bpk-component-radio/index.js +8 -17
- package/bpk-component-radio/src/BpkRadio.js +83 -51
- package/bpk-component-radio/src/BpkRadio.module.css +1 -1
- package/bpk-component-radio/src/BpkRadio.module.scss +85 -0
- package/bpk-component-radio/src/themeAttributes.js +4 -8
- package/bpk-component-rating/README.md +78 -0
- package/bpk-component-rating/index.js +7 -23
- package/bpk-component-rating/src/BpkRating.js +152 -93
- package/bpk-component-rating/src/BpkRating.module.css +1 -1
- package/bpk-component-rating/src/BpkRating.module.scss +86 -0
- package/bpk-component-rating/src/common-types.js +8 -14
- package/bpk-component-rtl-toggle/README.md +24 -0
- package/bpk-component-rtl-toggle/index.js +6 -17
- package/bpk-component-rtl-toggle/src/BpkRtlToggle.js +73 -46
- package/bpk-component-rtl-toggle/src/updateOnDirectionChange.js +51 -28
- package/bpk-component-rtl-toggle/src/utils.js +7 -11
- package/bpk-component-scrollable-calendar/README.md +100 -0
- package/bpk-component-scrollable-calendar/index.js +17 -38
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendar.js +19 -12
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate.js +37 -32
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.js +53 -43
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.module.scss +31 -0
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.js +166 -121
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.module.scss +36 -0
- package/bpk-component-scrollable-calendar/src/utils.js +19 -13
- package/bpk-component-scrollable-calendar/test-utils.js +246 -200
- package/bpk-component-section-list/README.md +50 -0
- package/bpk-component-section-list/index.js +9 -24
- package/bpk-component-section-list/src/BpkSectionList.js +34 -20
- package/bpk-component-section-list/src/BpkSectionListItem.js +89 -56
- package/bpk-component-section-list/src/BpkSectionListItem.module.css +1 -1
- package/bpk-component-section-list/src/BpkSectionListItem.module.scss +54 -0
- package/bpk-component-section-list/src/BpkSectionListSection.js +59 -36
- package/bpk-component-section-list/src/BpkSectionListSection.module.css +1 -1
- package/bpk-component-section-list/src/BpkSectionListSection.module.scss +35 -0
- package/bpk-component-select/README.md +45 -0
- package/bpk-component-select/index.js +9 -17
- package/bpk-component-select/src/BpkSelect.js +110 -58
- package/bpk-component-select/src/BpkSelect.module.css +1 -1
- package/bpk-component-select/src/BpkSelect.module.scss +126 -0
- package/bpk-component-select/src/themeAttributes.js +2 -8
- package/bpk-component-skip-link/README.md +28 -0
- package/bpk-component-skip-link/index.js +8 -17
- package/bpk-component-skip-link/src/BpkSkipLink.js +52 -34
- package/bpk-component-skip-link/src/BpkSkipLink.module.css +1 -1
- package/bpk-component-skip-link/src/BpkSkipLink.module.scss +50 -0
- package/bpk-component-skip-link/src/themeAttributes.js +2 -8
- package/bpk-component-slider/README.md +41 -0
- package/bpk-component-slider/index.js +6 -17
- package/bpk-component-slider/src/BpkSlider.js +52 -37
- package/bpk-component-slider/src/BpkSlider.module.css +1 -1
- package/bpk-component-slider/src/BpkSlider.module.scss +102 -0
- package/bpk-component-slider/src/themeAttributes.js +2 -8
- package/bpk-component-spinner/README.md +38 -0
- package/bpk-component-spinner/changelog.yml +55 -0
- package/bpk-component-spinner/index.js +32 -40
- package/bpk-component-spinner/src/BpkExtraLargeSpinner.js +51 -87
- package/bpk-component-spinner/src/BpkLargeSpinner.js +55 -89
- package/bpk-component-spinner/src/BpkSpinner.js +54 -133
- package/bpk-component-spinner/src/BpkSpinner.module.css +1 -1
- package/bpk-component-spinner/src/BpkSpinner.module.scss +58 -0
- package/bpk-component-spinner/src/spinnerTypes.js +5 -9
- package/bpk-component-spinner/src/themeAttributes.js +4 -8
- package/bpk-component-split-input/README.md +40 -0
- package/bpk-component-split-input/index.js +10 -17
- package/bpk-component-split-input/src/BpkInputField.js +57 -52
- package/bpk-component-split-input/src/BpkInputField.module.scss +34 -0
- package/bpk-component-split-input/src/BpkSplitInput.js +222 -208
- package/bpk-component-split-input/src/BpkSplitInput.module.css +1 -1
- package/bpk-component-split-input/src/BpkSplitInput.module.scss +36 -0
- package/bpk-component-star-rating/README.md +97 -0
- package/bpk-component-star-rating/index.js +21 -65
- package/bpk-component-star-rating/src/BpkInteractiveStar.js +78 -51
- package/bpk-component-star-rating/src/BpkInteractiveStar.module.css +1 -1
- package/bpk-component-star-rating/src/BpkInteractiveStar.module.scss +66 -0
- package/bpk-component-star-rating/src/BpkInteractiveStarRating.js +101 -63
- package/bpk-component-star-rating/src/BpkStar.js +96 -67
- package/bpk-component-star-rating/src/BpkStar.module.css +1 -1
- package/bpk-component-star-rating/src/BpkStar.module.scss +63 -0
- package/bpk-component-star-rating/src/BpkStarRating.js +103 -58
- package/bpk-component-star-rating/src/BpkStarRating.module.scss +21 -0
- package/bpk-component-star-rating/src/themeAttributes.js +4 -8
- package/bpk-component-star-rating/src/withInteractiveStarRatingState.js +89 -58
- package/bpk-component-switch/README.md +35 -0
- package/bpk-component-switch/index.js +11 -25
- package/bpk-component-switch/src/BpkSwitch.js +75 -48
- package/bpk-component-switch/src/BpkSwitch.module.css +1 -1
- package/bpk-component-switch/src/BpkSwitch.module.scss +99 -0
- package/bpk-component-switch/src/themeAttributes.js +2 -8
- package/bpk-component-table/README.md +64 -0
- package/bpk-component-table/index.js +34 -47
- package/bpk-component-table/src/BpkTable.js +58 -34
- package/bpk-component-table/src/BpkTable.module.css +1 -1
- package/bpk-component-table/src/BpkTable.module.scss +39 -0
- package/bpk-component-table/src/BpkTableBody.js +14 -13
- package/bpk-component-table/src/BpkTableCell.js +48 -30
- package/bpk-component-table/src/BpkTableHead.js +14 -13
- package/bpk-component-table/src/BpkTableHeadCell.js +52 -32
- package/bpk-component-table/src/BpkTableRow.js +14 -13
- package/bpk-component-text/README.md +74 -0
- package/bpk-component-text/index.js +7 -23
- package/bpk-component-text/src/BpkText.js +97 -45
- package/bpk-component-text/src/BpkText.module.css +1 -1
- package/bpk-component-text/src/BpkText.module.scss +139 -0
- package/bpk-component-textarea/README.md +32 -0
- package/bpk-component-textarea/index.js +8 -17
- package/bpk-component-textarea/src/BpkTextarea.js +62 -37
- package/bpk-component-textarea/src/BpkTextarea.module.css +1 -1
- package/bpk-component-textarea/src/BpkTextarea.module.scss +33 -0
- package/bpk-component-textarea/src/themeAttributes.js +4 -8
- package/bpk-component-theme-toggle/README.md +28 -0
- package/bpk-component-theme-toggle/index.js +6 -17
- package/bpk-component-theme-toggle/src/BpkThemeToggle.js +96 -77
- package/bpk-component-theme-toggle/src/BpkThemeToggle.module.scss +25 -0
- package/bpk-component-theme-toggle/src/theming.js +98 -55
- package/bpk-component-theme-toggle/src/updateOnThemeChange.js +58 -38
- package/bpk-component-theme-toggle/src/utils.js +5 -9
- package/bpk-component-ticket/README.md +35 -0
- package/bpk-component-ticket/index.js +6 -10
- package/bpk-component-ticket/src/BpkTicket.js +128 -69
- package/bpk-component-ticket/src/BpkTicket.module.css +1 -1
- package/bpk-component-ticket/src/BpkTicket.module.scss +144 -0
- package/bpk-component-tooltip/README.md +65 -0
- package/bpk-component-tooltip/index.js +10 -17
- package/bpk-component-tooltip/src/BpkTooltip.js +98 -64
- package/bpk-component-tooltip/src/BpkTooltip.module.css +1 -1
- package/bpk-component-tooltip/src/BpkTooltip.module.scss +149 -0
- package/bpk-component-tooltip/src/BpkTooltipPortal.js +190 -120
- package/bpk-component-tooltip/src/constants.js +9 -16
- package/bpk-react-utils/README.md +249 -0
- package/bpk-react-utils/index.js +39 -87
- package/bpk-react-utils/src/Portal.js +115 -64
- package/bpk-react-utils/src/TransitionInitialMount.js +40 -33
- package/bpk-react-utils/src/cssModules.js +12 -14
- package/bpk-react-utils/src/deprecated.js +22 -19
- package/bpk-react-utils/src/deviceDetection.js +14 -11
- package/bpk-react-utils/src/isRTL.js +17 -11
- package/bpk-react-utils/src/withDefaultProps.js +60 -36
- package/bpk-react-utils/src/wrapDisplayName.js +4 -8
- package/bpk-scrim-utils/README.md +47 -0
- package/bpk-scrim-utils/index.js +6 -17
- package/bpk-scrim-utils/src/BpkScrim.js +29 -26
- package/bpk-scrim-utils/src/bpk-scrim-content.module.scss +32 -0
- package/bpk-scrim-utils/src/bpk-scrim.module.css +1 -1
- package/bpk-scrim-utils/src/bpk-scrim.module.scss +45 -0
- package/bpk-scrim-utils/src/customPropTypes.js +19 -11
- package/bpk-scrim-utils/src/scroll-utils.js +38 -20
- package/bpk-scrim-utils/src/withScrim.js +115 -94
- package/bpk-theming/README.md +41 -0
- package/bpk-theming/index.js +4 -10
- package/bpk-theming/src/BpkThemeProvider.js +73 -59
- package/package.json +1 -1
- package/bpk-component-boilerplate/src/BpkBoilerplate.js +0 -38
- package/bpk-component-button/src/BpkButtonLinkOnDark.module.css +0 -18
- package/bpk-component-button/src/BpkButtonPrimaryOnDark.module.css +0 -18
- package/bpk-component-button/src/BpkButtonPrimaryOnLight.module.css +0 -18
- package/bpk-component-button/src/BpkButtonSecondaryOnDark.module.css +0 -18
- package/bpk-component-content-cards/src/BpkContentCard.module.css +0 -18
- package/bpk-component-datatable/src/BpkDataTableHeader.module.css +0 -18
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.module.css +0 -18
- package/bpk-component-loading-button/src/BpkLoadingButton.module.css +0 -18
- package/bpk-component-price/src/BpkPrice.module.css +0 -18
- package/bpk-storybook-utils/index.js +0 -43
- package/bpk-storybook-utils/src/BpkDarkExampleWrapper.js +0 -33
- package/index.css +0 -0
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
# bpk-react-utils
|
|
2
|
+
|
|
3
|
+
> Miscellaneous React based utilities for use in Backpack components.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
Check the main [Readme](https://github.com/skyscanner/backpack#usage) for a complete installation guide.
|
|
8
|
+
|
|
9
|
+
## Portal.js
|
|
10
|
+
|
|
11
|
+
Render's children into a new component tree and appends it to `document.body`. Useful for Modals, Popovers, Tooltips etc where
|
|
12
|
+
it's necessary in overcoming z-index issues when absolutely positioning elements.
|
|
13
|
+
|
|
14
|
+
### Usage
|
|
15
|
+
|
|
16
|
+
```js
|
|
17
|
+
import { Portal } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
18
|
+
import BpkButton from '@skyscanner/backpack-web/bpk-component-button';
|
|
19
|
+
import { BpkCode } from '@skyscanner/backpack-web/bpk-component-code';
|
|
20
|
+
import React, { Component } from 'react';
|
|
21
|
+
|
|
22
|
+
class MyComponent extends Component {
|
|
23
|
+
constructor() {
|
|
24
|
+
super();
|
|
25
|
+
|
|
26
|
+
this.state = {
|
|
27
|
+
isOpen: false,
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
onOpen = () => {
|
|
33
|
+
this.setState({
|
|
34
|
+
isOpen: true,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
onClose = () => {
|
|
39
|
+
this.setState({
|
|
40
|
+
isOpen: false,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
render() {
|
|
45
|
+
return (
|
|
46
|
+
<div>
|
|
47
|
+
<BpkButton onClick={this.onOpen}>Open portal</BpkButton>
|
|
48
|
+
<Portal
|
|
49
|
+
isOpen={this.state.isOpen}
|
|
50
|
+
onClose={this.onClose}
|
|
51
|
+
>
|
|
52
|
+
<div>I'm now appended to <BpkCode>document.body</BpkCode></div>
|
|
53
|
+
</Portal>
|
|
54
|
+
</div>
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Props
|
|
61
|
+
|
|
62
|
+
| Property | PropType | Required | Default Value |
|
|
63
|
+
| --------------------- | ----------------------- | -------- | ------------- |
|
|
64
|
+
| children | node | true | - |
|
|
65
|
+
| isOpen | bool | true | - |
|
|
66
|
+
| beforeClose | func | false | null |
|
|
67
|
+
| onClose | func | false | noop |
|
|
68
|
+
| onOpen | func | false | noop |
|
|
69
|
+
| onRender | func | false | noop |
|
|
70
|
+
| renderTarget | func | false | null |
|
|
71
|
+
| target | oneOf([function, node]) | false | null |
|
|
72
|
+
| closeOnEscPressed | bool | false | true |
|
|
73
|
+
|
|
74
|
+
## `cssModules.js`
|
|
75
|
+
|
|
76
|
+
A helpful utility which permits backwards compatibility with hard coded classes and [CSS modules](https://github.com/css-modules/css-modules).
|
|
77
|
+
|
|
78
|
+
### Usage
|
|
79
|
+
|
|
80
|
+
```js
|
|
81
|
+
import React from 'react';
|
|
82
|
+
import { cssModules } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
83
|
+
|
|
84
|
+
import STYLES from './MyComponent.scss';
|
|
85
|
+
|
|
86
|
+
const getClassName = cssModules(STYLES);
|
|
87
|
+
|
|
88
|
+
const MyComponent = (props) => (
|
|
89
|
+
<div className={getClassName('MyComponent')}>
|
|
90
|
+
<div className={getClassName('MyComponent__inner')}>
|
|
91
|
+
{props.children}
|
|
92
|
+
</div>
|
|
93
|
+
</div>
|
|
94
|
+
);
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
With CSS modules:
|
|
98
|
+
|
|
99
|
+
```html
|
|
100
|
+
<div class="_35WloynrPDta8fhSfoHEgE">
|
|
101
|
+
<div class="_1ghNYY7jOYzUneVCT4piQ9">
|
|
102
|
+
Some text.
|
|
103
|
+
</div>
|
|
104
|
+
</div>
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
Without CSS modules:
|
|
108
|
+
|
|
109
|
+
```html
|
|
110
|
+
<div class="MyComponent">
|
|
111
|
+
<div class="MyComponent__inner">
|
|
112
|
+
Some text.
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
The returned function accepts multiple class names and ignores values other than strings. e.g:
|
|
118
|
+
|
|
119
|
+
```js
|
|
120
|
+
import { cssModules } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
121
|
+
|
|
122
|
+
import STYLES from './MyComponent.scss';
|
|
123
|
+
|
|
124
|
+
const getClassNames = cssModules(STYLES);
|
|
125
|
+
|
|
126
|
+
const MyComponent = (props) => (
|
|
127
|
+
<div className={getClassName('MyComponent', props.disabled && 'MyComponent--disabled')}>
|
|
128
|
+
{props.children}
|
|
129
|
+
</div>
|
|
130
|
+
);
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
Will result in `MyComponent MyComponent--disabled` if `props.disabled` is true or `MyComponent` otherwise.
|
|
134
|
+
|
|
135
|
+
## `TransitionInitialMount.js`
|
|
136
|
+
|
|
137
|
+
A wrapper around `react-transition-group` which makes it easy to transition a
|
|
138
|
+
components initial mount. All you need to provide is two class names and a timeout.
|
|
139
|
+
|
|
140
|
+
### Usage
|
|
141
|
+
|
|
142
|
+
```js
|
|
143
|
+
import React from 'react';
|
|
144
|
+
import { TransitionInitialMount } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
145
|
+
|
|
146
|
+
const MyComponent = (props) => (
|
|
147
|
+
<TransitionInitialMount
|
|
148
|
+
appearClassName="my-transition-class--appear"
|
|
149
|
+
appearActiveClassName="my-transition-class--appear-active"
|
|
150
|
+
transitionTimeout={300}
|
|
151
|
+
>
|
|
152
|
+
<div>Some text.</div>
|
|
153
|
+
</TransitionInitialMount>
|
|
154
|
+
);
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
```scss
|
|
158
|
+
@import '~bpk-mixins/index.scss';
|
|
159
|
+
|
|
160
|
+
.my-transition-class {
|
|
161
|
+
transition: opacity $bpk-duration-sm ease-in-out;
|
|
162
|
+
opacity: 1;
|
|
163
|
+
|
|
164
|
+
&--appear {
|
|
165
|
+
opacity: 0;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
&--appear-active {
|
|
169
|
+
opacity: 1;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
### Props
|
|
175
|
+
|
|
176
|
+
| Property | PropType | Required | Default Value |
|
|
177
|
+
| --------------------- | -------- | -------- | ------------- |
|
|
178
|
+
| children | node | true | - |
|
|
179
|
+
| appearClassName | string | true | - |
|
|
180
|
+
| appearActiveClassName | string | true | - |
|
|
181
|
+
| transitionTimeout | number | true | - |
|
|
182
|
+
|
|
183
|
+
## `isRTL`
|
|
184
|
+
|
|
185
|
+
Returns true if the browser is showing content right-to-left.
|
|
186
|
+
|
|
187
|
+
### Usage
|
|
188
|
+
|
|
189
|
+
```js
|
|
190
|
+
import React from 'react';
|
|
191
|
+
import { isRTL } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
192
|
+
|
|
193
|
+
if (isRTL()) {
|
|
194
|
+
// do RTL stuff
|
|
195
|
+
} else {
|
|
196
|
+
// do LTR stuff
|
|
197
|
+
}
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
## `isDeviceIphone`
|
|
201
|
+
|
|
202
|
+
Returns true if the device is an iPhone.
|
|
203
|
+
|
|
204
|
+
### Usage
|
|
205
|
+
|
|
206
|
+
```js
|
|
207
|
+
import React from 'react';
|
|
208
|
+
import { isDeviceIphone } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
209
|
+
|
|
210
|
+
if (isDeviceIphone()) {
|
|
211
|
+
// do iPhone specific stuff
|
|
212
|
+
} else {
|
|
213
|
+
// do other browser/device stuff
|
|
214
|
+
}
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
## `isDeviceIpad`
|
|
218
|
+
|
|
219
|
+
Returns true if the device is an iPad.
|
|
220
|
+
|
|
221
|
+
### Usage
|
|
222
|
+
|
|
223
|
+
```js
|
|
224
|
+
import React from 'react';
|
|
225
|
+
import { isDeviceIpad } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
226
|
+
|
|
227
|
+
if (isDeviceIpad()) {
|
|
228
|
+
// do iPad specific stuff
|
|
229
|
+
} else {
|
|
230
|
+
// do other browser/device stuff
|
|
231
|
+
}
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
## `isDeviceIos`
|
|
235
|
+
|
|
236
|
+
Returns true if the platform is iOS (iPhone/iPad).
|
|
237
|
+
|
|
238
|
+
### Usage
|
|
239
|
+
|
|
240
|
+
```js
|
|
241
|
+
import React from 'react';
|
|
242
|
+
import { isDeviceIos } from '@skyscanner/backpack-web/bpk-react-utils';
|
|
243
|
+
|
|
244
|
+
if (isDeviceIos()) {
|
|
245
|
+
// do iOS specific stuff
|
|
246
|
+
} else {
|
|
247
|
+
// do other browser/device stuff
|
|
248
|
+
}
|
|
249
|
+
```
|
package/bpk-react-utils/index.js
CHANGED
|
@@ -1,78 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "Portal", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _Portal.default;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
Object.defineProperty(exports, "TransitionInitialMount", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function () {
|
|
15
|
-
return _TransitionInitialMount.default;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
Object.defineProperty(exports, "cssModules", {
|
|
19
|
-
enumerable: true,
|
|
20
|
-
get: function () {
|
|
21
|
-
return _cssModules.default;
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
exports.default = void 0;
|
|
25
|
-
Object.defineProperty(exports, "deprecated", {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
get: function () {
|
|
28
|
-
return _deprecated.default;
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
Object.defineProperty(exports, "isDeviceIos", {
|
|
32
|
-
enumerable: true,
|
|
33
|
-
get: function () {
|
|
34
|
-
return _deviceDetection.isDeviceIos;
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
Object.defineProperty(exports, "isDeviceIpad", {
|
|
38
|
-
enumerable: true,
|
|
39
|
-
get: function () {
|
|
40
|
-
return _deviceDetection.isDeviceIpad;
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
Object.defineProperty(exports, "isDeviceIphone", {
|
|
44
|
-
enumerable: true,
|
|
45
|
-
get: function () {
|
|
46
|
-
return _deviceDetection.isDeviceIphone;
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
Object.defineProperty(exports, "isRTL", {
|
|
50
|
-
enumerable: true,
|
|
51
|
-
get: function () {
|
|
52
|
-
return _isRTL.default;
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
Object.defineProperty(exports, "withDefaultProps", {
|
|
56
|
-
enumerable: true,
|
|
57
|
-
get: function () {
|
|
58
|
-
return _withDefaultProps.default;
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
Object.defineProperty(exports, "wrapDisplayName", {
|
|
62
|
-
enumerable: true,
|
|
63
|
-
get: function () {
|
|
64
|
-
return _wrapDisplayName.default;
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
var _wrapDisplayName = _interopRequireDefault(require("./src/wrapDisplayName"));
|
|
68
|
-
var _Portal = _interopRequireDefault(require("./src/Portal"));
|
|
69
|
-
var _TransitionInitialMount = _interopRequireDefault(require("./src/TransitionInitialMount"));
|
|
70
|
-
var _cssModules = _interopRequireDefault(require("./src/cssModules"));
|
|
71
|
-
var _deprecated = _interopRequireDefault(require("./src/deprecated"));
|
|
72
|
-
var _deviceDetection = require("./src/deviceDetection");
|
|
73
|
-
var _withDefaultProps = _interopRequireDefault(require("./src/withDefaultProps"));
|
|
74
|
-
var _isRTL = _interopRequireDefault(require("./src/isRTL"));
|
|
75
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
76
1
|
/*
|
|
77
2
|
* Backpack - Skyscanner's Design System
|
|
78
3
|
*
|
|
@@ -90,16 +15,43 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
90
15
|
* See the License for the specific language governing permissions and
|
|
91
16
|
* limitations under the License.
|
|
92
17
|
*/
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
18
|
+
|
|
19
|
+
/* @flow strict */
|
|
20
|
+
|
|
21
|
+
import wrapDisplayName from './src/wrapDisplayName';
|
|
22
|
+
import Portal from './src/Portal';
|
|
23
|
+
import TransitionInitialMount from './src/TransitionInitialMount';
|
|
24
|
+
import cssModules from './src/cssModules';
|
|
25
|
+
import deprecated from './src/deprecated';
|
|
26
|
+
import {
|
|
27
|
+
isDeviceIphone,
|
|
28
|
+
isDeviceIpad,
|
|
29
|
+
isDeviceIos,
|
|
30
|
+
} from './src/deviceDetection';
|
|
31
|
+
import withDefaultProps from './src/withDefaultProps';
|
|
32
|
+
import isRTL from './src/isRTL';
|
|
33
|
+
|
|
34
|
+
export {
|
|
35
|
+
Portal,
|
|
36
|
+
TransitionInitialMount,
|
|
37
|
+
cssModules,
|
|
38
|
+
deprecated,
|
|
39
|
+
withDefaultProps,
|
|
40
|
+
wrapDisplayName,
|
|
41
|
+
isDeviceIphone,
|
|
42
|
+
isDeviceIpad,
|
|
43
|
+
isDeviceIos,
|
|
44
|
+
isRTL,
|
|
45
|
+
};
|
|
46
|
+
export default {
|
|
47
|
+
Portal,
|
|
48
|
+
TransitionInitialMount,
|
|
49
|
+
cssModules,
|
|
50
|
+
deprecated,
|
|
51
|
+
withDefaultProps,
|
|
52
|
+
wrapDisplayName,
|
|
53
|
+
isDeviceIphone,
|
|
54
|
+
isDeviceIpad,
|
|
55
|
+
isDeviceIos,
|
|
56
|
+
isRTL,
|
|
104
57
|
};
|
|
105
|
-
exports.default = _default;
|
|
@@ -1,14 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _react = require("react");
|
|
8
|
-
var _reactDom = require("react-dom");
|
|
9
|
-
var _objectAssign = _interopRequireDefault(require("object-assign"));
|
|
10
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
1
|
/*
|
|
13
2
|
* Backpack - Skyscanner's Design System
|
|
14
3
|
*
|
|
@@ -27,20 +16,29 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
27
16
|
* limitations under the License.
|
|
28
17
|
*/
|
|
29
18
|
|
|
19
|
+
import { Component } from 'react';
|
|
20
|
+
import { createPortal } from 'react-dom';
|
|
21
|
+
import assign from 'object-assign';
|
|
22
|
+
import PropTypes from 'prop-types';
|
|
23
|
+
|
|
30
24
|
const KEYCODES = {
|
|
31
|
-
ESCAPE: 'Escape'
|
|
25
|
+
ESCAPE: 'Escape',
|
|
32
26
|
};
|
|
33
|
-
|
|
27
|
+
|
|
28
|
+
class Portal extends Component {
|
|
34
29
|
constructor() {
|
|
35
30
|
super();
|
|
31
|
+
|
|
36
32
|
this.portalElement = null;
|
|
33
|
+
|
|
37
34
|
this.state = {
|
|
38
|
-
isVisible: false
|
|
35
|
+
isVisible: false,
|
|
39
36
|
};
|
|
40
37
|
|
|
41
38
|
// shouldClose is used to keep track of the user's mouse-down events in order to
|
|
42
39
|
// prevent the dialog closing if the mouse leaves / enters the portal during the click
|
|
43
40
|
this.shouldClose = false;
|
|
41
|
+
|
|
44
42
|
this.close = this.close.bind(this);
|
|
45
43
|
this.onDocumentMouseUp = this.onDocumentMouseUp.bind(this);
|
|
46
44
|
this.onDocumentMouseDown = this.onDocumentMouseDown.bind(this);
|
|
@@ -49,10 +47,12 @@ class Portal extends _react.Component {
|
|
|
49
47
|
this.getClickEventProperties = this.getClickEventProperties.bind(this);
|
|
50
48
|
this.supportsPassiveEvents = this.supportsPassiveEvents.bind(this);
|
|
51
49
|
}
|
|
50
|
+
|
|
52
51
|
componentDidMount() {
|
|
53
52
|
if (this.props.isOpen) {
|
|
54
53
|
this.open();
|
|
55
54
|
}
|
|
55
|
+
|
|
56
56
|
if (this.props.targetRef) {
|
|
57
57
|
this.props.targetRef(this.getTargetElement());
|
|
58
58
|
}
|
|
@@ -76,110 +76,161 @@ class Portal extends _react.Component {
|
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
+
|
|
79
80
|
componentWillUnmount() {
|
|
80
81
|
this.close();
|
|
81
82
|
}
|
|
83
|
+
|
|
82
84
|
onDocumentMouseDown(event) {
|
|
83
85
|
const clickEventProperties = this.getClickEventProperties(event);
|
|
84
|
-
if (
|
|
86
|
+
if (
|
|
87
|
+
clickEventProperties.isNotLeftClick ||
|
|
88
|
+
clickEventProperties.isTargetClick ||
|
|
89
|
+
clickEventProperties.isPortalClick
|
|
90
|
+
) {
|
|
85
91
|
this.shouldClose = false;
|
|
86
92
|
return;
|
|
87
93
|
}
|
|
94
|
+
|
|
88
95
|
this.shouldClose = true;
|
|
89
96
|
}
|
|
97
|
+
|
|
90
98
|
onDocumentMouseUp(event) {
|
|
91
99
|
const clickEventProperties = this.getClickEventProperties(event);
|
|
92
|
-
|
|
100
|
+
|
|
101
|
+
if (
|
|
102
|
+
clickEventProperties.isNotLeftClick ||
|
|
103
|
+
clickEventProperties.isTargetClick ||
|
|
104
|
+
clickEventProperties.isPortalClick
|
|
105
|
+
) {
|
|
93
106
|
this.shouldClose = false;
|
|
94
107
|
return;
|
|
95
108
|
}
|
|
109
|
+
|
|
96
110
|
if (this.shouldClose) {
|
|
97
111
|
// `onClose` tells the consumer that they should change `isOpen` to false.
|
|
98
112
|
// Once the consumer has responded to `onClose`, `beforeClose` and `close` will be called.
|
|
99
|
-
this.props.onClose(event, {
|
|
100
|
-
source: 'DOCUMENT_CLICK'
|
|
101
|
-
});
|
|
113
|
+
this.props.onClose(event, { source: 'DOCUMENT_CLICK' });
|
|
102
114
|
}
|
|
103
115
|
}
|
|
116
|
+
|
|
104
117
|
onDocumentKeyDown(event) {
|
|
105
|
-
if (
|
|
118
|
+
if (
|
|
119
|
+
event.key === KEYCODES.ESCAPE &&
|
|
120
|
+
this.props.isOpen &&
|
|
121
|
+
this.props.closeOnEscPressed
|
|
122
|
+
) {
|
|
106
123
|
// `onClose` tells the consumer that they should change `isOpen` to false.
|
|
107
124
|
// Once the consumer has responded to `onClose`, `beforeClose` and `close` will be called.
|
|
108
|
-
this.props.onClose(event, {
|
|
109
|
-
source: 'ESCAPE'
|
|
110
|
-
});
|
|
125
|
+
this.props.onClose(event, { source: 'ESCAPE' });
|
|
111
126
|
}
|
|
112
127
|
}
|
|
128
|
+
|
|
113
129
|
onDocumentMouseMove() {
|
|
114
130
|
this.shouldClose = false;
|
|
115
131
|
}
|
|
132
|
+
|
|
116
133
|
getClickEventProperties(event) {
|
|
117
134
|
const isNotLeftClick = event.button && event.button !== 0;
|
|
135
|
+
|
|
118
136
|
const targetElement = this.getTargetElement();
|
|
119
|
-
const isTargetClick =
|
|
120
|
-
|
|
137
|
+
const isTargetClick =
|
|
138
|
+
targetElement &&
|
|
139
|
+
event.target instanceof Node &&
|
|
140
|
+
(event.target === targetElement || targetElement.contains(event.target));
|
|
141
|
+
|
|
142
|
+
const isPortalClick =
|
|
143
|
+
this.portalElement &&
|
|
144
|
+
event.target instanceof Node &&
|
|
145
|
+
(event.target === this.portalElement ||
|
|
146
|
+
this.portalElement.contains(event.target));
|
|
147
|
+
|
|
121
148
|
return {
|
|
122
149
|
isNotLeftClick: !!isNotLeftClick,
|
|
123
150
|
isTargetClick: !!isTargetClick,
|
|
124
|
-
isPortalClick: !!isPortalClick
|
|
151
|
+
isPortalClick: !!isPortalClick,
|
|
125
152
|
};
|
|
126
153
|
}
|
|
154
|
+
|
|
127
155
|
getTargetElement() {
|
|
128
|
-
return typeof this.props.target === 'function'
|
|
156
|
+
return typeof this.props.target === 'function'
|
|
157
|
+
? this.props.target()
|
|
158
|
+
: this.props.target?.ref.current;
|
|
129
159
|
}
|
|
160
|
+
|
|
130
161
|
getRenderTarget() {
|
|
131
|
-
const target =
|
|
162
|
+
const target =
|
|
163
|
+
typeof this.props.renderTarget === 'function'
|
|
164
|
+
? this.props.renderTarget()
|
|
165
|
+
: this.props.renderTarget;
|
|
166
|
+
|
|
132
167
|
if (target) {
|
|
133
168
|
return target;
|
|
134
169
|
}
|
|
135
170
|
if (document.body) {
|
|
136
171
|
return document.body;
|
|
137
172
|
}
|
|
173
|
+
|
|
138
174
|
throw new Error('Render target and fallback unavailable');
|
|
139
175
|
}
|
|
176
|
+
|
|
140
177
|
open() {
|
|
141
178
|
if (this.portalElement) {
|
|
142
179
|
return;
|
|
143
180
|
}
|
|
181
|
+
|
|
144
182
|
this.portalElement = document.createElement('div');
|
|
145
183
|
this.getRenderTarget().appendChild(this.portalElement);
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
document.addEventListener(
|
|
184
|
+
|
|
185
|
+
const passiveArgs = this.supportsPassiveEvents()
|
|
186
|
+
? { passive: true }
|
|
187
|
+
: false;
|
|
188
|
+
document.addEventListener(
|
|
189
|
+
'touchstart',
|
|
190
|
+
this.onDocumentMouseDown,
|
|
191
|
+
passiveArgs,
|
|
192
|
+
);
|
|
193
|
+
document.addEventListener(
|
|
194
|
+
'touchmove',
|
|
195
|
+
this.onDocumentMouseMove,
|
|
196
|
+
passiveArgs,
|
|
197
|
+
);
|
|
151
198
|
document.addEventListener('touchend', this.onDocumentMouseUp, passiveArgs);
|
|
152
199
|
document.addEventListener('mousedown', this.onDocumentMouseDown, false);
|
|
153
200
|
document.addEventListener('mouseup', this.onDocumentMouseUp, false);
|
|
154
201
|
document.addEventListener('keydown', this.onDocumentKeyDown, false);
|
|
202
|
+
|
|
155
203
|
if (this.props.style) {
|
|
156
|
-
(
|
|
204
|
+
assign(this.portalElement.style, this.props.style);
|
|
157
205
|
}
|
|
206
|
+
|
|
158
207
|
if (this.props.className) {
|
|
159
208
|
this.portalElement.className = this.props.className;
|
|
160
209
|
}
|
|
161
|
-
this.setState({
|
|
162
|
-
|
|
163
|
-
|
|
210
|
+
this.setState({ isVisible: true }, () =>
|
|
211
|
+
this.props.onOpen(this.portalElement, this.getTargetElement()),
|
|
212
|
+
);
|
|
164
213
|
}
|
|
214
|
+
|
|
165
215
|
close() {
|
|
166
216
|
if (!this.portalElement) {
|
|
167
217
|
return;
|
|
168
218
|
}
|
|
219
|
+
|
|
169
220
|
const renderTarget = this.getRenderTarget();
|
|
170
221
|
if (renderTarget) {
|
|
171
222
|
renderTarget.removeChild(this.portalElement);
|
|
172
223
|
}
|
|
224
|
+
|
|
173
225
|
document.removeEventListener('touchstart', this.onDocumentMouseDown);
|
|
174
226
|
document.removeEventListener('touchmove', this.onDocumentMouseMove);
|
|
175
227
|
document.removeEventListener('touchend', this.onDocumentMouseUp);
|
|
176
228
|
document.removeEventListener('mousedown', this.onDocumentMouseDown);
|
|
177
229
|
document.removeEventListener('mouseup', this.onDocumentMouseUp);
|
|
178
230
|
document.removeEventListener('keydown', this.onDocumentKeyDown);
|
|
231
|
+
|
|
179
232
|
this.portalElement = null;
|
|
180
|
-
this.setState({
|
|
181
|
-
isVisible: false
|
|
182
|
-
});
|
|
233
|
+
this.setState({ isVisible: false });
|
|
183
234
|
}
|
|
184
235
|
|
|
185
236
|
// This function is taken from modernizr
|
|
@@ -192,7 +243,7 @@ class Portal extends _react.Component {
|
|
|
192
243
|
// eslint-disable-next-line getter-return
|
|
193
244
|
get() {
|
|
194
245
|
supportsPassiveOption = true;
|
|
195
|
-
}
|
|
246
|
+
},
|
|
196
247
|
});
|
|
197
248
|
window.addEventListener('test', null, opts);
|
|
198
249
|
} catch (e) {
|
|
@@ -200,37 +251,37 @@ class Portal extends _react.Component {
|
|
|
200
251
|
}
|
|
201
252
|
return supportsPassiveOption;
|
|
202
253
|
}
|
|
254
|
+
|
|
203
255
|
render() {
|
|
204
256
|
const {
|
|
205
257
|
portalElement,
|
|
206
|
-
props: {
|
|
207
|
-
|
|
208
|
-
},
|
|
209
|
-
state: {
|
|
210
|
-
isVisible
|
|
211
|
-
}
|
|
258
|
+
props: { children },
|
|
259
|
+
state: { isVisible },
|
|
212
260
|
} = this;
|
|
261
|
+
|
|
213
262
|
if (!isVisible || !portalElement) {
|
|
214
263
|
return null;
|
|
215
264
|
}
|
|
216
|
-
|
|
265
|
+
|
|
266
|
+
return createPortal(children, portalElement);
|
|
217
267
|
}
|
|
218
268
|
}
|
|
269
|
+
|
|
219
270
|
Portal.propTypes = {
|
|
220
|
-
children:
|
|
221
|
-
isOpen:
|
|
222
|
-
beforeClose:
|
|
223
|
-
className:
|
|
224
|
-
onClose:
|
|
225
|
-
onOpen:
|
|
226
|
-
onRender:
|
|
227
|
-
style:
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
closeOnEscPressed: _propTypes.default.bool
|
|
271
|
+
children: PropTypes.node.isRequired,
|
|
272
|
+
isOpen: PropTypes.bool.isRequired,
|
|
273
|
+
beforeClose: PropTypes.func,
|
|
274
|
+
className: PropTypes.string,
|
|
275
|
+
onClose: PropTypes.func,
|
|
276
|
+
onOpen: PropTypes.func,
|
|
277
|
+
onRender: PropTypes.func,
|
|
278
|
+
style: PropTypes.object, // eslint-disable-line react/forbid-prop-types
|
|
279
|
+
renderTarget: PropTypes.func,
|
|
280
|
+
target: PropTypes.oneOfType([PropTypes.func, PropTypes.node]),
|
|
281
|
+
targetRef: PropTypes.func,
|
|
282
|
+
closeOnEscPressed: PropTypes.bool,
|
|
233
283
|
};
|
|
284
|
+
|
|
234
285
|
Portal.defaultProps = {
|
|
235
286
|
beforeClose: null,
|
|
236
287
|
className: null,
|
|
@@ -241,7 +292,7 @@ Portal.defaultProps = {
|
|
|
241
292
|
renderTarget: null,
|
|
242
293
|
target: null,
|
|
243
294
|
targetRef: null,
|
|
244
|
-
closeOnEscPressed: true
|
|
295
|
+
closeOnEscPressed: true,
|
|
245
296
|
};
|
|
246
|
-
|
|
247
|
-
|
|
297
|
+
|
|
298
|
+
export default Portal;
|