@skyscanner/backpack-web 0.0.4 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bpk-animate-height/package.json +3 -3
- package/bpk-component-accordion/README.md +0 -5
- package/bpk-component-accordion/index.js +1 -2
- package/bpk-component-accordion/package.json +8 -8
- package/bpk-component-accordion/src/BpkAccordion.js +1 -1
- package/bpk-component-accordion/src/BpkAccordionItem.js +7 -20
- package/bpk-component-accordion/src/withAccordionItemState.js +2 -2
- package/bpk-component-accordion/src/withSingleItemAccordionState.js +1 -1
- package/bpk-component-aria-live/package.json +8 -8
- package/bpk-component-aria-live/src/BpkAriaLive.js +1 -1
- package/bpk-component-autosuggest/package.json +5 -5
- package/bpk-component-autosuggest/src/BpkAutosuggest.js +2 -2
- package/bpk-component-autosuggest/src/BpkAutosuggestSuggestion.js +1 -1
- package/bpk-component-badge/package.json +6 -6
- package/bpk-component-badge/src/BpkBadge.js +1 -1
- package/bpk-component-banner-alert/package.json +10 -10
- package/bpk-component-banner-alert/src/AnimateAndFade.js +2 -2
- package/bpk-component-banner-alert/src/BpkBannerAlertInner.js +7 -7
- package/bpk-component-banner-alert/src/withBannerAlertState.js +1 -1
- package/bpk-component-barchart/package.json +9 -9
- package/bpk-component-barchart/src/BpkBarchart.js +2 -2
- package/bpk-component-barchart/src/BpkBarchartBar.js +1 -1
- package/bpk-component-barchart/src/BpkChartAxis.js +1 -1
- package/bpk-component-barchart/src/BpkChartDataTable.js +1 -1
- package/bpk-component-barchart/src/BpkChartGridLines.js +9 -9
- package/bpk-component-barchart/src/RTLtransforms.js +1 -1
- package/bpk-component-blockquote/package.json +3 -3
- package/bpk-component-blockquote/src/BpkBlockquote.js +1 -1
- package/bpk-component-breadcrumb/package.json +6 -6
- package/bpk-component-breadcrumb/src/BpkBreadcrumb.js +1 -1
- package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.js +5 -5
- package/bpk-component-breakpoint/package.json +4 -4
- package/{bpk-component-rating/examples.module.scss → bpk-component-button/BpkButtonPrimaryOnDark.js} +2 -4
- package/{bpk-component-dialog/examples.module.scss → bpk-component-button/BpkButtonPrimaryOnLight.js} +2 -6
- package/bpk-component-button/README.md +40 -21
- package/bpk-component-button/index.js +4 -0
- package/bpk-component-button/package.json +3 -3
- package/bpk-component-button/src/BpkButton.js +27 -7
- package/bpk-component-button/src/BpkButtonLink.js +6 -8
- package/bpk-component-button/src/BpkButtonLink.module.scss +0 -4
- package/bpk-component-button/src/BpkButtonPrimaryOnDark.js +48 -0
- package/bpk-component-button/{BpkButtonStory.module.scss → src/BpkButtonPrimaryOnDark.module.scss} +2 -2
- package/bpk-component-button/src/BpkButtonPrimaryOnLight.js +48 -0
- package/{bpk-component-nudger/BpkNudgerStory.module.scss → bpk-component-button/src/BpkButtonPrimaryOnLight.module.scss} +2 -6
- package/bpk-component-button/src/themeAttributes.js +18 -0
- package/bpk-component-calendar/package.json +10 -10
- package/bpk-component-calendar/src/BpkCalendarContainer.js +1 -1
- package/bpk-component-calendar/src/BpkCalendarDate.js +1 -1
- package/bpk-component-calendar/src/BpkCalendarGrid.js +5 -5
- package/bpk-component-calendar/src/BpkCalendarGrid.module.css +1 -1
- package/bpk-component-calendar/src/BpkCalendarGrid.module.scss +1 -7
- package/bpk-component-calendar/src/BpkCalendarGridHeader.js +1 -1
- package/bpk-component-calendar/src/BpkCalendarGridTransition.js +12 -12
- package/bpk-component-calendar/src/BpkCalendarNav.js +13 -13
- package/bpk-component-calendar/src/Week.js +6 -6
- package/bpk-component-calendar/src/composeCalendar.js +1 -1
- package/bpk-component-calendar/src/custom-proptypes.js +6 -8
- package/bpk-component-card/package.json +5 -5
- package/bpk-component-card/src/BpkCard.js +1 -1
- package/bpk-component-checkbox/package.json +6 -6
- package/bpk-component-checkbox/src/BpkCheckbox.js +1 -1
- package/bpk-component-chip/package.json +6 -6
- package/bpk-component-chip/src/BpkDismissibleChip.js +1 -1
- package/bpk-component-chip/src/BpkSelectableChip.js +2 -2
- package/bpk-component-close-button/package.json +5 -5
- package/bpk-component-close-button/src/BpkCloseButton.js +2 -2
- package/bpk-component-code/package.json +3 -3
- package/bpk-component-code/src/BpkCode.js +1 -1
- package/bpk-component-code/src/BpkCodeBlock.js +1 -1
- package/bpk-component-content-container/package.json +3 -3
- package/bpk-component-content-container/src/BpkContentContainer.js +1 -1
- package/bpk-component-datatable/package.json +5 -5
- package/bpk-component-datatable/src/BpkDataTable.js +1 -1
- package/bpk-component-datatable/src/BpkDataTableColumn.js +1 -1
- package/bpk-component-datatable/src/bpkHeaderRenderer.js +4 -4
- package/bpk-component-datepicker/index.js +1 -1
- package/bpk-component-datepicker/package.json +10 -10
- package/bpk-component-datepicker/src/BpkDatepicker.js +6 -6
- package/bpk-component-datepicker/src/themeAttributes.js +3 -3
- package/bpk-component-description-list/package.json +3 -3
- package/bpk-component-description-list/src/ComponentFactory.js +1 -1
- package/bpk-component-dialog/package.json +9 -9
- package/bpk-component-dialog/src/BpkDialog.js +2 -2
- package/bpk-component-dialog/src/BpkDialogInner.js +3 -3
- package/bpk-component-drawer/package.json +10 -10
- package/bpk-component-drawer/src/BpkDrawer.js +2 -2
- package/bpk-component-drawer/src/BpkDrawerContent.js +3 -3
- package/bpk-component-drawer/src/themeAttributes.js +1 -1
- package/bpk-component-fieldset/package.json +13 -13
- package/bpk-component-fieldset/src/BpkFieldset.js +3 -3
- package/bpk-component-flare/package.json +5 -5
- package/bpk-component-flare/src/BpkContentBubble.js +1 -1
- package/bpk-component-flare/src/BpkFlareBar.js +1 -1
- package/bpk-component-form-validation/package.json +11 -11
- package/bpk-component-form-validation/src/BpkFormValidation.js +4 -4
- package/bpk-component-graphic-promotion/README.md +70 -0
- package/{bpk-component-close-button/examples.js → bpk-component-graphic-promotion/index.js} +9 -11
- package/bpk-component-graphic-promotion/package.json +26 -0
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.js +202 -0
- package/bpk-component-graphic-promotion/src/BpkGraphicPromo.module.scss +255 -0
- package/bpk-component-graphic-promotion/src/custom-breakpoints.module.scss +70 -0
- package/bpk-component-grid/package.json +3 -3
- package/bpk-component-grid/src/BpkGridColumn.js +1 -1
- package/bpk-component-grid/src/BpkGridContainer.js +1 -1
- package/bpk-component-grid/src/BpkGridRow.js +1 -1
- package/bpk-component-grid-toggle/package.json +4 -4
- package/bpk-component-grid-toggle/src/BpkGridToggle.js +2 -2
- package/bpk-component-horizontal-nav/package.json +7 -7
- package/bpk-component-horizontal-nav/src/BpkHorizontalNav.js +2 -2
- package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.js +1 -1
- package/bpk-component-icon/package.json +8 -8
- package/bpk-component-icon/src/classNameModifierHOCFactory.js +1 -1
- package/bpk-component-icon/src/withAlignment.js +4 -3
- package/bpk-component-icon/src/withDescription.js +1 -1
- package/bpk-component-icon/src/withRtlSupport.js +1 -1
- package/bpk-component-image/package.json +7 -7
- package/bpk-component-image/src/BpkBackgroundImage.js +2 -2
- package/bpk-component-image/src/BpkImage.js +2 -2
- package/bpk-component-image/src/withLazyLoading.js +1 -1
- package/bpk-component-image/src/withLoadingBehavior.js +28 -28
- package/bpk-component-infinite-scroll/package.json +7 -7
- package/bpk-component-infinite-scroll/src/withInfiniteScroll.js +106 -106
- package/bpk-component-input/package.json +7 -7
- package/bpk-component-input/src/BpkClearButton.js +3 -3
- package/bpk-component-input/src/BpkInput.js +1 -1
- package/bpk-component-input/src/withOpenEvents.js +1 -1
- package/bpk-component-label/package.json +3 -3
- package/bpk-component-label/src/BpkLabel.js +1 -1
- package/bpk-component-link/package.json +5 -5
- package/bpk-component-link/src/BpkButtonLink.js +1 -1
- package/bpk-component-link/src/BpkLink.js +1 -1
- package/bpk-component-list/package.json +3 -3
- package/bpk-component-list/src/BpkList.js +1 -1
- package/bpk-component-list/src/BpkListItem.js +1 -1
- package/bpk-component-loading-button/package.json +7 -7
- package/bpk-component-loading-button/src/BpkLoadingButton.js +43 -19
- package/{bpk-component-fieldset/examples.module.scss → bpk-component-loading-button/src/BpkLoadingButton.module.scss} +25 -16
- package/bpk-component-map/package.json +7 -7
- package/bpk-component-map/src/BpkIconMarker.js +1 -1
- package/bpk-component-map/src/BpkIconMarkerBackground.js +1 -1
- package/bpk-component-map/src/BpkPriceMarker.js +2 -2
- package/bpk-component-map/src/DefaultLoadingElement.js +2 -2
- package/bpk-component-mobile-scroll-container/package.json +4 -4
- package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.js +1 -1
- package/bpk-component-modal/package.json +10 -10
- package/bpk-component-modal/src/BpkModal.js +8 -8
- package/bpk-component-modal/src/BpkModalInner.js +4 -4
- package/bpk-component-modal/src/themeAttributes.js +1 -1
- package/bpk-component-navigation-bar/package.json +9 -9
- package/bpk-component-navigation-bar/src/BpkNavigationBar.js +2 -2
- package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.js +2 -2
- package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.js +2 -2
- package/bpk-component-navigation-stack/package.json +8 -8
- package/bpk-component-navigation-stack/src/BpkNavigationStack.js +5 -4
- package/bpk-component-nudger/package.json +8 -8
- package/bpk-component-nudger/src/BpkConfigurableNudger.js +6 -6
- package/bpk-component-nudger/src/BpkNudger.js +1 -1
- package/bpk-component-nudger/src/themeAttributes.js +1 -1
- package/bpk-component-overlay/package.json +5 -5
- package/bpk-component-overlay/src/BpkOverlay.js +2 -2
- package/bpk-component-pagination/package.json +5 -5
- package/bpk-component-pagination/src/BpkPagination.js +1 -1
- package/bpk-component-pagination/src/BpkPaginationList.js +1 -1
- package/bpk-component-pagination/src/BpkPaginationNudger.js +4 -4
- package/bpk-component-pagination/src/BpkPaginationPage.js +2 -2
- package/bpk-component-pagination/src/themeAttributes.js +1 -1
- package/bpk-component-panel/package.json +3 -3
- package/bpk-component-panel/src/BpkPanel.js +1 -1
- package/bpk-component-phone-input/package.json +10 -10
- package/bpk-component-phone-input/src/BpkPhoneInput.js +4 -4
- package/bpk-component-popover/package.json +9 -9
- package/bpk-component-popover/src/BpkPopover.js +4 -4
- package/bpk-component-popover/src/BpkPopoverPortal.js +1 -1
- package/bpk-component-popover/src/themeAttributes.js +1 -1
- package/bpk-component-progress/package.json +6 -6
- package/bpk-component-progress/src/BpkProgress.js +1 -1
- package/bpk-component-radio/package.json +5 -5
- package/bpk-component-radio/src/BpkRadio.js +1 -1
- package/bpk-component-rating/package.json +5 -5
- package/bpk-component-rating/src/BpkRating.js +2 -2
- package/bpk-component-rtl-toggle/package.json +3 -3
- package/bpk-component-rtl-toggle/src/BpkRtlToggle.js +1 -1
- package/bpk-component-rtl-toggle/src/updateOnDirectionChange.js +1 -1
- package/bpk-component-scrollable-calendar/index.js +1 -1
- package/bpk-component-scrollable-calendar/package.json +7 -7
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendar.js +1 -1
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate.js +1 -1
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.js +3 -3
- package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.js +2 -2
- package/bpk-component-scrollable-calendar/src/utils.js +1 -1
- package/bpk-component-section-list/package.json +7 -7
- package/bpk-component-section-list/src/BpkSectionListItem.js +3 -3
- package/bpk-component-section-list/src/BpkSectionListSection.js +2 -2
- package/bpk-component-select/package.json +4 -4
- package/bpk-component-select/src/BpkSelect.js +1 -1
- package/bpk-component-skip-link/package.json +3 -3
- package/bpk-component-skip-link/src/BpkSkipLink.js +1 -1
- package/bpk-component-slider/package.json +5 -5
- package/bpk-component-slider/src/BpkSlider.js +1 -1
- package/bpk-component-spinner/package.json +4 -4
- package/bpk-component-spinner/src/BpkExtraLargeSpinner.js +1 -1
- package/bpk-component-spinner/src/BpkLargeSpinner.js +1 -1
- package/bpk-component-spinner/src/BpkSpinner.js +1 -1
- package/bpk-component-star-rating/package.json +6 -6
- package/bpk-component-star-rating/src/BpkInteractiveStar.js +1 -1
- package/bpk-component-star-rating/src/BpkInteractiveStarRating.js +1 -1
- package/bpk-component-star-rating/src/BpkStar.js +8 -8
- package/bpk-component-star-rating/src/BpkStarRating.js +4 -4
- package/bpk-component-star-rating/src/withInteractiveStarRatingState.js +1 -1
- package/bpk-component-switch/package.json +3 -3
- package/bpk-component-switch/src/BpkSwitch.js +1 -1
- package/bpk-component-table/package.json +3 -3
- package/bpk-component-table/src/BpkTable.js +1 -1
- package/bpk-component-table/src/BpkTableCell.js +1 -1
- package/bpk-component-table/src/BpkTableHeadCell.js +1 -1
- package/bpk-component-text/package.json +3 -3
- package/bpk-component-text/src/BpkText.js +1 -1
- package/bpk-component-textarea/package.json +5 -5
- package/bpk-component-textarea/src/BpkTextarea.js +1 -1
- package/bpk-component-theme-toggle/package.json +6 -6
- package/bpk-component-theme-toggle/src/BpkThemeToggle.js +3 -3
- package/bpk-component-theme-toggle/src/updateOnThemeChange.js +1 -1
- package/bpk-component-ticket/package.json +5 -5
- package/bpk-component-ticket/src/BpkTicket.js +7 -7
- package/bpk-component-tooltip/package.json +5 -5
- package/bpk-component-tooltip/src/BpkTooltip.js +1 -1
- package/bpk-component-tooltip/src/BpkTooltipPortal.js +1 -1
- package/bpk-react-utils/index.js +1 -2
- package/bpk-react-utils/package.json +2 -3
- package/bpk-react-utils/src/withDefaultProps.js +2 -1
- package/{bpk-component-chip/examples.module.scss → bpk-react-utils/src/wrapDisplayName.js} +11 -13
- package/bpk-scrim-utils/package.json +3 -3
- package/bpk-scrim-utils/src/BpkScrim.js +1 -1
- package/bpk-scrim-utils/src/withScrim.js +1 -1
- package/bpk-theming/package.json +2 -2
- package/package.json +4 -5
- package/bpk-animate-height/examples.js +0 -67
- package/bpk-component-accordion/examples.js +0 -316
- package/bpk-component-aria-live/examples.js +0 -247
- package/bpk-component-aria-live/examples.module.css +0 -18
- package/bpk-component-aria-live/examples.module.scss +0 -65
- package/bpk-component-autosuggest/examples.js +0 -201
- package/bpk-component-badge/BadgeLayout.js +0 -54
- package/bpk-component-badge/BpkBadgeLayout.module.css +0 -18
- package/bpk-component-badge/BpkBadgeLayout.module.scss +0 -36
- package/bpk-component-badge/examples.js +0 -207
- package/bpk-component-banner-alert/examples.js +0 -253
- package/bpk-component-banner-alert/examples.module.css +0 -18
- package/bpk-component-banner-alert/examples.module.scss +0 -27
- package/bpk-component-barchart/examples.js +0 -334
- package/bpk-component-barchart/hocs.js +0 -67
- package/bpk-component-barchart/stories.module.css +0 -18
- package/bpk-component-barchart/stories.module.scss +0 -37
- package/bpk-component-blockquote/examples.js +0 -33
- package/bpk-component-breadcrumb/examples.js +0 -57
- package/bpk-component-breakpoint/examples.js +0 -72
- package/bpk-component-breakpoint/examples.module.css +0 -18
- package/bpk-component-breakpoint/examples.module.scss +0 -36
- package/bpk-component-button/BpkButtonStory.module.css +0 -18
- package/bpk-component-button/examples.js +0 -213
- package/bpk-component-calendar/coloured-calendar-example.js +0 -106
- package/bpk-component-calendar/examples-components.js +0 -299
- package/bpk-component-calendar/examples.js +0 -369
- package/bpk-component-card/examples.js +0 -91
- package/bpk-component-checkbox/examples.js +0 -197
- package/bpk-component-chip/examples.js +0 -339
- package/bpk-component-chip/examples.module.css +0 -18
- package/bpk-component-code/examples.js +0 -56
- package/bpk-component-content-container/examples.js +0 -307
- package/bpk-component-datatable/examples.js +0 -138
- package/bpk-component-datepicker/examples.js +0 -660
- package/bpk-component-description-list/examples.js +0 -49
- package/bpk-component-dialog/examples.js +0 -182
- package/bpk-component-dialog/examples.module.css +0 -18
- package/bpk-component-dialog/stories.css +0 -1
- package/bpk-component-drawer/examples.js +0 -271
- package/bpk-component-drawer/examples.module.css +0 -18
- package/bpk-component-drawer/examples.module.scss +0 -34
- package/bpk-component-fieldset/examples.js +0 -527
- package/bpk-component-fieldset/examples.module.css +0 -18
- package/bpk-component-flare/examples.js +0 -158
- package/bpk-component-flare/examples.module.css +0 -18
- package/bpk-component-flare/examples.module.scss +0 -66
- package/bpk-component-form-validation/examples.js +0 -171
- package/bpk-component-form-validation/examples.module.css +0 -18
- package/bpk-component-form-validation/examples.module.scss +0 -39
- package/bpk-component-grid/examples.js +0 -796
- package/bpk-component-grid-toggle/examples.js +0 -25
- package/bpk-component-horizontal-nav/examples.js +0 -189
- package/bpk-component-horizontal-nav/examples.module.css +0 -18
- package/bpk-component-horizontal-nav/examples.module.scss +0 -48
- package/bpk-component-icon/examples.js +0 -152
- package/bpk-component-image/examples.js +0 -216
- package/bpk-component-infinite-scroll/examples.js +0 -279
- package/bpk-component-infinite-scroll/examples.module.css +0 -18
- package/bpk-component-infinite-scroll/examples.module.scss +0 -46
- package/bpk-component-input/examples.js +0 -490
- package/bpk-component-input/examples.module.css +0 -18
- package/bpk-component-input/examples.module.scss +0 -57
- package/bpk-component-label/examples.js +0 -67
- package/bpk-component-link/examples.js +0 -110
- package/bpk-component-list/examples.js +0 -56
- package/bpk-component-loading-button/examples.js +0 -660
- package/bpk-component-map/examples.js +0 -305
- package/bpk-component-mobile-scroll-container/examples.js +0 -76
- package/bpk-component-mobile-scroll-container/examples.module.css +0 -18
- package/bpk-component-mobile-scroll-container/examples.module.scss +0 -46
- package/bpk-component-modal/examples.js +0 -304
- package/bpk-component-modal/examples.module.css +0 -18
- package/bpk-component-modal/examples.module.scss +0 -35
- package/bpk-component-navigation-bar/AirlineLogo.js +0 -42
- package/bpk-component-navigation-bar/AirlineLogo.module.css +0 -18
- package/bpk-component-navigation-bar/AirlineLogo.module.scss +0 -27
- package/bpk-component-navigation-bar/examples.js +0 -193
- package/bpk-component-navigation-bar/examples.module.css +0 -18
- package/bpk-component-navigation-bar/examples.module.scss +0 -32
- package/bpk-component-navigation-stack/examples.js +0 -73
- package/bpk-component-navigation-stack/examples.module.css +0 -18
- package/bpk-component-navigation-stack/examples.module.scss +0 -43
- package/bpk-component-navigation-stack/stories-components.js +0 -202
- package/bpk-component-nudger/BpkNudgerStory.module.css +0 -18
- package/bpk-component-nudger/examples.js +0 -204
- package/bpk-component-overlay/examples.js +0 -163
- package/bpk-component-overlay/examples.module.css +0 -18
- package/bpk-component-overlay/examples.module.scss +0 -38
- package/bpk-component-pagination/examples.js +0 -93
- package/bpk-component-panel/examples.js +0 -63
- package/bpk-component-phone-input/examples.js +0 -181
- package/bpk-component-popover/examples.js +0 -267
- package/bpk-component-popover/examples.module.css +0 -18
- package/bpk-component-popover/examples.module.scss +0 -33
- package/bpk-component-progress/examples.js +0 -130
- package/bpk-component-progress/examples.module.css +0 -18
- package/bpk-component-progress/examples.module.scss +0 -29
- package/bpk-component-radio/examples.js +0 -126
- package/bpk-component-rating/examples.js +0 -373
- package/bpk-component-rating/examples.module.css +0 -18
- package/bpk-component-scrollable-calendar/examples.js +0 -383
- package/bpk-component-section-list/examples.js +0 -55
- package/bpk-component-select/examples.js +0 -274
- package/bpk-component-skip-link/examples.js +0 -40
- package/bpk-component-slider/examples.js +0 -122
- package/bpk-component-spinner/SpinnerLayout.js +0 -56
- package/bpk-component-spinner/SpinnerLayout.module.css +0 -18
- package/bpk-component-spinner/SpinnerLayout.module.scss +0 -36
- package/bpk-component-spinner/examples.js +0 -56
- package/bpk-component-star-rating/examples.js +0 -195
- package/bpk-component-switch/examples.js +0 -40
- package/bpk-component-table/examples.js +0 -97
- package/bpk-component-text/examples.js +0 -135
- package/bpk-component-text/examples.module.css +0 -18
- package/bpk-component-text/examples.module.scss +0 -25
- package/bpk-component-textarea/examples.js +0 -116
- package/bpk-component-ticket/examples.js +0 -203
- package/bpk-component-ticket/examples.module.css +0 -18
- package/bpk-component-ticket/examples.module.scss +0 -79
- package/bpk-component-tooltip/examples.js +0 -181
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyscanner/backpack-web",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"description": "Backpack Design System web library",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -22,11 +22,11 @@
|
|
|
22
22
|
"access": "public"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@skyscanner/bpk-foundations-web": "^
|
|
25
|
+
"@skyscanner/bpk-foundations-web": "^6.1.0",
|
|
26
26
|
"@skyscanner/popper.js": "^1.12.9-beta.1",
|
|
27
27
|
"a11y-focus-scope": "^1.1.3",
|
|
28
28
|
"a11y-focus-store": "^1.0.0",
|
|
29
|
-
"bpk-mixins": "^
|
|
29
|
+
"bpk-mixins": "^28.1.0",
|
|
30
30
|
"date-fns": "^2.21.1",
|
|
31
31
|
"d3-path": "^2.0.0",
|
|
32
32
|
"d3-scale": "^4.0.2",
|
|
@@ -41,8 +41,7 @@
|
|
|
41
41
|
"react-responsive": "^6.1.2",
|
|
42
42
|
"react-slider": "^1.3.1",
|
|
43
43
|
"react-transition-group": "^2.5.3",
|
|
44
|
-
"react-virtualized": "^9.22.3"
|
|
45
|
-
"recompose": "^0.30.0"
|
|
44
|
+
"react-virtualized": "^9.22.3"
|
|
46
45
|
},
|
|
47
46
|
"peerDependencies": {
|
|
48
47
|
"react": "^16.3.0 || ^17.0.0"
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Backpack - Skyscanner's Design System
|
|
3
|
-
*
|
|
4
|
-
* Copyright 2016 Skyscanner Ltd
|
|
5
|
-
*
|
|
6
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
* you may not use this file except in compliance with the License.
|
|
8
|
-
* You may obtain a copy of the License at
|
|
9
|
-
*
|
|
10
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
*
|
|
12
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
* See the License for the specific language governing permissions and
|
|
16
|
-
* limitations under the License.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
/* @flow strict */
|
|
20
|
-
|
|
21
|
-
import BpkButton from '../../bpk-component-button';
|
|
22
|
-
import React, { Component, type Node } from 'react';
|
|
23
|
-
|
|
24
|
-
import AnimateHeight from './index';
|
|
25
|
-
|
|
26
|
-
type Props = {
|
|
27
|
-
fromHeight: string | number,
|
|
28
|
-
toHeight: string | number,
|
|
29
|
-
buttonText: Node,
|
|
30
|
-
};
|
|
31
|
-
type State = {
|
|
32
|
-
height: string | number,
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
class AnimateHeightExample extends Component<Props, State> {
|
|
36
|
-
constructor(props: Props) {
|
|
37
|
-
super(props);
|
|
38
|
-
|
|
39
|
-
this.state = {
|
|
40
|
-
height: this.props.fromHeight,
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
onClick = () => {
|
|
45
|
-
this.setState((prevState) => {
|
|
46
|
-
const height =
|
|
47
|
-
prevState.height !== this.props.fromHeight
|
|
48
|
-
? this.props.fromHeight
|
|
49
|
-
: this.props.toHeight;
|
|
50
|
-
|
|
51
|
-
return { height };
|
|
52
|
-
});
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
render() {
|
|
56
|
-
const { buttonText, fromHeight, toHeight, ...rest } = this.props;
|
|
57
|
-
return (
|
|
58
|
-
<div>
|
|
59
|
-
<AnimateHeight {...rest} height={this.state.height} />
|
|
60
|
-
<br />
|
|
61
|
-
<BpkButton onClick={this.onClick}>{buttonText}</BpkButton>
|
|
62
|
-
</div>
|
|
63
|
-
);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
export default AnimateHeightExample;
|
|
@@ -1,316 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Backpack - Skyscanner's Design System
|
|
3
|
-
*
|
|
4
|
-
* Copyright 2016 Skyscanner Ltd
|
|
5
|
-
*
|
|
6
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
* you may not use this file except in compliance with the License.
|
|
8
|
-
* You may obtain a copy of the License at
|
|
9
|
-
*
|
|
10
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
*
|
|
12
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
* See the License for the specific language governing permissions and
|
|
16
|
-
* limitations under the License.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
/* @flow strict */
|
|
20
|
-
|
|
21
|
-
import React from 'react';
|
|
22
|
-
import BpkCheckbox from '../../bpk-component-checkbox';
|
|
23
|
-
import { withAlignment } from '../../bpk-component-icon';
|
|
24
|
-
import StopsIcon from '../../bpk-component-icon/sm/stops';
|
|
25
|
-
import TimeIcon from '../../bpk-component-icon/sm/time';
|
|
26
|
-
import {
|
|
27
|
-
colorMonteverde,
|
|
28
|
-
colorPanjin,
|
|
29
|
-
iconSizeSm,
|
|
30
|
-
lineHeightBase,
|
|
31
|
-
} from '@skyscanner/bpk-foundations-web/tokens/base.es6';
|
|
32
|
-
|
|
33
|
-
import {
|
|
34
|
-
BpkAccordion,
|
|
35
|
-
withSingleItemAccordionState,
|
|
36
|
-
BpkAccordionItem,
|
|
37
|
-
withAccordionItemState,
|
|
38
|
-
} from './index';
|
|
39
|
-
|
|
40
|
-
const SingleItemAccordion = withSingleItemAccordionState(BpkAccordion);
|
|
41
|
-
const StatefulAccordionItem = withAccordionItemState(BpkAccordionItem);
|
|
42
|
-
|
|
43
|
-
const AlignedStopsIcon = withAlignment(StopsIcon, lineHeightBase, iconSizeSm);
|
|
44
|
-
const AlignedTimeIcon = withAlignment(TimeIcon, lineHeightBase, iconSizeSm);
|
|
45
|
-
|
|
46
|
-
const CheckboxWrapper = (props) => (
|
|
47
|
-
<div style={{ padding: `1rem 0` }} {...props} />
|
|
48
|
-
);
|
|
49
|
-
|
|
50
|
-
const StopsContent = () => (
|
|
51
|
-
<form>
|
|
52
|
-
<CheckboxWrapper>
|
|
53
|
-
<BpkCheckbox name="direct" label="Direct" onChange={() => null} checked />
|
|
54
|
-
</CheckboxWrapper>
|
|
55
|
-
<CheckboxWrapper>
|
|
56
|
-
<BpkCheckbox name="1-stop" label="1 stop" onChange={() => null} checked />
|
|
57
|
-
</CheckboxWrapper>
|
|
58
|
-
<CheckboxWrapper>
|
|
59
|
-
<BpkCheckbox
|
|
60
|
-
name="2-plus-stops"
|
|
61
|
-
label="2+ stops"
|
|
62
|
-
onChange={() => null}
|
|
63
|
-
checked
|
|
64
|
-
/>
|
|
65
|
-
</CheckboxWrapper>
|
|
66
|
-
</form>
|
|
67
|
-
);
|
|
68
|
-
|
|
69
|
-
const AirlinesContent = () => (
|
|
70
|
-
<form>
|
|
71
|
-
<CheckboxWrapper>
|
|
72
|
-
<BpkCheckbox
|
|
73
|
-
name="air-france"
|
|
74
|
-
label="Air France"
|
|
75
|
-
onChange={() => null}
|
|
76
|
-
checked
|
|
77
|
-
/>
|
|
78
|
-
</CheckboxWrapper>
|
|
79
|
-
<CheckboxWrapper>
|
|
80
|
-
<BpkCheckbox
|
|
81
|
-
name="alitalia"
|
|
82
|
-
label="Alitalia"
|
|
83
|
-
onChange={() => null}
|
|
84
|
-
checked
|
|
85
|
-
/>
|
|
86
|
-
</CheckboxWrapper>
|
|
87
|
-
<CheckboxWrapper>
|
|
88
|
-
<BpkCheckbox
|
|
89
|
-
name="bmi-regional"
|
|
90
|
-
label="BMI regional"
|
|
91
|
-
onChange={() => null}
|
|
92
|
-
checked
|
|
93
|
-
/>
|
|
94
|
-
</CheckboxWrapper>
|
|
95
|
-
<CheckboxWrapper>
|
|
96
|
-
<BpkCheckbox
|
|
97
|
-
name="british-airways"
|
|
98
|
-
label="British Airways"
|
|
99
|
-
onChange={() => null}
|
|
100
|
-
checked
|
|
101
|
-
/>
|
|
102
|
-
</CheckboxWrapper>
|
|
103
|
-
<CheckboxWrapper>
|
|
104
|
-
<BpkCheckbox
|
|
105
|
-
name="easyjet"
|
|
106
|
-
label="Easyjet"
|
|
107
|
-
onChange={() => null}
|
|
108
|
-
checked
|
|
109
|
-
/>
|
|
110
|
-
</CheckboxWrapper>
|
|
111
|
-
</form>
|
|
112
|
-
);
|
|
113
|
-
|
|
114
|
-
const AirportsContent = () => (
|
|
115
|
-
<form>
|
|
116
|
-
<CheckboxWrapper>
|
|
117
|
-
<BpkCheckbox
|
|
118
|
-
name="lcy"
|
|
119
|
-
label="London City"
|
|
120
|
-
onChange={() => null}
|
|
121
|
-
checked
|
|
122
|
-
/>
|
|
123
|
-
</CheckboxWrapper>
|
|
124
|
-
<CheckboxWrapper>
|
|
125
|
-
<BpkCheckbox
|
|
126
|
-
name="LGW"
|
|
127
|
-
label="London Gatwick"
|
|
128
|
-
onChange={() => null}
|
|
129
|
-
checked
|
|
130
|
-
/>
|
|
131
|
-
</CheckboxWrapper>
|
|
132
|
-
<CheckboxWrapper>
|
|
133
|
-
<BpkCheckbox
|
|
134
|
-
name="lhr"
|
|
135
|
-
label="London Heathrow"
|
|
136
|
-
onChange={() => null}
|
|
137
|
-
checked
|
|
138
|
-
/>
|
|
139
|
-
</CheckboxWrapper>
|
|
140
|
-
<CheckboxWrapper>
|
|
141
|
-
<BpkCheckbox
|
|
142
|
-
name="ltn"
|
|
143
|
-
label="London Luton"
|
|
144
|
-
onChange={() => null}
|
|
145
|
-
checked
|
|
146
|
-
/>
|
|
147
|
-
</CheckboxWrapper>
|
|
148
|
-
<CheckboxWrapper>
|
|
149
|
-
<BpkCheckbox
|
|
150
|
-
name="stn"
|
|
151
|
-
label="London Stansted"
|
|
152
|
-
onChange={() => null}
|
|
153
|
-
checked
|
|
154
|
-
/>
|
|
155
|
-
</CheckboxWrapper>
|
|
156
|
-
</form>
|
|
157
|
-
);
|
|
158
|
-
|
|
159
|
-
const SingleItemExample = () => (
|
|
160
|
-
<SingleItemAccordion>
|
|
161
|
-
<BpkAccordionItem id="stops" title="Stops" initiallyExpanded>
|
|
162
|
-
<StopsContent />
|
|
163
|
-
</BpkAccordionItem>
|
|
164
|
-
<BpkAccordionItem id="airlines" title="Airlines">
|
|
165
|
-
<AirlinesContent />
|
|
166
|
-
</BpkAccordionItem>
|
|
167
|
-
<BpkAccordionItem id="airports" title="Airports">
|
|
168
|
-
<AirportsContent />
|
|
169
|
-
</BpkAccordionItem>
|
|
170
|
-
</SingleItemAccordion>
|
|
171
|
-
);
|
|
172
|
-
|
|
173
|
-
const SingleItemExampleInitiallyExpanded = () => (
|
|
174
|
-
<SingleItemAccordion>
|
|
175
|
-
<BpkAccordionItem id="stops" title="Stops">
|
|
176
|
-
<StopsContent />
|
|
177
|
-
</BpkAccordionItem>
|
|
178
|
-
<BpkAccordionItem
|
|
179
|
-
id="departure-times"
|
|
180
|
-
title="Departure times"
|
|
181
|
-
initiallyExpanded
|
|
182
|
-
>
|
|
183
|
-
<AirlinesContent />
|
|
184
|
-
</BpkAccordionItem>
|
|
185
|
-
<BpkAccordionItem id="journey-duration" title="Journey duration">
|
|
186
|
-
<AirportsContent />
|
|
187
|
-
</BpkAccordionItem>
|
|
188
|
-
</SingleItemAccordion>
|
|
189
|
-
);
|
|
190
|
-
|
|
191
|
-
const MultipleItemsOpenExample = () => (
|
|
192
|
-
<BpkAccordion>
|
|
193
|
-
<StatefulAccordionItem id="stops" title="Stops" initiallyExpanded>
|
|
194
|
-
<StopsContent />
|
|
195
|
-
</StatefulAccordionItem>
|
|
196
|
-
<StatefulAccordionItem
|
|
197
|
-
id="departure-times"
|
|
198
|
-
title="Departure times"
|
|
199
|
-
initiallyExpanded
|
|
200
|
-
>
|
|
201
|
-
<AirlinesContent />
|
|
202
|
-
</StatefulAccordionItem>
|
|
203
|
-
<StatefulAccordionItem
|
|
204
|
-
id="journey-duration"
|
|
205
|
-
title="Journey duration"
|
|
206
|
-
initiallyExpanded
|
|
207
|
-
>
|
|
208
|
-
<AirportsContent />
|
|
209
|
-
</StatefulAccordionItem>
|
|
210
|
-
</BpkAccordion>
|
|
211
|
-
);
|
|
212
|
-
|
|
213
|
-
const MultipleItemsOpenInitiallyExpandedExample = () => (
|
|
214
|
-
<BpkAccordion>
|
|
215
|
-
<StatefulAccordionItem id="stops" title="Stops">
|
|
216
|
-
<StopsContent />
|
|
217
|
-
</StatefulAccordionItem>
|
|
218
|
-
<StatefulAccordionItem
|
|
219
|
-
id="departure-times"
|
|
220
|
-
title="Departure times"
|
|
221
|
-
initiallyExpanded
|
|
222
|
-
>
|
|
223
|
-
<AirlinesContent />
|
|
224
|
-
</StatefulAccordionItem>
|
|
225
|
-
<StatefulAccordionItem
|
|
226
|
-
id="journey-duration"
|
|
227
|
-
title="Journey duration"
|
|
228
|
-
initiallyExpanded
|
|
229
|
-
>
|
|
230
|
-
<AirportsContent />
|
|
231
|
-
</StatefulAccordionItem>
|
|
232
|
-
</BpkAccordion>
|
|
233
|
-
);
|
|
234
|
-
|
|
235
|
-
const CustomExample = () => (
|
|
236
|
-
<BpkAccordion>
|
|
237
|
-
<BpkAccordionItem id="stops" title="Stops" tagName="h3" expanded>
|
|
238
|
-
<StopsContent />
|
|
239
|
-
</BpkAccordionItem>
|
|
240
|
-
<BpkAccordionItem id="departure-times" title="Departure times" tagName="h2">
|
|
241
|
-
<AirlinesContent />
|
|
242
|
-
</BpkAccordionItem>
|
|
243
|
-
<BpkAccordionItem id="journey-duration" title="Journey duration" expanded>
|
|
244
|
-
<AirportsContent />
|
|
245
|
-
</BpkAccordionItem>
|
|
246
|
-
</BpkAccordion>
|
|
247
|
-
);
|
|
248
|
-
|
|
249
|
-
const CustomTitleTextStyleExample = () => (
|
|
250
|
-
<SingleItemAccordion>
|
|
251
|
-
<BpkAccordionItem textStyle="lg" id="stops" title="Stops" initiallyExpanded>
|
|
252
|
-
<StopsContent />
|
|
253
|
-
</BpkAccordionItem>
|
|
254
|
-
<BpkAccordionItem textStyle="lg" id="airlines" title="Airlines">
|
|
255
|
-
<AirlinesContent />
|
|
256
|
-
</BpkAccordionItem>
|
|
257
|
-
<BpkAccordionItem textStyle="lg" id="airports" title="Airports">
|
|
258
|
-
<AirportsContent />
|
|
259
|
-
</BpkAccordionItem>
|
|
260
|
-
</SingleItemAccordion>
|
|
261
|
-
);
|
|
262
|
-
|
|
263
|
-
const WithIconsExample = () => (
|
|
264
|
-
<BpkAccordion>
|
|
265
|
-
<BpkAccordionItem
|
|
266
|
-
id="stops"
|
|
267
|
-
title="Stops"
|
|
268
|
-
tagName="h3"
|
|
269
|
-
expanded
|
|
270
|
-
icon={<AlignedStopsIcon fill={colorPanjin} />}
|
|
271
|
-
>
|
|
272
|
-
<StopsContent />
|
|
273
|
-
</BpkAccordionItem>
|
|
274
|
-
<BpkAccordionItem
|
|
275
|
-
id="departure-times"
|
|
276
|
-
title="Departure times"
|
|
277
|
-
tagName="h2"
|
|
278
|
-
icon={<AlignedTimeIcon fill={colorMonteverde} />}
|
|
279
|
-
>
|
|
280
|
-
<AirlinesContent />
|
|
281
|
-
</BpkAccordionItem>
|
|
282
|
-
<BpkAccordionItem id="journey-duration" title="Journey duration" expanded>
|
|
283
|
-
<AirportsContent />
|
|
284
|
-
</BpkAccordionItem>
|
|
285
|
-
</BpkAccordion>
|
|
286
|
-
);
|
|
287
|
-
|
|
288
|
-
const WithBoldTitlesExample = () => (
|
|
289
|
-
<SingleItemAccordion>
|
|
290
|
-
<BpkAccordionItem
|
|
291
|
-
id="stops"
|
|
292
|
-
title="Stops"
|
|
293
|
-
initiallyExpanded
|
|
294
|
-
textStyle="label-1"
|
|
295
|
-
>
|
|
296
|
-
<StopsContent />
|
|
297
|
-
</BpkAccordionItem>
|
|
298
|
-
<BpkAccordionItem id="airlines" title="Airlines" textStyle="heading-4">
|
|
299
|
-
<AirlinesContent />
|
|
300
|
-
</BpkAccordionItem>
|
|
301
|
-
<BpkAccordionItem id="airports" title="Airports" textStyle="heading-3">
|
|
302
|
-
<AirportsContent />
|
|
303
|
-
</BpkAccordionItem>
|
|
304
|
-
</SingleItemAccordion>
|
|
305
|
-
);
|
|
306
|
-
|
|
307
|
-
export {
|
|
308
|
-
SingleItemExample,
|
|
309
|
-
SingleItemExampleInitiallyExpanded,
|
|
310
|
-
MultipleItemsOpenExample,
|
|
311
|
-
MultipleItemsOpenInitiallyExpandedExample,
|
|
312
|
-
CustomExample,
|
|
313
|
-
CustomTitleTextStyleExample,
|
|
314
|
-
WithIconsExample,
|
|
315
|
-
WithBoldTitlesExample,
|
|
316
|
-
};
|
|
@@ -1,247 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Backpack - Skyscanner's Design System
|
|
3
|
-
*
|
|
4
|
-
* Copyright 2016 Skyscanner Ltd
|
|
5
|
-
*
|
|
6
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
* you may not use this file except in compliance with the License.
|
|
8
|
-
* You may obtain a copy of the License at
|
|
9
|
-
*
|
|
10
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
*
|
|
12
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
* See the License for the specific language governing permissions and
|
|
16
|
-
* limitations under the License.
|
|
17
|
-
*/
|
|
18
|
-
/* @flow strict */
|
|
19
|
-
|
|
20
|
-
import React, { type Node } from 'react';
|
|
21
|
-
import BpkChip from '../../bpk-component-chip';
|
|
22
|
-
import BpkFieldset from '../../bpk-component-fieldset';
|
|
23
|
-
import BpkSelect from '../../bpk-component-select';
|
|
24
|
-
import BpkSwitch from '../../bpk-component-switch';
|
|
25
|
-
import { cssModules } from '../bpk-react-utils';
|
|
26
|
-
import { BpkCode } from '../../bpk-component-code';
|
|
27
|
-
|
|
28
|
-
import STYLES from './examples.module.scss';
|
|
29
|
-
|
|
30
|
-
import BpkAriaLive, { ARIA_LIVE_POLITENESS_SETTINGS } from './index';
|
|
31
|
-
|
|
32
|
-
const getClassName = cssModules(STYLES);
|
|
33
|
-
|
|
34
|
-
const AriaLiveDemo = (props: {
|
|
35
|
-
preamble: ?Node,
|
|
36
|
-
children: Node,
|
|
37
|
-
className: ?string,
|
|
38
|
-
style: ?{},
|
|
39
|
-
visible: boolean,
|
|
40
|
-
}) => {
|
|
41
|
-
const { children, className, preamble, style, visible, ...rest } = props;
|
|
42
|
-
|
|
43
|
-
return (
|
|
44
|
-
<div
|
|
45
|
-
className={getClassName('bpk-storybook-aria-live-demo', className)}
|
|
46
|
-
style={style}
|
|
47
|
-
>
|
|
48
|
-
<p>
|
|
49
|
-
<strong>ARIA live region:</strong>
|
|
50
|
-
</p>
|
|
51
|
-
<p>
|
|
52
|
-
{visible
|
|
53
|
-
? 'This content is relevant to everyone, not just assistive technologies, so it is permanently visible.'
|
|
54
|
-
: 'This would usually be visually hidden, and only visible to assistive technologies. It is visible here for demo purposes.'}
|
|
55
|
-
</p>
|
|
56
|
-
{preamble}
|
|
57
|
-
<BpkAriaLive
|
|
58
|
-
{...rest}
|
|
59
|
-
visible
|
|
60
|
-
className={getClassName('bpk-storybook-aria-live-demo__aria-content')}
|
|
61
|
-
politenessSetting={ARIA_LIVE_POLITENESS_SETTINGS.assertive}
|
|
62
|
-
>
|
|
63
|
-
{children}
|
|
64
|
-
</BpkAriaLive>
|
|
65
|
-
</div>
|
|
66
|
-
);
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
AriaLiveDemo.defaultProps = {
|
|
70
|
-
preamble: null,
|
|
71
|
-
className: null,
|
|
72
|
-
visible: false,
|
|
73
|
-
style: null,
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
class SelectExample extends React.Component<
|
|
77
|
-
{},
|
|
78
|
-
{ destination: string, direct: boolean },
|
|
79
|
-
> {
|
|
80
|
-
constructor() {
|
|
81
|
-
super();
|
|
82
|
-
this.state = {
|
|
83
|
-
destination: 'Panjin',
|
|
84
|
-
direct: false,
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
onChangeDestination = (destination: string) => {
|
|
89
|
-
this.setState({ destination });
|
|
90
|
-
};
|
|
91
|
-
|
|
92
|
-
toggleDirectness = () => {
|
|
93
|
-
this.setState((prevState) => ({ direct: !prevState.direct }));
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
id = 'aria-live-select-example';
|
|
97
|
-
|
|
98
|
-
render() {
|
|
99
|
-
const { destination, direct } = this.state;
|
|
100
|
-
return (
|
|
101
|
-
<div>
|
|
102
|
-
<div>
|
|
103
|
-
<p>
|
|
104
|
-
Interactive component with
|
|
105
|
-
<BpkCode>aria-controls="{this.id}"</BpkCode> to link it to
|
|
106
|
-
the ARIA live region below with the same ID.
|
|
107
|
-
</p>
|
|
108
|
-
<div
|
|
109
|
-
className={getClassName(
|
|
110
|
-
'bpk-storybook-aria-live-demo__select-wrapper',
|
|
111
|
-
)}
|
|
112
|
-
>
|
|
113
|
-
<BpkFieldset
|
|
114
|
-
label="Destination"
|
|
115
|
-
className={getClassName('bpk-storybook-aria-live-demo__select')}
|
|
116
|
-
>
|
|
117
|
-
<BpkSelect
|
|
118
|
-
id="destination"
|
|
119
|
-
name="destination"
|
|
120
|
-
value={destination}
|
|
121
|
-
onChange={(event) => {
|
|
122
|
-
this.onChangeDestination(event.target.value);
|
|
123
|
-
}}
|
|
124
|
-
>
|
|
125
|
-
<option value="Abisko">Abisko</option>
|
|
126
|
-
<option value="Nara">Nara</option>
|
|
127
|
-
<option value="Panjin">Panjin</option>
|
|
128
|
-
</BpkSelect>
|
|
129
|
-
</BpkFieldset>
|
|
130
|
-
<BpkSwitch
|
|
131
|
-
className={getClassName('bpk-storybook-aria-live-demo__switch')}
|
|
132
|
-
label="Direct flights only"
|
|
133
|
-
checked={direct}
|
|
134
|
-
onChange={this.toggleDirectness}
|
|
135
|
-
/>
|
|
136
|
-
</div>
|
|
137
|
-
</div>
|
|
138
|
-
<AriaLiveDemo
|
|
139
|
-
aria-atomic
|
|
140
|
-
visible
|
|
141
|
-
id={this.id}
|
|
142
|
-
className={getClassName('bpk-storybook-aria-live-demo__aria-live')}
|
|
143
|
-
preamble={
|
|
144
|
-
<p>
|
|
145
|
-
This region has <BpkCode>id="{this.id}"</BpkCode>.
|
|
146
|
-
<br />
|
|
147
|
-
It also has <BpkCode>aria-atomic="true"</BpkCode> to
|
|
148
|
-
instruct assistive technologies to read out everything when
|
|
149
|
-
something changes, not just the part that changed.
|
|
150
|
-
</p>
|
|
151
|
-
}
|
|
152
|
-
>
|
|
153
|
-
<p>
|
|
154
|
-
<strong>
|
|
155
|
-
Searching for {direct ? 'direct ' : ''}flights to {destination}.
|
|
156
|
-
</strong>
|
|
157
|
-
</p>
|
|
158
|
-
</AriaLiveDemo>
|
|
159
|
-
</div>
|
|
160
|
-
);
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
class ChipsExample extends React.Component<
|
|
165
|
-
{},
|
|
166
|
-
{
|
|
167
|
-
categories: { Flights: boolean, Hotels: boolean, 'Car hire': boolean },
|
|
168
|
-
updates: Array<string>,
|
|
169
|
-
},
|
|
170
|
-
> {
|
|
171
|
-
constructor() {
|
|
172
|
-
super();
|
|
173
|
-
this.state = {
|
|
174
|
-
categories: {
|
|
175
|
-
Flights: true,
|
|
176
|
-
Hotels: true,
|
|
177
|
-
'Car hire': false,
|
|
178
|
-
},
|
|
179
|
-
updates: [],
|
|
180
|
-
};
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
id = 'aria-live-chips-example';
|
|
184
|
-
|
|
185
|
-
toggleCategory = (category: string) => {
|
|
186
|
-
this.setState((prevState) => {
|
|
187
|
-
const nextState = prevState;
|
|
188
|
-
nextState.categories[category] = !prevState.categories[category];
|
|
189
|
-
nextState.updates.push(
|
|
190
|
-
`${category} became ${nextState.categories[category] ? 'enabled' : 'disabled'
|
|
191
|
-
}.`,
|
|
192
|
-
);
|
|
193
|
-
return nextState;
|
|
194
|
-
});
|
|
195
|
-
};
|
|
196
|
-
|
|
197
|
-
render() {
|
|
198
|
-
const { categories, updates } = this.state;
|
|
199
|
-
return (
|
|
200
|
-
<div>
|
|
201
|
-
<div
|
|
202
|
-
className={getClassName(
|
|
203
|
-
'bpk-storybook-aria-live-demo__chips-wrapper',
|
|
204
|
-
)}
|
|
205
|
-
>
|
|
206
|
-
<p>
|
|
207
|
-
Interactive component with
|
|
208
|
-
<BpkCode>aria-controls="{this.id}"</BpkCode> to link it to
|
|
209
|
-
the ARIA live region below with the same ID.
|
|
210
|
-
</p>
|
|
211
|
-
{Object.keys(categories).map((category) => (
|
|
212
|
-
<BpkChip
|
|
213
|
-
className={getClassName('bpk-storybook-aria-live-demo__chip')}
|
|
214
|
-
aria-controls={this.id}
|
|
215
|
-
selected={categories[category]}
|
|
216
|
-
accessibilityLabel={category}
|
|
217
|
-
onClick={() => {
|
|
218
|
-
this.toggleCategory(category);
|
|
219
|
-
}}
|
|
220
|
-
>
|
|
221
|
-
{category}
|
|
222
|
-
</BpkChip>
|
|
223
|
-
))}
|
|
224
|
-
</div>
|
|
225
|
-
<AriaLiveDemo
|
|
226
|
-
id={this.id}
|
|
227
|
-
className={getClassName('bpk-storybook-aria-live-demo__aria-live')}
|
|
228
|
-
preamble={
|
|
229
|
-
<p>
|
|
230
|
-
This region has <BpkCode>id="{this.id}"</BpkCode>.
|
|
231
|
-
<br />
|
|
232
|
-
As the above chips are toggled, updates appear here.
|
|
233
|
-
</p>
|
|
234
|
-
}
|
|
235
|
-
>
|
|
236
|
-
{updates.map((update) => (
|
|
237
|
-
<p>
|
|
238
|
-
<strong>{update}</strong>
|
|
239
|
-
</p>
|
|
240
|
-
))}
|
|
241
|
-
</AriaLiveDemo>
|
|
242
|
-
</div>
|
|
243
|
-
);
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
|
|
247
|
-
export { AriaLiveDemo, ChipsExample, SelectExample };
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Backpack - Skyscanner's Design System
|
|
3
|
-
*
|
|
4
|
-
* Copyright 2016 Skyscanner Ltd
|
|
5
|
-
*
|
|
6
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
* you may not use this file except in compliance with the License.
|
|
8
|
-
* You may obtain a copy of the License at
|
|
9
|
-
*
|
|
10
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
*
|
|
12
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
* See the License for the specific language governing permissions and
|
|
16
|
-
* limitations under the License.
|
|
17
|
-
*/
|
|
18
|
-
@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}.bpk-storybook-aria-live-demo{padding:.75rem;background:#f1f2f8;color:#8f90a0;box-shadow:0 0 0 1px #8f90a0 inset;border-radius:.375rem}.bpk-storybook-aria-live-demo__aria-content{color:#111236}.bpk-storybook-aria-live-demo__chips-wrapper{margin-bottom:.75rem}.bpk-storybook-aria-live-demo__select-wrapper{display:flex;margin-bottom:.75rem;justify-content:space-between;align-items:center}.bpk-storybook-aria-live-demo__select{flex:0.5}.bpk-storybook-aria-live-demo__switch{flex:0.3}.bpk-storybook-aria-live-demo__chip{margin-right:.75rem;margin-bottom:.75rem}.bpk-storybook-aria-live-demo__aria-live{margin-top:.75rem}.bpk-storybook-aria-live-demo>p{margin-top:0;margin-bottom:1rem}
|