@openedx/paragon 23.14.2 → 23.14.3

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 (379) hide show
  1. package/dist/ActionRow/index.d.ts +18 -0
  2. package/dist/ActionRow/index.js +6 -24
  3. package/dist/ActionRow/index.js.map +1 -1
  4. package/dist/Alert/index.js +21 -24
  5. package/dist/Alert/index.js.map +1 -1
  6. package/dist/Annotation/index.d.ts +13 -0
  7. package/dist/Annotation/index.js +11 -30
  8. package/dist/Annotation/index.js.map +1 -1
  9. package/dist/Avatar/index.d.ts +11 -0
  10. package/dist/Avatar/index.js +7 -21
  11. package/dist/Avatar/index.js.map +1 -1
  12. package/dist/AvatarButton/index.d.ts +17 -0
  13. package/dist/AvatarButton/index.js +11 -33
  14. package/dist/AvatarButton/index.js.map +1 -1
  15. package/dist/Breadcrumb/BreadcrumbLink.js +5 -6
  16. package/dist/Breadcrumb/BreadcrumbLink.js.map +1 -1
  17. package/dist/Breadcrumb/index.js +11 -12
  18. package/dist/Breadcrumb/index.js.map +1 -1
  19. package/dist/Bubble/index.js +15 -18
  20. package/dist/Bubble/index.js.map +1 -1
  21. package/dist/Button/index.d.ts +42 -7
  22. package/dist/Button/index.js +43 -115
  23. package/dist/Button/index.js.map +1 -1
  24. package/dist/Card/BaseCard.js +11 -12
  25. package/dist/Card/BaseCard.js.map +1 -1
  26. package/dist/Card/CardBody.js +9 -12
  27. package/dist/Card/CardBody.js.map +1 -1
  28. package/dist/Card/CardCarousel/CardCarousel.js +13 -14
  29. package/dist/Card/CardCarousel/CardCarousel.js.map +1 -1
  30. package/dist/Card/CardCarousel/CardCarouselHeader.js +4 -5
  31. package/dist/Card/CardCarousel/CardCarouselHeader.js.map +1 -1
  32. package/dist/Card/CardCarousel/CardCarouselItems.js +3 -4
  33. package/dist/Card/CardCarousel/CardCarouselItems.js.map +1 -1
  34. package/dist/Card/CardCarousel/CardCarouselProvider.js +7 -8
  35. package/dist/Card/CardCarousel/CardCarouselProvider.js.map +1 -1
  36. package/dist/Card/CardCarousel/CardCarouselSubtitle.js +5 -6
  37. package/dist/Card/CardCarousel/CardCarouselSubtitle.js.map +1 -1
  38. package/dist/Card/CardCarousel/CardCarouselTitle.js +5 -6
  39. package/dist/Card/CardCarousel/CardCarouselTitle.js.map +1 -1
  40. package/dist/Card/CardCarousel/messages.d.ts +13 -0
  41. package/dist/Card/CardCarousel/messages.js +4 -5
  42. package/dist/Card/CardCarousel/messages.js.map +1 -0
  43. package/dist/Card/CardContext.js +6 -7
  44. package/dist/Card/CardContext.js.map +1 -1
  45. package/dist/Card/CardDeck.js +9 -10
  46. package/dist/Card/CardDeck.js.map +1 -1
  47. package/dist/Card/CardDivider.js +8 -11
  48. package/dist/Card/CardDivider.js.map +1 -1
  49. package/dist/Card/CardFooter.js +9 -10
  50. package/dist/Card/CardFooter.js.map +1 -1
  51. package/dist/Card/CardGrid.js +6 -7
  52. package/dist/Card/CardGrid.js.map +1 -1
  53. package/dist/Card/CardHeader.js +9 -10
  54. package/dist/Card/CardHeader.js.map +1 -1
  55. package/dist/Card/CardImageCap.js +15 -16
  56. package/dist/Card/CardImageCap.js.map +1 -1
  57. package/dist/Card/CardSection.js +9 -10
  58. package/dist/Card/CardSection.js.map +1 -1
  59. package/dist/Card/CardStatus.js +9 -10
  60. package/dist/Card/CardStatus.js.map +1 -1
  61. package/dist/Card/index.js +9 -10
  62. package/dist/Card/index.js.map +1 -1
  63. package/dist/Chip/ChipIcon.js +8 -9
  64. package/dist/Chip/ChipIcon.js.map +1 -1
  65. package/dist/Chip/index.d.ts +22 -0
  66. package/dist/Chip/index.js +15 -70
  67. package/dist/Chip/index.js.map +1 -1
  68. package/dist/ChipCarousel/index.js +49 -53
  69. package/dist/ChipCarousel/index.js.map +1 -1
  70. package/dist/ChipCarousel/messages.d.ts +13 -0
  71. package/dist/ChipCarousel/messages.js +4 -5
  72. package/dist/ChipCarousel/messages.js.map +1 -0
  73. package/dist/CloseButton/index.js.map +1 -1
  74. package/dist/Collapse/index.js.map +1 -1
  75. package/dist/Collapsible/CollapsibleBody.js +6 -7
  76. package/dist/Collapsible/CollapsibleBody.js.map +1 -1
  77. package/dist/Collapsible/CollapsibleTrigger.js +9 -10
  78. package/dist/Collapsible/CollapsibleTrigger.js.map +1 -1
  79. package/dist/Collapsible/CollapsibleVisible.js +5 -6
  80. package/dist/Collapsible/CollapsibleVisible.js.map +1 -1
  81. package/dist/ColorPicker/index.js +6 -7
  82. package/dist/ColorPicker/index.js.map +1 -1
  83. package/dist/Container/index.js +9 -12
  84. package/dist/Container/index.js.map +1 -1
  85. package/dist/DataTable/BulkActions.js +4 -5
  86. package/dist/DataTable/BulkActions.js.map +1 -1
  87. package/dist/DataTable/CardView.js +16 -18
  88. package/dist/DataTable/CardView.js.map +1 -1
  89. package/dist/DataTable/CollapsibleButtonGroup.js +5 -6
  90. package/dist/DataTable/CollapsibleButtonGroup.js.map +1 -1
  91. package/dist/DataTable/DataTableLayout.js +5 -6
  92. package/dist/DataTable/DataTableLayout.js.map +1 -1
  93. package/dist/DataTable/EmptyTable.js +5 -6
  94. package/dist/DataTable/EmptyTable.js.map +1 -1
  95. package/dist/DataTable/ExpandAll.js +4 -5
  96. package/dist/DataTable/ExpandAll.js.map +1 -1
  97. package/dist/DataTable/ExpandRow.js +3 -4
  98. package/dist/DataTable/ExpandRow.js.map +1 -1
  99. package/dist/DataTable/FilterStatus.js +8 -9
  100. package/dist/DataTable/FilterStatus.js.map +1 -1
  101. package/dist/DataTable/RowStatus.js +4 -5
  102. package/dist/DataTable/RowStatus.js.map +1 -1
  103. package/dist/DataTable/SidebarFilters.js +3 -4
  104. package/dist/DataTable/SidebarFilters.js.map +1 -1
  105. package/dist/DataTable/Table.js +3 -4
  106. package/dist/DataTable/Table.js.map +1 -1
  107. package/dist/DataTable/TableActions.js +3 -4
  108. package/dist/DataTable/TableActions.js.map +1 -1
  109. package/dist/DataTable/TableCell.js +5 -6
  110. package/dist/DataTable/TableCell.js.map +1 -1
  111. package/dist/DataTable/TableControlBar.js +3 -4
  112. package/dist/DataTable/TableControlBar.js.map +1 -1
  113. package/dist/DataTable/TableFilters.js +6 -7
  114. package/dist/DataTable/TableFilters.js.map +1 -1
  115. package/dist/DataTable/TableFooter.js +4 -5
  116. package/dist/DataTable/TableFooter.js.map +1 -1
  117. package/dist/DataTable/TableHeaderCell.js +13 -15
  118. package/dist/DataTable/TableHeaderCell.js.map +1 -1
  119. package/dist/DataTable/TableHeaderRow.js +3 -4
  120. package/dist/DataTable/TableHeaderRow.js.map +1 -1
  121. package/dist/DataTable/TableRow.js +3 -4
  122. package/dist/DataTable/TableRow.js.map +1 -1
  123. package/dist/DataTable/filters/CheckboxFilter.js +25 -29
  124. package/dist/DataTable/filters/CheckboxFilter.js.map +1 -1
  125. package/dist/DataTable/filters/DropdownFilter.js +16 -20
  126. package/dist/DataTable/filters/DropdownFilter.js.map +1 -1
  127. package/dist/DataTable/filters/MultiSelectDropdownFilter.js +25 -29
  128. package/dist/DataTable/filters/MultiSelectDropdownFilter.js.map +1 -1
  129. package/dist/DataTable/filters/TextFilter.js +8 -9
  130. package/dist/DataTable/filters/TextFilter.js.map +1 -1
  131. package/dist/DataTable/hooks.js +11 -13
  132. package/dist/DataTable/hooks.js.map +1 -1
  133. package/dist/DataTable/index.js +35 -36
  134. package/dist/DataTable/index.js.map +1 -1
  135. package/dist/DataTable/messages.d.ts +13 -0
  136. package/dist/DataTable/messages.js +4 -5
  137. package/dist/DataTable/messages.js.map +1 -0
  138. package/dist/DataTable/selection/BaseSelectionStatus.js +11 -12
  139. package/dist/DataTable/selection/BaseSelectionStatus.js.map +1 -1
  140. package/dist/DataTable/selection/ControlledSelect.js +3 -4
  141. package/dist/DataTable/selection/ControlledSelect.js.map +1 -1
  142. package/dist/DataTable/selection/ControlledSelectHeader.js +3 -4
  143. package/dist/DataTable/selection/ControlledSelectHeader.js.map +1 -1
  144. package/dist/DataTable/selection/ControlledSelectionStatus.js +4 -5
  145. package/dist/DataTable/selection/ControlledSelectionStatus.js.map +1 -1
  146. package/dist/DataTable/selection/SelectionStatus.js +4 -5
  147. package/dist/DataTable/selection/SelectionStatus.js.map +1 -1
  148. package/dist/DataTable/utils/getVisibleColumns.js +9 -13
  149. package/dist/DataTable/utils/getVisibleColumns.js.map +1 -1
  150. package/dist/Dropdown/index.js +17 -20
  151. package/dist/Dropdown/index.js.map +1 -1
  152. package/dist/Dropzone/DefaultContent.js +5 -6
  153. package/dist/Dropzone/DefaultContent.js.map +1 -1
  154. package/dist/Dropzone/DragError.js +3 -4
  155. package/dist/Dropzone/DragError.js.map +1 -1
  156. package/dist/Dropzone/GenericError.js +4 -5
  157. package/dist/Dropzone/GenericError.js.map +1 -1
  158. package/dist/Dropzone/UploadProgress.js +6 -7
  159. package/dist/Dropzone/UploadProgress.js.map +1 -1
  160. package/dist/Dropzone/index.js +14 -15
  161. package/dist/Dropzone/index.js.map +1 -1
  162. package/dist/Dropzone/messages.d.ts +53 -0
  163. package/dist/Dropzone/messages.js +12 -13
  164. package/dist/Dropzone/messages.js.map +1 -0
  165. package/dist/Fade/index.js.map +1 -1
  166. package/dist/Form/FormAutosuggest.js +18 -20
  167. package/dist/Form/FormAutosuggest.js.map +1 -1
  168. package/dist/Form/FormAutosuggestOption.js +6 -7
  169. package/dist/Form/FormAutosuggestOption.js.map +1 -1
  170. package/dist/Form/FormCheckbox.js +16 -18
  171. package/dist/Form/FormCheckbox.js.map +1 -1
  172. package/dist/Form/FormCheckboxSet.js +11 -12
  173. package/dist/Form/FormCheckboxSet.js.map +1 -1
  174. package/dist/Form/FormCheckboxSetContext.js +9 -10
  175. package/dist/Form/FormCheckboxSetContext.js.map +1 -1
  176. package/dist/Form/FormControl.js +12 -13
  177. package/dist/Form/FormControl.js.map +1 -1
  178. package/dist/Form/FormControlDecorator.js +4 -5
  179. package/dist/Form/FormControlDecorator.js.map +1 -1
  180. package/dist/Form/FormControlDecoratorGroup.js +8 -9
  181. package/dist/Form/FormControlDecoratorGroup.js.map +1 -1
  182. package/dist/Form/FormControlFeedback.js +4 -5
  183. package/dist/Form/FormControlFeedback.js.map +1 -1
  184. package/dist/Form/FormControlFloatingLabel.js +3 -4
  185. package/dist/Form/FormControlFloatingLabel.js.map +1 -1
  186. package/dist/Form/FormControlSet.js +7 -8
  187. package/dist/Form/FormControlSet.js.map +1 -1
  188. package/dist/Form/FormGroup.js +9 -10
  189. package/dist/Form/FormGroup.js.map +1 -1
  190. package/dist/Form/FormGroupContext.js +7 -8
  191. package/dist/Form/FormGroupContext.js.map +1 -1
  192. package/dist/Form/FormLabel.d.ts +2 -11
  193. package/dist/Form/FormLabel.js +5 -15
  194. package/dist/Form/FormLabel.js.map +1 -1
  195. package/dist/Form/FormRadio.js +28 -31
  196. package/dist/Form/FormRadio.js.map +1 -1
  197. package/dist/Form/FormRadioSet.js +11 -12
  198. package/dist/Form/FormRadioSet.js.map +1 -1
  199. package/dist/Form/FormRadioSetContext.js +9 -10
  200. package/dist/Form/FormRadioSetContext.js.map +1 -1
  201. package/dist/Form/FormSwitch.js +25 -29
  202. package/dist/Form/FormSwitch.js.map +1 -1
  203. package/dist/Form/FormText.js +16 -19
  204. package/dist/Form/FormText.js.map +1 -1
  205. package/dist/Form/fieldUtils.js +11 -22
  206. package/dist/Form/fieldUtils.js.map +1 -1
  207. package/dist/Form/useCheckboxSetValues.js +1 -2
  208. package/dist/Form/useCheckboxSetValues.js.map +1 -1
  209. package/dist/Hyperlink/index.js +17 -21
  210. package/dist/Hyperlink/index.js.map +1 -1
  211. package/dist/Icon/index.js +10 -11
  212. package/dist/Icon/index.js.map +1 -1
  213. package/dist/IconButton/index.d.ts +8 -304
  214. package/dist/IconButton/index.js +21 -84
  215. package/dist/IconButton/index.js.map +1 -1
  216. package/dist/IconButtonToggle/index.js +5 -6
  217. package/dist/IconButtonToggle/index.js.map +1 -1
  218. package/dist/Image/index.js.map +1 -1
  219. package/dist/Layout/index.js +4 -5
  220. package/dist/Layout/index.js.map +1 -1
  221. package/dist/Media/index.js.map +1 -1
  222. package/dist/Menu/MenuItem.js +8 -9
  223. package/dist/Menu/MenuItem.js.map +1 -1
  224. package/dist/Menu/SelectMenu.js +8 -9
  225. package/dist/Menu/SelectMenu.js.map +1 -1
  226. package/dist/Menu/index.js +6 -7
  227. package/dist/Menu/index.js.map +1 -1
  228. package/dist/Modal/AlertModal.js +6 -7
  229. package/dist/Modal/AlertModal.js.map +1 -1
  230. package/dist/Modal/FullscreenModal.js +7 -8
  231. package/dist/Modal/FullscreenModal.js.map +1 -1
  232. package/dist/Modal/MarketingModal.js +9 -10
  233. package/dist/Modal/MarketingModal.js.map +1 -1
  234. package/dist/Modal/ModalCloseButton.js +5 -6
  235. package/dist/Modal/ModalCloseButton.js.map +1 -1
  236. package/dist/Modal/ModalContext.js +6 -7
  237. package/dist/Modal/ModalContext.js.map +1 -1
  238. package/dist/Modal/ModalDialog.js +16 -17
  239. package/dist/Modal/ModalDialog.js.map +1 -1
  240. package/dist/Modal/ModalDialogBody.js +5 -6
  241. package/dist/Modal/ModalDialogBody.js.map +1 -1
  242. package/dist/Modal/ModalDialogFooter.js +5 -6
  243. package/dist/Modal/ModalDialogFooter.js.map +1 -1
  244. package/dist/Modal/ModalDialogHeader.js +9 -12
  245. package/dist/Modal/ModalDialogHeader.js.map +1 -1
  246. package/dist/Modal/ModalDialogHero.js +5 -6
  247. package/dist/Modal/ModalDialogHero.js.map +1 -1
  248. package/dist/Modal/ModalDialogHeroBackground.js +6 -7
  249. package/dist/Modal/ModalDialogHeroBackground.js.map +1 -1
  250. package/dist/Modal/ModalDialogHeroContent.js +5 -6
  251. package/dist/Modal/ModalDialogHeroContent.js.map +1 -1
  252. package/dist/Modal/ModalDialogTitle.js +5 -6
  253. package/dist/Modal/ModalDialogTitle.js.map +1 -1
  254. package/dist/Modal/ModalLayer.js +13 -16
  255. package/dist/Modal/ModalLayer.js.map +1 -1
  256. package/dist/Modal/ModalPopup.js +11 -12
  257. package/dist/Modal/ModalPopup.js.map +1 -1
  258. package/dist/Modal/PopperElement.js +7 -8
  259. package/dist/Modal/PopperElement.js.map +1 -1
  260. package/dist/Modal/StandardModal.js +7 -8
  261. package/dist/Modal/StandardModal.js.map +1 -1
  262. package/dist/OverflowScroll/OverflowScroll.js +12 -13
  263. package/dist/OverflowScroll/OverflowScroll.js.map +1 -1
  264. package/dist/OverflowScroll/OverflowScrollItems.js +3 -4
  265. package/dist/OverflowScroll/OverflowScrollItems.js.map +1 -1
  266. package/dist/Overlay/index.d.ts +2 -2
  267. package/dist/PageBanner/index.js +9 -10
  268. package/dist/PageBanner/index.js.map +1 -1
  269. package/dist/Pagination/PaginationContext.js +12 -13
  270. package/dist/Pagination/PaginationContext.js.map +1 -1
  271. package/dist/Pagination/subcomponents/PageButton.js +3 -4
  272. package/dist/Pagination/subcomponents/PageButton.js.map +1 -1
  273. package/dist/Popover/index.js +11 -14
  274. package/dist/Popover/index.js.map +1 -1
  275. package/dist/ProductTour/Checkpoint.js +12 -13
  276. package/dist/ProductTour/Checkpoint.js.map +1 -1
  277. package/dist/ProductTour/CheckpointActionRow.js +10 -11
  278. package/dist/ProductTour/CheckpointActionRow.js.map +1 -1
  279. package/dist/ProductTour/CheckpointBody.js +3 -4
  280. package/dist/ProductTour/CheckpointBody.js.map +1 -1
  281. package/dist/ProductTour/CheckpointHeader.js +7 -8
  282. package/dist/ProductTour/CheckpointHeader.js.map +1 -1
  283. package/dist/ProductTour/CheckpointTitle.js +6 -9
  284. package/dist/ProductTour/CheckpointTitle.js.map +1 -1
  285. package/dist/ProductTour/index.js +3 -4
  286. package/dist/ProductTour/index.js.map +1 -1
  287. package/dist/ProductTour/messages.d.ts +23 -0
  288. package/dist/ProductTour/messages.js +6 -7
  289. package/dist/ProductTour/messages.js.map +1 -0
  290. package/dist/ProgressBar/index.js +11 -12
  291. package/dist/ProgressBar/index.js.map +1 -1
  292. package/dist/ResponsiveEmbed/index.js.map +1 -1
  293. package/dist/Scrollable/index.js +4 -5
  294. package/dist/Scrollable/index.js.map +1 -1
  295. package/dist/SearchField/SearchFieldLabel.js +4 -5
  296. package/dist/SearchField/SearchFieldLabel.js.map +1 -1
  297. package/dist/SelectableBox/SelectableBoxSet.js +13 -14
  298. package/dist/SelectableBox/SelectableBoxSet.js.map +1 -1
  299. package/dist/SelectableBox/index.js +14 -15
  300. package/dist/SelectableBox/index.js.map +1 -1
  301. package/dist/Skeleton/index.js.map +1 -1
  302. package/dist/Spinner/index.js +5 -6
  303. package/dist/Spinner/index.js.map +1 -1
  304. package/dist/Stack/index.js +12 -15
  305. package/dist/Stack/index.js.map +1 -1
  306. package/dist/StatefulButton/index.js +9 -10
  307. package/dist/StatefulButton/index.js.map +1 -1
  308. package/dist/Stepper/Stepper.js +4 -5
  309. package/dist/Stepper/Stepper.js.map +1 -1
  310. package/dist/Stepper/StepperActionRow.js +6 -7
  311. package/dist/Stepper/StepperActionRow.js.map +1 -1
  312. package/dist/Stepper/StepperContext.js +4 -5
  313. package/dist/Stepper/StepperContext.js.map +1 -1
  314. package/dist/Stepper/StepperHeader.js +23 -31
  315. package/dist/Stepper/StepperHeader.js.map +1 -1
  316. package/dist/Stepper/StepperHeaderStep.js +8 -9
  317. package/dist/Stepper/StepperHeaderStep.js.map +1 -1
  318. package/dist/Stepper/StepperStep.js +10 -11
  319. package/dist/Stepper/StepperStep.js.map +1 -1
  320. package/dist/Sticky/index.js +8 -12
  321. package/dist/Sticky/index.js.map +1 -1
  322. package/dist/Tabs/index.js +8 -9
  323. package/dist/Tabs/index.js.map +1 -1
  324. package/dist/Toast/ToastContainer.js +3 -4
  325. package/dist/Toast/ToastContainer.js.map +1 -1
  326. package/dist/Toast/index.d.ts +20 -41
  327. package/dist/Toast/index.js +11 -48
  328. package/dist/Toast/index.js.map +1 -1
  329. package/dist/ToggleButton/index.js.map +1 -1
  330. package/dist/Tooltip/index.js +11 -14
  331. package/dist/Tooltip/index.js.map +1 -1
  332. package/dist/Truncate/index.js +9 -10
  333. package/dist/Truncate/index.js.map +1 -1
  334. package/dist/asInput/index.js +9 -13
  335. package/dist/asInput/index.js.map +1 -1
  336. package/dist/hooks/useArrowKeyNavigationHook.js +17 -21
  337. package/dist/hooks/useArrowKeyNavigationHook.js.map +1 -1
  338. package/dist/hooks/useIsVisibleHook.js +4 -6
  339. package/dist/hooks/useIsVisibleHook.js.map +1 -1
  340. package/dist/hooks/useToggleHook.js +1 -3
  341. package/dist/hooks/useToggleHook.js.map +1 -1
  342. package/dist/index.d.ts +4 -4
  343. package/dist/index.js +4 -8
  344. package/dist/index.js.map +1 -1
  345. package/dist/utils/newId.js +1 -2
  346. package/dist/utils/newId.js.map +1 -1
  347. package/package.json +1 -1
  348. package/src/ActionRow/{index.jsx → index.tsx} +14 -22
  349. package/src/Annotation/{index.jsx → index.tsx} +15 -22
  350. package/src/Avatar/{index.jsx → index.tsx} +13 -19
  351. package/src/AvatarButton/{index.jsx → index.tsx} +23 -31
  352. package/src/Button/index.tsx +68 -93
  353. package/src/Chip/index.tsx +26 -59
  354. package/src/CloseButton/index.tsx +1 -0
  355. package/src/Collapse/index.tsx +1 -0
  356. package/src/Fade/index.tsx +1 -0
  357. package/src/Form/FormLabel.tsx +2 -10
  358. package/src/IconButton/index.tsx +17 -81
  359. package/src/Image/index.tsx +2 -0
  360. package/src/Media/index.tsx +1 -0
  361. package/src/Modal/modal-popup.mdx +1 -1
  362. package/src/ResponsiveEmbed/index.tsx +1 -0
  363. package/src/Skeleton/index.tsx +1 -0
  364. package/src/Toast/index.tsx +21 -40
  365. package/src/ToggleButton/index.tsx +2 -0
  366. package/src/index.ts +4 -8
  367. /package/{src/CloseButton/index.jsx → dist/CloseButton/index.d.ts} +0 -0
  368. /package/{src/Collapse/index.jsx → dist/Collapse/index.d.ts} +0 -0
  369. /package/{src/Fade/index.jsx → dist/Fade/index.d.ts} +0 -0
  370. /package/{src/Image/index.jsx → dist/Image/index.d.ts} +0 -0
  371. /package/{src/Media/index.jsx → dist/Media/index.d.ts} +0 -0
  372. /package/{src/ResponsiveEmbed/index.jsx → dist/ResponsiveEmbed/index.d.ts} +0 -0
  373. /package/{src/Skeleton/index.jsx → dist/Skeleton/index.d.ts} +0 -0
  374. /package/{src/ToggleButton/index.jsx → dist/ToggleButton/index.d.ts} +0 -0
  375. /package/src/Card/CardCarousel/{messages.js → messages.ts} +0 -0
  376. /package/src/ChipCarousel/{messages.js → messages.ts} +0 -0
  377. /package/src/DataTable/{messages.js → messages.ts} +0 -0
  378. /package/src/Dropzone/{messages.js → messages.ts} +0 -0
  379. /package/src/ProductTour/{messages.js → messages.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","forwardRef","PropTypes","classNames","defineMessages","useIntl","Launch","Icon","customPropTypeRequirement","messages","externalLinkAltText","id","defaultMessage","externalLinkTitle","Hyperlink","_ref","ref","as","Component","className","destination","children","target","onClick","externalLinkAlternativeText","variant","isInline","showLaunchIcon","attrs","intl","externalLinkIcon","generateRel","rel","includes","createElement","title","formatMessage","src","screenReaderText","style","height","width","additionalProps","href","propTypes","elementType","string","_ref2","node","isRequired","oneOf","func","bool","defaultProps","undefined","displayName"],"sources":["../../src/Hyperlink/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport {\n type BsPrefixRefForwardingComponent as ComponentWithAsProp,\n type BsPrefixProps,\n} from 'react-bootstrap/esm/helpers';\nimport { defineMessages, useIntl } from 'react-intl';\nimport { Launch } from '../../icons';\nimport Icon from '../Icon';\n// @ts-ignore\nimport { customPropTypeRequirement } from '../utils/propTypes/utils';\n\nexport interface HyperlinkProps extends BsPrefixProps, Omit<React.ComponentPropsWithRef<'a'>, 'href' | 'target'> {\n /** specifies the URL */\n destination?: string;\n /** Content of the hyperlink */\n children: React.ReactNode;\n /** Custom class names for the hyperlink */\n className?: string;\n /** Alt text for the icon indicating that this link opens in a new tab, if target=\"_blank\". e.g. _(\"in a new tab\") */\n externalLinkAlternativeText?: string;\n /** Tooltip text for the \"opens in new tab\" icon, if target=\"_blank\". e.g. _(\"Opens in a new tab\"). */\n externalLinkTitle?: string;\n /** type of hyperlink */\n variant?: 'default' | 'muted' | 'brand';\n /** Display the link with an underline. By default, it is only underlined on hover. */\n isInline?: boolean;\n /** specify if we need to show launch Icon. By default, it will be visible. */\n showLaunchIcon?: boolean;\n /** specifies where the link should open. The default behavior is `_self`, which means that the URL will be\n * loaded into the same browsing context as the current one.\n * If the target is `_blank` (opening a new window) `rel='noopener'` will be added to the anchor tag to prevent\n * any potential [reverse tabnabbing attack](https://www.owasp.org/index.php/Reverse_Tabnabbing).\n */\n target?: '_blank' | '_self';\n}\n\nexport type HyperlinkType = ComponentWithAsProp<'a', HyperlinkProps>;\n\nconst messages = defineMessages({\n externalLinkAltText: {\n id: 'Hyperlink.externalLinkAltText',\n defaultMessage: 'in a new tab',\n },\n externalLinkTitle: {\n id: 'Hyperlink.externalLinkTitle',\n defaultMessage: 'Opens in a new tab',\n },\n});\n\nconst Hyperlink = forwardRef<HTMLAnchorElement, HyperlinkProps>(({\n as: Component = 'a',\n className,\n destination,\n children,\n target = '_self',\n onClick,\n externalLinkAlternativeText,\n externalLinkTitle,\n variant = 'default',\n isInline = false,\n showLaunchIcon = true,\n ...attrs\n}, ref) => {\n const intl = useIntl();\n let externalLinkIcon;\n\n if (target === '_blank') {\n const generateRel = () => {\n let { rel } = attrs;\n if (!rel) {\n return 'noopener noreferrer';\n }\n if (!rel.includes('noopener')) {\n rel += ' noopener';\n }\n if (!rel.includes('noreferrer')) {\n rel += ' noreferrer';\n }\n return rel;\n };\n\n // Add this rel attribute to prevent Reverse Tabnabbing\n attrs.rel = generateRel();\n if (showLaunchIcon) {\n externalLinkIcon = (\n <span\n className=\"pgn__hyperlink__external-icon\"\n title={externalLinkTitle || intl.formatMessage(messages.externalLinkTitle)}\n >\n <Icon\n src={Launch}\n screenReaderText={externalLinkAlternativeText || intl.formatMessage(messages.externalLinkAltText)}\n style={{ height: '1em', width: '1em' }}\n data-testid=\"hyperlink-icon\"\n />\n </span>\n );\n }\n }\n\n const additionalProps: Record<string, any> = { ...attrs };\n if (destination) {\n additionalProps.href = destination;\n }\n\n return (\n <Component\n ref={ref}\n className={classNames(\n 'pgn__hyperlink',\n `${variant}-link`,\n {\n 'standalone-link': !isInline,\n 'inline-link': isInline,\n },\n className,\n )}\n target={target}\n onClick={onClick}\n {...additionalProps}\n >\n {children}\n {externalLinkIcon}\n </Component>\n );\n});\n\nHyperlink.propTypes = {\n /** specifies the component element type to render for the hyperlink */\n // @ts-ignore\n as: PropTypes.elementType,\n /** specifies the URL; required iff `as` prop is a standard anchor tag */\n destination: customPropTypeRequirement(\n PropTypes.string,\n ({ as }: { as: React.ElementType }) => as && as === 'a',\n // \"[`destination` is required when]...\"\n 'the `as` prop is a standard anchor element (i.e., \"a\")',\n ),\n /** Content of the hyperlink */\n // @ts-ignore\n children: PropTypes.node.isRequired,\n /** Custom class names for the hyperlink */\n className: PropTypes.string,\n /** specifies where the link should open. The default behavior is `_self`, which means that the URL will be\n * loaded into the same browsing context as the current one.\n * If the target is `_blank` (opening a new window) `rel='noopener'` will be added to the anchor tag to prevent\n * any potential [reverse tabnabbing attack](https://www.owasp.org/index.php/Reverse_Tabnabbing).\n */\n target: PropTypes.oneOf(['_blank', '_self']),\n /** specifies the callback function when the link is clicked */\n onClick: PropTypes.func,\n /** Alt text for the icon indicating that this link opens in a new tab, if target=\"_blank\". e.g. _(\"in a new tab\") */\n externalLinkAlternativeText: PropTypes.string,\n /** Tooltip text for the \"opens in new tab\" icon, if target=\"_blank\". e.g. _(\"Opens in a new tab\"). */\n externalLinkTitle: PropTypes.string,\n /** type of hyperlink */\n variant: PropTypes.oneOf(['default', 'muted', 'brand']),\n /** Display the link with an underline. By default, it is only underlined on hover. */\n isInline: PropTypes.bool,\n /** specify if we need to show launch Icon. By default, it will be visible. */\n showLaunchIcon: PropTypes.bool,\n};\n\nHyperlink.defaultProps = {\n as: 'a',\n className: undefined,\n destination: undefined,\n externalLinkAlternativeText: undefined,\n externalLinkTitle: undefined,\n isInline: false,\n onClick: undefined,\n showLaunchIcon: true,\n target: '_self',\n variant: 'default',\n};\n\nHyperlink.displayName = 'Hyperlink';\n\nexport default Hyperlink;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","forwardRef","PropTypes","classNames","defineMessages","useIntl","Launch","Icon","customPropTypeRequirement","messages","externalLinkAltText","id","defaultMessage","externalLinkTitle","Hyperlink","as","Component","className","destination","children","target","onClick","externalLinkAlternativeText","variant","isInline","showLaunchIcon","attrs","ref","intl","externalLinkIcon","generateRel","rel","includes","createElement","title","formatMessage","src","screenReaderText","style","height","width","additionalProps","href","propTypes","elementType","string","node","isRequired","oneOf","func","bool","defaultProps","undefined","displayName"],"sources":["../../src/Hyperlink/index.tsx"],"sourcesContent":["import React, { forwardRef } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport {\n type BsPrefixRefForwardingComponent as ComponentWithAsProp,\n type BsPrefixProps,\n} from 'react-bootstrap/esm/helpers';\nimport { defineMessages, useIntl } from 'react-intl';\nimport { Launch } from '../../icons';\nimport Icon from '../Icon';\n// @ts-ignore\nimport { customPropTypeRequirement } from '../utils/propTypes/utils';\n\nexport interface HyperlinkProps extends BsPrefixProps, Omit<React.ComponentPropsWithRef<'a'>, 'href' | 'target'> {\n /** specifies the URL */\n destination?: string;\n /** Content of the hyperlink */\n children: React.ReactNode;\n /** Custom class names for the hyperlink */\n className?: string;\n /** Alt text for the icon indicating that this link opens in a new tab, if target=\"_blank\". e.g. _(\"in a new tab\") */\n externalLinkAlternativeText?: string;\n /** Tooltip text for the \"opens in new tab\" icon, if target=\"_blank\". e.g. _(\"Opens in a new tab\"). */\n externalLinkTitle?: string;\n /** type of hyperlink */\n variant?: 'default' | 'muted' | 'brand';\n /** Display the link with an underline. By default, it is only underlined on hover. */\n isInline?: boolean;\n /** specify if we need to show launch Icon. By default, it will be visible. */\n showLaunchIcon?: boolean;\n /** specifies where the link should open. The default behavior is `_self`, which means that the URL will be\n * loaded into the same browsing context as the current one.\n * If the target is `_blank` (opening a new window) `rel='noopener'` will be added to the anchor tag to prevent\n * any potential [reverse tabnabbing attack](https://www.owasp.org/index.php/Reverse_Tabnabbing).\n */\n target?: '_blank' | '_self';\n}\n\nexport type HyperlinkType = ComponentWithAsProp<'a', HyperlinkProps>;\n\nconst messages = defineMessages({\n externalLinkAltText: {\n id: 'Hyperlink.externalLinkAltText',\n defaultMessage: 'in a new tab',\n },\n externalLinkTitle: {\n id: 'Hyperlink.externalLinkTitle',\n defaultMessage: 'Opens in a new tab',\n },\n});\n\nconst Hyperlink = forwardRef<HTMLAnchorElement, HyperlinkProps>(({\n as: Component = 'a',\n className,\n destination,\n children,\n target = '_self',\n onClick,\n externalLinkAlternativeText,\n externalLinkTitle,\n variant = 'default',\n isInline = false,\n showLaunchIcon = true,\n ...attrs\n}, ref) => {\n const intl = useIntl();\n let externalLinkIcon;\n\n if (target === '_blank') {\n const generateRel = () => {\n let { rel } = attrs;\n if (!rel) {\n return 'noopener noreferrer';\n }\n if (!rel.includes('noopener')) {\n rel += ' noopener';\n }\n if (!rel.includes('noreferrer')) {\n rel += ' noreferrer';\n }\n return rel;\n };\n\n // Add this rel attribute to prevent Reverse Tabnabbing\n attrs.rel = generateRel();\n if (showLaunchIcon) {\n externalLinkIcon = (\n <span\n className=\"pgn__hyperlink__external-icon\"\n title={externalLinkTitle || intl.formatMessage(messages.externalLinkTitle)}\n >\n <Icon\n src={Launch}\n screenReaderText={externalLinkAlternativeText || intl.formatMessage(messages.externalLinkAltText)}\n style={{ height: '1em', width: '1em' }}\n data-testid=\"hyperlink-icon\"\n />\n </span>\n );\n }\n }\n\n const additionalProps: Record<string, any> = { ...attrs };\n if (destination) {\n additionalProps.href = destination;\n }\n\n return (\n <Component\n ref={ref}\n className={classNames(\n 'pgn__hyperlink',\n `${variant}-link`,\n {\n 'standalone-link': !isInline,\n 'inline-link': isInline,\n },\n className,\n )}\n target={target}\n onClick={onClick}\n {...additionalProps}\n >\n {children}\n {externalLinkIcon}\n </Component>\n );\n});\n\nHyperlink.propTypes = {\n /** specifies the component element type to render for the hyperlink */\n // @ts-ignore\n as: PropTypes.elementType,\n /** specifies the URL; required iff `as` prop is a standard anchor tag */\n destination: customPropTypeRequirement(\n PropTypes.string,\n ({ as }: { as: React.ElementType }) => as && as === 'a',\n // \"[`destination` is required when]...\"\n 'the `as` prop is a standard anchor element (i.e., \"a\")',\n ),\n /** Content of the hyperlink */\n // @ts-ignore\n children: PropTypes.node.isRequired,\n /** Custom class names for the hyperlink */\n className: PropTypes.string,\n /** specifies where the link should open. The default behavior is `_self`, which means that the URL will be\n * loaded into the same browsing context as the current one.\n * If the target is `_blank` (opening a new window) `rel='noopener'` will be added to the anchor tag to prevent\n * any potential [reverse tabnabbing attack](https://www.owasp.org/index.php/Reverse_Tabnabbing).\n */\n target: PropTypes.oneOf(['_blank', '_self']),\n /** specifies the callback function when the link is clicked */\n onClick: PropTypes.func,\n /** Alt text for the icon indicating that this link opens in a new tab, if target=\"_blank\". e.g. _(\"in a new tab\") */\n externalLinkAlternativeText: PropTypes.string,\n /** Tooltip text for the \"opens in new tab\" icon, if target=\"_blank\". e.g. _(\"Opens in a new tab\"). */\n externalLinkTitle: PropTypes.string,\n /** type of hyperlink */\n variant: PropTypes.oneOf(['default', 'muted', 'brand']),\n /** Display the link with an underline. By default, it is only underlined on hover. */\n isInline: PropTypes.bool,\n /** specify if we need to show launch Icon. By default, it will be visible. */\n showLaunchIcon: PropTypes.bool,\n};\n\nHyperlink.defaultProps = {\n as: 'a',\n className: undefined,\n destination: undefined,\n externalLinkAlternativeText: undefined,\n externalLinkTitle: undefined,\n isInline: false,\n onClick: undefined,\n showLaunchIcon: true,\n target: '_self',\n variant: 'default',\n};\n\nHyperlink.displayName = 'Hyperlink';\n\nexport default Hyperlink;\n"],"mappings":"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","ignoreList":[]}
@@ -11,17 +11,16 @@ import withDeprecatedProps, { DeprTypes } from '../withDeprecatedProps';
11
11
  * - focusable is set to false on the svg in all cases as a workaround for an ie11 bug
12
12
  */
13
13
 
14
- function Icon(_ref) {
15
- let {
16
- src: Component,
17
- id,
18
- className,
19
- hidden,
20
- screenReaderText,
21
- svgAttrs,
22
- size,
23
- ...attrs
24
- } = _ref;
14
+ function Icon({
15
+ src: Component,
16
+ id,
17
+ className,
18
+ hidden,
19
+ screenReaderText,
20
+ svgAttrs,
21
+ size,
22
+ ...attrs
23
+ }) {
25
24
  if (Component) {
26
25
  // If no aria label is specified, hide this icon from screenreaders
27
26
  const hasAriaLabel = svgAttrs['aria-label'] || svgAttrs['aria-labelledby'];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","PropTypes","classNames","newId","withDeprecatedProps","DeprTypes","Icon","_ref","src","Component","id","className","hidden","screenReaderText","svgAttrs","size","attrs","hasAriaLabel","mergedSvgProps","undefined","createElement","role","focusable","Fragment","propTypes","elementType","shape","string","oneOf","bool","oneOfType","element","defaultProps","deprType","FORMAT","expect","value","transform","Array","isArray","join","message"],"sources":["../../src/Icon/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nimport newId from '../utils/newId';\nimport withDeprecatedProps, { DeprTypes } from '../withDeprecatedProps';\n\n/**\n * An svg with an \"img\" role must satisfy the following a11y requirements\n * - It needs a text alternative in the form of aria-label, aria-labelledby, or screen-reader only text.\n * - If no label is desired, aria-label will be set to an empty string and aria-hidden to \"true\".\n * - focusable is set to false on the svg in all cases as a workaround for an ie11 bug\n */\n\nfunction Icon({\n src: Component,\n id,\n className,\n hidden,\n screenReaderText,\n svgAttrs,\n size,\n ...attrs\n}) {\n if (Component) {\n // If no aria label is specified, hide this icon from screenreaders\n const hasAriaLabel = svgAttrs['aria-label'] || svgAttrs['aria-labelledby'];\n\n const mergedSvgProps = { ...svgAttrs };\n\n if (!hasAriaLabel) {\n mergedSvgProps['aria-label'] = undefined;\n mergedSvgProps['aria-hidden'] = true;\n }\n\n return (\n <span\n className={classNames('pgn__icon', { [`pgn__icon__${size}`]: !!size }, className)}\n id={id}\n {...attrs}\n >\n <Component\n role=\"img\"\n focusable={false}\n {...mergedSvgProps}\n />\n {screenReaderText && (\n <span className=\"sr-only\">\n {screenReaderText}\n </span>\n )}\n </span>\n );\n }\n\n return (\n <>\n <span\n id={id || newId('Icon')}\n className={className}\n aria-hidden={hidden}\n />\n {screenReaderText && (\n <span className=\"sr-only\">\n {screenReaderText}\n </span>\n )}\n </>\n );\n}\n\nIcon.propTypes = {\n /**\n * An icon component to render.\n * Example import of a Paragon icon component: `import { Check } from '@openedx/paragon/icons';`\n */\n src: PropTypes.elementType,\n /** HTML element attributes to pass through to the underlying svg element */\n svgAttrs: PropTypes.shape({\n 'aria-label': PropTypes.string,\n 'aria-labelledby': PropTypes.string,\n }),\n /**\n * the `id` property of the Icon element, by default this value is generated\n * with the `newId` function with the `prefix` of `Icon`.\n */\n id: PropTypes.string,\n /** The size of the icon. */\n size: PropTypes.oneOf(['xs', 'sm', 'md', 'lg']),\n /** A class name that will define what the Icon looks like. */\n className: PropTypes.string,\n /**\n * a boolean that determines the value of `aria-hidden` attribute on the Icon span,\n * this value is `true` by default.\n */\n hidden: PropTypes.bool,\n /**\n * a string or an element that will be used on a secondary span leveraging the `sr-only` style\n * for screenreader only text, this value is `undefined` by default. This value is recommended for use unless\n * the Icon is being used in a way that is purely decorative or provides no additional context for screen\n * reader users. This field should be thought of the same way an `alt` attribute would be used for `image` tags.\n */\n screenReaderText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n};\n\nIcon.defaultProps = {\n src: null,\n svgAttrs: {},\n id: undefined,\n hidden: true,\n screenReaderText: undefined,\n size: undefined,\n className: undefined,\n};\n\nexport default withDeprecatedProps(Icon, 'Icon', {\n className: {\n deprType: DeprTypes.FORMAT,\n expect: value => typeof value === 'string',\n transform: value => (Array.isArray(value) ? value.join(' ') : value),\n message: 'It should be a string.',\n },\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","PropTypes","classNames","newId","withDeprecatedProps","DeprTypes","Icon","src","Component","id","className","hidden","screenReaderText","svgAttrs","size","attrs","hasAriaLabel","mergedSvgProps","undefined","createElement","role","focusable","Fragment","propTypes","elementType","shape","string","oneOf","bool","oneOfType","element","defaultProps","deprType","FORMAT","expect","value","transform","Array","isArray","join","message"],"sources":["../../src/Icon/index.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\n\nimport newId from '../utils/newId';\nimport withDeprecatedProps, { DeprTypes } from '../withDeprecatedProps';\n\n/**\n * An svg with an \"img\" role must satisfy the following a11y requirements\n * - It needs a text alternative in the form of aria-label, aria-labelledby, or screen-reader only text.\n * - If no label is desired, aria-label will be set to an empty string and aria-hidden to \"true\".\n * - focusable is set to false on the svg in all cases as a workaround for an ie11 bug\n */\n\nfunction Icon({\n src: Component,\n id,\n className,\n hidden,\n screenReaderText,\n svgAttrs,\n size,\n ...attrs\n}) {\n if (Component) {\n // If no aria label is specified, hide this icon from screenreaders\n const hasAriaLabel = svgAttrs['aria-label'] || svgAttrs['aria-labelledby'];\n\n const mergedSvgProps = { ...svgAttrs };\n\n if (!hasAriaLabel) {\n mergedSvgProps['aria-label'] = undefined;\n mergedSvgProps['aria-hidden'] = true;\n }\n\n return (\n <span\n className={classNames('pgn__icon', { [`pgn__icon__${size}`]: !!size }, className)}\n id={id}\n {...attrs}\n >\n <Component\n role=\"img\"\n focusable={false}\n {...mergedSvgProps}\n />\n {screenReaderText && (\n <span className=\"sr-only\">\n {screenReaderText}\n </span>\n )}\n </span>\n );\n }\n\n return (\n <>\n <span\n id={id || newId('Icon')}\n className={className}\n aria-hidden={hidden}\n />\n {screenReaderText && (\n <span className=\"sr-only\">\n {screenReaderText}\n </span>\n )}\n </>\n );\n}\n\nIcon.propTypes = {\n /**\n * An icon component to render.\n * Example import of a Paragon icon component: `import { Check } from '@openedx/paragon/icons';`\n */\n src: PropTypes.elementType,\n /** HTML element attributes to pass through to the underlying svg element */\n svgAttrs: PropTypes.shape({\n 'aria-label': PropTypes.string,\n 'aria-labelledby': PropTypes.string,\n }),\n /**\n * the `id` property of the Icon element, by default this value is generated\n * with the `newId` function with the `prefix` of `Icon`.\n */\n id: PropTypes.string,\n /** The size of the icon. */\n size: PropTypes.oneOf(['xs', 'sm', 'md', 'lg']),\n /** A class name that will define what the Icon looks like. */\n className: PropTypes.string,\n /**\n * a boolean that determines the value of `aria-hidden` attribute on the Icon span,\n * this value is `true` by default.\n */\n hidden: PropTypes.bool,\n /**\n * a string or an element that will be used on a secondary span leveraging the `sr-only` style\n * for screenreader only text, this value is `undefined` by default. This value is recommended for use unless\n * the Icon is being used in a way that is purely decorative or provides no additional context for screen\n * reader users. This field should be thought of the same way an `alt` attribute would be used for `image` tags.\n */\n screenReaderText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n};\n\nIcon.defaultProps = {\n src: null,\n svgAttrs: {},\n id: undefined,\n hidden: true,\n screenReaderText: undefined,\n size: undefined,\n className: undefined,\n};\n\nexport default withDeprecatedProps(Icon, 'Icon', {\n className: {\n deprType: DeprTypes.FORMAT,\n expect: value => typeof value === 'string',\n transform: value => (Array.isArray(value) ? value.join(' ') : value),\n message: 'It should be a string.',\n },\n});\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import { type Placement } from 'react-bootstrap/Overlay';
4
3
  interface Props extends React.HTMLAttributes<HTMLButtonElement> {
4
+ /** Component that renders the icon, currently defaults to `Icon` */
5
5
  iconAs?: React.ComponentType<any>;
6
6
  /** Additional CSS class[es] to apply to this button */
7
7
  className?: string;
@@ -19,7 +19,7 @@ interface Props extends React.HTMLAttributes<HTMLButtonElement> {
19
19
  iconClassNames?: string;
20
20
  /** Click handler for the button */
21
21
  onClick?: React.MouseEventHandler<HTMLButtonElement>;
22
- /** whether to show the `IconButton` in an active state, whose styling is distinct from default state */
22
+ /** Whether to show the `IconButton` in an active state, whose styling is distinct from default state */
23
23
  isActive?: boolean;
24
24
  /** @deprecated Using FontAwesome icons is deprecated. Instead, pass iconAs={Icon} src={...} */
25
25
  icon?: {
@@ -27,319 +27,23 @@ interface Props extends React.HTMLAttributes<HTMLButtonElement> {
27
27
  iconName?: string;
28
28
  icon?: any[];
29
29
  };
30
- /** Type of button (uses Bootstrap options) */
30
+ /** Type of button (uses Bootstrap options). */
31
31
  variant?: 'primary' | 'secondary' | 'success' | 'warning' | 'danger' | 'light' | 'dark' | 'black' | 'brand';
32
- /** size of button to render */
32
+ /** Size of button to render */
33
33
  size?: 'sm' | 'md' | 'inline';
34
- /** no children */
34
+ /** No children */
35
35
  children?: never;
36
36
  }
37
37
  interface PropsWithTooltip extends Props {
38
- /** choose from https://popper.js.org/docs/v2/constructors/#options */
39
- tooltipPlacement: Placement;
40
- /** any content to pass to tooltip content area */
38
+ /** Tooltip placement can be top, left, right etc, choose from https://popper.js.org/docs/v2/constructors/#options */
39
+ tooltipPlacement?: Placement;
40
+ /** Any content to pass to tooltip content area */
41
41
  tooltipContent: React.ReactNode;
42
42
  }
43
43
  /**
44
44
  * An icon button wrapped in overlaytrigger to display a tooltip.
45
45
  */
46
46
  declare function IconButtonWithTooltip({ tooltipPlacement, tooltipContent, ...props }: PropsWithTooltip): import("react/jsx-runtime").JSX.Element;
47
- declare namespace IconButtonWithTooltip {
48
- var defaultProps: {
49
- tooltipPlacement: string;
50
- iconAs?: React.ComponentType<any> | undefined;
51
- className?: string | undefined;
52
- alt?: string | undefined;
53
- invertColors?: boolean | undefined;
54
- src?: React.ComponentType<{}> | undefined;
55
- iconClassNames?: string | undefined;
56
- onClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
57
- isActive?: boolean | undefined;
58
- icon?: {
59
- prefix?: string | undefined;
60
- iconName?: string | undefined;
61
- icon?: any[] | undefined;
62
- } | undefined;
63
- variant?: "primary" | "secondary" | "success" | "danger" | "warning" | "dark" | "light" | "black" | "brand" | undefined;
64
- size?: "sm" | "md" | "inline" | undefined;
65
- children?: undefined;
66
- defaultChecked?: boolean | undefined;
67
- defaultValue?: string | number | readonly string[] | undefined;
68
- suppressContentEditableWarning?: boolean | undefined;
69
- suppressHydrationWarning?: boolean | undefined;
70
- accessKey?: string | undefined;
71
- autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | (string & {}) | undefined;
72
- autoFocus?: boolean | undefined;
73
- contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
74
- contextMenu?: string | undefined;
75
- dir?: string | undefined;
76
- draggable?: (boolean | "true" | "false") | undefined;
77
- enterKeyHint?: "search" | "enter" | "done" | "go" | "next" | "previous" | "send" | undefined;
78
- hidden?: boolean | undefined;
79
- id?: string | undefined;
80
- lang?: string | undefined;
81
- nonce?: string | undefined;
82
- slot?: string | undefined;
83
- spellCheck?: (boolean | "true" | "false") | undefined;
84
- style?: React.CSSProperties | undefined;
85
- tabIndex?: number | undefined;
86
- title?: string | undefined;
87
- translate?: "yes" | "no" | undefined;
88
- radioGroup?: string | undefined;
89
- role?: React.AriaRole | undefined;
90
- about?: string | undefined;
91
- content?: string | undefined;
92
- datatype?: string | undefined;
93
- inlist?: any;
94
- prefix?: string | undefined;
95
- property?: string | undefined;
96
- rel?: string | undefined;
97
- resource?: string | undefined;
98
- rev?: string | undefined;
99
- typeof?: string | undefined;
100
- vocab?: string | undefined;
101
- autoCorrect?: string | undefined;
102
- autoSave?: string | undefined;
103
- color?: string | undefined;
104
- itemProp?: string | undefined;
105
- itemScope?: boolean | undefined;
106
- itemType?: string | undefined;
107
- itemID?: string | undefined;
108
- itemRef?: string | undefined;
109
- results?: number | undefined;
110
- security?: string | undefined;
111
- unselectable?: "off" | "on" | undefined;
112
- inputMode?: "search" | "text" | "none" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
113
- is?: string | undefined;
114
- "aria-activedescendant"?: string | undefined;
115
- "aria-atomic"?: (boolean | "true" | "false") | undefined;
116
- "aria-autocomplete"?: "inline" | "list" | "none" | "both" | undefined;
117
- "aria-braillelabel"?: string | undefined;
118
- "aria-brailleroledescription"?: string | undefined;
119
- "aria-busy"?: (boolean | "true" | "false") | undefined;
120
- "aria-checked"?: boolean | "true" | "false" | "mixed" | undefined;
121
- "aria-colcount"?: number | undefined;
122
- "aria-colindex"?: number | undefined;
123
- "aria-colindextext"?: string | undefined;
124
- "aria-colspan"?: number | undefined;
125
- "aria-controls"?: string | undefined;
126
- "aria-current"?: boolean | "time" | "step" | "true" | "false" | "page" | "location" | "date" | undefined;
127
- "aria-describedby"?: string | undefined;
128
- "aria-description"?: string | undefined;
129
- "aria-details"?: string | undefined;
130
- "aria-disabled"?: (boolean | "true" | "false") | undefined;
131
- "aria-dropeffect"?: "link" | "none" | "copy" | "execute" | "move" | "popup" | undefined;
132
- "aria-errormessage"?: string | undefined;
133
- "aria-expanded"?: (boolean | "true" | "false") | undefined;
134
- "aria-flowto"?: string | undefined;
135
- "aria-grabbed"?: (boolean | "true" | "false") | undefined;
136
- "aria-haspopup"?: boolean | "dialog" | "menu" | "true" | "false" | "grid" | "listbox" | "tree" | undefined;
137
- "aria-hidden"?: (boolean | "true" | "false") | undefined;
138
- "aria-invalid"?: boolean | "true" | "false" | "grammar" | "spelling" | undefined;
139
- "aria-keyshortcuts"?: string | undefined;
140
- "aria-label"?: string | undefined;
141
- "aria-labelledby"?: string | undefined;
142
- "aria-level"?: number | undefined;
143
- "aria-live"?: "off" | "assertive" | "polite" | undefined;
144
- "aria-modal"?: (boolean | "true" | "false") | undefined;
145
- "aria-multiline"?: (boolean | "true" | "false") | undefined;
146
- "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
147
- "aria-orientation"?: "horizontal" | "vertical" | undefined;
148
- "aria-owns"?: string | undefined;
149
- "aria-placeholder"?: string | undefined;
150
- "aria-posinset"?: number | undefined;
151
- "aria-pressed"?: boolean | "true" | "false" | "mixed" | undefined;
152
- "aria-readonly"?: (boolean | "true" | "false") | undefined;
153
- "aria-relevant"?: "text" | "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | undefined;
154
- "aria-required"?: (boolean | "true" | "false") | undefined;
155
- "aria-roledescription"?: string | undefined;
156
- "aria-rowcount"?: number | undefined;
157
- "aria-rowindex"?: number | undefined;
158
- "aria-rowindextext"?: string | undefined;
159
- "aria-rowspan"?: number | undefined;
160
- "aria-selected"?: (boolean | "true" | "false") | undefined;
161
- "aria-setsize"?: number | undefined;
162
- "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
163
- "aria-valuemax"?: number | undefined;
164
- "aria-valuemin"?: number | undefined;
165
- "aria-valuenow"?: number | undefined;
166
- "aria-valuetext"?: string | undefined;
167
- dangerouslySetInnerHTML?: {
168
- __html: string | TrustedHTML;
169
- } | undefined;
170
- onCopy?: React.ClipboardEventHandler<HTMLButtonElement> | undefined;
171
- onCopyCapture?: React.ClipboardEventHandler<HTMLButtonElement> | undefined;
172
- onCut?: React.ClipboardEventHandler<HTMLButtonElement> | undefined;
173
- onCutCapture?: React.ClipboardEventHandler<HTMLButtonElement> | undefined;
174
- onPaste?: React.ClipboardEventHandler<HTMLButtonElement> | undefined;
175
- onPasteCapture?: React.ClipboardEventHandler<HTMLButtonElement> | undefined;
176
- onCompositionEnd?: React.CompositionEventHandler<HTMLButtonElement> | undefined;
177
- onCompositionEndCapture?: React.CompositionEventHandler<HTMLButtonElement> | undefined;
178
- onCompositionStart?: React.CompositionEventHandler<HTMLButtonElement> | undefined;
179
- onCompositionStartCapture?: React.CompositionEventHandler<HTMLButtonElement> | undefined;
180
- onCompositionUpdate?: React.CompositionEventHandler<HTMLButtonElement> | undefined;
181
- onCompositionUpdateCapture?: React.CompositionEventHandler<HTMLButtonElement> | undefined;
182
- onFocus?: React.FocusEventHandler<HTMLButtonElement> | undefined;
183
- onFocusCapture?: React.FocusEventHandler<HTMLButtonElement> | undefined;
184
- onBlur?: React.FocusEventHandler<HTMLButtonElement> | undefined;
185
- onBlurCapture?: React.FocusEventHandler<HTMLButtonElement> | undefined;
186
- onChange?: React.FormEventHandler<HTMLButtonElement> | undefined;
187
- onChangeCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
188
- onBeforeInput?: React.FormEventHandler<HTMLButtonElement> | undefined;
189
- onBeforeInputCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
190
- onInput?: React.FormEventHandler<HTMLButtonElement> | undefined;
191
- onInputCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
192
- onReset?: React.FormEventHandler<HTMLButtonElement> | undefined;
193
- onResetCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
194
- onSubmit?: React.FormEventHandler<HTMLButtonElement> | undefined;
195
- onSubmitCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
196
- onInvalid?: React.FormEventHandler<HTMLButtonElement> | undefined;
197
- onInvalidCapture?: React.FormEventHandler<HTMLButtonElement> | undefined;
198
- onLoad?: React.ReactEventHandler<HTMLButtonElement> | undefined;
199
- onLoadCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
200
- onError?: React.ReactEventHandler<HTMLButtonElement> | undefined;
201
- onErrorCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
202
- onKeyDown?: React.KeyboardEventHandler<HTMLButtonElement> | undefined;
203
- onKeyDownCapture?: React.KeyboardEventHandler<HTMLButtonElement> | undefined;
204
- onKeyPress?: React.KeyboardEventHandler<HTMLButtonElement> | undefined;
205
- onKeyPressCapture?: React.KeyboardEventHandler<HTMLButtonElement> | undefined;
206
- onKeyUp?: React.KeyboardEventHandler<HTMLButtonElement> | undefined;
207
- onKeyUpCapture?: React.KeyboardEventHandler<HTMLButtonElement> | undefined;
208
- onAbort?: React.ReactEventHandler<HTMLButtonElement> | undefined;
209
- onAbortCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
210
- onCanPlay?: React.ReactEventHandler<HTMLButtonElement> | undefined;
211
- onCanPlayCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
212
- onCanPlayThrough?: React.ReactEventHandler<HTMLButtonElement> | undefined;
213
- onCanPlayThroughCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
214
- onDurationChange?: React.ReactEventHandler<HTMLButtonElement> | undefined;
215
- onDurationChangeCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
216
- onEmptied?: React.ReactEventHandler<HTMLButtonElement> | undefined;
217
- onEmptiedCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
218
- onEncrypted?: React.ReactEventHandler<HTMLButtonElement> | undefined;
219
- onEncryptedCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
220
- onEnded?: React.ReactEventHandler<HTMLButtonElement> | undefined;
221
- onEndedCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
222
- onLoadedData?: React.ReactEventHandler<HTMLButtonElement> | undefined;
223
- onLoadedDataCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
224
- onLoadedMetadata?: React.ReactEventHandler<HTMLButtonElement> | undefined;
225
- onLoadedMetadataCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
226
- onLoadStart?: React.ReactEventHandler<HTMLButtonElement> | undefined;
227
- onLoadStartCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
228
- onPause?: React.ReactEventHandler<HTMLButtonElement> | undefined;
229
- onPauseCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
230
- onPlay?: React.ReactEventHandler<HTMLButtonElement> | undefined;
231
- onPlayCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
232
- onPlaying?: React.ReactEventHandler<HTMLButtonElement> | undefined;
233
- onPlayingCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
234
- onProgress?: React.ReactEventHandler<HTMLButtonElement> | undefined;
235
- onProgressCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
236
- onRateChange?: React.ReactEventHandler<HTMLButtonElement> | undefined;
237
- onRateChangeCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
238
- onResize?: React.ReactEventHandler<HTMLButtonElement> | undefined;
239
- onResizeCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
240
- onSeeked?: React.ReactEventHandler<HTMLButtonElement> | undefined;
241
- onSeekedCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
242
- onSeeking?: React.ReactEventHandler<HTMLButtonElement> | undefined;
243
- onSeekingCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
244
- onStalled?: React.ReactEventHandler<HTMLButtonElement> | undefined;
245
- onStalledCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
246
- onSuspend?: React.ReactEventHandler<HTMLButtonElement> | undefined;
247
- onSuspendCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
248
- onTimeUpdate?: React.ReactEventHandler<HTMLButtonElement> | undefined;
249
- onTimeUpdateCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
250
- onVolumeChange?: React.ReactEventHandler<HTMLButtonElement> | undefined;
251
- onVolumeChangeCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
252
- onWaiting?: React.ReactEventHandler<HTMLButtonElement> | undefined;
253
- onWaitingCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
254
- onAuxClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
255
- onAuxClickCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
256
- onClickCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
257
- onContextMenu?: React.MouseEventHandler<HTMLButtonElement> | undefined;
258
- onContextMenuCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
259
- onDoubleClick?: React.MouseEventHandler<HTMLButtonElement> | undefined;
260
- onDoubleClickCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
261
- onDrag?: React.DragEventHandler<HTMLButtonElement> | undefined;
262
- onDragCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
263
- onDragEnd?: React.DragEventHandler<HTMLButtonElement> | undefined;
264
- onDragEndCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
265
- onDragEnter?: React.DragEventHandler<HTMLButtonElement> | undefined;
266
- onDragEnterCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
267
- onDragExit?: React.DragEventHandler<HTMLButtonElement> | undefined;
268
- onDragExitCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
269
- onDragLeave?: React.DragEventHandler<HTMLButtonElement> | undefined;
270
- onDragLeaveCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
271
- onDragOver?: React.DragEventHandler<HTMLButtonElement> | undefined;
272
- onDragOverCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
273
- onDragStart?: React.DragEventHandler<HTMLButtonElement> | undefined;
274
- onDragStartCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
275
- onDrop?: React.DragEventHandler<HTMLButtonElement> | undefined;
276
- onDropCapture?: React.DragEventHandler<HTMLButtonElement> | undefined;
277
- onMouseDown?: React.MouseEventHandler<HTMLButtonElement> | undefined;
278
- onMouseDownCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
279
- onMouseEnter?: React.MouseEventHandler<HTMLButtonElement> | undefined;
280
- onMouseLeave?: React.MouseEventHandler<HTMLButtonElement> | undefined;
281
- onMouseMove?: React.MouseEventHandler<HTMLButtonElement> | undefined;
282
- onMouseMoveCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
283
- onMouseOut?: React.MouseEventHandler<HTMLButtonElement> | undefined;
284
- onMouseOutCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
285
- onMouseOver?: React.MouseEventHandler<HTMLButtonElement> | undefined;
286
- onMouseOverCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
287
- onMouseUp?: React.MouseEventHandler<HTMLButtonElement> | undefined;
288
- onMouseUpCapture?: React.MouseEventHandler<HTMLButtonElement> | undefined;
289
- onSelect?: React.ReactEventHandler<HTMLButtonElement> | undefined;
290
- onSelectCapture?: React.ReactEventHandler<HTMLButtonElement> | undefined;
291
- onTouchCancel?: React.TouchEventHandler<HTMLButtonElement> | undefined;
292
- onTouchCancelCapture?: React.TouchEventHandler<HTMLButtonElement> | undefined;
293
- onTouchEnd?: React.TouchEventHandler<HTMLButtonElement> | undefined;
294
- onTouchEndCapture?: React.TouchEventHandler<HTMLButtonElement> | undefined;
295
- onTouchMove?: React.TouchEventHandler<HTMLButtonElement> | undefined;
296
- onTouchMoveCapture?: React.TouchEventHandler<HTMLButtonElement> | undefined;
297
- onTouchStart?: React.TouchEventHandler<HTMLButtonElement> | undefined;
298
- onTouchStartCapture?: React.TouchEventHandler<HTMLButtonElement> | undefined;
299
- onPointerDown?: React.PointerEventHandler<HTMLButtonElement> | undefined;
300
- onPointerDownCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
301
- onPointerMove?: React.PointerEventHandler<HTMLButtonElement> | undefined;
302
- onPointerMoveCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
303
- onPointerUp?: React.PointerEventHandler<HTMLButtonElement> | undefined;
304
- onPointerUpCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
305
- onPointerCancel?: React.PointerEventHandler<HTMLButtonElement> | undefined;
306
- onPointerCancelCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
307
- onPointerEnter?: React.PointerEventHandler<HTMLButtonElement> | undefined;
308
- onPointerLeave?: React.PointerEventHandler<HTMLButtonElement> | undefined;
309
- onPointerOver?: React.PointerEventHandler<HTMLButtonElement> | undefined;
310
- onPointerOverCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
311
- onPointerOut?: React.PointerEventHandler<HTMLButtonElement> | undefined;
312
- onPointerOutCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
313
- onGotPointerCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
314
- onGotPointerCaptureCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
315
- onLostPointerCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
316
- onLostPointerCaptureCapture?: React.PointerEventHandler<HTMLButtonElement> | undefined;
317
- onScroll?: React.UIEventHandler<HTMLButtonElement> | undefined;
318
- onScrollCapture?: React.UIEventHandler<HTMLButtonElement> | undefined;
319
- onWheel?: React.WheelEventHandler<HTMLButtonElement> | undefined;
320
- onWheelCapture?: React.WheelEventHandler<HTMLButtonElement> | undefined;
321
- onAnimationStart?: React.AnimationEventHandler<HTMLButtonElement> | undefined;
322
- onAnimationStartCapture?: React.AnimationEventHandler<HTMLButtonElement> | undefined;
323
- onAnimationEnd?: React.AnimationEventHandler<HTMLButtonElement> | undefined;
324
- onAnimationEndCapture?: React.AnimationEventHandler<HTMLButtonElement> | undefined;
325
- onAnimationIteration?: React.AnimationEventHandler<HTMLButtonElement> | undefined;
326
- onAnimationIterationCapture?: React.AnimationEventHandler<HTMLButtonElement> | undefined;
327
- onTransitionEnd?: React.TransitionEventHandler<HTMLButtonElement> | undefined;
328
- onTransitionEndCapture?: React.TransitionEventHandler<HTMLButtonElement> | undefined;
329
- ref?: React.LegacyRef<HTMLButtonElement> | undefined;
330
- key?: React.Key | null | undefined;
331
- };
332
- var propTypes: {
333
- /** tooltip placement can be top, left, right etc, per https://popper.js.org/docs/v2/constructors/#options */
334
- tooltipPlacement: PropTypes.Requireable<string>;
335
- /** any valid JSX or text to be rendered as tooltip contents */
336
- tooltipContent: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
337
- /** Type of button (uses Bootstrap options) */
338
- variant: PropTypes.Requireable<string>;
339
- /** Changes icon styles for dark background */
340
- invertColors: PropTypes.Requireable<boolean>;
341
- };
342
- }
343
47
  declare const _default: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLButtonElement>> & {
344
48
  IconButtonWithTooltip: typeof IconButtonWithTooltip;
345
49
  };
@@ -1,26 +1,24 @@
1
1
  import React from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import classNames from 'classnames';
4
3
  import { OverlayTrigger } from '../Overlay';
5
4
  import Tooltip from '../Tooltip';
6
5
  import Icon from '../Icon';
7
- const IconButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
8
- let {
9
- className,
10
- alt,
11
- invertColors,
12
- icon,
13
- src,
14
- iconClassNames,
15
- onClick,
16
- size,
17
- variant,
18
- iconAs,
19
- isActive,
20
- children,
21
- // unused, just here because we don't want it to be part of 'attrs'
22
- ...attrs
23
- } = _ref;
6
+ const IconButton = /*#__PURE__*/React.forwardRef(({
7
+ className,
8
+ alt,
9
+ invertColors = false,
10
+ icon,
11
+ src,
12
+ iconClassNames,
13
+ onClick = () => {},
14
+ size = 'md',
15
+ variant = 'primary',
16
+ iconAs = Icon,
17
+ isActive = false,
18
+ children,
19
+ // unused, just here because we don't want it to be part of 'attrs'
20
+ ...attrs
21
+ }, ref) => {
24
22
  const invert = invertColors ? 'inverse-' : '';
25
23
  const activeStyle = isActive ? `${variant}-` : '';
26
24
  const IconComponent = iconAs;
@@ -41,61 +39,14 @@ const IconButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
41
39
  src: src
42
40
  })));
43
41
  });
44
- IconButton.defaultProps = {
45
- iconAs: Icon,
46
- src: undefined,
47
- icon: undefined,
48
- iconClassNames: undefined,
49
- className: undefined,
50
- invertColors: false,
51
- variant: 'primary',
52
- size: 'md',
53
- onClick: () => {},
54
- isActive: false,
55
- children: undefined
56
- };
57
- IconButton.propTypes = {
58
- /** A custom class name. */
59
- className: PropTypes.string,
60
- /** Component that renders the icon, currently defaults to `Icon` */
61
- iconAs: PropTypes.elementType,
62
- /** An icon component to render. Example import of a Paragon icon component:
63
- * `import { Check } from '@openedx/paragon/icons';`
64
- * */
65
- src: PropTypes.elementType,
66
- /** Alt text for your icon. For best practice, avoid using alt text to describe
67
- * the image in the `IconButton`. Instead, we recommend describing the function
68
- * of the button. */
69
- alt: PropTypes.string.isRequired,
70
- /** Changes icon styles for dark background */
71
- invertColors: PropTypes.bool,
72
- /** Accepts a [Paragon icon](https://paragon-openedx.netlify.app/foundations/icons) */
73
- icon: PropTypes.shape({
74
- prefix: PropTypes.string,
75
- iconName: PropTypes.string,
76
- // eslint-disable-next-line react/forbid-prop-types
77
- icon: PropTypes.array
78
- }),
79
- /** Extra class names that will be added to the icon */
80
- iconClassNames: PropTypes.string,
81
- /** Click handler for the button */
82
- onClick: PropTypes.func,
83
- /** Type of button (uses Bootstrap options) */
84
- variant: PropTypes.oneOf(['primary', 'secondary', 'success', 'warning', 'danger', 'light', 'dark', 'black', 'brand']),
85
- /** size of button to render */
86
- size: PropTypes.oneOf(['sm', 'md', 'inline']),
87
- /** whether to show the `IconButton` in an active state, whose styling is distinct from default state */
88
- isActive: PropTypes.bool
89
- };
90
42
  /**
91
43
  * An icon button wrapped in overlaytrigger to display a tooltip.
92
44
  */
93
- function IconButtonWithTooltip(_ref2) {
94
- let {
95
- tooltipPlacement,
96
- tooltipContent,
97
- ...props
98
- } = _ref2;
45
+ function IconButtonWithTooltip({
46
+ tooltipPlacement = 'top',
47
+ tooltipContent,
48
+ ...props
49
+ }) {
99
50
  const invert = props.invertColors ? 'inverse-' : '';
100
51
  return /*#__PURE__*/React.createElement(OverlayTrigger, {
101
52
  placement: tooltipPlacement,
@@ -107,20 +58,6 @@ function IconButtonWithTooltip(_ref2) {
107
58
  ...props
108
59
  }));
109
60
  }
110
- IconButtonWithTooltip.defaultProps = {
111
- ...IconButton.defaultProps,
112
- tooltipPlacement: 'top'
113
- };
114
- IconButtonWithTooltip.propTypes = {
115
- /** tooltip placement can be top, left, right etc, per https://popper.js.org/docs/v2/constructors/#options */
116
- tooltipPlacement: PropTypes.string,
117
- /** any valid JSX or text to be rendered as tooltip contents */
118
- tooltipContent: PropTypes.node.isRequired,
119
- /** Type of button (uses Bootstrap options) */
120
- variant: PropTypes.oneOf(['primary', 'secondary', 'success', 'warning', 'danger', 'light', 'dark', 'black', 'brand']),
121
- /** Changes icon styles for dark background */
122
- invertColors: PropTypes.bool
123
- };
124
61
  IconButton.IconButtonWithTooltip = IconButtonWithTooltip;
125
62
  export default IconButton;
126
63
  export { IconButtonWithTooltip };