@openedx/paragon 22.0.0-alpha.23 → 22.0.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 (1015) hide show
  1. package/README.md +16 -46
  2. package/bin/paragon-scripts.js +16 -123
  3. package/dist/ActionRow/_index.scss +4 -2
  4. package/dist/ActionRow/_variables.scss +2 -0
  5. package/dist/ActionRow/index.js +7 -8
  6. package/dist/ActionRow/index.js.map +1 -1
  7. package/dist/Alert/_variables.scss +24 -0
  8. package/dist/Alert/index.js +33 -25
  9. package/dist/Alert/index.js.map +1 -1
  10. package/dist/Alert/index.scss +32 -41
  11. package/dist/Annotation/_variables.scss +18 -0
  12. package/dist/Annotation/index.js +7 -9
  13. package/dist/Annotation/index.js.map +1 -1
  14. package/dist/Annotation/index.scss +103 -130
  15. package/dist/Avatar/_variables.scss +10 -0
  16. package/dist/Avatar/index.js +5 -7
  17. package/dist/Avatar/index.js.map +1 -1
  18. package/dist/Avatar/index.scss +20 -18
  19. package/dist/AvatarButton/_variables.scss +3 -0
  20. package/dist/AvatarButton/index.js +10 -12
  21. package/dist/AvatarButton/index.js.map +1 -1
  22. package/dist/AvatarButton/index.scss +5 -3
  23. package/dist/Badge/_variables.scss +16 -0
  24. package/dist/Badge/index.js +6 -4
  25. package/dist/Badge/index.js.map +1 -1
  26. package/dist/Badge/index.scss +2 -112
  27. package/dist/Breadcrumb/BreadcrumbLink.js +11 -14
  28. package/dist/Breadcrumb/BreadcrumbLink.js.map +1 -1
  29. package/dist/Breadcrumb/_variables.scss +27 -0
  30. package/dist/Breadcrumb/index.js +29 -29
  31. package/dist/Breadcrumb/index.js.map +1 -1
  32. package/dist/Breadcrumb/index.scss +16 -14
  33. package/dist/Bubble/_variables.scss +8 -0
  34. package/dist/Bubble/index.js +11 -13
  35. package/dist/Bubble/index.js.map +1 -1
  36. package/dist/Bubble/index.scss +12 -25
  37. package/dist/Button/_variables.scss +52 -0
  38. package/dist/Button/deprecated/index.js +149 -0
  39. package/dist/Button/deprecated/index.js.map +1 -0
  40. package/dist/Button/index.js +14 -13
  41. package/dist/Button/index.js.map +1 -1
  42. package/dist/Button/index.scss +370 -855
  43. package/dist/Card/CardBody.js +4 -6
  44. package/dist/Card/CardBody.js.map +1 -1
  45. package/dist/Card/CardCarousel/CardCarousel.js +11 -13
  46. package/dist/Card/CardCarousel/CardCarousel.js.map +1 -1
  47. package/dist/Card/CardCarousel/CardCarouselControls.js +6 -7
  48. package/dist/Card/CardCarousel/CardCarouselControls.js.map +1 -1
  49. package/dist/Card/CardCarousel/CardCarouselHeader.js +9 -12
  50. package/dist/Card/CardCarousel/CardCarouselHeader.js.map +1 -1
  51. package/dist/Card/CardCarousel/CardCarouselItems.js +6 -9
  52. package/dist/Card/CardCarousel/CardCarouselItems.js.map +1 -1
  53. package/dist/Card/CardCarousel/CardCarouselProvider.js +27 -28
  54. package/dist/Card/CardCarousel/CardCarouselProvider.js.map +1 -1
  55. package/dist/Card/CardCarousel/CardCarouselSubtitle.js +4 -6
  56. package/dist/Card/CardCarousel/CardCarouselSubtitle.js.map +1 -1
  57. package/dist/Card/CardCarousel/CardCarouselTitle.js +4 -6
  58. package/dist/Card/CardCarousel/CardCarouselTitle.js.map +1 -1
  59. package/dist/Card/CardContext.js +8 -10
  60. package/dist/Card/CardContext.js.map +1 -1
  61. package/dist/Card/CardDeck.js +19 -17
  62. package/dist/Card/CardDeck.js.map +1 -1
  63. package/dist/Card/CardDivider.js +3 -5
  64. package/dist/Card/CardDivider.js.map +1 -1
  65. package/dist/Card/CardFooter.js +15 -18
  66. package/dist/Card/CardFooter.js.map +1 -1
  67. package/dist/Card/CardGrid.js +13 -11
  68. package/dist/Card/CardGrid.js.map +1 -1
  69. package/dist/Card/CardHeader.js +17 -22
  70. package/dist/Card/CardHeader.js.map +1 -1
  71. package/dist/Card/CardImageCap.js +48 -33
  72. package/dist/Card/CardImageCap.js.map +1 -1
  73. package/dist/Card/CardSection.js +11 -14
  74. package/dist/Card/CardSection.js.map +1 -1
  75. package/dist/Card/CardStatus.js +11 -14
  76. package/dist/Card/CardStatus.js.map +1 -1
  77. package/dist/Card/_variables.scss +55 -0
  78. package/dist/Card/index.js +18 -20
  79. package/dist/Card/index.js.map +1 -1
  80. package/dist/Card/index.scss +79 -78
  81. package/dist/Carousel/_variables.scss +27 -0
  82. package/dist/Carousel/index.js +17 -11
  83. package/dist/Carousel/index.js.map +1 -1
  84. package/dist/Carousel/index.scss +2 -168
  85. package/dist/CheckBox/index.js +102 -0
  86. package/dist/CheckBox/index.js.map +1 -0
  87. package/dist/CheckBoxGroup/index.js +15 -0
  88. package/dist/CheckBoxGroup/index.js.map +1 -0
  89. package/dist/Chip/ChipIcon.js +47 -0
  90. package/dist/Chip/ChipIcon.js.map +1 -0
  91. package/dist/Chip/_variables.scss +28 -0
  92. package/dist/Chip/constants.js +5 -0
  93. package/dist/Chip/index.js +66 -40
  94. package/dist/Chip/index.js.map +1 -1
  95. package/dist/Chip/index.scss +102 -61
  96. package/dist/Chip/mixins.scss +42 -0
  97. package/dist/ChipCarousel/_variables.scss +3 -0
  98. package/dist/ChipCarousel/index.js +29 -30
  99. package/dist/ChipCarousel/index.js.map +1 -1
  100. package/dist/ChipCarousel/index.scss +4 -1
  101. package/dist/CloseButton/_variables.scss +6 -0
  102. package/dist/CloseButton/index.scss +2 -31
  103. package/dist/Code/_variables.scss +17 -0
  104. package/dist/Code/index.scss +2 -47
  105. package/dist/Collapsible/CollapsibleAdvanced.js +82 -62
  106. package/dist/Collapsible/CollapsibleAdvanced.js.map +1 -1
  107. package/dist/Collapsible/CollapsibleBody.js +13 -15
  108. package/dist/Collapsible/CollapsibleBody.js.map +1 -1
  109. package/dist/Collapsible/CollapsibleTrigger.js +18 -20
  110. package/dist/Collapsible/CollapsibleTrigger.js.map +1 -1
  111. package/dist/Collapsible/CollapsibleVisible.js +6 -9
  112. package/dist/Collapsible/CollapsibleVisible.js.map +1 -1
  113. package/dist/Collapsible/_variables.scss +12 -0
  114. package/dist/Collapsible/index.js +17 -18
  115. package/dist/Collapsible/index.js.map +1 -1
  116. package/dist/Collapsible/index.scss +15 -15
  117. package/dist/ColorPicker/_variables.scss +2 -0
  118. package/dist/ColorPicker/index.js +86 -31
  119. package/dist/ColorPicker/index.js.map +1 -1
  120. package/dist/ColorPicker/index.scss +11 -9
  121. package/dist/Container/_variables.scss +5 -0
  122. package/dist/Container/index.js +14 -11
  123. package/dist/Container/index.js.map +1 -1
  124. package/dist/DataTable/ActionDisplay.js +8 -9
  125. package/dist/DataTable/ActionDisplay.js.map +1 -1
  126. package/dist/DataTable/BulkActions.js +23 -20
  127. package/dist/DataTable/BulkActions.js.map +1 -1
  128. package/dist/DataTable/CardView.js +46 -43
  129. package/dist/DataTable/CardView.js.map +1 -1
  130. package/dist/DataTable/CollapsibleButtonGroup.js +59 -41
  131. package/dist/DataTable/CollapsibleButtonGroup.js.map +1 -1
  132. package/dist/DataTable/DataTableContext.js +1 -1
  133. package/dist/DataTable/DataTableContext.js.map +1 -1
  134. package/dist/DataTable/DataTableLayout.js +6 -9
  135. package/dist/DataTable/DataTableLayout.js.map +1 -1
  136. package/dist/DataTable/DataViewToggle.js +25 -20
  137. package/dist/DataTable/DataViewToggle.js.map +1 -1
  138. package/dist/DataTable/DropdownFilters.js +41 -28
  139. package/dist/DataTable/DropdownFilters.js.map +1 -1
  140. package/dist/DataTable/EmptyTable.js +6 -9
  141. package/dist/DataTable/EmptyTable.js.map +1 -1
  142. package/dist/DataTable/ExpandAll.js +2 -4
  143. package/dist/DataTable/ExpandAll.js.map +1 -1
  144. package/dist/DataTable/ExpandRow.js +2 -4
  145. package/dist/DataTable/ExpandRow.js.map +1 -1
  146. package/dist/DataTable/FilterStatus.js +18 -17
  147. package/dist/DataTable/FilterStatus.js.map +1 -1
  148. package/dist/DataTable/RowStatus.js +15 -18
  149. package/dist/DataTable/RowStatus.js.map +1 -1
  150. package/dist/DataTable/SidebarFilters.js +16 -13
  151. package/dist/DataTable/SidebarFilters.js.map +1 -1
  152. package/dist/DataTable/SmartStatus.js +14 -16
  153. package/dist/DataTable/SmartStatus.js.map +1 -1
  154. package/dist/DataTable/Table.js +17 -19
  155. package/dist/DataTable/Table.js.map +1 -1
  156. package/dist/DataTable/TableActions.js +11 -13
  157. package/dist/DataTable/TableActions.js.map +1 -1
  158. package/dist/DataTable/TableCell.js +6 -10
  159. package/dist/DataTable/TableCell.js.map +1 -1
  160. package/dist/DataTable/TableControlBar.js +7 -12
  161. package/dist/DataTable/TableControlBar.js.map +1 -1
  162. package/dist/DataTable/TableFilters.js +14 -12
  163. package/dist/DataTable/TableFilters.js.map +1 -1
  164. package/dist/DataTable/TableFooter.js +5 -8
  165. package/dist/DataTable/TableFooter.js.map +1 -1
  166. package/dist/DataTable/TableHeaderCell.js +11 -15
  167. package/dist/DataTable/TableHeaderCell.js.map +1 -1
  168. package/dist/DataTable/TableHeaderRow.js +6 -4
  169. package/dist/DataTable/TableHeaderRow.js.map +1 -1
  170. package/dist/DataTable/TablePagination.js +15 -9
  171. package/dist/DataTable/TablePagination.js.map +1 -1
  172. package/dist/DataTable/TablePaginationMinimal.js +14 -8
  173. package/dist/DataTable/TablePaginationMinimal.js.map +1 -1
  174. package/dist/DataTable/TableRow.js +15 -18
  175. package/dist/DataTable/TableRow.js.map +1 -1
  176. package/dist/DataTable/_variables.scss +11 -0
  177. package/dist/DataTable/filters/CheckboxFilter.js +23 -22
  178. package/dist/DataTable/filters/CheckboxFilter.js.map +1 -1
  179. package/dist/DataTable/filters/DropdownFilter.js +14 -19
  180. package/dist/DataTable/filters/DropdownFilter.js.map +1 -1
  181. package/dist/DataTable/filters/MultiSelectDropdownFilter.js +19 -20
  182. package/dist/DataTable/filters/MultiSelectDropdownFilter.js.map +1 -1
  183. package/dist/DataTable/filters/TextFilter.js +15 -18
  184. package/dist/DataTable/filters/TextFilter.js.map +1 -1
  185. package/dist/DataTable/hooks.js +29 -25
  186. package/dist/DataTable/hooks.js.map +1 -1
  187. package/dist/DataTable/index.js +121 -104
  188. package/dist/DataTable/index.js.map +1 -1
  189. package/dist/DataTable/index.scss +50 -48
  190. package/dist/DataTable/selection/BaseSelectionStatus.js +29 -30
  191. package/dist/DataTable/selection/BaseSelectionStatus.js.map +1 -1
  192. package/dist/DataTable/selection/ControlledSelect.js +13 -9
  193. package/dist/DataTable/selection/ControlledSelect.js.map +1 -1
  194. package/dist/DataTable/selection/ControlledSelectHeader.js +19 -15
  195. package/dist/DataTable/selection/ControlledSelectHeader.js.map +1 -1
  196. package/dist/DataTable/selection/ControlledSelectionStatus.js +34 -24
  197. package/dist/DataTable/selection/ControlledSelectionStatus.js.map +1 -1
  198. package/dist/DataTable/selection/SelectionStatus.js +23 -23
  199. package/dist/DataTable/selection/SelectionStatus.js.map +1 -1
  200. package/dist/DataTable/utils/getVisibleColumns.js +36 -44
  201. package/dist/DataTable/utils/getVisibleColumns.js.map +1 -1
  202. package/dist/Dropdown/_variables.scss +33 -0
  203. package/dist/Dropdown/deprecated/DropdownButton.js +44 -0
  204. package/dist/Dropdown/deprecated/DropdownButton.js.map +1 -0
  205. package/dist/Dropdown/deprecated/DropdownItem.js +33 -0
  206. package/dist/Dropdown/deprecated/DropdownItem.js.map +1 -0
  207. package/dist/Dropdown/deprecated/DropdownMenu.js +46 -0
  208. package/dist/Dropdown/deprecated/DropdownMenu.js.map +1 -0
  209. package/dist/Dropdown/deprecated/index.js +242 -0
  210. package/dist/Dropdown/deprecated/index.js.map +1 -0
  211. package/dist/Dropdown/index.js +34 -29
  212. package/dist/Dropdown/index.js.map +1 -1
  213. package/dist/Dropdown/index.scss +12 -11
  214. package/dist/Dropzone/DefaultContent.js +13 -13
  215. package/dist/Dropzone/DefaultContent.js.map +1 -1
  216. package/dist/Dropzone/DragError.js +1 -3
  217. package/dist/Dropzone/DragError.js.map +1 -1
  218. package/dist/Dropzone/GenericError.js +7 -7
  219. package/dist/Dropzone/GenericError.js.map +1 -1
  220. package/dist/Dropzone/UploadProgress.js +6 -8
  221. package/dist/Dropzone/UploadProgress.js.map +1 -1
  222. package/dist/Dropzone/_variables.scss +9 -0
  223. package/dist/Dropzone/index.js +146 -88
  224. package/dist/Dropzone/index.js.map +1 -1
  225. package/dist/Dropzone/index.scss +14 -12
  226. package/dist/Fieldset/index.js +117 -0
  227. package/dist/Fieldset/index.js.map +1 -0
  228. package/dist/Fieldset/index.scss +12 -0
  229. package/dist/Form/FormAutosuggest.js +287 -152
  230. package/dist/Form/FormAutosuggest.js.map +1 -1
  231. package/dist/Form/FormAutosuggestOption.js +4 -6
  232. package/dist/Form/FormAutosuggestOption.js.map +1 -1
  233. package/dist/Form/FormCheckbox.js +35 -42
  234. package/dist/Form/FormCheckbox.js.map +1 -1
  235. package/dist/Form/FormCheckboxSet.js +13 -16
  236. package/dist/Form/FormCheckboxSet.js.map +1 -1
  237. package/dist/Form/FormCheckboxSetContext.js +39 -34
  238. package/dist/Form/FormCheckboxSetContext.js.map +1 -1
  239. package/dist/Form/FormControl.js +41 -35
  240. package/dist/Form/FormControl.js.map +1 -1
  241. package/dist/Form/FormControlDecorator.js +3 -5
  242. package/dist/Form/FormControlDecorator.js.map +1 -1
  243. package/dist/Form/FormControlDecoratorGroup.js +8 -10
  244. package/dist/Form/FormControlDecoratorGroup.js.map +1 -1
  245. package/dist/Form/FormControlFeedback.js +12 -15
  246. package/dist/Form/FormControlFeedback.js.map +1 -1
  247. package/dist/Form/FormControlFloatingLabel.js +3 -6
  248. package/dist/Form/FormControlFloatingLabel.js.map +1 -1
  249. package/dist/Form/FormControlSet.js +8 -9
  250. package/dist/Form/FormControlSet.js.map +1 -1
  251. package/dist/Form/FormGroup.js +11 -12
  252. package/dist/Form/FormGroup.js.map +1 -1
  253. package/dist/Form/FormGroupContext.js +64 -39
  254. package/dist/Form/FormGroupContext.js.map +1 -1
  255. package/dist/Form/FormLabel.js +15 -17
  256. package/dist/Form/FormLabel.js.map +1 -1
  257. package/dist/Form/FormRadio.js +19 -22
  258. package/dist/Form/FormRadio.js.map +1 -1
  259. package/dist/Form/FormRadioSet.js +13 -16
  260. package/dist/Form/FormRadioSet.js.map +1 -1
  261. package/dist/Form/FormRadioSetContext.js +39 -34
  262. package/dist/Form/FormRadioSetContext.js.map +1 -1
  263. package/dist/Form/FormSwitch.js +19 -20
  264. package/dist/Form/FormSwitch.js.map +1 -1
  265. package/dist/Form/FormText.js +20 -29
  266. package/dist/Form/FormText.js.map +1 -1
  267. package/dist/Form/_FormText.scss +8 -8
  268. package/dist/Form/_index.scss +146 -168
  269. package/dist/Form/_mixins.scss +3 -216
  270. package/dist/Form/_variables.scss +267 -0
  271. package/dist/Form/useCheckboxSetValues.js +46 -23
  272. package/dist/Form/useCheckboxSetValues.js.map +1 -1
  273. package/dist/Hyperlink/index.js +32 -31
  274. package/dist/Hyperlink/index.js.map +1 -1
  275. package/dist/Hyperlink/index.scss +3 -3
  276. package/dist/Icon/_variables.scss +7 -0
  277. package/dist/Icon/index.js +38 -30
  278. package/dist/Icon/index.js.map +1 -1
  279. package/dist/Icon/index.scss +12 -10
  280. package/dist/IconButton/index.js +40 -36
  281. package/dist/IconButton/index.js.map +1 -1
  282. package/dist/IconButton/index.scss +74 -387
  283. package/dist/IconButtonToggle/index.js +16 -16
  284. package/dist/IconButtonToggle/index.js.map +1 -1
  285. package/dist/IconButtonToggle/index.scss +1 -1
  286. package/dist/Image/_variables.scss +13 -0
  287. package/dist/Image/index.scss +2 -53
  288. package/dist/Input/index.js +166 -0
  289. package/dist/Input/index.js.map +1 -0
  290. package/dist/InputSelect/index.js +105 -0
  291. package/dist/InputSelect/index.js.map +1 -0
  292. package/dist/InputText/index.js +45 -0
  293. package/dist/InputText/index.js.map +1 -0
  294. package/dist/Layout/index.js +33 -29
  295. package/dist/Layout/index.js.map +1 -1
  296. package/dist/ListBox/index.js +148 -0
  297. package/dist/ListBox/index.js.map +1 -0
  298. package/dist/ListBoxOption/index.js +94 -0
  299. package/dist/ListBoxOption/index.js.map +1 -0
  300. package/dist/MailtoLink/index.js +37 -34
  301. package/dist/MailtoLink/index.js.map +1 -1
  302. package/dist/Menu/MenuItem.js +13 -14
  303. package/dist/Menu/MenuItem.js.map +1 -1
  304. package/dist/Menu/SelectMenu.js +68 -44
  305. package/dist/Menu/SelectMenu.js.map +1 -1
  306. package/dist/Menu/_variables.scss +24 -0
  307. package/dist/Menu/index.js +10 -11
  308. package/dist/Menu/index.js.map +1 -1
  309. package/dist/Menu/index.scss +27 -25
  310. package/dist/Modal/AlertModal.js +5 -7
  311. package/dist/Modal/AlertModal.js.map +1 -1
  312. package/dist/Modal/FullscreenModal.js +6 -8
  313. package/dist/Modal/FullscreenModal.js.map +1 -1
  314. package/dist/Modal/MarketingModal.js +8 -10
  315. package/dist/Modal/MarketingModal.js.map +1 -1
  316. package/dist/Modal/ModalCloseButton.js +13 -15
  317. package/dist/Modal/ModalCloseButton.js.map +1 -1
  318. package/dist/Modal/ModalContext.js +13 -13
  319. package/dist/Modal/ModalContext.js.map +1 -1
  320. package/dist/Modal/ModalDialog.js +25 -23
  321. package/dist/Modal/ModalDialog.js.map +1 -1
  322. package/dist/Modal/ModalDialogBody.js +22 -11
  323. package/dist/Modal/ModalDialogBody.js.map +1 -1
  324. package/dist/Modal/ModalDialogFooter.js +6 -7
  325. package/dist/Modal/ModalDialogFooter.js.map +1 -1
  326. package/dist/Modal/ModalDialogHeader.js +6 -7
  327. package/dist/Modal/ModalDialogHeader.js.map +1 -1
  328. package/dist/Modal/ModalDialogHero.js +6 -7
  329. package/dist/Modal/ModalDialogHero.js.map +1 -1
  330. package/dist/Modal/ModalDialogHeroBackground.js +8 -9
  331. package/dist/Modal/ModalDialogHeroBackground.js.map +1 -1
  332. package/dist/Modal/ModalDialogHeroContent.js +6 -7
  333. package/dist/Modal/ModalDialogHeroContent.js.map +1 -1
  334. package/dist/Modal/ModalDialogTitle.js +6 -7
  335. package/dist/Modal/ModalDialogTitle.js.map +1 -1
  336. package/dist/Modal/ModalLayer.js +11 -17
  337. package/dist/Modal/ModalLayer.js.map +1 -1
  338. package/dist/Modal/ModalPopup.js +17 -17
  339. package/dist/Modal/ModalPopup.js.map +1 -1
  340. package/dist/Modal/PopperElement.js +25 -18
  341. package/dist/Modal/PopperElement.js.map +1 -1
  342. package/dist/Modal/Portal.js +40 -18
  343. package/dist/Modal/Portal.js.map +1 -1
  344. package/dist/Modal/StandardModal.js +6 -8
  345. package/dist/Modal/StandardModal.js.map +1 -1
  346. package/dist/Modal/_ModalDialog.scss +48 -50
  347. package/dist/Modal/_variables.scss +50 -0
  348. package/dist/Modal/index.js +293 -0
  349. package/dist/Modal/index.js.map +1 -0
  350. package/dist/Modal/index.scss +73 -6
  351. package/dist/Nav/_mixins.scss +4 -4
  352. package/dist/Nav/_variables.scss +58 -0
  353. package/dist/Nav/index.js +3 -2
  354. package/dist/Nav/index.js.map +1 -1
  355. package/dist/Nav/index.scss +66 -70
  356. package/dist/Navbar/_variables.scss +40 -0
  357. package/dist/Navbar/index.js +7 -6
  358. package/dist/Navbar/index.js.map +1 -1
  359. package/dist/Navbar/index.scss +2 -276
  360. package/dist/OverflowScroll/OverflowScroll.js +45 -37
  361. package/dist/OverflowScroll/OverflowScroll.js.map +1 -1
  362. package/dist/OverflowScroll/OverflowScrollContext.js +1 -1
  363. package/dist/OverflowScroll/OverflowScrollContext.js.map +1 -1
  364. package/dist/OverflowScroll/OverflowScrollItems.js +2 -4
  365. package/dist/OverflowScroll/OverflowScrollItems.js.map +1 -1
  366. package/dist/OverflowScroll/_variables.scss +5 -0
  367. package/dist/OverflowScroll/data/useOverflowScrollElementAttributes.js +3 -3
  368. package/dist/OverflowScroll/index.scss +1 -0
  369. package/dist/Overlay/index.js +6 -5
  370. package/dist/Overlay/index.js.map +1 -1
  371. package/dist/PageBanner/index.js +11 -13
  372. package/dist/PageBanner/index.js.map +1 -1
  373. package/dist/PageBanner/index.scss +21 -17
  374. package/dist/Pagination/DefaultPagination.js +34 -0
  375. package/dist/Pagination/DefaultPagination.js.map +1 -0
  376. package/dist/Pagination/MinimalPagination.js +8 -0
  377. package/dist/Pagination/MinimalPagination.js.map +1 -0
  378. package/dist/Pagination/PaginationContext.js +200 -0
  379. package/dist/Pagination/PaginationContext.js.map +1 -0
  380. package/dist/Pagination/ReducedPagination.js +8 -0
  381. package/dist/Pagination/ReducedPagination.js.map +1 -0
  382. package/dist/Pagination/_variables.scss +19 -0
  383. package/dist/Pagination/constants.js +15 -1
  384. package/dist/Pagination/getPaginationRange.js +4 -0
  385. package/dist/Pagination/index.js +44 -358
  386. package/dist/Pagination/index.js.map +1 -1
  387. package/dist/Pagination/index.scss +120 -226
  388. package/dist/Pagination/subcomponents/Ellipsis.js +11 -0
  389. package/dist/Pagination/subcomponents/Ellipsis.js.map +1 -0
  390. package/dist/Pagination/subcomponents/NextPageButton.js +57 -0
  391. package/dist/Pagination/subcomponents/NextPageButton.js.map +1 -0
  392. package/dist/Pagination/subcomponents/PageButton.js +31 -0
  393. package/dist/Pagination/subcomponents/PageButton.js.map +1 -0
  394. package/dist/Pagination/subcomponents/PageOfCountButton.js +17 -0
  395. package/dist/Pagination/subcomponents/PageOfCountButton.js.map +1 -0
  396. package/dist/Pagination/subcomponents/PaginationDropdown.js +34 -0
  397. package/dist/Pagination/subcomponents/PaginationDropdown.js.map +1 -0
  398. package/dist/Pagination/subcomponents/PreviousPageButton.js +57 -0
  399. package/dist/Pagination/subcomponents/PreviousPageButton.js.map +1 -0
  400. package/dist/Pagination/subcomponents/ScreenReaderText.js +13 -0
  401. package/dist/Pagination/subcomponents/ScreenReaderText.js.map +1 -0
  402. package/dist/Pagination/subcomponents/index.js +7 -0
  403. package/dist/Popover/_variables.scss +36 -0
  404. package/dist/Popover/index.js +18 -21
  405. package/dist/Popover/index.js.map +1 -1
  406. package/dist/Popover/index.scss +10 -9
  407. package/dist/ProductTour/Checkpoint.js +39 -30
  408. package/dist/ProductTour/Checkpoint.js.map +1 -1
  409. package/dist/ProductTour/Checkpoint.scss +43 -71
  410. package/dist/ProductTour/CheckpointActionRow.js +18 -16
  411. package/dist/ProductTour/CheckpointActionRow.js.map +1 -1
  412. package/dist/ProductTour/CheckpointBody.js +2 -4
  413. package/dist/ProductTour/CheckpointBody.js.map +1 -1
  414. package/dist/ProductTour/CheckpointBreadcrumbs.js +16 -16
  415. package/dist/ProductTour/CheckpointBreadcrumbs.js.map +1 -1
  416. package/dist/ProductTour/CheckpointTitle.js +2 -4
  417. package/dist/ProductTour/CheckpointTitle.js.map +1 -1
  418. package/dist/ProductTour/_variables.scss +15 -0
  419. package/dist/ProductTour/index.js +66 -47
  420. package/dist/ProductTour/index.js.map +1 -1
  421. package/dist/ProductTour/messages.js +16 -0
  422. package/dist/ProgressBar/_variables.scss +23 -0
  423. package/dist/ProgressBar/index.js +37 -35
  424. package/dist/ProgressBar/index.js.map +1 -1
  425. package/dist/ProgressBar/index.scss +36 -28
  426. package/dist/RadioButtonGroup/index.js +188 -0
  427. package/dist/RadioButtonGroup/index.js.map +1 -0
  428. package/dist/Scrollable/index.js +30 -15
  429. package/dist/Scrollable/index.js.map +1 -1
  430. package/dist/Scrollable/index.scss +2 -2
  431. package/dist/SearchField/SearchFieldAdvanced.js +68 -58
  432. package/dist/SearchField/SearchFieldAdvanced.js.map +1 -1
  433. package/dist/SearchField/SearchFieldClearButton.js +19 -20
  434. package/dist/SearchField/SearchFieldClearButton.js.map +1 -1
  435. package/dist/SearchField/SearchFieldInput.js +10 -11
  436. package/dist/SearchField/SearchFieldInput.js.map +1 -1
  437. package/dist/SearchField/SearchFieldLabel.js +8 -11
  438. package/dist/SearchField/SearchFieldLabel.js.map +1 -1
  439. package/dist/SearchField/SearchFieldSubmitButton.js +23 -23
  440. package/dist/SearchField/SearchFieldSubmitButton.js.map +1 -1
  441. package/dist/SearchField/_variables.scss +14 -0
  442. package/dist/SearchField/index.js +26 -32
  443. package/dist/SearchField/index.js.map +1 -1
  444. package/dist/SearchField/index.scss +23 -31
  445. package/dist/SelectableBox/SelectableBoxSet.js +25 -26
  446. package/dist/SelectableBox/SelectableBoxSet.js.map +1 -1
  447. package/dist/SelectableBox/_variables.scss +5 -0
  448. package/dist/SelectableBox/index.js +42 -38
  449. package/dist/SelectableBox/index.js.map +1 -1
  450. package/dist/SelectableBox/index.scss +13 -11
  451. package/dist/Sheet/SheetContainer.js +38 -16
  452. package/dist/Sheet/SheetContainer.js.map +1 -1
  453. package/dist/Sheet/index.js +65 -43
  454. package/dist/Sheet/index.js.map +1 -1
  455. package/dist/Sheet/index.scss +10 -10
  456. package/dist/Spinner/_variables.scss +9 -0
  457. package/dist/Spinner/index.js +8 -9
  458. package/dist/Spinner/index.js.map +1 -1
  459. package/dist/Spinner/index.scss +2 -57
  460. package/dist/Stack/_variables.scss +1 -0
  461. package/dist/Stack/index.js +9 -11
  462. package/dist/Stack/index.js.map +1 -1
  463. package/dist/Stack/index.scss +3 -1
  464. package/dist/StatefulButton/index.js +15 -17
  465. package/dist/StatefulButton/index.js.map +1 -1
  466. package/dist/StatusAlert/index.js +168 -0
  467. package/dist/StatusAlert/index.js.map +1 -0
  468. package/dist/Stepper/Stepper.js +2 -4
  469. package/dist/Stepper/Stepper.js.map +1 -1
  470. package/dist/Stepper/StepperActionRow.js +7 -10
  471. package/dist/Stepper/StepperActionRow.js.map +1 -1
  472. package/dist/Stepper/StepperContext.js +64 -32
  473. package/dist/Stepper/StepperContext.js.map +1 -1
  474. package/dist/Stepper/StepperHeader.js +23 -30
  475. package/dist/Stepper/StepperHeader.js.map +1 -1
  476. package/dist/Stepper/StepperHeaderStep.js +14 -17
  477. package/dist/Stepper/StepperHeaderStep.js.map +1 -1
  478. package/dist/Stepper/StepperStep.js +23 -24
  479. package/dist/Stepper/StepperStep.js.map +1 -1
  480. package/dist/Stepper/_variables.scss +18 -0
  481. package/dist/Stepper/index.scss +20 -19
  482. package/dist/Sticky/_variables.scss +3 -0
  483. package/dist/Sticky/index.js +30 -22
  484. package/dist/Sticky/index.js.map +1 -1
  485. package/dist/Sticky/index.scss +6 -4
  486. package/dist/Table/_variables.scss +34 -0
  487. package/dist/Table/index.js +267 -0
  488. package/dist/Table/index.js.map +1 -0
  489. package/dist/Table/index.scss +12 -0
  490. package/dist/Tabs/_variables.scss +24 -0
  491. package/dist/Tabs/deprecated/Tabs.scss +3 -0
  492. package/dist/Tabs/deprecated/index.js +123 -0
  493. package/dist/Tabs/deprecated/index.js.map +1 -0
  494. package/dist/Tabs/index.js +74 -56
  495. package/dist/Tabs/index.js.map +1 -1
  496. package/dist/Tabs/index.scss +25 -26
  497. package/dist/TextArea/index.js +44 -0
  498. package/dist/TextArea/index.js.map +1 -0
  499. package/dist/Toast/ToastContainer.js +38 -16
  500. package/dist/Toast/ToastContainer.js.map +1 -1
  501. package/dist/Toast/ToastContainer.scss +11 -9
  502. package/dist/Toast/_variables.scss +19 -0
  503. package/dist/Toast/index.js +33 -18
  504. package/dist/Toast/index.js.map +1 -1
  505. package/dist/Toast/index.scss +10 -9
  506. package/dist/Tooltip/_variables.scss +21 -0
  507. package/dist/Tooltip/index.js +8 -9
  508. package/dist/Tooltip/index.js.map +1 -1
  509. package/dist/Tooltip/index.scss +10 -136
  510. package/dist/TransitionReplace/DemoTransitionReplace.js +12 -3
  511. package/dist/TransitionReplace/DemoTransitionReplace.js.map +1 -1
  512. package/dist/TransitionReplace/index.js +136 -100
  513. package/dist/TransitionReplace/index.js.map +1 -1
  514. package/dist/Truncate/index.js +30 -24
  515. package/dist/Truncate/index.js.map +1 -1
  516. package/dist/ValidationFormGroup/index.js +106 -0
  517. package/dist/ValidationFormGroup/index.js.map +1 -0
  518. package/dist/ValidationMessage/index.js +76 -51
  519. package/dist/ValidationMessage/index.js.map +1 -1
  520. package/dist/ValidationMessage/index.scss +1 -1
  521. package/dist/asInput/index.js +251 -202
  522. package/dist/asInput/index.js.map +1 -1
  523. package/dist/hooks/useArrowKeyNavigation.js +46 -43
  524. package/dist/hooks/useArrowKeyNavigation.js.map +1 -1
  525. package/dist/hooks/useIndexOfLastVisibleChild.js +50 -41
  526. package/dist/hooks/useIndexOfLastVisibleChild.js.map +1 -1
  527. package/dist/hooks/useIsVisible.js +20 -13
  528. package/dist/hooks/useIsVisible.js.map +1 -1
  529. package/dist/hooks/useToggle.js +18 -11
  530. package/dist/hooks/useToggle.js.map +1 -1
  531. package/dist/hooks/useWindowSize.js +17 -6
  532. package/dist/hooks/useWindowSize.js.map +1 -1
  533. package/dist/i18n/messages/ar.json +2 -1
  534. package/dist/i18n/messages/ca.json +2 -1
  535. package/dist/i18n/messages/es_419.json +2 -1
  536. package/dist/i18n/messages/es_AR.json +2 -1
  537. package/dist/i18n/messages/es_ES.json +2 -1
  538. package/dist/i18n/messages/fr.json +2 -1
  539. package/dist/i18n/messages/he.json +2 -1
  540. package/dist/i18n/messages/id.json +2 -1
  541. package/dist/i18n/messages/it_IT.json +2 -1
  542. package/dist/i18n/messages/ko_KR.json +2 -1
  543. package/dist/i18n/messages/pl.json +2 -1
  544. package/dist/i18n/messages/pt_BR.json +2 -1
  545. package/dist/i18n/messages/pt_PT.json +2 -1
  546. package/dist/i18n/messages/ru.json +2 -1
  547. package/dist/i18n/messages/th.json +2 -1
  548. package/dist/i18n/messages/tr_TR.json +2 -1
  549. package/dist/i18n/messages/uk.json +2 -1
  550. package/dist/i18n/messages/zh_CN.json +2 -1
  551. package/dist/index.js +14 -0
  552. package/dist/index.scss +4 -0
  553. package/dist/paragon.css +45 -0
  554. package/dist/utils/breakpoints.js +1 -1
  555. package/dist/utils/propTypes/utils.js +17 -2
  556. package/dist/withDeprecatedProps.js +79 -58
  557. package/dist/withDeprecatedProps.js.map +1 -1
  558. package/icons/es5/RightSidebarFilled.js +15 -0
  559. package/icons/es5/RightSidebarOutlined.js +15 -0
  560. package/icons/es5/index.js +2 -0
  561. package/icons/jsx/RightSidebarFilled.jsx +19 -0
  562. package/icons/jsx/RightSidebarOutlined.jsx +19 -0
  563. package/icons/jsx/index.jsx +2 -0
  564. package/icons/svg/right_sidebar_filled.svg +3 -0
  565. package/icons/svg/right_sidebar_outlined.svg +3 -0
  566. package/lib/help.js +23 -36
  567. package/lib/migrate-to-openedx-scope.js +62 -0
  568. package/package.json +22 -35
  569. package/{styles/scss → scss}/core/_functions.scss +1 -1
  570. package/scss/core/_grid.scss +21 -0
  571. package/{styles/scss → scss}/core/_utilities.scss +11 -17
  572. package/scss/core/_variables.scss +875 -0
  573. package/scss/core/core.scss +21 -0
  574. package/{styles/scss → scss}/core/utilities-only.scss +0 -1
  575. package/src/ActionRow/_index.scss +4 -2
  576. package/src/ActionRow/_variables.scss +2 -0
  577. package/src/Alert/_variables.scss +24 -0
  578. package/src/Alert/index.scss +32 -41
  579. package/src/Annotation/_variables.scss +18 -0
  580. package/src/Annotation/index.scss +103 -130
  581. package/src/Avatar/_variables.scss +10 -0
  582. package/src/Avatar/index.scss +20 -18
  583. package/src/AvatarButton/_variables.scss +3 -0
  584. package/src/AvatarButton/index.scss +5 -3
  585. package/src/Badge/_variables.scss +16 -0
  586. package/src/Badge/index.scss +2 -112
  587. package/src/Breadcrumb/_variables.scss +27 -0
  588. package/src/Breadcrumb/index.scss +16 -14
  589. package/src/Bubble/_variables.scss +8 -0
  590. package/src/Bubble/index.scss +12 -25
  591. package/src/Button/README.md +178 -68
  592. package/src/Button/_variables.scss +52 -0
  593. package/src/Button/deprecated/Button.test.jsx +34 -0
  594. package/src/Button/deprecated/index.jsx +145 -0
  595. package/src/Button/index.jsx +7 -4
  596. package/src/Button/index.scss +370 -855
  597. package/src/Card/_variables.scss +55 -0
  598. package/src/Card/index.scss +79 -78
  599. package/src/Carousel/_variables.scss +27 -0
  600. package/src/Carousel/index.scss +2 -168
  601. package/src/CheckBox/CheckBox.test.jsx +65 -0
  602. package/src/CheckBox/README.md +93 -0
  603. package/src/CheckBox/index.jsx +80 -0
  604. package/src/CheckBoxGroup/CheckBoxGroup.test.jsx +33 -0
  605. package/src/CheckBoxGroup/README.md +35 -0
  606. package/src/CheckBoxGroup/index.jsx +19 -0
  607. package/src/Chip/Chip.test.jsx +82 -16
  608. package/src/Chip/ChipIcon.tsx +54 -0
  609. package/src/Chip/README.md +116 -11
  610. package/src/Chip/__snapshots__/Chip.test.jsx.snap +84 -90
  611. package/src/Chip/_variables.scss +28 -0
  612. package/src/Chip/constants.js +5 -0
  613. package/src/Chip/index.scss +102 -61
  614. package/src/Chip/index.tsx +79 -46
  615. package/src/Chip/mixins.scss +42 -0
  616. package/src/ChipCarousel/_variables.scss +3 -0
  617. package/src/ChipCarousel/index.scss +4 -1
  618. package/src/CloseButton/_variables.scss +6 -0
  619. package/src/CloseButton/index.scss +2 -31
  620. package/src/Code/_variables.scss +17 -0
  621. package/src/Code/index.scss +2 -47
  622. package/src/Collapsible/_variables.scss +12 -0
  623. package/src/Collapsible/index.scss +15 -15
  624. package/src/ColorPicker/ColorPicker.test.jsx +24 -2
  625. package/src/ColorPicker/_variables.scss +2 -0
  626. package/src/ColorPicker/index.jsx +56 -16
  627. package/src/ColorPicker/index.scss +11 -9
  628. package/src/Container/_variables.scss +5 -0
  629. package/src/Container/index.jsx +4 -0
  630. package/src/DataTable/CollapsibleButtonGroup.jsx +2 -2
  631. package/src/DataTable/README.md +3 -3
  632. package/src/DataTable/TablePagination.jsx +7 -2
  633. package/src/DataTable/TablePaginationMinimal.jsx +5 -0
  634. package/src/DataTable/_variables.scss +11 -0
  635. package/src/DataTable/filters/TextFilter.jsx +4 -5
  636. package/src/DataTable/index.jsx +2 -1
  637. package/src/DataTable/index.scss +50 -48
  638. package/src/DataTable/selection/BaseSelectionStatus.jsx +2 -2
  639. package/src/DataTable/tablefilters.mdx +3 -3
  640. package/src/DataTable/tests/DataTable.test.jsx +31 -0
  641. package/src/DataTable/tests/TablePagination.test.jsx +6 -6
  642. package/src/Dropdown/README.md +93 -0
  643. package/src/Dropdown/_variables.scss +33 -0
  644. package/src/Dropdown/deprecated/Dropdown.test.jsx +238 -0
  645. package/src/Dropdown/deprecated/DropdownButton.jsx +52 -0
  646. package/src/Dropdown/deprecated/DropdownItem.jsx +34 -0
  647. package/src/Dropdown/deprecated/DropdownMenu.jsx +50 -0
  648. package/src/Dropdown/deprecated/__snapshots__/Dropdown.test.jsx.snap +229 -0
  649. package/src/Dropdown/deprecated/index.jsx +222 -0
  650. package/src/Dropdown/index.jsx +6 -0
  651. package/src/Dropdown/index.scss +12 -11
  652. package/src/Dropzone/_variables.scss +9 -0
  653. package/src/Dropzone/index.jsx +2 -3
  654. package/src/Dropzone/index.scss +14 -12
  655. package/src/Fieldset/Fieldset.test.jsx +101 -0
  656. package/src/Fieldset/README.md +146 -0
  657. package/src/Fieldset/index.jsx +107 -0
  658. package/src/Fieldset/index.scss +12 -0
  659. package/src/Form/FormAutosuggest.jsx +334 -250
  660. package/src/Form/FormSwitch.jsx +3 -0
  661. package/src/Form/_FormText.scss +8 -8
  662. package/src/Form/_index.scss +146 -168
  663. package/src/Form/_mixins.scss +3 -216
  664. package/src/Form/_variables.scss +267 -0
  665. package/src/Form/form-autosuggest.mdx +136 -71
  666. package/src/Form/tests/FormAutosuggest.test.jsx +84 -16
  667. package/src/Hyperlink/index.jsx +7 -6
  668. package/src/Hyperlink/index.scss +3 -3
  669. package/src/Icon/README.md +3 -3
  670. package/src/Icon/_variables.scss +7 -0
  671. package/src/Icon/index.jsx +18 -11
  672. package/src/Icon/index.scss +12 -10
  673. package/src/IconButton/README.md +15 -1
  674. package/src/IconButton/__snapshots__/IconButton.test.jsx.snap +28 -5
  675. package/src/IconButton/index.jsx +15 -8
  676. package/src/IconButton/index.scss +74 -387
  677. package/src/IconButtonToggle/index.scss +1 -1
  678. package/src/Image/_variables.scss +13 -0
  679. package/src/Image/index.scss +2 -53
  680. package/src/Input/README.md +74 -0
  681. package/src/Input/__snapshots__/input.test.jsx.snap +53 -0
  682. package/src/Input/index.jsx +151 -0
  683. package/src/Input/input.test.jsx +85 -0
  684. package/src/InputSelect/README.md +136 -0
  685. package/src/InputSelect/index.jsx +92 -0
  686. package/src/InputText/InputText.test.jsx +74 -0
  687. package/src/InputText/README.md +293 -0
  688. package/src/InputText/index.jsx +49 -0
  689. package/src/Layout/index.jsx +1 -4
  690. package/src/ListBox/ListBox.test.jsx +161 -0
  691. package/src/ListBox/README.md +185 -0
  692. package/src/ListBox/index.jsx +115 -0
  693. package/src/ListBoxOption/ListBoxOption.test.jsx +154 -0
  694. package/src/ListBoxOption/index.jsx +78 -0
  695. package/src/Menu/MenuItem.jsx +2 -2
  696. package/src/Menu/_variables.scss +24 -0
  697. package/src/Menu/index.scss +27 -25
  698. package/src/Modal/ModalDialog.jsx +3 -0
  699. package/src/Modal/README.md +148 -0
  700. package/src/Modal/_ModalDialog.scss +48 -50
  701. package/src/Modal/_variables.scss +50 -0
  702. package/src/Modal/index.jsx +319 -0
  703. package/src/Modal/index.scss +73 -6
  704. package/src/Modal/tests/Modal.test.jsx +261 -0
  705. package/src/Nav/_mixins.scss +4 -4
  706. package/src/Nav/_variables.scss +58 -0
  707. package/src/Nav/index.scss +66 -70
  708. package/src/Navbar/_variables.scss +40 -0
  709. package/src/Navbar/index.scss +2 -276
  710. package/src/OverflowScroll/_variables.scss +5 -0
  711. package/src/OverflowScroll/data/useOverflowScrollElementAttributes.js +3 -3
  712. package/src/OverflowScroll/index.scss +1 -0
  713. package/src/Overlay/README.md +1 -1
  714. package/src/Overlay/index.jsx +3 -2
  715. package/src/PageBanner/index.scss +21 -17
  716. package/src/Pagination/DefaultPagination.jsx +43 -0
  717. package/src/Pagination/MinimalPagination.jsx +11 -0
  718. package/src/Pagination/Pagination.test.jsx +201 -156
  719. package/src/Pagination/PaginationContext.jsx +191 -0
  720. package/src/Pagination/README.md +86 -22
  721. package/src/Pagination/ReducedPagination.jsx +12 -0
  722. package/src/Pagination/__snapshots__/Pagination.test.jsx.snap +301 -0
  723. package/src/Pagination/_variables.scss +19 -0
  724. package/src/Pagination/constants.js +15 -1
  725. package/src/Pagination/getPaginationRange.js +4 -0
  726. package/src/Pagination/index.jsx +48 -420
  727. package/src/Pagination/index.scss +120 -226
  728. package/src/Pagination/subcomponents/Ellipsis.jsx +13 -0
  729. package/src/Pagination/subcomponents/NextPageButton.jsx +64 -0
  730. package/src/Pagination/subcomponents/PageButton.jsx +33 -0
  731. package/src/Pagination/subcomponents/PageOfCountButton.jsx +25 -0
  732. package/src/Pagination/subcomponents/PaginationDropdown.jsx +37 -0
  733. package/src/Pagination/subcomponents/PreviousPageButton.jsx +64 -0
  734. package/src/Pagination/subcomponents/ScreenReaderText.jsx +17 -0
  735. package/src/Pagination/subcomponents/index.js +7 -0
  736. package/src/Popover/README.md +0 -1
  737. package/src/Popover/_variables.scss +36 -0
  738. package/src/Popover/index.jsx +11 -11
  739. package/src/Popover/index.scss +10 -9
  740. package/src/ProductTour/Checkpoint.jsx +9 -6
  741. package/src/ProductTour/Checkpoint.scss +43 -71
  742. package/src/ProductTour/_variables.scss +15 -0
  743. package/src/ProductTour/messages.js +16 -0
  744. package/src/ProgressBar/_variables.scss +23 -0
  745. package/src/ProgressBar/index.scss +36 -28
  746. package/src/RadioButtonGroup/README.md +50 -0
  747. package/src/RadioButtonGroup/RadioButtonGroup.test.jsx +127 -0
  748. package/src/RadioButtonGroup/index.jsx +185 -0
  749. package/src/Scrollable/index.scss +2 -2
  750. package/src/SearchField/SearchField.test.jsx +1 -1
  751. package/src/SearchField/SearchFieldAdvanced.jsx +14 -11
  752. package/src/SearchField/SearchFieldClearButton.jsx +13 -5
  753. package/src/SearchField/SearchFieldInput.jsx +2 -2
  754. package/src/SearchField/SearchFieldLabel.jsx +3 -3
  755. package/src/SearchField/SearchFieldSubmitButton.jsx +10 -8
  756. package/src/SearchField/__snapshots__/SearchField.test.jsx.snap +29 -33
  757. package/src/SearchField/_variables.scss +14 -0
  758. package/src/SearchField/index.jsx +4 -7
  759. package/src/SearchField/index.scss +23 -31
  760. package/src/SelectableBox/_variables.scss +5 -0
  761. package/src/SelectableBox/index.scss +13 -11
  762. package/src/SelectableBox/tests/SelectableBoxSet.test.jsx +1 -1
  763. package/src/Sheet/index.scss +10 -10
  764. package/src/Spinner/_variables.scss +9 -0
  765. package/src/Spinner/index.scss +2 -57
  766. package/src/Stack/_variables.scss +1 -0
  767. package/src/Stack/index.scss +3 -1
  768. package/src/StatusAlert/README.md +149 -0
  769. package/src/StatusAlert/StatusAlert.test.jsx +150 -0
  770. package/src/StatusAlert/index.jsx +144 -0
  771. package/src/Stepper/_variables.scss +18 -0
  772. package/src/Stepper/index.scss +20 -19
  773. package/src/Sticky/_variables.scss +3 -0
  774. package/src/Sticky/index.scss +6 -4
  775. package/src/Table/README.md +506 -0
  776. package/src/Table/Table.test.jsx +367 -0
  777. package/src/Table/_variables.scss +34 -0
  778. package/src/Table/index.jsx +264 -0
  779. package/src/Table/index.scss +12 -0
  780. package/src/Tabs/README.md +3 -1
  781. package/src/Tabs/_variables.scss +24 -0
  782. package/src/Tabs/deprecated/Tabs.scss +3 -0
  783. package/src/Tabs/deprecated/Tabs.test.jsx +50 -0
  784. package/src/Tabs/deprecated/index.jsx +117 -0
  785. package/src/Tabs/index.jsx +22 -13
  786. package/src/Tabs/index.scss +25 -26
  787. package/src/TextArea/README.md +63 -0
  788. package/src/TextArea/index.jsx +48 -0
  789. package/src/Toast/ToastContainer.scss +11 -9
  790. package/src/Toast/_variables.scss +19 -0
  791. package/src/Toast/index.scss +10 -9
  792. package/src/Tooltip/_variables.scss +21 -0
  793. package/src/Tooltip/index.scss +10 -136
  794. package/src/TransitionReplace/README.md +4 -4
  795. package/src/ValidationFormGroup/README.md +116 -0
  796. package/src/ValidationFormGroup/ValidationFormGroup.test.jsx +146 -0
  797. package/src/ValidationFormGroup/__snapshots__/ValidationFormGroup.test.jsx.snap +161 -0
  798. package/src/ValidationFormGroup/index.jsx +114 -0
  799. package/src/ValidationMessage/index.scss +1 -1
  800. package/src/hooks/tests/useIndexOfLastVisibleChild.test.jsx +3 -3
  801. package/src/hooks/useIndexOfLastVisibleChild.jsx +36 -38
  802. package/src/hooks/useIndexOfLastVisibleChild.mdx +3 -3
  803. package/src/i18n/messages/ar.json +2 -1
  804. package/src/i18n/messages/ca.json +2 -1
  805. package/src/i18n/messages/es_419.json +2 -1
  806. package/src/i18n/messages/es_AR.json +2 -1
  807. package/src/i18n/messages/es_ES.json +2 -1
  808. package/src/i18n/messages/fr.json +2 -1
  809. package/src/i18n/messages/he.json +2 -1
  810. package/src/i18n/messages/id.json +2 -1
  811. package/src/i18n/messages/it_IT.json +2 -1
  812. package/src/i18n/messages/ko_KR.json +2 -1
  813. package/src/i18n/messages/pl.json +2 -1
  814. package/src/i18n/messages/pt_BR.json +2 -1
  815. package/src/i18n/messages/pt_PT.json +2 -1
  816. package/src/i18n/messages/ru.json +2 -1
  817. package/src/i18n/messages/th.json +2 -1
  818. package/src/i18n/messages/tr_TR.json +2 -1
  819. package/src/i18n/messages/uk.json +2 -1
  820. package/src/i18n/messages/zh_CN.json +2 -1
  821. package/src/index.js +14 -0
  822. package/src/index.scss +4 -0
  823. package/src/utils/breakpoints.js +1 -1
  824. package/src/utils/propTypes/utils.js +17 -2
  825. package/dist/Annotation/_mixins.scss +0 -104
  826. package/dist/Button/_mixins.scss +0 -14
  827. package/dist/Button/button-group.scss +0 -126
  828. package/dist/Card/card-bootstrap.scss +0 -168
  829. package/dist/Dropdown/dropdown-bootstrap.scss +0 -181
  830. package/dist/Form/_bootstrap-custom-forms.scss +0 -551
  831. package/dist/Form/_bootstrap-forms.scss +0 -381
  832. package/dist/Form/_input-group.scss +0 -188
  833. package/dist/IconButton/_mixins.scss +0 -4
  834. package/dist/Pagination/pagination-bootstrap.scss +0 -83
  835. package/dist/Popover/popover-bootstrap.scss +0 -198
  836. package/dist/ProgressBar/_mixins.scss +0 -22
  837. package/dist/ProgressBar/bootstrap-progress.scss +0 -49
  838. package/dist/Toast/bootstrap-toast.scss +0 -46
  839. package/dist/core.css +0 -16776
  840. package/dist/core.css.map +0 -1
  841. package/dist/core.min.css +0 -2
  842. package/dist/light.css +0 -4090
  843. package/dist/light.css.map +0 -1
  844. package/dist/light.min.css +0 -2
  845. package/dist/theme-urls.json +0 -21
  846. package/lib/build-scss.js +0 -188
  847. package/lib/build-tokens.js +0 -119
  848. package/lib/replace-variables.js +0 -38
  849. package/lib/utils.js +0 -9
  850. package/src/Annotation/_mixins.scss +0 -104
  851. package/src/Button/_mixins.scss +0 -14
  852. package/src/Button/button-group.scss +0 -126
  853. package/src/Card/card-bootstrap.scss +0 -168
  854. package/src/Dropdown/dropdown-bootstrap.scss +0 -181
  855. package/src/Form/_bootstrap-custom-forms.scss +0 -551
  856. package/src/Form/_bootstrap-forms.scss +0 -381
  857. package/src/Form/_input-group.scss +0 -188
  858. package/src/IconButton/_mixins.scss +0 -4
  859. package/src/Pagination/pagination-bootstrap.scss +0 -83
  860. package/src/Popover/popover-bootstrap.scss +0 -198
  861. package/src/ProgressBar/_mixins.scss +0 -22
  862. package/src/ProgressBar/bootstrap-progress.scss +0 -49
  863. package/src/Toast/bootstrap-toast.scss +0 -46
  864. package/styles/css/core/custom-media-breakpoints.css +0 -17
  865. package/styles/css/core/index.css +0 -2
  866. package/styles/css/core/variables.css +0 -604
  867. package/styles/css/themes/light/index.css +0 -2
  868. package/styles/css/themes/light/utility-classes.css +0 -2454
  869. package/styles/css/themes/light/variables.css +0 -1636
  870. package/styles/scss/core/_grid.scss +0 -21
  871. package/styles/scss/core/_variables.scss +0 -869
  872. package/styles/scss/core/bootstrap-override/_functions.scss +0 -104
  873. package/styles/scss/core/bootstrap-override/_mixins.scss +0 -4
  874. package/styles/scss/core/bootstrap-override/_utilities.scss +0 -4
  875. package/styles/scss/core/bootstrap-override/bootstrap.scss +0 -2
  876. package/styles/scss/core/bootstrap-override/mixins/_grid-framework.scss +0 -80
  877. package/styles/scss/core/bootstrap-override/mixins/_grid.scss +0 -69
  878. package/styles/scss/core/bootstrap-override/mixins/_list-group.scss +0 -22
  879. package/styles/scss/core/bootstrap-override/utilities/_background.scss +0 -7
  880. package/styles/scss/core/bootstrap-override/utilities/_borders.scss +0 -67
  881. package/styles/scss/core/bootstrap-override/utilities/_spacing.scss +0 -70
  882. package/styles/scss/core/bootstrap-override/utilities/_text.scss +0 -68
  883. package/styles/scss/core/core.scss +0 -21
  884. package/tokens/README.md +0 -158
  885. package/tokens/css-utilities.js +0 -56
  886. package/tokens/map-scss-to-css.js +0 -24
  887. package/tokens/replace-variables.js +0 -32
  888. package/tokens/sass-helpers.js +0 -98
  889. package/tokens/src/core/alias/size.json +0 -15
  890. package/tokens/src/core/components/ActionRow.json +0 -10
  891. package/tokens/src/core/components/Alert.json +0 -30
  892. package/tokens/src/core/components/Annotation.json +0 -25
  893. package/tokens/src/core/components/Avatar.json +0 -17
  894. package/tokens/src/core/components/AvatarButton.json +0 -11
  895. package/tokens/src/core/components/Badge.json +0 -33
  896. package/tokens/src/core/components/Breadcrumb.json +0 -37
  897. package/tokens/src/core/components/Bubble.json +0 -10
  898. package/tokens/src/core/components/Button/core.json +0 -101
  899. package/tokens/src/core/components/Card.json +0 -91
  900. package/tokens/src/core/components/Carousel.json +0 -37
  901. package/tokens/src/core/components/Chip.json +0 -19
  902. package/tokens/src/core/components/ChipCarousel.json +0 -9
  903. package/tokens/src/core/components/CloseButton.json +0 -14
  904. package/tokens/src/core/components/Code.json +0 -34
  905. package/tokens/src/core/components/Collapsible.json +0 -29
  906. package/tokens/src/core/components/ColorPicker.json +0 -8
  907. package/tokens/src/core/components/Container.json +0 -13
  908. package/tokens/src/core/components/DataTable.json +0 -27
  909. package/tokens/src/core/components/Dropdown.json +0 -67
  910. package/tokens/src/core/components/Dropzone.json +0 -21
  911. package/tokens/src/core/components/Form/other.json +0 -14
  912. package/tokens/src/core/components/Form/size.json +0 -233
  913. package/tokens/src/core/components/Form/spacing.json +0 -155
  914. package/tokens/src/core/components/Form/transition.json +0 -16
  915. package/tokens/src/core/components/Form/typography.json +0 -122
  916. package/tokens/src/core/components/Icon.json +0 -11
  917. package/tokens/src/core/components/IconButton.json +0 -15
  918. package/tokens/src/core/components/Image.json +0 -28
  919. package/tokens/src/core/components/Menu.json +0 -48
  920. package/tokens/src/core/components/Modal.json +0 -47
  921. package/tokens/src/core/components/Nav.json +0 -55
  922. package/tokens/src/core/components/Navbar.json +0 -70
  923. package/tokens/src/core/components/Pagination.json +0 -70
  924. package/tokens/src/core/components/Popover.json +0 -48
  925. package/tokens/src/core/components/ProductTour.json +0 -37
  926. package/tokens/src/core/components/ProgressBar.json +0 -39
  927. package/tokens/src/core/components/SearchField.json +0 -23
  928. package/tokens/src/core/components/SelectableBox.json +0 -9
  929. package/tokens/src/core/components/Sheet.json +0 -10
  930. package/tokens/src/core/components/Spinner.json +0 -19
  931. package/tokens/src/core/components/Stack.json +0 -7
  932. package/tokens/src/core/components/Stepper.json +0 -42
  933. package/tokens/src/core/components/Sticky.json +0 -7
  934. package/tokens/src/core/components/Tab.json +0 -19
  935. package/tokens/src/core/components/Tabs.json +0 -19
  936. package/tokens/src/core/components/Toast.json +0 -30
  937. package/tokens/src/core/components/Tooltip.json +0 -33
  938. package/tokens/src/core/components/general/caret.json +0 -13
  939. package/tokens/src/core/components/general/headings.json +0 -16
  940. package/tokens/src/core/components/general/hr.json +0 -10
  941. package/tokens/src/core/components/general/input.json +0 -51
  942. package/tokens/src/core/components/general/link.json +0 -30
  943. package/tokens/src/core/components/general/list.json +0 -26
  944. package/tokens/src/core/components/general/text.json +0 -24
  945. package/tokens/src/core/global/breakpoints.json +0 -12
  946. package/tokens/src/core/global/display.json +0 -21
  947. package/tokens/src/core/global/elevation.json +0 -19
  948. package/tokens/src/core/global/other.json +0 -4
  949. package/tokens/src/core/global/spacing.json +0 -35
  950. package/tokens/src/core/global/transition.json +0 -14
  951. package/tokens/src/core/global/typography.json +0 -91
  952. package/tokens/src/core/utilities/color.json +0 -12
  953. package/tokens/src/themes/light/alias/color.json +0 -114
  954. package/tokens/src/themes/light/components/Alert.json +0 -47
  955. package/tokens/src/themes/light/components/Annotation.json +0 -29
  956. package/tokens/src/themes/light/components/Avatar.json +0 -7
  957. package/tokens/src/themes/light/components/Badge.json +0 -186
  958. package/tokens/src/themes/light/components/Breadcrumb.json +0 -14
  959. package/tokens/src/themes/light/components/Bubble.json +0 -18
  960. package/tokens/src/themes/light/components/Button/brand.json +0 -260
  961. package/tokens/src/themes/light/components/Button/core.json +0 -24
  962. package/tokens/src/themes/light/components/Button/danger.json +0 -247
  963. package/tokens/src/themes/light/components/Button/dark.json +0 -230
  964. package/tokens/src/themes/light/components/Button/info.json +0 -238
  965. package/tokens/src/themes/light/components/Button/light.json +0 -236
  966. package/tokens/src/themes/light/components/Button/primary.json +0 -250
  967. package/tokens/src/themes/light/components/Button/secondary.json +0 -278
  968. package/tokens/src/themes/light/components/Button/success.json +0 -253
  969. package/tokens/src/themes/light/components/Button/tertiary.json +0 -109
  970. package/tokens/src/themes/light/components/Button/warning.json +0 -276
  971. package/tokens/src/themes/light/components/Card.json +0 -40
  972. package/tokens/src/themes/light/components/Carousel.json +0 -45
  973. package/tokens/src/themes/light/components/Chip.json +0 -19
  974. package/tokens/src/themes/light/components/CloseButton.json +0 -10
  975. package/tokens/src/themes/light/components/Code.json +0 -23
  976. package/tokens/src/themes/light/components/DataTable.json +0 -26
  977. package/tokens/src/themes/light/components/Dropdown.json +0 -41
  978. package/tokens/src/themes/light/components/Dropzone.json +0 -23
  979. package/tokens/src/themes/light/components/Form/color.json +0 -270
  980. package/tokens/src/themes/light/components/Form/elevation.json +0 -76
  981. package/tokens/src/themes/light/components/Form/other.json +0 -131
  982. package/tokens/src/themes/light/components/IconButton.json +0 -451
  983. package/tokens/src/themes/light/components/Image.json +0 -18
  984. package/tokens/src/themes/light/components/Menu.json +0 -30
  985. package/tokens/src/themes/light/components/Modal.json +0 -37
  986. package/tokens/src/themes/light/components/Nav.json +0 -166
  987. package/tokens/src/themes/light/components/Navbar.json +0 -136
  988. package/tokens/src/themes/light/components/OverflowScroll.json +0 -9
  989. package/tokens/src/themes/light/components/PageBanner.json +0 -24
  990. package/tokens/src/themes/light/components/Pagination.json +0 -40
  991. package/tokens/src/themes/light/components/Popover.json +0 -55
  992. package/tokens/src/themes/light/components/ProductTour.json +0 -35
  993. package/tokens/src/themes/light/components/ProgressBar.json +0 -20
  994. package/tokens/src/themes/light/components/Scrollable.json +0 -14
  995. package/tokens/src/themes/light/components/SearchField.json +0 -25
  996. package/tokens/src/themes/light/components/Sheet.json +0 -22
  997. package/tokens/src/themes/light/components/Stepper.json +0 -34
  998. package/tokens/src/themes/light/components/Sticky.json +0 -18
  999. package/tokens/src/themes/light/components/Tab.json +0 -62
  1000. package/tokens/src/themes/light/components/Toast.json +0 -33
  1001. package/tokens/src/themes/light/components/Tooltip.json +0 -30
  1002. package/tokens/src/themes/light/components/general/body.json +0 -8
  1003. package/tokens/src/themes/light/components/general/headings.json +0 -7
  1004. package/tokens/src/themes/light/components/general/hr.json +0 -15
  1005. package/tokens/src/themes/light/components/general/input.json +0 -18
  1006. package/tokens/src/themes/light/components/general/link.json +0 -109
  1007. package/tokens/src/themes/light/components/general/list.json +0 -38
  1008. package/tokens/src/themes/light/components/general/text.json +0 -6
  1009. package/tokens/src/themes/light/global/color.json +0 -1661
  1010. package/tokens/src/themes/light/global/elevation.json +0 -201
  1011. package/tokens/src/themes/light/global/other.json +0 -4
  1012. package/tokens/style-dictionary.js +0 -223
  1013. package/tokens/utils.js +0 -210
  1014. /package/{styles/scss → scss}/core/_exports.module.scss +0 -0
  1015. /package/{styles/scss → scss}/core/_typography.scss +0 -0
@@ -1,345 +1,38 @@
1
- /* eslint-disable max-len */
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
3
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
4
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
5
+ import React from 'react';
2
6
  import classNames from 'classnames';
3
7
  import PropTypes from 'prop-types';
4
- import React from 'react';
5
- import MediaQuery from 'react-responsive';
6
- import { ChevronLeft, ChevronRight, ArrowBackIos, ArrowForwardIos } from '../../icons';
8
+ import ReducedPagination from './ReducedPagination';
9
+ import MinimalPagination from './MinimalPagination';
10
+ import DefaultPagination from './DefaultPagination';
11
+ import { PaginationContextProvider } from './PaginationContext';
12
+ import { PAGINATION_VARIANTS } from './constants';
13
+ import { ScreenReaderText } from './subcomponents';
7
14
  import { greaterThan } from '../utils/propTypes';
8
- import Button from '../Button';
9
- import Dropdown from '../Dropdown';
10
- import IconButton from '../IconButton';
11
- import Icon from '../Icon';
12
- import breakpoints from '../utils/breakpoints';
13
- import newId from '../utils/newId';
14
- import { ELLIPSIS } from './constants';
15
- import getPaginationRange from './getPaginationRange';
16
- export const PAGINATION_BUTTON_LABEL_PREV = 'Previous';
17
- export const PAGINATION_BUTTON_LABEL_NEXT = 'Next';
18
- export const PAGINATION_BUTTON_LABEL_PAGE = 'Page';
19
- export const PAGINATION_BUTTON_LABEL_CURRENT_PAGE = 'Current Page';
20
- export const PAGINATION_BUTTON_LABEL_PAGE_OF_COUNT = 'of';
21
- export const PAGINATION_BUTTON_ICON_BUTTON_NEXT_ALT = 'Go to next page';
22
- export const PAGINATION_BUTTON_ICON_BUTTON_PREV_ALT = 'Go to previous page';
23
- const VARIANTS = {
24
- default: 'default',
25
- secondary: 'secondary',
26
- reduced: 'reduced',
27
- minimal: 'minimal'
28
- };
29
- function ReducedPagination(_ref) {
30
- let {
31
- currentPage,
32
- pageCount,
33
- handlePageSelect
34
- } = _ref;
35
- if (pageCount <= 1) {
36
- return null;
37
- }
38
- return /*#__PURE__*/React.createElement(Dropdown, null, /*#__PURE__*/React.createElement(Dropdown.Toggle, {
39
- variant: "tertiary",
40
- id: "Pagination dropdown"
41
- }, currentPage, " of ", pageCount), /*#__PURE__*/React.createElement(Dropdown.Menu, {
42
- className: "pgn__reduced-pagination-dropdown"
43
- }, [...Array(pageCount).keys()].map(pageNum => /*#__PURE__*/React.createElement(Dropdown.Item, {
44
- onClick: () => handlePageSelect(pageNum + 1),
45
- key: pageNum,
46
- "data-testid": "pagination-dropdown-item"
47
- }, pageNum + 1))));
48
- }
49
- class Pagination extends React.Component {
50
- constructor(props) {
51
- super(props);
52
- this.previousButtonRef = null;
53
- this.nextButtonRef = null;
54
- this.pageRefs = {};
55
- this.state = {
56
- currentPage: this.props.currentPage,
57
- pageButtonSelected: false
58
- };
59
- this.handlePageSelect = this.handlePageSelect.bind(this);
60
- }
61
- shouldComponentUpdate(nextProps, nextState) {
62
- // Update only when the props and currentPage state changes to avoid re-render
63
- // if only the pageButtonSelected state is changed.
64
- return nextProps !== this.props || nextState.currentPage !== this.state.currentPage;
65
- }
66
- componentDidUpdate(prevProps, prevState) {
67
- const {
68
- currentPage,
69
- pageButtonSelected
70
- } = this.state;
71
- const currentPageRef = this.pageRefs[currentPage];
72
- if (currentPageRef && pageButtonSelected) {
73
- currentPageRef.focus();
74
- this.setPageButtonSelectedState(false);
75
- }
76
- /* eslint-disable react/no-did-update-set-state */
77
- if (this.state.currentPage === prevState.currentPage && (this.props.currentPage !== prevProps.currentPage || this.props.currentPage !== this.state.currentPage)) {
78
- this.setState({
79
- currentPage: this.props.currentPage
80
- });
81
- }
82
- }
83
- handlePageSelect(page) {
84
- if (page !== this.state.currentPage) {
85
- this.setState({
86
- currentPage: page,
87
- pageButtonSelected: true
88
- });
89
- this.props.onPageSelect(page);
15
+ import { ChevronLeft, ChevronRight } from '../../icons';
16
+ function Pagination(props) {
17
+ var _classNames;
18
+ var invertColors = props.invertColors,
19
+ variant = props.variant,
20
+ size = props.size,
21
+ paginationLabel = props.paginationLabel,
22
+ className = props.className;
23
+ var renderPaginationComponent = function renderPaginationComponent() {
24
+ if (variant === PAGINATION_VARIANTS.reduced) {
25
+ return /*#__PURE__*/React.createElement(ReducedPagination, null);
90
26
  }
91
- }
92
- handlePreviousNextButtonClick(page) {
93
- const {
94
- pageCount
95
- } = this.props;
96
- if (page === 1) {
97
- this.nextButtonRef.focus();
98
- } else if (page === pageCount) {
99
- this.previousButtonRef.focus();
27
+ if (variant === PAGINATION_VARIANTS.minimal) {
28
+ return /*#__PURE__*/React.createElement(MinimalPagination, null);
100
29
  }
101
- this.setState({
102
- currentPage: page
103
- });
104
- this.props.onPageSelect(page);
105
- }
106
- setPageButtonSelectedState(value) {
107
- this.setState({
108
- pageButtonSelected: value
109
- });
110
- }
111
- renderEllipsisButton() {
112
- return /*#__PURE__*/React.createElement("li", {
113
- className: classNames(['page-item', 'disabled']),
114
- key: newId('pagination-ellipsis-')
115
- }, /*#__PURE__*/React.createElement("span", {
116
- className: classNames(['btn', 'page-link', 'ml-0', 'border-0'])
117
- }, "..."));
118
- }
119
- renderPageButton(page) {
120
- const {
121
- buttonLabels
122
- } = this.props;
123
- const active = page === this.state.currentPage || null;
124
- let ariaLabel = `${buttonLabels.page} ${page}`;
125
- if (active) {
126
- ariaLabel += `, ${buttonLabels.currentPage}`;
127
- }
128
- return /*#__PURE__*/React.createElement("li", {
129
- className: classNames(['page-item', {
130
- active
131
- }]),
132
- key: page
133
- }, /*#__PURE__*/React.createElement(Button, {
134
- className: "page-link",
135
- "aria-label": ariaLabel,
136
- ref: element => {
137
- this.pageRefs[page] = element;
138
- },
139
- onClick: () => {
140
- this.handlePageSelect(page);
141
- }
142
- }, page.toString()));
143
- }
144
- renderPageOfCountButton() {
145
- const {
146
- currentPage
147
- } = this.state;
148
- const {
149
- pageCount,
150
- buttonLabels
151
- } = this.props;
152
- const ariaLabel = `${buttonLabels.page} ${currentPage}, ${buttonLabels.currentPage}, ${buttonLabels.pageOfCount} ${pageCount}`;
153
- const label = /*#__PURE__*/React.createElement("span", null, `${currentPage} `, buttonLabels.pageOfCount, ` ${pageCount}`);
154
- return /*#__PURE__*/React.createElement("li", {
155
- className: classNames(['page-item', 'disabled']),
156
- key: currentPage
157
- }, /*#__PURE__*/React.createElement("span", {
158
- className: classNames(['btn', 'page-link', 'mx-2', 'border-0']),
159
- "aria-label": ariaLabel
160
- }, label));
161
- }
162
- renderPreviousButton() {
163
- const {
164
- buttonLabels,
165
- icons,
166
- variant,
167
- size,
168
- pageCount
169
- } = this.props;
170
- const {
171
- currentPage
172
- } = this.state;
173
- const isFirstPage = currentPage === 1;
174
- const isDisabled = isFirstPage || pageCount === 0;
175
- const previousPage = isFirstPage ? null : currentPage - 1;
176
- const iconSize = variant !== VARIANTS.reduced && size !== 'small' || variant === VARIANTS.minimal;
177
- let ariaLabel = `${buttonLabels.previous}`;
178
- if (previousPage) {
179
- ariaLabel += `, ${buttonLabels.page} ${previousPage}`;
180
- }
181
- return /*#__PURE__*/React.createElement("li", {
182
- className: classNames('page-item', {
183
- disabled: isDisabled
184
- })
185
- }, variant === VARIANTS.default ? /*#__PURE__*/React.createElement(Button, {
186
- className: "previous page-link",
187
- "aria-label": ariaLabel,
188
- tabIndex: isDisabled ? '-1' : undefined,
189
- onClick: () => {
190
- this.handlePreviousNextButtonClick(previousPage);
191
- },
192
- ref: element => {
193
- this.previousButtonRef = element;
194
- },
195
- disabled: isDisabled
196
- }, /*#__PURE__*/React.createElement("div", null, icons.leftIcon, variant === VARIANTS.default ? buttonLabels.previous : null)) : /*#__PURE__*/React.createElement(IconButton, {
197
- src: iconSize ? ArrowBackIos : ChevronLeft,
198
- iconAs: Icon,
199
- className: "previous page-link",
200
- "aria-label": ariaLabel,
201
- tabIndex: isDisabled ? '-1' : undefined,
202
- onClick: () => {
203
- this.handlePreviousNextButtonClick(previousPage);
204
- },
205
- ref: element => {
206
- this.previousButtonRef = element;
207
- },
208
- disabled: isDisabled,
209
- alt: PAGINATION_BUTTON_ICON_BUTTON_PREV_ALT
210
- }));
211
- }
212
- renderNextButton() {
213
- const {
214
- buttonLabels,
215
- pageCount,
216
- icons,
217
- variant,
218
- size
219
- } = this.props;
220
- const {
221
- currentPage
222
- } = this.state;
223
- const isLastPage = currentPage === pageCount;
224
- const isDisabled = isLastPage || pageCount <= 1;
225
- const nextPage = isLastPage ? null : currentPage + 1;
226
- const iconSize = variant !== VARIANTS.reduced && size !== 'small' || variant === VARIANTS.minimal;
227
- let ariaLabel = `${buttonLabels.next}`;
228
- if (nextPage) {
229
- ariaLabel += `, ${buttonLabels.page} ${nextPage}`;
230
- }
231
- return /*#__PURE__*/React.createElement("li", {
232
- className: classNames('page-item', {
233
- disabled: isDisabled
234
- })
235
- }, variant === VARIANTS.default ? /*#__PURE__*/React.createElement(Button, {
236
- className: "next page-link",
237
- "aria-label": ariaLabel,
238
- tabIndex: isDisabled ? '-1' : undefined,
239
- onClick: () => {
240
- this.handlePreviousNextButtonClick(nextPage);
241
- },
242
- ref: element => {
243
- this.nextButtonRef = element;
244
- },
245
- disabled: isDisabled
246
- }, /*#__PURE__*/React.createElement("div", null, variant === VARIANTS.default ? buttonLabels.next : null, icons.rightIcon)) : /*#__PURE__*/React.createElement(IconButton, {
247
- src: iconSize ? ArrowForwardIos : ChevronRight,
248
- iconAs: Icon,
249
- className: "next page-link",
250
- "aria-label": ariaLabel,
251
- tabIndex: isDisabled ? '-1' : undefined,
252
- onClick: () => {
253
- this.handlePreviousNextButtonClick(nextPage);
254
- },
255
- ref: element => {
256
- this.nextButtonRef = element;
257
- },
258
- disabled: isDisabled,
259
- alt: PAGINATION_BUTTON_ICON_BUTTON_NEXT_ALT
260
- }));
261
- }
262
- renderScreenReaderSection() {
263
- const {
264
- currentPage
265
- } = this.state;
266
- const {
267
- buttonLabels,
268
- pageCount
269
- } = this.props;
270
- const description = `${buttonLabels.page} ${currentPage}, ${buttonLabels.currentPage}, ${buttonLabels.pageOfCount} ${pageCount}`;
271
- return /*#__PURE__*/React.createElement("div", {
272
- className: "sr-only",
273
- "aria-live": "polite",
274
- "aria-relevant": "text",
275
- "aria-atomic": true
276
- }, description);
277
- }
278
- renderPageButtons() {
279
- const {
280
- currentPage
281
- } = this.state;
282
- const {
283
- pageCount,
284
- maxPagesDisplayed
285
- } = this.props;
286
- const pages = getPaginationRange({
287
- currentIndex: currentPage,
288
- count: pageCount,
289
- length: maxPagesDisplayed,
290
- requireFirstAndLastPages: true
291
- });
292
- if (pageCount <= 1) {
293
- return null;
294
- }
295
- return pages.map(pageIndex => {
296
- if (pageIndex === ELLIPSIS) {
297
- return this.renderEllipsisButton();
298
- }
299
- return this.renderPageButton(pageIndex + 1);
300
- });
301
- }
302
- renderReducedPagination() {
303
- const {
304
- currentPage
305
- } = this.state;
306
- const {
307
- pageCount
308
- } = this.props;
309
- return /*#__PURE__*/React.createElement("ul", {
310
- className: "pagination"
311
- }, this.renderPreviousButton(), /*#__PURE__*/React.createElement(ReducedPagination, {
312
- currentPage: currentPage,
313
- pageCount: pageCount,
314
- handlePageSelect: this.handlePageSelect
315
- }), this.renderNextButton());
316
- }
317
- renderMinimalPaginations() {
318
- return /*#__PURE__*/React.createElement("ul", {
319
- className: "pagination"
320
- }, this.renderPreviousButton(), this.renderNextButton());
321
- }
322
- render() {
323
- const {
324
- variant,
325
- invertColors,
326
- size
327
- } = this.props;
328
- return /*#__PURE__*/React.createElement("nav", {
329
- "aria-label": this.props.paginationLabel,
330
- className: classNames(this.props.className, {
331
- [`pagination-${variant}`]: variant,
332
- 'pagination-inverse': invertColors,
333
- 'pagination-small': size !== VARIANTS.default
334
- })
335
- }, this.renderScreenReaderSection(), variant === VARIANTS.default || variant === VARIANTS.secondary ? /*#__PURE__*/React.createElement("ul", {
336
- className: "pagination"
337
- }, this.renderPreviousButton(), /*#__PURE__*/React.createElement(MediaQuery, {
338
- maxWidth: breakpoints.extraSmall.maxWidth
339
- }, this.renderPageOfCountButton()), /*#__PURE__*/React.createElement(MediaQuery, {
340
- minWidth: breakpoints.small.minWidth
341
- }, this.renderPageButtons()), this.renderNextButton()) : null, variant === VARIANTS.reduced ? this.renderReducedPagination() : null, variant === VARIANTS.minimal ? this.renderMinimalPaginations() : null);
342
- }
30
+ return /*#__PURE__*/React.createElement(DefaultPagination, null);
31
+ };
32
+ return /*#__PURE__*/React.createElement(PaginationContextProvider, props, /*#__PURE__*/React.createElement("nav", {
33
+ "aria-label": paginationLabel,
34
+ className: classNames(className, (_classNames = {}, _defineProperty(_classNames, "pagination-".concat(variant), variant), _defineProperty(_classNames, 'pagination-inverse', invertColors), _defineProperty(_classNames, 'pagination-small', size !== PAGINATION_VARIANTS["default"]), _classNames))
35
+ }, /*#__PURE__*/React.createElement(ScreenReaderText, null), renderPaginationComponent()));
343
36
  }
344
37
  Pagination.propTypes = {
345
38
  /**
@@ -407,41 +100,34 @@ Pagination.propTypes = {
407
100
  * string, symbol, etc. Default is chevrons rendered using fa-css.
408
101
  */
409
102
  icons: PropTypes.shape({
410
- leftIcon: PropTypes.node,
411
- rightIcon: PropTypes.node
103
+ leftIcon: PropTypes.elementType,
104
+ rightIcon: PropTypes.elementType
412
105
  }),
413
106
  variant: PropTypes.oneOf(['default', 'secondary', 'reduced', 'minimal']),
414
107
  invertColors: PropTypes.bool,
415
- size: PropTypes.oneOf(['default', 'small'])
108
+ size: PropTypes.oneOf(['default', 'small']),
109
+ initialPage: PropTypes.number
416
110
  };
417
111
  Pagination.defaultProps = {
418
112
  icons: {
419
- leftIcon: /*#__PURE__*/React.createElement(Icon, {
420
- src: ChevronLeft
421
- }),
422
- rightIcon: /*#__PURE__*/React.createElement(Icon, {
423
- src: ChevronRight
424
- })
113
+ leftIcon: ChevronLeft,
114
+ rightIcon: ChevronRight
425
115
  },
426
116
  buttonLabels: {
427
- previous: PAGINATION_BUTTON_LABEL_PREV,
428
- next: PAGINATION_BUTTON_LABEL_NEXT,
429
- page: PAGINATION_BUTTON_LABEL_PAGE,
430
- currentPage: PAGINATION_BUTTON_LABEL_CURRENT_PAGE,
431
- pageOfCount: PAGINATION_BUTTON_LABEL_PAGE_OF_COUNT
117
+ previous: 'Previous',
118
+ next: 'Next',
119
+ page: 'Page',
120
+ currentPage: 'Current Page',
121
+ pageOfCount: 'of'
432
122
  },
433
123
  className: undefined,
434
- currentPage: 1,
124
+ initialPage: 1,
125
+ currentPage: undefined,
435
126
  maxPagesDisplayed: 7,
436
127
  variant: 'default',
437
128
  invertColors: false,
438
129
  size: 'default'
439
130
  };
440
- ReducedPagination.propTypes = {
441
- currentPage: PropTypes.number.isRequired,
442
- pageCount: PropTypes.number.isRequired,
443
- handlePageSelect: PropTypes.func.isRequired
444
- };
445
- Pagination.Reduced = ReducedPagination;
446
131
  export default Pagination;
132
+ export * from './constants';
447
133
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["classNames","PropTypes","React","MediaQuery","ChevronLeft","ChevronRight","ArrowBackIos","ArrowForwardIos","greaterThan","Button","Dropdown","IconButton","Icon","breakpoints","newId","ELLIPSIS","getPaginationRange","PAGINATION_BUTTON_LABEL_PREV","PAGINATION_BUTTON_LABEL_NEXT","PAGINATION_BUTTON_LABEL_PAGE","PAGINATION_BUTTON_LABEL_CURRENT_PAGE","PAGINATION_BUTTON_LABEL_PAGE_OF_COUNT","PAGINATION_BUTTON_ICON_BUTTON_NEXT_ALT","PAGINATION_BUTTON_ICON_BUTTON_PREV_ALT","VARIANTS","default","secondary","reduced","minimal","ReducedPagination","_ref","currentPage","pageCount","handlePageSelect","createElement","Toggle","variant","id","Menu","className","Array","keys","map","pageNum","Item","onClick","key","Pagination","Component","constructor","props","previousButtonRef","nextButtonRef","pageRefs","state","pageButtonSelected","bind","shouldComponentUpdate","nextProps","nextState","componentDidUpdate","prevProps","prevState","currentPageRef","focus","setPageButtonSelectedState","setState","page","onPageSelect","handlePreviousNextButtonClick","value","renderEllipsisButton","renderPageButton","buttonLabels","active","ariaLabel","ref","element","toString","renderPageOfCountButton","pageOfCount","label","renderPreviousButton","icons","size","isFirstPage","isDisabled","previousPage","iconSize","previous","disabled","tabIndex","undefined","leftIcon","src","iconAs","alt","renderNextButton","isLastPage","nextPage","next","rightIcon","renderScreenReaderSection","description","renderPageButtons","maxPagesDisplayed","pages","currentIndex","count","length","requireFirstAndLastPages","pageIndex","renderReducedPagination","renderMinimalPaginations","render","invertColors","paginationLabel","maxWidth","extraSmall","minWidth","small","propTypes","func","isRequired","number","string","shape","node","oneOf","bool","defaultProps","Reduced"],"sources":["../../src/Pagination/index.jsx"],"sourcesContent":["/* eslint-disable max-len */\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport MediaQuery from 'react-responsive';\n\nimport {\n ChevronLeft, ChevronRight, ArrowBackIos, ArrowForwardIos,\n} from '../../icons';\nimport { greaterThan } from '../utils/propTypes';\nimport Button from '../Button';\nimport Dropdown from '../Dropdown';\nimport IconButton from '../IconButton';\nimport Icon from '../Icon';\nimport breakpoints from '../utils/breakpoints';\nimport newId from '../utils/newId';\nimport { ELLIPSIS } from './constants';\nimport getPaginationRange from './getPaginationRange';\n\nexport const PAGINATION_BUTTON_LABEL_PREV = 'Previous';\nexport const PAGINATION_BUTTON_LABEL_NEXT = 'Next';\nexport const PAGINATION_BUTTON_LABEL_PAGE = 'Page';\nexport const PAGINATION_BUTTON_LABEL_CURRENT_PAGE = 'Current Page';\nexport const PAGINATION_BUTTON_LABEL_PAGE_OF_COUNT = 'of';\nexport const PAGINATION_BUTTON_ICON_BUTTON_NEXT_ALT = 'Go to next page';\nexport const PAGINATION_BUTTON_ICON_BUTTON_PREV_ALT = 'Go to previous page';\n\nconst VARIANTS = {\n default: 'default',\n secondary: 'secondary',\n reduced: 'reduced',\n minimal: 'minimal',\n};\n\nfunction ReducedPagination({ currentPage, pageCount, handlePageSelect }) {\n if (pageCount <= 1) { return null; }\n return (\n <Dropdown>\n <Dropdown.Toggle variant=\"tertiary\" id=\"Pagination dropdown\">\n {currentPage} of {pageCount}\n </Dropdown.Toggle>\n <Dropdown.Menu className=\"pgn__reduced-pagination-dropdown\">\n {[...Array(pageCount).keys()].map(pageNum => (\n <Dropdown.Item\n onClick={() => handlePageSelect(pageNum + 1)}\n key={pageNum}\n data-testid=\"pagination-dropdown-item\"\n >\n {pageNum + 1}\n </Dropdown.Item>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n );\n}\n\nclass Pagination extends React.Component {\n constructor(props) {\n super(props);\n\n this.previousButtonRef = null;\n this.nextButtonRef = null;\n\n this.pageRefs = {};\n\n this.state = {\n currentPage: this.props.currentPage,\n pageButtonSelected: false,\n };\n\n this.handlePageSelect = this.handlePageSelect.bind(this);\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n // Update only when the props and currentPage state changes to avoid re-render\n // if only the pageButtonSelected state is changed.\n return nextProps !== this.props || nextState.currentPage !== this.state.currentPage;\n }\n\n componentDidUpdate(prevProps, prevState) {\n const { currentPage, pageButtonSelected } = this.state;\n const currentPageRef = this.pageRefs[currentPage];\n\n if (currentPageRef && pageButtonSelected) {\n currentPageRef.focus();\n this.setPageButtonSelectedState(false);\n }\n /* eslint-disable react/no-did-update-set-state */\n if (\n this.state.currentPage === prevState.currentPage\n && (this.props.currentPage !== prevProps.currentPage\n || this.props.currentPage !== this.state.currentPage)\n ) {\n this.setState({\n currentPage: this.props.currentPage,\n });\n }\n }\n\n handlePageSelect(page) {\n if (page !== this.state.currentPage) {\n this.setState({\n currentPage: page,\n pageButtonSelected: true,\n });\n this.props.onPageSelect(page);\n }\n }\n\n handlePreviousNextButtonClick(page) {\n const { pageCount } = this.props;\n\n if (page === 1) {\n this.nextButtonRef.focus();\n } else if (page === pageCount) {\n this.previousButtonRef.focus();\n }\n this.setState({ currentPage: page });\n this.props.onPageSelect(page);\n }\n\n setPageButtonSelectedState(value) {\n this.setState({ pageButtonSelected: value });\n }\n\n renderEllipsisButton() {\n return (\n <li\n className={classNames(['page-item', 'disabled'])}\n key={newId('pagination-ellipsis-')}\n >\n <span\n className={classNames([\n 'btn',\n 'page-link',\n 'ml-0',\n 'border-0',\n ])}\n >\n ...\n </span>\n </li>\n );\n }\n\n renderPageButton(page) {\n const { buttonLabels } = this.props;\n const active = page === this.state.currentPage || null;\n\n let ariaLabel = `${buttonLabels.page} ${page}`;\n if (active) {\n ariaLabel += `, ${buttonLabels.currentPage}`;\n }\n\n return (\n <li\n className={classNames([\n 'page-item',\n {\n active,\n },\n ])}\n key={page}\n >\n <Button\n className=\"page-link\"\n aria-label={ariaLabel}\n ref={(element) => { this.pageRefs[page] = element; }}\n onClick={() => { this.handlePageSelect(page); }}\n >\n {page.toString()}\n </Button>\n </li>\n );\n }\n\n renderPageOfCountButton() {\n const { currentPage } = this.state;\n const { pageCount, buttonLabels } = this.props;\n\n const ariaLabel = `${buttonLabels.page} ${currentPage}, ${buttonLabels.currentPage}, ${buttonLabels.pageOfCount} ${pageCount}`;\n\n const label = (\n <span>\n {`${currentPage} `}\n {buttonLabels.pageOfCount}\n {` ${pageCount}`}\n </span>\n );\n\n return (\n <li\n className={classNames(['page-item', 'disabled'])}\n key={currentPage}\n >\n <span\n className={classNames([\n 'btn',\n 'page-link',\n 'mx-2',\n 'border-0',\n ])}\n aria-label={ariaLabel}\n >\n {label}\n </span>\n </li>\n );\n }\n\n renderPreviousButton() {\n const {\n buttonLabels, icons, variant, size, pageCount,\n } = this.props;\n const { currentPage } = this.state;\n const isFirstPage = currentPage === 1;\n const isDisabled = isFirstPage || pageCount === 0;\n const previousPage = isFirstPage ? null : currentPage - 1;\n const iconSize = (variant !== VARIANTS.reduced && size !== 'small') || variant === VARIANTS.minimal;\n\n let ariaLabel = `${buttonLabels.previous}`;\n if (previousPage) {\n ariaLabel += `, ${buttonLabels.page} ${previousPage}`;\n }\n\n return (\n <li\n className={classNames(\n 'page-item',\n {\n disabled: isDisabled,\n },\n )}\n >\n {\n variant === VARIANTS.default\n ? (\n <Button\n className=\"previous page-link\"\n aria-label={ariaLabel}\n tabIndex={isDisabled ? '-1' : undefined}\n onClick={() => { this.handlePreviousNextButtonClick(previousPage); }}\n ref={(element) => { this.previousButtonRef = element; }}\n disabled={isDisabled}\n >\n <div>\n {icons.leftIcon}\n {variant === VARIANTS.default ? buttonLabels.previous : null}\n </div>\n </Button>\n )\n : (\n <IconButton\n src={iconSize ? ArrowBackIos : ChevronLeft}\n iconAs={Icon}\n className=\"previous page-link\"\n aria-label={ariaLabel}\n tabIndex={isDisabled ? '-1' : undefined}\n onClick={() => { this.handlePreviousNextButtonClick(previousPage); }}\n ref={(element) => { this.previousButtonRef = element; }}\n disabled={isDisabled}\n alt={PAGINATION_BUTTON_ICON_BUTTON_PREV_ALT}\n />\n )\n }\n </li>\n );\n }\n\n renderNextButton() {\n const {\n buttonLabels, pageCount, icons, variant, size,\n } = this.props;\n const { currentPage } = this.state;\n const isLastPage = (currentPage === pageCount);\n const isDisabled = isLastPage || (pageCount <= 1);\n const nextPage = isLastPage ? null : currentPage + 1;\n const iconSize = (variant !== VARIANTS.reduced && size !== 'small') || variant === VARIANTS.minimal;\n\n let ariaLabel = `${buttonLabels.next}`;\n if (nextPage) {\n ariaLabel += `, ${buttonLabels.page} ${nextPage}`;\n }\n\n return (\n <li\n className={classNames(\n 'page-item',\n {\n disabled: isDisabled,\n },\n )}\n >\n {variant === VARIANTS.default ? (\n <Button\n className=\"next page-link\"\n aria-label={ariaLabel}\n tabIndex={isDisabled ? '-1' : undefined}\n onClick={() => { this.handlePreviousNextButtonClick(nextPage); }}\n ref={(element) => { this.nextButtonRef = element; }}\n disabled={isDisabled}\n >\n <div>\n {variant === VARIANTS.default ? buttonLabels.next : null}\n {icons.rightIcon}\n </div>\n </Button>\n ) : (\n <IconButton\n src={iconSize ? ArrowForwardIos : ChevronRight}\n iconAs={Icon}\n className=\"next page-link\"\n aria-label={ariaLabel}\n tabIndex={isDisabled ? '-1' : undefined}\n onClick={() => { this.handlePreviousNextButtonClick(nextPage); }}\n ref={(element) => { this.nextButtonRef = element; }}\n disabled={isDisabled}\n alt={PAGINATION_BUTTON_ICON_BUTTON_NEXT_ALT}\n />\n )}\n </li>\n );\n }\n\n renderScreenReaderSection() {\n const { currentPage } = this.state;\n const { buttonLabels, pageCount } = this.props;\n\n const description = `${buttonLabels.page} ${currentPage}, ${buttonLabels.currentPage}, ${buttonLabels.pageOfCount} ${pageCount}`;\n\n return (\n <div\n className=\"sr-only\"\n aria-live=\"polite\"\n aria-relevant=\"text\"\n aria-atomic\n >\n {description}\n </div>\n );\n }\n\n renderPageButtons() {\n const { currentPage } = this.state;\n const { pageCount, maxPagesDisplayed } = this.props;\n\n const pages = getPaginationRange({\n currentIndex: currentPage,\n count: pageCount,\n length: maxPagesDisplayed,\n requireFirstAndLastPages: true,\n });\n\n if (pageCount <= 1) {\n return null;\n }\n return pages.map((pageIndex) => {\n if (pageIndex === ELLIPSIS) {\n return this.renderEllipsisButton();\n }\n return this.renderPageButton(pageIndex + 1);\n });\n }\n\n renderReducedPagination() {\n const { currentPage } = this.state;\n const { pageCount } = this.props;\n\n return (\n <ul className=\"pagination\">\n {this.renderPreviousButton()}\n <ReducedPagination currentPage={currentPage} pageCount={pageCount} handlePageSelect={this.handlePageSelect} />\n {this.renderNextButton()}\n </ul>\n );\n }\n\n renderMinimalPaginations() {\n return (\n <ul className=\"pagination\">\n {this.renderPreviousButton()}\n {this.renderNextButton()}\n </ul>\n );\n }\n\n render() {\n const { variant, invertColors, size } = this.props;\n return (\n <nav\n aria-label={this.props.paginationLabel}\n className={classNames(this.props.className, {\n [`pagination-${variant}`]: variant,\n 'pagination-inverse': invertColors,\n 'pagination-small': size !== VARIANTS.default,\n })}\n >\n {this.renderScreenReaderSection()}\n {variant === VARIANTS.default || variant === VARIANTS.secondary\n ? (\n <ul className=\"pagination\">\n {this.renderPreviousButton()}\n <MediaQuery maxWidth={breakpoints.extraSmall.maxWidth}>\n {this.renderPageOfCountButton()}\n </MediaQuery>\n <MediaQuery minWidth={breakpoints.small.minWidth}>\n {this.renderPageButtons()}\n </MediaQuery>\n {this.renderNextButton()}\n </ul>\n )\n : null}\n {variant === VARIANTS.reduced ? this.renderReducedPagination() : null}\n {variant === VARIANTS.minimal ? this.renderMinimalPaginations() : null}\n </nav>\n );\n }\n}\n\nPagination.propTypes = {\n /**\n * Specifies a callback function that is executed when the\n * user selects a page button or the `Previous`/`Next` buttons. For example:\n *\n * ```jsx\n * <Pagination onPageSelect={(pageNumber) => { console.log(pageNumber); } />\n * ```\n */\n onPageSelect: PropTypes.func.isRequired,\n /** Specifies the total number of pages in the `Pagination` component. */\n pageCount: PropTypes.number.isRequired,\n /** Specifies the `aria-label` for the `<nav>` element that wraps the pagination button list. */\n paginationLabel: PropTypes.string.isRequired,\n /**\n * Specifies the labels to use for the `Previous`/`Next`\n * buttons as well as the various parts of `aria-label`\n * on the page buttons for accessibility. All button labels\n * accept both string or elements. The button label options are as follows:\n *\n * `previous`: Text for the `Previous` button;\n *\n * `next`: Text for the `Next` button;\n *\n * `page`: Text in the `aria-label` on page buttons to describe the button (e.g., \"**Page** 1\");\n *\n * `currentPage`: Text to depict the selected page in the `aria-label`\n * on page buttons (e.g., \"Page 1, **Current Page**\");\n *\n * `pageOfCount`: Text that separates the current page and total page count\n * for the mobile UI (e.g., \"Page 1 **of** 20\").\n *\n * The default is:\n * ```javascript\n * {\n * previous: 'Previous',\n * next: 'Next',\n * page: 'Page',\n * currentPage: 'Current Page',\n * pageOfCount: 'of',\n * }\n * ```\n */\n buttonLabels: PropTypes.shape({\n previous: PropTypes.string,\n next: PropTypes.string,\n page: PropTypes.string,\n currentPage: PropTypes.string,\n pageOfCount: PropTypes.string,\n }),\n /** Specifies any class name(s) for the `Pagination` component. The default is an empty string. */\n className: PropTypes.string,\n /** specifies the page that the `Pagination` component will automatically select. The default is `1`. */\n currentPage: PropTypes.number,\n /**\n * Specifies the number of page buttons to display in between the `Previous`\n * and `Next` buttons. This number also includes any ellipses in the total count.\n * Also, to ensure that at least one clickable page button is shown when both ellipses\n * are displayed, this value must be greater than `4`. The default is `7`.\n */\n maxPagesDisplayed: greaterThan(4),\n /**\n * Specifies icons used to indicate previous and next page. Can be an element,\n * string, symbol, etc. Default is chevrons rendered using fa-css.\n */\n icons: PropTypes.shape({\n leftIcon: PropTypes.node,\n rightIcon: PropTypes.node,\n }),\n variant: PropTypes.oneOf(['default', 'secondary', 'reduced', 'minimal']),\n invertColors: PropTypes.bool,\n size: PropTypes.oneOf(['default', 'small']),\n};\n\nPagination.defaultProps = {\n icons: {\n leftIcon: <Icon src={ChevronLeft} />,\n rightIcon: <Icon src={ChevronRight} />,\n },\n buttonLabels: {\n previous: PAGINATION_BUTTON_LABEL_PREV,\n next: PAGINATION_BUTTON_LABEL_NEXT,\n page: PAGINATION_BUTTON_LABEL_PAGE,\n currentPage: PAGINATION_BUTTON_LABEL_CURRENT_PAGE,\n pageOfCount: PAGINATION_BUTTON_LABEL_PAGE_OF_COUNT,\n },\n className: undefined,\n currentPage: 1,\n maxPagesDisplayed: 7,\n variant: 'default',\n invertColors: false,\n size: 'default',\n};\n\nReducedPagination.propTypes = {\n currentPage: PropTypes.number.isRequired,\n pageCount: PropTypes.number.isRequired,\n handlePageSelect: PropTypes.func.isRequired,\n};\n\nPagination.Reduced = ReducedPagination;\n\nexport default Pagination;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["React","classNames","PropTypes","ReducedPagination","MinimalPagination","DefaultPagination","PaginationContextProvider","PAGINATION_VARIANTS","ScreenReaderText","greaterThan","ChevronLeft","ChevronRight","Pagination","props","_classNames","invertColors","variant","size","paginationLabel","className","renderPaginationComponent","reduced","createElement","minimal","_defineProperty","concat","propTypes","onPageSelect","func","isRequired","pageCount","number","string","buttonLabels","shape","previous","next","page","currentPage","pageOfCount","maxPagesDisplayed","icons","leftIcon","elementType","rightIcon","oneOf","bool","initialPage","defaultProps","undefined"],"sources":["../../src/Pagination/index.jsx"],"sourcesContent":["import React from 'react';\nimport classNames from 'classnames';\nimport PropTypes from 'prop-types';\n\nimport ReducedPagination from './ReducedPagination';\nimport MinimalPagination from './MinimalPagination';\nimport DefaultPagination from './DefaultPagination';\nimport { PaginationContextProvider } from './PaginationContext';\nimport { PAGINATION_VARIANTS } from './constants';\nimport { ScreenReaderText } from './subcomponents';\n\nimport { greaterThan } from '../utils/propTypes';\nimport { ChevronLeft, ChevronRight } from '../../icons';\n\nfunction Pagination(props) {\n const {\n invertColors,\n variant,\n size,\n paginationLabel,\n className,\n } = props;\n\n const renderPaginationComponent = () => {\n if (variant === PAGINATION_VARIANTS.reduced) {\n return <ReducedPagination />;\n }\n\n if (variant === PAGINATION_VARIANTS.minimal) {\n return <MinimalPagination />;\n }\n\n return <DefaultPagination />;\n };\n\n return (\n <PaginationContextProvider {...props}>\n <nav\n aria-label={paginationLabel}\n className={classNames(className, {\n [`pagination-${variant}`]: variant,\n 'pagination-inverse': invertColors,\n 'pagination-small': size !== PAGINATION_VARIANTS.default,\n })}\n >\n <ScreenReaderText />\n {renderPaginationComponent()}\n </nav>\n </PaginationContextProvider>\n );\n}\n\nPagination.propTypes = {\n /**\n * Specifies a callback function that is executed when the\n * user selects a page button or the `Previous`/`Next` buttons. For example:\n *\n * ```jsx\n * <Pagination onPageSelect={(pageNumber) => { console.log(pageNumber); } />\n * ```\n */\n onPageSelect: PropTypes.func.isRequired,\n /** Specifies the total number of pages in the `Pagination` component. */\n pageCount: PropTypes.number.isRequired,\n /** Specifies the `aria-label` for the `<nav>` element that wraps the pagination button list. */\n paginationLabel: PropTypes.string.isRequired,\n /**\n * Specifies the labels to use for the `Previous`/`Next`\n * buttons as well as the various parts of `aria-label`\n * on the page buttons for accessibility. All button labels\n * accept both string or elements. The button label options are as follows:\n *\n * `previous`: Text for the `Previous` button;\n *\n * `next`: Text for the `Next` button;\n *\n * `page`: Text in the `aria-label` on page buttons to describe the button (e.g., \"**Page** 1\");\n *\n * `currentPage`: Text to depict the selected page in the `aria-label`\n * on page buttons (e.g., \"Page 1, **Current Page**\");\n *\n * `pageOfCount`: Text that separates the current page and total page count\n * for the mobile UI (e.g., \"Page 1 **of** 20\").\n *\n * The default is:\n * ```javascript\n * {\n * previous: 'Previous',\n * next: 'Next',\n * page: 'Page',\n * currentPage: 'Current Page',\n * pageOfCount: 'of',\n * }\n * ```\n */\n buttonLabels: PropTypes.shape({\n previous: PropTypes.string,\n next: PropTypes.string,\n page: PropTypes.string,\n currentPage: PropTypes.string,\n pageOfCount: PropTypes.string,\n }),\n /** Specifies any class name(s) for the `Pagination` component. The default is an empty string. */\n className: PropTypes.string,\n /** specifies the page that the `Pagination` component will automatically select. The default is `1`. */\n currentPage: PropTypes.number,\n /**\n * Specifies the number of page buttons to display in between the `Previous`\n * and `Next` buttons. This number also includes any ellipses in the total count.\n * Also, to ensure that at least one clickable page button is shown when both ellipses\n * are displayed, this value must be greater than `4`. The default is `7`.\n */\n maxPagesDisplayed: greaterThan(4),\n /**\n * Specifies icons used to indicate previous and next page. Can be an element,\n * string, symbol, etc. Default is chevrons rendered using fa-css.\n */\n icons: PropTypes.shape({\n leftIcon: PropTypes.elementType,\n rightIcon: PropTypes.elementType,\n }),\n variant: PropTypes.oneOf(['default', 'secondary', 'reduced', 'minimal']),\n invertColors: PropTypes.bool,\n size: PropTypes.oneOf(['default', 'small']),\n initialPage: PropTypes.number,\n};\n\nPagination.defaultProps = {\n icons: {\n leftIcon: ChevronLeft,\n rightIcon: ChevronRight,\n },\n buttonLabels: {\n previous: 'Previous',\n next: 'Next',\n page: 'Page',\n currentPage: 'Current Page',\n pageOfCount: 'of',\n },\n className: undefined,\n initialPage: 1,\n currentPage: undefined,\n maxPagesDisplayed: 7,\n variant: 'default',\n invertColors: false,\n size: 'default',\n};\n\nexport default Pagination;\nexport * from './constants';\n"],"mappings":"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"}