@redocly/theme 0.18.3-patch.0 → 0.18.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/lib/I18n/LanguagePicker.d.ts +2 -7
  2. package/lib/I18n/LanguagePicker.js +3 -11
  3. package/lib/I18n/index.d.ts +0 -1
  4. package/lib/I18n/index.js +0 -15
  5. package/lib/components/Breadcrumbs/Breadcrumb.d.ts +1 -0
  6. package/lib/components/Breadcrumbs/Breadcrumb.js +3 -4
  7. package/lib/components/Breadcrumbs/Breadcrumbs.js +9 -2
  8. package/lib/components/Breadcrumbs/index.d.ts +0 -1
  9. package/lib/components/Breadcrumbs/index.js +0 -1
  10. package/lib/components/Button/Button.d.ts +3 -6
  11. package/lib/components/Button/Button.js +42 -40
  12. package/lib/components/Button/index.d.ts +0 -1
  13. package/lib/components/Button/index.js +0 -1
  14. package/lib/components/Catalog/Catalog.d.ts +0 -1
  15. package/lib/components/Catalog/Catalog.js +96 -99
  16. package/lib/components/Catalog/CatalogCard.js +58 -62
  17. package/lib/components/Catalog/index.d.ts +3 -4
  18. package/lib/components/Catalog/index.js +3 -4
  19. package/lib/components/Catalog/useCatalog.js +12 -1
  20. package/lib/components/CodeBlock/CodeBlockContainer.js +8 -35
  21. package/lib/components/CodeBlock/CodeBlockControlButton.d.ts +4 -3
  22. package/lib/components/CodeBlock/CodeBlockControlButton.js +19 -5
  23. package/lib/components/CodeBlock/CodeBlockControls.js +11 -10
  24. package/lib/components/CodeBlock/index.d.ts +0 -1
  25. package/lib/components/CodeBlock/index.js +0 -1
  26. package/lib/components/ColorModeSwitcher/ColorModeSwitcher.js +3 -0
  27. package/lib/components/Dropdown/Dropdown.d.ts +2 -7
  28. package/lib/components/Dropdown/Dropdown.js +4 -6
  29. package/lib/components/Dropdown/index.d.ts +0 -1
  30. package/lib/components/Dropdown/index.js +0 -1
  31. package/lib/components/EditPageButton/EditPageButton.js +2 -1
  32. package/lib/components/Feedback/Feedback.js +13 -3
  33. package/lib/components/Feedback/Reasons.js +1 -1
  34. package/lib/components/Feedback/Sentiment.js +6 -2
  35. package/lib/components/Feedback/Thumbs.js +4 -4
  36. package/lib/components/Filter/Filter.js +78 -101
  37. package/lib/components/Filter/index.d.ts +0 -2
  38. package/lib/components/Filter/index.js +0 -2
  39. package/lib/components/Footer/CustomFooterNavItem.js +1 -1
  40. package/lib/components/Footer/Footer.d.ts +3 -4
  41. package/lib/components/Footer/Footer.js +10 -27
  42. package/lib/components/Footer/FooterColumn.d.ts +3 -3
  43. package/lib/components/Footer/FooterColumn.js +64 -53
  44. package/lib/components/Footer/FooterColumns.js +4 -6
  45. package/lib/components/Footer/FooterCopyright.js +6 -11
  46. package/lib/components/Footer/index.d.ts +0 -1
  47. package/lib/components/Footer/index.js +0 -1
  48. package/lib/components/JsonViewer/JsonViewer.js +2 -2
  49. package/lib/components/Markdown/MarkdownWrapper.js +4 -2
  50. package/lib/components/Markdown/Mermaid.js +1 -1
  51. package/lib/components/Markdown/index.d.ts +0 -1
  52. package/lib/components/Markdown/index.js +0 -1
  53. package/lib/components/Menu/Menu.js +7 -5
  54. package/lib/components/Menu/MenuGroup.js +7 -12
  55. package/lib/components/Menu/MenuItemLabel.js +13 -7
  56. package/lib/components/Menu/MenuLinkItem.js +2 -1
  57. package/lib/components/Menu/MobileMenu.js +25 -20
  58. package/lib/components/Menu/MobileMenuGroup.js +1 -1
  59. package/lib/components/Menu/index.d.ts +0 -1
  60. package/lib/components/Menu/index.js +0 -1
  61. package/lib/components/{Profile → Navbar}/MobileUserProfile.js +28 -5
  62. package/lib/components/Navbar/Navbar.js +11 -10
  63. package/lib/components/Navbar/NavbarItem.d.ts +1 -1
  64. package/lib/components/Navbar/NavbarItem.js +6 -7
  65. package/lib/components/Navbar/NavbarMenu.js +2 -2
  66. package/lib/components/Navbar/index.d.ts +0 -1
  67. package/lib/components/Navbar/index.js +0 -1
  68. package/lib/components/NavbarLogo/NavbarLogo.d.ts +1 -4
  69. package/lib/components/NavbarLogo/NavbarLogo.js +6 -13
  70. package/lib/components/OpenApiDocs/DevOnboardingTryItSecurity.js +2 -2
  71. package/lib/components/OpenApiDocs/Dropdown.js +3 -3
  72. package/lib/components/OperationBadge/OperationBadge.d.ts +6 -0
  73. package/lib/components/OperationBadge/OperationBadge.js +68 -0
  74. package/lib/components/OperationBadge/index.d.ts +1 -0
  75. package/lib/{icons/ErrorIcon → components/OperationBadge}/index.js +1 -1
  76. package/lib/components/Panel/PanelHeader.js +0 -1
  77. package/lib/components/Panel/PanelHeaderTitle.js +4 -0
  78. package/lib/components/Panel/index.d.ts +0 -1
  79. package/lib/components/Panel/index.js +0 -1
  80. package/lib/components/Product/index.d.ts +0 -1
  81. package/lib/components/Product/index.js +0 -1
  82. package/lib/components/Profile/LoginLink.js +6 -2
  83. package/lib/components/Profile/Profile.js +22 -3
  84. package/lib/components/Profile/UserProfile.js +13 -21
  85. package/lib/components/Profile/index.d.ts +0 -1
  86. package/lib/components/Profile/index.js +0 -15
  87. package/lib/components/Search/CancelSearch.js +14 -2
  88. package/lib/components/Search/ProductTag.js +7 -7
  89. package/lib/components/Search/RecentSearches.js +5 -5
  90. package/lib/components/Search/Search.js +2 -0
  91. package/lib/components/Search/SearchIcon.js +2 -2
  92. package/lib/components/Search/SearchItem.js +4 -4
  93. package/lib/components/Search/SearchTrigger.js +5 -4
  94. package/lib/components/Search/ShortcutKey.js +5 -1
  95. package/lib/components/Search/SuggestedPages.js +3 -3
  96. package/lib/components/Search/index.d.ts +0 -1
  97. package/lib/components/Search/index.js +0 -1
  98. package/lib/components/Select/Select.d.ts +3 -10
  99. package/lib/components/Select/Select.js +6 -9
  100. package/lib/components/Select/index.d.ts +0 -1
  101. package/lib/components/Select/index.js +0 -1
  102. package/lib/components/Separator/SeparatorItem.js +5 -7
  103. package/lib/components/Sidebar/ApiCallItem.d.ts +6 -2
  104. package/lib/components/Sidebar/ApiCallItem.js +11 -13
  105. package/lib/components/Sidebar/FooterWrapper.js +4 -3
  106. package/lib/components/Sidebar/HeaderWrapper.js +2 -2
  107. package/lib/components/Sidebar/SidebarLayout.js +2 -1
  108. package/lib/components/Sidebar/VersionPicker.d.ts +1 -1
  109. package/lib/components/Sidebar/index.d.ts +0 -1
  110. package/lib/components/Sidebar/index.js +0 -1
  111. package/lib/components/SidebarActions/CollapseSidebarButton.js +1 -37
  112. package/lib/components/SidebarActions/SidebarActions.js +15 -3
  113. package/lib/components/SidebarActions/styled.js +14 -16
  114. package/lib/components/TableOfContent/TableOfContent.js +5 -3
  115. package/lib/components/TableOfContent/index.d.ts +0 -1
  116. package/lib/components/TableOfContent/index.js +0 -1
  117. package/lib/components/Tabs/Tab.js +1 -1
  118. package/lib/components/Tabs/Tabs.js +1 -1
  119. package/lib/components/Tags/Tags.d.ts +5 -0
  120. package/lib/components/Tags/Tags.js +32 -0
  121. package/lib/components/Tags/index.d.ts +1 -0
  122. package/lib/components/{Image → Tags}/index.js +1 -1
  123. package/lib/components/Tiles/TileText.js +1 -1
  124. package/lib/components/Tooltip/index.d.ts +0 -1
  125. package/lib/components/Tooltip/index.js +0 -1
  126. package/lib/components/Typography/Typography.js +1 -1
  127. package/lib/components/index.d.ts +2 -1
  128. package/lib/components/index.js +2 -1
  129. package/lib/config.d.ts +0 -6
  130. package/lib/config.js +0 -1
  131. package/lib/globalStyle.js +1967 -597
  132. package/lib/icons/ArrowIcon/ArrowIcon.js +1 -1
  133. package/lib/icons/CollapseIcon/CollapseIcon.d.ts +1 -1
  134. package/lib/icons/CollapseIcon/CollapseIcon.js +5 -5
  135. package/lib/icons/ColorModeIcon/ColorModeIcon.js +1 -1
  136. package/lib/icons/CopyIcon/CopyIcon.d.ts +2 -1
  137. package/lib/icons/CopyIcon/CopyIcon.js +4 -4
  138. package/lib/icons/DeselectIcon/DeselectIcon.d.ts +1 -1
  139. package/lib/icons/DeselectIcon/DeselectIcon.js +5 -5
  140. package/lib/icons/ExpandIcon/ExpandIcon.d.ts +2 -1
  141. package/lib/icons/ExpandIcon/ExpandIcon.js +5 -5
  142. package/lib/icons/FileIcon/FileIcon.d.ts +2 -1
  143. package/lib/icons/FileIcon/FileIcon.js +2 -2
  144. package/lib/icons/ReportIcon/ReportIcon.d.ts +2 -1
  145. package/lib/icons/ReportIcon/ReportIcon.js +3 -3
  146. package/lib/icons/SelectIcon/SelectIcon.d.ts +2 -1
  147. package/lib/icons/SelectIcon/SelectIcon.js +5 -5
  148. package/lib/icons/index.d.ts +0 -4
  149. package/lib/icons/index.js +0 -4
  150. package/lib/layouts/Forbidden.js +0 -4
  151. package/lib/layouts/NotFound.js +0 -4
  152. package/lib/types/portal/src/shared/types/nav.d.ts +0 -5
  153. package/lib/ui/Burger.js +1 -1
  154. package/lib/ui/Dropdown.js +7 -7
  155. package/lib/ui/Jumbotron.js +1 -1
  156. package/lib/ui/darkColors.js +84 -216
  157. package/package.json +2 -2
  158. package/src/I18n/LanguagePicker.tsx +4 -29
  159. package/src/I18n/index.ts +0 -1
  160. package/src/components/Breadcrumbs/Breadcrumb.tsx +9 -4
  161. package/src/components/Breadcrumbs/Breadcrumbs.tsx +14 -2
  162. package/src/components/Breadcrumbs/index.ts +0 -1
  163. package/src/components/Button/Button.tsx +48 -52
  164. package/src/components/Button/index.ts +0 -1
  165. package/src/components/Catalog/Catalog.tsx +115 -127
  166. package/src/components/Catalog/CatalogCard.tsx +61 -75
  167. package/src/components/Catalog/index.tsx +3 -0
  168. package/src/components/Catalog/useCatalog.ts +13 -1
  169. package/src/components/CodeBlock/CodeBlockContainer.tsx +7 -14
  170. package/src/components/CodeBlock/CodeBlockControlButton.tsx +19 -6
  171. package/src/components/CodeBlock/CodeBlockControls.tsx +11 -9
  172. package/src/components/CodeBlock/index.ts +0 -1
  173. package/src/components/ColorModeSwitcher/ColorModeSwitcher.tsx +4 -0
  174. package/src/components/Dropdown/Dropdown.tsx +4 -10
  175. package/src/components/Dropdown/index.ts +0 -1
  176. package/src/components/EditPageButton/EditPageButton.tsx +2 -1
  177. package/src/components/Feedback/Feedback.tsx +13 -3
  178. package/src/components/Feedback/Reasons.tsx +1 -1
  179. package/src/components/Feedback/Sentiment.tsx +10 -2
  180. package/src/components/Feedback/Thumbs.tsx +4 -4
  181. package/src/components/Filter/Filter.tsx +94 -127
  182. package/src/components/Filter/index.ts +0 -2
  183. package/src/components/Footer/CustomFooterNavItem.tsx +1 -1
  184. package/src/components/Footer/Footer.tsx +10 -32
  185. package/src/components/Footer/FooterColumn.tsx +64 -79
  186. package/src/components/Footer/FooterColumns.tsx +4 -6
  187. package/src/components/Footer/FooterCopyright.tsx +7 -13
  188. package/src/components/Footer/index.ts +0 -1
  189. package/src/components/JsonViewer/JsonViewer.tsx +2 -2
  190. package/src/components/Markdown/MarkdownWrapper.tsx +4 -2
  191. package/src/components/Markdown/Mermaid.tsx +1 -1
  192. package/src/components/Markdown/index.ts +0 -1
  193. package/src/components/Menu/Menu.tsx +7 -5
  194. package/src/components/Menu/MenuGroup.tsx +7 -15
  195. package/src/components/Menu/MenuItemLabel.tsx +13 -7
  196. package/src/components/Menu/MenuLinkItem.tsx +6 -1
  197. package/src/components/Menu/MobileMenu.tsx +25 -20
  198. package/src/components/Menu/MobileMenuGroup.tsx +1 -1
  199. package/src/components/Menu/index.ts +0 -1
  200. package/src/components/{Profile → Navbar}/MobileUserProfile.tsx +39 -5
  201. package/src/components/Navbar/Navbar.tsx +11 -10
  202. package/src/components/Navbar/NavbarItem.tsx +6 -6
  203. package/src/components/Navbar/NavbarMenu.tsx +2 -2
  204. package/src/components/Navbar/index.ts +0 -1
  205. package/src/components/NavbarLogo/NavbarLogo.tsx +12 -14
  206. package/src/components/OpenApiDocs/DevOnboardingTryItSecurity.tsx +2 -1
  207. package/src/components/OpenApiDocs/Dropdown.tsx +3 -3
  208. package/src/components/OperationBadge/OperationBadge.ts +62 -0
  209. package/src/components/OperationBadge/index.ts +1 -0
  210. package/src/components/Panel/PanelHeader.ts +0 -1
  211. package/src/components/Panel/PanelHeaderTitle.ts +4 -0
  212. package/src/components/Panel/index.ts +0 -1
  213. package/src/components/Product/index.ts +0 -1
  214. package/src/components/Profile/LoginLink.tsx +10 -2
  215. package/src/components/Profile/Profile.tsx +24 -1
  216. package/src/components/Profile/UserProfile.tsx +13 -21
  217. package/src/components/Profile/index.ts +0 -1
  218. package/src/components/Search/CancelSearch.tsx +15 -2
  219. package/src/components/Search/ProductTag.tsx +7 -7
  220. package/src/components/Search/RecentSearches.tsx +5 -5
  221. package/src/components/Search/Search.tsx +2 -0
  222. package/src/components/Search/SearchIcon.tsx +5 -10
  223. package/src/components/Search/SearchItem.tsx +4 -4
  224. package/src/components/Search/SearchTrigger.tsx +5 -4
  225. package/src/components/Search/ShortcutKey.tsx +5 -1
  226. package/src/components/Search/SuggestedPages.tsx +3 -3
  227. package/src/components/Search/index.ts +0 -1
  228. package/src/components/Select/Select.tsx +7 -20
  229. package/src/components/Select/index.ts +0 -1
  230. package/src/components/Separator/SeparatorItem.tsx +5 -7
  231. package/src/components/Sidebar/ApiCallItem.tsx +11 -13
  232. package/src/components/Sidebar/FooterWrapper.tsx +4 -3
  233. package/src/components/Sidebar/HeaderWrapper.tsx +2 -2
  234. package/src/components/Sidebar/SidebarLayout.tsx +6 -1
  235. package/src/components/Sidebar/index.ts +0 -1
  236. package/src/components/SidebarActions/CollapseSidebarButton.tsx +2 -18
  237. package/src/components/SidebarActions/SidebarActions.tsx +18 -3
  238. package/src/components/SidebarActions/styled.tsx +23 -16
  239. package/src/components/TableOfContent/TableOfContent.tsx +5 -2
  240. package/src/components/TableOfContent/index.ts +0 -1
  241. package/src/components/Tabs/Tab.tsx +1 -1
  242. package/src/components/Tabs/Tabs.tsx +1 -1
  243. package/src/components/Tags/Tags.tsx +36 -0
  244. package/src/components/Tags/index.ts +1 -0
  245. package/src/components/Tiles/TileText.tsx +1 -1
  246. package/src/components/Tooltip/index.ts +0 -1
  247. package/src/components/Typography/Typography.ts +1 -1
  248. package/src/components/index.ts +2 -1
  249. package/src/config.ts +0 -1
  250. package/src/globalStyle.ts +1976 -588
  251. package/src/icons/ArrowIcon/ArrowIcon.tsx +1 -1
  252. package/src/icons/CollapseIcon/CollapseIcon.tsx +5 -5
  253. package/src/icons/ColorModeIcon/ColorModeIcon.tsx +1 -1
  254. package/src/icons/CopyIcon/CopyIcon.tsx +5 -4
  255. package/src/icons/DeselectIcon/DeselectIcon.tsx +5 -5
  256. package/src/icons/ExpandIcon/ExpandIcon.tsx +6 -5
  257. package/src/icons/FileIcon/FileIcon.tsx +3 -2
  258. package/src/icons/ReportIcon/ReportIcon.tsx +4 -3
  259. package/src/icons/SelectIcon/SelectIcon.tsx +6 -5
  260. package/src/icons/index.ts +0 -4
  261. package/src/layouts/Forbidden.tsx +0 -4
  262. package/src/layouts/NotFound.tsx +0 -4
  263. package/src/types/portal/src/shared/types/nav.ts +0 -5
  264. package/src/ui/Burger.tsx +1 -1
  265. package/src/ui/Dropdown.tsx +7 -7
  266. package/src/ui/Jumbotron.tsx +1 -1
  267. package/src/ui/darkColors.tsx +84 -216
  268. package/lib/I18n/styledVariables.d.ts +0 -1
  269. package/lib/I18n/styledVariables.js +0 -39
  270. package/lib/components/Breadcrumbs/styledVariables.d.ts +0 -1
  271. package/lib/components/Breadcrumbs/styledVariables.js +0 -19
  272. package/lib/components/Button/styledVariables.d.ts +0 -1
  273. package/lib/components/Button/styledVariables.js +0 -94
  274. package/lib/components/Catalog/styledVariables.d.ts +0 -1
  275. package/lib/components/Catalog/styledVariables.js +0 -94
  276. package/lib/components/CodeBlock/styledVariables.d.ts +0 -1
  277. package/lib/components/CodeBlock/styledVariables.js +0 -90
  278. package/lib/components/Dropdown/styledVariables.d.ts +0 -1
  279. package/lib/components/Dropdown/styledVariables.js +0 -30
  280. package/lib/components/Filter/FilterContent.d.ts +0 -11
  281. package/lib/components/Filter/FilterContent.js +0 -50
  282. package/lib/components/Filter/FilterPopover.d.ts +0 -11
  283. package/lib/components/Filter/FilterPopover.js +0 -99
  284. package/lib/components/Filter/FilterTag.d.ts +0 -7
  285. package/lib/components/Filter/FilterTag.js +0 -33
  286. package/lib/components/Filter/FilterTags.d.ts +0 -7
  287. package/lib/components/Filter/FilterTags.js +0 -29
  288. package/lib/components/Filter/styledVariables.d.ts +0 -1
  289. package/lib/components/Filter/styledVariables.js +0 -112
  290. package/lib/components/Footer/styledVariables.d.ts +0 -1
  291. package/lib/components/Footer/styledVariables.js +0 -61
  292. package/lib/components/Image/Image.d.ts +0 -9
  293. package/lib/components/Image/Image.js +0 -31
  294. package/lib/components/Image/index.d.ts +0 -1
  295. package/lib/components/Markdown/styledVariables.d.ts +0 -2
  296. package/lib/components/Markdown/styledVariables.js +0 -221
  297. package/lib/components/Menu/styledVariables.d.ts +0 -2
  298. package/lib/components/Menu/styledVariables.js +0 -90
  299. package/lib/components/Navbar/styledVariables.d.ts +0 -1
  300. package/lib/components/Navbar/styledVariables.js +0 -40
  301. package/lib/components/Panel/styledVariables.d.ts +0 -2
  302. package/lib/components/Panel/styledVariables.js +0 -489
  303. package/lib/components/Product/styledVariables.d.ts +0 -2
  304. package/lib/components/Product/styledVariables.js +0 -41
  305. package/lib/components/Profile/UserProfileData.d.ts +0 -9
  306. package/lib/components/Profile/UserProfileData.js +0 -35
  307. package/lib/components/Profile/styledVariables.d.ts +0 -2
  308. package/lib/components/Profile/styledVariables.js +0 -55
  309. package/lib/components/Search/styledVariables.d.ts +0 -1
  310. package/lib/components/Search/styledVariables.js +0 -98
  311. package/lib/components/Select/styledVariables.d.ts +0 -1
  312. package/lib/components/Select/styledVariables.js +0 -33
  313. package/lib/components/Sidebar/styledVariables.d.ts +0 -2
  314. package/lib/components/Sidebar/styledVariables.js +0 -210
  315. package/lib/components/TableOfContent/styledVariables.d.ts +0 -1
  316. package/lib/components/TableOfContent/styledVariables.js +0 -46
  317. package/lib/components/Tag/Tag.d.ts +0 -16
  318. package/lib/components/Tag/Tag.js +0 -39
  319. package/lib/components/Tag/index.d.ts +0 -2
  320. package/lib/components/Tag/index.js +0 -19
  321. package/lib/components/Tag/styledVariables.d.ts +0 -1
  322. package/lib/components/Tag/styledVariables.js +0 -130
  323. package/lib/components/Tooltip/styledVariables.d.ts +0 -1
  324. package/lib/components/Tooltip/styledVariables.js +0 -21
  325. package/lib/icons/CheckboxIcon/CheckboxIcon.d.ts +0 -6
  326. package/lib/icons/CheckboxIcon/CheckboxIcon.js +0 -28
  327. package/lib/icons/CheckboxIcon/index.d.ts +0 -1
  328. package/lib/icons/CheckboxIcon/index.js +0 -6
  329. package/lib/icons/ErrorIcon/ErrorIcon.d.ts +0 -4
  330. package/lib/icons/ErrorIcon/ErrorIcon.js +0 -14
  331. package/lib/icons/ErrorIcon/index.d.ts +0 -1
  332. package/lib/icons/LanguageIcon/LanguageIcon.d.ts +0 -4
  333. package/lib/icons/LanguageIcon/LanguageIcon.js +0 -14
  334. package/lib/icons/LanguageIcon/index.d.ts +0 -1
  335. package/lib/icons/LanguageIcon/index.js +0 -18
  336. package/lib/icons/PlusIcon/PlusIcon.d.ts +0 -5
  337. package/lib/icons/PlusIcon/PlusIcon.js +0 -16
  338. package/lib/icons/PlusIcon/index.d.ts +0 -1
  339. package/lib/icons/PlusIcon/index.js +0 -18
  340. package/lib/icons/PointingArrowIcon/PointingArrowIcon.d.ts +0 -4
  341. package/lib/icons/PointingArrowIcon/PointingArrowIcon.js +0 -15
  342. package/lib/icons/PointingArrowIcon/index.d.ts +0 -1
  343. package/lib/icons/PointingArrowIcon/index.js +0 -18
  344. package/src/I18n/styledVariables.ts +0 -36
  345. package/src/components/Breadcrumbs/styledVariables.ts +0 -16
  346. package/src/components/Button/styledVariables.ts +0 -91
  347. package/src/components/Catalog/index.ts +0 -4
  348. package/src/components/Catalog/styledVariables.ts +0 -91
  349. package/src/components/CodeBlock/styledVariables.ts +0 -87
  350. package/src/components/Dropdown/styledVariables.ts +0 -27
  351. package/src/components/Filter/FilterContent.tsx +0 -75
  352. package/src/components/Filter/FilterPopover.tsx +0 -132
  353. package/src/components/Filter/FilterTag.tsx +0 -37
  354. package/src/components/Filter/FilterTags.tsx +0 -39
  355. package/src/components/Filter/styledVariables.ts +0 -109
  356. package/src/components/Footer/styledVariables.ts +0 -58
  357. package/src/components/Image/Image.tsx +0 -47
  358. package/src/components/Image/index.ts +0 -1
  359. package/src/components/Markdown/styledVariables.ts +0 -219
  360. package/src/components/Menu/styledVariables.ts +0 -88
  361. package/src/components/Navbar/styledVariables.ts +0 -37
  362. package/src/components/Panel/styledVariables.ts +0 -487
  363. package/src/components/Product/styledVariables.ts +0 -39
  364. package/src/components/Profile/UserProfileData.tsx +0 -40
  365. package/src/components/Profile/styledVariables.ts +0 -53
  366. package/src/components/Search/styledVariables.ts +0 -95
  367. package/src/components/Select/styledVariables.ts +0 -30
  368. package/src/components/Sidebar/styledVariables.ts +0 -208
  369. package/src/components/TableOfContent/styledVariables.ts +0 -43
  370. package/src/components/Tag/Tag.tsx +0 -62
  371. package/src/components/Tag/index.ts +0 -2
  372. package/src/components/Tag/styledVariables.ts +0 -127
  373. package/src/components/Tooltip/styledVariables.ts +0 -18
  374. package/src/icons/CheckboxIcon/CheckboxIcon.tsx +0 -64
  375. package/src/icons/CheckboxIcon/index.ts +0 -1
  376. package/src/icons/ErrorIcon/ErrorIcon.tsx +0 -15
  377. package/src/icons/ErrorIcon/index.ts +0 -1
  378. package/src/icons/LanguageIcon/LanguageIcon.tsx +0 -15
  379. package/src/icons/LanguageIcon/index.ts +0 -1
  380. package/src/icons/PlusIcon/PlusIcon.tsx +0 -19
  381. package/src/icons/PlusIcon/index.ts +0 -1
  382. package/src/icons/PointingArrowIcon/PointingArrowIcon.tsx +0 -16
  383. package/src/icons/PointingArrowIcon/index.ts +0 -1
  384. /package/lib/components/{Profile → Navbar}/MobileUserProfile.d.ts +0 -0
@@ -2,16 +2,14 @@ import React from 'react';
2
2
  import styled from 'styled-components';
3
3
 
4
4
  import type { ResolvedNavItem } from '@theme/types/portal';
5
- import type { CatalogConfig } from '@theme/config';
6
5
  import { HighlightContext } from '@theme/ui/Highlight';
6
+ import { Button } from '@theme/components/Button';
7
+ import { Filter } from '@theme/components/Filter';
7
8
  import { H2 } from '@theme/components/Typography/H2';
9
+ import { H3 } from '@theme/components/Typography/H3';
8
10
  import { CatalogCard } from '@theme/components/Catalog/CatalogCard';
9
11
  import { usePageSharedData, useTranslate } from '@portal/hooks/index';
10
- import { FilterTags } from '@theme/components/Filter/FilterTags';
11
- import { FilterContent } from '@theme/components/Filter/FilterContent';
12
- import { FilterPopover } from '@theme/components/Filter/FilterPopover';
13
- import { Button } from '@theme/components/Button';
14
- import { PlusIcon } from '@theme/icons/PlusIcon';
12
+ import type { CatalogConfig } from '@theme/config';
15
13
 
16
14
  import { useCatalog } from './useCatalog';
17
15
 
@@ -26,61 +24,55 @@ export default function Catalog(props: {
26
24
  const items = usePageSharedData('catalog') as ResolvedNavItem[];
27
25
 
28
26
  const { filterTerm, setFilterTerm, groups, filters } = useCatalog(items, catalogConfig);
29
- const [isAddingFilter, setIsAddingFilter] = React.useState(false);
27
+
28
+ const [isFilterPanelFocused, setIsFilterPanelFocused] = React.useState(false);
29
+ const { translate } = useTranslate();
30
30
  const translationKeys = {
31
- addFilter: 'theme.catalog.filters.select.addFilter',
31
+ placeholder: 'theme.catalog.filters.placeholder',
32
+ applyFilter: 'theme.catalog.filters.apply',
32
33
  };
33
- const { translate } = useTranslate();
34
34
 
35
35
  return (
36
36
  <HighlightContext.Provider value={[filterTerm]}>
37
37
  <CatalogPageWrapper>
38
- <FilterTagsWrapper>
39
- <Button
40
- variant="text"
41
- size="small"
42
- icon={<PlusIcon />}
43
- onClick={() => setIsAddingFilter(true)}
44
- >
45
- {translate(translationKeys.addFilter, 'Add filter')}
46
- </Button>
47
- <FilterTags filters={filters} />
48
- </FilterTagsWrapper>
49
- <FilterContent
50
- setFilterTerm={setFilterTerm}
51
- filters={filters}
52
- filterTerm={filterTerm}
53
- isMobile={false}
54
- />
55
- {isAddingFilter && (
56
- <FilterPopover
57
- setIsAddingFilter={setIsAddingFilter}
58
- setFilterTerm={setFilterTerm}
59
- filters={filters}
60
- filterTerm={filterTerm}
38
+ <CatalogPageSidebar isActiveInMobileMode={isFilterPanelFocused}>
39
+ <StyledInput
40
+ placeholder={translate(translationKeys.placeholder, 'Filter...')}
41
+ value={filterTerm}
42
+ onFocus={() => setIsFilterPanelFocused(true)}
43
+ onChange={(e) => setFilterTerm(e.target.value)}
61
44
  />
62
- )}
45
+ {filters.map((filter, idx) => (
46
+ <Filter filter={filter} key={filter.property + '-' + idx} />
47
+ ))}
48
+ <MobileStickyApplyFilters>
49
+ <Button
50
+ data-translation-key={translationKeys.applyFilter}
51
+ color="secondary"
52
+ onClick={() => setIsFilterPanelFocused(false)}
53
+ >
54
+ {translate(translationKeys.applyFilter, 'Apply filters')}
55
+ </Button>
56
+ </MobileStickyApplyFilters>
57
+ </CatalogPageSidebar>
63
58
  <CatalogPageContent>
64
- <CatalogPageDescriptionWrapper>
65
- {catalogConfig.title ? (
66
- <CatalogTitle>
67
- {' '}
68
- {translate(catalogConfig.titleTranslationKey, catalogConfig.title)}{' '}
69
- </CatalogTitle>
70
- ) : null}
71
- {catalogConfig.description ? (
72
- <CatalogDescription>
73
- {' '}
74
- {translate(catalogConfig.descriptionTranslationKey, catalogConfig.description)}{' '}
75
- </CatalogDescription>
76
- ) : null}
77
- </CatalogPageDescriptionWrapper>
59
+ {catalogConfig.title ? (
60
+ <CatalogTitle>
61
+ {' '}
62
+ {translate(catalogConfig.titleTranslationKey, catalogConfig.title)}{' '}
63
+ </CatalogTitle>
64
+ ) : null}
65
+ {catalogConfig.description ? (
66
+ <CatalogDescription>
67
+ {' '}
68
+ {translate(catalogConfig.descriptionTranslationKey, catalogConfig.description)}{' '}
69
+ </CatalogDescription>
70
+ ) : null}
78
71
  {groups.map((group) => (
79
72
  <React.Fragment key={group.title}>
80
- <CatalogSeparator>
81
- <CatalogSeparatorLabel>{group.title}</CatalogSeparatorLabel>
82
- <CatalogSeparatorCount>{group.items.length}</CatalogSeparatorCount>
83
- </CatalogSeparator>
73
+ <H3>
74
+ {group.title} ({group.items.length})
75
+ </H3>
84
76
  <CatalogCards>
85
77
  {group.items.map((item) => (
86
78
  <CatalogCard item={item} key={item.link} />
@@ -94,83 +86,78 @@ export default function Catalog(props: {
94
86
  );
95
87
  }
96
88
 
97
- const CatalogSeparator = styled.div`
98
- display: flex;
99
- align-items: center;
100
- color: var(--catalog-separator-color);
101
- font-size: var(--catalog-separator-font-size);
102
- font-weight: var(--catalog-separator-font-weight);
103
- border-top: 1px solid var(--catalog-separator-border-color);
104
- margin: var(--catalog-separator-margin);
105
- padding: var(--catalog-separator-padding);
106
- `;
107
-
108
- const CatalogSeparatorLabel = styled.div`
109
- margin: var(--catalog-separator-label-margin);
110
- `;
89
+ const MobileStickyApplyFilters = styled.div`
90
+ position: fixed;
91
+ display: none;
92
+ background-color: var(--sidebar-background-color);
93
+ bottom: 0;
94
+ padding: 16px 30px;
95
+ left: 0px;
96
+ right: 0px;
111
97
 
112
- const CatalogSeparatorCount = styled.div`
113
- display: flex;
114
- height: var(--catalog-separator-count-height);
115
- padding: var(--catalog-separator-count-padding);
116
- flex-direction: column;
117
- justify-content: center;
118
- align-items: center;
119
- border-radius: var(--catalog-separator-count-border-radius);
120
- border: 1px solid var(--catalog-separator-count-border-color);
121
- background: var(--catalog-separator-count-background);
98
+ ${Button} {
99
+ width: 100%;
100
+ margin: 0;
101
+ }
122
102
  `;
123
103
 
124
- export const FilterControls = styled.div`
125
- padding: var(--mobile-catalog-filter-padding-vertical)
126
- var(--mobile-catalog-filter-padding-horizontal);
127
- border-bottom: 1px solid var(--border-secondary);
128
- background: var(--bg-raised);
104
+ const CatalogPageSidebar = styled.aside<{ isActiveInMobileMode?: boolean }>`
105
+ width: var(--sidebar-width);
106
+ border-right: 1px solid var(--sidebar-border-color);
107
+ padding: 20px 30px;
108
+ position: sticky;
109
+ top: var(--navbar-height);
110
+ height: calc(100vh - var(--navbar-height));
111
+ overflow: auto;
112
+
113
+ @media screen and (max-width: 767px) {
114
+ transition: height 0.2s ease-in-out;
115
+ width: 100%;
116
+ ${({ isActiveInMobileMode }) =>
117
+ isActiveInMobileMode ? 'padding-bottom: 66px;' : 'height: 76px;'};
118
+ background-color: var(--sidebar-background-color);
119
+ border-bottom: 1px solid var(--sidebar-border-color);
120
+ z-index: var(--z-index-surface);
121
+
122
+ ${MobileStickyApplyFilters} {
123
+ display: ${({ isActiveInMobileMode }) => (isActiveInMobileMode ? 'block' : 'none')};
124
+ }
125
+ }
129
126
  `;
130
127
 
131
128
  const CatalogPageContent = styled.main`
132
129
  flex: 1;
133
- padding: var(--mobile-catalog-page-padding);
134
-
135
- ${({ theme }) => theme.mediaQueries.small} {
136
- padding: var(--catalog-page-padding);
137
- }
130
+ padding: 32px;
138
131
  `;
139
132
 
140
133
  const CatalogCards = styled.div`
141
134
  display: grid;
142
135
  grid-template-columns: repeat(auto-fill, minmax(var(--api-catalog-card-min-width), 1fr));
143
136
  gap: 32px;
144
- margin: var(--catalog-cards-group-margin);
145
137
  `;
146
138
 
147
139
  const CatalogTitle = styled(H2)`
148
- color: var(--catalog-title-text-color);
149
- font-weight: var(--catalog-title-font-weight);
150
- font-size: var(--catalog-title-font-size);
151
-
152
140
  && {
153
141
  margin: 0;
154
142
  }
155
143
  `;
156
144
 
157
145
  const CatalogDescription = styled.p`
158
- color: var(--catalog-description-text-color);
159
- font-weight: var(--catalog-description-font-weight);
160
- font-size: var(--catalog-description-font-size);
161
- margin: var(--catalog-description-margin-top) 0 var(--catalog-description-margin-bottom) 0;
146
+ margin: 16px 0 32px 0;
147
+ font-size: 16px;
148
+ color: var(--text-color-secondary);
162
149
  `;
163
150
 
164
151
  const CatalogPageWrapper = styled.div`
165
152
  --sidebar-width: var(--catalog-sidebar-width, 300px);
166
153
 
167
154
  display: flex;
168
- flex-direction: column;
155
+ flex-direction: row;
169
156
 
170
157
  font-weight: var(--font-weight-regular);
171
158
  padding: 0;
172
159
 
173
- color: var(--text-secondary);
160
+ color: var(--text-color);
174
161
  font-size: var(--font-size-base);
175
162
  font-family: var(--font-family-base);
176
163
  line-height: var(--line-height-base);
@@ -179,7 +166,7 @@ const CatalogPageWrapper = styled.div`
179
166
  border: 0;
180
167
  width: calc(100% + 48px);
181
168
  margin: auto -24px 0 -24px;
182
- border-top: 1px solid var(--border-primary);
169
+ border-top: 1px solid var(--border-color);
183
170
  }
184
171
  a:not([role='button']) {
185
172
  text-decoration: none;
@@ -187,43 +174,44 @@ const CatalogPageWrapper = styled.div`
187
174
  font-weight: var(--link-font-weight);
188
175
  }
189
176
 
190
- ${({ theme }) => theme.mediaQueries.small} {
191
- flex-direction: row;
177
+ @media screen and (max-width: 767px) {
178
+ flex-direction: column;
192
179
  }
193
180
  `;
194
181
 
195
- const FilterTagsWrapper = styled.div`
196
- padding: var(--filter-tags-wrapper-padding);
197
- display: flex;
198
- overflow-x: scroll;
199
-
200
- ${({ theme }) => theme.mediaQueries.small} {
201
- display: none;
182
+ // TODO: merge this input with the input from reference docs
183
+ // the on in ref docs is dark, needs separate variables most likely
184
+ const StyledInput = styled.input`
185
+ border: 1px solid rgba(0, 0, 0, 0.23);
186
+ min-width: 200px;
187
+ outline-color: var(--color-primary-500);
188
+ width: 100%;
189
+
190
+ outline: none;
191
+ padding: var(--input-padding);
192
+ border-radius: var(--input-border-radius);
193
+ background-color: var(--input-background-color);
194
+ color: var(--text-color);
195
+ font-family: var(--input-font-family);
196
+ font-size: var(--input-font-size);
197
+ line-height: var(--input-line-height);
198
+
199
+ &::placeholder {
200
+ opacity: 0.6;
201
+ color: var(--text-color);
202
202
  }
203
203
 
204
- ${Button} {
205
- margin: var(--filter-add-button-margin);
206
- padding: var(--filter-add-button-padding);
207
- font-size: var(--filter-add-button-font-size);
208
- font-weight: var(--filter-add-button-font-weight);
209
- color: var(--text-secondary);
210
- display: flex;
211
- white-space: nowrap;
212
-
213
- svg {
214
- fill: var(--text-primary);
215
- }
216
-
217
- &:hover {
218
- color: var(--text-primary);
219
- }
204
+ &:hover {
205
+ color: var(--text-color);
206
+ border: 1px solid rgba(0, 0, 0, 0.23);
220
207
  }
221
- `;
222
208
 
223
- const CatalogPageDescriptionWrapper = styled.div`
224
- display: none;
209
+ &:focus {
210
+ color: var(--text-color);
211
+ border: 1px solid rgba(0, 0, 0, 0.23);
212
+ }
225
213
 
226
- ${({ theme }) => theme.mediaQueries.small} {
227
- display: block;
214
+ &:-webkit-autofill {
215
+ background-color: var(--input-background-color);
228
216
  }
229
217
  `;
@@ -4,114 +4,100 @@ import styled from 'styled-components';
4
4
  import type { CatalogItem } from '@theme/types/portal/src/shared/types/catalog';
5
5
  import { Link } from '@portal/Link';
6
6
  import { Highlight } from '@theme/ui/Highlight';
7
- import { Tag } from '@theme/components/Tag';
8
- import { PointingArrowIcon } from '@theme/icons';
7
+ import { Tags } from '@theme/components/Tags';
8
+ import { useTranslate } from '@portal/hooks';
9
+ import { telemetry } from '@portal/telemetry';
9
10
 
10
11
  export function CatalogCard({ item }: { item: CatalogItem }): JSX.Element {
12
+ const { translate } = useTranslate();
13
+ const translationKeys = {
14
+ footer: 'theme.catalog.card.footer',
15
+ };
11
16
  return (
12
17
  <Link key={item.docsLink || item.link} to={item.docsLink || item.link}>
13
- <StyledCard>
18
+ <StyledCard onClick={() => telemetry.send('catalog_item_clicked', {})}>
14
19
  <CardTitle>
15
20
  <Highlight>{item.title}</Highlight>
16
21
  </CardTitle>
17
- <CardContent>
18
- <CardDescription>
19
- <Highlight>{item.description ?? ''}</Highlight>
20
- </CardDescription>
21
- <CardFooter>
22
- {item.tags && (
23
- <CardTags>
24
- {(item.tags as string[]).map((tag, index) => (
25
- <Tag key={tag + index} color="grey">
26
- <Highlight>{tag}</Highlight>
27
- </Tag>
28
- ))}
29
- </CardTags>
30
- )}
31
- <SelectButton>
32
- <PointingArrowIcon />
33
- </SelectButton>
34
- </CardFooter>
35
- </CardContent>
22
+ {/* <div>{item.image}</div> */}
23
+ <CardDescription>
24
+ <Highlight>{item.description ?? ''}</Highlight>
25
+ </CardDescription>
26
+ {item.tags ? <Tags tags={item.tags as string[]} /> : null}
27
+ <hr />
28
+ <CardFooter data-translation-key={translationKeys.footer}>
29
+ {translate(translationKeys.footer, 'View documentation')}
30
+ </CardFooter>
36
31
  </StyledCard>
37
32
  </Link>
38
33
  );
39
34
  }
40
35
 
41
- const SelectButton = styled.div`
42
- border: 1px solid var(--catalog-card-button-border-color);
43
- border-radius: 100%;
44
- width: var(--catalog-card-button-width);
45
- height: var(--catalog-card-button-height);
46
- display: flex;
47
- align-items: center;
48
- justify-content: center;
49
-
50
- svg {
51
- fill: var(--catalog-card-icon-color);
52
- }
53
- `;
54
-
55
36
  const StyledCard = styled.div`
56
- min-height: var(--catalog-card-min-height);
37
+ min-height: 268px;
57
38
  height: 100%;
58
- color: var(--catalog-card-text-color);
59
- font-size: var(--catalog-card-font-size);
60
- font-weight: var(--catalog-card-font-weight);
61
- background-color: var(--catalog-card-background-color);
62
- border: 1px solid var(--catalog-card-border-color);
63
- transition: all 0.2s ease-in-out;
64
- border-radius: var(--catalog-card-border-radius);
65
- cursor: pointer;
39
+ box-shadow: var(--box-shadow);
40
+
66
41
  display: flex;
67
42
  flex-direction: column;
68
43
 
44
+ color: var(--text-color);
45
+ background-color: var(--thin-tile-background-color);
46
+ border-radius: 4px;
47
+
48
+ border: 1px solid var(--border-color);
49
+ box-shadow: 0px 0px 10px 0px rgba(35, 35, 35, 0.05);
50
+ transition: all 0.2s ease-in-out;
51
+
69
52
  &:hover {
70
- border-color: var(--catalog-card-hover-border-color);
53
+ /* box-shadow: 0px 12px 30px 0px rgba(35, 35, 35, 0.2); */
54
+ box-shadow: 0px 10px 30px 0px rgba(35, 35, 35, 0.1);
55
+ border: 1px solid var(--border-color);
56
+ transform: translateY(-2px);
57
+ }
71
58
 
72
- ${SelectButton} {
73
- transform: rotate(-45deg);
74
- border-color: var(--catalog-card-hover-border-color);
75
- background: var(--catalog-card-button-hover-background);
76
-
77
- svg {
78
- fill: var(--catalog-card-icon-hover-color);
79
- }
80
- }
59
+ border-radius: 8px;
60
+ width: 100%;
61
+ padding: 24px 24px 0;
62
+ display: flex;
63
+ flex-direction: column;
64
+ cursor: pointer;
81
65
  `;
82
66
 
83
67
  const CardTitle = styled.h4`
84
- color: var(--catalog-card-title-color);
85
- min-height: var(--catalog-card-title-min-height);
86
- font-size: var(--catalog-card-title-font-size);
87
- font-weight: var(--catalog-card-title-font-weight);
68
+ line-height: 26px;
69
+ letter-spacing: 0.8px;
70
+ font-size: 20px;
71
+ font-weight: var(--font-weight-bold);
88
72
  margin: 0;
89
- padding: var(--catalog-card-title-padding-vertical) var(--catalog-card-title-padding-horizontal);
73
+ margin-bottom: 16px;
90
74
  `;
91
75
 
92
76
  const CardDescription = styled.div`
93
77
  display: -webkit-box;
94
- -webkit-line-clamp: var(--catalog-card-description-line-clamp);
78
+ -webkit-line-clamp: 3;
95
79
  -webkit-box-orient: vertical;
96
80
  overflow: hidden;
97
81
  text-overflow: ellipsis;
98
- margin-bottom: var(--catalog-card-description-margin-bottom);
82
+ line-height: var(--line-height);
83
+ letter-spacing: 0px;
84
+ font-size: 16px;
85
+ color: var(--text-color-secondary);
86
+ text-align: inherit;
87
+ font-weight: 400;
99
88
  `;
100
89
 
101
- const CardContent = styled.div`
102
- background-color: var(--catalog-card-content-background-color);
103
- border-radius: var(--catalog-card-content-border-radius);
104
- padding: var(--catalog-card-content-padding);
105
- flex: 1;
90
+ const CardFooter = styled.div`
91
+ height: 46px;
106
92
  display: flex;
93
+ align-items: flex-start;
94
+ justify-content: center;
107
95
  flex-direction: column;
108
- justify-content: space-between;
109
- `;
96
+ font-size: 16px;
97
+ font-weight: var(--font-weight-bold);
110
98
 
111
- const CardFooter = styled.div`
112
- display: flex;
113
- align-items: flex-end;
114
- justify-content: space-between;
99
+ a:hover & {
100
+ text-decoration: var(--link-hover-text-decoration);
101
+ color: var(--link-hover-text-color);
102
+ }
115
103
  `;
116
-
117
- const CardTags = styled.div``;
@@ -0,0 +1,3 @@
1
+ export * from './Catalog';
2
+ export * from './CatalogCard';
3
+ export * from './useCatalog';
@@ -3,6 +3,7 @@ import { useLocation, useNavigate } from 'react-router-dom';
3
3
 
4
4
  import type { Location } from 'react-router-dom';
5
5
 
6
+ import { telemetry } from '@portal/telemetry';
6
7
  import type { ResolvedNavItem } from '@theme/types/portal';
7
8
  import type {
8
9
  CatalogItem,
@@ -45,6 +46,7 @@ export function useCatalog(items: ResolvedNavItem[], config: CatalogConfig): Fil
45
46
  }
46
47
  return [...prev.slice(0, filterIdx), newFilterOptions, ...prev.slice(filterIdx + 1)];
47
48
  });
49
+ telemetry.send('catalog_filter_changed', { type: 'toggle' });
48
50
  window.scrollTo(0, 0);
49
51
  }, []);
50
52
 
@@ -68,6 +70,7 @@ export function useCatalog(items: ResolvedNavItem[], config: CatalogConfig): Fil
68
70
  : f,
69
71
  );
70
72
  });
73
+ telemetry.send('catalog_filter_changed', { type: 'select' });
71
74
  window.scrollTo(0, 0);
72
75
  },
73
76
  [filtersWithOptions],
@@ -153,7 +156,16 @@ export function useCatalog(items: ResolvedNavItem[], config: CatalogConfig): Fil
153
156
  ? groupByFirstFilter(resolvedFilters, filteredItems)
154
157
  : [{ title: 'APIs', items: filteredItems }];
155
158
 
156
- return { groups, filters: resolvedFilters, setFilterTerm, filterTerm };
159
+ return {
160
+ groups,
161
+ filters: resolvedFilters,
162
+ setFilterTerm: (newTerm) => {
163
+ setFilterTerm(newTerm);
164
+
165
+ telemetry.send('catalog_filter_changed', { type: 'term' });
166
+ },
167
+ filterTerm,
168
+ };
157
169
  }, [
158
170
  filtersWithOptions,
159
171
  normalizedItems,
@@ -1,4 +1,4 @@
1
- import styled, { css } from 'styled-components';
1
+ import styled from 'styled-components';
2
2
 
3
3
  import { generateCodeBlockTokens } from '@theme/utils';
4
4
 
@@ -13,25 +13,18 @@ export const CodeBlockContainer = styled.pre.attrs<{ className?: string }>(({ cl
13
13
  line-height: var(--code-line-height);
14
14
  padding: var(--code-block-padding);
15
15
  margin: var(--code-block-margin);
16
+ border-radius: ${(withControls) =>
17
+ withControls
18
+ ? '0 0 var(--code-block-border-radius) var(--code-block-border-radius)'
19
+ : 'var(--code-block-border-radius)'};
16
20
  background-color: var(--code-block-background-color);
17
21
  color: var(--code-block-text-color);
18
22
  font-size: var(--code-font-size);
19
23
  white-space: var(--code-wrap, pre);
20
24
  max-height: var(--code-block-max-height, 600px);
21
25
  word-break: var(--code-block-word-break, initial);
22
-
23
- ${(withControls) =>
24
- withControls
25
- ? css`
26
- border-radius: 0 0 var(--code-block-border-radius) var(--code-block-border-radius);
27
- border-left: 1px solid var(--code-block-border-color);
28
- border-right: 1px solid var(--code-block-border-color);
29
- border-bottom: 1px solid var(--code-block-border-color);
30
- `
31
- : css`
32
- border-radius: var(--code-block-border-radius);
33
- border: 1px solid var(--code-block-border-color);
34
- `}
26
+ border: none;
27
+ }
35
28
 
36
29
  /**
37
30
  * Based on prism-dark.css
@@ -1,18 +1,26 @@
1
1
  import styled, { css } from 'styled-components';
2
2
 
3
- import { Button } from '@theme/components/Button';
4
-
5
- export const CodeBlockControlButton = styled(Button)<{ asIcon?: boolean }>`
6
- color: var(--code-block-controls-text-color);
3
+ export const CodeBlockControlButton = styled.button.attrs(() => ({
4
+ 'data-component-name': 'CodeBlockControls/CodeBlockControlButton',
5
+ }))<{ asIcon?: boolean }>`
6
+ border: 0;
7
+ outline: 0;
8
+ border-radius: var(--border-radius);
9
+ height: 20px;
10
+ font-size: 12px;
11
+ line-height: 12px;
12
+ cursor: pointer;
13
+ padding: 1px 6px;
14
+ color: var(--panel-samples-controls-text-color);
7
15
 
8
16
  ${({ asIcon }) =>
9
17
  asIcon
10
18
  ? css`
11
- background-color: var(--code-block-icon-controls-background-color);
19
+ background-color: var(--panel-samples-icon-controls-background-color);
12
20
  `
13
21
  : css`
14
22
  min-width: 90px;
15
- background-color: var(--code-block-text-controls-background-color);
23
+ background-color: var(--panel-samples-text-controls-background-color);
16
24
  `}
17
25
 
18
26
  ${({ theme }) => theme.mediaQueries?.small} {
@@ -22,4 +30,9 @@ export const CodeBlockControlButton = styled(Button)<{ asIcon?: boolean }>`
22
30
  :not(:first-child) {
23
31
  margin-left: 5px;
24
32
  }
33
+
34
+ :hover,
35
+ :focus {
36
+ background-color: var(--panel-samples-controls-hover-background-color);
37
+ }
25
38
  `;