@redocly/theme 0.18.2 → 0.18.3-patch.1

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 (420) hide show
  1. package/lib/I18n/LanguagePicker.d.ts +7 -2
  2. package/lib/I18n/LanguagePicker.js +11 -3
  3. package/lib/I18n/index.d.ts +1 -0
  4. package/lib/I18n/index.js +15 -0
  5. package/lib/I18n/styledVariables.d.ts +1 -0
  6. package/lib/I18n/styledVariables.js +39 -0
  7. package/lib/components/Breadcrumbs/Breadcrumb.d.ts +1 -0
  8. package/lib/components/Breadcrumbs/Breadcrumb.js +4 -3
  9. package/lib/components/Breadcrumbs/Breadcrumbs.js +9 -2
  10. package/lib/components/Breadcrumbs/index.d.ts +1 -0
  11. package/lib/components/Breadcrumbs/index.js +1 -0
  12. package/lib/components/Breadcrumbs/styledVariables.d.ts +1 -0
  13. package/lib/components/Breadcrumbs/styledVariables.js +19 -0
  14. package/lib/components/Button/Button.d.ts +6 -3
  15. package/lib/components/Button/Button.js +41 -41
  16. package/lib/components/Button/index.d.ts +1 -0
  17. package/lib/components/Button/index.js +1 -0
  18. package/lib/components/Button/styledVariables.d.ts +1 -0
  19. package/lib/components/Button/styledVariables.js +107 -0
  20. package/lib/components/Catalog/Catalog.d.ts +1 -0
  21. package/lib/components/Catalog/Catalog.js +100 -97
  22. package/lib/components/Catalog/CatalogCard.js +73 -58
  23. package/lib/components/Catalog/index.d.ts +4 -3
  24. package/lib/components/Catalog/index.js +4 -3
  25. package/lib/components/Catalog/styledVariables.d.ts +1 -0
  26. package/lib/components/Catalog/styledVariables.js +96 -0
  27. package/lib/components/Catalog/useCatalog.js +12 -1
  28. package/lib/components/CodeBlock/CodeBlockContainer.js +38 -10
  29. package/lib/components/CodeBlock/CodeBlockControlButton.d.ts +3 -4
  30. package/lib/components/CodeBlock/CodeBlockControlButton.js +5 -19
  31. package/lib/components/CodeBlock/CodeBlockControls.js +14 -7
  32. package/lib/components/CodeBlock/index.d.ts +1 -0
  33. package/lib/components/CodeBlock/index.js +1 -0
  34. package/lib/components/CodeBlock/styledVariables.d.ts +1 -0
  35. package/lib/components/CodeBlock/styledVariables.js +92 -0
  36. package/lib/components/ColorModeSwitcher/ColorModeSwitcher.js +2 -1
  37. package/lib/components/Dropdown/Dropdown.d.ts +9 -3
  38. package/lib/components/Dropdown/Dropdown.js +7 -4
  39. package/lib/components/Dropdown/index.d.ts +1 -0
  40. package/lib/components/Dropdown/index.js +1 -0
  41. package/lib/components/Dropdown/styledVariables.d.ts +1 -0
  42. package/lib/components/Dropdown/styledVariables.js +30 -0
  43. package/lib/components/EditPageButton/EditPageButton.js +7 -2
  44. package/lib/components/Feedback/Comment.js +5 -0
  45. package/lib/components/Feedback/Feedback.js +13 -3
  46. package/lib/components/Feedback/Rating.js +5 -1
  47. package/lib/components/Feedback/Reasons.js +6 -1
  48. package/lib/components/Feedback/Sentiment.js +11 -2
  49. package/lib/components/Feedback/Thumbs.js +4 -4
  50. package/lib/components/Filter/Filter.js +104 -78
  51. package/lib/components/Filter/FilterContent.d.ts +11 -0
  52. package/lib/components/Filter/FilterContent.js +59 -0
  53. package/lib/components/Filter/FilterPopover.d.ts +11 -0
  54. package/lib/components/Filter/FilterPopover.js +109 -0
  55. package/lib/components/Filter/FilterTag.d.ts +7 -0
  56. package/lib/components/Filter/FilterTag.js +33 -0
  57. package/lib/components/Filter/FilterTags.d.ts +7 -0
  58. package/lib/components/Filter/FilterTags.js +29 -0
  59. package/lib/components/Filter/index.d.ts +2 -0
  60. package/lib/components/Filter/index.js +2 -0
  61. package/lib/components/Filter/styledVariables.d.ts +1 -0
  62. package/lib/components/Filter/styledVariables.js +112 -0
  63. package/lib/components/Footer/CustomFooterNavItem.js +1 -1
  64. package/lib/components/Footer/Footer.d.ts +4 -3
  65. package/lib/components/Footer/Footer.js +27 -10
  66. package/lib/components/Footer/FooterColumn.d.ts +3 -3
  67. package/lib/components/Footer/FooterColumn.js +54 -63
  68. package/lib/components/Footer/FooterColumns.js +6 -4
  69. package/lib/components/Footer/FooterCopyright.js +11 -6
  70. package/lib/components/Footer/index.d.ts +1 -0
  71. package/lib/components/Footer/index.js +1 -0
  72. package/lib/components/Footer/styledVariables.d.ts +1 -0
  73. package/lib/components/Footer/styledVariables.js +61 -0
  74. package/lib/components/Image/Image.d.ts +9 -0
  75. package/lib/components/Image/Image.js +31 -0
  76. package/lib/components/Image/index.d.ts +1 -0
  77. package/lib/components/{Tags → Image}/index.js +1 -1
  78. package/lib/components/JsonViewer/JsonViewer.js +2 -2
  79. package/lib/components/LastUpdated/index.d.ts +1 -0
  80. package/lib/components/{OperationBadge → LastUpdated}/index.js +1 -1
  81. package/lib/components/LastUpdated/styledVariables.d.ts +1 -0
  82. package/lib/components/LastUpdated/styledVariables.js +11 -0
  83. package/lib/components/Markdown/MarkdownWrapper.js +2 -4
  84. package/lib/components/Markdown/Mermaid.js +1 -1
  85. package/lib/components/Markdown/index.d.ts +1 -0
  86. package/lib/components/Markdown/index.js +1 -0
  87. package/lib/components/Markdown/styledVariables.d.ts +2 -0
  88. package/lib/components/Markdown/styledVariables.js +221 -0
  89. package/lib/components/Menu/Menu.js +5 -7
  90. package/lib/components/Menu/MenuGroup.js +12 -7
  91. package/lib/components/Menu/MenuItemLabel.js +9 -13
  92. package/lib/components/Menu/MenuLinkItem.js +2 -1
  93. package/lib/components/Menu/MobileMenu.js +20 -25
  94. package/lib/components/Menu/MobileMenuGroup.js +1 -1
  95. package/lib/components/Menu/index.d.ts +1 -0
  96. package/lib/components/Menu/index.js +1 -0
  97. package/lib/components/Menu/styledVariables.d.ts +2 -0
  98. package/lib/components/Menu/styledVariables.js +101 -0
  99. package/lib/components/Navbar/Navbar.js +10 -11
  100. package/lib/components/Navbar/NavbarItem.d.ts +1 -1
  101. package/lib/components/Navbar/NavbarItem.js +14 -6
  102. package/lib/components/Navbar/NavbarMenu.js +2 -2
  103. package/lib/components/Navbar/index.d.ts +1 -0
  104. package/lib/components/Navbar/index.js +1 -0
  105. package/lib/components/Navbar/styledVariables.d.ts +1 -0
  106. package/lib/components/Navbar/styledVariables.js +43 -0
  107. package/lib/components/NavbarLogo/NavbarLogo.d.ts +4 -1
  108. package/lib/components/NavbarLogo/NavbarLogo.js +14 -5
  109. package/lib/components/NavbarLogo/index.d.ts +1 -0
  110. package/lib/components/NavbarLogo/index.js +1 -0
  111. package/lib/components/NavbarLogo/styledVariables.d.ts +1 -0
  112. package/lib/components/NavbarLogo/styledVariables.js +18 -0
  113. package/lib/components/OpenApiDocs/DevOnboardingTryItSecurity.js +2 -2
  114. package/lib/components/OpenApiDocs/Dropdown.js +3 -3
  115. package/lib/components/Panel/PanelHeader.js +1 -0
  116. package/lib/components/Panel/PanelHeaderTitle.js +0 -4
  117. package/lib/components/Panel/index.d.ts +1 -0
  118. package/lib/components/Panel/index.js +1 -0
  119. package/lib/components/Panel/styledVariables.d.ts +2 -0
  120. package/lib/components/Panel/styledVariables.js +481 -0
  121. package/lib/components/Product/index.d.ts +1 -0
  122. package/lib/components/Product/index.js +1 -0
  123. package/lib/components/Product/styledVariables.d.ts +2 -0
  124. package/lib/components/Product/styledVariables.js +41 -0
  125. package/lib/components/Profile/LoginLink.js +5 -3
  126. package/lib/components/{Navbar → Profile}/MobileUserProfile.js +18 -26
  127. package/lib/components/Profile/Profile.js +3 -22
  128. package/lib/components/Profile/UserProfile.js +25 -9
  129. package/lib/components/Profile/UserProfileData.d.ts +9 -0
  130. package/lib/components/Profile/UserProfileData.js +35 -0
  131. package/lib/components/Profile/index.d.ts +1 -0
  132. package/lib/components/Profile/index.js +15 -0
  133. package/lib/components/Profile/styledVariables.d.ts +2 -0
  134. package/lib/components/Profile/styledVariables.js +55 -0
  135. package/lib/components/Search/CancelSearch.js +2 -14
  136. package/lib/components/Search/ProductTag.js +8 -8
  137. package/lib/components/Search/RecentSearches.js +5 -5
  138. package/lib/components/Search/Search.js +0 -2
  139. package/lib/components/Search/SearchIcon.js +2 -2
  140. package/lib/components/Search/SearchItem.js +14 -17
  141. package/lib/components/Search/SearchTrigger.js +4 -5
  142. package/lib/components/Search/ShortcutKey.js +1 -5
  143. package/lib/components/Search/SuggestedPages.js +3 -3
  144. package/lib/components/Search/index.d.ts +1 -0
  145. package/lib/components/Search/index.js +1 -0
  146. package/lib/components/Search/styledVariables.d.ts +1 -0
  147. package/lib/components/Search/styledVariables.js +98 -0
  148. package/lib/components/Select/Select.d.ts +10 -3
  149. package/lib/components/Select/Select.js +9 -6
  150. package/lib/components/Select/index.d.ts +1 -0
  151. package/lib/components/Select/index.js +1 -0
  152. package/lib/components/Select/styledVariables.d.ts +1 -0
  153. package/lib/components/Select/styledVariables.js +33 -0
  154. package/lib/components/Separator/Separator.js +11 -3
  155. package/lib/components/Separator/SeparatorItem.js +5 -9
  156. package/lib/components/Separator/SeparatorLine.js +7 -3
  157. package/lib/components/Sidebar/ApiCallItem.d.ts +2 -6
  158. package/lib/components/Sidebar/ApiCallItem.js +17 -13
  159. package/lib/components/Sidebar/FooterWrapper.js +3 -4
  160. package/lib/components/Sidebar/HeaderWrapper.js +2 -2
  161. package/lib/components/Sidebar/SidebarLayout.js +2 -1
  162. package/lib/components/Sidebar/VersionPicker.d.ts +1 -1
  163. package/lib/components/Sidebar/index.d.ts +1 -0
  164. package/lib/components/Sidebar/index.js +1 -0
  165. package/lib/components/Sidebar/styledVariables.d.ts +2 -0
  166. package/lib/components/Sidebar/styledVariables.js +215 -0
  167. package/lib/components/Sidebar/types.d.ts +1 -0
  168. package/lib/components/SidebarActions/CollapseSidebarButton.js +41 -1
  169. package/lib/components/SidebarActions/SidebarActions.js +15 -3
  170. package/lib/components/SidebarActions/styled.js +29 -21
  171. package/lib/components/TableOfContent/TableOfContent.js +4 -4
  172. package/lib/components/TableOfContent/index.d.ts +1 -0
  173. package/lib/components/TableOfContent/index.js +1 -0
  174. package/lib/components/TableOfContent/styledVariables.d.ts +1 -0
  175. package/lib/components/TableOfContent/styledVariables.js +46 -0
  176. package/lib/components/Tabs/Tab.js +1 -1
  177. package/lib/components/Tabs/Tabs.js +1 -1
  178. package/lib/components/Tag/Tag.d.ts +17 -0
  179. package/lib/components/Tag/Tag.js +39 -0
  180. package/lib/components/Tag/index.d.ts +2 -0
  181. package/lib/components/Tag/index.js +19 -0
  182. package/lib/components/Tag/styledVariables.d.ts +1 -0
  183. package/lib/components/Tag/styledVariables.js +130 -0
  184. package/lib/components/Tiles/ThinTile.js +7 -5
  185. package/lib/components/Tiles/TileText.js +1 -1
  186. package/lib/components/Tiles/WideTile.js +10 -8
  187. package/lib/components/Tooltip/index.d.ts +1 -0
  188. package/lib/components/Tooltip/index.js +1 -0
  189. package/lib/components/Tooltip/styledVariables.d.ts +1 -0
  190. package/lib/components/Tooltip/styledVariables.js +21 -0
  191. package/lib/components/Typography/SectionHeader.js +2 -2
  192. package/lib/components/Typography/Typography.js +1 -1
  193. package/lib/components/index.d.ts +1 -2
  194. package/lib/components/index.js +1 -2
  195. package/lib/config.d.ts +84 -2
  196. package/lib/config.js +16 -2
  197. package/lib/globalStyle.js +599 -1982
  198. package/lib/icons/ArrowIcon/ArrowIcon.js +1 -1
  199. package/lib/icons/CheckboxIcon/CheckboxIcon.d.ts +6 -0
  200. package/lib/icons/CheckboxIcon/CheckboxIcon.js +28 -0
  201. package/lib/icons/CheckboxIcon/index.d.ts +1 -0
  202. package/lib/icons/CheckboxIcon/index.js +6 -0
  203. package/lib/icons/CollapseIcon/CollapseIcon.d.ts +1 -1
  204. package/lib/icons/CollapseIcon/CollapseIcon.js +5 -5
  205. package/lib/icons/ColorModeIcon/ColorModeIcon.js +1 -1
  206. package/lib/icons/CopyIcon/CopyIcon.d.ts +1 -2
  207. package/lib/icons/CopyIcon/CopyIcon.js +4 -4
  208. package/lib/icons/DeselectIcon/DeselectIcon.d.ts +1 -1
  209. package/lib/icons/DeselectIcon/DeselectIcon.js +5 -5
  210. package/lib/icons/ErrorIcon/ErrorIcon.d.ts +4 -0
  211. package/lib/icons/ErrorIcon/ErrorIcon.js +14 -0
  212. package/lib/icons/ErrorIcon/index.d.ts +1 -0
  213. package/lib/icons/ErrorIcon/index.js +18 -0
  214. package/lib/icons/ExpandIcon/ExpandIcon.d.ts +1 -2
  215. package/lib/icons/ExpandIcon/ExpandIcon.js +5 -5
  216. package/lib/icons/FileIcon/FileIcon.d.ts +1 -2
  217. package/lib/icons/FileIcon/FileIcon.js +2 -2
  218. package/lib/icons/LanguageIcon/LanguageIcon.d.ts +4 -0
  219. package/lib/icons/LanguageIcon/LanguageIcon.js +14 -0
  220. package/lib/icons/LanguageIcon/index.d.ts +1 -0
  221. package/lib/icons/LanguageIcon/index.js +18 -0
  222. package/lib/icons/PlusIcon/PlusIcon.d.ts +5 -0
  223. package/lib/icons/PlusIcon/PlusIcon.js +16 -0
  224. package/lib/icons/PlusIcon/index.d.ts +1 -0
  225. package/lib/icons/PlusIcon/index.js +18 -0
  226. package/lib/icons/PointingArrowIcon/PointingArrowIcon.d.ts +4 -0
  227. package/lib/icons/PointingArrowIcon/PointingArrowIcon.js +15 -0
  228. package/lib/icons/PointingArrowIcon/index.d.ts +1 -0
  229. package/lib/icons/PointingArrowIcon/index.js +18 -0
  230. package/lib/icons/ReportIcon/ReportIcon.d.ts +1 -2
  231. package/lib/icons/ReportIcon/ReportIcon.js +3 -3
  232. package/lib/icons/SelectIcon/SelectIcon.d.ts +1 -2
  233. package/lib/icons/SelectIcon/SelectIcon.js +5 -5
  234. package/lib/icons/index.d.ts +4 -0
  235. package/lib/icons/index.js +4 -0
  236. package/lib/layouts/Forbidden.js +4 -0
  237. package/lib/layouts/NotFound.js +4 -0
  238. package/lib/types/portal/src/shared/types/nav.d.ts +5 -0
  239. package/lib/ui/ArrowBack.js +0 -1
  240. package/lib/ui/Burger.js +1 -1
  241. package/lib/ui/Dropdown.js +7 -7
  242. package/lib/ui/Jumbotron.js +1 -1
  243. package/lib/ui/darkColors.js +217 -84
  244. package/lib/utils/index.d.ts +1 -0
  245. package/lib/utils/index.js +1 -0
  246. package/lib/utils/tags-parser.d.ts +1 -0
  247. package/lib/utils/tags-parser.js +10 -0
  248. package/package.json +2 -2
  249. package/src/I18n/LanguagePicker.tsx +29 -4
  250. package/src/I18n/index.ts +1 -0
  251. package/src/I18n/styledVariables.ts +36 -0
  252. package/src/components/Breadcrumbs/Breadcrumb.tsx +10 -3
  253. package/src/components/Breadcrumbs/Breadcrumbs.tsx +14 -2
  254. package/src/components/Breadcrumbs/index.ts +1 -0
  255. package/src/components/Breadcrumbs/styledVariables.ts +16 -0
  256. package/src/components/Button/Button.tsx +53 -47
  257. package/src/components/Button/index.ts +1 -0
  258. package/src/components/Button/styledVariables.ts +104 -0
  259. package/src/components/Catalog/Catalog.tsx +124 -117
  260. package/src/components/Catalog/CatalogCard.tsx +86 -60
  261. package/src/components/Catalog/index.ts +4 -0
  262. package/src/components/Catalog/styledVariables.ts +93 -0
  263. package/src/components/Catalog/useCatalog.ts +13 -1
  264. package/src/components/CodeBlock/CodeBlockContainer.tsx +17 -9
  265. package/src/components/CodeBlock/CodeBlockControlButton.tsx +6 -19
  266. package/src/components/CodeBlock/CodeBlockControls.tsx +14 -6
  267. package/src/components/CodeBlock/index.ts +1 -0
  268. package/src/components/CodeBlock/styledVariables.ts +89 -0
  269. package/src/components/ColorModeSwitcher/ColorModeSwitcher.tsx +3 -1
  270. package/src/components/Dropdown/Dropdown.tsx +14 -5
  271. package/src/components/Dropdown/index.ts +1 -0
  272. package/src/components/Dropdown/styledVariables.ts +27 -0
  273. package/src/components/EditPageButton/EditPageButton.tsx +7 -2
  274. package/src/components/Feedback/Comment.tsx +5 -0
  275. package/src/components/Feedback/Feedback.tsx +13 -3
  276. package/src/components/Feedback/Rating.tsx +5 -1
  277. package/src/components/Feedback/Reasons.tsx +6 -1
  278. package/src/components/Feedback/Sentiment.tsx +15 -2
  279. package/src/components/Feedback/Thumbs.tsx +4 -4
  280. package/src/components/Filter/Filter.tsx +130 -94
  281. package/src/components/Filter/FilterContent.tsx +86 -0
  282. package/src/components/Filter/FilterPopover.tsx +140 -0
  283. package/src/components/Filter/FilterTag.tsx +37 -0
  284. package/src/components/Filter/FilterTags.tsx +39 -0
  285. package/src/components/Filter/index.ts +2 -0
  286. package/src/components/Filter/styledVariables.ts +109 -0
  287. package/src/components/Footer/CustomFooterNavItem.tsx +1 -1
  288. package/src/components/Footer/Footer.tsx +32 -10
  289. package/src/components/Footer/FooterColumn.tsx +81 -62
  290. package/src/components/Footer/FooterColumns.tsx +6 -4
  291. package/src/components/Footer/FooterCopyright.tsx +13 -7
  292. package/src/components/Footer/index.ts +1 -0
  293. package/src/components/Footer/styledVariables.ts +58 -0
  294. package/src/components/Image/Image.tsx +47 -0
  295. package/src/components/Image/index.ts +1 -0
  296. package/src/components/JsonViewer/JsonViewer.tsx +2 -2
  297. package/src/components/LastUpdated/index.ts +1 -0
  298. package/src/components/LastUpdated/styledVariables.ts +8 -0
  299. package/src/components/Markdown/MarkdownWrapper.tsx +2 -4
  300. package/src/components/Markdown/Mermaid.tsx +1 -1
  301. package/src/components/Markdown/index.ts +1 -0
  302. package/src/components/Markdown/styledVariables.ts +219 -0
  303. package/src/components/Menu/Menu.tsx +5 -7
  304. package/src/components/Menu/MenuGroup.tsx +15 -7
  305. package/src/components/Menu/MenuItemLabel.tsx +9 -13
  306. package/src/components/Menu/MenuLinkItem.tsx +6 -1
  307. package/src/components/Menu/MobileMenu.tsx +20 -25
  308. package/src/components/Menu/MobileMenuGroup.tsx +1 -1
  309. package/src/components/Menu/index.ts +1 -0
  310. package/src/components/Menu/styledVariables.ts +99 -0
  311. package/src/components/Navbar/Navbar.tsx +10 -11
  312. package/src/components/Navbar/NavbarItem.tsx +16 -4
  313. package/src/components/Navbar/NavbarMenu.tsx +2 -2
  314. package/src/components/Navbar/index.ts +1 -0
  315. package/src/components/Navbar/styledVariables.ts +40 -0
  316. package/src/components/NavbarLogo/NavbarLogo.tsx +25 -10
  317. package/src/components/NavbarLogo/index.ts +1 -0
  318. package/src/components/NavbarLogo/styledVariables.ts +15 -0
  319. package/src/components/OpenApiDocs/DevOnboardingTryItSecurity.tsx +1 -2
  320. package/src/components/OpenApiDocs/Dropdown.tsx +3 -3
  321. package/src/components/Panel/PanelHeader.ts +1 -0
  322. package/src/components/Panel/PanelHeaderTitle.ts +0 -4
  323. package/src/components/Panel/index.ts +1 -0
  324. package/src/components/Panel/styledVariables.ts +479 -0
  325. package/src/components/Product/index.ts +1 -0
  326. package/src/components/Product/styledVariables.ts +39 -0
  327. package/src/components/Profile/LoginLink.tsx +9 -3
  328. package/src/components/{Navbar → Profile}/MobileUserProfile.tsx +24 -31
  329. package/src/components/Profile/Profile.tsx +1 -24
  330. package/src/components/Profile/UserProfile.tsx +25 -9
  331. package/src/components/Profile/UserProfileData.tsx +40 -0
  332. package/src/components/Profile/index.ts +1 -0
  333. package/src/components/Profile/styledVariables.ts +53 -0
  334. package/src/components/Search/CancelSearch.tsx +2 -15
  335. package/src/components/Search/ProductTag.tsx +8 -8
  336. package/src/components/Search/RecentSearches.tsx +5 -5
  337. package/src/components/Search/Search.tsx +0 -2
  338. package/src/components/Search/SearchIcon.tsx +10 -5
  339. package/src/components/Search/SearchItem.tsx +26 -31
  340. package/src/components/Search/SearchTrigger.tsx +4 -5
  341. package/src/components/Search/ShortcutKey.tsx +1 -5
  342. package/src/components/Search/SuggestedPages.tsx +3 -3
  343. package/src/components/Search/index.ts +1 -0
  344. package/src/components/Search/styledVariables.ts +95 -0
  345. package/src/components/Select/Select.tsx +20 -7
  346. package/src/components/Select/index.ts +1 -0
  347. package/src/components/Select/styledVariables.ts +30 -0
  348. package/src/components/Separator/Separator.tsx +17 -3
  349. package/src/components/Separator/SeparatorItem.tsx +5 -9
  350. package/src/components/Separator/SeparatorLine.tsx +7 -3
  351. package/src/components/Sidebar/ApiCallItem.tsx +17 -13
  352. package/src/components/Sidebar/FooterWrapper.tsx +3 -4
  353. package/src/components/Sidebar/HeaderWrapper.tsx +2 -2
  354. package/src/components/Sidebar/SidebarLayout.tsx +6 -1
  355. package/src/components/Sidebar/index.ts +1 -0
  356. package/src/components/Sidebar/styledVariables.ts +213 -0
  357. package/src/components/Sidebar/types.ts +1 -0
  358. package/src/components/SidebarActions/CollapseSidebarButton.tsx +22 -2
  359. package/src/components/SidebarActions/SidebarActions.tsx +18 -3
  360. package/src/components/SidebarActions/styled.tsx +29 -30
  361. package/src/components/TableOfContent/TableOfContent.tsx +4 -3
  362. package/src/components/TableOfContent/index.ts +1 -0
  363. package/src/components/TableOfContent/styledVariables.ts +43 -0
  364. package/src/components/Tabs/Tab.tsx +1 -1
  365. package/src/components/Tabs/Tabs.tsx +1 -1
  366. package/src/components/Tag/Tag.tsx +63 -0
  367. package/src/components/Tag/index.ts +2 -0
  368. package/src/components/Tag/styledVariables.ts +127 -0
  369. package/src/components/Tiles/ThinTile.tsx +7 -5
  370. package/src/components/Tiles/TileText.tsx +1 -1
  371. package/src/components/Tiles/WideTile.tsx +10 -8
  372. package/src/components/Tooltip/index.ts +1 -0
  373. package/src/components/Tooltip/styledVariables.ts +18 -0
  374. package/src/components/Typography/SectionHeader.ts +2 -2
  375. package/src/components/Typography/Typography.ts +1 -1
  376. package/src/components/index.ts +1 -2
  377. package/src/config.ts +20 -2
  378. package/src/globalStyle.ts +595 -1999
  379. package/src/icons/ArrowIcon/ArrowIcon.tsx +1 -1
  380. package/src/icons/CheckboxIcon/CheckboxIcon.tsx +64 -0
  381. package/src/icons/CheckboxIcon/index.ts +1 -0
  382. package/src/icons/CollapseIcon/CollapseIcon.tsx +5 -5
  383. package/src/icons/ColorModeIcon/ColorModeIcon.tsx +1 -1
  384. package/src/icons/CopyIcon/CopyIcon.tsx +4 -5
  385. package/src/icons/DeselectIcon/DeselectIcon.tsx +5 -5
  386. package/src/icons/ErrorIcon/ErrorIcon.tsx +15 -0
  387. package/src/icons/ErrorIcon/index.ts +1 -0
  388. package/src/icons/ExpandIcon/ExpandIcon.tsx +5 -6
  389. package/src/icons/FileIcon/FileIcon.tsx +2 -3
  390. package/src/icons/LanguageIcon/LanguageIcon.tsx +15 -0
  391. package/src/icons/LanguageIcon/index.ts +1 -0
  392. package/src/icons/PlusIcon/PlusIcon.tsx +25 -0
  393. package/src/icons/PlusIcon/index.ts +1 -0
  394. package/src/icons/PointingArrowIcon/PointingArrowIcon.tsx +16 -0
  395. package/src/icons/PointingArrowIcon/index.ts +1 -0
  396. package/src/icons/ReportIcon/ReportIcon.tsx +3 -4
  397. package/src/icons/SelectIcon/SelectIcon.tsx +5 -6
  398. package/src/icons/index.ts +4 -0
  399. package/src/layouts/Forbidden.tsx +4 -0
  400. package/src/layouts/NotFound.tsx +4 -0
  401. package/src/types/portal/src/shared/types/nav.ts +5 -0
  402. package/src/ui/ArrowBack.tsx +0 -1
  403. package/src/ui/Burger.tsx +1 -1
  404. package/src/ui/Dropdown.tsx +7 -7
  405. package/src/ui/Jumbotron.tsx +1 -1
  406. package/src/ui/darkColors.tsx +217 -84
  407. package/src/utils/index.ts +1 -0
  408. package/src/utils/tags-parser.ts +8 -0
  409. package/lib/components/OperationBadge/OperationBadge.d.ts +0 -6
  410. package/lib/components/OperationBadge/OperationBadge.js +0 -68
  411. package/lib/components/OperationBadge/index.d.ts +0 -1
  412. package/lib/components/Tags/Tags.d.ts +0 -5
  413. package/lib/components/Tags/Tags.js +0 -32
  414. package/lib/components/Tags/index.d.ts +0 -1
  415. package/src/components/Catalog/index.tsx +0 -3
  416. package/src/components/OperationBadge/OperationBadge.ts +0 -62
  417. package/src/components/OperationBadge/index.ts +0 -1
  418. package/src/components/Tags/Tags.tsx +0 -36
  419. package/src/components/Tags/index.ts +0 -1
  420. /package/lib/components/{Navbar → Profile}/MobileUserProfile.d.ts +0 -0
@@ -12,6 +12,10 @@ export interface SelectProps {
12
12
  withArrow?: boolean;
13
13
  triggerEvent?: 'click' | 'hover';
14
14
  onChange?: (value: React.ReactNode | string) => void;
15
+ placement?: 'top' | 'bottom';
16
+ alignment?: 'start' | 'end';
17
+ icon?: React.ReactNode;
18
+ onlyIcon?: boolean;
15
19
  }
16
20
 
17
21
  export const Select = ({
@@ -22,6 +26,10 @@ export const Select = ({
22
26
  withArrow,
23
27
  triggerEvent = 'click',
24
28
  onChange,
29
+ placement,
30
+ alignment,
31
+ icon,
32
+ onlyIcon,
25
33
  }: SelectProps) => {
26
34
  const selectRef = useRef<HTMLDivElement | null>(null);
27
35
 
@@ -64,11 +72,14 @@ export const Select = ({
64
72
  onClick={triggerEvent === 'click' ? handleToggle : undefined}
65
73
  >
66
74
  <SelectInput>
67
- <SelectInputValue withArrow={withArrow}>{_selected}</SelectInputValue>
75
+ {!onlyIcon && (
76
+ <SelectInputValue withIcon={withArrow || !!icon}>{_selected}</SelectInputValue>
77
+ )}
78
+ {icon}
68
79
  {withArrow ? isOpen ? <ArrowIcon direction="up" /> : <ArrowIcon direction="down" /> : null}
69
80
  </SelectInput>
70
81
  {isOpen && (
71
- <SelectList>
82
+ <SelectList placement={placement} alignment={alignment}>
72
83
  {options.map((option, index) => (
73
84
  <SelectListItem key={index} onClick={() => handleSelect(option)}>
74
85
  {option}
@@ -104,15 +115,17 @@ export const SelectInput = styled.div`
104
115
  cursor: pointer;
105
116
  `;
106
117
 
107
- export const SelectInputValue = styled.div<{ withArrow?: boolean }>`
118
+ export const SelectInputValue = styled.div<{ withIcon?: boolean }>`
108
119
  pointer-events: none;
109
- ${({ withArrow }) => (withArrow ? 'margin-right: 8px;' : '')}
120
+ ${({ withIcon }) => (withIcon ? 'margin-right: 8px;' : '')}
110
121
  `;
111
122
 
112
- export const SelectList = styled.ul`
123
+ export const SelectList = styled.ul<{ placement?: string; alignment?: string }>`
113
124
  position: absolute;
114
- top: 100%;
115
- left: 0;
125
+ top: ${({ placement }) => (placement === 'top' ? 'auto' : '100%')};
126
+ bottom: ${({ placement }) => (placement === 'top' ? '100%' : 'auto')};
127
+ left: ${({ alignment }) => (alignment === 'start' ? '0' : 'auto')};
128
+ right: ${({ alignment }) => (alignment === 'end' ? '0' : 'auto')};
116
129
  margin: 0;
117
130
  min-width: var(--select-list-min-width);
118
131
  max-width: var(--select-list-max-width);
@@ -1 +1,2 @@
1
1
  export * from '@theme/components/Select/Select';
2
+ export * from '@theme/components/Select/styledVariables';
@@ -0,0 +1,30 @@
1
+ import { css } from "styled-components";
2
+
3
+ export const select = css`
4
+ /**
5
+ * @tokens Select
6
+ * */
7
+ --select-font-size: var(--font-size-base); // @presenter FontSize
8
+ --select-font-weight: var(--font-weight-regular); // @presenter FontWeight
9
+ --select-line-height: var(--line-height-base); // @presenter LineHeight
10
+ --select-text-color: var(--text-secondary); // @presenter Color
11
+ --select-border-radius: var(--border-radius); // @presenter BorderRadius
12
+
13
+ --select-input-padding-horizontal: 16px; // @presenter Spacing
14
+ --select-input-padding-vertical: 6px; // @presenter Spacing
15
+ --select-input-border-radius: var(--border-radius); // @presenter BorderRadius
16
+
17
+ --select-list-min-width: 100px;
18
+ --select-list-max-width: 300px;
19
+ --select-list-padding: var(--spacing-xxs); // @presenter Spacing
20
+ --select-list-border-radius: var(--border-radius-lg); // @presenter BorderRadius
21
+ --select-list-background-color: var(--background-color); // @presenter Color
22
+ --select-list-box-shadow: var(--bg-raised-shadow); // @presenter Shadow
23
+
24
+ --select-list-item-horizontal-padding: var(--spacing-base); // @presenter Spacing
25
+ --select-list-item-vertical-padding: var(--spacing-xs); // @presenter Spacing
26
+ --select-list-item-border-radius: var(--border-radius); // @presenter BorderRadius
27
+ --select-list-item-active-background-color: var(--bg-raised); // @presenter Color
28
+
29
+ // @tokens End
30
+ `;
@@ -5,16 +5,30 @@ import { SeparatorLine } from '@theme/components/Separator/SeparatorLine';
5
5
  import { SeparatorItem } from '@theme/components/Separator/SeparatorItem';
6
6
  import type { MenuItemProps } from '@theme/components/Sidebar/types';
7
7
  import { useTranslate } from '@portal/hooks';
8
+ import { useThemeConfig } from '@theme/hooks';
8
9
 
9
10
  export function Separator({ item, className }: MenuItemProps): JSX.Element {
10
11
  const { translate } = useTranslate();
12
+ const { sidebar } = useThemeConfig();
13
+
14
+ const separatorLine = item.separatorLine || sidebar?.separatorLine;
15
+ const linePosition = item.linePosition || sidebar?.linePosition || 'bottom';
11
16
 
12
17
  return (
13
- <Wrapper data-component-name="Sidebar/Separator" className={className}>
18
+ <Wrapper
19
+ data-component-name="Sidebar/Separator"
20
+ className={className}
21
+ linePosition={linePosition}
22
+ withLabel={!!item.label}
23
+ >
14
24
  <SeparatorItem>{translate(item.labelTranslationKey, item.label)}</SeparatorItem>
15
- {item.separatorLine ? <SeparatorLine /> : null}
25
+ {separatorLine ? <SeparatorLine /> : null}
16
26
  </Wrapper>
17
27
  );
18
28
  }
19
29
 
20
- const Wrapper = styled.div``;
30
+ const Wrapper = styled.div<{ linePosition: 'top' | 'bottom'; withLabel?: boolean }>`
31
+ display: flex;
32
+ flex-direction: ${({ linePosition }) => (linePosition === 'top' ? 'column-reverse' : 'column')};
33
+ margin-top: ${({ withLabel }) => (withLabel ? 'var(--sidebar-item-separator-offset)' : '0')};
34
+ `;
@@ -9,23 +9,19 @@ export const SeparatorItem = styled(MenuItemLabel).attrs<{ className?: string }>
9
9
  }),
10
10
  )`
11
11
  cursor: default;
12
- font-weight: var(--font-weight-bold);
13
- color: var(--sidebar-separator-item-color);
14
- font-family: var(--sidebar-item-separator-font-family);
12
+ font-weight: var(--sidebar-item-separator-font-weight);
13
+ color: var(--sidebar-item-separator-text-color);
15
14
  font-size: var(--sidebar-item-separator-font-size);
16
15
  text-transform: var(--sidebar-item-separator-text-transform);
17
16
  background: var(--mobile-menu-background);
17
+ border-radius: 0;
18
+ padding: var(--sidebar-item-separator-padding);
18
19
 
19
20
  ${({ theme }) => theme.mediaQueries.medium} {
20
21
  background: var(--sidebar-item-separator-background-color);
21
22
  }
22
23
 
23
- *:not(:first-child) > & {
24
- margin-top: var(--sidebar-item-separator-offset);
25
- }
26
-
27
24
  :hover {
28
- color: inherit;
29
- background-color: inherit;
25
+ color: var(--sidebar-item-separator-text-color);
30
26
  }
31
27
  `;
@@ -4,7 +4,11 @@ export const SeparatorLine = styled.div.attrs<{ className?: string }>(({ classNa
4
4
  'data-component-name': 'Sidebar/SeparatorLine',
5
5
  className,
6
6
  }))`
7
- height: 1px;
8
- background-color: var(--sidebar-item-separator-line-color);
9
- margin: var(--sidebar-item-separator-offset) 0 var(--sidebar-item-padding-vertical) 0;
7
+ height: var(--sidebar-item-separator-border-width);
8
+ background-color: var(--sidebar-item-separator-border-color);
9
+ margin: var(--mobile-sidebar-item-separator-line-offset);
10
+
11
+ ${({ theme }) => theme.mediaQueries.medium} {
12
+ margin: var(--sidebar-item-separator-line-offset);
13
+ }
10
14
  `;
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import styled from 'styled-components';
3
3
 
4
- import { OperationBadge } from '@theme/components/OperationBadge';
4
+ import { Tag } from '@theme/components/Tag';
5
5
  import { MenuLinkItem } from '@theme/components/Menu/MenuLinkItem';
6
6
  import { SeparatorLine } from '@theme/components/Separator/SeparatorLine';
7
7
  import { MenuItemLabel } from '@theme/components/Menu/MenuItemLabel';
@@ -12,10 +12,10 @@ export function ApiCallItem({ item, className }: MenuItemProps): JSX.Element {
12
12
  <Wrapper data-component-name="Sidebar/ApiCallItem" className={className}>
13
13
  <MenuLinkItem item={item}>
14
14
  <Label active={item.active}>
15
- <Badge type={item.httpVerb || ''}>
16
- {item.httpVerb === 'hook' ? 'event' : item.httpVerb}
17
- </Badge>
18
15
  {item.label}
16
+ <HttpTag color={item.httpVerb || ''}>
17
+ {item.httpVerb === 'hook' ? 'event' : item.httpVerb}
18
+ </HttpTag>
19
19
  </Label>
20
20
  </MenuLinkItem>
21
21
 
@@ -25,6 +25,8 @@ export function ApiCallItem({ item, className }: MenuItemProps): JSX.Element {
25
25
  }
26
26
 
27
27
  const Label = styled(MenuItemLabel)`
28
+ display: flex;
29
+ justify-content: space-between;
28
30
  color: var(--mobile-menu-item-text-color);
29
31
 
30
32
  ${({ theme }) => theme.mediaQueries.medium} {
@@ -34,14 +36,16 @@ const Label = styled(MenuItemLabel)`
34
36
 
35
37
  const Wrapper = styled.div``;
36
38
 
37
- export const Badge = styled(OperationBadge)`
39
+ export const HttpTag = styled(Tag)`
38
40
  flex-shrink: 0;
39
- margin-top: 0;
40
- width: 36px;
41
- height: 14px;
42
- font-size: var(--sidebar-item-badge-http-font-size);
43
- font-family: var(--sidebar-item-badge-http-font-family);
44
- font-weight: var(--sidebar-item-badge-http-font-weight);
45
- border-radius: var(--sidebar-item-badge-http-border-radius);
46
- color: var(--sidebar-item-badge-http-text-color);
41
+ margin: var(--sidebar-item-http-tag-margin);
42
+ text-transform: uppercase;
43
+
44
+ width: var(--sidebar-item-http-tag-width);
45
+ height: var(--sidebar-item-http-tag-height);
46
+
47
+ font-size: var(--sidebar-item-http-tag-font-size);
48
+ font-family: var(--sidebar-item-http-tag-font-family);
49
+ font-weight: var(--sidebar-item-http-tag-font-weight);
50
+ border-radius: var(--sidebar-item-http-tag-border-radius);
47
51
  `;
@@ -1,15 +1,14 @@
1
1
  import styled from 'styled-components';
2
2
  export const FooterWrapper = styled.div<{ collapsed?: boolean }>`
3
+ padding: var(--sidebar-footer-padding-vertical) var(--sidebar-footer-padding-horizontal);
4
+
3
5
  ${({ collapsed }) =>
4
6
  collapsed &&
5
7
  `
6
8
  position: sticky;
7
9
  bottom: 0;
10
+ padding: 0;
8
11
  `}
9
- margin: var(--sidebar-offset-top) 0 var(--sidebar-spacing-unit) var(--sidebar-offset-left);
10
- padding-top: var(--sidebar-spacing-unit);
11
- padding-right: var(--sidebar-spacing-unit);
12
- border-top: solid 1px var(--border-color);
13
12
 
14
13
  button {
15
14
  margin: 0;
@@ -5,6 +5,6 @@ export const HeaderWrapper = styled.div.attrs<{ className?: string }>(({ classNa
5
5
  className,
6
6
  }))`
7
7
  margin: var(--sidebar-offset-top) 0 0 var(--sidebar-offset-left);
8
- padding-bottom: var(--sidebar-spacing-unit);
9
- border-bottom: solid 1px var(--border-color);
8
+ padding-bottom: var(--sidebar-header-padding-bottom);
9
+ border-bottom: solid 1px var(--border-secondary);
10
10
  `;
@@ -9,6 +9,7 @@ import { MobileSidebarButton } from '@theme/components/Sidebar/MobileSidebarButt
9
9
  import { MenuContainer } from '@theme/components/Menu/MenuContainer';
10
10
  import { SidebarSearch } from '@theme/components/Search/SidebarSearch';
11
11
  import { useThemeConfig } from '@theme/hooks/useThemeConfig';
12
+ import { telemetry } from '@portal/telemetry';
12
13
 
13
14
  import { MobileSidebarIcon } from './MobileSidebarIcon';
14
15
 
@@ -81,7 +82,11 @@ export function SidebarLayout({
81
82
  <Wrapper data-component-name="Sidebar/SidebarLayout" className={className}>
82
83
  {!search?.hide && search?.placement === 'sidebar' ? <SidebarSearch /> : null}
83
84
  <Sidebar animate={true} opened={isOpen}>
84
- {header ? <HeaderWrapper>{header}</HeaderWrapper> : null}
85
+ {header ? (
86
+ <HeaderWrapper onClick={() => telemetry.send('back_to_catalog_button_clicked', {})}>
87
+ {header}
88
+ </HeaderWrapper>
89
+ ) : null}
85
90
  {versions ? <>{versions}</> : null}
86
91
  <MenuContainer growContent={growContent}>{menu}</MenuContainer>
87
92
  {footer && !isOpen ? (
@@ -11,3 +11,4 @@ export * from '@theme/components/Sidebar/FooterWrapper';
11
11
  export * from '@theme/components/Sidebar/HeaderWrapper';
12
12
  export * from '@theme/components/Sidebar/SidebarItemIcon';
13
13
  export * from '@theme/components/Sidebar/VersionPicker';
14
+ export * from '@theme/components/Sidebar/styledVariables';
@@ -0,0 +1,213 @@
1
+ import { css } from 'styled-components';
2
+
3
+ export const sidebar = css`
4
+ /* === Sidebar === */
5
+
6
+ /**
7
+ * @tokens Sidebar logo
8
+ */
9
+
10
+ --sidebar-logo-max-height: 285px; // @presenter Spacing
11
+ --sidebar-logo-max-width: 285px; // @presenter Spacing
12
+ --sidebar-logo-padding: 2px; // @presenter Spacing
13
+
14
+ /**
15
+ * @tokens Sidebar typography
16
+ */
17
+ --sidebar-word-break: inherit; // @presenter WordBreak
18
+
19
+ /**
20
+ * @tokens Sidebar colors
21
+ * @presenter Color
22
+ */
23
+ --sidebar-background-color: var(--bg-base); // @presenter Color
24
+ --sidebar-border-color: var(--border-secondary); // @presenter Color
25
+
26
+ /**
27
+ * @tokens Sidebar spacing
28
+ * @presenter Spacing
29
+ */
30
+ --sidebar-spacing-unit: var(--spacing-base); // @presenter Spacing
31
+ --sidebar-width: 285px; // @presenter Spacing
32
+
33
+ --sidebar-offset-top: var(--sidebar-spacing-unit); // @presenter Spacing
34
+ --sidebar-offset-left: var(--sidebar-spacing-unit); // @presenter Spacing
35
+
36
+ --sidebar-header-padding-bottom: var(--sidebar-spacing-unit); // @presenter Spacing
37
+
38
+ --sidebar-chevron-size: var(--spacing-xs); // @presenter Spacing
39
+
40
+ /* === Sidebar Item === */
41
+
42
+ /**
43
+ * @tokens Sidebar item typography
44
+ */
45
+ --sidebar-item-font-family: var(--font-family-base); // @presenter FontFamily
46
+ --sidebar-item-font-size: var(--font-size-base); // @presenter FontSize
47
+ --sidebar-item-font-weight: var(--font-weight-regular); // @presenter FontSize
48
+ --sidebar-item-line-height: var(--line-height-base); // @presenter LineHeight
49
+
50
+ /**
51
+ * @tokens Sidebar item colors
52
+ * @presenter Color
53
+ */
54
+ --sidebar-item-text-color: var(--text-secondary); // @presenter Color
55
+ --sidebar-item-background-color: transparent; // @presenter Color
56
+
57
+ --sidebar-item-active-color: var(--text-primary); // @presenter Color
58
+ --sidebar-item-active-background-color: var(--bg-overlay); // @presenter Color
59
+
60
+ --sidebar-item-hover-background-color: var(--bg-raised); // @presenter Color
61
+ --sidebar-item-hover-color: var(--text-primary); // @presenter Color
62
+
63
+ /**
64
+ * @tokens Sidebar item spacing
65
+ * @presenter Spacing
66
+ */
67
+
68
+ --sidebar-item-nested-offset: var(--spacing-xs); // @presenter Spacing
69
+ --sidebar-margin-horizontal: var(--spacing-base); // @presenter Spacing
70
+ --sidebar-item-padding-vertical: var(--spacing-xs); // @presenter Spacing
71
+ --sidebar-item-padding-horizontal: var(--spacing-xs); // @presenter Spacing
72
+
73
+ /**
74
+ * @tokens Sidebar item border
75
+ */
76
+ --sidebar-item-border-radius: 6px; // @presenter BorderRadius
77
+
78
+ /**
79
+ * @tokens Sidebar item icon
80
+ */
81
+ --sidebar-item-icon-size: var(--spacing-xl);
82
+ --sidebar-item-icon-border-radius: 100%;
83
+
84
+ /**
85
+ * @tokens Sidebar item sublabel
86
+ */
87
+ --sidebar-item-sublabel-font-family: inherit; // sublabel is for drilldown only but I would like to support it in general
88
+ --sidebar-item-sublabel-font-size: var(--font-size-base); // @presenter FontSize
89
+ --sidebar-item-sublabel-font-weight: var(--font-weight-regular); // @presenter FontWeight
90
+ --sidebar-item-sublabel-text-color: var(--sidebar-item-text-color); // @presenter Color
91
+
92
+ /**
93
+ * @tokens Sidebar item drilldown
94
+ */
95
+
96
+ --sidebar-item-drilldown-font-family: var(--sidebar-item-font-family);
97
+ --sidebar-item-drilldown-font-size: var(--sidebar-item-font-size); // @presenter FontSize
98
+ --sidebar-text-drilldown-transform: inherit; // @presenter TextTransform
99
+ --sidebar-item-drilldown-text-color: var(--sidebar-item-text-color); // @presenter Color
100
+ --sidebar-item-drilldown-background-color: var(--sidebar-background-color); // @presenter Color
101
+
102
+ /**
103
+ * @tokens Sidebar item group
104
+ */
105
+ --sidebar-item-group-font-family: var(--sidebar-item-font-family);
106
+ --sidebar-item-group-font-size: var(--sidebar-item-font-size); // @presenter FontSize
107
+ --sidebar-text-group-transform: inherit;
108
+ --sidebar-item-group-text-color: var(--sidebar-item-text-color); // @presenter Color
109
+ --sidebar-item-group-background-color: var(--sidebar-background-color); // @presenter Color
110
+ --sidebar-item-group-active-text-color: var(--sidebar-item-active-color); // @presenter Color
111
+ --sidebar-item-group-active-background-color: var(--sidebar-item-active-background-color);
112
+
113
+ // we need a theme config for chevron-location: left (default), right-compact, right, none
114
+ // we need another theme config for chevron-style: up-down, down-up, right-down, down-right
115
+
116
+ --sidebar-group-item-chevron-size: var(--spacing-xs); // @presenter Spacing
117
+ --sidebar-group-item-chevron-color: var(--sidebar-item-text-color); // @presenter Color
118
+
119
+ /**
120
+ * @tokens Sidebar item separator
121
+ */
122
+ --sidebar-item-separator-font-family: var(--sidebar-item-font-family);
123
+ --sidebar-item-separator-font-size: var(--sidebar-item-font-size); // @presenter FontSize
124
+ --sidebar-item-separator-font-weight: var(--sidebar-item-font-weight); // @presenter FontWeight
125
+ --sidebar-item-separator-text-transform: inherit; // @presenter TextTransform
126
+ --sidebar-item-separator-text-color: var(--text-placeholder); // @presenter Color
127
+
128
+ --sidebar-item-separator-background-color: var(--sidebar-background-color); // @presenter Color
129
+ --sidebar-item-separator-line-color: var(--border-primary); // @presenter Color
130
+ --sidebar-item-separator-offset: var(--spacing-sm); // @presenter Spacing
131
+ --sidebar-item-separator-line-offset: var(--spacing-xxs) var(--sidebar-margin-horizontal); // @presenter Spacing
132
+ --mobile-sidebar-item-separator-line-offset: var(--spacing-xxs) var(--spacing-xs); // @presenter Spacing
133
+ --sidebar-item-separator-border-width: 1px; // @presenter Spacing
134
+ --sidebar-item-separator-border-color: var(--border-primary); // @presenter Color
135
+ --sidebar-item-separator-padding: var(--spacing-xxs) var(--sidebar-item-padding-horizontal); // @presenter Spacing
136
+
137
+ /**
138
+ * @tokens Sidebar item http tag
139
+ */
140
+
141
+ --sidebar-item-http-tag-width: auto;
142
+ --sidebar-item-http-tag-height: 20px;
143
+ --sidebar-item-http-tag-font-family: var(--code-font-family); // @presenter FontFamily
144
+ --sidebar-item-http-tag-font-size: var(--font-size-sm); // @presenter FontSize
145
+ --sidebar-item-http-tag-font-weight: normal; //@presenter FontWeight
146
+ --sidebar-item-http-tag-border-radius: var(--border-radius-xlg); // @presenter BorderRadius
147
+ --sidebar-item-http-tag-margin: 0 0 0 5px;
148
+
149
+ /**
150
+ * @tokens Sidebar back button
151
+ */
152
+ --sidebar-back-button-font-family: var(--sidebar-item-font-family);
153
+ --sidebar-back-button-font-size: var(--sidebar-item-font-size); // @presenter FontSize
154
+ --sidebar-back-button-transform: inherit; // @presenter TextTransform
155
+ --sidebar-back-button-text-color: var(--sidebar-item-text-color); // @presenter Color
156
+ --sidebar-back-button-background-color: transparent; // @presenter Color
157
+ --sidebar-back-button-hover-text-color: var(--sidebar-item-active-color); // @presenter Color
158
+ --sidebar-back-button-hover-background-color: transparent; // @presenter Color
159
+ --sidebar-back-button-icon-color: var(--sidebar-item-text-color); // @presenter Color
160
+ --sidebar-back-button-margin: 0 0 var(--spacing-lg) 0; // @presenter Spacing
161
+ --sidebar-back-padding-left: var(--spacing-xs); // @presenter Spacing
162
+ --sidebar-back-button-icon: none;
163
+
164
+ /**
165
+ * @tokens Sidebar footer
166
+ */
167
+ --sidebar-footer-padding-vertical: var(--spacing-sm); // @presenter Spacing
168
+ --sidebar-footer-padding-horizontal: var(--spacing-lg); // @presenter Spacing
169
+ --sidebar-collapse-button-background-color: var(--bg-overlay); // @presenter Color
170
+ --sidebar-collapse-button-icon-color: var(--text-primary); // @presenter Color
171
+ --sidebar-collapse-button-border-color: var(--border-primary); // @presenter Color
172
+ --sidebar-collapse-button-active-background-color: unset; // @presenter Color
173
+ --sidebar-collapse-button-active-border-color: 0; // @presenter Color
174
+
175
+ --sidebar-controls-collapsed-gap: var(--spacing-xs); // @presenter Spacing
176
+ --sidebar-controls-collapsed-padding-vertical: var(--spacing-xs); // @presenter Spacing
177
+ --sidebar-controls-collapsed-padding-horizontal: var(--spacing-xxs); // @presenter Spacing
178
+
179
+ // @tokens End
180
+ `;
181
+
182
+ export const versionPicker = css`
183
+ /**
184
+ * @tokens Version picker
185
+ * */
186
+
187
+ --version-picker-font-size: var(--font-size-base); // @presenter FontSize
188
+ --version-picker-font-weight: var(--select-font-weight); // @presenter FontWeight
189
+ --version-picker-line-height: var(--select-line-height); // @presenter LineHeight
190
+ --version-picker-text-color: var(--select-text-color); // @presenter Color
191
+ --version-picker-border-radius: var(--select-border-radius); // @presenter BorderRadius
192
+ --version-picker-margin-vertical: 10px; // @presenter Spacing
193
+ --version-picker-margin-horizontal: 15px; // @presenter Spacing
194
+
195
+ --version-picker-input-padding-horizontal: var(--select-input-padding-horizontal); // @presenter Spacing
196
+ --version-picker-input-padding-vertical: var(--select-input-padding-vertical); // @presenter Spacing
197
+ --version-picker-input-border: 1px solid var(--border-primary); // @presenter Border
198
+ --version-picker-input-border-radius: var(--select-input-border-radius); // @presenter BorderRadius
199
+
200
+ --version-picker-list-min-width: var(--select-list-min-width);
201
+ --version-picker-list-max-width: var(--select-list-max-width);
202
+ --version-picker-list-padding: var(--select-list-padding); // @presenter Spacing
203
+ --version-picker-list-border-radius: var(--select-list-border-radius); // @presenter BorderRadius
204
+ --version-picker-list-background-color: var(--select-list-background-color); // @presenter Color
205
+ --version-picker-list-box-shadow: var(--select-list-box-shadow); // @presenter Shadow
206
+
207
+ --version-picker-list-item-horizontal-padding: var(--select-list-item-horizontal-padding); // @presenter Spacing
208
+ --version-picker-list-item-vertical-padding: var(--select-list-item-vertical-padding); // @presenter Spacing
209
+ --version-picker-list-item-border-radius: var(--select-list-item-border-radius); // @presenter BorderRadius
210
+ --version-picker-list-item-active-background-color: var(--select-list-item-active-background-color); // @presenter Color
211
+
212
+ // @tokens End
213
+ `;
@@ -47,6 +47,7 @@ export interface NavItem {
47
47
  requiredPermission?: string;
48
48
  menuStyle?: MenuStyle;
49
49
  separatorLine?: boolean;
50
+ linePosition?: 'top' | 'bottom';
50
51
  version?: string;
51
52
  default?: boolean;
52
53
  }
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import styled, { css } from 'styled-components';
2
3
 
3
4
  import {
4
5
  StyledToggleRightPanelButton,
@@ -15,11 +16,30 @@ export const CollapseSidebarButton = ({
15
16
  onClick,
16
17
  }: CollapseSidebarButtonProps): JSX.Element => {
17
18
  return (
18
- <StyledToggleRightPanelButton
19
+ <ToggleButton
19
20
  title={initialValue ? 'Show sidebar' : 'Hide sidebar'}
20
21
  onClick={onClick}
22
+ collapsed={initialValue}
21
23
  >
22
24
  {initialValue ? <HideLeftPanelSVG /> : <ShowLeftPanelSVG />}
23
- </StyledToggleRightPanelButton>
25
+ </ToggleButton>
24
26
  );
25
27
  };
28
+
29
+ const ToggleButton = styled(StyledToggleRightPanelButton)<{ collapsed?: boolean }>`
30
+ background: var(--sidebar-collapse-button-background-color);
31
+ fill: var(--sidebar-collapse-button-icon-color);
32
+ margin-right: ${({ collapsed }) => (collapsed ? 0 : 'calc(var(--spacing-unit) * -9)')};
33
+ border: 1px solid var(--sidebar-collapse-button-border-color);
34
+ border-radius: var(--border-radius-md);
35
+ padding: var(--spacing-xxs);
36
+ height: var(--control-height-sm);
37
+ width: var(--control-height-sm);
38
+
39
+ ${({ collapsed }) =>
40
+ collapsed &&
41
+ css`
42
+ background: var(--sidebar-collapse-button-active-background-color);
43
+ border: var(--sidebar-collapse-button-active-border-color);
44
+ `}
45
+ `;
@@ -7,6 +7,7 @@ import {
7
7
  ControlsWrap,
8
8
  ControlsWrapChangeLayoutButtons,
9
9
  } from '@theme/components/SidebarActions/styled';
10
+ import { telemetry } from '@portal/telemetry';
10
11
 
11
12
  export enum LayoutVariant {
12
13
  STACKED = 'stacked',
@@ -54,11 +55,20 @@ export const SidebarActions = ({
54
55
  {initialShowRightPanelToggle && (
55
56
  <ToggleRightPanelButton
56
57
  showRightPanelToggle={showRightPanelToggle}
57
- onClick={onChangeRightPanelViewClick}
58
+ onClick={() => {
59
+ onChangeRightPanelViewClick();
60
+ telemetry.send('sidebar_samples_button_clicked', {});
61
+ }}
58
62
  />
59
63
  )}
60
64
  {showChangeLayoutButton && showRightPanelToggle && (
61
- <ChangeViewButton layout={layout} onClick={onChangeViewClick} />
65
+ <ChangeViewButton
66
+ layout={layout}
67
+ onClick={() => {
68
+ onChangeViewClick();
69
+ telemetry.send('change_layout_button_clicked', {});
70
+ }}
71
+ />
62
72
  )}
63
73
  </ControlsWrapChangeLayoutButtons>
64
74
  )}
@@ -66,7 +76,12 @@ export const SidebarActions = ({
66
76
  {!hideCollapseSidebarButton && (
67
77
  <CollapseSidebarButton
68
78
  initialValue={collapsedSidebar}
69
- onClick={onChangeCollapseSidebarClick}
79
+ onClick={() => {
80
+ onChangeCollapseSidebarClick();
81
+ collapsedSidebar
82
+ ? telemetry.send('sidebar_item_expanded', {})
83
+ : telemetry.send('sidebar_item_collapsed', {});
84
+ }}
70
85
  />
71
86
  )}
72
87
  </ControlsWrap>