@algolia/satellite 1.0.0-beta.132 → 1.0.0-beta.135

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 (437) hide show
  1. package/README.md +33 -28
  2. package/cjs/AnnouncementBadge/AnnouncementBadge.d.ts +6 -1
  3. package/cjs/AnnouncementBadge/AnnouncementBadge.js +15 -2
  4. package/cjs/AutoComplete/AutoComplete.d.ts +19 -14
  5. package/cjs/AutoComplete/AutoComplete.js +65 -18
  6. package/cjs/AutoComplete/AutoComplete.tailwind.d.ts +4 -4
  7. package/cjs/AutoComplete/AutoComplete.tailwind.js +10 -13
  8. package/cjs/AutoComplete/components/DefaultOptionItem.d.ts +6 -2
  9. package/cjs/AutoComplete/components/DefaultOptionItem.js +5 -2
  10. package/cjs/AutoComplete/types.d.ts +26 -18
  11. package/cjs/AutoComplete/utils.d.ts +5 -4
  12. package/cjs/AutoComplete/utils.js +22 -2
  13. package/cjs/Avatars/ApplicationAvatar.js +1 -1
  14. package/cjs/Banners/Alert/Alert.d.ts +1 -0
  15. package/cjs/Banners/Alert/Alert.js +1 -1
  16. package/cjs/Banners/BigBertha/BigBertha.d.ts +2 -1
  17. package/cjs/Banners/Promote/Promote.d.ts +1 -0
  18. package/cjs/Button/Button.js +2 -2
  19. package/cjs/Button/Button.tailwind.d.ts +4 -4
  20. package/cjs/Button/Button.tailwind.js +11 -14
  21. package/cjs/Button/ButtonGroup.d.ts +2 -1
  22. package/cjs/Card/Card.tailwind.d.ts +4 -4
  23. package/cjs/Card/Card.tailwind.js +5 -8
  24. package/cjs/Card/components/CardTitle.d.ts +4 -2
  25. package/cjs/Checkbox/Checkbox.d.ts +1 -1
  26. package/cjs/Checkbox/Checkbox.tailwind.d.ts +5 -5
  27. package/cjs/Checkbox/Checkbox.tailwind.js +11 -14
  28. package/cjs/ClickAwayContainer/ClickAwayContainer.d.ts +2 -1
  29. package/cjs/DatePicker/DatePicker/DatePicker.d.ts +5 -11
  30. package/cjs/DatePicker/DatePicker/DatePicker.js +17 -7
  31. package/cjs/DatePicker/DatePicker.tailwind.d.ts +4 -4
  32. package/cjs/DatePicker/DatePicker.tailwind.js +19 -14
  33. package/cjs/DatePicker/DateRangePicker/DateRangePicker.d.ts +5 -11
  34. package/cjs/DatePicker/DateRangePicker/DateRangePicker.js +25 -8
  35. package/cjs/DatePicker/DateRangePicker/DateRangePickerDisplay.d.ts +3 -0
  36. package/cjs/DatePicker/DateRangePicker/DateRangePickerDisplay.js +3 -2
  37. package/cjs/DatePicker/components/Calendar.d.ts +5 -1
  38. package/cjs/DatePicker/components/Calendar.js +3 -1
  39. package/cjs/DatePicker/components/Display.d.ts +1 -1
  40. package/cjs/DatePicker/components/FooterActions.d.ts +3 -0
  41. package/cjs/DatePicker/components/FooterActions.js +4 -3
  42. package/cjs/DatePicker/components/Modal.d.ts +2 -2
  43. package/cjs/DatePicker/components/Modal.js +5 -4
  44. package/cjs/DatePicker/components/NavBar.d.ts +5 -1
  45. package/cjs/DatePicker/components/NavBar.js +4 -3
  46. package/cjs/DatePicker/types.d.ts +17 -0
  47. package/cjs/{tailwind-types.js → DatePicker/types.js} +0 -0
  48. package/cjs/DatePicker/utils.d.ts +2 -0
  49. package/cjs/DatePicker/utils.js +10 -2
  50. package/cjs/Dropdown/Dropdown.d.ts +1 -1
  51. package/cjs/Dropdown/Dropdown.js +5 -4
  52. package/cjs/Dropdown/DropdownButton.d.ts +1 -0
  53. package/cjs/Dropdown/components/DropdownButtonItem.js +2 -2
  54. package/cjs/Dropdown/components/DropdownLinkItem.js +1 -2
  55. package/cjs/Dropdown/components/DropdownTitle.d.ts +4 -2
  56. package/cjs/Dropdown/components/DropdownToggleItem.js +2 -2
  57. package/cjs/Dropdown/useDropdownItemProps.d.ts +9 -1
  58. package/cjs/Dropdown/useDropdownItemProps.js +16 -7
  59. package/cjs/Dropzone/Dropzone.d.ts +5 -1
  60. package/cjs/Dropzone/Dropzone.js +14 -5
  61. package/cjs/EmptyState/EmptyState.tailwind.d.ts +4 -4
  62. package/cjs/EmptyState/EmptyState.tailwind.js +5 -8
  63. package/cjs/Field/Field.d.ts +1 -0
  64. package/cjs/Flag/Flag.d.ts +1 -0
  65. package/cjs/Flag/Flag.js +17 -2
  66. package/cjs/Flag/Flag.tailwind.d.ts +4 -4
  67. package/cjs/Flag/Flag.tailwind.js +8 -15
  68. package/cjs/Flag/Flags.d.ts +1 -1
  69. package/cjs/Flag/Flags.js +5 -4
  70. package/cjs/Flag/types.d.ts +4 -0
  71. package/cjs/FlexGrid/FlexGrid.d.ts +2 -1
  72. package/cjs/FlexGrid/FlexGrid.tailwind.d.ts +6 -3
  73. package/cjs/FlexGrid/FlexGrid.tailwind.js +8 -11
  74. package/cjs/HelpUnderline/HelpUnderline.d.ts +1 -0
  75. package/cjs/HelpUnderline/HelpUnderline.tailwind.d.ts +4 -4
  76. package/cjs/HelpUnderline/HelpUnderline.tailwind.js +3 -6
  77. package/cjs/Input/Input.d.ts +6 -0
  78. package/cjs/Input/Input.js +15 -4
  79. package/cjs/Input/Input.tailwind.d.ts +4 -4
  80. package/cjs/Input/Input.tailwind.js +12 -15
  81. package/cjs/Insert/Insert.d.ts +1 -0
  82. package/cjs/InstantSearch/InstantSearch.tailwind.d.ts +4 -5
  83. package/cjs/InstantSearch/InstantSearch.tailwind.js +34 -32
  84. package/cjs/KeyboardKey/KeyboardKey.d.ts +1 -0
  85. package/cjs/KeyboardKey/KeyboardKey.js +3 -2
  86. package/cjs/KeyboardKey/KeyboardKey.tailwind.d.ts +4 -4
  87. package/cjs/KeyboardKey/KeyboardKey.tailwind.js +5 -8
  88. package/cjs/Link/ButtonLink.js +1 -10
  89. package/cjs/Medallion/Medallion.tailwind.d.ts +4 -4
  90. package/cjs/Medallion/Medallion.tailwind.js +8 -11
  91. package/cjs/Modal/Modal.d.ts +5 -2
  92. package/cjs/Modal/Modal.js +16 -9
  93. package/cjs/Modal/Modal.tailwind.d.ts +4 -4
  94. package/cjs/Modal/Modal.tailwind.js +9 -18
  95. package/cjs/Modal/components/ModalFooter.d.ts +4 -2
  96. package/cjs/Pagination/CompactPagination/CompactPagination.d.ts +8 -0
  97. package/cjs/Pagination/CompactPagination/CompactPagination.js +29 -5
  98. package/cjs/Pagination/DotPagination/DotPagination.d.ts +5 -1
  99. package/cjs/Pagination/DotPagination/DotPagination.js +21 -2
  100. package/cjs/Pagination/Pagination/Pagination.d.ts +7 -1
  101. package/cjs/Pagination/Pagination/Pagination.js +32 -8
  102. package/cjs/ProgressBar/ProgressBar.tailwind.d.ts +5 -5
  103. package/cjs/ProgressBar/ProgressBar.tailwind.js +7 -10
  104. package/cjs/ProgressSpinner/ProgressSpinner.tailwind.d.ts +5 -5
  105. package/cjs/ProgressSpinner/ProgressSpinner.tailwind.js +4 -7
  106. package/cjs/RadioGroup/RadioButton.d.ts +1 -1
  107. package/cjs/RadioGroup/RadioButton.tailwind.d.ts +4 -4
  108. package/cjs/RadioGroup/RadioButton.tailwind.js +11 -14
  109. package/cjs/RadioGroup/RadioGroup.d.ts +1 -0
  110. package/cjs/RadioGroup/RadioGroup.js +1 -1
  111. package/cjs/RangeSlider/RangeSlider.d.ts +1 -1
  112. package/cjs/RangeSlider/RangeSlider.tailwind.d.ts +4 -4
  113. package/cjs/RangeSlider/RangeSlider.tailwind.js +21 -24
  114. package/cjs/Satellite/Satellite.d.ts +5 -1
  115. package/cjs/Satellite/Satellite.js +9 -2
  116. package/cjs/Satellite/SatelliteContext.d.ts +4 -1
  117. package/cjs/Satellite/SatelliteContext.js +2 -1
  118. package/cjs/Satellite/index.d.ts +2 -0
  119. package/cjs/Satellite/index.js +28 -0
  120. package/cjs/Satellite/locale.d.ts +29 -0
  121. package/cjs/Satellite/locale.js +21 -0
  122. package/cjs/Satellite/useCreatePortal.d.ts +4 -0
  123. package/cjs/Satellite/useCreatePortal.js +29 -0
  124. package/cjs/ScrollIndicator/ScrollIndicator.d.ts +4 -1
  125. package/cjs/ScrollIndicator/ScrollIndicator.js +2 -1
  126. package/cjs/ScrollIndicator/ScrollIndicator.tailwind.d.ts +4 -4
  127. package/cjs/ScrollIndicator/ScrollIndicator.tailwind.js +8 -11
  128. package/cjs/Select/Select.tailwind.d.ts +5 -5
  129. package/cjs/Select/Select.tailwind.js +5 -8
  130. package/cjs/Sidebar/Sidebar.d.ts +33 -10
  131. package/cjs/Sidebar/Sidebar.js +48 -38
  132. package/cjs/Sidebar/SidebarButtonLink.d.ts +14 -0
  133. package/cjs/Sidebar/SidebarButtonLink.js +110 -0
  134. package/cjs/Sidebar/SidebarContext.d.ts +7 -8
  135. package/cjs/Sidebar/SidebarContext.js +10 -11
  136. package/cjs/Sidebar/SidebarHeader.d.ts +6 -0
  137. package/cjs/Sidebar/SidebarHeader.js +29 -0
  138. package/cjs/Sidebar/SidebarHeading.d.ts +6 -0
  139. package/cjs/Sidebar/SidebarHeading.js +35 -0
  140. package/cjs/Sidebar/SidebarLink.d.ts +8 -0
  141. package/cjs/Sidebar/SidebarLink.js +58 -0
  142. package/cjs/Sidebar/SidebarLinksGroup/ActiveLinkIndicator.d.ts +8 -0
  143. package/cjs/Sidebar/SidebarLinksGroup/ActiveLinkIndicator.js +47 -0
  144. package/cjs/Sidebar/SidebarLinksGroup/SidebarGroupLink.d.ts +7 -0
  145. package/cjs/Sidebar/{components/SidebarHeader.js → SidebarLinksGroup/SidebarGroupLink.js} +14 -23
  146. package/cjs/Sidebar/SidebarLinksGroup/SidebarLinksGroup.d.ts +23 -0
  147. package/cjs/Sidebar/SidebarLinksGroup/SidebarLinksGroup.js +120 -0
  148. package/cjs/Sidebar/SidebarLinksGroup/index.d.ts +2 -0
  149. package/cjs/Sidebar/SidebarLinksGroup/index.js +18 -0
  150. package/cjs/Sidebar/SidebarLinksGroup/types.d.ts +10 -0
  151. package/cjs/Sidebar/SidebarLinksGroup/types.js +5 -0
  152. package/cjs/Sidebar/SidebarNav.d.ts +9 -0
  153. package/cjs/Sidebar/SidebarNav.js +46 -0
  154. package/cjs/Sidebar/index.d.ts +7 -4
  155. package/cjs/Sidebar/index.js +61 -21
  156. package/cjs/Sidebar/types.d.ts +6 -2
  157. package/cjs/Switch/Switch.tailwind.d.ts +5 -5
  158. package/cjs/Switch/Switch.tailwind.js +7 -8
  159. package/cjs/Switch/SwitchOption.d.ts +2 -1
  160. package/cjs/Switch/SwitchOption.js +1 -1
  161. package/cjs/Tables/DataTable/DataTable.d.ts +11 -1
  162. package/cjs/Tables/DataTable/DataTable.js +25 -7
  163. package/cjs/Tables/DataTable/DataTable.tailwind.d.ts +4 -4
  164. package/cjs/Tables/DataTable/DataTable.tailwind.js +3 -6
  165. package/cjs/Tables/DataTable/components/Body.d.ts +3 -2
  166. package/cjs/Tables/DataTable/components/Body.js +6 -5
  167. package/cjs/Tables/DataTable/components/Loader.d.ts +3 -1
  168. package/cjs/Tables/DataTable/components/Loader.js +4 -3
  169. package/cjs/Tables/Table/Table.tailwind.d.ts +4 -4
  170. package/cjs/Tables/Table/Table.tailwind.js +3 -6
  171. package/cjs/Tabs/Tabs.tailwind.d.ts +4 -4
  172. package/cjs/Tabs/Tabs.tailwind.js +13 -16
  173. package/cjs/Tabs/components/LinkTab.js +7 -9
  174. package/cjs/Tag/Tag.d.ts +5 -1
  175. package/cjs/Tag/Tag.js +15 -6
  176. package/cjs/Tag/Tag.tailwind.d.ts +4 -4
  177. package/cjs/Tag/Tag.tailwind.js +6 -9
  178. package/cjs/TextArea/TextArea.tailwind.d.ts +4 -4
  179. package/cjs/TextArea/TextArea.tailwind.js +4 -7
  180. package/cjs/Toggle/Toggle.d.ts +1 -1
  181. package/cjs/Toggle/Toggle.tailwind.d.ts +5 -5
  182. package/cjs/Toggle/Toggle.tailwind.js +19 -22
  183. package/cjs/Tooltip/OverflowTooltipWrapper.d.ts +1 -0
  184. package/cjs/Tooltip/OverflowTooltipWrapper.js +6 -4
  185. package/cjs/Tooltip/Tooltip.d.ts +1 -1
  186. package/cjs/Tooltip/Tooltip.tailwind.d.ts +4 -4
  187. package/cjs/Tooltip/Tooltip.tailwind.js +19 -18
  188. package/cjs/Tooltip/TooltipWrapper.d.ts +1 -0
  189. package/cjs/Tooltip/TooltipWrapper.js +5 -4
  190. package/cjs/Tooltip/types.d.ts +2 -0
  191. package/cjs/Typography/Typography.tailwind.d.ts +5 -17
  192. package/cjs/Typography/Typography.tailwind.js +123 -133
  193. package/cjs/UserContent/UserContent.tailwind.d.ts +4 -1
  194. package/cjs/UserContent/UserContent.tailwind.js +11 -9
  195. package/cjs/index.d.ts +0 -1
  196. package/cjs/index.js +0 -14
  197. package/cjs/styles/base.tailwind.d.ts +4 -4
  198. package/cjs/styles/base.tailwind.js +3 -6
  199. package/cjs/styles/tailwind.config.d.ts +2 -198
  200. package/cjs/styles/tailwind.config.js +25 -29
  201. package/cjs/types.d.ts +7 -0
  202. package/cjs/utilities/utilities.tailwind.d.ts +4 -1
  203. package/cjs/utilities/utilities.tailwind.js +4 -6
  204. package/cjs/utils/isCssPropertySupported.d.ts +1 -1
  205. package/cjs/utils/pluralize.js +6 -1
  206. package/cjs/utils/useLinkProps.d.ts +5 -2
  207. package/cjs/utils/useLinkProps.js +9 -2
  208. package/esm/AnnouncementBadge/AnnouncementBadge.d.ts +6 -1
  209. package/esm/AnnouncementBadge/AnnouncementBadge.js +14 -2
  210. package/esm/AutoComplete/AutoComplete.d.ts +19 -14
  211. package/esm/AutoComplete/AutoComplete.js +67 -18
  212. package/esm/AutoComplete/AutoComplete.tailwind.d.ts +4 -4
  213. package/esm/AutoComplete/AutoComplete.tailwind.js +10 -13
  214. package/esm/AutoComplete/components/DefaultOptionItem.d.ts +6 -2
  215. package/esm/AutoComplete/components/DefaultOptionItem.js +5 -2
  216. package/esm/AutoComplete/types.d.ts +26 -18
  217. package/esm/AutoComplete/utils.d.ts +5 -4
  218. package/esm/AutoComplete/utils.js +16 -0
  219. package/esm/Avatars/ApplicationAvatar.js +1 -1
  220. package/esm/Banners/Alert/Alert.d.ts +1 -0
  221. package/esm/Banners/Alert/Alert.js +1 -1
  222. package/esm/Banners/BigBertha/BigBertha.d.ts +2 -1
  223. package/esm/Banners/Promote/Promote.d.ts +1 -0
  224. package/esm/Button/Button.js +2 -2
  225. package/esm/Button/Button.tailwind.d.ts +4 -4
  226. package/esm/Button/Button.tailwind.js +13 -16
  227. package/esm/Button/ButtonGroup.d.ts +2 -1
  228. package/esm/Card/Card.tailwind.d.ts +4 -4
  229. package/esm/Card/Card.tailwind.js +6 -9
  230. package/esm/Card/components/CardTitle.d.ts +4 -2
  231. package/esm/Checkbox/Checkbox.d.ts +1 -1
  232. package/esm/Checkbox/Checkbox.tailwind.d.ts +5 -5
  233. package/esm/Checkbox/Checkbox.tailwind.js +11 -14
  234. package/esm/ClickAwayContainer/ClickAwayContainer.d.ts +2 -1
  235. package/esm/DatePicker/DatePicker/DatePicker.d.ts +5 -11
  236. package/esm/DatePicker/DatePicker/DatePicker.js +16 -7
  237. package/esm/DatePicker/DatePicker.tailwind.d.ts +4 -4
  238. package/esm/DatePicker/DatePicker.tailwind.js +19 -15
  239. package/esm/DatePicker/DateRangePicker/DateRangePicker.d.ts +5 -11
  240. package/esm/DatePicker/DateRangePicker/DateRangePicker.js +23 -7
  241. package/esm/DatePicker/DateRangePicker/DateRangePickerDisplay.d.ts +3 -0
  242. package/esm/DatePicker/DateRangePicker/DateRangePickerDisplay.js +3 -2
  243. package/esm/DatePicker/components/Calendar.d.ts +5 -1
  244. package/esm/DatePicker/components/Calendar.js +3 -1
  245. package/esm/DatePicker/components/Display.d.ts +1 -1
  246. package/esm/DatePicker/components/FooterActions.d.ts +3 -0
  247. package/esm/DatePicker/components/FooterActions.js +4 -3
  248. package/esm/DatePicker/components/Modal.d.ts +2 -2
  249. package/esm/DatePicker/components/Modal.js +4 -3
  250. package/esm/DatePicker/components/NavBar.d.ts +5 -1
  251. package/esm/DatePicker/components/NavBar.js +4 -3
  252. package/esm/DatePicker/types.d.ts +17 -0
  253. package/esm/{tailwind-types.js → DatePicker/types.js} +0 -0
  254. package/esm/DatePicker/utils.d.ts +2 -0
  255. package/esm/DatePicker/utils.js +7 -0
  256. package/esm/Dropdown/Dropdown.d.ts +1 -1
  257. package/esm/Dropdown/Dropdown.js +4 -3
  258. package/esm/Dropdown/DropdownButton.d.ts +1 -0
  259. package/esm/Dropdown/components/DropdownButtonItem.js +2 -2
  260. package/esm/Dropdown/components/DropdownLinkItem.js +1 -2
  261. package/esm/Dropdown/components/DropdownTitle.d.ts +4 -2
  262. package/esm/Dropdown/components/DropdownToggleItem.js +2 -2
  263. package/esm/Dropdown/useDropdownItemProps.d.ts +9 -1
  264. package/esm/Dropdown/useDropdownItemProps.js +15 -7
  265. package/esm/Dropzone/Dropzone.d.ts +5 -1
  266. package/esm/Dropzone/Dropzone.js +13 -4
  267. package/esm/EmptyState/EmptyState.tailwind.d.ts +4 -4
  268. package/esm/EmptyState/EmptyState.tailwind.js +6 -9
  269. package/esm/Field/Field.d.ts +1 -0
  270. package/esm/Flag/Flag.d.ts +1 -0
  271. package/esm/Flag/Flag.js +15 -2
  272. package/esm/Flag/Flag.tailwind.d.ts +4 -4
  273. package/esm/Flag/Flag.tailwind.js +9 -16
  274. package/esm/Flag/Flags.d.ts +1 -1
  275. package/esm/Flag/Flags.js +4 -3
  276. package/esm/Flag/types.d.ts +4 -0
  277. package/esm/FlexGrid/FlexGrid.d.ts +2 -1
  278. package/esm/FlexGrid/FlexGrid.tailwind.d.ts +6 -3
  279. package/esm/FlexGrid/FlexGrid.tailwind.js +8 -11
  280. package/esm/HelpUnderline/HelpUnderline.d.ts +1 -0
  281. package/esm/HelpUnderline/HelpUnderline.tailwind.d.ts +4 -4
  282. package/esm/HelpUnderline/HelpUnderline.tailwind.js +4 -7
  283. package/esm/Input/Input.d.ts +6 -0
  284. package/esm/Input/Input.js +15 -4
  285. package/esm/Input/Input.tailwind.d.ts +4 -4
  286. package/esm/Input/Input.tailwind.js +14 -17
  287. package/esm/Insert/Insert.d.ts +1 -0
  288. package/esm/InstantSearch/InstantSearch.tailwind.d.ts +4 -5
  289. package/esm/InstantSearch/InstantSearch.tailwind.js +35 -33
  290. package/esm/KeyboardKey/KeyboardKey.d.ts +1 -0
  291. package/esm/KeyboardKey/KeyboardKey.js +3 -2
  292. package/esm/KeyboardKey/KeyboardKey.tailwind.d.ts +4 -4
  293. package/esm/KeyboardKey/KeyboardKey.tailwind.js +6 -9
  294. package/esm/Link/ButtonLink.js +1 -10
  295. package/esm/Medallion/Medallion.tailwind.d.ts +4 -4
  296. package/esm/Medallion/Medallion.tailwind.js +8 -11
  297. package/esm/Modal/Modal.d.ts +5 -2
  298. package/esm/Modal/Modal.js +14 -8
  299. package/esm/Modal/Modal.tailwind.d.ts +4 -4
  300. package/esm/Modal/Modal.tailwind.js +10 -19
  301. package/esm/Modal/components/ModalFooter.d.ts +4 -2
  302. package/esm/Pagination/CompactPagination/CompactPagination.d.ts +8 -0
  303. package/esm/Pagination/CompactPagination/CompactPagination.js +26 -5
  304. package/esm/Pagination/DotPagination/DotPagination.d.ts +5 -1
  305. package/esm/Pagination/DotPagination/DotPagination.js +18 -2
  306. package/esm/Pagination/Pagination/Pagination.d.ts +7 -1
  307. package/esm/Pagination/Pagination/Pagination.js +30 -8
  308. package/esm/ProgressBar/ProgressBar.tailwind.d.ts +5 -5
  309. package/esm/ProgressBar/ProgressBar.tailwind.js +7 -10
  310. package/esm/ProgressSpinner/ProgressSpinner.tailwind.d.ts +5 -5
  311. package/esm/ProgressSpinner/ProgressSpinner.tailwind.js +5 -8
  312. package/esm/RadioGroup/RadioButton.d.ts +1 -1
  313. package/esm/RadioGroup/RadioButton.tailwind.d.ts +4 -4
  314. package/esm/RadioGroup/RadioButton.tailwind.js +13 -16
  315. package/esm/RadioGroup/RadioGroup.d.ts +1 -0
  316. package/esm/RadioGroup/RadioGroup.js +1 -1
  317. package/esm/RangeSlider/RangeSlider.d.ts +1 -1
  318. package/esm/RangeSlider/RangeSlider.tailwind.d.ts +4 -4
  319. package/esm/RangeSlider/RangeSlider.tailwind.js +21 -24
  320. package/esm/Satellite/Satellite.d.ts +5 -1
  321. package/esm/Satellite/Satellite.js +8 -2
  322. package/esm/Satellite/SatelliteContext.d.ts +4 -1
  323. package/esm/Satellite/SatelliteContext.js +2 -1
  324. package/esm/Satellite/index.d.ts +2 -0
  325. package/esm/Satellite/index.js +2 -0
  326. package/esm/Satellite/locale.d.ts +29 -0
  327. package/esm/Satellite/locale.js +8 -0
  328. package/esm/Satellite/useCreatePortal.d.ts +4 -0
  329. package/esm/Satellite/useCreatePortal.js +16 -0
  330. package/esm/ScrollIndicator/ScrollIndicator.d.ts +4 -1
  331. package/esm/ScrollIndicator/ScrollIndicator.js +2 -1
  332. package/esm/ScrollIndicator/ScrollIndicator.tailwind.d.ts +4 -4
  333. package/esm/ScrollIndicator/ScrollIndicator.tailwind.js +8 -11
  334. package/esm/Select/Select.tailwind.d.ts +5 -5
  335. package/esm/Select/Select.tailwind.js +5 -8
  336. package/esm/Sidebar/Sidebar.d.ts +33 -10
  337. package/esm/Sidebar/Sidebar.js +44 -29
  338. package/esm/Sidebar/SidebarButtonLink.d.ts +14 -0
  339. package/esm/Sidebar/SidebarButtonLink.js +92 -0
  340. package/esm/Sidebar/SidebarContext.d.ts +7 -8
  341. package/esm/Sidebar/SidebarContext.js +9 -8
  342. package/esm/Sidebar/SidebarHeader.d.ts +6 -0
  343. package/esm/Sidebar/SidebarHeader.js +15 -0
  344. package/esm/Sidebar/SidebarHeading.d.ts +6 -0
  345. package/esm/Sidebar/SidebarHeading.js +20 -0
  346. package/esm/Sidebar/SidebarLink.d.ts +8 -0
  347. package/esm/Sidebar/SidebarLink.js +42 -0
  348. package/esm/Sidebar/SidebarLinksGroup/ActiveLinkIndicator.d.ts +8 -0
  349. package/esm/Sidebar/SidebarLinksGroup/ActiveLinkIndicator.js +32 -0
  350. package/esm/Sidebar/SidebarLinksGroup/SidebarGroupLink.d.ts +7 -0
  351. package/esm/Sidebar/{components/SidebarHeader.js → SidebarLinksGroup/SidebarGroupLink.js} +13 -19
  352. package/esm/Sidebar/SidebarLinksGroup/SidebarLinksGroup.d.ts +23 -0
  353. package/esm/Sidebar/SidebarLinksGroup/SidebarLinksGroup.js +100 -0
  354. package/esm/Sidebar/SidebarLinksGroup/index.d.ts +2 -0
  355. package/esm/Sidebar/SidebarLinksGroup/index.js +2 -0
  356. package/esm/Sidebar/SidebarLinksGroup/types.d.ts +10 -0
  357. package/esm/Sidebar/SidebarLinksGroup/types.js +1 -0
  358. package/esm/Sidebar/SidebarNav.d.ts +9 -0
  359. package/esm/Sidebar/SidebarNav.js +31 -0
  360. package/esm/Sidebar/index.d.ts +7 -4
  361. package/esm/Sidebar/index.js +7 -4
  362. package/esm/Sidebar/types.d.ts +6 -2
  363. package/esm/Switch/Switch.tailwind.d.ts +5 -5
  364. package/esm/Switch/Switch.tailwind.js +7 -8
  365. package/esm/Switch/SwitchOption.d.ts +2 -1
  366. package/esm/Switch/SwitchOption.js +1 -1
  367. package/esm/Tables/DataTable/DataTable.d.ts +11 -1
  368. package/esm/Tables/DataTable/DataTable.js +22 -6
  369. package/esm/Tables/DataTable/DataTable.tailwind.d.ts +4 -4
  370. package/esm/Tables/DataTable/DataTable.tailwind.js +4 -7
  371. package/esm/Tables/DataTable/components/Body.d.ts +3 -2
  372. package/esm/Tables/DataTable/components/Body.js +6 -5
  373. package/esm/Tables/DataTable/components/Loader.d.ts +3 -1
  374. package/esm/Tables/DataTable/components/Loader.js +4 -3
  375. package/esm/Tables/Table/Table.tailwind.d.ts +4 -4
  376. package/esm/Tables/Table/Table.tailwind.js +4 -7
  377. package/esm/Tabs/Tabs.tailwind.d.ts +4 -4
  378. package/esm/Tabs/Tabs.tailwind.js +14 -17
  379. package/esm/Tabs/components/LinkTab.js +7 -9
  380. package/esm/Tag/Tag.d.ts +5 -1
  381. package/esm/Tag/Tag.js +14 -6
  382. package/esm/Tag/Tag.tailwind.d.ts +4 -4
  383. package/esm/Tag/Tag.tailwind.js +7 -10
  384. package/esm/TextArea/TextArea.tailwind.d.ts +4 -4
  385. package/esm/TextArea/TextArea.tailwind.js +6 -9
  386. package/esm/Toggle/Toggle.d.ts +1 -1
  387. package/esm/Toggle/Toggle.tailwind.d.ts +5 -5
  388. package/esm/Toggle/Toggle.tailwind.js +19 -22
  389. package/esm/Tooltip/OverflowTooltipWrapper.d.ts +1 -0
  390. package/esm/Tooltip/OverflowTooltipWrapper.js +6 -3
  391. package/esm/Tooltip/Tooltip.d.ts +1 -1
  392. package/esm/Tooltip/Tooltip.tailwind.d.ts +4 -4
  393. package/esm/Tooltip/Tooltip.tailwind.js +20 -19
  394. package/esm/Tooltip/TooltipWrapper.d.ts +1 -0
  395. package/esm/Tooltip/TooltipWrapper.js +4 -3
  396. package/esm/Tooltip/types.d.ts +2 -0
  397. package/esm/Typography/Typography.tailwind.d.ts +5 -17
  398. package/esm/Typography/Typography.tailwind.js +124 -134
  399. package/esm/UserContent/UserContent.tailwind.d.ts +4 -1
  400. package/esm/UserContent/UserContent.tailwind.js +12 -10
  401. package/esm/index.d.ts +0 -1
  402. package/esm/index.js +0 -1
  403. package/esm/styles/base.tailwind.d.ts +4 -4
  404. package/esm/styles/base.tailwind.js +4 -7
  405. package/esm/styles/tailwind.config.d.ts +2 -198
  406. package/esm/styles/tailwind.config.js +27 -30
  407. package/esm/types.d.ts +7 -0
  408. package/esm/utilities/utilities.tailwind.d.ts +4 -1
  409. package/esm/utilities/utilities.tailwind.js +4 -6
  410. package/esm/utils/isCssPropertySupported.d.ts +1 -1
  411. package/esm/utils/pluralize.js +6 -1
  412. package/esm/utils/useLinkProps.d.ts +5 -2
  413. package/esm/utils/useLinkProps.js +9 -2
  414. package/package.json +8 -11
  415. package/satellite.min.css +2 -4
  416. package/scss/colors.scss +1 -0
  417. package/cjs/Banner/Banner.d.ts +0 -85
  418. package/cjs/Banner/Banner.js +0 -176
  419. package/cjs/Banner/index.d.ts +0 -2
  420. package/cjs/Banner/index.js +0 -32
  421. package/cjs/Sidebar/Sidebar.tailwind.d.ts +0 -5
  422. package/cjs/Sidebar/Sidebar.tailwind.js +0 -69
  423. package/cjs/Sidebar/components/SidebarHeader.d.ts +0 -5
  424. package/cjs/Sidebar/components/SidebarLink.d.ts +0 -9
  425. package/cjs/Sidebar/components/SidebarLink.js +0 -98
  426. package/cjs/tailwind-types.d.ts +0 -52
  427. package/esm/Banner/Banner.d.ts +0 -85
  428. package/esm/Banner/Banner.js +0 -161
  429. package/esm/Banner/index.d.ts +0 -2
  430. package/esm/Banner/index.js +0 -2
  431. package/esm/Sidebar/Sidebar.tailwind.d.ts +0 -5
  432. package/esm/Sidebar/Sidebar.tailwind.js +0 -67
  433. package/esm/Sidebar/components/SidebarHeader.d.ts +0 -5
  434. package/esm/Sidebar/components/SidebarLink.d.ts +0 -9
  435. package/esm/Sidebar/components/SidebarLink.js +0 -78
  436. package/esm/tailwind-types.d.ts +0 -52
  437. package/satellite.css +0 -196852
@@ -1,11 +1,9 @@
1
1
  import _rgba from "../styles/rgba";
2
+ import _plugin from "tailwindcss/plugin";
2
3
  // @ts-check
4
+ var plugin = _plugin;
3
5
  var rgba = _rgba;
4
- /**
5
- * @type {import('../tailwind-types').TailwindPlugin}
6
- */
7
-
8
- var rangeSliderPlugin = function rangeSliderPlugin(_ref) {
6
+ var rangeSliderPlugin = plugin(function (_ref) {
9
7
  var addComponents = _ref.addComponents,
10
8
  theme = _ref.theme;
11
9
  var thumbHeight = 24;
@@ -13,13 +11,13 @@ var rangeSliderPlugin = function rangeSliderPlugin(_ref) {
13
11
  addComponents({
14
12
  ".range-slider": {
15
13
  position: "relative",
16
- height: thumbHeight,
17
- minWidth: 200,
14
+ height: "".concat(thumbHeight, "px"),
15
+ minWidth: "200px",
18
16
  display: "flex",
19
17
  alignItems: "center"
20
18
  },
21
19
  ".range-slider-track-1, .range-slider-track-2": {
22
- height: trackHeight,
20
+ height: "".concat(trackHeight, "px"),
23
21
  borderRadius: theme("borderRadius.DEFAULT"),
24
22
  backgroundColor: theme("colors.grey.100"),
25
23
  boxShadow: "\n inset 0px 1px 3px 0px ".concat(rgba(theme("colors.black"), 0.1), ",\n 0px 0.5px 0px 0px ").concat(rgba(theme("colors.white"), 0.05), "\n ")
@@ -32,45 +30,44 @@ var rangeSliderPlugin = function rangeSliderPlugin(_ref) {
32
30
  },
33
31
  ".range-slider-thumb": {
34
32
  position: "absolute",
35
- top: thumbHeight / 2,
36
- width: 12,
33
+ top: "".concat(thumbHeight / 2, "px"),
34
+ width: "12px",
37
35
  transform: "translateX(-6px)",
38
- height: thumbHeight,
36
+ height: "".concat(thumbHeight, "px"),
39
37
  backgroundColor: theme("colors.white"),
40
38
  backgroundImage: "linear-gradient(-180deg, ".concat(theme("colors.white"), " 0%, ").concat(theme("colors.grey.50"), " 100%)"),
41
39
  border: "1px solid ".concat(theme("colors.grey.200")),
42
40
  boxShadow: "0px 1px 0px 0px ".concat(theme("colors.shadow.5")),
43
- borderRadius: 2,
44
- marginTop: -12,
41
+ borderRadius: "2px",
42
+ marginTop: "-12px",
45
43
  "&::after, &::before": {
46
44
  position: "absolute",
47
- height: 12,
48
- width: 1,
45
+ height: "12px",
46
+ width: "1px",
49
47
  backgroundColor: theme("colors.grey.200"),
50
48
  content: '" "',
51
- top: 6
49
+ top: "6px"
52
50
  },
53
51
  "&::before": {
54
- left: 6
52
+ left: "6px"
55
53
  },
56
54
  "&::after": {
57
- right: 6
55
+ right: "6px"
58
56
  }
59
57
  },
60
58
  ".range-slider-input": {
61
59
  position: "absolute",
62
- top: 0,
63
- left: 0,
60
+ top: "0px",
61
+ left: "0px",
64
62
  width: "100%",
65
- height: thumbHeight,
63
+ height: "".concat(thumbHeight, "px"),
66
64
  appearance: "none",
67
- opacity: 0,
65
+ opacity: "0",
68
66
  cursor: "pointer",
69
67
  "&:disabled": {
70
68
  cursor: "not-allowed"
71
69
  }
72
70
  }
73
71
  });
74
- };
75
-
72
+ });
76
73
  export default rangeSliderPlugin;
@@ -1,7 +1,11 @@
1
- import type { FunctionComponent } from "react";
1
+ import type { FunctionComponent, ReactNode } from "react";
2
+ import type { ComponentsLocales } from "./locale";
2
3
  import type { SatelliteRouter } from "./SatelliteRouter";
3
4
  export interface SatelliteProps {
4
5
  router?: SatelliteRouter;
6
+ locales?: ComponentsLocales;
7
+ portalTarget?: HTMLElement;
8
+ children: ReactNode;
5
9
  }
6
10
  export declare const Satellite: FunctionComponent<SatelliteProps>;
7
11
  export default Satellite;
@@ -1,11 +1,17 @@
1
1
  import SatelliteContext from "./SatelliteContext";
2
+ import { router as defaultRouter } from "./SatelliteRouter";
2
3
  import { jsx as _jsx } from "react/jsx-runtime";
3
4
  export var Satellite = function Satellite(_ref) {
4
- var router = _ref.router,
5
+ var _ref$router = _ref.router,
6
+ router = _ref$router === void 0 ? defaultRouter : _ref$router,
7
+ locales = _ref.locales,
8
+ portalTarget = _ref.portalTarget,
5
9
  children = _ref.children;
6
10
  return /*#__PURE__*/_jsx(SatelliteContext.Provider, {
7
11
  value: {
8
- router: router
12
+ router: router,
13
+ locales: locales,
14
+ portalTarget: portalTarget
9
15
  },
10
16
  children: children
11
17
  });
@@ -1,8 +1,11 @@
1
1
  /// <reference types="react" />
2
+ import type { ComponentsLocales } from "./locale";
2
3
  import { SatelliteRouter } from "./SatelliteRouter";
3
4
  export interface SatelliteContextType {
4
5
  router: SatelliteRouter;
6
+ locales?: ComponentsLocales;
7
+ portalTarget?: HTMLElement;
5
8
  }
6
- export declare const SatelliteContext: import("react").Context<Partial<SatelliteContextType> | undefined>;
9
+ export declare const SatelliteContext: import("react").Context<SatelliteContextType>;
7
10
  export declare const useSatelliteContext: () => SatelliteContextType;
8
11
  export default SatelliteContext;
@@ -7,7 +7,8 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
7
7
  import { createContext, useContext } from "react";
8
8
  import { router } from "./SatelliteRouter";
9
9
  var DEFAULT_CONTEXT = {
10
- router: router
10
+ router: router,
11
+ locales: {}
11
12
  };
12
13
  export var SatelliteContext = /*#__PURE__*/createContext(DEFAULT_CONTEXT);
13
14
  export var useSatelliteContext = function useSatelliteContext() {
@@ -1,4 +1,6 @@
1
1
  export * from "./Satellite";
2
2
  export * from "./SatelliteContext";
3
3
  export * from "./SatelliteRouter";
4
+ export * from "./locale";
5
+ export * from "./useCreatePortal";
4
6
  export { default } from "./Satellite";
@@ -1,4 +1,6 @@
1
1
  export * from "./Satellite";
2
2
  export * from "./SatelliteContext";
3
3
  export * from "./SatelliteRouter";
4
+ export * from "./locale";
5
+ export * from "./useCreatePortal";
4
6
  export { default } from "./Satellite";
@@ -0,0 +1,29 @@
1
+ import type { AnnouncementBadgeLocale } from "../AnnouncementBadge";
2
+ import type { AutoCompleteLocale } from "../AutoComplete";
3
+ import type { DatePickerLocale } from "../DatePicker/types";
4
+ import type { DropzoneLocale } from "../Dropzone";
5
+ import type { FlagLocale } from "../Flag";
6
+ import type { InputPropsLocale } from "../Input";
7
+ import type { ModalLocale } from "../Modal";
8
+ import type { PaginationLocale } from "../Pagination";
9
+ import type { CompactPaginationLocale } from "../Pagination/CompactPagination";
10
+ import type { DotPaginationLocale } from "../Pagination/DotPagination";
11
+ import type { SidebarLocale } from "../Sidebar";
12
+ import type { DataTableLocale } from "../Tables/DataTable";
13
+ import type { TagLocale } from "../Tag";
14
+ export declare type ComponentsLocales = {
15
+ announcementBadge?: AnnouncementBadgeLocale;
16
+ autoComplete?: AutoCompleteLocale;
17
+ compactPagination?: CompactPaginationLocale;
18
+ dataTable?: DataTableLocale;
19
+ datePicker?: DatePickerLocale;
20
+ dotPagination?: DotPaginationLocale;
21
+ dropzone?: DropzoneLocale;
22
+ flag?: FlagLocale;
23
+ input?: InputPropsLocale;
24
+ modal?: ModalLocale;
25
+ pagination?: PaginationLocale;
26
+ sidebar?: SidebarLocale;
27
+ tag?: TagLocale;
28
+ };
29
+ export declare const useLocale: <ComponentKey extends keyof ComponentsLocales>(componentKey: ComponentKey) => ComponentsLocales[ComponentKey];
@@ -0,0 +1,8 @@
1
+ import { useContext } from "react";
2
+ import SatelliteContext from "./SatelliteContext";
3
+ export var useLocale = function useLocale(componentKey) {
4
+ var _useContext = useContext(SatelliteContext),
5
+ locales = _useContext.locales;
6
+
7
+ return locales === null || locales === void 0 ? void 0 : locales[componentKey];
8
+ };
@@ -0,0 +1,4 @@
1
+ import { ReactElement, ReactNode } from "react";
2
+ declare type CreatePortal = (children: ReactNode) => ReactElement;
3
+ export declare const useCreatePortal: () => CreatePortal;
4
+ export {};
@@ -0,0 +1,16 @@
1
+ import { Fragment } from "react";
2
+ import { createPortal } from "react-dom";
3
+ import { useSatelliteContext } from "./SatelliteContext";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ export var useCreatePortal = function useCreatePortal() {
6
+ var _useSatelliteContext = useSatelliteContext(),
7
+ portalTarget = _useSatelliteContext.portalTarget; // SSR? Too bad! Abort, abort!
8
+
9
+
10
+ if (typeof document === "undefined") return function () {
11
+ return /*#__PURE__*/_jsx(Fragment, {});
12
+ };
13
+ return function (children) {
14
+ return /*#__PURE__*/createPortal(children, portalTarget !== null && portalTarget !== void 0 ? portalTarget : document.body);
15
+ };
16
+ };
@@ -1,11 +1,14 @@
1
- import type { CSSProperties, FunctionComponent, ReactHTML } from "react";
1
+ import type { CSSProperties, FunctionComponent, ReactHTML, ReactNode } from "react";
2
2
  export declare type ScrollIndicatorVariant = "light" | "dark";
3
3
  export interface ScrollIndicatorProps {
4
4
  wrapperClassName?: string;
5
+ /** @ignore */
5
6
  className?: string;
7
+ /** @ignore */
6
8
  style?: CSSProperties;
7
9
  tagName?: keyof ReactHTML;
8
10
  variant?: ScrollIndicatorVariant;
11
+ children: ReactNode;
9
12
  }
10
13
  export declare const ScrollIndicator: FunctionComponent<ScrollIndicatorProps>;
11
14
  export default ScrollIndicator;
@@ -84,7 +84,8 @@ export var ScrollIndicator = function ScrollIndicator(_ref) {
84
84
  children: /*#__PURE__*/createElement(tagName, {
85
85
  style: style,
86
86
  className: cx(stl(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["scroll-indicator-content"]))), className),
87
- ref: setScrollIndicatorsRef
87
+ ref: setScrollIndicatorsRef,
88
+ tabIndex: 0
88
89
  }, children)
89
90
  });
90
91
  };
@@ -1,5 +1,5 @@
1
1
  export = scrollIndicatorPlugin;
2
- /**
3
- * @type {import('../tailwind-types').TailwindPlugin}
4
- */
5
- declare const scrollIndicatorPlugin: import('../tailwind-types').TailwindPlugin;
2
+ declare const scrollIndicatorPlugin: {
3
+ handler: import("tailwindcss/types/config").PluginCreator;
4
+ config?: import("tailwindcss").Config | undefined;
5
+ };
@@ -1,11 +1,9 @@
1
1
  import _rgba from "../styles/rgba";
2
+ import _plugin from "tailwindcss/plugin";
2
3
  // @ts-check
4
+ var plugin = _plugin;
3
5
  var rgba = _rgba;
4
- /**
5
- * @type {import('../tailwind-types').TailwindPlugin}
6
- */
7
-
8
- var scrollIndicatorPlugin = function scrollIndicatorPlugin(_ref) {
6
+ var scrollIndicatorPlugin = plugin(function (_ref) {
9
7
  var addComponents = _ref.addComponents,
10
8
  theme = _ref.theme;
11
9
  addComponents({
@@ -15,16 +13,16 @@ var scrollIndicatorPlugin = function scrollIndicatorPlugin(_ref) {
15
13
  "&::before, &::after": {
16
14
  position: "absolute",
17
15
  width: "100%",
18
- height: 48,
19
- left: 0,
16
+ height: "48px",
17
+ left: "0px",
20
18
  pointerEvents: "none"
21
19
  },
22
20
  "&::before": {
23
- top: 0,
21
+ top: "0px",
24
22
  backgroundImage: "linear-gradient(0, ".concat(rgba(theme("colors.white"), 0), " 0%, ").concat(theme("colors.white"), " 100%)")
25
23
  },
26
24
  "&::after": {
27
- bottom: 0,
25
+ bottom: "0px",
28
26
  backgroundImage: "linear-gradient(180deg, ".concat(rgba(theme("colors.white"), 0), " 0%, ").concat(theme("colors.white"), " 100%)")
29
27
  }
30
28
  },
@@ -48,6 +46,5 @@ var scrollIndicatorPlugin = function scrollIndicatorPlugin(_ref) {
48
46
  overflowY: "auto"
49
47
  }
50
48
  });
51
- };
52
-
49
+ });
53
50
  export default scrollIndicatorPlugin;
@@ -1,5 +1,5 @@
1
- export = buttonPlugin;
2
- /**
3
- * @type {import('../tailwind-types').TailwindPlugin}
4
- */
5
- declare const buttonPlugin: import('../tailwind-types').TailwindPlugin;
1
+ export = selectPlugin;
2
+ declare const selectPlugin: {
3
+ handler: import("tailwindcss/types/config").PluginCreator;
4
+ config?: import("tailwindcss").Config | undefined;
5
+ };
@@ -1,14 +1,12 @@
1
1
  import _require2 from "../styles/helpers/icons";
2
2
  import _disabledColor from "../styles/disabledColor";
3
+ import _plugin from "tailwindcss/plugin";
3
4
  // @ts-check
5
+ var plugin = _plugin;
4
6
  var disabledColor = _disabledColor;
5
7
  var _require = _require2,
6
8
  selectIconBG = _require.selectIconBG;
7
- /**
8
- * @type {import('../tailwind-types').TailwindPlugin}
9
- */
10
-
11
- var buttonPlugin = function buttonPlugin(_ref) {
9
+ var selectPlugin = plugin(function (_ref) {
12
10
  var addComponents = _ref.addComponents,
13
11
  theme = _ref.theme;
14
12
  addComponents({
@@ -75,6 +73,5 @@ var buttonPlugin = function buttonPlugin(_ref) {
75
73
  backgroundSize: "12px, auto"
76
74
  }
77
75
  });
78
- };
79
-
80
- export default buttonPlugin;
76
+ });
77
+ export default selectPlugin;
@@ -1,12 +1,35 @@
1
- import type { DetailedHTMLProps, HTMLAttributes } from "react";
2
- import type { SidebarCollapsed, SidebarVariant } from "./types";
3
- export interface SidebarProps extends DetailedHTMLProps<HTMLAttributes<HTMLElement>, HTMLElement> {
1
+ import type { FC, ReactNode } from "react";
2
+ import type { SidebarLocale, SidebarLocation, SidebarVariant } from "./types";
3
+ export interface SidebarProps {
4
+ id?: string;
5
+ className?: string;
6
+ label?: string;
7
+ locale?: SidebarLocale;
8
+ collapsed?: boolean;
9
+ /**
10
+ * As the name of the variants imply,
11
+ * - `primary` should be used for your first level of navigation
12
+ * - `secondary` should be used for your second level of navigation
13
+ */
4
14
  variant?: SidebarVariant;
5
- collapsed?: SidebarCollapsed;
15
+ /**
16
+ * Used to determine whether a link should be highlighted as "active"
17
+ * Ideally only one link should be shown as active at any given time.
18
+ *
19
+ * @example <caption>with a location of /foo/bar</caption>
20
+ * isLinkActive('/foo', location) // returns true
21
+ *
22
+ * @example <caption>with a location of /bar</caption>
23
+ * isLinkActive('/foo', location) // returns false
24
+ *
25
+ * */
26
+ isLinkActive?: (href: string, location: SidebarLocation) => boolean;
27
+ /**
28
+ * location is used in conjunction with `isLinkActive` to display active links properly.
29
+ * It is injected from outside so that it can work with different router libraries and
30
+ * re-render when necessary.
31
+ */
32
+ location: SidebarLocation;
33
+ children?: ReactNode;
6
34
  }
7
- export declare const Sidebar: {
8
- ({ className, variant, collapsed, children, ...navProps }: SidebarProps): JSX.Element;
9
- Header: ({ className, children, ...headingProps }: import("./components/SidebarHeader").SidebarHeaderProps) => JSX.Element;
10
- Link: import("react").FunctionComponent<import("./components/SidebarLink").SidebarLinkProps>;
11
- };
12
- export default Sidebar;
35
+ export declare const Sidebar: FC<SidebarProps>;
@@ -1,45 +1,60 @@
1
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
1
  import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
3
- import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
-
5
- var _templateObject;
2
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
6
3
 
7
- var _excluded = ["className", "variant", "collapsed", "children"];
4
+ var _templateObject, _templateObject2, _templateObject3;
8
5
 
9
6
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10
7
 
11
8
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12
9
 
13
10
  import cx from "classnames";
14
- import { useMemo } from "react";
11
+ import { useCallback } from "react";
12
+ import { useLocale } from "../Satellite";
13
+ import ScrollIndicator from "../ScrollIndicator";
15
14
  import stl from "../styles/helpers/satellitePrefixer";
16
- import SidebarHeader from "./components/SidebarHeader";
17
- import SidebarLink from "./components/SidebarLink";
18
- import SidebarContext, { SIDEBAR_CONTEXT_DEFAULT } from "./SidebarContext";
15
+ import matchLocation from "../utils/matchLocation";
16
+ import { SidebarContext } from "./SidebarContext";
19
17
  import { jsx as _jsx } from "react/jsx-runtime";
18
+ var DEFAULT_SIDEBAR_LOCALE = {
19
+ primarySidebarLabel: "Primary Navigation Sidebar",
20
+ secondarySidebarLabel: "Secondary Navigation Sidebar"
21
+ };
20
22
  export var Sidebar = function Sidebar(_ref) {
21
- var className = _ref.className,
23
+ var id = _ref.id,
24
+ className = _ref.className,
25
+ labelProp = _ref.label,
26
+ localeProp = _ref.locale,
22
27
  _ref$variant = _ref.variant,
23
- variant = _ref$variant === void 0 ? SIDEBAR_CONTEXT_DEFAULT.variant : _ref$variant,
28
+ variant = _ref$variant === void 0 ? "primary" : _ref$variant,
24
29
  _ref$collapsed = _ref.collapsed,
25
- collapsed = _ref$collapsed === void 0 ? SIDEBAR_CONTEXT_DEFAULT.collapsed : _ref$collapsed,
26
- children = _ref.children,
27
- navProps = _objectWithoutProperties(_ref, _excluded);
30
+ collapsed = _ref$collapsed === void 0 ? false : _ref$collapsed,
31
+ _ref$isLinkActive = _ref.isLinkActive,
32
+ isLinkActiveProp = _ref$isLinkActive === void 0 ? matchLocation : _ref$isLinkActive,
33
+ location = _ref.location,
34
+ children = _ref.children;
35
+ var isLinkActive = useCallback(function (href) {
36
+ return isLinkActiveProp(href, location);
37
+ }, [isLinkActiveProp, location]);
38
+ var contextLocale = useLocale("sidebar");
28
39
 
29
- var sidebarContext = useMemo(function () {
30
- return {
31
- variant: variant,
32
- collapsed: collapsed
33
- };
34
- }, [variant, collapsed]);
40
+ var locale = _objectSpread(_objectSpread(_objectSpread({}, DEFAULT_SIDEBAR_LOCALE), contextLocale), localeProp);
41
+
42
+ var label = typeof labelProp === "string" ? labelProp : variant === "primary" ? locale.primarySidebarLabel : locale.secondarySidebarLabel;
35
43
  return /*#__PURE__*/_jsx(SidebarContext.Provider, {
36
- value: sidebarContext,
37
- children: /*#__PURE__*/_jsx("nav", _objectSpread(_objectSpread({}, navProps), {}, {
38
- className: cx(stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["sidebar ", " ", " display-body"])), variant === "light" && "sidebar-light", collapsed && "sidebar-collapsed"), className),
39
- children: children
40
- }))
44
+ value: {
45
+ collapsed: collapsed,
46
+ variant: variant,
47
+ isLinkActive: isLinkActive
48
+ },
49
+ children: /*#__PURE__*/_jsx("aside", {
50
+ id: id,
51
+ "aria-label": label,
52
+ className: cx(stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display-body border-r border-grey-200/50\n ", "\n ", "\n "])), collapsed ? "w-14" : "w-56", variant === "primary" ? "bg-grey-100" : "bg-white"), className),
53
+ children: /*#__PURE__*/_jsx(ScrollIndicator, {
54
+ wrapperClassName: stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["h-full"]))),
55
+ className: stl(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["relative px-3 pb-7 flex flex-col no-scrollbar"]))),
56
+ children: children
57
+ })
58
+ })
41
59
  });
42
- };
43
- Sidebar.Header = SidebarHeader;
44
- Sidebar.Link = SidebarLink;
45
- export default Sidebar;
60
+ };
@@ -0,0 +1,14 @@
1
+ import type { FC, MouseEventHandler, ReactNode } from "react";
2
+ import type { IconComponentType } from "../types";
3
+ export declare type SidebarButtonLinkIcon = IconComponentType | {
4
+ active: IconComponentType;
5
+ inactive: IconComponentType;
6
+ };
7
+ export interface SidebarButtonLinkProps {
8
+ id?: string;
9
+ icon: SidebarButtonLinkIcon;
10
+ href: string;
11
+ children: ReactNode;
12
+ onClick?: MouseEventHandler<HTMLAnchorElement>;
13
+ }
14
+ export declare const SidebarButtonLink: FC<SidebarButtonLinkProps>;
@@ -0,0 +1,92 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
+ import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
4
+
5
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4;
6
+
7
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
8
+
9
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
+
11
+ import { useState } from "react";
12
+ import { BaseLink } from "../Link";
13
+ import stl from "../styles/helpers/satellitePrefixer";
14
+ import { TooltipWrapper } from "../Tooltip";
15
+ import useLinkProps from "../utils/useLinkProps";
16
+ import { useSidebarContext } from "./SidebarContext";
17
+ import { jsx as _jsx } from "react/jsx-runtime";
18
+ import { jsxs as _jsxs } from "react/jsx-runtime";
19
+
20
+ var Tooltip = function Tooltip(_ref) {
21
+ var title = _ref.title,
22
+ children = _ref.children;
23
+ return /*#__PURE__*/_jsx(TooltipWrapper, {
24
+ placement: "right",
25
+ delay: 0,
26
+ hideDelay: 0,
27
+ modifiers: [{
28
+ name: "offset",
29
+ options: {
30
+ offset: [0, 32]
31
+ }
32
+ }],
33
+ content: title,
34
+ wrapperClassName: stl(_templateObject || (_templateObject = _taggedTemplateLiteral(["block"]))),
35
+ interactive: false,
36
+ children: children
37
+ });
38
+ };
39
+
40
+ export var SidebarButtonLink = function SidebarButtonLink(_ref2) {
41
+ var id = _ref2.id,
42
+ icon = _ref2.icon,
43
+ href = _ref2.href,
44
+ children = _ref2.children,
45
+ onClick = _ref2.onClick;
46
+
47
+ var _useSidebarContext = useSidebarContext(),
48
+ isLinkActive = _useSidebarContext.isLinkActive,
49
+ collapsed = _useSidebarContext.collapsed;
50
+
51
+ var linkProps = useLinkProps({
52
+ href: href,
53
+ onClick: onClick
54
+ });
55
+
56
+ var _useState = useState(false),
57
+ _useState2 = _slicedToArray(_useState, 2),
58
+ isInteractedWith = _useState2[0],
59
+ setIsInteractedWith = _useState2[1];
60
+
61
+ var isActive = isLinkActive(href);
62
+ var showColors = isActive || isInteractedWith;
63
+ var Icon = "active" in icon ? showColors ? icon.active : icon.inactive : icon;
64
+ return /*#__PURE__*/_jsx(Tooltip, {
65
+ title: collapsed ? children : null,
66
+ children: /*#__PURE__*/_jsxs(BaseLink, _objectSpread(_objectSpread({}, linkProps), {}, {
67
+ id: id,
68
+ onMouseEnter: function onMouseEnter() {
69
+ return setIsInteractedWith(true);
70
+ },
71
+ onFocus: function onFocus() {
72
+ return setIsInteractedWith(true);
73
+ },
74
+ onMouseLeave: function onMouseLeave() {
75
+ return setIsInteractedWith(false);
76
+ },
77
+ onBlur: function onBlur() {
78
+ return setIsInteractedWith(false);
79
+ },
80
+ className: stl(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n h-8 min-w-8 w-full rounded\n flex items-center space-x-3\n border border-transparent\n display-body hover:no-underline\n focus:outline-none focus:border-grey-500\n ", "\n ", "\n ", "\n "])), isActive ? "shadow-z100" : "hover:border-grey-200", isActive && "bg-gradient-to-b from-white to-grey-50", collapsed ? "pl-2" : "px-2"),
81
+ "aria-current": isActive,
82
+ children: [/*#__PURE__*/_jsx(Icon, {
83
+ className: stl(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["", " ml-[-3px]"])), showColors ? "text-accent-600" : "text-grey-400"),
84
+ height: 20,
85
+ width: 20
86
+ }), /*#__PURE__*/_jsx("span", {
87
+ className: stl(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["\n ", "\n ", "\n ", "\n "])), collapsed && "sr-only", showColors ? "text-accent-600" : "typo-subdued", isActive && "font-bold"),
88
+ children: children
89
+ })]
90
+ }))
91
+ });
92
+ };
@@ -1,10 +1,9 @@
1
1
  /// <reference types="react" />
2
- import type { SidebarCollapsed, SidebarVariant } from "./types";
3
- export interface SideBarContextType {
2
+ import type { SidebarVariant } from "./types";
3
+ export declare type SidebarContextType = {
4
4
  variant: SidebarVariant;
5
- collapsed: SidebarCollapsed;
6
- }
7
- export declare const SIDEBAR_CONTEXT_DEFAULT: SideBarContextType;
8
- export declare const SidebarContext: import("react").Context<SideBarContextType>;
9
- export declare const useSidebarContext: () => SideBarContextType;
10
- export default SidebarContext;
5
+ collapsed: boolean;
6
+ isLinkActive: (href: string) => boolean;
7
+ };
8
+ export declare const SidebarContext: import("react").Context<SidebarContextType | null>;
9
+ export declare const useSidebarContext: () => SidebarContextType;
@@ -1,10 +1,11 @@
1
1
  import { createContext, useContext } from "react";
2
- export var SIDEBAR_CONTEXT_DEFAULT = {
3
- variant: "dark",
4
- collapsed: false
5
- };
6
- export var SidebarContext = /*#__PURE__*/createContext(SIDEBAR_CONTEXT_DEFAULT);
2
+ export var SidebarContext = /*#__PURE__*/createContext(null);
7
3
  export var useSidebarContext = function useSidebarContext() {
8
- return useContext(SidebarContext);
9
- };
10
- export default SidebarContext;
4
+ var context = useContext(SidebarContext);
5
+
6
+ if (!context) {
7
+ throw new Error("useSidebarContext used outside of Sidebar");
8
+ }
9
+
10
+ return context;
11
+ };
@@ -0,0 +1,6 @@
1
+ import type { FC, ReactNode } from "react";
2
+ export declare type SidebarHeaderProps = {
3
+ className?: string;
4
+ children?: ReactNode;
5
+ };
6
+ export declare const SidebarHeader: FC<SidebarHeaderProps>;