@skyscanner/backpack-web 25.4.0-alpha → 25.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bpk-animate-height/index.js +10 -4
- package/bpk-animate-height/src/AnimateHeight.js +88 -93
- package/bpk-component-accordion/index.js +33 -30
- package/bpk-component-accordion/src/BpkAccordion.js +51 -43
- package/bpk-component-accordion/src/BpkAccordionItem.js +104 -123
- package/bpk-component-accordion/src/withAccordionItemState.js +68 -77
- package/bpk-component-accordion/src/withSingleItemAccordionState.js +67 -77
- package/bpk-component-aria-live/index.js +34 -0
- package/bpk-component-aria-live/src/BpkAriaLive.js +57 -0
- package/bpk-component-autosuggest/index.js +17 -8
- package/bpk-component-autosuggest/src/BpkAutosuggest.js +40 -37
- package/bpk-component-autosuggest/src/BpkAutosuggestSuggestion.js +64 -70
- package/bpk-component-badge/index.js +42 -0
- package/bpk-component-badge/src/BpkBadge.js +72 -0
- package/bpk-component-badge/{index.ts → src/themeAttributes.js} +8 -7
- package/bpk-component-banner-alert/index.js +62 -0
- package/bpk-component-banner-alert/src/AnimateAndFade.js +155 -0
- package/bpk-component-banner-alert/src/BpkBannerAlert.js +57 -0
- package/bpk-component-banner-alert/src/BpkBannerAlertDismissable.js +47 -0
- package/bpk-component-banner-alert/src/BpkBannerAlertExpandable.js +52 -0
- package/bpk-component-banner-alert/src/BpkBannerAlertInner.js +192 -0
- package/{bpk-component-aria-live/index.ts → bpk-component-banner-alert/src/common-types.js} +14 -8
- package/{bpk-component-accordion/src/BpkAccordion.module.scss → bpk-component-banner-alert/src/themeAttributes.js} +8 -10
- package/bpk-component-banner-alert/src/withBannerAlertState.js +128 -0
- package/bpk-component-barchart/index.js +52 -21
- package/bpk-component-barchart/src/BpkBarchart.js +233 -304
- package/bpk-component-barchart/src/BpkBarchartBar.js +86 -113
- package/bpk-component-barchart/src/BpkBarchartBars.js +121 -128
- package/bpk-component-barchart/src/BpkBarchartDefs.js +40 -26
- package/bpk-component-barchart/src/BpkChartAxis.js +103 -132
- package/bpk-component-barchart/src/BpkChartDataTable.js +51 -52
- package/bpk-component-barchart/src/BpkChartGridLines.js +70 -90
- package/bpk-component-barchart/src/BpkChartMargin.js +38 -32
- package/bpk-component-barchart/src/RTLtransforms.js +37 -31
- package/bpk-component-barchart/src/customPropTypes.js +15 -24
- package/bpk-component-barchart/src/orientation.js +10 -6
- package/bpk-component-barchart/src/themeAttributes.js +8 -9
- package/bpk-component-barchart/src/utils.js +14 -14
- package/bpk-component-blockquote/index.js +17 -6
- package/bpk-component-blockquote/src/BpkBlockquote.js +22 -23
- package/bpk-component-blockquote/src/themeAttributes.js +8 -2
- package/{bpk-component-graphic-promotion/index.ts → bpk-component-boilerplate/index.d.ts} +5 -7
- package/{bpk-component-badge/src/themeAttributes-test.tsx → bpk-component-boilerplate/index.js} +10 -12
- package/bpk-component-boilerplate/src/BpkBoilerplate.d.ts +29 -0
- package/bpk-component-boilerplate/src/BpkBoilerplate.js +57 -0
- package/{bpk-component-chip/src/BpkSelectableChip.module.scss → bpk-component-boilerplate/src/BpkBoilerplate.module.css} +6 -11
- package/bpk-component-breadcrumb/index.js +17 -14
- package/bpk-component-breadcrumb/src/BpkBreadcrumb.js +80 -87
- package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.js +66 -64
- package/bpk-component-breakpoint/index.js +34 -0
- package/bpk-component-breakpoint/src/BpkBreakpoint.js +58 -0
- package/bpk-component-button/BpkButtonDestructive.js +12 -20
- package/bpk-component-button/BpkButtonFeatured.js +12 -20
- package/bpk-component-button/BpkButtonLink.js +12 -20
- package/bpk-component-button/BpkButtonLinkOnDark.js +12 -20
- package/bpk-component-button/BpkButtonPrimary.js +12 -20
- package/bpk-component-button/BpkButtonPrimaryOnDark.js +12 -20
- package/bpk-component-button/BpkButtonPrimaryOnLight.js +12 -20
- package/bpk-component-button/BpkButtonSecondary.js +12 -20
- package/bpk-component-button/BpkButtonSecondaryOnDark.js +12 -20
- package/bpk-component-button/index.js +143 -42
- package/bpk-component-button/src/BpkButton.js +54 -77
- package/bpk-component-button/src/BpkButtonBase.js +58 -62
- package/bpk-component-button/src/BpkButtonDestructive.js +35 -20
- package/bpk-component-button/src/BpkButtonFeatured.js +35 -20
- package/bpk-component-button/src/BpkButtonLink.js +37 -24
- package/bpk-component-button/src/BpkButtonLinkOnDark.js +37 -24
- package/bpk-component-button/src/BpkButtonPrimary.js +35 -29
- package/bpk-component-button/src/BpkButtonPrimaryOnDark.js +35 -20
- package/bpk-component-button/src/BpkButtonPrimaryOnLight.js +35 -20
- package/bpk-component-button/src/BpkButtonSecondary.js +35 -20
- package/bpk-component-button/src/BpkButtonSecondaryOnDark.js +35 -20
- package/bpk-component-button/src/BpkButtonV2/BpkButton.js +77 -0
- package/bpk-component-button/src/BpkButtonV2/{common-types.tsx → common-types.js} +13 -26
- package/bpk-component-button/src/common-types.js +22 -35
- package/bpk-component-button/src/commonButtonTests.js +83 -58
- package/bpk-component-button/src/themeAttributes.js +22 -74
- package/bpk-component-button/themeAttributes.js +53 -29
- package/bpk-component-calendar/index.js +124 -0
- package/bpk-component-calendar/src/BpkCalendarContainer.d.ts +2 -0
- package/bpk-component-calendar/src/BpkCalendarContainer.js +286 -0
- package/bpk-component-calendar/src/BpkCalendarDate.js +169 -0
- package/bpk-component-calendar/src/BpkCalendarGrid.js +142 -0
- package/bpk-component-calendar/src/BpkCalendarGridHeader.js +78 -0
- package/bpk-component-calendar/src/BpkCalendarGridTransition.js +172 -0
- package/bpk-component-calendar/src/BpkCalendarNav.js +165 -0
- package/bpk-component-calendar/src/Week.js +333 -0
- package/bpk-component-calendar/src/composeCalendar.js +132 -0
- package/bpk-component-calendar/src/custom-proptypes-legacy.js +72 -81
- package/{bpk-scrim-utils/index.ts → bpk-component-calendar/src/custom-proptypes.js} +10 -5
- package/bpk-component-calendar/src/date-utils.js +301 -0
- package/{bpk-component-banner-alert/src/themeAttributes-test.ts → bpk-component-calendar/src/themeAttributes.js} +8 -13
- package/bpk-component-calendar/src/{utils.ts → utils.js} +19 -24
- package/bpk-component-calendar/test-utils.js +256 -0
- package/bpk-component-card/index.js +49 -0
- package/bpk-component-card/src/BpkCard.js +93 -0
- package/bpk-component-card/src/BpkCardWrapper.js +53 -0
- package/bpk-component-card/src/BpkCardWrapper.module.css +1 -1
- package/bpk-component-card/src/BpkDividedCard.js +74 -0
- package/bpk-component-checkbox/index.js +17 -8
- package/bpk-component-checkbox/src/BpkCheckbox.js +74 -100
- package/bpk-component-checkbox/src/themeAttributes.js +8 -4
- package/bpk-component-chip/index.js +55 -0
- package/bpk-component-chip/src/BpkDismissibleChip.js +69 -0
- package/bpk-component-chip/src/BpkDropdownChip.js +60 -0
- package/bpk-component-chip/src/BpkSelectableChip.js +76 -0
- package/bpk-component-chip/src/commonTypes.js +57 -0
- package/{bpk-component-badge/src/accessibility-test.tsx → bpk-component-chip/src/themeAttributes.js} +8 -13
- package/bpk-component-close-button/index.js +10 -6
- package/bpk-component-close-button/src/BpkCloseButton.js +49 -44
- package/bpk-component-code/index.js +19 -22
- package/bpk-component-code/src/BpkCode.js +39 -32
- package/bpk-component-code/src/BpkCodeBlock.js +43 -36
- package/bpk-component-content-cards/index.js +10 -4
- package/bpk-component-content-cards/src/BpkContentCard.js +43 -60
- package/bpk-component-content-cards/src/BpkContentCards.js +37 -44
- package/bpk-component-datatable/index.js +19 -20
- package/bpk-component-datatable/src/BpkDataTable.js +145 -188
- package/bpk-component-datatable/src/BpkDataTableColumn.js +48 -44
- package/bpk-component-datatable/src/BpkDataTableHeader.js +79 -108
- package/bpk-component-datatable/src/common-types.js +1 -72
- package/bpk-component-datatable/src/hasChildrenOfType.js +25 -41
- package/bpk-component-datatable/src/sort-types.js +10 -16
- package/bpk-component-datatable/src/utils.js +93 -65
- package/bpk-component-datepicker/index.js +41 -0
- package/bpk-component-datepicker/src/BpkDatepicker.js +277 -0
- package/bpk-component-datepicker/src/{themeAttributes.ts → themeAttributes.js} +11 -12
- package/bpk-component-description-list/index.js +26 -22
- package/bpk-component-description-list/src/BpkDescriptionDetails.js +10 -4
- package/bpk-component-description-list/src/BpkDescriptionList.js +10 -4
- package/bpk-component-description-list/src/BpkDescriptionTerm.js +10 -4
- package/bpk-component-description-list/src/ComponentFactory.js +36 -25
- package/bpk-component-dialog/index.js +34 -0
- package/bpk-component-dialog/src/BpkDialog.js +78 -0
- package/bpk-component-dialog/src/BpkDialogInner.js +69 -0
- package/{bpk-scrim-utils/src/BpkScrim-test.tsx → bpk-component-dialog/src/common-types.js} +12 -10
- package/bpk-component-drawer/index.js +17 -8
- package/bpk-component-drawer/src/BpkDrawer.js +83 -84
- package/bpk-component-drawer/src/BpkDrawerContent.js +104 -125
- package/bpk-component-drawer/src/themeAttributes.js +9 -6
- package/bpk-component-fieldset/index.js +31 -13
- package/bpk-component-fieldset/src/BpkFieldset.js +96 -128
- package/bpk-component-fieldset/src/themeAttributes.js +8 -2
- package/bpk-component-flare/index.js +23 -8
- package/bpk-component-flare/src/BpkContentBubble.js +58 -61
- package/bpk-component-flare/src/BpkFlareBar.js +48 -42
- package/bpk-component-flare/src/__generated__/js/corner-radius.js +31 -5
- package/bpk-component-flare/src/__generated__/js/pointer.js +31 -5
- package/bpk-component-floating-notification/index.js +10 -8
- package/bpk-component-floating-notification/src/BpkFloatingNotification.js +91 -101
- package/bpk-component-form-validation/index.js +17 -6
- package/bpk-component-form-validation/src/BpkFormValidation.js +60 -59
- package/bpk-component-form-validation/src/themeAttributes.js +8 -2
- package/bpk-component-graphic-promotion/index.js +34 -0
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.js +152 -0
- package/bpk-component-grid-toggle/index.js +10 -4
- package/bpk-component-grid-toggle/src/BpkGridToggle.js +65 -75
- package/bpk-component-horizontal-nav/index.js +30 -15
- package/bpk-component-horizontal-nav/src/BpkHorizontalNav.js +132 -170
- package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.js +99 -121
- package/bpk-component-icon/{all.tsx → all.js} +14 -10
- package/bpk-component-icon/index.js +55 -0
- package/bpk-component-icon/lg/accessibility.js +37 -8
- package/bpk-component-icon/lg/account--add.js +37 -8
- package/bpk-component-icon/lg/account--female.js +37 -8
- package/bpk-component-icon/lg/account--id-card.js +37 -8
- package/bpk-component-icon/lg/account--name.js +37 -8
- package/bpk-component-icon/lg/account--permit.js +37 -8
- package/bpk-component-icon/lg/account-circle.js +37 -8
- package/bpk-component-icon/lg/account.js +37 -8
- package/bpk-component-icon/lg/add-circle.js +37 -8
- package/bpk-component-icon/lg/adult.js +37 -8
- package/bpk-component-icon/lg/aircon.js +37 -8
- package/bpk-component-icon/lg/aircraft.js +39 -8
- package/bpk-component-icon/lg/airline--multiple.js +37 -8
- package/bpk-component-icon/lg/airline.js +37 -8
- package/bpk-component-icon/lg/airports.js +37 -8
- package/bpk-component-icon/lg/alert--active.js +37 -8
- package/bpk-component-icon/lg/alert--add.js +37 -8
- package/bpk-component-icon/lg/alert--expired.js +37 -8
- package/bpk-component-icon/lg/alert--remove.js +37 -8
- package/bpk-component-icon/lg/arrow-down.js +37 -8
- package/bpk-component-icon/lg/arrow-left.js +37 -8
- package/bpk-component-icon/lg/arrow-right.js +37 -8
- package/bpk-component-icon/lg/arrow-up.js +37 -8
- package/bpk-component-icon/lg/award.js +37 -8
- package/bpk-component-icon/lg/baby-carriage.js +37 -8
- package/bpk-component-icon/lg/baggage--add.js +37 -8
- package/bpk-component-icon/lg/baggage--remove.js +37 -8
- package/bpk-component-icon/lg/baggage-cabin-add.js +37 -8
- package/bpk-component-icon/lg/baggage-cabin-not-included.js +37 -8
- package/bpk-component-icon/lg/baggage-cabin.js +37 -8
- package/bpk-component-icon/lg/baggage-checked-add.js +37 -8
- package/bpk-component-icon/lg/baggage-checked-not-included.js +37 -8
- package/bpk-component-icon/lg/baggage-checked.js +37 -8
- package/bpk-component-icon/lg/baggage-cross.js +37 -8
- package/bpk-component-icon/lg/baggage-generic.js +37 -8
- package/bpk-component-icon/lg/baggage-tick.js +37 -8
- package/bpk-component-icon/lg/baggage.js +37 -8
- package/bpk-component-icon/lg/bar.js +37 -8
- package/bpk-component-icon/lg/beach.js +39 -8
- package/bpk-component-icon/lg/beer.js +37 -8
- package/bpk-component-icon/lg/breakfast-cross.js +37 -8
- package/bpk-component-icon/lg/breakfast-tick.js +37 -8
- package/bpk-component-icon/lg/bus.js +37 -8
- package/bpk-component-icon/lg/business.js +37 -8
- package/bpk-component-icon/lg/cafe.js +37 -8
- package/bpk-component-icon/lg/calendar.js +37 -8
- package/bpk-component-icon/lg/call-back.js +39 -8
- package/bpk-component-icon/lg/camera.js +37 -8
- package/bpk-component-icon/lg/camper-van.js +39 -8
- package/bpk-component-icon/lg/car-door.js +37 -8
- package/bpk-component-icon/lg/car-wash.js +39 -8
- package/bpk-component-icon/lg/cars-flexible.js +37 -8
- package/bpk-component-icon/lg/cars.js +39 -8
- package/bpk-component-icon/lg/center-location.js +37 -8
- package/bpk-component-icon/lg/chart.js +37 -8
- package/bpk-component-icon/lg/chauffeur.js +37 -8
- package/bpk-component-icon/lg/chevron-down.js +37 -8
- package/bpk-component-icon/lg/chevron-left.js +37 -8
- package/bpk-component-icon/lg/chevron-right.js +37 -8
- package/bpk-component-icon/lg/chevron-up.js +37 -8
- package/bpk-component-icon/lg/child-seat.js +37 -8
- package/bpk-component-icon/lg/child.js +37 -8
- package/bpk-component-icon/lg/city-center.js +37 -8
- package/bpk-component-icon/lg/city.js +37 -8
- package/bpk-component-icon/lg/clean-policy.js +37 -8
- package/bpk-component-icon/lg/clean.js +41 -8
- package/bpk-component-icon/lg/cleaning-medical.js +37 -8
- package/bpk-component-icon/lg/cloakroom.js +41 -8
- package/bpk-component-icon/lg/close-circle.js +37 -8
- package/bpk-component-icon/lg/close.js +37 -8
- package/bpk-component-icon/lg/collapse.js +37 -8
- package/bpk-component-icon/lg/content--copy.js +39 -8
- package/bpk-component-icon/lg/content--event.js +37 -8
- package/bpk-component-icon/lg/content--guides.js +37 -8
- package/bpk-component-icon/lg/currency.js +37 -8
- package/bpk-component-icon/lg/data.js +39 -8
- package/bpk-component-icon/lg/deals.js +37 -8
- package/bpk-component-icon/lg/depart.js +39 -8
- package/bpk-component-icon/lg/device-mid.js +37 -8
- package/bpk-component-icon/lg/device-wide.js +37 -8
- package/bpk-component-icon/lg/direct.js +37 -8
- package/bpk-component-icon/lg/document-csv.js +37 -8
- package/bpk-component-icon/lg/document-pdf.js +37 -8
- package/bpk-component-icon/lg/download.js +39 -8
- package/bpk-component-icon/lg/duration.js +37 -8
- package/bpk-component-icon/lg/eco-leaf.js +37 -8
- package/bpk-component-icon/lg/edit.js +37 -8
- package/bpk-component-icon/lg/education.js +39 -8
- package/bpk-component-icon/lg/electric.js +37 -8
- package/bpk-component-icon/lg/end-call.js +37 -8
- package/bpk-component-icon/lg/estimated.js +37 -8
- package/bpk-component-icon/lg/exclamation-circle.js +37 -8
- package/bpk-component-icon/lg/exclamation.js +37 -8
- package/bpk-component-icon/lg/expand.js +37 -8
- package/bpk-component-icon/lg/explore.js +37 -8
- package/bpk-component-icon/lg/face--blank.js +37 -8
- package/bpk-component-icon/lg/face--happy.js +37 -8
- package/bpk-component-icon/lg/face--sad.js +37 -8
- package/bpk-component-icon/lg/face-id.js +37 -8
- package/bpk-component-icon/lg/face-mask.js +37 -8
- package/bpk-component-icon/lg/family.js +37 -8
- package/bpk-component-icon/lg/fast-track.js +39 -8
- package/bpk-component-icon/lg/fast-train.js +39 -8
- package/bpk-component-icon/lg/filter.js +38 -8
- package/bpk-component-icon/lg/fingerprint.js +37 -8
- package/bpk-component-icon/lg/flag.js +37 -8
- package/bpk-component-icon/lg/flask.js +37 -8
- package/bpk-component-icon/lg/flight-flexible.js +37 -8
- package/bpk-component-icon/lg/flight-landing.js +41 -8
- package/bpk-component-icon/lg/flight-takeoff.js +39 -8
- package/bpk-component-icon/lg/flight.js +39 -8
- package/bpk-component-icon/lg/food.js +37 -8
- package/bpk-component-icon/lg/gears-automatic-circle.js +37 -8
- package/bpk-component-icon/lg/gears-automatic.js +37 -8
- package/bpk-component-icon/lg/gears-manual-circle.js +37 -8
- package/bpk-component-icon/lg/gears-manual.js +37 -8
- package/bpk-component-icon/lg/globe.js +37 -8
- package/bpk-component-icon/lg/grid-layout.js +37 -8
- package/bpk-component-icon/lg/headset.js +37 -8
- package/bpk-component-icon/lg/health-fitness.js +37 -8
- package/bpk-component-icon/lg/heart--outline.js +37 -8
- package/bpk-component-icon/lg/heart.js +37 -8
- package/bpk-component-icon/lg/help-circle.js +37 -8
- package/bpk-component-icon/lg/help.js +37 -8
- package/bpk-component-icon/lg/hide.js +37 -8
- package/bpk-component-icon/lg/hotel-flexible.js +37 -8
- package/bpk-component-icon/lg/hotels--disabled-facilities.js +37 -8
- package/bpk-component-icon/lg/hotels--jacuzzi.js +37 -8
- package/bpk-component-icon/lg/hotels--pets-allowed.js +37 -8
- package/bpk-component-icon/lg/hotels--smoking.js +37 -8
- package/bpk-component-icon/lg/hotels.js +37 -8
- package/bpk-component-icon/lg/infant.js +37 -8
- package/bpk-component-icon/lg/information--language-alert.js +37 -8
- package/bpk-component-icon/lg/information--language-question.js +37 -8
- package/bpk-component-icon/lg/information--language.js +37 -8
- package/bpk-component-icon/lg/information-circle.js +37 -8
- package/bpk-component-icon/lg/information.js +37 -8
- package/bpk-component-icon/lg/insurance.js +37 -8
- package/bpk-component-icon/lg/key.js +37 -8
- package/bpk-component-icon/lg/keypad.js +37 -8
- package/bpk-component-icon/lg/landmark.js +37 -8
- package/bpk-component-icon/lg/language.js +37 -8
- package/bpk-component-icon/lg/legroom--extra.js +39 -8
- package/bpk-component-icon/lg/legroom--normal.js +39 -8
- package/bpk-component-icon/lg/legroom--reduced.js +39 -8
- package/bpk-component-icon/lg/leisure.js +37 -8
- package/bpk-component-icon/lg/lightning.js +37 -8
- package/bpk-component-icon/lg/list.js +37 -8
- package/bpk-component-icon/lg/location.js +37 -8
- package/bpk-component-icon/lg/lock.js +37 -8
- package/bpk-component-icon/lg/logout.js +39 -8
- package/bpk-component-icon/lg/long-arrow-down.js +37 -8
- package/bpk-component-icon/lg/long-arrow-left.js +37 -8
- package/bpk-component-icon/lg/long-arrow-right.js +37 -8
- package/bpk-component-icon/lg/long-arrow-up.js +37 -8
- package/bpk-component-icon/lg/lounge.js +39 -8
- package/bpk-component-icon/lg/luggageall.js +37 -8
- package/bpk-component-icon/lg/mail.js +39 -8
- package/bpk-component-icon/lg/map.js +37 -8
- package/bpk-component-icon/lg/meal.js +37 -8
- package/bpk-component-icon/lg/media.js +37 -8
- package/bpk-component-icon/lg/menu--horizontal.js +37 -8
- package/bpk-component-icon/lg/menu--vertical.js +37 -8
- package/bpk-component-icon/lg/menu.js +37 -8
- package/bpk-component-icon/lg/mileage.js +39 -8
- package/bpk-component-icon/lg/minus.js +37 -8
- package/bpk-component-icon/lg/mobile.js +37 -8
- package/bpk-component-icon/lg/money.js +37 -8
- package/bpk-component-icon/lg/multiple-bookings.js +37 -8
- package/bpk-component-icon/lg/music.js +37 -8
- package/bpk-component-icon/lg/mute.js +37 -8
- package/bpk-component-icon/lg/native-android--back.js +37 -8
- package/bpk-component-icon/lg/native-android--close.js +37 -8
- package/bpk-component-icon/lg/native-android--forward.js +37 -8
- package/bpk-component-icon/lg/native-ios-close.js +37 -8
- package/bpk-component-icon/lg/navigation.js +37 -8
- package/bpk-component-icon/lg/new-window.js +39 -8
- package/bpk-component-icon/lg/news.js +37 -8
- package/bpk-component-icon/lg/night.js +37 -8
- package/bpk-component-icon/lg/not-allowed.js +37 -8
- package/bpk-component-icon/lg/onsen.js +37 -8
- package/bpk-component-icon/lg/origin.js +37 -8
- package/bpk-component-icon/lg/paid.js +37 -8
- package/bpk-component-icon/lg/paperclip.js +37 -8
- package/bpk-component-icon/lg/parking.js +37 -8
- package/bpk-component-icon/lg/passport.js +37 -8
- package/bpk-component-icon/lg/pause.js +37 -8
- package/bpk-component-icon/lg/payment-card.js +37 -8
- package/bpk-component-icon/lg/petrol.js +37 -8
- package/bpk-component-icon/lg/phone-call.js +37 -8
- package/bpk-component-icon/lg/picture.js +37 -8
- package/bpk-component-icon/lg/pin.js +37 -8
- package/bpk-component-icon/lg/plane-seat.js +39 -8
- package/bpk-component-icon/lg/play.js +37 -8
- package/bpk-component-icon/lg/plus.js +37 -8
- package/bpk-component-icon/lg/policy.js +37 -8
- package/bpk-component-icon/lg/powerplug.js +37 -8
- package/bpk-component-icon/lg/ppe.js +37 -8
- package/bpk-component-icon/lg/price-alerts.js +37 -8
- package/bpk-component-icon/lg/price-tag.js +37 -8
- package/bpk-component-icon/lg/print.js +37 -8
- package/bpk-component-icon/lg/recent-searches.js +37 -8
- package/bpk-component-icon/lg/redo.js +37 -8
- package/bpk-component-icon/lg/refresh.js +37 -8
- package/bpk-component-icon/lg/return.js +39 -8
- package/bpk-component-icon/lg/room.js +37 -8
- package/bpk-component-icon/lg/scales.js +39 -8
- package/bpk-component-icon/lg/search.js +37 -8
- package/bpk-component-icon/lg/self-service.js +37 -8
- package/bpk-component-icon/lg/send-message.js +37 -8
- package/bpk-component-icon/lg/services.js +37 -8
- package/bpk-component-icon/lg/settings.js +37 -8
- package/bpk-component-icon/lg/share--android.js +37 -8
- package/bpk-component-icon/lg/share--ios.js +39 -8
- package/bpk-component-icon/lg/share.js +37 -8
- package/bpk-component-icon/lg/single-booking.js +37 -8
- package/bpk-component-icon/lg/social-distancing.js +39 -8
- package/bpk-component-icon/lg/social-like.js +37 -8
- package/bpk-component-icon/lg/sort-down.js +37 -8
- package/bpk-component-icon/lg/sort-up.js +37 -8
- package/bpk-component-icon/lg/sort.js +37 -8
- package/bpk-component-icon/lg/speaker.js +39 -8
- package/bpk-component-icon/lg/star-half.js +37 -8
- package/bpk-component-icon/lg/star-outline.js +37 -8
- package/bpk-component-icon/lg/star.js +37 -8
- package/bpk-component-icon/lg/stops.js +37 -8
- package/bpk-component-icon/lg/swap--horizontal.js +37 -8
- package/bpk-component-icon/lg/swap--vertical.js +37 -8
- package/bpk-component-icon/lg/swap.js +37 -8
- package/bpk-component-icon/lg/taxi.js +39 -8
- package/bpk-component-icon/lg/thumbs-down.js +37 -8
- package/bpk-component-icon/lg/thumbs-up.js +37 -8
- package/bpk-component-icon/lg/tick-circle.js +37 -8
- package/bpk-component-icon/lg/tick.js +37 -8
- package/bpk-component-icon/lg/ticket-flexible.js +37 -8
- package/bpk-component-icon/lg/ticket.js +37 -8
- package/bpk-component-icon/lg/time.js +37 -8
- package/bpk-component-icon/lg/toilets.js +37 -8
- package/bpk-component-icon/lg/train.js +37 -8
- package/bpk-component-icon/lg/transmission-automatic.js +37 -8
- package/bpk-component-icon/lg/transmission-manual.js +37 -8
- package/bpk-component-icon/lg/trash.js +37 -8
- package/bpk-component-icon/lg/trend--down.js +37 -8
- package/bpk-component-icon/lg/trend--steady.js +37 -8
- package/bpk-component-icon/lg/trend--will-rise.js +37 -8
- package/bpk-component-icon/lg/trend.js +37 -8
- package/bpk-component-icon/lg/trips.js +37 -8
- package/bpk-component-icon/lg/undo.js +37 -8
- package/bpk-component-icon/lg/unlock.js +37 -8
- package/bpk-component-icon/lg/unmute.js +39 -8
- package/bpk-component-icon/lg/upgrade.js +37 -8
- package/bpk-component-icon/lg/upload.js +38 -8
- package/bpk-component-icon/lg/use-location.js +37 -8
- package/bpk-component-icon/lg/view.js +37 -8
- package/bpk-component-icon/lg/virus.js +37 -8
- package/bpk-component-icon/lg/wallet.js +39 -8
- package/bpk-component-icon/lg/weather--clear.js +37 -8
- package/bpk-component-icon/lg/weather--cloudy.js +39 -8
- package/bpk-component-icon/lg/weather--fog.js +37 -8
- package/bpk-component-icon/lg/weather--partly-cloudy.js +39 -8
- package/bpk-component-icon/lg/weather--rain.js +41 -8
- package/bpk-component-icon/lg/weather--snow.js +37 -8
- package/bpk-component-icon/lg/weather--thunderstorm.js +41 -8
- package/bpk-component-icon/lg/weather--tornado.js +37 -8
- package/bpk-component-icon/lg/weather--wind.js +37 -8
- package/bpk-component-icon/lg/weather.js +37 -8
- package/bpk-component-icon/lg/wifi.js +37 -8
- package/bpk-component-icon/lg/window--reduce.js +39 -8
- package/bpk-component-icon/lg/window.js +37 -8
- package/bpk-component-icon/lg/world--amer.js +37 -8
- package/bpk-component-icon/lg/world--apac.js +37 -8
- package/bpk-component-icon/lg/world--emea.js +39 -8
- package/bpk-component-icon/sm/accessibility.js +38 -8
- package/bpk-component-icon/sm/account--add.js +38 -8
- package/bpk-component-icon/sm/account--female.js +38 -8
- package/bpk-component-icon/sm/account--id-card.js +38 -8
- package/bpk-component-icon/sm/account--name.js +38 -8
- package/bpk-component-icon/sm/account--permit.js +38 -8
- package/bpk-component-icon/sm/account-circle.js +38 -8
- package/bpk-component-icon/sm/account.js +38 -8
- package/bpk-component-icon/sm/add-circle.js +38 -8
- package/bpk-component-icon/sm/adult.js +38 -8
- package/bpk-component-icon/sm/aircon.js +38 -8
- package/bpk-component-icon/sm/aircraft.js +40 -8
- package/bpk-component-icon/sm/airline--multiple.js +38 -8
- package/bpk-component-icon/sm/airline.js +38 -8
- package/bpk-component-icon/sm/airports.js +38 -8
- package/bpk-component-icon/sm/alert--active.js +38 -8
- package/bpk-component-icon/sm/alert--add.js +38 -8
- package/bpk-component-icon/sm/alert--expired.js +38 -8
- package/bpk-component-icon/sm/alert--remove.js +38 -8
- package/bpk-component-icon/sm/arrow-down.js +38 -8
- package/bpk-component-icon/sm/arrow-left.js +38 -8
- package/bpk-component-icon/sm/arrow-right.js +38 -8
- package/bpk-component-icon/sm/arrow-up.js +38 -8
- package/bpk-component-icon/sm/award.js +38 -8
- package/bpk-component-icon/sm/baby-carriage.js +38 -8
- package/bpk-component-icon/sm/baggage--add.js +38 -8
- package/bpk-component-icon/sm/baggage--remove.js +38 -8
- package/bpk-component-icon/sm/baggage-cabin-add.js +38 -8
- package/bpk-component-icon/sm/baggage-cabin-not-included.js +41 -8
- package/bpk-component-icon/sm/baggage-cabin.js +38 -8
- package/bpk-component-icon/sm/baggage-checked-add.js +38 -8
- package/bpk-component-icon/sm/baggage-checked-not-included.js +41 -8
- package/bpk-component-icon/sm/baggage-checked.js +38 -8
- package/bpk-component-icon/sm/baggage-cross.js +38 -8
- package/bpk-component-icon/sm/baggage-generic.js +41 -8
- package/bpk-component-icon/sm/baggage-tick.js +38 -8
- package/bpk-component-icon/sm/baggage.js +38 -8
- package/bpk-component-icon/sm/bar.js +38 -8
- package/bpk-component-icon/sm/beach.js +40 -8
- package/bpk-component-icon/sm/beer.js +38 -8
- package/bpk-component-icon/sm/breakfast-cross.js +38 -8
- package/bpk-component-icon/sm/breakfast-tick.js +38 -8
- package/bpk-component-icon/sm/bus.js +40 -8
- package/bpk-component-icon/sm/business.js +38 -8
- package/bpk-component-icon/sm/cafe.js +38 -8
- package/bpk-component-icon/sm/calendar.js +38 -8
- package/bpk-component-icon/sm/call-back.js +40 -8
- package/bpk-component-icon/sm/camera.js +38 -8
- package/bpk-component-icon/sm/camper-van.js +40 -8
- package/bpk-component-icon/sm/car-door.js +38 -8
- package/bpk-component-icon/sm/car-wash.js +40 -8
- package/bpk-component-icon/sm/cars-flexible.js +38 -8
- package/bpk-component-icon/sm/cars.js +40 -8
- package/bpk-component-icon/sm/center-location.js +38 -8
- package/bpk-component-icon/sm/chart.js +38 -8
- package/bpk-component-icon/sm/chauffeur.js +40 -8
- package/bpk-component-icon/sm/chevron-down.js +38 -8
- package/bpk-component-icon/sm/chevron-left.js +38 -8
- package/bpk-component-icon/sm/chevron-right.js +38 -8
- package/bpk-component-icon/sm/chevron-up.js +38 -8
- package/bpk-component-icon/sm/child-seat.js +38 -8
- package/bpk-component-icon/sm/child.js +38 -8
- package/bpk-component-icon/sm/city-center.js +38 -8
- package/bpk-component-icon/sm/city.js +38 -8
- package/bpk-component-icon/sm/clean-policy.js +38 -8
- package/bpk-component-icon/sm/clean.js +40 -8
- package/bpk-component-icon/sm/cleaning-medical.js +38 -8
- package/bpk-component-icon/sm/cloakroom.js +38 -8
- package/bpk-component-icon/sm/close-circle.js +38 -8
- package/bpk-component-icon/sm/close.js +38 -8
- package/bpk-component-icon/sm/collapse.js +38 -8
- package/bpk-component-icon/sm/content--copy.js +40 -8
- package/bpk-component-icon/sm/content--event.js +38 -8
- package/bpk-component-icon/sm/content--guides.js +38 -8
- package/bpk-component-icon/sm/currency.js +38 -8
- package/bpk-component-icon/sm/data.js +40 -8
- package/bpk-component-icon/sm/deals.js +38 -8
- package/bpk-component-icon/sm/depart.js +42 -8
- package/bpk-component-icon/sm/device-mid.js +38 -8
- package/bpk-component-icon/sm/device-wide.js +38 -8
- package/bpk-component-icon/sm/direct.js +40 -8
- package/bpk-component-icon/sm/document-csv.js +38 -8
- package/bpk-component-icon/sm/document-pdf.js +38 -8
- package/bpk-component-icon/sm/download.js +40 -8
- package/bpk-component-icon/sm/duration.js +38 -8
- package/bpk-component-icon/sm/eco-leaf.js +38 -8
- package/bpk-component-icon/sm/edit.js +38 -8
- package/bpk-component-icon/sm/education.js +40 -8
- package/bpk-component-icon/sm/electric.js +38 -8
- package/bpk-component-icon/sm/end-call.js +38 -8
- package/bpk-component-icon/sm/estimated.js +38 -8
- package/bpk-component-icon/sm/exclamation-circle.js +38 -8
- package/bpk-component-icon/sm/exclamation.js +38 -8
- package/bpk-component-icon/sm/expand.js +38 -8
- package/bpk-component-icon/sm/explore.js +38 -8
- package/bpk-component-icon/sm/face--blank.js +38 -8
- package/bpk-component-icon/sm/face--happy.js +38 -8
- package/bpk-component-icon/sm/face--sad.js +38 -8
- package/bpk-component-icon/sm/face-id.js +38 -8
- package/bpk-component-icon/sm/face-mask.js +38 -8
- package/bpk-component-icon/sm/family.js +38 -8
- package/bpk-component-icon/sm/fast-track.js +40 -8
- package/bpk-component-icon/sm/fast-train.js +40 -8
- package/bpk-component-icon/sm/filter.js +39 -8
- package/bpk-component-icon/sm/fingerprint.js +38 -8
- package/bpk-component-icon/sm/flag.js +38 -8
- package/bpk-component-icon/sm/flask.js +38 -8
- package/bpk-component-icon/sm/flight-flexible.js +38 -8
- package/bpk-component-icon/sm/flight-landing.js +42 -8
- package/bpk-component-icon/sm/flight-takeoff.js +40 -8
- package/bpk-component-icon/sm/flight.js +40 -8
- package/bpk-component-icon/sm/food.js +38 -8
- package/bpk-component-icon/sm/gears-automatic-circle.js +38 -8
- package/bpk-component-icon/sm/gears-automatic.js +38 -8
- package/bpk-component-icon/sm/gears-manual-circle.js +38 -8
- package/bpk-component-icon/sm/gears-manual.js +38 -8
- package/bpk-component-icon/sm/globe.js +38 -8
- package/bpk-component-icon/sm/grid-layout.js +38 -8
- package/bpk-component-icon/sm/headset.js +38 -8
- package/bpk-component-icon/sm/health-fitness.js +38 -8
- package/bpk-component-icon/sm/heart--outline.js +38 -8
- package/bpk-component-icon/sm/heart.js +38 -8
- package/bpk-component-icon/sm/help-circle.js +38 -8
- package/bpk-component-icon/sm/help.js +38 -8
- package/bpk-component-icon/sm/hide.js +38 -8
- package/bpk-component-icon/sm/hotel-flexible.js +38 -8
- package/bpk-component-icon/sm/hotels--disabled-facilities.js +38 -8
- package/bpk-component-icon/sm/hotels--jacuzzi.js +40 -8
- package/bpk-component-icon/sm/hotels--pets-allowed.js +38 -8
- package/bpk-component-icon/sm/hotels--smoking.js +38 -8
- package/bpk-component-icon/sm/hotels.js +38 -8
- package/bpk-component-icon/sm/infant.js +40 -8
- package/bpk-component-icon/sm/information--language-alert.js +38 -8
- package/bpk-component-icon/sm/information--language-question.js +38 -8
- package/bpk-component-icon/sm/information--language.js +38 -8
- package/bpk-component-icon/sm/information-circle.js +38 -8
- package/bpk-component-icon/sm/information.js +38 -8
- package/bpk-component-icon/sm/insurance.js +38 -8
- package/bpk-component-icon/sm/key.js +38 -8
- package/bpk-component-icon/sm/keypad.js +38 -8
- package/bpk-component-icon/sm/landmark.js +38 -8
- package/bpk-component-icon/sm/language.js +38 -8
- package/bpk-component-icon/sm/legroom--extra.js +40 -8
- package/bpk-component-icon/sm/legroom--normal.js +40 -8
- package/bpk-component-icon/sm/legroom--reduced.js +40 -8
- package/bpk-component-icon/sm/leisure.js +38 -8
- package/bpk-component-icon/sm/lightning.js +38 -8
- package/bpk-component-icon/sm/list.js +38 -8
- package/bpk-component-icon/sm/location.js +38 -8
- package/bpk-component-icon/sm/lock.js +38 -8
- package/bpk-component-icon/sm/logout.js +40 -8
- package/bpk-component-icon/sm/long-arrow-down.js +39 -8
- package/bpk-component-icon/sm/long-arrow-left.js +39 -8
- package/bpk-component-icon/sm/long-arrow-right.js +39 -8
- package/bpk-component-icon/sm/long-arrow-up.js +39 -8
- package/bpk-component-icon/sm/lounge.js +38 -8
- package/bpk-component-icon/sm/luggageall.js +38 -8
- package/bpk-component-icon/sm/mail.js +40 -8
- package/bpk-component-icon/sm/map.js +38 -8
- package/bpk-component-icon/sm/meal.js +38 -8
- package/bpk-component-icon/sm/media.js +38 -8
- package/bpk-component-icon/sm/menu--horizontal.js +38 -8
- package/bpk-component-icon/sm/menu--vertical.js +38 -8
- package/bpk-component-icon/sm/menu.js +38 -8
- package/bpk-component-icon/sm/mileage.js +40 -8
- package/bpk-component-icon/sm/minus.js +38 -8
- package/bpk-component-icon/sm/mobile.js +38 -8
- package/bpk-component-icon/sm/money.js +38 -8
- package/bpk-component-icon/sm/multiple-bookings.js +38 -8
- package/bpk-component-icon/sm/music.js +38 -8
- package/bpk-component-icon/sm/mute.js +38 -8
- package/bpk-component-icon/sm/native-android--back.js +38 -8
- package/bpk-component-icon/sm/native-android--close.js +38 -8
- package/bpk-component-icon/sm/native-android--forward.js +38 -8
- package/bpk-component-icon/sm/native-ios-close.js +38 -8
- package/bpk-component-icon/sm/navigation.js +38 -8
- package/bpk-component-icon/sm/new-window.js +44 -8
- package/bpk-component-icon/sm/news.js +38 -8
- package/bpk-component-icon/sm/night.js +38 -8
- package/bpk-component-icon/sm/not-allowed.js +38 -8
- package/bpk-component-icon/sm/onsen.js +40 -8
- package/bpk-component-icon/sm/origin.js +38 -8
- package/bpk-component-icon/sm/paid.js +38 -8
- package/bpk-component-icon/sm/paperclip.js +38 -8
- package/bpk-component-icon/sm/parking.js +38 -8
- package/bpk-component-icon/sm/passport.js +38 -8
- package/bpk-component-icon/sm/pause.js +38 -8
- package/bpk-component-icon/sm/payment-card.js +38 -8
- package/bpk-component-icon/sm/petrol.js +38 -8
- package/bpk-component-icon/sm/phone-call.js +38 -8
- package/bpk-component-icon/sm/picture.js +38 -8
- package/bpk-component-icon/sm/pin.js +38 -8
- package/bpk-component-icon/sm/plane-seat.js +40 -8
- package/bpk-component-icon/sm/play.js +38 -8
- package/bpk-component-icon/sm/plus.js +38 -8
- package/bpk-component-icon/sm/policy.js +38 -8
- package/bpk-component-icon/sm/powerplug.js +38 -8
- package/bpk-component-icon/sm/ppe.js +38 -8
- package/bpk-component-icon/sm/price-alerts.js +38 -8
- package/bpk-component-icon/sm/price-tag.js +38 -8
- package/bpk-component-icon/sm/print.js +38 -8
- package/bpk-component-icon/sm/recent-searches.js +38 -8
- package/bpk-component-icon/sm/redo.js +38 -8
- package/bpk-component-icon/sm/refresh.js +38 -8
- package/bpk-component-icon/sm/return.js +42 -8
- package/bpk-component-icon/sm/room.js +38 -8
- package/bpk-component-icon/sm/scales.js +38 -8
- package/bpk-component-icon/sm/search.js +38 -8
- package/bpk-component-icon/sm/self-service.js +38 -8
- package/bpk-component-icon/sm/send-message.js +38 -8
- package/bpk-component-icon/sm/services.js +38 -8
- package/bpk-component-icon/sm/settings.js +38 -8
- package/bpk-component-icon/sm/share--android.js +38 -8
- package/bpk-component-icon/sm/share--ios.js +42 -8
- package/bpk-component-icon/sm/share.js +38 -8
- package/bpk-component-icon/sm/single-booking.js +38 -8
- package/bpk-component-icon/sm/social-distancing.js +40 -8
- package/bpk-component-icon/sm/social-like.js +38 -8
- package/bpk-component-icon/sm/sort-down.js +38 -8
- package/bpk-component-icon/sm/sort-up.js +38 -8
- package/bpk-component-icon/sm/sort.js +38 -8
- package/bpk-component-icon/sm/speaker.js +38 -8
- package/bpk-component-icon/sm/star-half.js +38 -8
- package/bpk-component-icon/sm/star-outline.js +38 -8
- package/bpk-component-icon/sm/star.js +38 -8
- package/bpk-component-icon/sm/stops.js +38 -8
- package/bpk-component-icon/sm/swap--horizontal.js +39 -8
- package/bpk-component-icon/sm/swap--vertical.js +38 -8
- package/bpk-component-icon/sm/swap.js +39 -8
- package/bpk-component-icon/sm/taxi.js +40 -8
- package/bpk-component-icon/sm/thumbs-down.js +38 -8
- package/bpk-component-icon/sm/thumbs-up.js +38 -8
- package/bpk-component-icon/sm/tick-circle.js +38 -8
- package/bpk-component-icon/sm/tick.js +38 -8
- package/bpk-component-icon/sm/ticket-flexible.js +38 -8
- package/bpk-component-icon/sm/ticket.js +38 -8
- package/bpk-component-icon/sm/time.js +38 -8
- package/bpk-component-icon/sm/toilets.js +38 -8
- package/bpk-component-icon/sm/train.js +38 -8
- package/bpk-component-icon/sm/transmission-automatic.js +38 -8
- package/bpk-component-icon/sm/transmission-manual.js +38 -8
- package/bpk-component-icon/sm/trash.js +38 -8
- package/bpk-component-icon/sm/trend--down.js +38 -8
- package/bpk-component-icon/sm/trend--steady.js +39 -8
- package/bpk-component-icon/sm/trend--will-rise.js +38 -8
- package/bpk-component-icon/sm/trend.js +38 -8
- package/bpk-component-icon/sm/trips.js +38 -8
- package/bpk-component-icon/sm/undo.js +38 -8
- package/bpk-component-icon/sm/unlock.js +38 -8
- package/bpk-component-icon/sm/unmute.js +40 -8
- package/bpk-component-icon/sm/upgrade.js +38 -8
- package/bpk-component-icon/sm/upload.js +39 -8
- package/bpk-component-icon/sm/use-location.js +38 -8
- package/bpk-component-icon/sm/view.js +38 -8
- package/bpk-component-icon/sm/virus.js +38 -8
- package/bpk-component-icon/sm/wallet.js +38 -8
- package/bpk-component-icon/sm/weather--clear.js +38 -8
- package/bpk-component-icon/sm/weather--cloudy.js +40 -8
- package/bpk-component-icon/sm/weather--fog.js +38 -8
- package/bpk-component-icon/sm/weather--partly-cloudy.js +38 -8
- package/bpk-component-icon/sm/weather--rain.js +40 -8
- package/bpk-component-icon/sm/weather--snow.js +38 -8
- package/bpk-component-icon/sm/weather--thunderstorm.js +42 -8
- package/bpk-component-icon/sm/weather--tornado.js +38 -8
- package/bpk-component-icon/sm/weather--wind.js +40 -8
- package/bpk-component-icon/sm/weather.js +38 -8
- package/bpk-component-icon/sm/wifi.js +38 -8
- package/bpk-component-icon/sm/window--reduce.js +40 -8
- package/bpk-component-icon/sm/window.js +38 -8
- package/bpk-component-icon/sm/world--amer.js +38 -8
- package/bpk-component-icon/sm/world--apac.js +38 -8
- package/bpk-component-icon/sm/world--emea.js +38 -8
- package/bpk-component-icon/src/classNameModifierHOCFactory.js +52 -0
- package/bpk-component-icon/src/withAlignment.js +47 -0
- package/bpk-component-icon/src/withDescription.js +42 -0
- package/bpk-component-icon/src/withRtlSupport.js +31 -0
- package/bpk-component-image/index.js +55 -0
- package/bpk-component-image/src/BpkBackgroundImage.js +138 -0
- package/bpk-component-image/src/BpkImage.js +170 -0
- package/{bpk-component-input/src/themeAttributes-test.ts → bpk-component-image/src/BpkImageBorderRadiusStyles.js} +12 -7
- package/bpk-component-image/src/withLazyLoading.js +136 -0
- package/bpk-component-image/src/withLoadingBehavior.js +54 -0
- package/bpk-component-infinite-scroll/index.js +25 -12
- package/bpk-component-infinite-scroll/src/DataSource.js +30 -31
- package/bpk-component-infinite-scroll/src/intersection-observer.js +3 -1
- package/bpk-component-infinite-scroll/src/withInfiniteScroll.js +174 -224
- package/bpk-component-input/index.js +66 -0
- package/bpk-component-input/src/BpkClearButton.js +71 -0
- package/bpk-component-input/src/BpkInput.js +164 -0
- package/bpk-component-input/src/common-types.js +92 -0
- package/{bpk-component-badge/src/themeAttributes.tsx → bpk-component-input/src/themeAttributes.js} +8 -6
- package/bpk-component-input/src/withOpenEvents.js +149 -0
- package/bpk-component-label/index.js +10 -7
- package/bpk-component-label/src/BpkLabel.js +49 -50
- package/bpk-component-link/index.js +32 -11
- package/bpk-component-link/src/BpkButtonLink.js +50 -42
- package/bpk-component-link/src/BpkLink.js +67 -66
- package/bpk-component-link/src/themeAttributes.js +10 -18
- package/bpk-component-list/index.js +19 -23
- package/bpk-component-list/src/BpkList.js +36 -50
- package/bpk-component-list/src/BpkListItem.js +26 -33
- package/bpk-component-loading-button/index.js +17 -7
- package/bpk-component-loading-button/src/BpkLoadingButton.js +95 -133
- package/bpk-component-map/index.js +59 -28
- package/bpk-component-map/src/BpkBasicMapMarker.js +38 -32
- package/bpk-component-map/src/BpkIconMarker.js +65 -77
- package/bpk-component-map/src/BpkIconMarkerBackground.js +54 -49
- package/bpk-component-map/src/BpkMap.js +92 -149
- package/bpk-component-map/src/BpkOverlayView.js +39 -27
- package/bpk-component-map/src/BpkPriceMarker.js +71 -90
- package/bpk-component-map/src/DefaultLoadingElement.js +20 -17
- package/bpk-component-map/src/common-types.js +12 -14
- package/bpk-component-map/src/themeAttributes.js +13 -18
- package/bpk-component-map/src/withGoogleMapsScript.js +43 -44
- package/bpk-component-mobile-scroll-container/index.js +10 -6
- package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.js +137 -188
- package/bpk-component-modal/index.js +55 -0
- package/bpk-component-modal/src/BpkModal.js +94 -0
- package/bpk-component-modal/src/BpkModalInner.js +122 -0
- package/bpk-component-modal/src/BpkModalV2/BpKModal.module.css +18 -0
- package/bpk-component-modal/src/BpkModalV2/BpkModal.js +154 -0
- package/bpk-component-modal/src/customPropTypes.js +13 -29
- package/bpk-component-modal/src/legacy-prop-types.js +67 -59
- package/bpk-component-modal/src/{themeAttributes.ts → themeAttributes.js} +9 -4
- package/bpk-component-navigation-bar/index.js +31 -25
- package/bpk-component-navigation-bar/src/BpkNavigationBar.js +73 -89
- package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.js +42 -39
- package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.js +42 -36
- package/bpk-component-navigation-bar/src/themeAttributes.js +8 -16
- package/bpk-component-nudger/index.js +24 -9
- package/bpk-component-nudger/src/BpkConfigurableNudger.js +95 -123
- package/bpk-component-nudger/src/BpkNudger.js +58 -64
- package/bpk-component-nudger/src/common-types.js +19 -26
- package/bpk-component-nudger/src/themeAttributes.js +9 -6
- package/bpk-component-overlay/index.js +34 -0
- package/bpk-component-overlay/src/BpkOverlay.js +96 -0
- package/bpk-component-page-indicator/index.js +24 -11
- package/bpk-component-page-indicator/src/BpkPageIndicator.js +71 -110
- package/bpk-component-page-indicator/src/NavButton.js +48 -59
- package/bpk-component-pagination/index.js +17 -6
- package/bpk-component-pagination/src/BpkPagination.js +68 -65
- package/bpk-component-pagination/src/BpkPaginationBreak.js +20 -11
- package/bpk-component-pagination/src/BpkPaginationList.js +54 -70
- package/bpk-component-pagination/src/BpkPaginationNudger.js +47 -50
- package/bpk-component-pagination/src/BpkPaginationPage.js +37 -33
- package/bpk-component-pagination/src/themeAttributes.js +9 -9
- package/bpk-component-panel/index.js +10 -4
- package/bpk-component-panel/src/BpkPanel.js +40 -27
- package/bpk-component-phone-input/index.js +10 -9
- package/bpk-component-phone-input/src/BpkPhoneInput.js +127 -166
- package/bpk-component-popover/index.js +31 -17
- package/bpk-component-popover/src/BpkPopover.js +112 -142
- package/bpk-component-popover/src/BpkPopoverPortal.js +152 -186
- package/bpk-component-popover/src/constants.js +12 -7
- package/bpk-component-popover/src/keyboardFocusScope.js +19 -21
- package/bpk-component-popover/src/themeAttributes.js +9 -6
- package/bpk-component-price/index.js +23 -7
- package/bpk-component-price/src/BpkPrice.js +84 -119
- package/bpk-component-price/src/common-types.js +12 -9
- package/bpk-component-progress/index.js +17 -8
- package/bpk-component-progress/src/BpkProgress.js +119 -136
- package/bpk-component-progress/src/themeAttributes.js +8 -4
- package/bpk-component-radio/index.js +17 -8
- package/bpk-component-radio/src/BpkRadio.js +58 -67
- package/bpk-component-radio/src/BpkRadio.module.css +1 -1
- package/bpk-component-radio/src/themeAttributes.js +8 -4
- package/bpk-component-rating/index.js +23 -7
- package/bpk-component-rating/src/BpkRating.js +104 -138
- package/bpk-component-rating/src/common-types.js +14 -8
- package/bpk-component-rtl-toggle/index.js +34 -0
- package/bpk-component-rtl-toggle/src/BpkRtlToggle.js +81 -0
- package/bpk-component-rtl-toggle/src/updateOnDirectionChange.js +61 -0
- package/bpk-component-rtl-toggle/src/{utils.ts → utils.js} +12 -8
- package/bpk-component-scrollable-calendar/index.js +55 -0
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendar.js +29 -0
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate.js +49 -0
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.js +64 -0
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.js +158 -0
- package/bpk-component-scrollable-calendar/src/{utils.ts → utils.js} +14 -20
- package/bpk-component-scrollable-calendar/test-utils.js +228 -0
- package/bpk-component-section-list/index.js +24 -9
- package/bpk-component-section-list/src/BpkSectionList.js +28 -18
- package/bpk-component-section-list/src/BpkSectionListItem.js +67 -73
- package/bpk-component-section-list/src/BpkSectionListSection.js +49 -43
- package/bpk-component-select/index.js +17 -9
- package/bpk-component-select/src/BpkSelect.js +65 -95
- package/bpk-component-select/src/themeAttributes.js +8 -2
- package/bpk-component-skip-link/index.js +17 -8
- package/bpk-component-skip-link/src/BpkSkipLink.js +40 -34
- package/bpk-component-skip-link/src/themeAttributes.js +8 -2
- package/bpk-component-slider/index.js +17 -6
- package/bpk-component-slider/src/BpkSlider.js +39 -33
- package/bpk-component-slider/src/themeAttributes.js +8 -2
- package/bpk-component-spinner/index.js +40 -32
- package/bpk-component-spinner/src/BpkExtraLargeSpinner.js +95 -34
- package/bpk-component-spinner/src/BpkLargeSpinner.js +97 -38
- package/bpk-component-spinner/src/BpkSpinner.js +141 -37
- package/bpk-component-spinner/src/spinnerTypes.js +9 -5
- package/bpk-component-spinner/src/themeAttributes.js +8 -4
- package/bpk-component-split-input/index.js +17 -10
- package/bpk-component-split-input/src/BpkInputField.js +56 -41
- package/bpk-component-split-input/src/BpkSplitInput.js +223 -222
- package/bpk-component-star-rating/index.js +65 -21
- package/bpk-component-star-rating/src/BpkInteractiveStar.js +56 -60
- package/bpk-component-star-rating/src/BpkInteractiveStarRating.js +67 -83
- package/bpk-component-star-rating/src/BpkStar.js +73 -78
- package/bpk-component-star-rating/src/BpkStarRating.js +62 -85
- package/bpk-component-star-rating/src/themeAttributes.js +8 -4
- package/bpk-component-star-rating/src/withInteractiveStarRatingState.js +74 -90
- package/bpk-component-switch/index.js +17 -8
- package/bpk-component-switch/src/BpkSwitch.js +49 -47
- package/bpk-component-switch/src/themeAttributes.js +8 -2
- package/bpk-component-table/index.js +47 -34
- package/bpk-component-table/src/BpkTable.js +37 -31
- package/bpk-component-table/src/BpkTableBody.js +33 -29
- package/bpk-component-table/src/BpkTableCell.js +36 -31
- package/bpk-component-table/src/BpkTableHead.js +33 -29
- package/bpk-component-table/src/BpkTableHeadCell.js +34 -31
- package/bpk-component-table/src/BpkTableRow.js +33 -29
- package/bpk-component-text/index.js +34 -0
- package/bpk-component-text/src/BpkText.js +83 -0
- package/bpk-component-text/src/BpkText.module.css +1 -1
- package/bpk-component-textarea/index.js +17 -8
- package/bpk-component-textarea/src/BpkTextarea.js +41 -44
- package/bpk-component-textarea/src/themeAttributes.js +8 -4
- package/bpk-component-theme-toggle/index.js +17 -6
- package/bpk-component-theme-toggle/src/BpkThemeToggle.js +101 -96
- package/bpk-component-theme-toggle/src/theming.js +52 -92
- package/bpk-component-theme-toggle/src/updateOnThemeChange.js +53 -57
- package/bpk-component-theme-toggle/src/utils.js +9 -5
- package/bpk-component-ticket/index.js +10 -6
- package/bpk-component-ticket/src/BpkTicket.js +80 -111
- package/{bpk-component-banner-alert/src/BpkBannerAlert.tsx → bpk-component-tooltip/index.js} +17 -28
- package/bpk-component-tooltip/src/BpkTooltip.js +78 -0
- package/bpk-component-tooltip/src/BpkTooltipPortal.js +168 -0
- package/bpk-component-tooltip/src/{constants.ts → constants.js} +17 -6
- package/bpk-react-utils/index.js +106 -0
- package/bpk-react-utils/src/Portal.js +248 -0
- package/bpk-react-utils/src/{TransitionInitialMount.tsx → TransitionInitialMount.js} +29 -28
- package/{bpk-component-aria-live/src/accessibility-test.tsx → bpk-react-utils/src/cssModules.js} +14 -13
- package/bpk-react-utils/src/deprecated.js +19 -23
- package/bpk-react-utils/src/{deviceDetection.ts → deviceDetection.js} +11 -10
- package/bpk-react-utils/src/{isRTL.ts → isRTL.js} +11 -13
- package/bpk-react-utils/src/withDefaultProps.js +64 -0
- package/bpk-react-utils/src/{wrapDisplayName.ts → wrapDisplayName.js} +9 -10
- package/bpk-scrim-utils/index.js +35 -0
- package/bpk-scrim-utils/src/BpkScrim.js +44 -0
- package/bpk-scrim-utils/src/{scroll-utils.tsx → scroll-utils.js} +20 -38
- package/bpk-scrim-utils/src/withScrim.js +150 -0
- package/bpk-storybook-utils/index.js +43 -0
- package/bpk-storybook-utils/src/BpkDarkExampleWrapper.js +54 -0
- package/{bpk-component-aria-live/src/BpkAriaLive.module.scss → bpk-storybook-utils/src/BpkDarkExampleWrapper.module.css} +6 -13
- package/{bpk-component-barchart/src/BpkChartAxis.module.scss → bpk-storybook-utils/src/BpkStorybookUtils.js} +19 -18
- package/bpk-theming/index.js +10 -4
- package/bpk-theming/src/BpkThemeProvider.js +60 -57
- package/index.css +0 -0
- package/package.json +1 -1
- package/bpk-animate-height/README.md +0 -53
- package/bpk-component-accordion/README.md +0 -121
- package/bpk-component-accordion/src/BpkAccordionItem.module.scss +0 -102
- package/bpk-component-aria-live/README.md +0 -39
- package/bpk-component-aria-live/src/BpkAriaLive-test.tsx +0 -59
- package/bpk-component-aria-live/src/BpkAriaLive.tsx +0 -59
- package/bpk-component-autosuggest/README.md +0 -124
- package/bpk-component-autosuggest/src/BpkAutosuggest.module.scss +0 -156
- package/bpk-component-badge/README.md +0 -36
- package/bpk-component-badge/src/BpkBadge-test.tsx +0 -70
- package/bpk-component-badge/src/BpkBadge.module.scss +0 -67
- package/bpk-component-badge/src/BpkBadge.tsx +0 -79
- package/bpk-component-banner-alert/README.md +0 -151
- package/bpk-component-banner-alert/index.ts +0 -33
- package/bpk-component-banner-alert/src/AnimateAndFade-test.tsx +0 -65
- package/bpk-component-banner-alert/src/AnimateAndFade.tsx +0 -179
- package/bpk-component-banner-alert/src/BpkAnimateAndFade.module.scss +0 -53
- package/bpk-component-banner-alert/src/BpkBannerAlert-test.tsx +0 -56
- package/bpk-component-banner-alert/src/BpkBannerAlert.module.scss +0 -151
- package/bpk-component-banner-alert/src/BpkBannerAlertDismissable-test.tsx +0 -38
- package/bpk-component-banner-alert/src/BpkBannerAlertDismissable.tsx +0 -35
- package/bpk-component-banner-alert/src/BpkBannerAlertExpandable-test.tsx +0 -60
- package/bpk-component-banner-alert/src/BpkBannerAlertExpandable.tsx +0 -47
- package/bpk-component-banner-alert/src/BpkBannerAlertInner-test.tsx +0 -196
- package/bpk-component-banner-alert/src/BpkBannerAlertInner.tsx +0 -227
- package/bpk-component-banner-alert/src/accessibility-test.tsx +0 -35
- package/bpk-component-banner-alert/src/common-types.ts +0 -46
- package/bpk-component-banner-alert/src/themeAttributes.ts +0 -24
- package/bpk-component-banner-alert/src/withBannerAlertState-test.tsx +0 -142
- package/bpk-component-banner-alert/src/withBannerAlertState.tsx +0 -156
- package/bpk-component-barchart/README.md +0 -186
- package/bpk-component-barchart/data.json +0 -20
- package/bpk-component-barchart/src/BpkBarchart.module.scss +0 -21
- package/bpk-component-barchart/src/BpkBarchartBar.module.scss +0 -70
- package/bpk-component-barchart/src/BpkChartDataTable.module.scss +0 -28
- package/bpk-component-barchart/src/BpkChartGridLines.module.scss +0 -26
- package/bpk-component-blockquote/README.md +0 -32
- package/bpk-component-blockquote/src/BpkBlockquote.module.scss +0 -29
- package/bpk-component-breadcrumb/README.md +0 -56
- package/bpk-component-breadcrumb/src/BpkBreadcrumb.module.scss +0 -27
- package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.module.scss +0 -40
- package/bpk-component-breakpoint/README.md +0 -31
- package/bpk-component-breakpoint/index.ts +0 -22
- package/bpk-component-breakpoint/src/BpkBreakpoint-test.tsx +0 -102
- package/bpk-component-breakpoint/src/BpkBreakpoint.tsx +0 -53
- package/bpk-component-breakpoint/src/accessibility-test.tsx +0 -36
- package/bpk-component-button/README.md +0 -50
- package/bpk-component-button/src/BpkButtonBase.module.scss +0 -50
- package/bpk-component-button/src/BpkButtonDestructive.module.scss +0 -24
- package/bpk-component-button/src/BpkButtonFeatured.module.scss +0 -23
- package/bpk-component-button/src/BpkButtonLink.module.scss +0 -25
- package/bpk-component-button/src/BpkButtonLinkOnDark.module.scss +0 -23
- package/bpk-component-button/src/BpkButtonPrimaryOnDark.module.scss +0 -23
- package/bpk-component-button/src/BpkButtonPrimaryOnLight.module.scss +0 -23
- package/bpk-component-button/src/BpkButtonSecondary.module.scss +0 -23
- package/bpk-component-button/src/BpkButtonSecondaryOnDark.module.scss +0 -23
- package/bpk-component-button/src/BpkButtonV2/BpkButton-test.tsx +0 -125
- package/bpk-component-button/src/BpkButtonV2/BpkButton.module.scss +0 -81
- package/bpk-component-button/src/BpkButtonV2/BpkButton.tsx +0 -80
- package/bpk-component-button/src/BpkButtonV2/accessibility-test.tsx +0 -36
- package/bpk-component-calendar/DOCS.md +0 -23
- package/bpk-component-calendar/README.md +0 -382
- package/bpk-component-calendar/index.ts +0 -74
- package/bpk-component-calendar/src/BpkCalendar.module.scss +0 -42
- package/bpk-component-calendar/src/BpkCalendarContainer-test.tsx +0 -389
- package/bpk-component-calendar/src/BpkCalendarContainer.tsx +0 -399
- package/bpk-component-calendar/src/BpkCalendarDate-test.tsx +0 -82
- package/bpk-component-calendar/src/BpkCalendarDate.module.scss +0 -122
- package/bpk-component-calendar/src/BpkCalendarDate.tsx +0 -208
- package/bpk-component-calendar/src/BpkCalendarGrid-test.tsx +0 -134
- package/bpk-component-calendar/src/BpkCalendarGrid.module.scss +0 -65
- package/bpk-component-calendar/src/BpkCalendarGrid.tsx +0 -193
- package/bpk-component-calendar/src/BpkCalendarGridHeader.module.scss +0 -50
- package/bpk-component-calendar/src/BpkCalendarGridHeader.tsx +0 -99
- package/bpk-component-calendar/src/BpkCalendarGridTransition-test.tsx +0 -115
- package/bpk-component-calendar/src/BpkCalendarGridTransition.module.scss +0 -47
- package/bpk-component-calendar/src/BpkCalendarGridTransition.tsx +0 -240
- package/bpk-component-calendar/src/BpkCalendarNav-test.tsx +0 -116
- package/bpk-component-calendar/src/BpkCalendarNav.module.scss +0 -89
- package/bpk-component-calendar/src/BpkCalendarNav.tsx +0 -190
- package/bpk-component-calendar/src/Week-test.tsx +0 -220
- package/bpk-component-calendar/src/Week.tsx +0 -472
- package/bpk-component-calendar/src/_variables.scss +0 -22
- package/bpk-component-calendar/src/accessibility-test.tsx +0 -74
- package/bpk-component-calendar/src/composeCalendar-test.tsx +0 -163
- package/bpk-component-calendar/src/composeCalendar.tsx +0 -187
- package/bpk-component-calendar/src/custom-proptypes.ts +0 -52
- package/bpk-component-calendar/src/date-utils.ts +0 -229
- package/bpk-component-calendar/src/themeAttributes-test.ts +0 -36
- package/bpk-component-calendar/src/themeAttributes.ts +0 -30
- package/bpk-component-calendar/test-utils.ts +0 -303
- package/bpk-component-card/README.md +0 -103
- package/bpk-component-card/index.ts +0 -25
- package/bpk-component-card/src/BpkCard-test.tsx +0 -100
- package/bpk-component-card/src/BpkCard.module.scss +0 -38
- package/bpk-component-card/src/BpkCard.tsx +0 -98
- package/bpk-component-card/src/BpkCardWrapper-test.tsx +0 -64
- package/bpk-component-card/src/BpkCardWrapper.module.scss +0 -69
- package/bpk-component-card/src/BpkCardWrapper.tsx +0 -56
- package/bpk-component-card/src/BpkDividedCard-test.tsx +0 -96
- package/bpk-component-card/src/BpkDividedCard.module.scss +0 -71
- package/bpk-component-card/src/BpkDividedCard.tsx +0 -83
- package/bpk-component-checkbox/README.md +0 -44
- package/bpk-component-checkbox/src/BpkCheckbox.module.scss +0 -78
- package/bpk-component-chip/README.md +0 -135
- package/bpk-component-chip/index.ts +0 -33
- package/bpk-component-chip/src/BpkDismissibleChip-test.tsx +0 -84
- package/bpk-component-chip/src/BpkDismissibleChip.tsx +0 -61
- package/bpk-component-chip/src/BpkDropdownChip-test.tsx +0 -76
- package/bpk-component-chip/src/BpkDropdownChip.tsx +0 -48
- package/bpk-component-chip/src/BpkSelectableChip-test.tsx +0 -100
- package/bpk-component-chip/src/BpkSelectableChip.tsx +0 -81
- package/bpk-component-chip/src/accessibility-test.tsx +0 -47
- package/bpk-component-chip/src/commonTypes.ts +0 -61
- package/bpk-component-chip/src/themeAttributes-test.ts +0 -34
- package/bpk-component-chip/src/themeAttributes.ts +0 -28
- package/bpk-component-close-button/README.md +0 -24
- package/bpk-component-close-button/src/BpkCloseButton.module.scss +0 -52
- package/bpk-component-code/README.md +0 -40
- package/bpk-component-code/src/BpkCode.module.scss +0 -27
- package/bpk-component-code/src/BpkCodeBlock.module.scss +0 -33
- package/bpk-component-content-cards/README.md +0 -37
- package/bpk-component-content-cards/src/BpkContentCard.module.scss +0 -87
- package/bpk-component-content-cards/src/BpkContentCards.module.scss +0 -51
- package/bpk-component-datatable/README.md +0 -196
- package/bpk-component-datatable/src/BpkDataTable.module.scss +0 -90
- package/bpk-component-datatable/src/BpkDataTableHeader.module.scss +0 -65
- package/bpk-component-datepicker/README.md +0 -179
- package/bpk-component-datepicker/index.ts +0 -25
- package/bpk-component-datepicker/src/BpkDatepicker-test.tsx +0 -390
- package/bpk-component-datepicker/src/BpkDatepicker.module.scss +0 -30
- package/bpk-component-datepicker/src/BpkDatepicker.tsx +0 -390
- package/bpk-component-datepicker/src/accessibility-test.tsx +0 -105
- package/bpk-component-datepicker/src/themeAttibutes-test.ts +0 -40
- package/bpk-component-description-list/README.md +0 -43
- package/bpk-component-description-list/src/BpkDescriptionList.module.scss +0 -37
- package/bpk-component-dialog/README.md +0 -103
- package/bpk-component-dialog/index.ts +0 -25
- package/bpk-component-dialog/src/BpkDialog-test.tsx +0 -184
- package/bpk-component-dialog/src/BpkDialog.module.scss +0 -80
- package/bpk-component-dialog/src/BpkDialog.tsx +0 -78
- package/bpk-component-dialog/src/BpkDialogInner.module.scss +0 -64
- package/bpk-component-dialog/src/BpkDialogInner.tsx +0 -72
- package/bpk-component-dialog/src/accessibility-test.tsx +0 -45
- package/bpk-component-dialog/src/common-types.ts +0 -48
- package/bpk-component-drawer/README.md +0 -88
- package/bpk-component-drawer/src/BpkDrawer.module.scss +0 -23
- package/bpk-component-drawer/src/BpkDrawerContent.module.scss +0 -107
- package/bpk-component-fieldset/README.md +0 -71
- package/bpk-component-fieldset/src/BpkFieldset.module.scss +0 -39
- package/bpk-component-flare/README.md +0 -49
- package/bpk-component-flare/src/__generated__/js/corner-radius.d.ts +0 -6
- package/bpk-component-flare/src/__generated__/js/corner-radius.d.ts.map +0 -1
- package/bpk-component-flare/src/__generated__/js/corner-radius.tsx +0 -5
- package/bpk-component-flare/src/__generated__/js/pointer.d.ts +0 -6
- package/bpk-component-flare/src/__generated__/js/pointer.d.ts.map +0 -1
- package/bpk-component-flare/src/__generated__/js/pointer.tsx +0 -5
- package/bpk-component-flare/src/bpk-content-bubble.module.scss +0 -61
- package/bpk-component-flare/src/bpk-flare-bar.module.scss +0 -75
- package/bpk-component-flare/src/svgs/corner-radius.svg +0 -1
- package/bpk-component-flare/src/svgs/pointer.svg +0 -1
- package/bpk-component-floating-notification/README.md +0 -47
- package/bpk-component-floating-notification/src/BpkFloatingNotification.module.scss +0 -85
- package/bpk-component-form-validation/README.md +0 -30
- package/bpk-component-form-validation/src/BpkFormValidation.module.scss +0 -44
- package/bpk-component-graphic-promotion/README.md +0 -67
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo-test.tsx +0 -132
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.module.scss +0 -270
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.tsx +0 -201
- package/bpk-component-graphic-promotion/src/accessibility-test.tsx +0 -146
- package/bpk-component-grid-toggle/README.md +0 -24
- package/bpk-component-grid-toggle/src/BpkGridToggle.module.scss +0 -52
- package/bpk-component-horizontal-nav/README.md +0 -101
- package/bpk-component-horizontal-nav/src/BpkHorizontalNav.module.scss +0 -37
- package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.module.scss +0 -152
- package/bpk-component-icon/README.md +0 -74
- package/bpk-component-icon/index.tsx +0 -46
- package/bpk-component-icon/src/BpkIcon.module.scss +0 -33
- package/bpk-component-icon/src/classNameModifierHOCFactory-test.tsx +0 -82
- package/bpk-component-icon/src/classNameModifierHOCFactory.tsx +0 -47
- package/bpk-component-icon/src/withAlignment-test.tsx +0 -96
- package/bpk-component-icon/src/withAlignment.tsx +0 -52
- package/bpk-component-icon/src/withDescription-test.tsx +0 -32
- package/bpk-component-icon/src/withDescription.module.scss +0 -22
- package/bpk-component-icon/src/withDescription.tsx +0 -43
- package/bpk-component-icon/src/withRtlSupport.tsx +0 -28
- package/bpk-component-image/README.md +0 -139
- package/bpk-component-image/index.ts +0 -34
- package/bpk-component-image/src/BpkBackgroundImage-test.tsx +0 -131
- package/bpk-component-image/src/BpkBackgroundImage.module.scss +0 -46
- package/bpk-component-image/src/BpkBackgroundImage.tsx +0 -161
- package/bpk-component-image/src/BpkImage-test.tsx +0 -149
- package/bpk-component-image/src/BpkImage.module.scss +0 -89
- package/bpk-component-image/src/BpkImage.tsx +0 -214
- package/bpk-component-image/src/BpkImageBorderRadiusStyles.ts +0 -21
- package/bpk-component-image/src/accessibility-test.tsx +0 -64
- package/bpk-component-image/src/withLazyLoading-test.tsx +0 -96
- package/bpk-component-image/src/withLazyLoading.tsx +0 -168
- package/bpk-component-image/src/withLoadingBehavior.tsx +0 -72
- package/bpk-component-infinite-scroll/README.md +0 -183
- package/bpk-component-infinite-scroll/src/withInfiniteScroll-test.flow.js +0 -102
- package/bpk-component-infinite-scroll/src/withInfiniteScroll.module.scss +0 -25
- package/bpk-component-input/README.md +0 -117
- package/bpk-component-input/index.ts +0 -40
- package/bpk-component-input/src/BpkClearButton-test.tsx +0 -42
- package/bpk-component-input/src/BpkClearButton.module.scss +0 -40
- package/bpk-component-input/src/BpkClearButton.tsx +0 -61
- package/bpk-component-input/src/BpkInput-test.tsx +0 -257
- package/bpk-component-input/src/BpkInput.module.scss +0 -86
- package/bpk-component-input/src/BpkInput.tsx +0 -174
- package/bpk-component-input/src/accessibility-test.tsx +0 -36
- package/bpk-component-input/src/common-types-test.ts +0 -173
- package/bpk-component-input/src/common-types.ts +0 -141
- package/bpk-component-input/src/themeAttributes.ts +0 -19
- package/bpk-component-input/src/withOpenEvents-test.tsx +0 -168
- package/bpk-component-input/src/withOpenEvents.tsx +0 -203
- package/bpk-component-label/README.md +0 -27
- package/bpk-component-label/src/BpkLabel.module.scss +0 -47
- package/bpk-component-link/README.md +0 -66
- package/bpk-component-link/src/BpkLink.module.scss +0 -31
- package/bpk-component-list/README.md +0 -48
- package/bpk-component-list/src/BpkList.module.scss +0 -37
- package/bpk-component-loading-button/README.md +0 -45
- package/bpk-component-loading-button/src/BpkLoadingButton.module.scss +0 -67
- package/bpk-component-map/README.md +0 -209
- package/bpk-component-map/src/BpkIconMarker.module.scss +0 -79
- package/bpk-component-map/src/BpkIconMarkerBackground.module.scss +0 -53
- package/bpk-component-map/src/BpkMap.module.scss +0 -21
- package/bpk-component-map/src/BpkPriceMarker.module.scss +0 -148
- package/bpk-component-map/src/DefaultLoadingElement.module.scss +0 -28
- package/bpk-component-mobile-scroll-container/README.md +0 -71
- package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.module.scss +0 -52
- package/bpk-component-modal/README.md +0 -113
- package/bpk-component-modal/index.ts +0 -29
- package/bpk-component-modal/src/BpkModal-test.tsx +0 -46
- package/bpk-component-modal/src/BpkModal.module.scss +0 -46
- package/bpk-component-modal/src/BpkModal.tsx +0 -109
- package/bpk-component-modal/src/BpkModalInner-test.tsx +0 -202
- package/bpk-component-modal/src/BpkModalInner.module.scss +0 -125
- package/bpk-component-modal/src/BpkModalInner.tsx +0 -156
- package/bpk-component-modal/src/BpkModalV2/BpKModal-test.tsx +0 -313
- package/bpk-component-modal/src/BpkModalV2/BpKModal.module.scss +0 -178
- package/bpk-component-modal/src/BpkModalV2/BpkModal.tsx +0 -190
- package/bpk-component-modal/src/BpkModalV2/README.md +0 -90
- package/bpk-component-modal/src/BpkModalV2/accessibility-test.tsx +0 -42
- package/bpk-component-modal/src/accessibility-test.tsx +0 -46
- package/bpk-component-modal/src/themeAttributes-test.ts +0 -30
- package/bpk-component-navigation-bar/README.md +0 -109
- package/bpk-component-navigation-bar/src/BpkNavigationBar.module.scss +0 -78
- package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.module.scss +0 -51
- package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.module.scss +0 -43
- package/bpk-component-nudger/README.md +0 -168
- package/bpk-component-nudger/src/BpkNudger.module.scss +0 -50
- package/bpk-component-overlay/README.md +0 -47
- package/bpk-component-overlay/index.ts +0 -27
- package/bpk-component-overlay/src/BpkOverlay-test.tsx +0 -70
- package/bpk-component-overlay/src/BpkOverlay.module.scss +0 -163
- package/bpk-component-overlay/src/BpkOverlay.tsx +0 -102
- package/bpk-component-overlay/src/accessibility-test.tsx +0 -35
- package/bpk-component-page-indicator/README.md +0 -41
- package/bpk-component-page-indicator/src/BpkPageIndicator.module.scss +0 -91
- package/bpk-component-pagination/README.md +0 -56
- package/bpk-component-pagination/src/BpkPagination.module.scss +0 -22
- package/bpk-component-pagination/src/BpkPaginationList.module.scss +0 -46
- package/bpk-component-pagination/src/BpkPaginationNudger.module.scss +0 -34
- package/bpk-component-pagination/src/BpkPaginationPage.module.scss +0 -59
- package/bpk-component-panel/README.md +0 -30
- package/bpk-component-panel/src/BpkPanel.module.scss +0 -31
- package/bpk-component-phone-input/README.md +0 -98
- package/bpk-component-phone-input/src/BpkPhoneInput.module.scss +0 -42
- package/bpk-component-popover/README.md +0 -138
- package/bpk-component-popover/src/BpkPopover.module.scss +0 -127
- package/bpk-component-price/README.md +0 -39
- package/bpk-component-price/src/BpkPrice.module.scss +0 -74
- package/bpk-component-progress/README.md +0 -53
- package/bpk-component-progress/src/BpkProgress.module.scss +0 -64
- package/bpk-component-radio/README.md +0 -40
- package/bpk-component-radio/src/BpkRadio.module.scss +0 -85
- package/bpk-component-rating/README.md +0 -84
- package/bpk-component-rating/src/BpkRating.module.scss +0 -83
- package/bpk-component-rtl-toggle/README.md +0 -23
- package/bpk-component-rtl-toggle/index.ts +0 -23
- package/bpk-component-rtl-toggle/src/BpkRtlToggle-test.tsx +0 -33
- package/bpk-component-rtl-toggle/src/BpkRtlToggle.tsx +0 -100
- package/bpk-component-rtl-toggle/src/accessibility-test.tsx +0 -30
- package/bpk-component-rtl-toggle/src/updateOnDirectionChange-test.tsx +0 -48
- package/bpk-component-rtl-toggle/src/updateOnDirectionChange.tsx +0 -71
- package/bpk-component-scrollable-calendar/README.md +0 -100
- package/bpk-component-scrollable-calendar/index.ts +0 -33
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendar-test.tsx +0 -101
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendar.tsx +0 -35
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate-test.tsx +0 -74
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate.tsx +0 -41
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid-test.tsx +0 -142
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.module.scss +0 -31
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.tsx +0 -60
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList-test.tsx +0 -113
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.module.scss +0 -36
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.tsx +0 -208
- package/bpk-component-scrollable-calendar/src/accessibility-test.tsx +0 -69
- package/bpk-component-scrollable-calendar/src/utils-test.ts +0 -43
- package/bpk-component-scrollable-calendar/test-utils.ts +0 -275
- package/bpk-component-section-list/README.md +0 -49
- package/bpk-component-section-list/src/BpkSectionListItem.module.scss +0 -54
- package/bpk-component-section-list/src/BpkSectionListSection.module.scss +0 -35
- package/bpk-component-select/README.md +0 -62
- package/bpk-component-select/src/BpkSelect.module.scss +0 -131
- package/bpk-component-skip-link/README.md +0 -27
- package/bpk-component-skip-link/src/BpkSkipLink.module.scss +0 -50
- package/bpk-component-slider/README.md +0 -40
- package/bpk-component-slider/src/BpkSlider.module.scss +0 -86
- package/bpk-component-spinner/README.md +0 -37
- package/bpk-component-spinner/changelog.yml +0 -55
- package/bpk-component-spinner/src/BpkSpinner.module.scss +0 -58
- package/bpk-component-split-input/README.md +0 -39
- package/bpk-component-split-input/src/BpkInputField.module.scss +0 -34
- package/bpk-component-split-input/src/BpkSplitInput.module.scss +0 -36
- package/bpk-component-star-rating/README.md +0 -96
- package/bpk-component-star-rating/src/BpkInteractiveStar.module.scss +0 -66
- package/bpk-component-star-rating/src/BpkStar.module.scss +0 -63
- package/bpk-component-star-rating/src/BpkStarRating.module.scss +0 -21
- package/bpk-component-switch/README.md +0 -34
- package/bpk-component-switch/src/BpkSwitch.module.scss +0 -92
- package/bpk-component-table/README.md +0 -62
- package/bpk-component-table/src/BpkTable.module.scss +0 -31
- package/bpk-component-text/README.md +0 -69
- package/bpk-component-text/index.ts +0 -22
- package/bpk-component-text/src/BpkText-test.tsx +0 -84
- package/bpk-component-text/src/BpkText.module.scss +0 -131
- package/bpk-component-text/src/BpkText.tsx +0 -98
- package/bpk-component-text/src/accessibility-test.tsx +0 -36
- package/bpk-component-textarea/README.md +0 -31
- package/bpk-component-textarea/src/BpkTextarea.module.scss +0 -33
- package/bpk-component-theme-toggle/README.md +0 -26
- package/bpk-component-theme-toggle/src/BpkThemeToggle.module.scss +0 -25
- package/bpk-component-ticket/README.md +0 -34
- package/bpk-component-ticket/src/BpkTicket.module.scss +0 -144
- package/bpk-component-tooltip/README.md +0 -65
- package/bpk-component-tooltip/index.ts +0 -26
- package/bpk-component-tooltip/src/BpkTooltip-test.tsx +0 -62
- package/bpk-component-tooltip/src/BpkTooltip.module.scss +0 -149
- package/bpk-component-tooltip/src/BpkTooltip.tsx +0 -89
- package/bpk-component-tooltip/src/BpkTooltipPortal-test.tsx +0 -94
- package/bpk-component-tooltip/src/BpkTooltipPortal.tsx +0 -214
- package/bpk-component-tooltip/src/accessibility-test.tsx +0 -34
- package/bpk-react-utils/README.md +0 -246
- package/bpk-react-utils/index.ts +0 -56
- package/bpk-react-utils/src/Portal-test.tsx +0 -794
- package/bpk-react-utils/src/Portal.tsx +0 -342
- package/bpk-react-utils/src/TransitionInitialMount-test.tsx +0 -37
- package/bpk-react-utils/src/accessibility-test.tsx +0 -73
- package/bpk-react-utils/src/cssModules-test.ts +0 -65
- package/bpk-react-utils/src/cssModules.ts +0 -27
- package/bpk-react-utils/src/deviceDetection-test.ts +0 -92
- package/bpk-react-utils/src/isRTL-test.ts +0 -53
- package/bpk-react-utils/src/withDefaultProps-test.tsx +0 -58
- package/bpk-react-utils/src/withDefaultProps.tsx +0 -70
- package/bpk-react-utils/src/wrapDisplayName-test.tsx +0 -37
- package/bpk-scrim-utils/README.md +0 -47
- package/bpk-scrim-utils/src/BpkScrim.tsx +0 -45
- package/bpk-scrim-utils/src/accessibility-test.tsx +0 -47
- package/bpk-scrim-utils/src/bpk-scrim-content.module.scss +0 -32
- package/bpk-scrim-utils/src/bpk-scrim.module.scss +0 -45
- package/bpk-scrim-utils/src/withScrim-test.tsx +0 -222
- package/bpk-scrim-utils/src/withScrim.tsx +0 -170
- package/bpk-theming/README.md +0 -41
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _arrowLeft = _interopRequireDefault(require("../../bpk-component-icon/lg/arrow-left"));
|
|
8
|
+
var _arrowRight = _interopRequireDefault(require("../../bpk-component-icon/lg/arrow-right"));
|
|
9
|
+
var _bpkComponentSelect = _interopRequireDefault(require("../../bpk-component-select"));
|
|
10
|
+
var _bpkReactUtils = require("../../bpk-react-utils");
|
|
11
|
+
var _bpkComponentAriaLive = _interopRequireDefault(require("../../bpk-component-aria-live"));
|
|
12
|
+
var _dateUtils = require("./date-utils");
|
|
13
|
+
var _BpkCalendarNavModule = _interopRequireDefault(require("./BpkCalendarNav.module.css"));
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
|
+
/*
|
|
17
|
+
* Backpack - Skyscanner's Design System
|
|
18
|
+
*
|
|
19
|
+
* Copyright 2016 Skyscanner Ltd
|
|
20
|
+
*
|
|
21
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
22
|
+
* you may not use this file except in compliance with the License.
|
|
23
|
+
* You may obtain a copy of the License at
|
|
24
|
+
*
|
|
25
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
26
|
+
*
|
|
27
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
28
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
29
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
30
|
+
* See the License for the specific language governing permissions and
|
|
31
|
+
* limitations under the License.
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
// @ts-expect-error Untyped import. See `decisions/imports-ts-suppressions.md`.
|
|
35
|
+
|
|
36
|
+
// @ts-expect-error Untyped import. See `decisions/imports-ts-suppressions.md`.
|
|
37
|
+
|
|
38
|
+
// @ts-expect-error Untyped import. See `decisions/imports-ts-suppressions.md`.
|
|
39
|
+
|
|
40
|
+
const getClassName = (0, _bpkReactUtils.cssModules)(_BpkCalendarNavModule.default);
|
|
41
|
+
const changeMonth = ({
|
|
42
|
+
callback,
|
|
43
|
+
max,
|
|
44
|
+
min,
|
|
45
|
+
month,
|
|
46
|
+
source
|
|
47
|
+
}) => event => {
|
|
48
|
+
// Safeguard for disabled buttons is due to React bug in Chrome: https://github.com/facebook/react/issues/8308
|
|
49
|
+
// PR: https://github.com/facebook/react/pull/8329 - unresolved as of 22/12/2016
|
|
50
|
+
if ((0, _dateUtils.isWithinRange)(month, {
|
|
51
|
+
start: min,
|
|
52
|
+
end: max
|
|
53
|
+
})) {
|
|
54
|
+
event.persist();
|
|
55
|
+
callback(event, {
|
|
56
|
+
month,
|
|
57
|
+
source
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
const BpkCalendarNav = ({
|
|
62
|
+
changeMonthLabel,
|
|
63
|
+
disabled = false,
|
|
64
|
+
formatMonth,
|
|
65
|
+
id,
|
|
66
|
+
maxDate,
|
|
67
|
+
minDate,
|
|
68
|
+
month,
|
|
69
|
+
nextMonthLabel,
|
|
70
|
+
onMonthChange = () => {},
|
|
71
|
+
previousMonthLabel
|
|
72
|
+
}) => {
|
|
73
|
+
const baseMonth = (0, _dateUtils.startOfMonth)(month);
|
|
74
|
+
const {
|
|
75
|
+
max,
|
|
76
|
+
min
|
|
77
|
+
} = (0, _dateUtils.getMonthRange)(minDate, maxDate);
|
|
78
|
+
const navigatableMonths = (0, _dateUtils.getMonthsInRange)(minDate, maxDate);
|
|
79
|
+
const prevMonth = (0, _dateUtils.addMonths)(baseMonth, -1);
|
|
80
|
+
const nextMonth = (0, _dateUtils.addMonths)(baseMonth, 1);
|
|
81
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
82
|
+
className: getClassName('bpk-calendar-nav'),
|
|
83
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
84
|
+
style: {
|
|
85
|
+
display: 'table-row'
|
|
86
|
+
},
|
|
87
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
88
|
+
className: getClassName('bpk-calendar-nav__nudger'),
|
|
89
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("button", {
|
|
90
|
+
type: "button",
|
|
91
|
+
className: getClassName('bpk-calendar-nav__button'),
|
|
92
|
+
id: `${id}_month_nudger_previous`,
|
|
93
|
+
onClick: changeMonth({
|
|
94
|
+
month: prevMonth,
|
|
95
|
+
min,
|
|
96
|
+
max,
|
|
97
|
+
callback: onMonthChange,
|
|
98
|
+
source: 'PREV'
|
|
99
|
+
}),
|
|
100
|
+
disabled: disabled || !(0, _dateUtils.isWithinRange)(prevMonth, {
|
|
101
|
+
start: min,
|
|
102
|
+
end: max
|
|
103
|
+
}),
|
|
104
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_arrowLeft.default, {
|
|
105
|
+
className: getClassName('bpk-calendar-nav__icon')
|
|
106
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
107
|
+
className: getClassName('bpk-calendar-nav__text--hidden'),
|
|
108
|
+
children: previousMonthLabel
|
|
109
|
+
})]
|
|
110
|
+
})
|
|
111
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
112
|
+
className: getClassName('bpk-calendar-nav__month'),
|
|
113
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
|
|
114
|
+
htmlFor: `${id}_select`,
|
|
115
|
+
className: getClassName('bpk-calendar-nav__text--hidden'),
|
|
116
|
+
children: changeMonthLabel
|
|
117
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_bpkComponentSelect.default, {
|
|
118
|
+
id: `${id}_select`,
|
|
119
|
+
name: "months",
|
|
120
|
+
value: (0, _dateUtils.formatIsoMonth)(baseMonth),
|
|
121
|
+
disabled: disabled,
|
|
122
|
+
onChange: event => {
|
|
123
|
+
event.persist();
|
|
124
|
+
onMonthChange(event, {
|
|
125
|
+
month: (0, _dateUtils.parseIsoDate)(event.target.value),
|
|
126
|
+
source: 'SELECT'
|
|
127
|
+
});
|
|
128
|
+
},
|
|
129
|
+
children: navigatableMonths.map(m => /*#__PURE__*/(0, _jsxRuntime.jsx)("option", {
|
|
130
|
+
value: (0, _dateUtils.formatIsoMonth)(m),
|
|
131
|
+
children: formatMonth(m)
|
|
132
|
+
}, m.toString()))
|
|
133
|
+
})]
|
|
134
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
135
|
+
className: getClassName('bpk-calendar-nav__nudger'),
|
|
136
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("button", {
|
|
137
|
+
type: "button",
|
|
138
|
+
className: getClassName('bpk-calendar-nav__button'),
|
|
139
|
+
id: `${id}_month_nudger_next`,
|
|
140
|
+
onClick: changeMonth({
|
|
141
|
+
month: nextMonth,
|
|
142
|
+
min,
|
|
143
|
+
max,
|
|
144
|
+
callback: onMonthChange,
|
|
145
|
+
source: 'NEXT'
|
|
146
|
+
}),
|
|
147
|
+
disabled: disabled || !(0, _dateUtils.isWithinRange)((0, _dateUtils.addMonths)(baseMonth, 1), {
|
|
148
|
+
start: min,
|
|
149
|
+
end: max
|
|
150
|
+
}),
|
|
151
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_arrowRight.default, {
|
|
152
|
+
className: getClassName('bpk-calendar-nav__icon')
|
|
153
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
154
|
+
className: getClassName('bpk-calendar-nav__text--hidden'),
|
|
155
|
+
children: nextMonthLabel
|
|
156
|
+
})]
|
|
157
|
+
})
|
|
158
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_bpkComponentAriaLive.default, {
|
|
159
|
+
children: formatMonth(baseMonth)
|
|
160
|
+
})]
|
|
161
|
+
})
|
|
162
|
+
});
|
|
163
|
+
};
|
|
164
|
+
var _default = BpkCalendarNav;
|
|
165
|
+
exports.default = _default;
|
|
@@ -0,0 +1,333 @@
|
|
|
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 _bpkReactUtils = require("../../bpk-react-utils");
|
|
9
|
+
var _dateUtils = require("./date-utils");
|
|
10
|
+
var _customProptypes = require("./custom-proptypes");
|
|
11
|
+
var _BpkCalendarGridModule = _interopRequireDefault(require("./BpkCalendarGrid.module.css"));
|
|
12
|
+
var _BpkCalendarDate = require("./BpkCalendarDate");
|
|
13
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
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; }
|
|
16
|
+
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; }
|
|
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
|
+
*/ // TODO: Move this to `Week.scss`
|
|
36
|
+
// This should be using its own css file as `BpkCalendarGrid` is also importing `BpkCalendarGrid.module.css`
|
|
37
|
+
// and the order of css imports can break the component.
|
|
38
|
+
const getClassName = (0, _bpkReactUtils.cssModules)(_BpkCalendarGridModule.default);
|
|
39
|
+
const shallowEqualProps = (props1, props2, propList) => {
|
|
40
|
+
let i = 0;
|
|
41
|
+
for (; i < propList.length; i += 1) {
|
|
42
|
+
if (props1[propList[i]] !== props2[propList[i]]) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return true;
|
|
47
|
+
};
|
|
48
|
+
function or(total, bool) {
|
|
49
|
+
return total || bool;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Determines if the current date is selected
|
|
54
|
+
* @param {Date} date the current date from the calendar
|
|
55
|
+
* @param {Object} selectionConfiguration the current selection configuration
|
|
56
|
+
* @returns {Boolean} true is selected and false if not
|
|
57
|
+
*/
|
|
58
|
+
function getSelectedDate(date, selectionConfiguration) {
|
|
59
|
+
let startDate;
|
|
60
|
+
let endDate;
|
|
61
|
+
if (selectionConfiguration.type === _customProptypes.CALENDAR_SELECTION_TYPE.single) {
|
|
62
|
+
startDate = selectionConfiguration.date;
|
|
63
|
+
} else {
|
|
64
|
+
startDate = selectionConfiguration.startDate;
|
|
65
|
+
endDate = selectionConfiguration.endDate;
|
|
66
|
+
}
|
|
67
|
+
const sameStartDay = startDate && (0, _dateUtils.isSameDay)(date, startDate);
|
|
68
|
+
const sameEndDay = endDate && (0, _dateUtils.isSameDay)(date, endDate);
|
|
69
|
+
if (startDate && endDate && (sameStartDay || sameEndDay || (0, _dateUtils.isWithinRange)(date, {
|
|
70
|
+
start: startDate,
|
|
71
|
+
end: endDate
|
|
72
|
+
})) || startDate && !endDate && sameStartDay || sameStartDay) {
|
|
73
|
+
return true;
|
|
74
|
+
}
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Gets the correct selection type for the current date
|
|
80
|
+
* @param {Date} date the current date of the calendar
|
|
81
|
+
* @param {Object} selectionConfiguration the current selection configuration
|
|
82
|
+
* @param {Function} formatDateFull function to format dates
|
|
83
|
+
* @param {Date} month the current month of the calendar
|
|
84
|
+
* @param {Number} weekStartsOn index of the first day of the week
|
|
85
|
+
* @param {Boolean} ignoreOutsideDate ignore date outside current month
|
|
86
|
+
* @returns {String} selection type to be passed to the date
|
|
87
|
+
*/
|
|
88
|
+
function getSelectionType(date, selectionConfiguration, formatDateFull, month, weekStartsOn, ignoreOutsideDate) {
|
|
89
|
+
const {
|
|
90
|
+
endDate,
|
|
91
|
+
startDate
|
|
92
|
+
} = selectionConfiguration.type === _customProptypes.CALENDAR_SELECTION_TYPE.range ? selectionConfiguration : {
|
|
93
|
+
startDate: null,
|
|
94
|
+
endDate: null
|
|
95
|
+
};
|
|
96
|
+
const sameStartDay = startDate && (0, _dateUtils.isSameDay)(date, startDate);
|
|
97
|
+
const sameEndDay = endDate && (0, _dateUtils.isSameDay)(date, endDate);
|
|
98
|
+
const rangeDates = startDate && endDate;
|
|
99
|
+
const isEmptyCell = !(0, _dateUtils.isSameMonth)(date, month) && ignoreOutsideDate;
|
|
100
|
+
if (selectionConfiguration.type === _customProptypes.CALENDAR_SELECTION_TYPE.single && selectionConfiguration.date && (selectionConfiguration.date === formatDateFull(date) || formatDateFull(selectionConfiguration.date) === formatDateFull(date))) {
|
|
101
|
+
return _BpkCalendarDate.SELECTION_TYPES.single;
|
|
102
|
+
}
|
|
103
|
+
if (selectionConfiguration.type === _customProptypes.CALENDAR_SELECTION_TYPE.range) {
|
|
104
|
+
if (startDate && !endDate && sameStartDay || rangeDates && sameStartDay && sameEndDay) {
|
|
105
|
+
return _BpkCalendarDate.SELECTION_TYPES.single;
|
|
106
|
+
}
|
|
107
|
+
if (isEmptyCell && rangeDates && ((0, _dateUtils.isSameWeek)(startDate, (0, _dateUtils.startOfMonth)(startDate), {
|
|
108
|
+
weekStartsOn
|
|
109
|
+
}) && (0, _dateUtils.isSameWeek)(date, startDate, {
|
|
110
|
+
weekStartsOn
|
|
111
|
+
}) || (0, _dateUtils.isSameWeek)(endDate, (0, _dateUtils.endOfMonth)(endDate), {
|
|
112
|
+
weekStartsOn
|
|
113
|
+
}) && (0, _dateUtils.isSameWeek)(date, endDate, {
|
|
114
|
+
weekStartsOn
|
|
115
|
+
}))) {
|
|
116
|
+
return _BpkCalendarDate.SELECTION_TYPES.none;
|
|
117
|
+
}
|
|
118
|
+
if (isEmptyCell && rangeDates && !(0, _dateUtils.isSameMonth)(startDate, endDate) && ((0, _dateUtils.isSameWeek)(startDate, (0, _dateUtils.endOfMonth)(startDate), {
|
|
119
|
+
weekStartsOn
|
|
120
|
+
}) && (0, _dateUtils.isSameWeek)(date, startDate, {
|
|
121
|
+
weekStartsOn
|
|
122
|
+
}) || (0, _dateUtils.isSameWeek)(endDate, (0, _dateUtils.startOfMonth)(endDate), {
|
|
123
|
+
weekStartsOn
|
|
124
|
+
}) && (0, _dateUtils.isSameWeek)(date, endDate, {
|
|
125
|
+
weekStartsOn
|
|
126
|
+
}))) {
|
|
127
|
+
return _BpkCalendarDate.SELECTION_TYPES.middle;
|
|
128
|
+
}
|
|
129
|
+
if (rangeDates && (0, _dateUtils.isWithinRange)(date, {
|
|
130
|
+
start: startDate,
|
|
131
|
+
end: endDate
|
|
132
|
+
}) && !sameStartDay && !sameEndDay) {
|
|
133
|
+
return _BpkCalendarDate.SELECTION_TYPES.middle;
|
|
134
|
+
}
|
|
135
|
+
if (startDate && formatDateFull(startDate) === formatDateFull(date)) {
|
|
136
|
+
return _BpkCalendarDate.SELECTION_TYPES.start;
|
|
137
|
+
}
|
|
138
|
+
if (endDate && formatDateFull(endDate) === formatDateFull(date)) {
|
|
139
|
+
return _BpkCalendarDate.SELECTION_TYPES.end;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
return _BpkCalendarDate.SELECTION_TYPES.none;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Handles changing selected date when in single mode
|
|
147
|
+
* @param {Object} props current props
|
|
148
|
+
* @param {Object} nextProps next props as the component is updating
|
|
149
|
+
* @returns {Boolean} based on if the date has changed
|
|
150
|
+
*/
|
|
151
|
+
const singleDateHandler = (props, nextProps) => {
|
|
152
|
+
const currentSelectConfig = props.selectionConfiguration;
|
|
153
|
+
const nextSelectConfig = nextProps.selectionConfiguration;
|
|
154
|
+
if ((nextSelectConfig.date && (0, _dateUtils.isSameWeek)(nextSelectConfig.date, nextProps.dates[0], {
|
|
155
|
+
weekStartsOn: nextProps.weekStartsOn
|
|
156
|
+
}) || currentSelectConfig.date && (0, _dateUtils.isSameWeek)(currentSelectConfig.date, props.dates[0], {
|
|
157
|
+
weekStartsOn: props.weekStartsOn
|
|
158
|
+
})) && currentSelectConfig.date !== nextSelectConfig.date) {
|
|
159
|
+
return true;
|
|
160
|
+
}
|
|
161
|
+
return false;
|
|
162
|
+
};
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* Handles changing selected date when in range mode
|
|
166
|
+
* @param {Object} props current props
|
|
167
|
+
* @param {Object} nextProps next props as the component is updating
|
|
168
|
+
* @returns {Boolean} based on if the date has changed
|
|
169
|
+
*/
|
|
170
|
+
const rangeDateHandler = (props, nextProps) => {
|
|
171
|
+
const {
|
|
172
|
+
endDate,
|
|
173
|
+
startDate
|
|
174
|
+
} = props.selectionConfiguration;
|
|
175
|
+
const {
|
|
176
|
+
endDate: nextEndDate,
|
|
177
|
+
startDate: nextStartDate
|
|
178
|
+
} = nextProps.selectionConfiguration;
|
|
179
|
+
const startDateChanged = startDate && nextStartDate && !(0, _dateUtils.isSameDay)(startDate, nextStartDate);
|
|
180
|
+
const endDateChanged = endDate && nextEndDate && !(0, _dateUtils.isSameDay)(endDate, nextEndDate);
|
|
181
|
+
if (startDateChanged || endDateChanged) {
|
|
182
|
+
return true;
|
|
183
|
+
}
|
|
184
|
+
return false;
|
|
185
|
+
};
|
|
186
|
+
/*
|
|
187
|
+
Week - table row containing a week full of DateContainer components
|
|
188
|
+
*/
|
|
189
|
+
class Week extends _react.Component {
|
|
190
|
+
shouldComponentUpdate(nextProps) {
|
|
191
|
+
const shallowProps = ['DateComponent', 'dateModifiers', 'formatDateFull', 'isKeyboardFocusable', 'markOutsideDays', 'markToday', 'onDateClick', 'onDateKeyDown', 'preventKeyboardFocus', 'weekStartsOn', 'dates', 'cellClassName'];
|
|
192
|
+
|
|
193
|
+
// If any of the props have changed, component should update.
|
|
194
|
+
if (!shallowEqualProps(this.props, nextProps, shallowProps)) {
|
|
195
|
+
return true;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
// If focusedDate is changing, and it'll be included as part
|
|
199
|
+
// of either the week we're rendering now or the next week
|
|
200
|
+
// we'll render, component should update.
|
|
201
|
+
if ((nextProps.focusedDate && (0, _dateUtils.isSameWeek)(nextProps.focusedDate, nextProps.dates[0], {
|
|
202
|
+
weekStartsOn: nextProps.weekStartsOn
|
|
203
|
+
}) || this.props.focusedDate && (0, _dateUtils.isSameWeek)(this.props.focusedDate, this.props.dates[0], {
|
|
204
|
+
weekStartsOn: this.props.weekStartsOn
|
|
205
|
+
})) && this.props.focusedDate !== nextProps.focusedDate) {
|
|
206
|
+
return true;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
// If selected date is changing, and it'll be included as part
|
|
210
|
+
// of either the week we're rendering now or the next week we'll
|
|
211
|
+
// render, component should update.
|
|
212
|
+
if (this.props.selectionConfiguration?.type === _customProptypes.CALENDAR_SELECTION_TYPE.single && this.props.selectionConfiguration.date) {
|
|
213
|
+
return singleDateHandler(this.props, nextProps);
|
|
214
|
+
}
|
|
215
|
+
if (this.props.selectionConfiguration?.type === _customProptypes.CALENDAR_SELECTION_TYPE.range) {
|
|
216
|
+
return rangeDateHandler(this.props, nextProps);
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
// If min date is changing, component should update.
|
|
220
|
+
if (nextProps.minDate) {
|
|
221
|
+
if (nextProps.minDate !== this.props.minDate) {
|
|
222
|
+
return true;
|
|
223
|
+
}
|
|
224
|
+
if (!(0, _dateUtils.isSameDay)(nextProps.minDate, this.props.minDate)) {
|
|
225
|
+
return true;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
// If max date is changing, component should update.
|
|
230
|
+
if (nextProps.maxDate) {
|
|
231
|
+
if (nextProps.maxDate !== this.props.maxDate) {
|
|
232
|
+
return true;
|
|
233
|
+
}
|
|
234
|
+
if (!(0, _dateUtils.isSameDay)(nextProps.maxDate, this.props.maxDate)) {
|
|
235
|
+
return true;
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
return false;
|
|
239
|
+
}
|
|
240
|
+
render() {
|
|
241
|
+
const {
|
|
242
|
+
DateComponent,
|
|
243
|
+
cellClassName,
|
|
244
|
+
dateModifiers,
|
|
245
|
+
dateProps,
|
|
246
|
+
focusedDate,
|
|
247
|
+
formatDateFull,
|
|
248
|
+
ignoreOutsideDate,
|
|
249
|
+
isKeyboardFocusable,
|
|
250
|
+
markOutsideDays,
|
|
251
|
+
markToday,
|
|
252
|
+
maxDate,
|
|
253
|
+
minDate,
|
|
254
|
+
month,
|
|
255
|
+
onDateClick,
|
|
256
|
+
onDateKeyDown,
|
|
257
|
+
preventKeyboardFocus,
|
|
258
|
+
selectionConfiguration,
|
|
259
|
+
weekStartsOn
|
|
260
|
+
} = this.props;
|
|
261
|
+
if (ignoreOutsideDate) {
|
|
262
|
+
const daysOutside = this.props.dates.map(date => (0, _dateUtils.isSameMonth)(date, month));
|
|
263
|
+
const shouldRender = daysOutside.reduce(or);
|
|
264
|
+
if (!shouldRender) {
|
|
265
|
+
return null;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
269
|
+
className: getClassName('bpk-calendar-grid__week'),
|
|
270
|
+
children: this.props.dates.map(date => {
|
|
271
|
+
const isBlocked = minDate && maxDate ? !(0, _dateUtils.isWithinRange)(date, {
|
|
272
|
+
start: minDate,
|
|
273
|
+
end: maxDate
|
|
274
|
+
}) : false;
|
|
275
|
+
const dateSelectionType = getSelectionType(date, selectionConfiguration, formatDateFull, month, weekStartsOn, ignoreOutsideDate);
|
|
276
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(DateContainer, {
|
|
277
|
+
className: cellClassName,
|
|
278
|
+
isEmptyCell: !(0, _dateUtils.isSameMonth)(date, month) && ignoreOutsideDate,
|
|
279
|
+
isBlocked: isBlocked,
|
|
280
|
+
selectionType: dateSelectionType,
|
|
281
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(DateComponent, _objectSpread({
|
|
282
|
+
date: date,
|
|
283
|
+
modifiers: dateModifiers,
|
|
284
|
+
"aria-label": formatDateFull(date),
|
|
285
|
+
onClick: onDateClick,
|
|
286
|
+
onDateKeyDown: onDateKeyDown,
|
|
287
|
+
preventKeyboardFocus: preventKeyboardFocus,
|
|
288
|
+
isKeyboardFocusable: isKeyboardFocusable,
|
|
289
|
+
isFocused: focusedDate && (0, _dateUtils.isSameDay)(date, focusedDate),
|
|
290
|
+
isSelected: getSelectedDate(date, selectionConfiguration),
|
|
291
|
+
isBlocked: isBlocked,
|
|
292
|
+
isOutside: markOutsideDays && !(0, _dateUtils.isSameMonth)(date, month),
|
|
293
|
+
isToday: markToday && (0, _dateUtils.isToday)(date),
|
|
294
|
+
selectionType: dateSelectionType
|
|
295
|
+
}, dateProps))
|
|
296
|
+
}, date.getDate());
|
|
297
|
+
})
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
_defineProperty(Week, "defaultProps", {
|
|
302
|
+
dateProps: {},
|
|
303
|
+
focusedDate: null,
|
|
304
|
+
ignoreOutsideDate: false,
|
|
305
|
+
maxDate: null,
|
|
306
|
+
minDate: null,
|
|
307
|
+
onDateClick: () => {},
|
|
308
|
+
onDateKeyDown: () => {},
|
|
309
|
+
selectionConfiguration: {
|
|
310
|
+
type: _customProptypes.CALENDAR_SELECTION_TYPE.single,
|
|
311
|
+
date: null
|
|
312
|
+
},
|
|
313
|
+
cellClassName: null
|
|
314
|
+
});
|
|
315
|
+
/*
|
|
316
|
+
DateContainer - one for each date in the grid; wraps the actual BpkCalendarDate (or custom) component
|
|
317
|
+
*/
|
|
318
|
+
const DateContainer = ({
|
|
319
|
+
children,
|
|
320
|
+
className = null,
|
|
321
|
+
isBlocked,
|
|
322
|
+
isEmptyCell,
|
|
323
|
+
selectionType
|
|
324
|
+
}) => {
|
|
325
|
+
const classNames = getClassName('bpk-calendar-grid__date', `bpk-calendar-grid__date--${selectionType}`, className);
|
|
326
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
327
|
+
"aria-hidden": isEmptyCell || isBlocked,
|
|
328
|
+
className: classNames,
|
|
329
|
+
children: children
|
|
330
|
+
});
|
|
331
|
+
};
|
|
332
|
+
var _default = Week;
|
|
333
|
+
exports.default = _default;
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _bpkReactUtils = require("../../bpk-react-utils");
|
|
8
|
+
var _customProptypes = require("./custom-proptypes");
|
|
9
|
+
var _BpkCalendarModule = _interopRequireDefault(require("./BpkCalendar.module.css"));
|
|
10
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
+
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; }
|
|
13
|
+
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; }
|
|
14
|
+
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; }
|
|
15
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
16
|
+
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); } /*
|
|
17
|
+
* Backpack - Skyscanner's Design System
|
|
18
|
+
*
|
|
19
|
+
* Copyright 2016 Skyscanner Ltd
|
|
20
|
+
*
|
|
21
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
22
|
+
* you may not use this file except in compliance with the License.
|
|
23
|
+
* You may obtain a copy of the License at
|
|
24
|
+
*
|
|
25
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
26
|
+
*
|
|
27
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
28
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
29
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
30
|
+
* See the License for the specific language governing permissions and
|
|
31
|
+
* limitations under the License.
|
|
32
|
+
*/
|
|
33
|
+
const getClassName = (0, _bpkReactUtils.cssModules)(_BpkCalendarModule.default);
|
|
34
|
+
const composeCalendar = (Nav, GridHeader, Grid, CalendarDate) => {
|
|
35
|
+
const BpkCalendar = ({
|
|
36
|
+
changeMonthLabel = null,
|
|
37
|
+
className = null,
|
|
38
|
+
dateModifiers = {},
|
|
39
|
+
dateProps = {},
|
|
40
|
+
daysOfWeek,
|
|
41
|
+
fixedWidth = true,
|
|
42
|
+
focusedDate = null,
|
|
43
|
+
formatDateFull,
|
|
44
|
+
formatMonth,
|
|
45
|
+
gridClassName = null,
|
|
46
|
+
gridProps = {},
|
|
47
|
+
headerProps = {},
|
|
48
|
+
id,
|
|
49
|
+
markOutsideDays = true,
|
|
50
|
+
markToday = true,
|
|
51
|
+
maxDate,
|
|
52
|
+
minDate,
|
|
53
|
+
month,
|
|
54
|
+
navProps = {},
|
|
55
|
+
nextMonthLabel = null,
|
|
56
|
+
onDateClick = null,
|
|
57
|
+
onDateKeyDown = null,
|
|
58
|
+
onMonthChange = null,
|
|
59
|
+
preventKeyboardFocus = false,
|
|
60
|
+
previousMonthLabel = null,
|
|
61
|
+
selectionConfiguration = {
|
|
62
|
+
type: _customProptypes.CALENDAR_SELECTION_TYPE.single,
|
|
63
|
+
date: null
|
|
64
|
+
},
|
|
65
|
+
weekDayKey = 'nameAbbr',
|
|
66
|
+
weekStartsOn
|
|
67
|
+
}) => {
|
|
68
|
+
const classNames = [getClassName('bpk-calendar')];
|
|
69
|
+
if (className) {
|
|
70
|
+
classNames.push(className);
|
|
71
|
+
}
|
|
72
|
+
if (fixedWidth) {
|
|
73
|
+
classNames.push(getClassName('bpk-calendar--fixed'));
|
|
74
|
+
}
|
|
75
|
+
const headerClasses = [];
|
|
76
|
+
// If the Nav is present add `bpk-calendar__header` which
|
|
77
|
+
// adds spacing between the nav and header.
|
|
78
|
+
if (Nav) {
|
|
79
|
+
headerClasses.push(getClassName('bpk-calendar__header'));
|
|
80
|
+
}
|
|
81
|
+
const gridClasses = [];
|
|
82
|
+
// If the GridHeader is not present add `bpk-calendar__grid` which
|
|
83
|
+
// adds spacing between the nav and grid.
|
|
84
|
+
if (!GridHeader && Nav) {
|
|
85
|
+
gridClasses.push(getClassName('bpk-calendar__grid'));
|
|
86
|
+
}
|
|
87
|
+
if (gridClassName) {
|
|
88
|
+
gridClasses.push(gridClassName);
|
|
89
|
+
}
|
|
90
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
91
|
+
className: classNames.join(' '),
|
|
92
|
+
children: [Nav && /*#__PURE__*/(0, _jsxRuntime.jsx)(Nav, _objectSpread({
|
|
93
|
+
changeMonthLabel: changeMonthLabel,
|
|
94
|
+
formatMonth: formatMonth,
|
|
95
|
+
id: `${id}__bpk_calendar_nav`,
|
|
96
|
+
maxDate: maxDate,
|
|
97
|
+
minDate: minDate,
|
|
98
|
+
month: month,
|
|
99
|
+
nextMonthLabel: nextMonthLabel,
|
|
100
|
+
onMonthChange: onMonthChange,
|
|
101
|
+
previousMonthLabel: previousMonthLabel
|
|
102
|
+
}, navProps)), GridHeader && /*#__PURE__*/(0, _jsxRuntime.jsx)(GridHeader, _objectSpread({
|
|
103
|
+
daysOfWeek: daysOfWeek,
|
|
104
|
+
weekStartsOn: weekStartsOn,
|
|
105
|
+
weekDayKey: weekDayKey,
|
|
106
|
+
className: headerClasses.join(' ')
|
|
107
|
+
}, headerProps)), /*#__PURE__*/(0, _jsxRuntime.jsx)(Grid, _objectSpread({
|
|
108
|
+
DateComponent: CalendarDate,
|
|
109
|
+
dateModifiers: dateModifiers,
|
|
110
|
+
daysOfWeek: daysOfWeek,
|
|
111
|
+
formatDateFull: formatDateFull,
|
|
112
|
+
formatMonth: formatMonth,
|
|
113
|
+
month: month,
|
|
114
|
+
onDateClick: onDateClick,
|
|
115
|
+
onDateKeyDown: onDateKeyDown,
|
|
116
|
+
preventKeyboardFocus: preventKeyboardFocus,
|
|
117
|
+
weekStartsOn: weekStartsOn,
|
|
118
|
+
maxDate: maxDate,
|
|
119
|
+
minDate: minDate,
|
|
120
|
+
focusedDate: focusedDate,
|
|
121
|
+
markToday: markToday,
|
|
122
|
+
markOutsideDays: markOutsideDays,
|
|
123
|
+
className: gridClasses.join(' '),
|
|
124
|
+
dateProps: dateProps,
|
|
125
|
+
selectionConfiguration: selectionConfiguration
|
|
126
|
+
}, gridProps))]
|
|
127
|
+
});
|
|
128
|
+
};
|
|
129
|
+
return BpkCalendar;
|
|
130
|
+
};
|
|
131
|
+
var _default = composeCalendar;
|
|
132
|
+
exports.default = _default;
|