@skyscanner/backpack-web 25.8.0 → 25.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bpk-animate-height/index.js +3 -10
- package/bpk-animate-height/src/AnimateHeight.js +55 -67
- package/bpk-component-accordion/index.js +21 -34
- package/bpk-component-accordion/src/BpkAccordion.js +23 -41
- package/bpk-component-accordion/src/BpkAccordionItem.js +47 -65
- package/bpk-component-accordion/src/withAccordionItemState.js +48 -64
- package/bpk-component-accordion/src/withSingleItemAccordionState.js +46 -62
- package/bpk-component-aria-live/index.js +4 -17
- package/bpk-component-aria-live/src/BpkAriaLive.js +17 -33
- package/bpk-component-autosuggest/index.js +4 -18
- package/bpk-component-autosuggest/src/BpkAutosuggest.js +18 -34
- package/bpk-component-autosuggest/src/BpkAutosuggestSuggestion.js +32 -48
- package/bpk-component-badge/index.js +5 -25
- package/bpk-component-badge/src/BpkBadge.js +18 -34
- package/bpk-component-badge/src/themeAttributes.js +2 -8
- package/bpk-component-banner-alert/index.js +9 -45
- package/bpk-component-banner-alert/src/AnimateAndFade.js +68 -76
- package/bpk-component-banner-alert/src/BpkBannerAlert.js +17 -34
- package/bpk-component-banner-alert/src/BpkBannerAlertDismissable.js +12 -30
- package/bpk-component-banner-alert/src/BpkBannerAlertExpandable.js +16 -35
- package/bpk-component-banner-alert/src/BpkBannerAlertInner.js +66 -80
- package/bpk-component-banner-alert/src/common-types.js +2 -9
- package/bpk-component-banner-alert/src/themeAttributes.js +2 -8
- package/bpk-component-banner-alert/src/withBannerAlertState.js +77 -94
- package/bpk-component-barchart/index.js +9 -53
- package/bpk-component-barchart/src/BpkBarchart.js +154 -174
- package/bpk-component-barchart/src/BpkBarchartBar.js +41 -56
- package/bpk-component-barchart/src/BpkBarchartBars.js +51 -67
- package/bpk-component-barchart/src/BpkBarchartDefs.js +11 -22
- package/bpk-component-barchart/src/BpkChartAxis.js +59 -74
- package/bpk-component-barchart/src/BpkChartDataTable.js +22 -29
- package/bpk-component-barchart/src/BpkChartGridLines.js +38 -53
- package/bpk-component-barchart/src/BpkChartMargin.js +17 -34
- package/bpk-component-barchart/src/RTLtransforms.js +13 -36
- package/bpk-component-barchart/src/customPropTypes.js +2 -10
- package/bpk-component-barchart/src/orientation.js +2 -10
- package/bpk-component-barchart/src/themeAttributes.js +1 -9
- package/bpk-component-barchart/src/utils.js +1 -9
- package/bpk-component-blockquote/index.js +5 -17
- package/bpk-component-blockquote/src/BpkBlockquote.js +9 -17
- package/bpk-component-blockquote/src/themeAttributes.js +2 -8
- package/bpk-component-boilerplate/index.js +3 -10
- package/bpk-component-boilerplate/src/BpkBoilerplate.js +14 -30
- package/bpk-component-breadcrumb/index.js +4 -18
- package/bpk-component-breadcrumb/src/BpkBreadcrumb.js +46 -63
- package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.js +36 -52
- package/bpk-component-breakpoint/index.js +4 -17
- package/bpk-component-breakpoint/src/BpkBreakpoint.js +16 -25
- package/bpk-component-button/BpkButtonDestructive.js +17 -13
- package/bpk-component-button/BpkButtonFeatured.js +17 -13
- package/bpk-component-button/BpkButtonLink.js +17 -13
- package/bpk-component-button/BpkButtonLinkOnDark.js +17 -13
- package/bpk-component-button/BpkButtonPrimary.js +17 -13
- package/bpk-component-button/BpkButtonPrimaryOnDark.js +17 -13
- package/bpk-component-button/BpkButtonPrimaryOnLight.js +17 -13
- package/bpk-component-button/BpkButtonSecondary.js +17 -13
- package/bpk-component-button/BpkButtonSecondaryOnDark.js +17 -13
- package/bpk-component-button/index.js +15 -144
- package/bpk-component-button/src/BpkButton.js +57 -53
- package/bpk-component-button/src/BpkButtonBase.js +33 -45
- package/bpk-component-button/src/BpkButtonDestructive.js +19 -33
- package/bpk-component-button/src/BpkButtonFeatured.js +19 -33
- package/bpk-component-button/src/BpkButtonLink.js +20 -34
- package/bpk-component-button/src/BpkButtonLinkOnDark.js +20 -34
- package/bpk-component-button/src/BpkButtonPrimary.js +30 -35
- package/bpk-component-button/src/BpkButtonPrimaryOnDark.js +19 -33
- package/bpk-component-button/src/BpkButtonPrimaryOnLight.js +19 -33
- package/bpk-component-button/src/BpkButtonSecondary.js +19 -33
- package/bpk-component-button/src/BpkButtonSecondaryOnDark.js +19 -33
- package/bpk-component-button/src/BpkButtonV2/BpkButton.js +29 -46
- package/bpk-component-button/src/BpkButtonV2/common-types.d.ts +2 -2
- package/bpk-component-button/src/BpkButtonV2/common-types.js +3 -11
- package/bpk-component-button/src/common-types.js +13 -21
- package/bpk-component-button/src/commonButtonTests.js +14 -21
- package/bpk-component-button/src/themeAttributes.js +8 -22
- package/bpk-component-button/themeAttributes.js +17 -54
- package/bpk-component-calendar/index.js +14 -107
- package/bpk-component-calendar/src/BpkCalendarContainer.js +185 -200
- package/bpk-component-calendar/src/BpkCalendarDate.js +63 -83
- package/bpk-component-calendar/src/BpkCalendarGrid.js +60 -66
- package/bpk-component-calendar/src/BpkCalendarGridHeader.js +35 -44
- package/bpk-component-calendar/src/BpkCalendarGridTransition.js +63 -76
- package/bpk-component-calendar/src/BpkCalendarNav.js +37 -47
- package/bpk-component-calendar/src/Week.js +92 -101
- package/bpk-component-calendar/src/composeCalendar.js +36 -43
- package/bpk-component-calendar/src/custom-proptypes-legacy.js +52 -63
- package/bpk-component-calendar/src/custom-proptypes.js +2 -9
- package/bpk-component-calendar/src/date-utils.js +33 -161
- package/bpk-component-calendar/src/themeAttributes.js +2 -8
- package/bpk-component-calendar/src/utils.js +7 -15
- package/bpk-component-calendar/test-utils.js +14 -31
- package/bpk-component-card/index.js +6 -32
- package/bpk-component-card/src/BpkCard.js +29 -43
- package/bpk-component-card/src/BpkCardWrapper.js +9 -16
- package/bpk-component-card/src/BpkDividedCard.js +24 -40
- package/bpk-component-checkbox/index.js +4 -18
- package/bpk-component-checkbox/src/BpkCheckbox.js +35 -50
- package/bpk-component-checkbox/src/themeAttributes.js +1 -9
- package/bpk-component-chip/index.js +8 -38
- package/bpk-component-chip/src/BpkDismissibleChip.js +20 -34
- package/bpk-component-chip/src/BpkDropdownChip.js +21 -38
- package/bpk-component-chip/src/BpkSelectableChip.js +29 -46
- package/bpk-component-chip/src/commonTypes.js +15 -24
- package/bpk-component-chip/src/themeAttributes.js +2 -8
- package/bpk-component-close-button/index.js +2 -11
- package/bpk-component-close-button/src/BpkCloseButton.js +23 -40
- package/bpk-component-code/index.js +19 -20
- package/bpk-component-code/src/BpkCode.js +18 -35
- package/bpk-component-code/src/BpkCodeBlock.js +19 -36
- package/bpk-component-content-cards/index.js +3 -10
- package/bpk-component-content-cards/src/BpkContentCard.js +13 -22
- package/bpk-component-content-cards/src/BpkContentCards.js +13 -22
- package/bpk-component-datatable/index.js +20 -20
- package/bpk-component-datatable/src/BpkDataTable.js +88 -98
- package/bpk-component-datatable/src/BpkDataTableColumn.js +36 -47
- package/bpk-component-datatable/src/BpkDataTableHeader.js +45 -55
- package/bpk-component-datatable/src/common-types.js +0 -1
- package/bpk-component-datatable/src/hasChildrenOfType.js +5 -13
- package/bpk-component-datatable/src/sort-types.js +2 -9
- package/bpk-component-datatable/src/utils.js +8 -20
- package/bpk-component-datepicker/index.js +6 -24
- package/bpk-component-datepicker/src/BpkDatepicker.js +190 -200
- package/bpk-component-datepicker/src/themeAttributes.js +5 -11
- package/bpk-component-description-list/index.js +21 -26
- package/bpk-component-description-list/src/BpkDescriptionDetails.js +3 -10
- package/bpk-component-description-list/src/BpkDescriptionList.js +3 -10
- package/bpk-component-description-list/src/BpkDescriptionTerm.js +3 -10
- package/bpk-component-description-list/src/ComponentFactory.js +18 -34
- package/bpk-component-dialog/index.js +5 -17
- package/bpk-component-dialog/src/BpkDialog.js +28 -43
- package/bpk-component-dialog/src/BpkDialogInner.js +12 -20
- package/bpk-component-dialog/src/common-types.js +2 -9
- package/bpk-component-drawer/index.js +4 -18
- package/bpk-component-drawer/src/BpkDrawer.js +52 -68
- package/bpk-component-drawer/src/BpkDrawerContent.js +57 -73
- package/bpk-component-drawer/src/themeAttributes.js +2 -10
- package/bpk-component-fieldset/index.js +4 -32
- package/bpk-component-fieldset/src/BpkFieldset.js +50 -64
- package/bpk-component-fieldset/src/themeAttributes.js +2 -8
- package/bpk-component-flare/index.js +4 -24
- package/bpk-component-flare/src/BpkContentBubble.js +33 -46
- package/bpk-component-flare/src/BpkFlareBar.js +25 -39
- package/bpk-component-flare/src/__generated__/js/corner-radius.js +12 -31
- package/bpk-component-flare/src/__generated__/js/pointer.js +12 -31
- package/bpk-component-floating-notification/index.js +2 -11
- package/bpk-component-floating-notification/src/BpkFloatingNotification.js +45 -63
- package/bpk-component-form-validation/index.js +5 -17
- package/bpk-component-form-validation/src/BpkFormValidation.js +36 -50
- package/bpk-component-form-validation/src/themeAttributes.js +2 -8
- package/bpk-component-graphic-promotion/index.js +4 -17
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.js +21 -29
- package/bpk-component-grid-toggle/index.js +3 -10
- package/bpk-component-grid-toggle/src/BpkGridToggle.js +41 -50
- package/bpk-component-horizontal-nav/index.js +4 -31
- package/bpk-component-horizontal-nav/src/BpkHorizontalNav.js +96 -115
- package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.js +62 -79
- package/bpk-component-icon/all.js +2 -10
- package/bpk-component-icon/index.js +11 -33
- package/bpk-component-icon/lg/accessibility.js +18 -37
- package/bpk-component-icon/lg/account--add.js +18 -37
- package/bpk-component-icon/lg/account--female.js +18 -37
- package/bpk-component-icon/lg/account--id-card.js +18 -37
- package/bpk-component-icon/lg/account--name.js +18 -37
- package/bpk-component-icon/lg/account--permit.js +18 -37
- package/bpk-component-icon/lg/account-circle.js +18 -37
- package/bpk-component-icon/lg/account.js +18 -37
- package/bpk-component-icon/lg/add-circle.js +18 -37
- package/bpk-component-icon/lg/adult.js +18 -37
- package/bpk-component-icon/lg/ai.js +19 -38
- package/bpk-component-icon/lg/aircon.js +18 -37
- package/bpk-component-icon/lg/aircraft.js +21 -39
- package/bpk-component-icon/lg/airline--multiple.js +18 -37
- package/bpk-component-icon/lg/airline.js +18 -37
- package/bpk-component-icon/lg/airports.js +18 -37
- package/bpk-component-icon/lg/alert--active.js +18 -37
- package/bpk-component-icon/lg/alert--add.js +18 -37
- package/bpk-component-icon/lg/alert--expired.js +18 -37
- package/bpk-component-icon/lg/alert--remove.js +18 -37
- package/bpk-component-icon/lg/arrow-down.js +18 -37
- package/bpk-component-icon/lg/arrow-left.js +18 -37
- package/bpk-component-icon/lg/arrow-right.js +18 -37
- package/bpk-component-icon/lg/arrow-up.js +18 -37
- package/bpk-component-icon/lg/award.js +18 -37
- package/bpk-component-icon/lg/baby-carriage.js +18 -37
- package/bpk-component-icon/lg/baggage--add.js +18 -37
- package/bpk-component-icon/lg/baggage--remove.js +18 -37
- package/bpk-component-icon/lg/baggage-cabin-add.js +18 -37
- package/bpk-component-icon/lg/baggage-cabin-not-included.js +18 -37
- package/bpk-component-icon/lg/baggage-cabin.js +18 -37
- package/bpk-component-icon/lg/baggage-checked-add.js +18 -37
- package/bpk-component-icon/lg/baggage-checked-not-included.js +18 -37
- package/bpk-component-icon/lg/baggage-checked.js +18 -37
- package/bpk-component-icon/lg/baggage-cross.js +18 -37
- package/bpk-component-icon/lg/baggage-generic.js +18 -37
- package/bpk-component-icon/lg/baggage-tick.js +18 -37
- package/bpk-component-icon/lg/baggage.js +18 -37
- package/bpk-component-icon/lg/bar.js +18 -37
- package/bpk-component-icon/lg/beach.js +21 -39
- package/bpk-component-icon/lg/beer.js +18 -37
- package/bpk-component-icon/lg/breakfast-cross.js +18 -37
- package/bpk-component-icon/lg/breakfast-tick.js +18 -37
- package/bpk-component-icon/lg/bus.js +18 -37
- package/bpk-component-icon/lg/business.js +18 -37
- package/bpk-component-icon/lg/cafe.js +18 -37
- package/bpk-component-icon/lg/calendar.js +18 -37
- package/bpk-component-icon/lg/call-back.js +21 -39
- package/bpk-component-icon/lg/camera.js +18 -37
- package/bpk-component-icon/lg/camper-van.js +21 -39
- package/bpk-component-icon/lg/car-door.js +18 -37
- package/bpk-component-icon/lg/car-wash.js +21 -39
- package/bpk-component-icon/lg/cars-flexible.js +18 -37
- package/bpk-component-icon/lg/cars.js +21 -39
- package/bpk-component-icon/lg/center-location.js +18 -37
- package/bpk-component-icon/lg/chart.js +18 -37
- package/bpk-component-icon/lg/chauffeur.js +18 -37
- package/bpk-component-icon/lg/chevron-down.js +18 -37
- package/bpk-component-icon/lg/chevron-left.js +18 -37
- package/bpk-component-icon/lg/chevron-right.js +18 -37
- package/bpk-component-icon/lg/chevron-up.js +18 -37
- package/bpk-component-icon/lg/child-seat.js +18 -37
- package/bpk-component-icon/lg/child.js +18 -37
- package/bpk-component-icon/lg/city-center.js +18 -37
- package/bpk-component-icon/lg/city.js +18 -37
- package/bpk-component-icon/lg/clean-policy.js +18 -37
- package/bpk-component-icon/lg/clean.js +23 -41
- package/bpk-component-icon/lg/cleaning-medical.js +18 -37
- package/bpk-component-icon/lg/cloakroom.js +23 -41
- package/bpk-component-icon/lg/close-circle.js +18 -37
- package/bpk-component-icon/lg/close.js +18 -37
- package/bpk-component-icon/lg/collapse.js +18 -37
- package/bpk-component-icon/lg/content--copy.js +21 -39
- package/bpk-component-icon/lg/content--event.js +18 -37
- package/bpk-component-icon/lg/content--guides.js +18 -37
- package/bpk-component-icon/lg/currency.js +18 -37
- package/bpk-component-icon/lg/data.js +21 -39
- package/bpk-component-icon/lg/deals.js +18 -37
- package/bpk-component-icon/lg/depart.js +21 -39
- package/bpk-component-icon/lg/device-mid.js +18 -37
- package/bpk-component-icon/lg/device-wide.js +18 -37
- package/bpk-component-icon/lg/direct.js +18 -37
- package/bpk-component-icon/lg/document-csv.js +18 -37
- package/bpk-component-icon/lg/document-pdf.js +18 -37
- package/bpk-component-icon/lg/download.js +21 -39
- package/bpk-component-icon/lg/duration.js +18 -37
- package/bpk-component-icon/lg/eco-leaf.js +18 -37
- package/bpk-component-icon/lg/edit.js +18 -37
- package/bpk-component-icon/lg/education.js +21 -39
- package/bpk-component-icon/lg/electric.js +18 -37
- package/bpk-component-icon/lg/end-call.js +18 -37
- package/bpk-component-icon/lg/estimated.js +18 -37
- package/bpk-component-icon/lg/exclamation-circle.js +18 -37
- package/bpk-component-icon/lg/exclamation.js +18 -37
- package/bpk-component-icon/lg/expand.js +18 -37
- package/bpk-component-icon/lg/explore.js +18 -37
- package/bpk-component-icon/lg/face--blank.js +18 -37
- package/bpk-component-icon/lg/face--happy.js +18 -37
- package/bpk-component-icon/lg/face--sad.js +18 -37
- package/bpk-component-icon/lg/face-id.js +18 -37
- package/bpk-component-icon/lg/face-mask.js +18 -37
- package/bpk-component-icon/lg/family.js +18 -37
- package/bpk-component-icon/lg/fast-track.js +21 -39
- package/bpk-component-icon/lg/fast-train.js +21 -39
- package/bpk-component-icon/lg/filter.js +19 -38
- package/bpk-component-icon/lg/fingerprint.js +18 -37
- package/bpk-component-icon/lg/flag.js +18 -37
- package/bpk-component-icon/lg/flask.js +18 -37
- package/bpk-component-icon/lg/flight-flexible.js +18 -37
- package/bpk-component-icon/lg/flight-landing.js +23 -41
- package/bpk-component-icon/lg/flight-takeoff.js +21 -39
- package/bpk-component-icon/lg/flight.js +21 -39
- package/bpk-component-icon/lg/food.js +18 -37
- package/bpk-component-icon/lg/gears-automatic-circle.js +18 -37
- package/bpk-component-icon/lg/gears-automatic.js +18 -37
- package/bpk-component-icon/lg/gears-manual-circle.js +18 -37
- package/bpk-component-icon/lg/gears-manual.js +18 -37
- package/bpk-component-icon/lg/globe.js +18 -37
- package/bpk-component-icon/lg/grid-layout.js +18 -37
- package/bpk-component-icon/lg/headset.js +18 -37
- package/bpk-component-icon/lg/health-fitness.js +18 -37
- package/bpk-component-icon/lg/heart--outline.js +18 -37
- package/bpk-component-icon/lg/heart.js +18 -37
- package/bpk-component-icon/lg/help-circle.js +18 -37
- package/bpk-component-icon/lg/help.js +18 -37
- package/bpk-component-icon/lg/hide.js +18 -37
- package/bpk-component-icon/lg/hotel-flexible.js +18 -37
- package/bpk-component-icon/lg/hotels--disabled-facilities.js +18 -37
- package/bpk-component-icon/lg/hotels--jacuzzi.js +18 -37
- package/bpk-component-icon/lg/hotels--pets-allowed.js +18 -37
- package/bpk-component-icon/lg/hotels--smoking.js +18 -37
- package/bpk-component-icon/lg/hotels.js +18 -37
- package/bpk-component-icon/lg/infant.js +18 -37
- package/bpk-component-icon/lg/information--language-alert.js +18 -37
- package/bpk-component-icon/lg/information--language-question.js +18 -37
- package/bpk-component-icon/lg/information--language.js +18 -37
- package/bpk-component-icon/lg/information-circle.js +18 -37
- package/bpk-component-icon/lg/information.js +18 -37
- package/bpk-component-icon/lg/insurance.js +18 -37
- package/bpk-component-icon/lg/key.js +18 -37
- package/bpk-component-icon/lg/keypad.js +18 -37
- package/bpk-component-icon/lg/landmark.js +18 -37
- package/bpk-component-icon/lg/language.js +18 -37
- package/bpk-component-icon/lg/legroom--extra.js +21 -39
- package/bpk-component-icon/lg/legroom--normal.js +21 -39
- package/bpk-component-icon/lg/legroom--reduced.js +21 -39
- package/bpk-component-icon/lg/leisure.js +18 -37
- package/bpk-component-icon/lg/lightning.js +18 -37
- package/bpk-component-icon/lg/list.js +18 -37
- package/bpk-component-icon/lg/location.js +18 -37
- package/bpk-component-icon/lg/lock.js +18 -37
- package/bpk-component-icon/lg/logout.js +21 -39
- package/bpk-component-icon/lg/long-arrow-down.js +18 -37
- package/bpk-component-icon/lg/long-arrow-left.js +18 -37
- package/bpk-component-icon/lg/long-arrow-right.js +18 -37
- package/bpk-component-icon/lg/long-arrow-up.js +18 -37
- package/bpk-component-icon/lg/lounge.js +21 -39
- package/bpk-component-icon/lg/luggageall.js +18 -37
- package/bpk-component-icon/lg/mail.js +21 -39
- package/bpk-component-icon/lg/map.js +18 -37
- package/bpk-component-icon/lg/meal.js +18 -37
- package/bpk-component-icon/lg/media.js +18 -37
- package/bpk-component-icon/lg/menu--horizontal.js +18 -37
- package/bpk-component-icon/lg/menu--vertical.js +18 -37
- package/bpk-component-icon/lg/menu.js +18 -37
- package/bpk-component-icon/lg/mileage.js +21 -39
- package/bpk-component-icon/lg/minus.js +18 -37
- package/bpk-component-icon/lg/mobile.js +18 -37
- package/bpk-component-icon/lg/money.js +18 -37
- package/bpk-component-icon/lg/multiple-bookings.js +18 -37
- package/bpk-component-icon/lg/music.js +18 -37
- package/bpk-component-icon/lg/mute.js +18 -37
- package/bpk-component-icon/lg/native-android--back.js +18 -37
- package/bpk-component-icon/lg/native-android--close.js +18 -37
- package/bpk-component-icon/lg/native-android--forward.js +18 -37
- package/bpk-component-icon/lg/native-ios-close.js +18 -37
- package/bpk-component-icon/lg/navigation.js +18 -37
- package/bpk-component-icon/lg/new-window.js +21 -39
- package/bpk-component-icon/lg/news.js +18 -37
- package/bpk-component-icon/lg/night.js +18 -37
- package/bpk-component-icon/lg/not-allowed.js +18 -37
- package/bpk-component-icon/lg/onsen.js +18 -37
- package/bpk-component-icon/lg/origin.js +18 -37
- package/bpk-component-icon/lg/paid.js +18 -37
- package/bpk-component-icon/lg/paperclip.js +18 -37
- package/bpk-component-icon/lg/parking.js +18 -37
- package/bpk-component-icon/lg/passport.js +18 -37
- package/bpk-component-icon/lg/pause.js +18 -37
- package/bpk-component-icon/lg/payment-card.js +18 -37
- package/bpk-component-icon/lg/petrol.js +18 -37
- package/bpk-component-icon/lg/phone-call.js +18 -37
- package/bpk-component-icon/lg/picture.js +18 -37
- package/bpk-component-icon/lg/pin.js +18 -37
- package/bpk-component-icon/lg/plane-seat.js +21 -39
- package/bpk-component-icon/lg/play.js +18 -37
- package/bpk-component-icon/lg/plus.js +18 -37
- package/bpk-component-icon/lg/policy.js +18 -37
- package/bpk-component-icon/lg/powerplug.js +18 -37
- package/bpk-component-icon/lg/ppe.js +18 -37
- package/bpk-component-icon/lg/price-alerts.js +18 -37
- package/bpk-component-icon/lg/price-tag.js +18 -37
- package/bpk-component-icon/lg/print.js +18 -37
- package/bpk-component-icon/lg/recent-searches.js +18 -37
- package/bpk-component-icon/lg/redo.js +18 -37
- package/bpk-component-icon/lg/refresh.js +18 -37
- package/bpk-component-icon/lg/return.js +21 -39
- package/bpk-component-icon/lg/room.js +18 -37
- package/bpk-component-icon/lg/scales.js +21 -39
- package/bpk-component-icon/lg/search.js +18 -37
- package/bpk-component-icon/lg/self-service.js +18 -37
- package/bpk-component-icon/lg/send-message.js +18 -37
- package/bpk-component-icon/lg/services.js +18 -37
- package/bpk-component-icon/lg/settings.js +18 -37
- package/bpk-component-icon/lg/share--android.js +18 -37
- package/bpk-component-icon/lg/share--ios.js +21 -39
- package/bpk-component-icon/lg/share.js +18 -37
- package/bpk-component-icon/lg/single-booking.js +18 -37
- package/bpk-component-icon/lg/social-distancing.js +21 -39
- package/bpk-component-icon/lg/social-like.js +18 -37
- package/bpk-component-icon/lg/sort-down.js +18 -37
- package/bpk-component-icon/lg/sort-up.js +18 -37
- package/bpk-component-icon/lg/sort.js +18 -37
- package/bpk-component-icon/lg/speaker.js +21 -39
- package/bpk-component-icon/lg/star-half.js +18 -37
- package/bpk-component-icon/lg/star-outline.js +18 -37
- package/bpk-component-icon/lg/star.js +18 -37
- package/bpk-component-icon/lg/stops.js +18 -37
- package/bpk-component-icon/lg/swap--horizontal.js +18 -37
- package/bpk-component-icon/lg/swap--vertical.js +18 -37
- package/bpk-component-icon/lg/swap.js +18 -37
- package/bpk-component-icon/lg/taxi.js +21 -39
- package/bpk-component-icon/lg/thumbs-down.js +18 -37
- package/bpk-component-icon/lg/thumbs-up.js +18 -37
- package/bpk-component-icon/lg/tick-circle.js +18 -37
- package/bpk-component-icon/lg/tick.js +18 -37
- package/bpk-component-icon/lg/ticket-flexible.js +18 -37
- package/bpk-component-icon/lg/ticket.js +18 -37
- package/bpk-component-icon/lg/time.js +18 -37
- package/bpk-component-icon/lg/toilets.js +18 -37
- package/bpk-component-icon/lg/train.js +18 -37
- package/bpk-component-icon/lg/transmission-automatic.js +18 -37
- package/bpk-component-icon/lg/transmission-manual.js +18 -37
- package/bpk-component-icon/lg/trash.js +18 -37
- package/bpk-component-icon/lg/trend--down.js +18 -37
- package/bpk-component-icon/lg/trend--steady.js +18 -37
- package/bpk-component-icon/lg/trend--will-rise.js +18 -37
- package/bpk-component-icon/lg/trend.js +18 -37
- package/bpk-component-icon/lg/trips.js +18 -37
- package/bpk-component-icon/lg/undo.js +18 -37
- package/bpk-component-icon/lg/unlock.js +18 -37
- package/bpk-component-icon/lg/unmute.js +21 -39
- package/bpk-component-icon/lg/upgrade.js +18 -37
- package/bpk-component-icon/lg/upload.js +19 -38
- package/bpk-component-icon/lg/use-location.js +18 -37
- package/bpk-component-icon/lg/view.js +18 -37
- package/bpk-component-icon/lg/virus.js +18 -37
- package/bpk-component-icon/lg/wallet.js +21 -39
- package/bpk-component-icon/lg/weather--clear.js +18 -37
- package/bpk-component-icon/lg/weather--cloudy.js +21 -39
- package/bpk-component-icon/lg/weather--fog.js +18 -37
- package/bpk-component-icon/lg/weather--partly-cloudy.js +21 -39
- package/bpk-component-icon/lg/weather--rain.js +23 -41
- package/bpk-component-icon/lg/weather--snow.js +18 -37
- package/bpk-component-icon/lg/weather--thunderstorm.js +23 -41
- package/bpk-component-icon/lg/weather--tornado.js +18 -37
- package/bpk-component-icon/lg/weather--wind.js +18 -37
- package/bpk-component-icon/lg/weather.js +18 -37
- package/bpk-component-icon/lg/wifi.js +18 -37
- package/bpk-component-icon/lg/window--reduce.js +21 -39
- package/bpk-component-icon/lg/window.js +18 -37
- package/bpk-component-icon/lg/world--amer.js +18 -37
- package/bpk-component-icon/lg/world--apac.js +18 -37
- package/bpk-component-icon/lg/world--emea.js +21 -39
- package/bpk-component-icon/sm/accessibility.js +19 -38
- package/bpk-component-icon/sm/account--add.js +19 -38
- package/bpk-component-icon/sm/account--female.js +19 -38
- package/bpk-component-icon/sm/account--id-card.js +19 -38
- package/bpk-component-icon/sm/account--name.js +19 -38
- package/bpk-component-icon/sm/account--permit.js +19 -38
- package/bpk-component-icon/sm/account-circle.js +19 -38
- package/bpk-component-icon/sm/account.js +19 -38
- package/bpk-component-icon/sm/add-circle.js +19 -38
- package/bpk-component-icon/sm/adult.js +19 -38
- package/bpk-component-icon/sm/ai.js +20 -39
- package/bpk-component-icon/sm/aircon.js +19 -38
- package/bpk-component-icon/sm/aircraft.js +22 -40
- package/bpk-component-icon/sm/airline--multiple.js +19 -38
- package/bpk-component-icon/sm/airline.js +19 -38
- package/bpk-component-icon/sm/airports.js +19 -38
- package/bpk-component-icon/sm/alert--active.js +19 -38
- package/bpk-component-icon/sm/alert--add.js +19 -38
- package/bpk-component-icon/sm/alert--expired.js +19 -38
- package/bpk-component-icon/sm/alert--remove.js +19 -38
- package/bpk-component-icon/sm/arrow-down.js +19 -38
- package/bpk-component-icon/sm/arrow-left.js +19 -38
- package/bpk-component-icon/sm/arrow-right.js +19 -38
- package/bpk-component-icon/sm/arrow-up.js +19 -38
- package/bpk-component-icon/sm/award.js +19 -38
- package/bpk-component-icon/sm/baby-carriage.js +19 -38
- package/bpk-component-icon/sm/baggage--add.js +19 -38
- package/bpk-component-icon/sm/baggage--remove.js +19 -38
- package/bpk-component-icon/sm/baggage-cabin-add.js +19 -38
- package/bpk-component-icon/sm/baggage-cabin-not-included.js +21 -40
- package/bpk-component-icon/sm/baggage-cabin.js +19 -38
- package/bpk-component-icon/sm/baggage-checked-add.js +19 -38
- package/bpk-component-icon/sm/baggage-checked-not-included.js +21 -40
- package/bpk-component-icon/sm/baggage-checked.js +19 -38
- package/bpk-component-icon/sm/baggage-cross.js +19 -38
- package/bpk-component-icon/sm/baggage-generic.js +21 -40
- package/bpk-component-icon/sm/baggage-tick.js +19 -38
- package/bpk-component-icon/sm/baggage.js +19 -38
- package/bpk-component-icon/sm/bar.js +19 -38
- package/bpk-component-icon/sm/beach.js +22 -40
- package/bpk-component-icon/sm/beer.js +19 -38
- package/bpk-component-icon/sm/breakfast-cross.js +19 -38
- package/bpk-component-icon/sm/breakfast-tick.js +19 -38
- package/bpk-component-icon/sm/bus.js +22 -40
- package/bpk-component-icon/sm/business.js +19 -38
- package/bpk-component-icon/sm/cafe.js +19 -38
- package/bpk-component-icon/sm/calendar.js +19 -38
- package/bpk-component-icon/sm/call-back.js +22 -40
- package/bpk-component-icon/sm/camera.js +19 -38
- package/bpk-component-icon/sm/camper-van.js +22 -40
- package/bpk-component-icon/sm/car-door.js +19 -38
- package/bpk-component-icon/sm/car-wash.js +22 -40
- package/bpk-component-icon/sm/cars-flexible.js +19 -38
- package/bpk-component-icon/sm/cars.js +22 -40
- package/bpk-component-icon/sm/center-location.js +19 -38
- package/bpk-component-icon/sm/chart.js +19 -38
- package/bpk-component-icon/sm/chauffeur.js +22 -40
- package/bpk-component-icon/sm/chevron-down.js +19 -38
- package/bpk-component-icon/sm/chevron-left.js +19 -38
- package/bpk-component-icon/sm/chevron-right.js +19 -38
- package/bpk-component-icon/sm/chevron-up.js +19 -38
- package/bpk-component-icon/sm/child-seat.js +19 -38
- package/bpk-component-icon/sm/child.js +19 -38
- package/bpk-component-icon/sm/city-center.js +19 -38
- package/bpk-component-icon/sm/city.js +19 -38
- package/bpk-component-icon/sm/clean-policy.js +19 -38
- package/bpk-component-icon/sm/clean.js +22 -40
- package/bpk-component-icon/sm/cleaning-medical.js +19 -38
- package/bpk-component-icon/sm/cloakroom.js +19 -38
- package/bpk-component-icon/sm/close-circle.js +19 -38
- package/bpk-component-icon/sm/close.js +19 -38
- package/bpk-component-icon/sm/collapse.js +19 -38
- package/bpk-component-icon/sm/content--copy.js +22 -40
- package/bpk-component-icon/sm/content--event.js +19 -38
- package/bpk-component-icon/sm/content--guides.js +19 -38
- package/bpk-component-icon/sm/currency.js +19 -38
- package/bpk-component-icon/sm/data.js +22 -40
- package/bpk-component-icon/sm/deals.js +19 -38
- package/bpk-component-icon/sm/depart.js +24 -42
- package/bpk-component-icon/sm/device-mid.js +19 -38
- package/bpk-component-icon/sm/device-wide.js +19 -38
- package/bpk-component-icon/sm/direct.js +22 -40
- package/bpk-component-icon/sm/document-csv.js +19 -38
- package/bpk-component-icon/sm/document-pdf.js +19 -38
- package/bpk-component-icon/sm/download.js +22 -40
- package/bpk-component-icon/sm/duration.js +19 -38
- package/bpk-component-icon/sm/eco-leaf.js +19 -38
- package/bpk-component-icon/sm/edit.js +19 -38
- package/bpk-component-icon/sm/education.js +22 -40
- package/bpk-component-icon/sm/electric.js +19 -38
- package/bpk-component-icon/sm/end-call.js +19 -38
- package/bpk-component-icon/sm/estimated.js +19 -38
- package/bpk-component-icon/sm/exclamation-circle.js +19 -38
- package/bpk-component-icon/sm/exclamation.js +19 -38
- package/bpk-component-icon/sm/expand.js +19 -38
- package/bpk-component-icon/sm/explore.js +19 -38
- package/bpk-component-icon/sm/face--blank.js +19 -38
- package/bpk-component-icon/sm/face--happy.js +19 -38
- package/bpk-component-icon/sm/face--sad.js +19 -38
- package/bpk-component-icon/sm/face-id.js +19 -38
- package/bpk-component-icon/sm/face-mask.js +19 -38
- package/bpk-component-icon/sm/family.js +19 -38
- package/bpk-component-icon/sm/fast-track.js +22 -40
- package/bpk-component-icon/sm/fast-train.js +22 -40
- package/bpk-component-icon/sm/filter.js +20 -39
- package/bpk-component-icon/sm/fingerprint.js +19 -38
- package/bpk-component-icon/sm/flag.js +19 -38
- package/bpk-component-icon/sm/flask.js +19 -38
- package/bpk-component-icon/sm/flight-flexible.js +19 -38
- package/bpk-component-icon/sm/flight-landing.js +24 -42
- package/bpk-component-icon/sm/flight-takeoff.js +22 -40
- package/bpk-component-icon/sm/flight.js +22 -40
- package/bpk-component-icon/sm/food.js +19 -38
- package/bpk-component-icon/sm/gears-automatic-circle.js +19 -38
- package/bpk-component-icon/sm/gears-automatic.js +19 -38
- package/bpk-component-icon/sm/gears-manual-circle.js +19 -38
- package/bpk-component-icon/sm/gears-manual.js +19 -38
- package/bpk-component-icon/sm/globe.js +19 -38
- package/bpk-component-icon/sm/grid-layout.js +19 -38
- package/bpk-component-icon/sm/headset.js +19 -38
- package/bpk-component-icon/sm/health-fitness.js +19 -38
- package/bpk-component-icon/sm/heart--outline.js +19 -38
- package/bpk-component-icon/sm/heart.js +19 -38
- package/bpk-component-icon/sm/help-circle.js +19 -38
- package/bpk-component-icon/sm/help.js +19 -38
- package/bpk-component-icon/sm/hide.js +19 -38
- package/bpk-component-icon/sm/hotel-flexible.js +19 -38
- package/bpk-component-icon/sm/hotels--disabled-facilities.js +19 -38
- package/bpk-component-icon/sm/hotels--jacuzzi.js +22 -40
- package/bpk-component-icon/sm/hotels--pets-allowed.js +19 -38
- package/bpk-component-icon/sm/hotels--smoking.js +19 -38
- package/bpk-component-icon/sm/hotels.js +19 -38
- package/bpk-component-icon/sm/infant.js +22 -40
- package/bpk-component-icon/sm/information--language-alert.js +19 -38
- package/bpk-component-icon/sm/information--language-question.js +19 -38
- package/bpk-component-icon/sm/information--language.js +19 -38
- package/bpk-component-icon/sm/information-circle.js +19 -38
- package/bpk-component-icon/sm/information.js +19 -38
- package/bpk-component-icon/sm/insurance.js +19 -38
- package/bpk-component-icon/sm/key.js +19 -38
- package/bpk-component-icon/sm/keypad.js +19 -38
- package/bpk-component-icon/sm/landmark.js +19 -38
- package/bpk-component-icon/sm/language.js +19 -38
- package/bpk-component-icon/sm/legroom--extra.js +22 -40
- package/bpk-component-icon/sm/legroom--normal.js +22 -40
- package/bpk-component-icon/sm/legroom--reduced.js +22 -40
- package/bpk-component-icon/sm/leisure.js +19 -38
- package/bpk-component-icon/sm/lightning.js +19 -38
- package/bpk-component-icon/sm/list.js +19 -38
- package/bpk-component-icon/sm/location.js +19 -38
- package/bpk-component-icon/sm/lock.js +19 -38
- package/bpk-component-icon/sm/logout.js +22 -40
- package/bpk-component-icon/sm/long-arrow-down.js +20 -39
- package/bpk-component-icon/sm/long-arrow-left.js +20 -39
- package/bpk-component-icon/sm/long-arrow-right.js +20 -39
- package/bpk-component-icon/sm/long-arrow-up.js +20 -39
- package/bpk-component-icon/sm/lounge.js +19 -38
- package/bpk-component-icon/sm/luggageall.js +19 -38
- package/bpk-component-icon/sm/mail.js +22 -40
- package/bpk-component-icon/sm/map.js +19 -38
- package/bpk-component-icon/sm/meal.js +19 -38
- package/bpk-component-icon/sm/media.js +19 -38
- package/bpk-component-icon/sm/menu--horizontal.js +19 -38
- package/bpk-component-icon/sm/menu--vertical.js +19 -38
- package/bpk-component-icon/sm/menu.js +19 -38
- package/bpk-component-icon/sm/mileage.js +22 -40
- package/bpk-component-icon/sm/minus.js +19 -38
- package/bpk-component-icon/sm/mobile.js +19 -38
- package/bpk-component-icon/sm/money.js +19 -38
- package/bpk-component-icon/sm/multiple-bookings.js +19 -38
- package/bpk-component-icon/sm/music.js +19 -38
- package/bpk-component-icon/sm/mute.js +19 -38
- package/bpk-component-icon/sm/native-android--back.js +19 -38
- package/bpk-component-icon/sm/native-android--close.js +19 -38
- package/bpk-component-icon/sm/native-android--forward.js +19 -38
- package/bpk-component-icon/sm/native-ios-close.js +19 -38
- package/bpk-component-icon/sm/navigation.js +19 -38
- package/bpk-component-icon/sm/new-window.js +26 -44
- package/bpk-component-icon/sm/news.js +19 -38
- package/bpk-component-icon/sm/night.js +19 -38
- package/bpk-component-icon/sm/not-allowed.js +19 -38
- package/bpk-component-icon/sm/onsen.js +22 -40
- package/bpk-component-icon/sm/origin.js +19 -38
- package/bpk-component-icon/sm/paid.js +19 -38
- package/bpk-component-icon/sm/paperclip.js +19 -38
- package/bpk-component-icon/sm/parking.js +19 -38
- package/bpk-component-icon/sm/passport.js +19 -38
- package/bpk-component-icon/sm/pause.js +19 -38
- package/bpk-component-icon/sm/payment-card.js +19 -38
- package/bpk-component-icon/sm/petrol.js +19 -38
- package/bpk-component-icon/sm/phone-call.js +19 -38
- package/bpk-component-icon/sm/picture.js +19 -38
- package/bpk-component-icon/sm/pin.js +19 -38
- package/bpk-component-icon/sm/plane-seat.js +22 -40
- package/bpk-component-icon/sm/play.js +19 -38
- package/bpk-component-icon/sm/plus.js +19 -38
- package/bpk-component-icon/sm/policy.js +19 -38
- package/bpk-component-icon/sm/powerplug.js +19 -38
- package/bpk-component-icon/sm/ppe.js +19 -38
- package/bpk-component-icon/sm/price-alerts.js +19 -38
- package/bpk-component-icon/sm/price-tag.js +19 -38
- package/bpk-component-icon/sm/print.js +19 -38
- package/bpk-component-icon/sm/recent-searches.js +19 -38
- package/bpk-component-icon/sm/redo.js +19 -38
- package/bpk-component-icon/sm/refresh.js +19 -38
- package/bpk-component-icon/sm/return.js +24 -42
- package/bpk-component-icon/sm/room.js +19 -38
- package/bpk-component-icon/sm/scales.js +19 -38
- package/bpk-component-icon/sm/search.js +19 -38
- package/bpk-component-icon/sm/self-service.js +19 -38
- package/bpk-component-icon/sm/send-message.js +19 -38
- package/bpk-component-icon/sm/services.js +19 -38
- package/bpk-component-icon/sm/settings.js +19 -38
- package/bpk-component-icon/sm/share--android.js +19 -38
- package/bpk-component-icon/sm/share--ios.js +24 -42
- package/bpk-component-icon/sm/share.js +19 -38
- package/bpk-component-icon/sm/single-booking.js +19 -38
- package/bpk-component-icon/sm/social-distancing.js +22 -40
- package/bpk-component-icon/sm/social-like.js +19 -38
- package/bpk-component-icon/sm/sort-down.js +19 -38
- package/bpk-component-icon/sm/sort-up.js +19 -38
- package/bpk-component-icon/sm/sort.js +19 -38
- package/bpk-component-icon/sm/speaker.js +19 -38
- package/bpk-component-icon/sm/star-half.js +19 -38
- package/bpk-component-icon/sm/star-outline.js +19 -38
- package/bpk-component-icon/sm/star.js +19 -38
- package/bpk-component-icon/sm/stops.js +19 -38
- package/bpk-component-icon/sm/swap--horizontal.js +20 -39
- package/bpk-component-icon/sm/swap--vertical.js +19 -38
- package/bpk-component-icon/sm/swap.js +20 -39
- package/bpk-component-icon/sm/taxi.js +22 -40
- package/bpk-component-icon/sm/thumbs-down.js +19 -38
- package/bpk-component-icon/sm/thumbs-up.js +19 -38
- package/bpk-component-icon/sm/tick-circle.js +19 -38
- package/bpk-component-icon/sm/tick.js +19 -38
- package/bpk-component-icon/sm/ticket-flexible.js +19 -38
- package/bpk-component-icon/sm/ticket.js +19 -38
- package/bpk-component-icon/sm/time.js +19 -38
- package/bpk-component-icon/sm/toilets.js +19 -38
- package/bpk-component-icon/sm/train.js +19 -38
- package/bpk-component-icon/sm/transmission-automatic.js +19 -38
- package/bpk-component-icon/sm/transmission-manual.js +19 -38
- package/bpk-component-icon/sm/trash.js +19 -38
- package/bpk-component-icon/sm/trend--down.js +19 -38
- package/bpk-component-icon/sm/trend--steady.js +20 -39
- package/bpk-component-icon/sm/trend--will-rise.js +19 -38
- package/bpk-component-icon/sm/trend.js +19 -38
- package/bpk-component-icon/sm/trips.js +19 -38
- package/bpk-component-icon/sm/undo.js +19 -38
- package/bpk-component-icon/sm/unlock.js +19 -38
- package/bpk-component-icon/sm/unmute.js +22 -40
- package/bpk-component-icon/sm/upgrade.js +19 -38
- package/bpk-component-icon/sm/upload.js +20 -39
- package/bpk-component-icon/sm/use-location.js +19 -38
- package/bpk-component-icon/sm/view.js +19 -38
- package/bpk-component-icon/sm/virus.js +19 -38
- package/bpk-component-icon/sm/wallet.js +19 -38
- package/bpk-component-icon/sm/weather--clear.js +19 -38
- package/bpk-component-icon/sm/weather--cloudy.js +22 -40
- package/bpk-component-icon/sm/weather--fog.js +19 -38
- package/bpk-component-icon/sm/weather--partly-cloudy.js +19 -38
- package/bpk-component-icon/sm/weather--rain.js +22 -40
- package/bpk-component-icon/sm/weather--snow.js +19 -38
- package/bpk-component-icon/sm/weather--thunderstorm.js +24 -42
- package/bpk-component-icon/sm/weather--tornado.js +19 -38
- package/bpk-component-icon/sm/weather--wind.js +22 -40
- package/bpk-component-icon/sm/weather.js +19 -38
- package/bpk-component-icon/sm/wifi.js +19 -38
- package/bpk-component-icon/sm/window--reduce.js +22 -40
- package/bpk-component-icon/sm/window.js +19 -38
- package/bpk-component-icon/sm/world--amer.js +19 -38
- package/bpk-component-icon/sm/world--apac.js +19 -38
- package/bpk-component-icon/sm/world--emea.js +19 -38
- package/bpk-component-icon/src/classNameModifierHOCFactory.js +13 -26
- package/bpk-component-icon/src/withAlignment.js +25 -32
- package/bpk-component-icon/src/withDescription.js +28 -35
- package/bpk-component-icon/src/withRtlSupport.js +5 -13
- package/bpk-component-image/index.js +8 -38
- package/bpk-component-image/src/BpkBackgroundImage.js +72 -80
- package/bpk-component-image/src/BpkImage.js +93 -110
- package/bpk-component-image/src/BpkImageBorderRadiusStyles.js +1 -8
- package/bpk-component-image/src/withLazyLoading.js +87 -98
- package/bpk-component-image/src/withLoadingBehavior.js +32 -41
- package/bpk-component-infinite-scroll/index.js +3 -26
- package/bpk-component-infinite-scroll/src/DataSource.js +5 -19
- package/bpk-component-infinite-scroll/src/intersection-observer.js +0 -2
- package/bpk-component-infinite-scroll/src/withInfiniteScroll.js +206 -218
- package/bpk-component-input/index.js +7 -49
- package/bpk-component-input/src/BpkClearButton.js +20 -36
- package/bpk-component-input/src/BpkInput.js +52 -65
- package/bpk-component-input/src/common-types.js +20 -32
- package/bpk-component-input/src/themeAttributes.js +2 -8
- package/bpk-component-input/src/withOpenEvents.js +83 -98
- package/bpk-component-label/index.js +2 -11
- package/bpk-component-label/src/BpkLabel.js +26 -42
- package/bpk-component-link/index.js +5 -33
- package/bpk-component-link/src/BpkButtonLink.js +22 -44
- package/bpk-component-link/src/BpkLink.js +30 -60
- package/bpk-component-link/src/themeAttributes.js +2 -10
- package/bpk-component-list/index.js +19 -20
- package/bpk-component-list/src/BpkList.js +10 -18
- package/bpk-component-list/src/BpkListItem.js +9 -17
- package/bpk-component-loading-button/index.js +3 -18
- package/bpk-component-loading-button/src/BpkLoadingButton.js +49 -66
- package/bpk-component-map/index.js +8 -60
- package/bpk-component-map/src/BpkBasicMapMarker.js +15 -32
- package/bpk-component-map/src/BpkIconMarker.js +36 -52
- package/bpk-component-map/src/BpkIconMarkerBackground.js +20 -37
- package/bpk-component-map/src/BpkMap.js +33 -41
- package/bpk-component-map/src/BpkOverlayView.js +15 -32
- package/bpk-component-map/src/BpkPriceMarker.js +40 -59
- package/bpk-component-map/src/DefaultLoadingElement.js +9 -17
- package/bpk-component-map/src/common-types.js +5 -13
- package/bpk-component-map/src/themeAttributes.js +4 -13
- package/bpk-component-map/src/withGoogleMapsScript.js +21 -38
- package/bpk-component-mobile-scroll-container/index.js +2 -11
- package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.js +91 -109
- package/bpk-component-modal/index.js +7 -37
- package/bpk-component-modal/src/BpkModal.js +35 -50
- package/bpk-component-modal/src/BpkModalInner.js +18 -28
- package/bpk-component-modal/src/BpkModalV2/BpkModal.js +26 -35
- package/bpk-component-modal/src/customPropTypes.js +3 -11
- package/bpk-component-modal/src/legacy-prop-types.js +52 -64
- package/bpk-component-modal/src/themeAttributes.js +3 -9
- package/bpk-component-navigation-bar/index.js +6 -32
- package/bpk-component-navigation-bar/src/BpkNavigationBar.js +47 -63
- package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.js +23 -43
- package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.js +24 -43
- package/bpk-component-navigation-bar/src/themeAttributes.js +1 -9
- package/bpk-component-nudger/index.js +6 -24
- package/bpk-component-nudger/src/BpkConfigurableNudger.js +40 -54
- package/bpk-component-nudger/src/BpkNudger.js +21 -38
- package/bpk-component-nudger/src/common-types.js +1 -5
- package/bpk-component-nudger/src/themeAttributes.js +3 -9
- package/bpk-component-nudger-row/index.js +3 -10
- package/bpk-component-nudger-row/src/BpkNudgerRow.js +16 -26
- package/bpk-component-overlay/index.js +3 -18
- package/bpk-component-overlay/src/BpkOverlay.js +19 -34
- package/bpk-component-page-indicator/index.js +4 -25
- package/bpk-component-page-indicator/src/BpkPageIndicator.js +28 -38
- package/bpk-component-page-indicator/src/NavButton.js +17 -26
- package/bpk-component-pagination/index.js +5 -17
- package/bpk-component-pagination/src/BpkPagination.js +37 -51
- package/bpk-component-pagination/src/BpkPaginationBreak.js +5 -13
- package/bpk-component-pagination/src/BpkPaginationList.js +17 -25
- package/bpk-component-pagination/src/BpkPaginationNudger.js +21 -28
- package/bpk-component-pagination/src/BpkPaginationPage.js +13 -21
- package/bpk-component-pagination/src/themeAttributes.js +2 -9
- package/bpk-component-panel/index.js +3 -10
- package/bpk-component-panel/src/BpkPanel.js +21 -36
- package/bpk-component-phone-input/index.js +2 -11
- package/bpk-component-phone-input/src/BpkPhoneInput.js +77 -95
- package/bpk-component-popover/index.js +4 -32
- package/bpk-component-popover/src/BpkPopover.js +65 -80
- package/bpk-component-popover/src/BpkPopoverPortal.js +104 -119
- package/bpk-component-popover/src/constants.js +3 -11
- package/bpk-component-popover/src/keyboardFocusScope.js +6 -14
- package/bpk-component-popover/src/themeAttributes.js +2 -10
- package/bpk-component-price/index.js +4 -24
- package/bpk-component-price/src/BpkPrice.js +45 -62
- package/bpk-component-price/src/common-types.js +3 -11
- package/bpk-component-progress/index.js +4 -18
- package/bpk-component-progress/src/BpkProgress.js +72 -91
- package/bpk-component-progress/src/themeAttributes.js +1 -9
- package/bpk-component-radio/index.js +4 -18
- package/bpk-component-radio/src/BpkRadio.js +29 -44
- package/bpk-component-radio/src/themeAttributes.js +1 -9
- package/bpk-component-rating/index.js +4 -24
- package/bpk-component-rating/src/BpkRating.js +54 -72
- package/bpk-component-rating/src/common-types.js +3 -11
- package/bpk-component-rtl-toggle/index.js +5 -17
- package/bpk-component-rtl-toggle/src/BpkRtlToggle.js +44 -50
- package/bpk-component-rtl-toggle/src/updateOnDirectionChange.js +34 -46
- package/bpk-component-rtl-toggle/src/utils.js +1 -9
- package/bpk-component-scrollable-calendar/index.js +8 -38
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendar.js +5 -12
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate.js +32 -44
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.js +23 -39
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.js +101 -112
- package/bpk-component-scrollable-calendar/src/utils.js +4 -11
- package/bpk-component-scrollable-calendar/test-utils.js +14 -31
- package/bpk-component-section-header/index.js +4 -17
- package/bpk-component-section-header/src/BpkSectionHeader.js +12 -20
- package/bpk-component-section-list/index.js +5 -25
- package/bpk-component-section-list/src/BpkSectionList.js +10 -26
- package/bpk-component-section-list/src/BpkSectionListItem.js +36 -52
- package/bpk-component-section-list/src/BpkSectionListSection.js +23 -40
- package/bpk-component-select/index.js +4 -18
- package/bpk-component-select/src/BpkSelect.js +39 -54
- package/bpk-component-select/src/themeAttributes.js +2 -8
- package/bpk-component-skip-link/index.js +4 -18
- package/bpk-component-skip-link/src/BpkSkipLink.js +18 -35
- package/bpk-component-skip-link/src/themeAttributes.js +2 -8
- package/bpk-component-slider/index.js +5 -17
- package/bpk-component-slider/src/BpkSlider.js +16 -30
- package/bpk-component-slider/src/themeAttributes.js +2 -8
- package/bpk-component-spinner/index.js +22 -41
- package/bpk-component-spinner/src/BpkExtraLargeSpinner.js +35 -49
- package/bpk-component-spinner/src/BpkLargeSpinner.js +37 -51
- package/bpk-component-spinner/src/BpkSpinner.js +37 -51
- package/bpk-component-spinner/src/spinnerTypes.js +2 -10
- package/bpk-component-spinner/src/themeAttributes.js +1 -9
- package/bpk-component-split-input/index.js +3 -18
- package/bpk-component-split-input/src/BpkInputField.js +27 -44
- package/bpk-component-split-input/src/BpkSplitInput.js +201 -217
- package/bpk-component-star-rating/index.js +8 -66
- package/bpk-component-star-rating/src/BpkInteractiveStar.js +28 -44
- package/bpk-component-star-rating/src/BpkInteractiveStarRating.js +37 -54
- package/bpk-component-star-rating/src/BpkStar.js +42 -59
- package/bpk-component-star-rating/src/BpkStarRating.js +30 -50
- package/bpk-component-star-rating/src/themeAttributes.js +1 -9
- package/bpk-component-star-rating/src/withInteractiveStarRatingState.js +55 -67
- package/bpk-component-switch/index.js +4 -18
- package/bpk-component-switch/src/BpkSwitch.js +21 -36
- package/bpk-component-switch/src/themeAttributes.js +2 -8
- package/bpk-component-table/index.js +23 -48
- package/bpk-component-table/src/BpkTable.js +16 -33
- package/bpk-component-table/src/BpkTableBody.js +22 -33
- package/bpk-component-table/src/BpkTableCell.js +15 -32
- package/bpk-component-table/src/BpkTableHead.js +22 -33
- package/bpk-component-table/src/BpkTableHeadCell.js +14 -30
- package/bpk-component-table/src/BpkTableRow.js +22 -33
- package/bpk-component-text/index.js +4 -17
- package/bpk-component-text/src/BpkText.js +18 -35
- package/bpk-component-textarea/index.js +4 -18
- package/bpk-component-textarea/src/BpkTextarea.js +21 -37
- package/bpk-component-textarea/src/themeAttributes.js +1 -9
- package/bpk-component-theme-toggle/index.js +5 -17
- package/bpk-component-theme-toggle/src/BpkThemeToggle.js +70 -79
- package/bpk-component-theme-toggle/src/theming.js +39 -47
- package/bpk-component-theme-toggle/src/updateOnThemeChange.js +41 -51
- package/bpk-component-theme-toggle/src/utils.js +1 -8
- package/bpk-component-ticket/index.js +2 -11
- package/bpk-component-ticket/src/BpkTicket.js +39 -56
- package/bpk-component-tooltip/index.js +5 -17
- package/bpk-component-tooltip/src/BpkTooltip.js +27 -41
- package/bpk-component-tooltip/src/BpkTooltipPortal.js +101 -116
- package/bpk-component-tooltip/src/constants.js +4 -13
- package/bpk-react-utils/index.js +22 -88
- package/bpk-react-utils/src/Portal.js +38 -48
- package/bpk-react-utils/src/TransitionInitialMount.js +6 -15
- package/bpk-react-utils/src/cssModules.js +3 -9
- package/bpk-react-utils/src/deprecated.js +1 -8
- package/bpk-react-utils/src/deviceDetection.js +1 -9
- package/bpk-react-utils/src/isRTL.js +1 -8
- package/bpk-react-utils/src/withDefaultProps.js +18 -34
- package/bpk-react-utils/src/wrapDisplayName.js +1 -8
- package/bpk-scrim-utils/index.js +6 -18
- package/bpk-scrim-utils/src/BpkScrim.js +7 -15
- package/bpk-scrim-utils/src/scroll-utils.js +7 -19
- package/bpk-scrim-utils/src/withScrim.js +65 -82
- package/bpk-storybook-utils/index.js +6 -26
- package/bpk-storybook-utils/src/BpkDarkExampleWrapper.js +12 -28
- package/bpk-storybook-utils/src/BpkStorybookUtils.js +3 -10
- package/bpk-theming/index.js +3 -10
- package/bpk-theming/src/BpkThemeProvider.js +29 -40
- package/package.json +2 -3
- package/bpk-mixins/sass-functions.js +0 -29
- package/bpk-stylesheets/base.css +0 -1670
- package/bpk-stylesheets/base.js +0 -171
- package/bpk-stylesheets/build.js +0 -46
- package/bpk-stylesheets/font.css +0 -18
- package/bpk-stylesheets/font.js +0 -3
- package/bpk-stylesheets/index.css +0 -18
- package/bpk-stylesheets/index.js +0 -38
- package/bpk-stylesheets/license-header.js +0 -32
- package/bpk-stylesheets/webpack.config.babel.js +0 -85
|
@@ -1,44 +1,31 @@
|
|
|
1
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Backpack - Skyscanner's Design System
|
|
3
|
+
*
|
|
4
|
+
* Copyright 2016 Skyscanner Ltd
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
2
18
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var _BpkCalendarDate = _interopRequireDefault(require("./BpkCalendarDate"));
|
|
14
|
-
var _composeCalendar = _interopRequireDefault(require("./composeCalendar"));
|
|
15
|
-
var _dateUtils = require("./date-utils");
|
|
16
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
|
-
const _excluded = ["maxDate", "minDate", "onDateSelect", "onMonthChange", "selectionConfiguration"];
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
20
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
21
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
22
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
23
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
24
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
25
|
-
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /*
|
|
26
|
-
* Backpack - Skyscanner's Design System
|
|
27
|
-
*
|
|
28
|
-
* Copyright 2016 Skyscanner Ltd
|
|
29
|
-
*
|
|
30
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
31
|
-
* you may not use this file except in compliance with the License.
|
|
32
|
-
* You may obtain a copy of the License at
|
|
33
|
-
*
|
|
34
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
35
|
-
*
|
|
36
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
37
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
38
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
39
|
-
* See the License for the specific language governing permissions and
|
|
40
|
-
* limitations under the License.
|
|
41
|
-
*/
|
|
19
|
+
import { Component } from 'react';
|
|
20
|
+
import { isRTL } from "../../bpk-react-utils";
|
|
21
|
+
import { CALENDAR_SELECTION_TYPE } from "./custom-proptypes";
|
|
22
|
+
import BpkCalendarNav from "./BpkCalendarNav";
|
|
23
|
+
import { BpkCalendarGridWithTransition } from "./BpkCalendarGrid";
|
|
24
|
+
import BpkCalendarGridHeader from "./BpkCalendarGridHeader";
|
|
25
|
+
import BpkCalendarDate from "./BpkCalendarDate";
|
|
26
|
+
import composeCalendar from "./composeCalendar";
|
|
27
|
+
import { addDays, addMonths, dateToBoundaries, isAfter, isSameMonth, isSameDay, lastDayOfMonth, setMonthYear, startOfDay, startOfMonth } from "./date-utils";
|
|
28
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
42
29
|
/**
|
|
43
30
|
* Updates the current focused date
|
|
44
31
|
* @param {Object} currentProps current input properties
|
|
@@ -48,8 +35,8 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input ===
|
|
|
48
35
|
const focusedDateHasChanged = (currentProps, nextProps) => {
|
|
49
36
|
const currentSelectConfig = currentProps.selectionConfiguration;
|
|
50
37
|
const nextSelectConfig = nextProps.selectionConfiguration;
|
|
51
|
-
const rawNextSelectedDate = nextSelectConfig.type ===
|
|
52
|
-
const rawSelectedDate = currentSelectConfig.type ===
|
|
38
|
+
const rawNextSelectedDate = nextSelectConfig.type === CALENDAR_SELECTION_TYPE.single ? nextSelectConfig.date : nextSelectConfig.startDate;
|
|
39
|
+
const rawSelectedDate = currentSelectConfig.type === CALENDAR_SELECTION_TYPE.single ? currentSelectConfig.date : currentSelectConfig.startDate;
|
|
53
40
|
if (!rawSelectedDate && !rawNextSelectedDate) {
|
|
54
41
|
return false;
|
|
55
42
|
}
|
|
@@ -58,7 +45,7 @@ const focusedDateHasChanged = (currentProps, nextProps) => {
|
|
|
58
45
|
}
|
|
59
46
|
|
|
60
47
|
// @ts-expect-error TS reporting incorrectly as we are already checking above that the dates are not null
|
|
61
|
-
return !
|
|
48
|
+
return !isSameDay(rawNextSelectedDate, rawSelectedDate);
|
|
62
49
|
};
|
|
63
50
|
|
|
64
51
|
/**
|
|
@@ -71,10 +58,10 @@ const focusedDateHasChanged = (currentProps, nextProps) => {
|
|
|
71
58
|
*/
|
|
72
59
|
const determineFocusedDate = (rawSelectedDate, initiallyFocusedDate, minDate, maxDate) => {
|
|
73
60
|
if (rawSelectedDate) {
|
|
74
|
-
return
|
|
61
|
+
return dateToBoundaries(rawSelectedDate, minDate, maxDate);
|
|
75
62
|
}
|
|
76
63
|
if (initiallyFocusedDate) {
|
|
77
|
-
return
|
|
64
|
+
return dateToBoundaries(initiallyFocusedDate, minDate, maxDate);
|
|
78
65
|
}
|
|
79
66
|
return minDate;
|
|
80
67
|
};
|
|
@@ -87,10 +74,10 @@ const determineFocusedDate = (rawSelectedDate, initiallyFocusedDate, minDate, ma
|
|
|
87
74
|
const getRawSelectedDate = selectionConfig => {
|
|
88
75
|
let rawDate = [];
|
|
89
76
|
switch (selectionConfig.type) {
|
|
90
|
-
case
|
|
77
|
+
case CALENDAR_SELECTION_TYPE.single:
|
|
91
78
|
rawDate = [selectionConfig.date];
|
|
92
79
|
break;
|
|
93
|
-
case
|
|
80
|
+
case CALENDAR_SELECTION_TYPE.range:
|
|
94
81
|
rawDate = [selectionConfig.startDate, selectionConfig.endDate];
|
|
95
82
|
break;
|
|
96
83
|
default:
|
|
@@ -100,124 +87,25 @@ const getRawSelectedDate = selectionConfig => {
|
|
|
100
87
|
return rawDate;
|
|
101
88
|
};
|
|
102
89
|
const withCalendarState = Calendar => {
|
|
103
|
-
class BpkCalendarContainer extends
|
|
90
|
+
class BpkCalendarContainer extends Component {
|
|
91
|
+
static defaultProps = {
|
|
92
|
+
fixedWidth: true,
|
|
93
|
+
maxDate: addMonths(new Date(), 12),
|
|
94
|
+
minDate: new Date(),
|
|
95
|
+
onDateSelect: null,
|
|
96
|
+
onMonthChange: null,
|
|
97
|
+
selectionConfiguration: {
|
|
98
|
+
type: CALENDAR_SELECTION_TYPE.single,
|
|
99
|
+
date: null
|
|
100
|
+
},
|
|
101
|
+
initiallyFocusedDate: null,
|
|
102
|
+
markToday: true,
|
|
103
|
+
markOutsideDays: true
|
|
104
|
+
};
|
|
104
105
|
constructor(props) {
|
|
105
106
|
super(props);
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
source
|
|
109
|
-
}) => {
|
|
110
|
-
const {
|
|
111
|
-
onMonthChange
|
|
112
|
-
} = this.props;
|
|
113
|
-
const focusedDate = (0, _dateUtils.dateToBoundaries)(date, (0, _dateUtils.startOfDay)(this.props.minDate), (0, _dateUtils.startOfDay)(this.props.maxDate));
|
|
114
|
-
const didMonthChange = !(0, _dateUtils.isSameMonth)(this.state.focusedDate, focusedDate);
|
|
115
|
-
this.setState({
|
|
116
|
-
preventKeyboardFocus: false,
|
|
117
|
-
focusedDate
|
|
118
|
-
}, () => {
|
|
119
|
-
if (onMonthChange && didMonthChange) {
|
|
120
|
-
onMonthChange(event, {
|
|
121
|
-
month: (0, _dateUtils.startOfMonth)(focusedDate),
|
|
122
|
-
source
|
|
123
|
-
});
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
});
|
|
127
|
-
_defineProperty(this, "handleDateSelect", date => {
|
|
128
|
-
const {
|
|
129
|
-
onDateSelect,
|
|
130
|
-
selectionConfiguration
|
|
131
|
-
} = this.props;
|
|
132
|
-
const keyboardFocusState = {
|
|
133
|
-
preventKeyboardFocus: false
|
|
134
|
-
};
|
|
135
|
-
if (onDateSelect) {
|
|
136
|
-
const newDate = (0, _dateUtils.dateToBoundaries)(date, (0, _dateUtils.startOfDay)(this.props.minDate), (0, _dateUtils.startOfDay)(this.props.maxDate));
|
|
137
|
-
if (selectionConfiguration && selectionConfiguration.type === _customProptypes.CALENDAR_SELECTION_TYPE.range && selectionConfiguration.startDate && !selectionConfiguration.endDate && ((0, _dateUtils.isAfter)(newDate, selectionConfiguration.startDate) || (0, _dateUtils.isSameDay)(newDate, selectionConfiguration.startDate))) {
|
|
138
|
-
onDateSelect(selectionConfiguration.startDate, newDate);
|
|
139
|
-
} else {
|
|
140
|
-
onDateSelect(newDate);
|
|
141
|
-
}
|
|
142
|
-
} else {
|
|
143
|
-
this.setState(keyboardFocusState);
|
|
144
|
-
}
|
|
145
|
-
});
|
|
146
|
-
_defineProperty(this, "handleMonthChange", (event, {
|
|
147
|
-
month,
|
|
148
|
-
source
|
|
149
|
-
}) => {
|
|
150
|
-
this.handleDateFocus(event, {
|
|
151
|
-
date: (0, _dateUtils.setMonthYear)(this.state.focusedDate, month.getMonth(), month.getFullYear()),
|
|
152
|
-
source
|
|
153
|
-
});
|
|
154
|
-
});
|
|
155
|
-
_defineProperty(this, "handleDateKeyDown", event => {
|
|
156
|
-
const reverse = (0, _bpkReactUtils.isRTL)() ? -1 : 1;
|
|
157
|
-
const {
|
|
158
|
-
focusedDate
|
|
159
|
-
} = this.state;
|
|
160
|
-
const source = 'GRID';
|
|
161
|
-
let preventDefault = true;
|
|
162
|
-
switch (event.key) {
|
|
163
|
-
case 'ArrowRight':
|
|
164
|
-
this.handleDateFocus(event, {
|
|
165
|
-
date: (0, _dateUtils.addDays)(focusedDate, reverse * 1),
|
|
166
|
-
source
|
|
167
|
-
});
|
|
168
|
-
break;
|
|
169
|
-
case 'ArrowLeft':
|
|
170
|
-
this.handleDateFocus(event, {
|
|
171
|
-
date: (0, _dateUtils.addDays)(focusedDate, reverse * -1),
|
|
172
|
-
source
|
|
173
|
-
});
|
|
174
|
-
break;
|
|
175
|
-
case 'ArrowUp':
|
|
176
|
-
this.handleDateFocus(event, {
|
|
177
|
-
date: (0, _dateUtils.addDays)(focusedDate, -7),
|
|
178
|
-
source
|
|
179
|
-
});
|
|
180
|
-
break;
|
|
181
|
-
case 'ArrowDown':
|
|
182
|
-
this.handleDateFocus(event, {
|
|
183
|
-
date: (0, _dateUtils.addDays)(focusedDate, 7),
|
|
184
|
-
source
|
|
185
|
-
});
|
|
186
|
-
break;
|
|
187
|
-
case 'PageUp':
|
|
188
|
-
this.handleDateFocus(event, {
|
|
189
|
-
date: (0, _dateUtils.addMonths)(focusedDate, -1),
|
|
190
|
-
source
|
|
191
|
-
});
|
|
192
|
-
break;
|
|
193
|
-
case 'PageDown':
|
|
194
|
-
this.handleDateFocus(event, {
|
|
195
|
-
date: (0, _dateUtils.addMonths)(focusedDate, 1),
|
|
196
|
-
source
|
|
197
|
-
});
|
|
198
|
-
break;
|
|
199
|
-
case 'Home':
|
|
200
|
-
this.handleDateFocus(event, {
|
|
201
|
-
date: (0, _dateUtils.startOfMonth)(focusedDate),
|
|
202
|
-
source
|
|
203
|
-
});
|
|
204
|
-
break;
|
|
205
|
-
case 'End':
|
|
206
|
-
this.handleDateFocus(event, {
|
|
207
|
-
date: (0, _dateUtils.lastDayOfMonth)(focusedDate),
|
|
208
|
-
source
|
|
209
|
-
});
|
|
210
|
-
break;
|
|
211
|
-
default:
|
|
212
|
-
preventDefault = false;
|
|
213
|
-
break;
|
|
214
|
-
}
|
|
215
|
-
if (preventDefault) {
|
|
216
|
-
event.preventDefault();
|
|
217
|
-
}
|
|
218
|
-
});
|
|
219
|
-
const minDate = (0, _dateUtils.startOfDay)(this.props.minDate);
|
|
220
|
-
const maxDate = (0, _dateUtils.startOfDay)(this.props.maxDate);
|
|
107
|
+
const minDate = startOfDay(this.props.minDate);
|
|
108
|
+
const maxDate = startOfDay(this.props.maxDate);
|
|
221
109
|
const rawSelectedDate = getRawSelectedDate(this.props.selectionConfiguration);
|
|
222
110
|
const {
|
|
223
111
|
initiallyFocusedDate
|
|
@@ -229,58 +117,155 @@ const withCalendarState = Calendar => {
|
|
|
229
117
|
}
|
|
230
118
|
UNSAFE_componentWillReceiveProps(nextProps) {
|
|
231
119
|
const rawNextSelectedDate = getRawSelectedDate(nextProps.selectionConfiguration);
|
|
232
|
-
const minDate =
|
|
233
|
-
const maxDate =
|
|
120
|
+
const minDate = startOfDay(nextProps.minDate);
|
|
121
|
+
const maxDate = startOfDay(nextProps.maxDate);
|
|
234
122
|
if (focusedDateHasChanged(this.props, nextProps)) {
|
|
235
123
|
this.setState({
|
|
236
|
-
focusedDate:
|
|
124
|
+
focusedDate: dateToBoundaries(rawNextSelectedDate[0], minDate, maxDate)
|
|
237
125
|
});
|
|
238
126
|
}
|
|
239
127
|
}
|
|
128
|
+
handleDateFocus = (event, {
|
|
129
|
+
date,
|
|
130
|
+
source
|
|
131
|
+
}) => {
|
|
132
|
+
const {
|
|
133
|
+
onMonthChange
|
|
134
|
+
} = this.props;
|
|
135
|
+
const focusedDate = dateToBoundaries(date, startOfDay(this.props.minDate), startOfDay(this.props.maxDate));
|
|
136
|
+
const didMonthChange = !isSameMonth(this.state.focusedDate, focusedDate);
|
|
137
|
+
this.setState({
|
|
138
|
+
preventKeyboardFocus: false,
|
|
139
|
+
focusedDate
|
|
140
|
+
}, () => {
|
|
141
|
+
if (onMonthChange && didMonthChange) {
|
|
142
|
+
onMonthChange(event, {
|
|
143
|
+
month: startOfMonth(focusedDate),
|
|
144
|
+
source
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
};
|
|
149
|
+
handleDateSelect = date => {
|
|
150
|
+
const {
|
|
151
|
+
onDateSelect,
|
|
152
|
+
selectionConfiguration
|
|
153
|
+
} = this.props;
|
|
154
|
+
const keyboardFocusState = {
|
|
155
|
+
preventKeyboardFocus: false
|
|
156
|
+
};
|
|
157
|
+
if (onDateSelect) {
|
|
158
|
+
const newDate = dateToBoundaries(date, startOfDay(this.props.minDate), startOfDay(this.props.maxDate));
|
|
159
|
+
if (selectionConfiguration && selectionConfiguration.type === CALENDAR_SELECTION_TYPE.range && selectionConfiguration.startDate && !selectionConfiguration.endDate && (isAfter(newDate, selectionConfiguration.startDate) || isSameDay(newDate, selectionConfiguration.startDate))) {
|
|
160
|
+
onDateSelect(selectionConfiguration.startDate, newDate);
|
|
161
|
+
} else {
|
|
162
|
+
onDateSelect(newDate);
|
|
163
|
+
}
|
|
164
|
+
} else {
|
|
165
|
+
this.setState(keyboardFocusState);
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
handleMonthChange = (event, {
|
|
169
|
+
month,
|
|
170
|
+
source
|
|
171
|
+
}) => {
|
|
172
|
+
this.handleDateFocus(event, {
|
|
173
|
+
date: setMonthYear(this.state.focusedDate, month.getMonth(), month.getFullYear()),
|
|
174
|
+
source
|
|
175
|
+
});
|
|
176
|
+
};
|
|
177
|
+
handleDateKeyDown = event => {
|
|
178
|
+
const reverse = isRTL() ? -1 : 1;
|
|
179
|
+
const {
|
|
180
|
+
focusedDate
|
|
181
|
+
} = this.state;
|
|
182
|
+
const source = 'GRID';
|
|
183
|
+
let preventDefault = true;
|
|
184
|
+
switch (event.key) {
|
|
185
|
+
case 'ArrowRight':
|
|
186
|
+
this.handleDateFocus(event, {
|
|
187
|
+
date: addDays(focusedDate, reverse * 1),
|
|
188
|
+
source
|
|
189
|
+
});
|
|
190
|
+
break;
|
|
191
|
+
case 'ArrowLeft':
|
|
192
|
+
this.handleDateFocus(event, {
|
|
193
|
+
date: addDays(focusedDate, reverse * -1),
|
|
194
|
+
source
|
|
195
|
+
});
|
|
196
|
+
break;
|
|
197
|
+
case 'ArrowUp':
|
|
198
|
+
this.handleDateFocus(event, {
|
|
199
|
+
date: addDays(focusedDate, -7),
|
|
200
|
+
source
|
|
201
|
+
});
|
|
202
|
+
break;
|
|
203
|
+
case 'ArrowDown':
|
|
204
|
+
this.handleDateFocus(event, {
|
|
205
|
+
date: addDays(focusedDate, 7),
|
|
206
|
+
source
|
|
207
|
+
});
|
|
208
|
+
break;
|
|
209
|
+
case 'PageUp':
|
|
210
|
+
this.handleDateFocus(event, {
|
|
211
|
+
date: addMonths(focusedDate, -1),
|
|
212
|
+
source
|
|
213
|
+
});
|
|
214
|
+
break;
|
|
215
|
+
case 'PageDown':
|
|
216
|
+
this.handleDateFocus(event, {
|
|
217
|
+
date: addMonths(focusedDate, 1),
|
|
218
|
+
source
|
|
219
|
+
});
|
|
220
|
+
break;
|
|
221
|
+
case 'Home':
|
|
222
|
+
this.handleDateFocus(event, {
|
|
223
|
+
date: startOfMonth(focusedDate),
|
|
224
|
+
source
|
|
225
|
+
});
|
|
226
|
+
break;
|
|
227
|
+
case 'End':
|
|
228
|
+
this.handleDateFocus(event, {
|
|
229
|
+
date: lastDayOfMonth(focusedDate),
|
|
230
|
+
source
|
|
231
|
+
});
|
|
232
|
+
break;
|
|
233
|
+
default:
|
|
234
|
+
preventDefault = false;
|
|
235
|
+
break;
|
|
236
|
+
}
|
|
237
|
+
if (preventDefault) {
|
|
238
|
+
event.preventDefault();
|
|
239
|
+
}
|
|
240
|
+
};
|
|
240
241
|
render() {
|
|
241
|
-
const
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
const
|
|
251
|
-
const
|
|
252
|
-
const
|
|
253
|
-
|
|
254
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Calendar, _objectSpread(_objectSpread({
|
|
242
|
+
const {
|
|
243
|
+
maxDate,
|
|
244
|
+
minDate,
|
|
245
|
+
onDateSelect,
|
|
246
|
+
onMonthChange,
|
|
247
|
+
selectionConfiguration,
|
|
248
|
+
...calendarProps
|
|
249
|
+
} = this.props;
|
|
250
|
+
const sanitisedMinDate = startOfDay(minDate);
|
|
251
|
+
const sanitisedMaxDate = startOfDay(maxDate);
|
|
252
|
+
const sanitisedFocusedDate = dateToBoundaries(this.state.focusedDate, sanitisedMinDate, sanitisedMaxDate);
|
|
253
|
+
const month = startOfMonth(sanitisedFocusedDate);
|
|
254
|
+
return /*#__PURE__*/_jsx(Calendar, {
|
|
255
255
|
onMonthChange: this.handleMonthChange,
|
|
256
256
|
onDateClick: this.handleDateSelect,
|
|
257
257
|
month: month,
|
|
258
258
|
onDateKeyDown: this.handleDateKeyDown,
|
|
259
259
|
preventKeyboardFocus: this.state.preventKeyboardFocus,
|
|
260
|
-
focusedDate: sanitisedFocusedDate
|
|
261
|
-
|
|
260
|
+
focusedDate: sanitisedFocusedDate,
|
|
261
|
+
...calendarProps,
|
|
262
262
|
minDate: sanitisedMinDate,
|
|
263
263
|
maxDate: sanitisedMaxDate,
|
|
264
264
|
selectionConfiguration: selectionConfiguration
|
|
265
|
-
})
|
|
265
|
+
});
|
|
266
266
|
}
|
|
267
267
|
}
|
|
268
|
-
_defineProperty(BpkCalendarContainer, "defaultProps", {
|
|
269
|
-
fixedWidth: true,
|
|
270
|
-
maxDate: (0, _dateUtils.addMonths)(new Date(), 12),
|
|
271
|
-
minDate: new Date(),
|
|
272
|
-
onDateSelect: null,
|
|
273
|
-
onMonthChange: null,
|
|
274
|
-
selectionConfiguration: {
|
|
275
|
-
type: _customProptypes.CALENDAR_SELECTION_TYPE.single,
|
|
276
|
-
date: null
|
|
277
|
-
},
|
|
278
|
-
initiallyFocusedDate: null,
|
|
279
|
-
markToday: true,
|
|
280
|
-
markOutsideDays: true
|
|
281
|
-
});
|
|
282
268
|
return BpkCalendarContainer;
|
|
283
269
|
};
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
exports.default = _default;
|
|
270
|
+
export default withCalendarState(composeCalendar(BpkCalendarNav, BpkCalendarGridHeader, BpkCalendarGridWithTransition, BpkCalendarDate));
|
|
271
|
+
export { withCalendarState };
|
|
@@ -1,40 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Backpack - Skyscanner's Design System
|
|
3
|
+
*
|
|
4
|
+
* Copyright 2016 Skyscanner Ltd
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
2
18
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
var _BpkCalendarDateModule = _interopRequireDefault(require("./BpkCalendarDate.module.css"));
|
|
10
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
-
const _excluded = ["className", "date", "isBlocked", "isFocused", "isKeyboardFocusable", "isOutside", "isSelected", "isToday", "modifiers", "onClick", "onDateKeyDown", "selectionType", "style"];
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
14
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
15
|
-
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
16
|
-
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
17
|
-
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
18
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
19
|
-
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } /*
|
|
20
|
-
* Backpack - Skyscanner's Design System
|
|
21
|
-
*
|
|
22
|
-
* Copyright 2016 Skyscanner Ltd
|
|
23
|
-
*
|
|
24
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
25
|
-
* you may not use this file except in compliance with the License.
|
|
26
|
-
* You may obtain a copy of the License at
|
|
27
|
-
*
|
|
28
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
29
|
-
*
|
|
30
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
31
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
32
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
33
|
-
* See the License for the specific language governing permissions and
|
|
34
|
-
* limitations under the License.
|
|
35
|
-
*/
|
|
36
|
-
const getClassName = (0, _bpkReactUtils.cssModules)(_BpkCalendarDateModule.default);
|
|
37
|
-
const SELECTION_TYPES = {
|
|
19
|
+
import { PureComponent } from 'react';
|
|
20
|
+
import { cssModules } from "../../bpk-react-utils";
|
|
21
|
+
import STYLES from "./BpkCalendarDate.module.css";
|
|
22
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
23
|
+
const getClassName = cssModules(STYLES);
|
|
24
|
+
export const SELECTION_TYPES = {
|
|
38
25
|
none: 'none',
|
|
39
26
|
single: 'single',
|
|
40
27
|
start: 'start',
|
|
@@ -42,20 +29,29 @@ const SELECTION_TYPES = {
|
|
|
42
29
|
end: 'end',
|
|
43
30
|
sameDay: 'sameDay'
|
|
44
31
|
};
|
|
45
|
-
|
|
46
|
-
const ROW_TYPES = {
|
|
32
|
+
export const ROW_TYPES = {
|
|
47
33
|
start: 'start',
|
|
48
34
|
middle: 'middle',
|
|
49
35
|
end: 'end',
|
|
50
36
|
both: 'both'
|
|
51
37
|
};
|
|
52
|
-
exports.ROW_TYPES = ROW_TYPES;
|
|
53
38
|
const navigatedByMonthNudger = () => document?.activeElement?.id && document.activeElement.id.indexOf('month_nudger') !== -1;
|
|
54
|
-
class BpkCalendarDate extends
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
39
|
+
class BpkCalendarDate extends PureComponent {
|
|
40
|
+
static defaultProps = {
|
|
41
|
+
className: null,
|
|
42
|
+
isBlocked: false,
|
|
43
|
+
isFocused: false,
|
|
44
|
+
isKeyboardFocusable: true,
|
|
45
|
+
isOutside: false,
|
|
46
|
+
isSelected: false,
|
|
47
|
+
isToday: false,
|
|
48
|
+
modifiers: {},
|
|
49
|
+
onClick: null,
|
|
50
|
+
onDateKeyDown: () => {},
|
|
51
|
+
preventKeyboardFocus: true,
|
|
52
|
+
selectionType: SELECTION_TYPES.none,
|
|
53
|
+
style: {}
|
|
54
|
+
};
|
|
59
55
|
componentDidMount() {
|
|
60
56
|
if (!this.props.preventKeyboardFocus && this.props.isFocused) {
|
|
61
57
|
// If we got here by clicking the nudger, don't focus this date
|
|
@@ -81,24 +77,24 @@ class BpkCalendarDate extends _react.PureComponent {
|
|
|
81
77
|
this.button?.focus();
|
|
82
78
|
}
|
|
83
79
|
}
|
|
80
|
+
button = null;
|
|
84
81
|
render() {
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
buttonProps = _objectWithoutProperties(_this$props, _excluded);
|
|
82
|
+
const {
|
|
83
|
+
className,
|
|
84
|
+
date,
|
|
85
|
+
isBlocked,
|
|
86
|
+
isFocused,
|
|
87
|
+
isKeyboardFocusable,
|
|
88
|
+
isOutside,
|
|
89
|
+
isSelected,
|
|
90
|
+
isToday,
|
|
91
|
+
modifiers,
|
|
92
|
+
onClick,
|
|
93
|
+
onDateKeyDown,
|
|
94
|
+
selectionType,
|
|
95
|
+
style,
|
|
96
|
+
...buttonProps
|
|
97
|
+
} = this.props;
|
|
102
98
|
const classNames = [getClassName('bpk-calendar-date')];
|
|
103
99
|
Object.keys(modifiers).forEach(modifier => {
|
|
104
100
|
if (modifiers[modifier](this.props)) {
|
|
@@ -124,7 +120,7 @@ class BpkCalendarDate extends _react.PureComponent {
|
|
|
124
120
|
classNames.push(className);
|
|
125
121
|
}
|
|
126
122
|
delete buttonProps.preventKeyboardFocus;
|
|
127
|
-
return /*#__PURE__*/(
|
|
123
|
+
return /*#__PURE__*/_jsx("button", {
|
|
128
124
|
type: "button",
|
|
129
125
|
style: style,
|
|
130
126
|
className: classNames.join(' '),
|
|
@@ -141,29 +137,13 @@ class BpkCalendarDate extends _react.PureComponent {
|
|
|
141
137
|
"aria-pressed": isSelected,
|
|
142
138
|
ref: button => {
|
|
143
139
|
this.button = button;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
children: /*#__PURE__*/(
|
|
140
|
+
},
|
|
141
|
+
...buttonProps,
|
|
142
|
+
children: /*#__PURE__*/_jsx("span", {
|
|
147
143
|
"aria-hidden": "true",
|
|
148
144
|
children: date.getDate()
|
|
149
145
|
})
|
|
150
|
-
})
|
|
146
|
+
});
|
|
151
147
|
}
|
|
152
148
|
}
|
|
153
|
-
|
|
154
|
-
className: null,
|
|
155
|
-
isBlocked: false,
|
|
156
|
-
isFocused: false,
|
|
157
|
-
isKeyboardFocusable: true,
|
|
158
|
-
isOutside: false,
|
|
159
|
-
isSelected: false,
|
|
160
|
-
isToday: false,
|
|
161
|
-
modifiers: {},
|
|
162
|
-
onClick: null,
|
|
163
|
-
onDateKeyDown: () => {},
|
|
164
|
-
preventKeyboardFocus: true,
|
|
165
|
-
selectionType: SELECTION_TYPES.none,
|
|
166
|
-
style: {}
|
|
167
|
-
});
|
|
168
|
-
var _default = BpkCalendarDate;
|
|
169
|
-
exports.default = _default;
|
|
149
|
+
export default BpkCalendarDate;
|