@skyscanner/backpack-web 0.0.6 → 0.3.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.
Files changed (363) hide show
  1. package/bpk-animate-height/package.json +3 -3
  2. package/bpk-component-accordion/README.md +0 -5
  3. package/bpk-component-accordion/index.js +1 -2
  4. package/bpk-component-accordion/package.json +8 -8
  5. package/bpk-component-accordion/src/BpkAccordion.js +1 -0
  6. package/bpk-component-accordion/src/BpkAccordionItem.js +3 -15
  7. package/bpk-component-accordion/src/withAccordionItemState.js +1 -0
  8. package/bpk-component-accordion/src/withSingleItemAccordionState.js +1 -0
  9. package/bpk-component-aria-live/package.json +8 -8
  10. package/bpk-component-aria-live/src/BpkAriaLive.js +1 -0
  11. package/bpk-component-autosuggest/package.json +5 -5
  12. package/bpk-component-autosuggest/src/BpkAutosuggest.js +2 -1
  13. package/bpk-component-autosuggest/src/BpkAutosuggestSuggestion.js +1 -0
  14. package/bpk-component-badge/package.json +6 -6
  15. package/bpk-component-badge/src/BpkBadge.js +1 -0
  16. package/bpk-component-banner-alert/package.json +10 -10
  17. package/bpk-component-banner-alert/src/AnimateAndFade.js +3 -2
  18. package/bpk-component-banner-alert/src/BpkBannerAlertInner.js +2 -1
  19. package/bpk-component-banner-alert/src/withBannerAlertState.js +1 -0
  20. package/bpk-component-barchart/package.json +9 -9
  21. package/bpk-component-barchart/src/BpkBarchart.js +1 -0
  22. package/bpk-component-barchart/src/BpkBarchartBar.js +2 -1
  23. package/bpk-component-barchart/src/BpkChartAxis.js +2 -1
  24. package/bpk-component-barchart/src/BpkChartDataTable.js +1 -0
  25. package/bpk-component-barchart/src/BpkChartGridLines.js +1 -0
  26. package/bpk-component-blockquote/package.json +3 -3
  27. package/bpk-component-blockquote/src/BpkBlockquote.js +1 -0
  28. package/bpk-component-breadcrumb/package.json +6 -6
  29. package/bpk-component-breadcrumb/src/BpkBreadcrumb.js +1 -0
  30. package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.js +1 -0
  31. package/bpk-component-breakpoint/package.json +4 -4
  32. package/{bpk-component-dialog/examples.module.scss → bpk-component-button/BpkButtonLinkOnDark.js} +2 -6
  33. package/{bpk-component-rating/examples.module.css → bpk-component-button/BpkButtonPrimaryOnDark.js} +9 -6
  34. package/bpk-component-button/BpkButtonPrimaryOnLight.js +21 -0
  35. package/bpk-component-button/BpkButtonSecondaryOnDark.js +21 -0
  36. package/bpk-component-button/README.md +53 -21
  37. package/bpk-component-button/index.js +11 -0
  38. package/bpk-component-button/package.json +3 -3
  39. package/bpk-component-button/src/BpkButton.js +43 -7
  40. package/bpk-component-button/src/BpkButtonLink.js +6 -8
  41. package/bpk-component-button/src/BpkButtonLink.module.scss +0 -4
  42. package/bpk-component-button/src/BpkButtonLinkOnDark.js +59 -0
  43. package/bpk-component-button/{BpkButtonStory.module.scss → src/BpkButtonLinkOnDark.module.scss} +2 -2
  44. package/bpk-component-button/src/BpkButtonPrimaryOnDark.js +48 -0
  45. package/{bpk-component-nudger/BpkNudgerStory.module.scss → bpk-component-button/src/BpkButtonPrimaryOnDark.module.scss} +2 -6
  46. package/bpk-component-button/src/BpkButtonPrimaryOnLight.js +48 -0
  47. package/{bpk-component-banner-alert/examples.module.scss → bpk-component-button/src/BpkButtonPrimaryOnLight.module.scss} +2 -6
  48. package/bpk-component-button/src/BpkButtonSecondaryOnDark.js +48 -0
  49. package/bpk-component-button/src/BpkButtonSecondaryOnDark.module.scss +23 -0
  50. package/bpk-component-button/src/themeAttributes.js +27 -0
  51. package/bpk-component-button/themeAttributes.js +3 -0
  52. package/bpk-component-calendar/package.json +10 -10
  53. package/bpk-component-calendar/src/BpkCalendarContainer.js +1 -0
  54. package/bpk-component-calendar/src/BpkCalendarDate.js +1 -0
  55. package/bpk-component-calendar/src/BpkCalendarGrid.js +5 -4
  56. package/bpk-component-calendar/src/BpkCalendarGrid.module.css +1 -1
  57. package/bpk-component-calendar/src/BpkCalendarGrid.module.scss +1 -7
  58. package/bpk-component-calendar/src/BpkCalendarGridHeader.js +1 -0
  59. package/bpk-component-calendar/src/BpkCalendarGridTransition.js +1 -0
  60. package/bpk-component-calendar/src/BpkCalendarNav.js +1 -0
  61. package/bpk-component-calendar/src/Week.js +5 -4
  62. package/bpk-component-calendar/src/composeCalendar.js +1 -0
  63. package/bpk-component-calendar/src/custom-proptypes.js +6 -8
  64. package/bpk-component-card/package.json +5 -5
  65. package/bpk-component-card/src/BpkCard.js +1 -0
  66. package/bpk-component-checkbox/package.json +6 -6
  67. package/bpk-component-checkbox/src/BpkCheckbox.js +1 -0
  68. package/bpk-component-chip/package.json +6 -6
  69. package/bpk-component-chip/src/BpkDismissibleChip.js +1 -0
  70. package/bpk-component-chip/src/BpkSelectableChip.js +1 -0
  71. package/bpk-component-close-button/package.json +5 -5
  72. package/bpk-component-close-button/src/BpkCloseButton.js +1 -0
  73. package/bpk-component-code/package.json +3 -3
  74. package/bpk-component-code/src/BpkCode.js +1 -0
  75. package/bpk-component-code/src/BpkCodeBlock.js +1 -0
  76. package/bpk-component-content-container/package.json +3 -3
  77. package/bpk-component-content-container/src/BpkContentContainer.js +1 -0
  78. package/bpk-component-datatable/package.json +5 -5
  79. package/bpk-component-datatable/src/BpkDataTable.js +2 -1
  80. package/bpk-component-datatable/src/BpkDataTableColumn.js +1 -0
  81. package/bpk-component-datatable/src/bpkHeaderRenderer.js +1 -0
  82. package/bpk-component-datepicker/package.json +10 -10
  83. package/bpk-component-datepicker/src/BpkDatepicker.js +3 -2
  84. package/bpk-component-description-list/package.json +3 -3
  85. package/bpk-component-description-list/src/ComponentFactory.js +1 -0
  86. package/bpk-component-dialog/package.json +9 -9
  87. package/bpk-component-dialog/src/BpkDialog.js +1 -0
  88. package/bpk-component-dialog/src/BpkDialogInner.js +1 -0
  89. package/bpk-component-drawer/package.json +10 -10
  90. package/bpk-component-drawer/src/BpkDrawer.js +1 -0
  91. package/bpk-component-drawer/src/BpkDrawerContent.js +1 -0
  92. package/bpk-component-fieldset/package.json +13 -13
  93. package/bpk-component-fieldset/src/BpkFieldset.js +1 -0
  94. package/bpk-component-flare/package.json +5 -5
  95. package/bpk-component-flare/src/BpkContentBubble.js +1 -0
  96. package/bpk-component-flare/src/BpkFlareBar.js +1 -0
  97. package/bpk-component-form-validation/package.json +11 -11
  98. package/bpk-component-form-validation/src/BpkFormValidation.js +5 -4
  99. package/bpk-component-graphic-promotion/README.md +68 -0
  100. package/{bpk-component-grid-toggle/examples.js → bpk-component-graphic-promotion/index.js} +9 -7
  101. package/bpk-component-graphic-promotion/package.json +26 -0
  102. package/bpk-component-graphic-promotion/src/BpkGraphicPromo.js +196 -0
  103. package/bpk-component-graphic-promotion/src/BpkGraphicPromo.module.scss +250 -0
  104. package/bpk-component-graphic-promotion/src/custom-breakpoints.module.scss +70 -0
  105. package/bpk-component-grid/package.json +3 -3
  106. package/bpk-component-grid/src/BpkGridColumn.js +1 -0
  107. package/bpk-component-grid/src/BpkGridContainer.js +1 -0
  108. package/bpk-component-grid/src/BpkGridRow.js +1 -0
  109. package/bpk-component-grid-toggle/package.json +4 -4
  110. package/bpk-component-grid-toggle/src/BpkGridToggle.js +1 -0
  111. package/bpk-component-horizontal-nav/package.json +7 -7
  112. package/bpk-component-horizontal-nav/src/BpkHorizontalNav.js +2 -1
  113. package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.js +1 -0
  114. package/bpk-component-icon/package.json +8 -8
  115. package/bpk-component-icon/src/classNameModifierHOCFactory.js +1 -0
  116. package/bpk-component-icon/src/withAlignment.js +1 -0
  117. package/bpk-component-icon/src/withDescription.js +1 -0
  118. package/bpk-component-image/package.json +7 -7
  119. package/bpk-component-image/src/BpkBackgroundImage.js +3 -2
  120. package/bpk-component-image/src/BpkImage.js +3 -2
  121. package/bpk-component-image/src/withLazyLoading.js +2 -1
  122. package/bpk-component-image/src/withLoadingBehavior.js +1 -0
  123. package/bpk-component-infinite-scroll/package.json +7 -7
  124. package/bpk-component-infinite-scroll/src/withInfiniteScroll.js +2 -1
  125. package/bpk-component-input/package.json +7 -7
  126. package/bpk-component-input/src/BpkClearButton.js +1 -0
  127. package/bpk-component-input/src/BpkInput.js +1 -0
  128. package/bpk-component-input/src/withOpenEvents.js +1 -0
  129. package/bpk-component-label/package.json +3 -3
  130. package/bpk-component-label/src/BpkLabel.js +1 -0
  131. package/bpk-component-link/package.json +5 -5
  132. package/bpk-component-link/src/BpkButtonLink.js +1 -0
  133. package/bpk-component-link/src/BpkLink.js +1 -0
  134. package/bpk-component-list/package.json +3 -3
  135. package/bpk-component-list/src/BpkList.js +1 -0
  136. package/bpk-component-list/src/BpkListItem.js +1 -0
  137. package/bpk-component-loading-button/package.json +7 -7
  138. package/bpk-component-loading-button/src/BpkLoadingButton.js +46 -14
  139. package/bpk-component-loading-button/src/BpkLoadingButton.module.scss +65 -0
  140. package/bpk-component-map/README.md +13 -13
  141. package/bpk-component-map/package.json +10 -10
  142. package/bpk-component-map/src/BpkIconMarker.js +1 -0
  143. package/bpk-component-map/src/BpkIconMarkerBackground.js +1 -0
  144. package/bpk-component-map/src/BpkMap.js +65 -31
  145. package/{bpk-component-rating/examples.module.scss → bpk-component-map/src/BpkMap.module.scss} +2 -4
  146. package/bpk-component-map/src/BpkOverlayView.js +1 -1
  147. package/bpk-component-map/src/BpkPriceMarker.js +1 -0
  148. package/bpk-component-map/src/DefaultLoadingElement.js +1 -0
  149. package/bpk-component-map/src/withGoogleMapsScript.js +41 -5
  150. package/bpk-component-mobile-scroll-container/package.json +4 -4
  151. package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.js +1 -0
  152. package/bpk-component-modal/package.json +10 -10
  153. package/bpk-component-modal/src/BpkModal.js +1 -0
  154. package/bpk-component-modal/src/BpkModalInner.js +2 -1
  155. package/bpk-component-navigation-bar/package.json +9 -9
  156. package/bpk-component-navigation-bar/src/BpkNavigationBar.js +2 -1
  157. package/bpk-component-navigation-bar/src/BpkNavigationBar.module.scss +2 -0
  158. package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.js +1 -0
  159. package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.js +1 -0
  160. package/bpk-component-navigation-stack/package.json +8 -8
  161. package/bpk-component-navigation-stack/src/BpkNavigationStack.js +2 -1
  162. package/bpk-component-nudger/README.md +2 -2
  163. package/bpk-component-nudger/package.json +8 -8
  164. package/bpk-component-nudger/src/BpkConfigurableNudger.js +22 -26
  165. package/bpk-component-nudger/src/BpkNudger.js +1 -0
  166. package/bpk-component-nudger/src/BpkNudger.module.scss +1 -1
  167. package/bpk-component-nudger/src/common-types.js +1 -1
  168. package/bpk-component-overlay/package.json +5 -5
  169. package/bpk-component-overlay/src/BpkOverlay.js +1 -0
  170. package/bpk-component-pagination/package.json +5 -5
  171. package/bpk-component-pagination/src/BpkPagination.js +1 -0
  172. package/bpk-component-pagination/src/BpkPaginationList.js +1 -0
  173. package/bpk-component-pagination/src/BpkPaginationNudger.js +1 -0
  174. package/bpk-component-pagination/src/BpkPaginationPage.js +2 -1
  175. package/bpk-component-pagination/src/BpkPaginationPage.module.scss +2 -0
  176. package/bpk-component-panel/package.json +3 -3
  177. package/bpk-component-panel/src/BpkPanel.js +1 -0
  178. package/bpk-component-phone-input/package.json +10 -10
  179. package/bpk-component-phone-input/src/BpkPhoneInput.js +1 -0
  180. package/bpk-component-popover/package.json +9 -9
  181. package/bpk-component-popover/src/BpkPopover.js +1 -0
  182. package/bpk-component-popover/src/BpkPopoverPortal.js +1 -0
  183. package/bpk-component-progress/package.json +6 -6
  184. package/bpk-component-progress/src/BpkProgress.js +1 -0
  185. package/bpk-component-radio/package.json +5 -5
  186. package/bpk-component-radio/src/BpkRadio.js +1 -0
  187. package/bpk-component-rating/package.json +5 -5
  188. package/bpk-component-rating/src/BpkRating.js +1 -0
  189. package/bpk-component-rtl-toggle/package.json +3 -3
  190. package/bpk-component-rtl-toggle/src/BpkRtlToggle.js +1 -0
  191. package/bpk-component-rtl-toggle/src/updateOnDirectionChange.js +1 -0
  192. package/bpk-component-scrollable-calendar/package.json +7 -7
  193. package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate.js +1 -0
  194. package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.js +1 -0
  195. package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.js +6 -2
  196. package/bpk-component-section-list/package.json +7 -7
  197. package/bpk-component-section-list/src/BpkSectionListItem.js +1 -0
  198. package/bpk-component-section-list/src/BpkSectionListSection.js +1 -0
  199. package/bpk-component-select/package.json +4 -4
  200. package/bpk-component-select/src/BpkSelect.js +1 -0
  201. package/bpk-component-skip-link/package.json +3 -3
  202. package/bpk-component-skip-link/src/BpkSkipLink.js +1 -0
  203. package/bpk-component-slider/package.json +5 -5
  204. package/bpk-component-slider/src/BpkSlider.js +1 -0
  205. package/bpk-component-spinner/package.json +4 -4
  206. package/bpk-component-spinner/src/BpkExtraLargeSpinner.js +2 -1
  207. package/bpk-component-spinner/src/BpkLargeSpinner.js +2 -1
  208. package/bpk-component-spinner/src/BpkSpinner.js +2 -1
  209. package/bpk-component-star-rating/package.json +6 -6
  210. package/bpk-component-star-rating/src/BpkInteractiveStar.js +1 -0
  211. package/bpk-component-star-rating/src/BpkInteractiveStarRating.js +1 -0
  212. package/bpk-component-star-rating/src/BpkStar.js +1 -0
  213. package/bpk-component-star-rating/src/BpkStarRating.js +1 -0
  214. package/bpk-component-star-rating/src/withInteractiveStarRatingState.js +1 -0
  215. package/bpk-component-switch/package.json +3 -3
  216. package/bpk-component-switch/src/BpkSwitch.js +1 -0
  217. package/bpk-component-table/package.json +3 -3
  218. package/bpk-component-table/src/BpkTable.js +1 -0
  219. package/bpk-component-table/src/BpkTableCell.js +1 -0
  220. package/bpk-component-table/src/BpkTableHeadCell.js +1 -0
  221. package/bpk-component-text/README.md +1 -1
  222. package/bpk-component-text/package.json +3 -3
  223. package/bpk-component-text/src/BpkText.js +2 -0
  224. package/bpk-component-text/src/BpkText.module.scss +4 -0
  225. package/bpk-component-textarea/package.json +5 -5
  226. package/bpk-component-textarea/src/BpkTextarea.js +1 -0
  227. package/bpk-component-theme-toggle/package.json +6 -6
  228. package/bpk-component-theme-toggle/src/BpkThemeToggle.js +1 -0
  229. package/bpk-component-theme-toggle/src/updateOnThemeChange.js +1 -0
  230. package/bpk-component-ticket/package.json +5 -5
  231. package/bpk-component-ticket/src/BpkTicket.js +1 -0
  232. package/bpk-component-tooltip/package.json +5 -5
  233. package/bpk-component-tooltip/src/BpkTooltip.js +1 -0
  234. package/bpk-component-tooltip/src/BpkTooltipPortal.js +1 -0
  235. package/bpk-react-utils/index.js +1 -2
  236. package/bpk-react-utils/package.json +2 -3
  237. package/bpk-react-utils/src/withDefaultProps.js +2 -1
  238. package/{bpk-component-chip/examples.module.scss → bpk-react-utils/src/wrapDisplayName.js} +11 -13
  239. package/bpk-scrim-utils/package.json +3 -3
  240. package/bpk-scrim-utils/src/BpkScrim.js +1 -0
  241. package/bpk-scrim-utils/src/withScrim.js +1 -0
  242. package/bpk-theming/package.json +2 -2
  243. package/package.json +8 -8
  244. package/bpk-animate-height/examples.js +0 -67
  245. package/bpk-component-accordion/examples.js +0 -316
  246. package/bpk-component-aria-live/examples.js +0 -248
  247. package/bpk-component-aria-live/examples.module.css +0 -18
  248. package/bpk-component-aria-live/examples.module.scss +0 -65
  249. package/bpk-component-autosuggest/examples.js +0 -201
  250. package/bpk-component-badge/BadgeLayout.js +0 -54
  251. package/bpk-component-badge/BpkBadgeLayout.module.css +0 -18
  252. package/bpk-component-badge/BpkBadgeLayout.module.scss +0 -36
  253. package/bpk-component-badge/examples.js +0 -207
  254. package/bpk-component-banner-alert/examples.js +0 -253
  255. package/bpk-component-banner-alert/examples.module.css +0 -18
  256. package/bpk-component-barchart/examples.js +0 -334
  257. package/bpk-component-barchart/hocs.js +0 -67
  258. package/bpk-component-barchart/stories.module.css +0 -18
  259. package/bpk-component-barchart/stories.module.scss +0 -37
  260. package/bpk-component-blockquote/examples.js +0 -33
  261. package/bpk-component-breadcrumb/examples.js +0 -57
  262. package/bpk-component-breakpoint/examples.js +0 -72
  263. package/bpk-component-breakpoint/examples.module.css +0 -18
  264. package/bpk-component-breakpoint/examples.module.scss +0 -36
  265. package/bpk-component-button/BpkButtonStory.module.css +0 -18
  266. package/bpk-component-button/examples.js +0 -213
  267. package/bpk-component-calendar/coloured-calendar-example.js +0 -106
  268. package/bpk-component-calendar/examples-components.js +0 -299
  269. package/bpk-component-calendar/examples.js +0 -369
  270. package/bpk-component-card/examples.js +0 -91
  271. package/bpk-component-checkbox/examples.js +0 -197
  272. package/bpk-component-chip/examples.js +0 -339
  273. package/bpk-component-chip/examples.module.css +0 -18
  274. package/bpk-component-close-button/examples.js +0 -30
  275. package/bpk-component-code/examples.js +0 -56
  276. package/bpk-component-content-container/examples.js +0 -307
  277. package/bpk-component-datatable/examples.js +0 -138
  278. package/bpk-component-datepicker/examples.js +0 -660
  279. package/bpk-component-description-list/examples.js +0 -49
  280. package/bpk-component-dialog/examples.js +0 -182
  281. package/bpk-component-dialog/examples.module.css +0 -18
  282. package/bpk-component-dialog/stories.css +0 -1
  283. package/bpk-component-drawer/examples.js +0 -271
  284. package/bpk-component-drawer/examples.module.css +0 -18
  285. package/bpk-component-drawer/examples.module.scss +0 -34
  286. package/bpk-component-fieldset/examples.js +0 -527
  287. package/bpk-component-fieldset/examples.module.css +0 -18
  288. package/bpk-component-fieldset/examples.module.scss +0 -46
  289. package/bpk-component-flare/examples.js +0 -158
  290. package/bpk-component-flare/examples.module.css +0 -18
  291. package/bpk-component-flare/examples.module.scss +0 -66
  292. package/bpk-component-form-validation/examples.js +0 -171
  293. package/bpk-component-form-validation/examples.module.css +0 -18
  294. package/bpk-component-form-validation/examples.module.scss +0 -39
  295. package/bpk-component-grid/examples.js +0 -796
  296. package/bpk-component-horizontal-nav/examples.js +0 -189
  297. package/bpk-component-horizontal-nav/examples.module.css +0 -18
  298. package/bpk-component-horizontal-nav/examples.module.scss +0 -48
  299. package/bpk-component-icon/examples.js +0 -152
  300. package/bpk-component-image/examples.js +0 -216
  301. package/bpk-component-infinite-scroll/examples.js +0 -279
  302. package/bpk-component-infinite-scroll/examples.module.css +0 -18
  303. package/bpk-component-infinite-scroll/examples.module.scss +0 -46
  304. package/bpk-component-input/examples.js +0 -490
  305. package/bpk-component-input/examples.module.css +0 -18
  306. package/bpk-component-input/examples.module.scss +0 -57
  307. package/bpk-component-label/examples.js +0 -67
  308. package/bpk-component-link/examples.js +0 -110
  309. package/bpk-component-list/examples.js +0 -56
  310. package/bpk-component-loading-button/examples.js +0 -660
  311. package/bpk-component-map/examples.js +0 -305
  312. package/bpk-component-mobile-scroll-container/examples.js +0 -76
  313. package/bpk-component-mobile-scroll-container/examples.module.css +0 -18
  314. package/bpk-component-mobile-scroll-container/examples.module.scss +0 -46
  315. package/bpk-component-modal/examples.js +0 -304
  316. package/bpk-component-modal/examples.module.css +0 -18
  317. package/bpk-component-modal/examples.module.scss +0 -35
  318. package/bpk-component-navigation-bar/AirlineLogo.js +0 -42
  319. package/bpk-component-navigation-bar/AirlineLogo.module.css +0 -18
  320. package/bpk-component-navigation-bar/AirlineLogo.module.scss +0 -27
  321. package/bpk-component-navigation-bar/examples.js +0 -193
  322. package/bpk-component-navigation-bar/examples.module.css +0 -18
  323. package/bpk-component-navigation-bar/examples.module.scss +0 -32
  324. package/bpk-component-navigation-stack/examples.js +0 -73
  325. package/bpk-component-navigation-stack/examples.module.css +0 -18
  326. package/bpk-component-navigation-stack/examples.module.scss +0 -43
  327. package/bpk-component-navigation-stack/stories-components.js +0 -202
  328. package/bpk-component-nudger/BpkNudgerStory.module.css +0 -18
  329. package/bpk-component-nudger/examples.js +0 -204
  330. package/bpk-component-overlay/examples.js +0 -163
  331. package/bpk-component-overlay/examples.module.css +0 -18
  332. package/bpk-component-overlay/examples.module.scss +0 -38
  333. package/bpk-component-pagination/examples.js +0 -93
  334. package/bpk-component-panel/examples.js +0 -63
  335. package/bpk-component-phone-input/examples.js +0 -181
  336. package/bpk-component-popover/examples.js +0 -267
  337. package/bpk-component-popover/examples.module.css +0 -18
  338. package/bpk-component-popover/examples.module.scss +0 -33
  339. package/bpk-component-progress/examples.js +0 -130
  340. package/bpk-component-progress/examples.module.css +0 -18
  341. package/bpk-component-progress/examples.module.scss +0 -29
  342. package/bpk-component-radio/examples.js +0 -126
  343. package/bpk-component-rating/examples.js +0 -373
  344. package/bpk-component-scrollable-calendar/examples.js +0 -383
  345. package/bpk-component-section-list/examples.js +0 -55
  346. package/bpk-component-select/examples.js +0 -274
  347. package/bpk-component-skip-link/examples.js +0 -40
  348. package/bpk-component-slider/examples.js +0 -122
  349. package/bpk-component-spinner/SpinnerLayout.js +0 -56
  350. package/bpk-component-spinner/SpinnerLayout.module.css +0 -18
  351. package/bpk-component-spinner/SpinnerLayout.module.scss +0 -36
  352. package/bpk-component-spinner/examples.js +0 -56
  353. package/bpk-component-star-rating/examples.js +0 -195
  354. package/bpk-component-switch/examples.js +0 -40
  355. package/bpk-component-table/examples.js +0 -97
  356. package/bpk-component-text/examples.js +0 -135
  357. package/bpk-component-text/examples.module.css +0 -18
  358. package/bpk-component-text/examples.module.scss +0 -25
  359. package/bpk-component-textarea/examples.js +0 -116
  360. package/bpk-component-ticket/examples.js +0 -203
  361. package/bpk-component-ticket/examples.module.css +0 -18
  362. package/bpk-component-ticket/examples.module.scss +0 -79
  363. package/bpk-component-tooltip/examples.js +0 -181
@@ -18,11 +18,16 @@
18
18
 
19
19
  /* @flow strict */
20
20
 
21
- import React, { type Node } from 'react';
21
+ import React, { type Node, useCallback, useRef } from 'react';
22
22
  import PropTypes from 'prop-types';
23
- import { withGoogleMap, GoogleMap } from 'react-google-maps';
23
+ import { GoogleMap } from '@react-google-maps/api';
24
+
25
+ import { cssModules } from '../../bpk-react-utils';
24
26
 
25
27
  import { LatLongPropType, type LatLong } from './common-types';
28
+ import STYLES from './BpkMap.module.scss';
29
+
30
+ const getClassName = cssModules(STYLES);
26
31
 
27
32
  export type Bounds = {
28
33
  south: number,
@@ -38,6 +43,14 @@ export type MapRef = ?{
38
43
  fitBounds: (Bounds) => void,
39
44
  };
40
45
 
46
+ type MapOptionStyle = {
47
+ featureType: ?string,
48
+ elementType: ?string,
49
+ stylers: Array<{
50
+ [string]: string,
51
+ }>,
52
+ };
53
+
41
54
  type Props = {
42
55
  greedyGestureHandling: boolean,
43
56
  panEnabled: boolean,
@@ -46,20 +59,22 @@ type Props = {
46
59
  bounds: ?Bounds,
47
60
  center: ?LatLong,
48
61
  children: ?Node,
49
- containerElement: ?Node,
50
- mapElement: ?Node,
51
62
  mapRef: ?(MapRef) => mixed,
52
63
  onRegionChange: ?(Bounds, LatLong) => mixed,
53
64
  onZoom: ?(number) => mixed,
54
65
  onTilesLoaded: ?() => void,
66
+ className: ?string,
67
+ mapOptionStyles: ?Array<MapOptionStyle>,
55
68
  };
56
69
 
57
- const BpkMap = withGoogleMap((props: Props) => {
70
+ const BpkMap = (props: Props) => {
58
71
  const {
59
72
  bounds,
60
73
  center,
61
74
  children,
75
+ className,
62
76
  greedyGestureHandling,
77
+ mapOptionStyles,
63
78
  mapRef,
64
79
  onRegionChange,
65
80
  onTilesLoaded,
@@ -68,7 +83,6 @@ const BpkMap = withGoogleMap((props: Props) => {
68
83
  showControls,
69
84
  zoom,
70
85
  } = props;
71
- let ref: MapRef = null;
72
86
 
73
87
  if (!bounds && !center) {
74
88
  throw new Error('BpkMap: Provide either `bounds` or `center` props.');
@@ -82,29 +96,37 @@ const BpkMap = withGoogleMap((props: Props) => {
82
96
  gestureHandling = 'greedy';
83
97
  }
84
98
 
99
+ const ref = useRef(null);
100
+ const mapContainerClassName = getClassName('bpk-map', className);
101
+
102
+ const onLoad = useCallback(
103
+ (map) => {
104
+ ref.current = map;
105
+ if (map && bounds) {
106
+ map.fitBounds({
107
+ south: bounds.south,
108
+ west: bounds.west,
109
+ north: bounds.north,
110
+ east: bounds.east,
111
+ });
112
+ }
113
+ if (mapRef) {
114
+ mapRef(map);
115
+ }
116
+ },
117
+ [bounds, mapRef],
118
+ );
119
+
85
120
  return (
86
121
  <GoogleMap
87
- ref={(map: MapRef) => {
88
- ref = map;
89
- if (map && bounds) {
90
- map.fitBounds({
91
- south: bounds.south,
92
- west: bounds.west,
93
- north: bounds.north,
94
- east: bounds.east,
95
- });
96
- }
97
- if (mapRef) {
98
- mapRef(map);
99
- }
100
- }}
122
+ onLoad={onLoad}
101
123
  center={
102
124
  center
103
125
  ? {
104
126
  lat: center.latitude,
105
127
  lng: center.longitude,
106
128
  }
107
- : null
129
+ : undefined
108
130
  }
109
131
  zoom={zoom}
110
132
  options={{
@@ -114,15 +136,18 @@ const BpkMap = withGoogleMap((props: Props) => {
114
136
  streetViewControl: false,
115
137
  fullscreenControl: false,
116
138
  rotateControl: false,
139
+ clickableIcons: false,
140
+ // https://developers.google.com/maps/documentation/javascript/reference/map#MapTypeStyle
141
+ styles: mapOptionStyles,
117
142
  }}
118
143
  onDragEnd={() => {
119
- if (ref && onRegionChange) {
120
- onRegionChange(ref.getBounds(), ref.getCenter());
144
+ if (ref && ref.current && onRegionChange) {
145
+ onRegionChange(ref.current.getBounds(), ref.current.getCenter());
121
146
  }
122
147
  }}
123
148
  onZoomChanged={() => {
124
- if (ref && onZoom) {
125
- onZoom(ref.getZoom());
149
+ if (ref && ref.current && onZoom) {
150
+ onZoom(ref.current.getZoom());
126
151
  }
127
152
  }}
128
153
  onTilesLoaded={() => {
@@ -130,11 +155,12 @@ const BpkMap = withGoogleMap((props: Props) => {
130
155
  onTilesLoaded();
131
156
  }
132
157
  }}
158
+ mapContainerClassName={mapContainerClassName}
133
159
  >
134
160
  {children}
135
161
  </GoogleMap>
136
162
  );
137
- });
163
+ };
138
164
 
139
165
  BpkMap.propTypes = {
140
166
  bounds: PropTypes.shape({
@@ -145,30 +171,38 @@ BpkMap.propTypes = {
145
171
  }),
146
172
  center: LatLongPropType,
147
173
  children: PropTypes.node,
148
- containerElement: PropTypes.node,
149
174
  greedyGestureHandling: PropTypes.bool,
150
- mapElement: PropTypes.node,
151
175
  mapRef: PropTypes.func,
176
+ className: PropTypes.string,
152
177
  onRegionChange: PropTypes.func,
153
178
  onZoom: PropTypes.func,
154
179
  panEnabled: PropTypes.bool,
155
180
  showControls: PropTypes.bool,
181
+ onTilesLoaded: PropTypes.func,
156
182
  zoom: PropTypes.number,
183
+ mapOptionStyles: PropTypes.arrayOf(
184
+ PropTypes.shape({
185
+ featureType: PropTypes.string,
186
+ elementType: PropTypes.string,
187
+ stylers: PropTypes.arrayOf(PropTypes.object).isRequired,
188
+ }),
189
+ ),
157
190
  };
158
191
 
159
192
  BpkMap.defaultProps = {
160
193
  bounds: null,
161
- center: null,
194
+ center: undefined,
162
195
  children: null,
163
- containerElement: <div style={{ height: '100%' }} />,
164
196
  greedyGestureHandling: false,
165
- mapElement: <div style={{ height: '100%' }} />,
166
197
  mapRef: null,
167
198
  onRegionChange: null,
168
199
  onZoom: null,
200
+ onTilesLoaded: null,
169
201
  panEnabled: true,
170
202
  showControls: true,
171
203
  zoom: 15,
204
+ className: null,
205
+ mapOptionStyles: null,
172
206
  };
173
207
 
174
208
  export default BpkMap;
@@ -16,8 +16,6 @@
16
16
  * limitations under the License.
17
17
  */
18
18
 
19
- @import '~bpk-mixins';
20
-
21
- .bpk-rating-story {
22
- width: 10rem;
19
+ .bpk-map {
20
+ height: 100%;
23
21
  }
@@ -20,7 +20,7 @@
20
20
 
21
21
  import React, { type Node } from 'react';
22
22
  import PropTypes from 'prop-types';
23
- import { OverlayView } from 'react-google-maps';
23
+ import { OverlayView } from '@react-google-maps/api';
24
24
 
25
25
  import { LatLongPropType, type LatLong } from './common-types';
26
26
 
@@ -20,6 +20,7 @@
20
20
 
21
21
  import React from 'react';
22
22
  import PropTypes from 'prop-types';
23
+
23
24
  import { cssModules } from '../../bpk-react-utils';
24
25
  import BpkText, { TEXT_STYLES } from '../../bpk-component-text/src/BpkText';
25
26
 
@@ -18,6 +18,7 @@
18
18
  /* @flow strict */
19
19
 
20
20
  import React from 'react';
21
+
21
22
  import { BpkLargeSpinner, SPINNER_TYPES } from '../../bpk-component-spinner';
22
23
  import { cssModules } from '../../bpk-react-utils';
23
24
 
@@ -19,23 +19,59 @@
19
19
 
20
20
  import React, { type ComponentType } from 'react';
21
21
  import PropTypes from 'prop-types';
22
- import { withScriptjs } from 'react-google-maps';
22
+ import { useJsApiLoader } from '@react-google-maps/api';
23
23
 
24
24
  import DefaultLoadingElement from './DefaultLoadingElement';
25
25
 
26
+ export const LibraryShapeType = PropTypes.arrayOf(
27
+ PropTypes.oneOf([
28
+ 'drawing',
29
+ 'geometry',
30
+ 'localContext',
31
+ 'places',
32
+ 'visualization',
33
+ ]),
34
+ );
35
+
26
36
  function withGoogleMapsScript(Component: ComponentType<any>) {
27
- const ScriptedComponent = withScriptjs(Component);
37
+ const WithGoogleMapsScript = ({
38
+ googleMapsApiKey,
39
+ libraries,
40
+ loadingElement,
41
+ preventGoogleFontsLoading,
42
+ ...rest
43
+ }: {
44
+ [string]: any,
45
+ }) => {
46
+ const { isLoaded, loadError } = useJsApiLoader({
47
+ googleMapsApiKey,
48
+ libraries,
49
+ preventGoogleFontsLoading,
50
+ version: '3.46',
51
+ });
52
+
53
+ if (!isLoaded) {
54
+ return loadingElement;
55
+ }
28
56
 
29
- const WithGoogleMapsScript = ({ ...rest }: { [string]: any }) => (
30
- <ScriptedComponent {...rest} />
31
- );
57
+ if (loadError) {
58
+ throw new Error('Google maps cannot be loaded!');
59
+ }
60
+
61
+ return <Component {...rest} />;
62
+ };
32
63
 
33
64
  WithGoogleMapsScript.propTypes = {
34
65
  loadingElement: PropTypes.node,
66
+ googleMapsApiKey: PropTypes.string.isRequired,
67
+ libraries: LibraryShapeType,
68
+ preventGoogleFontsLoading: PropTypes.bool,
35
69
  };
36
70
 
37
71
  WithGoogleMapsScript.defaultProps = {
38
72
  loadingElement: <DefaultLoadingElement />,
73
+ preventGoogleFontsLoading: false,
74
+ libraries: ['geometry', 'drawing', 'places'],
39
75
  };
40
76
 
41
77
  return WithGoogleMapsScript;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bpk-component-mobile-scroll-container",
3
- "version": "3.1.0",
3
+ "version": "3.1.6",
4
4
  "description": "Backpack mobile scroll container component.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -14,8 +14,8 @@
14
14
  },
15
15
  "gitHead": "5c156b97cb0ba5e75851d3c763334578714c895e",
16
16
  "dependencies": {
17
- "bpk-mixins": "^26.1.0",
18
- "bpk-react-utils": "^4.1.0",
17
+ "bpk-mixins": "^29.0.0",
18
+ "bpk-react-utils": "^4.1.1",
19
19
  "lodash.debounce": "^4.0.8",
20
20
  "prop-types": "^15.7.2"
21
21
  },
@@ -23,6 +23,6 @@
23
23
  "react": "^16.3.0 || ^17.0.0"
24
24
  },
25
25
  "devDependencies": {
26
- "@skyscanner/bpk-foundations-web": "^5.0.0"
26
+ "@skyscanner/bpk-foundations-web": "^6.2.0"
27
27
  }
28
28
  }
@@ -21,6 +21,7 @@
21
21
  import PropTypes from 'prop-types';
22
22
  import debounce from 'lodash.debounce';
23
23
  import React, { Component, type Node } from 'react';
24
+
24
25
  import { cssModules, isRTL } from '../../bpk-react-utils';
25
26
 
26
27
  import STYLES from './BpkMobileScrollContainer.module.scss';
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bpk-component-modal",
3
- "version": "3.1.1",
3
+ "version": "3.1.8",
4
4
  "description": "Backpack modal component.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -14,20 +14,20 @@
14
14
  },
15
15
  "gitHead": "f9f94f86d7cfc75e43bc6ad5eb01b23e62a89cc8",
16
16
  "dependencies": {
17
- "bpk-component-close-button": "^3.1.1",
18
- "bpk-component-icon": "^9.2.1",
19
- "bpk-component-link": "^3.1.0",
20
- "bpk-component-navigation-bar": "^3.1.1",
21
- "bpk-mixins": "^26.1.0",
22
- "bpk-react-utils": "^4.1.0",
23
- "bpk-scrim-utils": "^5.1.0",
17
+ "bpk-component-close-button": "^3.1.7",
18
+ "bpk-component-icon": "^9.2.7",
19
+ "bpk-component-link": "^3.1.6",
20
+ "bpk-component-navigation-bar": "^3.1.8",
21
+ "bpk-mixins": "^29.0.0",
22
+ "bpk-react-utils": "^4.1.1",
23
+ "bpk-scrim-utils": "^5.1.5",
24
24
  "prop-types": "^15.7.2"
25
25
  },
26
26
  "peerDependencies": {
27
27
  "react": "^16.3.0 || ^17.0.0"
28
28
  },
29
29
  "devDependencies": {
30
- "bpk-component-button": "^5.1.0",
31
- "bpk-component-text": "^6.1.1"
30
+ "bpk-component-button": "^6.2.1",
31
+ "bpk-component-text": "^7.0.0"
32
32
  }
33
33
  }
@@ -20,6 +20,7 @@
20
20
 
21
21
  import PropTypes from 'prop-types';
22
22
  import React, { type Element } from 'react';
23
+
23
24
  import { withScrim } from '../../bpk-scrim-utils';
24
25
  import { Portal, cssModules, isDeviceIphone } from '../../bpk-react-utils';
25
26
 
@@ -18,9 +18,10 @@
18
18
 
19
19
  /* @flow strict */
20
20
 
21
- import { BpkButtonLink } from '../../bpk-component-link';
22
21
  import PropTypes from 'prop-types';
23
22
  import React, { type Node, type Element } from 'react';
23
+
24
+ import { BpkButtonLink } from '../../bpk-component-link';
24
25
  import BpkCloseButton from '../../bpk-component-close-button';
25
26
  import BpkNavigationBar from '../../bpk-component-navigation-bar';
26
27
  import { TransitionInitialMount, cssModules } from '../../bpk-react-utils';
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bpk-component-navigation-bar",
3
- "version": "3.1.1",
3
+ "version": "3.1.8",
4
4
  "description": "Backpack nativation bar component.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -14,19 +14,19 @@
14
14
  },
15
15
  "gitHead": "f9f94f86d7cfc75e43bc6ad5eb01b23e62a89cc8",
16
16
  "dependencies": {
17
- "bpk-component-close-button": "^3.1.1",
18
- "bpk-component-link": "^3.1.0",
19
- "bpk-component-text": "^6.1.1",
20
- "bpk-mixins": "^26.1.0",
21
- "bpk-react-utils": "^4.1.0",
17
+ "bpk-component-close-button": "^3.1.7",
18
+ "bpk-component-link": "^3.1.6",
19
+ "bpk-component-text": "^7.0.0",
20
+ "bpk-mixins": "^29.0.0",
21
+ "bpk-react-utils": "^4.1.1",
22
22
  "prop-types": "^15.7.2"
23
23
  },
24
24
  "peerDependencies": {
25
25
  "react": "^16.3.0 || ^17.0.0"
26
26
  },
27
27
  "devDependencies": {
28
- "@skyscanner/bpk-foundations-web": "^5.0.0",
29
- "bpk-component-icon": "^9.2.1",
30
- "bpk-storybook-utils": "^1.1.0"
28
+ "@skyscanner/bpk-foundations-web": "^6.2.0",
29
+ "bpk-component-icon": "^9.2.7",
30
+ "bpk-storybook-utils": "^1.1.5"
31
31
  }
32
32
  }
@@ -20,6 +20,7 @@
20
20
 
21
21
  import React, { type Node, type Element } from 'react';
22
22
  import PropTypes from 'prop-types';
23
+
23
24
  import { cssModules } from '../../bpk-react-utils';
24
25
  import BpkText, { TEXT_STYLES } from '../../bpk-component-text';
25
26
 
@@ -73,7 +74,7 @@ const BpkNavigationBar = (props: Props) => {
73
74
  {typeof title === 'string' ? (
74
75
  <BpkText
75
76
  id={titleId}
76
- textStyle={TEXT_STYLES.label1}
77
+ textStyle={TEXT_STYLES.heading5}
77
78
  className={getClassNames('bpk-navigation-bar__title')}
78
79
  >
79
80
  {title}
@@ -47,6 +47,8 @@ $bpk-spacing-v2: true;
47
47
  &__leading-item,
48
48
  &__trailing-item {
49
49
  position: absolute;
50
+
51
+ @include bpk-label-2;
50
52
  }
51
53
 
52
54
  &__leading-item {
@@ -20,6 +20,7 @@
20
20
 
21
21
  import React, { type Node } from 'react';
22
22
  import PropTypes from 'prop-types';
23
+
23
24
  // TODO: close button is not really only a close button, we should rename and update the import here
24
25
  import { BpkButtonLink } from '../../bpk-component-link';
25
26
  import { cssModules } from '../../bpk-react-utils';
@@ -20,6 +20,7 @@
20
20
 
21
21
  import React, { type ComponentType } from 'react';
22
22
  import PropTypes from 'prop-types';
23
+
23
24
  // TODO: close button is not really only a close button, we should rename and update the import here
24
25
  import BpkIconButton from '../../bpk-component-close-button';
25
26
  import { cssModules } from '../../bpk-react-utils';
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bpk-component-navigation-stack",
3
- "version": "3.1.1",
3
+ "version": "3.1.8",
4
4
  "description": "Backpack navigation stack component.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -14,9 +14,9 @@
14
14
  },
15
15
  "gitHead": "f9f94f86d7cfc75e43bc6ad5eb01b23e62a89cc8",
16
16
  "dependencies": {
17
- "@skyscanner/bpk-foundations-web": "^5.0.0",
18
- "bpk-mixins": "^26.1.0",
19
- "bpk-react-utils": "^4.1.0",
17
+ "@skyscanner/bpk-foundations-web": "^6.2.0",
18
+ "bpk-mixins": "^29.0.0",
19
+ "bpk-react-utils": "^4.1.1",
20
20
  "prop-types": "^15.7.2",
21
21
  "react-transition-group": "^2.5.3"
22
22
  },
@@ -24,9 +24,9 @@
24
24
  "react": "^16.3.0 || ^17.0.0"
25
25
  },
26
26
  "devDependencies": {
27
- "bpk-component-button": "^5.1.0",
28
- "bpk-component-icon": "^9.2.1",
29
- "bpk-component-navigation-bar": "^3.1.1",
30
- "bpk-component-rtl-toggle": "^3.1.0"
27
+ "bpk-component-button": "^6.2.1",
28
+ "bpk-component-icon": "^9.2.7",
29
+ "bpk-component-navigation-bar": "^3.1.8",
30
+ "bpk-component-rtl-toggle": "^3.1.6"
31
31
  }
32
32
  }
@@ -18,13 +18,14 @@
18
18
 
19
19
  /* @flow strict */
20
20
 
21
- import { cssModules, isRTL } from '../../bpk-react-utils';
22
21
  import React, { Children, type Element } from 'react';
23
22
  import PropTypes from 'prop-types';
24
23
  import { durationSm } from '@skyscanner/bpk-foundations-web/tokens/base.es6';
25
24
  import { TransitionGroup, Transition } from 'react-transition-group';
26
25
  import debounce from 'lodash/debounce';
27
26
 
27
+ import { cssModules, isRTL } from '../../bpk-react-utils';
28
+
28
29
  import STYLES from './BpkNavigationStack.module.scss';
29
30
 
30
31
  const getClassName = cssModules(STYLES);
@@ -125,7 +125,7 @@ class App extends Component {
125
125
  | onChange | func | true | - |
126
126
  | value | number | true | - |
127
127
  | className | string | false | null |
128
- | buttonType | oneOf('secondary', 'outline') | false | secondary |
128
+ | buttonType | oneOf('secondary', 'secondaryOnDark') | false | secondary |
129
129
 
130
130
  ### BpkConfigurableNudger
131
131
 
@@ -144,7 +144,7 @@ class App extends Component {
144
144
  | formatValue | func | true | - |
145
145
  | className | string | false | null |
146
146
  | inputClassName | string | false | null |
147
- | buttonType | oneOf('secondary', 'outline') | false | secondary |
147
+ | buttonType | oneOf('secondary', 'secondaryOnDark') | false | secondary |
148
148
 
149
149
  ### `compareValues`
150
150
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bpk-component-nudger",
3
- "version": "5.1.1",
3
+ "version": "7.0.0",
4
4
  "description": "Backpack nudger component.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -14,11 +14,11 @@
14
14
  },
15
15
  "gitHead": "f9f94f86d7cfc75e43bc6ad5eb01b23e62a89cc8",
16
16
  "dependencies": {
17
- "@skyscanner/bpk-foundations-web": "^5.0.0",
18
- "bpk-component-button": "^5.1.0",
19
- "bpk-component-icon": "^9.2.1",
20
- "bpk-mixins": "^26.1.0",
21
- "bpk-react-utils": "^4.1.0",
17
+ "@skyscanner/bpk-foundations-web": "^6.2.0",
18
+ "bpk-component-button": "^6.2.1",
19
+ "bpk-component-icon": "^9.2.7",
20
+ "bpk-mixins": "^29.0.0",
21
+ "bpk-react-utils": "^4.1.1",
22
22
  "lodash.clamp": "^4.0.3",
23
23
  "prop-types": "^15.7.2"
24
24
  },
@@ -26,7 +26,7 @@
26
26
  "react": "^16.3.0 || ^17.0.0"
27
27
  },
28
28
  "devDependencies": {
29
- "bpk-component-label": "^5.1.0",
30
- "bpk-storybook-utils": "^1.1.0"
29
+ "bpk-component-label": "^5.1.6",
30
+ "bpk-storybook-utils": "^1.1.5"
31
31
  }
32
32
  }