@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.
Files changed (357) 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 -1
  6. package/bpk-component-accordion/src/BpkAccordionItem.js +7 -20
  7. package/bpk-component-accordion/src/withAccordionItemState.js +2 -2
  8. package/bpk-component-accordion/src/withSingleItemAccordionState.js +1 -1
  9. package/bpk-component-aria-live/package.json +8 -8
  10. package/bpk-component-aria-live/src/BpkAriaLive.js +1 -1
  11. package/bpk-component-autosuggest/package.json +5 -5
  12. package/bpk-component-autosuggest/src/BpkAutosuggest.js +2 -2
  13. package/bpk-component-autosuggest/src/BpkAutosuggestSuggestion.js +1 -1
  14. package/bpk-component-badge/package.json +6 -6
  15. package/bpk-component-badge/src/BpkBadge.js +1 -1
  16. package/bpk-component-banner-alert/package.json +10 -10
  17. package/bpk-component-banner-alert/src/AnimateAndFade.js +2 -2
  18. package/bpk-component-banner-alert/src/BpkBannerAlertInner.js +7 -7
  19. package/bpk-component-banner-alert/src/withBannerAlertState.js +1 -1
  20. package/bpk-component-barchart/package.json +9 -9
  21. package/bpk-component-barchart/src/BpkBarchart.js +2 -2
  22. package/bpk-component-barchart/src/BpkBarchartBar.js +1 -1
  23. package/bpk-component-barchart/src/BpkChartAxis.js +1 -1
  24. package/bpk-component-barchart/src/BpkChartDataTable.js +1 -1
  25. package/bpk-component-barchart/src/BpkChartGridLines.js +9 -9
  26. package/bpk-component-barchart/src/RTLtransforms.js +1 -1
  27. package/bpk-component-blockquote/package.json +3 -3
  28. package/bpk-component-blockquote/src/BpkBlockquote.js +1 -1
  29. package/bpk-component-breadcrumb/package.json +6 -6
  30. package/bpk-component-breadcrumb/src/BpkBreadcrumb.js +1 -1
  31. package/bpk-component-breadcrumb/src/BpkBreadcrumbItem.js +5 -5
  32. package/bpk-component-breakpoint/package.json +4 -4
  33. package/{bpk-component-rating/examples.module.scss → bpk-component-button/BpkButtonPrimaryOnDark.js} +2 -4
  34. package/{bpk-component-dialog/examples.module.scss → bpk-component-button/BpkButtonPrimaryOnLight.js} +2 -6
  35. package/bpk-component-button/README.md +40 -21
  36. package/bpk-component-button/index.js +4 -0
  37. package/bpk-component-button/package.json +3 -3
  38. package/bpk-component-button/src/BpkButton.js +27 -7
  39. package/bpk-component-button/src/BpkButtonLink.js +6 -8
  40. package/bpk-component-button/src/BpkButtonLink.module.scss +0 -4
  41. package/bpk-component-button/src/BpkButtonPrimaryOnDark.js +48 -0
  42. package/bpk-component-button/{BpkButtonStory.module.scss → src/BpkButtonPrimaryOnDark.module.scss} +2 -2
  43. package/bpk-component-button/src/BpkButtonPrimaryOnLight.js +48 -0
  44. package/{bpk-component-nudger/BpkNudgerStory.module.scss → bpk-component-button/src/BpkButtonPrimaryOnLight.module.scss} +2 -6
  45. package/bpk-component-button/src/themeAttributes.js +18 -0
  46. package/bpk-component-calendar/package.json +10 -10
  47. package/bpk-component-calendar/src/BpkCalendarContainer.js +1 -1
  48. package/bpk-component-calendar/src/BpkCalendarDate.js +1 -1
  49. package/bpk-component-calendar/src/BpkCalendarGrid.js +5 -5
  50. package/bpk-component-calendar/src/BpkCalendarGrid.module.css +1 -1
  51. package/bpk-component-calendar/src/BpkCalendarGrid.module.scss +1 -7
  52. package/bpk-component-calendar/src/BpkCalendarGridHeader.js +1 -1
  53. package/bpk-component-calendar/src/BpkCalendarGridTransition.js +12 -12
  54. package/bpk-component-calendar/src/BpkCalendarNav.js +13 -13
  55. package/bpk-component-calendar/src/Week.js +6 -6
  56. package/bpk-component-calendar/src/composeCalendar.js +1 -1
  57. package/bpk-component-calendar/src/custom-proptypes.js +6 -8
  58. package/bpk-component-card/package.json +5 -5
  59. package/bpk-component-card/src/BpkCard.js +1 -1
  60. package/bpk-component-checkbox/package.json +6 -6
  61. package/bpk-component-checkbox/src/BpkCheckbox.js +1 -1
  62. package/bpk-component-chip/package.json +6 -6
  63. package/bpk-component-chip/src/BpkDismissibleChip.js +1 -1
  64. package/bpk-component-chip/src/BpkSelectableChip.js +2 -2
  65. package/bpk-component-close-button/package.json +5 -5
  66. package/bpk-component-close-button/src/BpkCloseButton.js +2 -2
  67. package/bpk-component-code/package.json +3 -3
  68. package/bpk-component-code/src/BpkCode.js +1 -1
  69. package/bpk-component-code/src/BpkCodeBlock.js +1 -1
  70. package/bpk-component-content-container/package.json +3 -3
  71. package/bpk-component-content-container/src/BpkContentContainer.js +1 -1
  72. package/bpk-component-datatable/package.json +5 -5
  73. package/bpk-component-datatable/src/BpkDataTable.js +1 -1
  74. package/bpk-component-datatable/src/BpkDataTableColumn.js +1 -1
  75. package/bpk-component-datatable/src/bpkHeaderRenderer.js +4 -4
  76. package/bpk-component-datepicker/index.js +1 -1
  77. package/bpk-component-datepicker/package.json +10 -10
  78. package/bpk-component-datepicker/src/BpkDatepicker.js +6 -6
  79. package/bpk-component-datepicker/src/themeAttributes.js +3 -3
  80. package/bpk-component-description-list/package.json +3 -3
  81. package/bpk-component-description-list/src/ComponentFactory.js +1 -1
  82. package/bpk-component-dialog/package.json +9 -9
  83. package/bpk-component-dialog/src/BpkDialog.js +2 -2
  84. package/bpk-component-dialog/src/BpkDialogInner.js +3 -3
  85. package/bpk-component-drawer/package.json +10 -10
  86. package/bpk-component-drawer/src/BpkDrawer.js +2 -2
  87. package/bpk-component-drawer/src/BpkDrawerContent.js +3 -3
  88. package/bpk-component-drawer/src/themeAttributes.js +1 -1
  89. package/bpk-component-fieldset/package.json +13 -13
  90. package/bpk-component-fieldset/src/BpkFieldset.js +3 -3
  91. package/bpk-component-flare/package.json +5 -5
  92. package/bpk-component-flare/src/BpkContentBubble.js +1 -1
  93. package/bpk-component-flare/src/BpkFlareBar.js +1 -1
  94. package/bpk-component-form-validation/package.json +11 -11
  95. package/bpk-component-form-validation/src/BpkFormValidation.js +4 -4
  96. package/bpk-component-graphic-promotion/README.md +70 -0
  97. package/{bpk-component-close-button/examples.js → bpk-component-graphic-promotion/index.js} +9 -11
  98. package/bpk-component-graphic-promotion/package.json +26 -0
  99. package/bpk-component-graphic-promotion/src/BpkGraphicPromo.js +202 -0
  100. package/bpk-component-graphic-promotion/src/BpkGraphicPromo.module.scss +255 -0
  101. package/bpk-component-graphic-promotion/src/custom-breakpoints.module.scss +70 -0
  102. package/bpk-component-grid/package.json +3 -3
  103. package/bpk-component-grid/src/BpkGridColumn.js +1 -1
  104. package/bpk-component-grid/src/BpkGridContainer.js +1 -1
  105. package/bpk-component-grid/src/BpkGridRow.js +1 -1
  106. package/bpk-component-grid-toggle/package.json +4 -4
  107. package/bpk-component-grid-toggle/src/BpkGridToggle.js +2 -2
  108. package/bpk-component-horizontal-nav/package.json +7 -7
  109. package/bpk-component-horizontal-nav/src/BpkHorizontalNav.js +2 -2
  110. package/bpk-component-horizontal-nav/src/BpkHorizontalNavItem.js +1 -1
  111. package/bpk-component-icon/package.json +8 -8
  112. package/bpk-component-icon/src/classNameModifierHOCFactory.js +1 -1
  113. package/bpk-component-icon/src/withAlignment.js +4 -3
  114. package/bpk-component-icon/src/withDescription.js +1 -1
  115. package/bpk-component-icon/src/withRtlSupport.js +1 -1
  116. package/bpk-component-image/package.json +7 -7
  117. package/bpk-component-image/src/BpkBackgroundImage.js +2 -2
  118. package/bpk-component-image/src/BpkImage.js +2 -2
  119. package/bpk-component-image/src/withLazyLoading.js +1 -1
  120. package/bpk-component-image/src/withLoadingBehavior.js +28 -28
  121. package/bpk-component-infinite-scroll/package.json +7 -7
  122. package/bpk-component-infinite-scroll/src/withInfiniteScroll.js +106 -106
  123. package/bpk-component-input/package.json +7 -7
  124. package/bpk-component-input/src/BpkClearButton.js +3 -3
  125. package/bpk-component-input/src/BpkInput.js +1 -1
  126. package/bpk-component-input/src/withOpenEvents.js +1 -1
  127. package/bpk-component-label/package.json +3 -3
  128. package/bpk-component-label/src/BpkLabel.js +1 -1
  129. package/bpk-component-link/package.json +5 -5
  130. package/bpk-component-link/src/BpkButtonLink.js +1 -1
  131. package/bpk-component-link/src/BpkLink.js +1 -1
  132. package/bpk-component-list/package.json +3 -3
  133. package/bpk-component-list/src/BpkList.js +1 -1
  134. package/bpk-component-list/src/BpkListItem.js +1 -1
  135. package/bpk-component-loading-button/package.json +7 -7
  136. package/bpk-component-loading-button/src/BpkLoadingButton.js +43 -19
  137. package/{bpk-component-fieldset/examples.module.scss → bpk-component-loading-button/src/BpkLoadingButton.module.scss} +25 -16
  138. package/bpk-component-map/package.json +7 -7
  139. package/bpk-component-map/src/BpkIconMarker.js +1 -1
  140. package/bpk-component-map/src/BpkIconMarkerBackground.js +1 -1
  141. package/bpk-component-map/src/BpkPriceMarker.js +2 -2
  142. package/bpk-component-map/src/DefaultLoadingElement.js +2 -2
  143. package/bpk-component-mobile-scroll-container/package.json +4 -4
  144. package/bpk-component-mobile-scroll-container/src/BpkMobileScrollContainer.js +1 -1
  145. package/bpk-component-modal/package.json +10 -10
  146. package/bpk-component-modal/src/BpkModal.js +8 -8
  147. package/bpk-component-modal/src/BpkModalInner.js +4 -4
  148. package/bpk-component-modal/src/themeAttributes.js +1 -1
  149. package/bpk-component-navigation-bar/package.json +9 -9
  150. package/bpk-component-navigation-bar/src/BpkNavigationBar.js +2 -2
  151. package/bpk-component-navigation-bar/src/BpkNavigationBarButtonLink.js +2 -2
  152. package/bpk-component-navigation-bar/src/BpkNavigationBarIconButton.js +2 -2
  153. package/bpk-component-navigation-stack/package.json +8 -8
  154. package/bpk-component-navigation-stack/src/BpkNavigationStack.js +5 -4
  155. package/bpk-component-nudger/package.json +8 -8
  156. package/bpk-component-nudger/src/BpkConfigurableNudger.js +6 -6
  157. package/bpk-component-nudger/src/BpkNudger.js +1 -1
  158. package/bpk-component-nudger/src/themeAttributes.js +1 -1
  159. package/bpk-component-overlay/package.json +5 -5
  160. package/bpk-component-overlay/src/BpkOverlay.js +2 -2
  161. package/bpk-component-pagination/package.json +5 -5
  162. package/bpk-component-pagination/src/BpkPagination.js +1 -1
  163. package/bpk-component-pagination/src/BpkPaginationList.js +1 -1
  164. package/bpk-component-pagination/src/BpkPaginationNudger.js +4 -4
  165. package/bpk-component-pagination/src/BpkPaginationPage.js +2 -2
  166. package/bpk-component-pagination/src/themeAttributes.js +1 -1
  167. package/bpk-component-panel/package.json +3 -3
  168. package/bpk-component-panel/src/BpkPanel.js +1 -1
  169. package/bpk-component-phone-input/package.json +10 -10
  170. package/bpk-component-phone-input/src/BpkPhoneInput.js +4 -4
  171. package/bpk-component-popover/package.json +9 -9
  172. package/bpk-component-popover/src/BpkPopover.js +4 -4
  173. package/bpk-component-popover/src/BpkPopoverPortal.js +1 -1
  174. package/bpk-component-popover/src/themeAttributes.js +1 -1
  175. package/bpk-component-progress/package.json +6 -6
  176. package/bpk-component-progress/src/BpkProgress.js +1 -1
  177. package/bpk-component-radio/package.json +5 -5
  178. package/bpk-component-radio/src/BpkRadio.js +1 -1
  179. package/bpk-component-rating/package.json +5 -5
  180. package/bpk-component-rating/src/BpkRating.js +2 -2
  181. package/bpk-component-rtl-toggle/package.json +3 -3
  182. package/bpk-component-rtl-toggle/src/BpkRtlToggle.js +1 -1
  183. package/bpk-component-rtl-toggle/src/updateOnDirectionChange.js +1 -1
  184. package/bpk-component-scrollable-calendar/index.js +1 -1
  185. package/bpk-component-scrollable-calendar/package.json +7 -7
  186. package/bpk-component-scrollable-calendar/src/BpkScrollableCalendar.js +1 -1
  187. package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarDate.js +1 -1
  188. package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGrid.js +3 -3
  189. package/bpk-component-scrollable-calendar/src/BpkScrollableCalendarGridList.js +2 -2
  190. package/bpk-component-scrollable-calendar/src/utils.js +1 -1
  191. package/bpk-component-section-list/package.json +7 -7
  192. package/bpk-component-section-list/src/BpkSectionListItem.js +3 -3
  193. package/bpk-component-section-list/src/BpkSectionListSection.js +2 -2
  194. package/bpk-component-select/package.json +4 -4
  195. package/bpk-component-select/src/BpkSelect.js +1 -1
  196. package/bpk-component-skip-link/package.json +3 -3
  197. package/bpk-component-skip-link/src/BpkSkipLink.js +1 -1
  198. package/bpk-component-slider/package.json +5 -5
  199. package/bpk-component-slider/src/BpkSlider.js +1 -1
  200. package/bpk-component-spinner/package.json +4 -4
  201. package/bpk-component-spinner/src/BpkExtraLargeSpinner.js +1 -1
  202. package/bpk-component-spinner/src/BpkLargeSpinner.js +1 -1
  203. package/bpk-component-spinner/src/BpkSpinner.js +1 -1
  204. package/bpk-component-star-rating/package.json +6 -6
  205. package/bpk-component-star-rating/src/BpkInteractiveStar.js +1 -1
  206. package/bpk-component-star-rating/src/BpkInteractiveStarRating.js +1 -1
  207. package/bpk-component-star-rating/src/BpkStar.js +8 -8
  208. package/bpk-component-star-rating/src/BpkStarRating.js +4 -4
  209. package/bpk-component-star-rating/src/withInteractiveStarRatingState.js +1 -1
  210. package/bpk-component-switch/package.json +3 -3
  211. package/bpk-component-switch/src/BpkSwitch.js +1 -1
  212. package/bpk-component-table/package.json +3 -3
  213. package/bpk-component-table/src/BpkTable.js +1 -1
  214. package/bpk-component-table/src/BpkTableCell.js +1 -1
  215. package/bpk-component-table/src/BpkTableHeadCell.js +1 -1
  216. package/bpk-component-text/package.json +3 -3
  217. package/bpk-component-text/src/BpkText.js +1 -1
  218. package/bpk-component-textarea/package.json +5 -5
  219. package/bpk-component-textarea/src/BpkTextarea.js +1 -1
  220. package/bpk-component-theme-toggle/package.json +6 -6
  221. package/bpk-component-theme-toggle/src/BpkThemeToggle.js +3 -3
  222. package/bpk-component-theme-toggle/src/updateOnThemeChange.js +1 -1
  223. package/bpk-component-ticket/package.json +5 -5
  224. package/bpk-component-ticket/src/BpkTicket.js +7 -7
  225. package/bpk-component-tooltip/package.json +5 -5
  226. package/bpk-component-tooltip/src/BpkTooltip.js +1 -1
  227. package/bpk-component-tooltip/src/BpkTooltipPortal.js +1 -1
  228. package/bpk-react-utils/index.js +1 -2
  229. package/bpk-react-utils/package.json +2 -3
  230. package/bpk-react-utils/src/withDefaultProps.js +2 -1
  231. package/{bpk-component-chip/examples.module.scss → bpk-react-utils/src/wrapDisplayName.js} +11 -13
  232. package/bpk-scrim-utils/package.json +3 -3
  233. package/bpk-scrim-utils/src/BpkScrim.js +1 -1
  234. package/bpk-scrim-utils/src/withScrim.js +1 -1
  235. package/bpk-theming/package.json +2 -2
  236. package/package.json +4 -5
  237. package/bpk-animate-height/examples.js +0 -67
  238. package/bpk-component-accordion/examples.js +0 -316
  239. package/bpk-component-aria-live/examples.js +0 -247
  240. package/bpk-component-aria-live/examples.module.css +0 -18
  241. package/bpk-component-aria-live/examples.module.scss +0 -65
  242. package/bpk-component-autosuggest/examples.js +0 -201
  243. package/bpk-component-badge/BadgeLayout.js +0 -54
  244. package/bpk-component-badge/BpkBadgeLayout.module.css +0 -18
  245. package/bpk-component-badge/BpkBadgeLayout.module.scss +0 -36
  246. package/bpk-component-badge/examples.js +0 -207
  247. package/bpk-component-banner-alert/examples.js +0 -253
  248. package/bpk-component-banner-alert/examples.module.css +0 -18
  249. package/bpk-component-banner-alert/examples.module.scss +0 -27
  250. package/bpk-component-barchart/examples.js +0 -334
  251. package/bpk-component-barchart/hocs.js +0 -67
  252. package/bpk-component-barchart/stories.module.css +0 -18
  253. package/bpk-component-barchart/stories.module.scss +0 -37
  254. package/bpk-component-blockquote/examples.js +0 -33
  255. package/bpk-component-breadcrumb/examples.js +0 -57
  256. package/bpk-component-breakpoint/examples.js +0 -72
  257. package/bpk-component-breakpoint/examples.module.css +0 -18
  258. package/bpk-component-breakpoint/examples.module.scss +0 -36
  259. package/bpk-component-button/BpkButtonStory.module.css +0 -18
  260. package/bpk-component-button/examples.js +0 -213
  261. package/bpk-component-calendar/coloured-calendar-example.js +0 -106
  262. package/bpk-component-calendar/examples-components.js +0 -299
  263. package/bpk-component-calendar/examples.js +0 -369
  264. package/bpk-component-card/examples.js +0 -91
  265. package/bpk-component-checkbox/examples.js +0 -197
  266. package/bpk-component-chip/examples.js +0 -339
  267. package/bpk-component-chip/examples.module.css +0 -18
  268. package/bpk-component-code/examples.js +0 -56
  269. package/bpk-component-content-container/examples.js +0 -307
  270. package/bpk-component-datatable/examples.js +0 -138
  271. package/bpk-component-datepicker/examples.js +0 -660
  272. package/bpk-component-description-list/examples.js +0 -49
  273. package/bpk-component-dialog/examples.js +0 -182
  274. package/bpk-component-dialog/examples.module.css +0 -18
  275. package/bpk-component-dialog/stories.css +0 -1
  276. package/bpk-component-drawer/examples.js +0 -271
  277. package/bpk-component-drawer/examples.module.css +0 -18
  278. package/bpk-component-drawer/examples.module.scss +0 -34
  279. package/bpk-component-fieldset/examples.js +0 -527
  280. package/bpk-component-fieldset/examples.module.css +0 -18
  281. package/bpk-component-flare/examples.js +0 -158
  282. package/bpk-component-flare/examples.module.css +0 -18
  283. package/bpk-component-flare/examples.module.scss +0 -66
  284. package/bpk-component-form-validation/examples.js +0 -171
  285. package/bpk-component-form-validation/examples.module.css +0 -18
  286. package/bpk-component-form-validation/examples.module.scss +0 -39
  287. package/bpk-component-grid/examples.js +0 -796
  288. package/bpk-component-grid-toggle/examples.js +0 -25
  289. package/bpk-component-horizontal-nav/examples.js +0 -189
  290. package/bpk-component-horizontal-nav/examples.module.css +0 -18
  291. package/bpk-component-horizontal-nav/examples.module.scss +0 -48
  292. package/bpk-component-icon/examples.js +0 -152
  293. package/bpk-component-image/examples.js +0 -216
  294. package/bpk-component-infinite-scroll/examples.js +0 -279
  295. package/bpk-component-infinite-scroll/examples.module.css +0 -18
  296. package/bpk-component-infinite-scroll/examples.module.scss +0 -46
  297. package/bpk-component-input/examples.js +0 -490
  298. package/bpk-component-input/examples.module.css +0 -18
  299. package/bpk-component-input/examples.module.scss +0 -57
  300. package/bpk-component-label/examples.js +0 -67
  301. package/bpk-component-link/examples.js +0 -110
  302. package/bpk-component-list/examples.js +0 -56
  303. package/bpk-component-loading-button/examples.js +0 -660
  304. package/bpk-component-map/examples.js +0 -305
  305. package/bpk-component-mobile-scroll-container/examples.js +0 -76
  306. package/bpk-component-mobile-scroll-container/examples.module.css +0 -18
  307. package/bpk-component-mobile-scroll-container/examples.module.scss +0 -46
  308. package/bpk-component-modal/examples.js +0 -304
  309. package/bpk-component-modal/examples.module.css +0 -18
  310. package/bpk-component-modal/examples.module.scss +0 -35
  311. package/bpk-component-navigation-bar/AirlineLogo.js +0 -42
  312. package/bpk-component-navigation-bar/AirlineLogo.module.css +0 -18
  313. package/bpk-component-navigation-bar/AirlineLogo.module.scss +0 -27
  314. package/bpk-component-navigation-bar/examples.js +0 -193
  315. package/bpk-component-navigation-bar/examples.module.css +0 -18
  316. package/bpk-component-navigation-bar/examples.module.scss +0 -32
  317. package/bpk-component-navigation-stack/examples.js +0 -73
  318. package/bpk-component-navigation-stack/examples.module.css +0 -18
  319. package/bpk-component-navigation-stack/examples.module.scss +0 -43
  320. package/bpk-component-navigation-stack/stories-components.js +0 -202
  321. package/bpk-component-nudger/BpkNudgerStory.module.css +0 -18
  322. package/bpk-component-nudger/examples.js +0 -204
  323. package/bpk-component-overlay/examples.js +0 -163
  324. package/bpk-component-overlay/examples.module.css +0 -18
  325. package/bpk-component-overlay/examples.module.scss +0 -38
  326. package/bpk-component-pagination/examples.js +0 -93
  327. package/bpk-component-panel/examples.js +0 -63
  328. package/bpk-component-phone-input/examples.js +0 -181
  329. package/bpk-component-popover/examples.js +0 -267
  330. package/bpk-component-popover/examples.module.css +0 -18
  331. package/bpk-component-popover/examples.module.scss +0 -33
  332. package/bpk-component-progress/examples.js +0 -130
  333. package/bpk-component-progress/examples.module.css +0 -18
  334. package/bpk-component-progress/examples.module.scss +0 -29
  335. package/bpk-component-radio/examples.js +0 -126
  336. package/bpk-component-rating/examples.js +0 -373
  337. package/bpk-component-rating/examples.module.css +0 -18
  338. package/bpk-component-scrollable-calendar/examples.js +0 -383
  339. package/bpk-component-section-list/examples.js +0 -55
  340. package/bpk-component-select/examples.js +0 -274
  341. package/bpk-component-skip-link/examples.js +0 -40
  342. package/bpk-component-slider/examples.js +0 -122
  343. package/bpk-component-spinner/SpinnerLayout.js +0 -56
  344. package/bpk-component-spinner/SpinnerLayout.module.css +0 -18
  345. package/bpk-component-spinner/SpinnerLayout.module.scss +0 -36
  346. package/bpk-component-spinner/examples.js +0 -56
  347. package/bpk-component-star-rating/examples.js +0 -195
  348. package/bpk-component-switch/examples.js +0 -40
  349. package/bpk-component-table/examples.js +0 -97
  350. package/bpk-component-text/examples.js +0 -135
  351. package/bpk-component-text/examples.module.css +0 -18
  352. package/bpk-component-text/examples.module.scss +0 -25
  353. package/bpk-component-textarea/examples.js +0 -116
  354. package/bpk-component-ticket/examples.js +0 -203
  355. package/bpk-component-ticket/examples.module.css +0 -18
  356. package/bpk-component-ticket/examples.module.scss +0 -79
  357. package/bpk-component-tooltip/examples.js +0 -181
@@ -1,253 +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, { Component } from 'react';
21
- import { action } from 'bpk-storybook-utils';
22
- import { fontWeightBold } from '@skyscanner/bpk-foundations-web/tokens/base.es6';
23
- import CurrencyIcon from '../../bpk-component-icon/sm/currency';
24
- import { AriaLiveDemo } from '../../bpk-component-aria-live/examples';
25
- import { BpkButtonPrimary } from '../../bpk-component-button';
26
- import { cssModules } from '../bpk-react-utils';
27
-
28
- import STYLES from './examples.module.scss';
29
-
30
- import BpkBannerAlert, {
31
- ALERT_TYPES,
32
- withBannerAlertState,
33
- BpkBannerAlertDismissable,
34
- BpkBannerAlertExpandable,
35
- } from './index';
36
-
37
- const getClassName = cssModules(STYLES);
38
-
39
- const message = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit.';
40
- const longMessage = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque sagittis sagittis purus, id
41
- blandit ipsum. Pellentesque nec diam nec erat condimentum dapibus. Nunc diam augue, egestas id egestas ut, facilisis
42
- nec mi. Donec et congue odio, nec laoreet est. Integer rhoncus varius arcu, a fringilla libero laoreet at. Mauris
43
- porta varius ullamcorper. Sed laoreet libero mauris, non pretium lectus accumsan et. Suspendisse vehicula ullamcorper
44
- sapien, et dapibus mi aliquet non. Pellentesque auctor sagittis lectus vitae rhoncus. Fusce id enim porttitor, mattis
45
- ante in, vestibulum nulla.`;
46
-
47
- type Props = {};
48
- type State = {
49
- dismissed: boolean,
50
- updates: Array<string>,
51
- };
52
-
53
- class BpkBannerAlertDismissableState extends Component<Props, State> {
54
- constructor(props: Props) {
55
- super(props);
56
-
57
- this.state = {
58
- dismissed: false,
59
- updates: [],
60
- };
61
- }
62
-
63
- render() {
64
- return (
65
- <>
66
- {/* $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'. */}
67
- <BpkBannerAlertDismissable
68
- show={!this.state.dismissed}
69
- dismissButtonLabel="Dismiss"
70
- onDismiss={() => {
71
- this.setState((prevState) => ({
72
- dismissed: true,
73
- updates: [...prevState.updates, 'Success alert dismissed'],
74
- }));
75
- }}
76
- message="Neutral alert with dismiss option"
77
- {...this.props}
78
- />
79
- {this.state.dismissed && (
80
- <BpkButtonPrimary
81
- className={getClassName('bpk-banner-alert-examples__component')}
82
- onClick={() => {
83
- this.setState((prevState) => ({
84
- dismissed: false,
85
- updates: [...prevState.updates, 'Success alert added'],
86
- }));
87
- }}
88
- >
89
- Reset
90
- </BpkButtonPrimary>
91
- )}
92
- <AriaLiveDemo
93
- visible
94
- className={getClassName('bpk-banner-alert-examples__component')}
95
- >
96
- {this.state.updates.map((u) => (
97
- <>
98
- {u}
99
- <br />
100
- </>
101
- ))}
102
- </AriaLiveDemo>
103
- </>
104
- );
105
- }
106
- }
107
-
108
- const BpkBannerAlertExpandableState = withBannerAlertState(
109
- BpkBannerAlertExpandable,
110
- );
111
-
112
- const Neutral = (props: {}) => (
113
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
114
- <BpkBannerAlert
115
- message="Neutral alert"
116
- type={ALERT_TYPES.NEUTRAL}
117
- {...props}
118
- />
119
- );
120
- const Primary = (props: {}) => (
121
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
122
- <BpkBannerAlert
123
- message="Primary alert"
124
- type={ALERT_TYPES.PRIMARY}
125
- {...props}
126
- />
127
- );
128
- const Success = (props: {}) => (
129
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
130
- <BpkBannerAlert
131
- message="Success alert"
132
- type={ALERT_TYPES.SUCCESS}
133
- {...props}
134
- />
135
- );
136
- const SuccessLongMessage = (props: {}) => (
137
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
138
- <BpkBannerAlert message={longMessage} type={ALERT_TYPES.SUCCESS} {...props} />
139
- );
140
- const Dismissable = () => (
141
- <BpkBannerAlertDismissable
142
- dismissButtonLabel="Dismiss"
143
- message="Dimissable alert"
144
- type={ALERT_TYPES.SUCCESS}
145
- onDismiss={action('dismissed')}
146
- />
147
- );
148
- const SuccessExpandable = () => (
149
- <BpkBannerAlertExpandable
150
- message="Success alert"
151
- type={ALERT_TYPES.SUCCESS}
152
- toggleButtonLabel="View more"
153
- >
154
- {longMessage}
155
- </BpkBannerAlertExpandable>
156
- );
157
- const SuccessAnimateOnEnter = () => (
158
- <BpkBannerAlert
159
- animateOnEnter
160
- message={message}
161
- type={ALERT_TYPES.SUCCESS}
162
- onDismiss={action('dismissed')}
163
- />
164
- );
165
- const SuccessWithReactRenderedMessage = (props: {}) => (
166
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
167
- <BpkBannerAlert
168
- message={
169
- <span style={{ fontWeight: fontWeightBold }}>
170
- Successful alert with custom rendered message
171
- </span>
172
- }
173
- type={ALERT_TYPES.SUCCESS}
174
- {...props}
175
- />
176
- );
177
- const Warn = (props: {}) => (
178
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
179
- <BpkBannerAlert message="Warn alert" type={ALERT_TYPES.WARN} {...props} />
180
- );
181
- const ErrorExample = (props: {}) => (
182
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
183
- <BpkBannerAlert message="Error alert" type={ALERT_TYPES.ERROR} {...props} />
184
- );
185
- const Event = (props: {}) => (
186
- // $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
187
- <BpkBannerAlert message="Event alert" type={ALERT_TYPES.EVENT} {...props} />
188
- );
189
- const SuccessDismissableBehaviour = () => (
190
- <BpkBannerAlertDismissableState
191
- dismissButtonLabel="Dismiss"
192
- message="Success alert with dismiss option"
193
- type={ALERT_TYPES.SUCCESS}
194
- />
195
- );
196
- const SuccessExpandableBehaviour = () => (
197
- <BpkBannerAlertExpandableState
198
- message="Success alert with more information"
199
- type={ALERT_TYPES.SUCCESS}
200
- toggleButtonLabel="View more"
201
- >
202
- {longMessage}
203
- </BpkBannerAlertExpandableState>
204
- );
205
- const SuccessAutomaticallyDismissed = () => (
206
- <BpkBannerAlertDismissableState
207
- hideAfter={5}
208
- message={message}
209
- type={ALERT_TYPES.SUCCESS}
210
- dismissButtonLabel="Dismiss"
211
- />
212
- );
213
- const SuccessCustomIcon = () => (
214
- <BpkBannerAlert
215
- message="Success alert with custom icon"
216
- type={ALERT_TYPES.SUCCESS}
217
- icon={CurrencyIcon}
218
- />
219
- );
220
-
221
- const DocsDefault = () => (
222
- <>
223
- <Neutral />
224
- <Primary className={getClassName('bpk-banner-alert-examples__component')} />
225
- <Success className={getClassName('bpk-banner-alert-examples__component')} />
226
- <SuccessWithReactRenderedMessage
227
- className={getClassName('bpk-banner-alert-examples__component')}
228
- />
229
- <Warn className={getClassName('bpk-banner-alert-examples__component')} />
230
- <ErrorExample
231
- className={getClassName('bpk-banner-alert-examples__component')}
232
- />
233
- </>
234
- );
235
-
236
- export {
237
- Neutral,
238
- Primary,
239
- Success,
240
- SuccessLongMessage,
241
- Dismissable,
242
- SuccessExpandable,
243
- SuccessAnimateOnEnter,
244
- SuccessWithReactRenderedMessage,
245
- Warn,
246
- ErrorExample,
247
- Event,
248
- SuccessDismissableBehaviour,
249
- SuccessExpandableBehaviour,
250
- SuccessAutomaticallyDismissed,
251
- SuccessCustomIcon,
252
- DocsDefault,
253
- };
@@ -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-banner-alert-examples__component{margin-top:1rem}
@@ -1,27 +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
- @import '~bpk-mixins/index';
20
-
21
- $bpk-spacing-v2: true;
22
-
23
- .bpk-banner-alert-examples {
24
- &__component {
25
- margin-top: bpk-spacing-base();
26
- }
27
- }
@@ -1,334 +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 { number } from 'prop-types';
23
- import { cssModules, withDefaultProps } from '../bpk-react-utils';
24
- import BpkText, { TEXT_STYLES } from '../../bpk-component-text';
25
- import { updateOnDirectionChange } from '../../bpk-component-rtl-toggle';
26
- import { lineHeightSm } from '@skyscanner/bpk-foundations-web/tokens/base.es6';
27
- import { scaleLinear, scaleBand } from 'd3-scale';
28
-
29
- import { remToPx } from './src/utils';
30
- import { ORIENTATION_X, ORIENTATION_Y } from './src/orientation';
31
- import { withSelectedState } from './hocs';
32
- import STYLES from './stories.module.scss';
33
-
34
- import BpkBarchart, {
35
- BpkChartGridLines,
36
- BpkChartAxis,
37
- BpkChartMargin,
38
- } from './index';
39
-
40
- const getClassName = cssModules(STYLES);
41
-
42
- const Heading = withDefaultProps(BpkText, {
43
- textStyle: TEXT_STYLES.subheading,
44
- tagName: 'h1',
45
- className: getClassName('bpk-heading'),
46
- });
47
-
48
- const RtlBarchart = updateOnDirectionChange(BpkBarchart);
49
- const SelectableBarChart = withSelectedState(RtlBarchart);
50
-
51
- const data = require('./data.json');
52
-
53
- const margin = {
54
- top: 0,
55
- left: 40, // eslint-disable-line backpack/use-tokens
56
- bottom: 40, // eslint-disable-line backpack/use-tokens
57
- right: 0,
58
- };
59
-
60
- const Gridlines = ({ size, ...rest }) => (
61
- <svg xmlns="http://www.w3.org/2000/svg" width={size} height={size}>
62
- <BpkChartMargin margin={margin}>
63
- <BpkChartAxis
64
- orientation={ORIENTATION_X}
65
- height={size}
66
- width={size}
67
- margin={margin}
68
- {...rest}
69
- />
70
- <BpkChartAxis
71
- orientation={ORIENTATION_Y}
72
- width={size}
73
- height={size}
74
- margin={margin}
75
- {...rest}
76
- />
77
- <BpkChartGridLines
78
- orientation={ORIENTATION_X}
79
- width={size}
80
- height={size}
81
- margin={margin}
82
- {...rest}
83
- />
84
- <BpkChartGridLines
85
- orientation={ORIENTATION_Y}
86
- width={size}
87
- height={size}
88
- margin={margin}
89
- {...rest}
90
- />
91
- </BpkChartMargin>
92
- </svg>
93
- );
94
-
95
- Gridlines.propTypes = { size: number.isRequired };
96
-
97
- const AxesAndGridlines = () => {
98
- const dataset = [
99
- [5, 20],
100
- [480, 90],
101
- [250, 50],
102
- [100, 33],
103
- [330, 95],
104
- [410, 12],
105
- [475, 44],
106
- [25, 67],
107
- [85, 21],
108
- [220, 88],
109
- ];
110
- const size = 440;
111
- const scale = scaleLinear()
112
- .domain([5, 480])
113
- .range([0, size - 40]);
114
- const scale2 = scaleBand()
115
- .domain(dataset.map((d) => d[0]))
116
- .range([0, size - 40]);
117
-
118
- return (
119
- <div>
120
- <Heading>Linear scale</Heading>
121
- <Gridlines scale={scale} size={size} />
122
- <Gridlines scale={scale} size={size} numTicks={2} />
123
- <Heading>Band scale</Heading>
124
- <Gridlines scale={scale2} size={size} />
125
- <Gridlines scale={scale2} size={size} tickEvery={2} />
126
- <Gridlines scale={scale2} size={size} tickEvery={2} tickOffset={1} />
127
- </div>
128
- );
129
- };
130
-
131
- const DefaultExample = () => (
132
- <RtlBarchart
133
- initialWidth={500}
134
- initialHeight={300}
135
- data={data.prices}
136
- xScaleDataKey="month"
137
- yScaleDataKey="price"
138
- style={{
139
- maxWidth: '580px',
140
- minWidth: '400px',
141
- }}
142
- xAxisLabel="Month"
143
- yAxisLabel="Average Price (£)"
144
- />
145
- );
146
-
147
- const CustomScrollColors = () => (
148
- <RtlBarchart
149
- initialWidth={500}
150
- initialHeight={300}
151
- data={data.prices}
152
- xScaleDataKey="month"
153
- yScaleDataKey="price"
154
- style={{
155
- maxWidth: '580px',
156
- minWidth: '400px',
157
- }}
158
- xAxisLabel="Month"
159
- yAxisLabel="Average Price (£)"
160
- className={getClassName('bpk-barchart-custom-scrollers')}
161
- leadingScrollIndicatorClassName={getClassName(
162
- 'bpk-barchart-custom-scrollers--leading',
163
- )}
164
- trailingScrollIndicatorClassName={getClassName(
165
- 'bpk-barchart-custom-scrollers--trailing',
166
- )}
167
- />
168
- );
169
-
170
- const DefaultDisabledDataTable = () => (
171
- <RtlBarchart
172
- initialWidth={500}
173
- initialHeight={300}
174
- data={data.prices}
175
- xScaleDataKey="month"
176
- yScaleDataKey="price"
177
- style={{
178
- maxWidth: '580px',
179
- minWidth: '400px',
180
- }}
181
- xAxisLabel="Month"
182
- yAxisLabel="Average Price (£)"
183
- disableDataTable
184
- />
185
- );
186
-
187
- const Interactive = () => (
188
- <SelectableBarChart
189
- initialWidth={500}
190
- initialHeight={300}
191
- data={data.prices}
192
- xScaleDataKey="month"
193
- yScaleDataKey="price"
194
- style={{
195
- maxWidth: '580px',
196
- minWidth: '400px',
197
- }}
198
- xAxisLabel="Month"
199
- yAxisLabel="Average Price (£)"
200
- />
201
- );
202
-
203
- const Outliers = () => (
204
- <RtlBarchart
205
- initialWidth={500}
206
- initialHeight={300}
207
- data={data.prices2}
208
- xScaleDataKey="month"
209
- yScaleDataKey="price"
210
- style={{
211
- maxWidth: '580px',
212
- }}
213
- xAxisLabel="Month"
214
- yAxisLabel="Average Price (£)"
215
- outlierPercentage={25}
216
- />
217
- );
218
-
219
- const CustomTicks = () => (
220
- <RtlBarchart
221
- initialWidth={500}
222
- initialHeight={300}
223
- data={data.prices}
224
- xScaleDataKey="month"
225
- yScaleDataKey="price"
226
- style={{
227
- maxWidth: '580px',
228
- }}
229
- xAxisLabel="Month"
230
- yAxisLabel="Average Price (£)"
231
- yAxisNumTicks={3}
232
- xAxisTickEvery={2}
233
- xAxisTickOffset={1}
234
- />
235
- );
236
-
237
- const CustomTickLabels = () => (
238
- <RtlBarchart
239
- initialWidth={500}
240
- initialHeight={300}
241
- data={data.prices}
242
- xScaleDataKey="month"
243
- yScaleDataKey="price"
244
- style={{
245
- maxWidth: '580px',
246
- }}
247
- xAxisLabel="Month"
248
- xAxisMargin={3 * remToPx(lineHeightSm) + 12}
249
- xAxisTickValue={(tick) => {
250
- let season = '❄️';
251
- if (['Mar', 'Apr', 'May'].indexOf(tick) > -1) {
252
- season = '🌻';
253
- }
254
- if (['Jun', 'Jul', 'Aug'].indexOf(tick) > -1) {
255
- season = '☀️';
256
- }
257
- if (['Sep', 'Oct', 'Nov'].indexOf(tick) > -1) {
258
- season = '🍁';
259
- }
260
- return [
261
- <tspan x="0" dy="0" style={{ fontWeight: 'bold' }} key="month">
262
- {tick}
263
- </tspan>,
264
- <tspan x="0" dy={remToPx(lineHeightSm)} key="season">
265
- {season}
266
- </tspan>,
267
- <tspan key="ltr">&lrm;</tspan>,
268
- ];
269
- }}
270
- yAxisLabel="Average Price"
271
- yAxisMargin={4 * remToPx(lineHeightSm)}
272
- yAxisTickValue={(v) => `£${v}`}
273
- />
274
- );
275
-
276
- const GridlinesExample = () => (
277
- <RtlBarchart
278
- initialWidth={500}
279
- initialHeight={300}
280
- data={data.prices}
281
- xScaleDataKey="month"
282
- yScaleDataKey="price"
283
- style={{
284
- maxWidth: '580px',
285
- }}
286
- xAxisLabel="Month"
287
- yAxisLabel="Average Price (£)"
288
- showGridlines
289
- />
290
- );
291
-
292
- const CustomYAxisDomain = () => (
293
- <div>
294
- <Heading>Domain (0 - 800)</Heading>
295
- <RtlBarchart
296
- initialWidth={500}
297
- initialHeight={300}
298
- data={data.prices}
299
- xScaleDataKey="month"
300
- yScaleDataKey="price"
301
- style={{
302
- maxWidth: '580px',
303
- }}
304
- showGridlines
305
- yAxisDomain={[0, 800]}
306
- />
307
- <Heading>Domain (300 - null)</Heading>
308
- <RtlBarchart
309
- initialWidth={500}
310
- initialHeight={300}
311
- data={data.prices}
312
- xScaleDataKey="month"
313
- yScaleDataKey="price"
314
- style={{
315
- maxWidth: '580px',
316
- }}
317
- showGridlines
318
- yAxisDomain={[300, null]}
319
- />
320
- </div>
321
- );
322
-
323
- export {
324
- AxesAndGridlines,
325
- DefaultExample,
326
- CustomScrollColors,
327
- DefaultDisabledDataTable,
328
- Interactive,
329
- Outliers,
330
- CustomTicks,
331
- CustomTickLabels,
332
- GridlinesExample,
333
- CustomYAxisDomain,
334
- };
@@ -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 isEqual from 'lodash/isEqual';
22
- import React, { Component, type ComponentType } from 'react';
23
- import { wrapDisplayName } from '../bpk-react-utils';
24
-
25
- // eslint-disable-next-line import/prefer-default-export
26
- export const withSelectedState = (ComposedComponent: ComponentType<any>) => {
27
- type State = {
28
- selectedPoint: ?number,
29
- };
30
- class WithSelectedState extends Component<{}, State> {
31
- constructor() {
32
- super();
33
-
34
- this.state = {
35
- selectedPoint: null,
36
- };
37
- }
38
-
39
- onBarClick = (e: SyntheticEvent<any>, { point }: { point: number }) => {
40
- this.setState({
41
- selectedPoint: point,
42
- });
43
- };
44
-
45
- getBarSelection = (point: number) =>
46
- isEqual(this.state.selectedPoint, point);
47
-
48
- render() {
49
- const { ...rest } = this.props;
50
-
51
- return (
52
- <ComposedComponent
53
- {...rest}
54
- onBarClick={this.onBarClick}
55
- getBarSelection={this.getBarSelection}
56
- />
57
- );
58
- }
59
- }
60
-
61
- WithSelectedState.displayName = wrapDisplayName(
62
- ComposedComponent,
63
- 'withSelectedState',
64
- );
65
-
66
- return WithSelectedState;
67
- };