@apify/ui-library 0.51.6-featurepublishuilibrary-0a4729.38266

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 (349) hide show
  1. package/.eslintrc +39 -0
  2. package/.stylelintrc +12 -0
  3. package/CHANGELOG.md +2804 -0
  4. package/README.md +15 -0
  5. package/dist/src/components/action_link.d.ts +5 -0
  6. package/dist/src/components/action_link.d.ts.map +1 -0
  7. package/dist/src/components/action_link.jsx +35 -0
  8. package/dist/src/components/action_link.jsx.map +1 -0
  9. package/dist/src/components/actor_template_card.d.ts +10 -0
  10. package/dist/src/components/actor_template_card.d.ts.map +1 -0
  11. package/dist/src/components/actor_template_card.jsx +73 -0
  12. package/dist/src/components/actor_template_card.jsx.map +1 -0
  13. package/dist/src/components/badge.d.ts +26 -0
  14. package/dist/src/components/badge.d.ts.map +1 -0
  15. package/dist/src/components/badge.jsx +96 -0
  16. package/dist/src/components/badge.jsx.map +1 -0
  17. package/dist/src/components/banner.d.ts +11 -0
  18. package/dist/src/components/banner.d.ts.map +1 -0
  19. package/dist/src/components/banner.jsx +73 -0
  20. package/dist/src/components/banner.jsx.map +1 -0
  21. package/dist/src/components/blog_article.d.ts +9 -0
  22. package/dist/src/components/blog_article.d.ts.map +1 -0
  23. package/dist/src/components/blog_article.jsx +73 -0
  24. package/dist/src/components/blog_article.jsx.map +1 -0
  25. package/dist/src/components/box.d.ts +41 -0
  26. package/dist/src/components/box.d.ts.map +1 -0
  27. package/dist/src/components/box.jsx +48 -0
  28. package/dist/src/components/box.jsx.map +1 -0
  29. package/dist/src/components/button.d.ts +35 -0
  30. package/dist/src/components/button.d.ts.map +1 -0
  31. package/dist/src/components/button.jsx +193 -0
  32. package/dist/src/components/button.jsx.map +1 -0
  33. package/dist/src/components/chip.d.ts +52 -0
  34. package/dist/src/components/chip.d.ts.map +1 -0
  35. package/dist/src/components/chip.jsx +89 -0
  36. package/dist/src/components/chip.jsx.map +1 -0
  37. package/dist/src/components/code/action_button.d.ts +11 -0
  38. package/dist/src/components/code/action_button.d.ts.map +1 -0
  39. package/dist/src/components/code/action_button.jsx +67 -0
  40. package/dist/src/components/code/action_button.jsx.map +1 -0
  41. package/dist/src/components/code/code_block/code_block.d.ts +38 -0
  42. package/dist/src/components/code/code_block/code_block.d.ts.map +1 -0
  43. package/dist/src/components/code/code_block/code_block.jsx +99 -0
  44. package/dist/src/components/code/code_block/code_block.jsx.map +1 -0
  45. package/dist/src/components/code/code_block/code_block.styled.d.ts +13 -0
  46. package/dist/src/components/code/code_block/code_block.styled.d.ts.map +1 -0
  47. package/dist/src/components/code/code_block/code_block.styled.jsx +215 -0
  48. package/dist/src/components/code/code_block/code_block.styled.jsx.map +1 -0
  49. package/dist/src/components/code/code_block/utils.d.ts +2 -0
  50. package/dist/src/components/code/code_block/utils.d.ts.map +1 -0
  51. package/dist/src/components/code/code_block/utils.js +20 -0
  52. package/dist/src/components/code/code_block/utils.js.map +1 -0
  53. package/dist/src/components/code/index.d.ts +4 -0
  54. package/dist/src/components/code/index.d.ts.map +1 -0
  55. package/dist/src/components/code/index.js +4 -0
  56. package/dist/src/components/code/index.js.map +1 -0
  57. package/dist/src/components/code/inline_code/inline_code.d.ts +11 -0
  58. package/dist/src/components/code/inline_code/inline_code.d.ts.map +1 -0
  59. package/dist/src/components/code/inline_code/inline_code.jsx +24 -0
  60. package/dist/src/components/code/inline_code/inline_code.jsx.map +1 -0
  61. package/dist/src/components/code/one_line_code/one_line_code.d.ts +27 -0
  62. package/dist/src/components/code/one_line_code/one_line_code.d.ts.map +1 -0
  63. package/dist/src/components/code/one_line_code/one_line_code.jsx +157 -0
  64. package/dist/src/components/code/one_line_code/one_line_code.jsx.map +1 -0
  65. package/dist/src/components/code/syntax_highlighter.d.ts +16 -0
  66. package/dist/src/components/code/syntax_highlighter.d.ts.map +1 -0
  67. package/dist/src/components/code/syntax_highlighter.jsx +94 -0
  68. package/dist/src/components/code/syntax_highlighter.jsx.map +1 -0
  69. package/dist/src/components/color_wheel_gradient.d.ts +9 -0
  70. package/dist/src/components/color_wheel_gradient.d.ts.map +1 -0
  71. package/dist/src/components/color_wheel_gradient.jsx +23 -0
  72. package/dist/src/components/color_wheel_gradient.jsx.map +1 -0
  73. package/dist/src/components/floating/index.d.ts +4 -0
  74. package/dist/src/components/floating/index.d.ts.map +1 -0
  75. package/dist/src/components/floating/index.js +4 -0
  76. package/dist/src/components/floating/index.js.map +1 -0
  77. package/dist/src/components/floating/menu.d.ts +33 -0
  78. package/dist/src/components/floating/menu.d.ts.map +1 -0
  79. package/dist/src/components/floating/menu.jsx +95 -0
  80. package/dist/src/components/floating/menu.jsx.map +1 -0
  81. package/dist/src/components/floating/menu_common.d.ts +42 -0
  82. package/dist/src/components/floating/menu_common.d.ts.map +1 -0
  83. package/dist/src/components/floating/menu_common.jsx +20 -0
  84. package/dist/src/components/floating/menu_common.jsx.map +1 -0
  85. package/dist/src/components/floating/menu_components.d.ts +29 -0
  86. package/dist/src/components/floating/menu_components.d.ts.map +1 -0
  87. package/dist/src/components/floating/menu_components.jsx +73 -0
  88. package/dist/src/components/floating/menu_components.jsx.map +1 -0
  89. package/dist/src/components/image.d.ts +12 -0
  90. package/dist/src/components/image.d.ts.map +1 -0
  91. package/dist/src/components/image.jsx +8 -0
  92. package/dist/src/components/image.jsx.map +1 -0
  93. package/dist/src/components/index.d.ts +21 -0
  94. package/dist/src/components/index.d.ts.map +1 -0
  95. package/dist/src/components/index.js +21 -0
  96. package/dist/src/components/index.js.map +1 -0
  97. package/dist/src/components/link.d.ts +24 -0
  98. package/dist/src/components/link.d.ts.map +1 -0
  99. package/dist/src/components/link.jsx +67 -0
  100. package/dist/src/components/link.jsx.map +1 -0
  101. package/dist/src/components/message.d.ts +31 -0
  102. package/dist/src/components/message.d.ts.map +1 -0
  103. package/dist/src/components/message.jsx +105 -0
  104. package/dist/src/components/message.jsx.map +1 -0
  105. package/dist/src/components/readme_renderer/index.d.ts +4 -0
  106. package/dist/src/components/readme_renderer/index.d.ts.map +1 -0
  107. package/dist/src/components/readme_renderer/index.js +4 -0
  108. package/dist/src/components/readme_renderer/index.js.map +1 -0
  109. package/dist/src/components/readme_renderer/pythonize_value.d.ts +3 -0
  110. package/dist/src/components/readme_renderer/pythonize_value.d.ts.map +1 -0
  111. package/dist/src/components/readme_renderer/pythonize_value.js +81 -0
  112. package/dist/src/components/readme_renderer/pythonize_value.js.map +1 -0
  113. package/dist/src/components/readme_renderer/table_of_contents.d.ts +10 -0
  114. package/dist/src/components/readme_renderer/table_of_contents.d.ts.map +1 -0
  115. package/dist/src/components/readme_renderer/table_of_contents.jsx +197 -0
  116. package/dist/src/components/readme_renderer/table_of_contents.jsx.map +1 -0
  117. package/dist/src/components/readme_renderer/utils.d.ts +6 -0
  118. package/dist/src/components/readme_renderer/utils.d.ts.map +1 -0
  119. package/dist/src/components/readme_renderer/utils.jsx +42 -0
  120. package/dist/src/components/readme_renderer/utils.jsx.map +1 -0
  121. package/dist/src/components/simple_markdown/index.d.ts +3 -0
  122. package/dist/src/components/simple_markdown/index.d.ts.map +1 -0
  123. package/dist/src/components/simple_markdown/index.jsx +3 -0
  124. package/dist/src/components/simple_markdown/index.jsx.map +1 -0
  125. package/dist/src/components/simple_markdown/simple_markdown.d.ts +16 -0
  126. package/dist/src/components/simple_markdown/simple_markdown.d.ts.map +1 -0
  127. package/dist/src/components/simple_markdown/simple_markdown.jsx +137 -0
  128. package/dist/src/components/simple_markdown/simple_markdown.jsx.map +1 -0
  129. package/dist/src/components/simple_markdown/simple_markdown_components.d.ts +26 -0
  130. package/dist/src/components/simple_markdown/simple_markdown_components.d.ts.map +1 -0
  131. package/dist/src/components/simple_markdown/simple_markdown_components.jsx +193 -0
  132. package/dist/src/components/simple_markdown/simple_markdown_components.jsx.map +1 -0
  133. package/dist/src/components/tag.d.ts +38 -0
  134. package/dist/src/components/tag.d.ts.map +1 -0
  135. package/dist/src/components/tag.jsx +126 -0
  136. package/dist/src/components/tag.jsx.map +1 -0
  137. package/dist/src/components/text/heading_content.d.ts +10 -0
  138. package/dist/src/components/text/heading_content.d.ts.map +1 -0
  139. package/dist/src/components/text/heading_content.jsx +31 -0
  140. package/dist/src/components/text/heading_content.jsx.map +1 -0
  141. package/dist/src/components/text/heading_marketing.d.ts +10 -0
  142. package/dist/src/components/text/heading_marketing.d.ts.map +1 -0
  143. package/dist/src/components/text/heading_marketing.jsx +31 -0
  144. package/dist/src/components/text/heading_marketing.jsx.map +1 -0
  145. package/dist/src/components/text/heading_shared.d.ts +10 -0
  146. package/dist/src/components/text/heading_shared.d.ts.map +1 -0
  147. package/dist/src/components/text/heading_shared.jsx +32 -0
  148. package/dist/src/components/text/heading_shared.jsx.map +1 -0
  149. package/dist/src/components/text/index.d.ts +12 -0
  150. package/dist/src/components/text/index.d.ts.map +1 -0
  151. package/dist/src/components/text/index.js +11 -0
  152. package/dist/src/components/text/index.js.map +1 -0
  153. package/dist/src/components/text/text_base.d.ts +13 -0
  154. package/dist/src/components/text/text_base.d.ts.map +1 -0
  155. package/dist/src/components/text/text_base.jsx +23 -0
  156. package/dist/src/components/text/text_base.jsx.map +1 -0
  157. package/dist/src/components/text/text_content.d.ts +11 -0
  158. package/dist/src/components/text/text_content.d.ts.map +1 -0
  159. package/dist/src/components/text/text_content.jsx +68 -0
  160. package/dist/src/components/text/text_content.jsx.map +1 -0
  161. package/dist/src/components/text/text_marketing.d.ts +11 -0
  162. package/dist/src/components/text/text_marketing.d.ts.map +1 -0
  163. package/dist/src/components/text/text_marketing.jsx +116 -0
  164. package/dist/src/components/text/text_marketing.jsx.map +1 -0
  165. package/dist/src/components/text/text_shared.d.ts +14 -0
  166. package/dist/src/components/text/text_shared.d.ts.map +1 -0
  167. package/dist/src/components/text/text_shared.jsx +55 -0
  168. package/dist/src/components/text/text_shared.jsx.map +1 -0
  169. package/dist/src/components/tile/horizontal_tile.d.ts +9 -0
  170. package/dist/src/components/tile/horizontal_tile.d.ts.map +1 -0
  171. package/dist/src/components/tile/horizontal_tile.jsx +43 -0
  172. package/dist/src/components/tile/horizontal_tile.jsx.map +1 -0
  173. package/dist/src/components/tile/index.d.ts +3 -0
  174. package/dist/src/components/tile/index.d.ts.map +1 -0
  175. package/dist/src/components/tile/index.js +3 -0
  176. package/dist/src/components/tile/index.js.map +1 -0
  177. package/dist/src/components/tile/shared.d.ts +17 -0
  178. package/dist/src/components/tile/shared.d.ts.map +1 -0
  179. package/dist/src/components/tile/shared.js +12 -0
  180. package/dist/src/components/tile/shared.js.map +1 -0
  181. package/dist/src/components/tile/vertical_tile.d.ts +10 -0
  182. package/dist/src/components/tile/vertical_tile.d.ts.map +1 -0
  183. package/dist/src/components/tile/vertical_tile.jsx +32 -0
  184. package/dist/src/components/tile/vertical_tile.jsx.map +1 -0
  185. package/dist/src/components/to_consolidate/card.d.ts +27 -0
  186. package/dist/src/components/to_consolidate/card.d.ts.map +1 -0
  187. package/dist/src/components/to_consolidate/card.jsx +93 -0
  188. package/dist/src/components/to_consolidate/card.jsx.map +1 -0
  189. package/dist/src/components/to_consolidate/index.d.ts +5 -0
  190. package/dist/src/components/to_consolidate/index.d.ts.map +1 -0
  191. package/dist/src/components/to_consolidate/index.js +5 -0
  192. package/dist/src/components/to_consolidate/index.js.map +1 -0
  193. package/dist/src/components/to_consolidate/markdown.d.ts +40 -0
  194. package/dist/src/components/to_consolidate/markdown.d.ts.map +1 -0
  195. package/dist/src/components/to_consolidate/markdown.jsx +454 -0
  196. package/dist/src/components/to_consolidate/markdown.jsx.map +1 -0
  197. package/dist/src/components/to_consolidate/pagination.d.ts +8 -0
  198. package/dist/src/components/to_consolidate/pagination.d.ts.map +1 -0
  199. package/dist/src/components/to_consolidate/pagination.jsx +88 -0
  200. package/dist/src/components/to_consolidate/pagination.jsx.map +1 -0
  201. package/dist/src/components/to_consolidate/tab_number_chip.d.ts +7 -0
  202. package/dist/src/components/to_consolidate/tab_number_chip.d.ts.map +1 -0
  203. package/dist/src/components/to_consolidate/tab_number_chip.jsx +22 -0
  204. package/dist/src/components/to_consolidate/tab_number_chip.jsx.map +1 -0
  205. package/dist/src/design_system/colors_theme.d.ts +213 -0
  206. package/dist/src/design_system/colors_theme.d.ts.map +1 -0
  207. package/dist/src/design_system/colors_theme.js +213 -0
  208. package/dist/src/design_system/colors_theme.js.map +1 -0
  209. package/dist/src/design_system/properties_theme.d.ts +175 -0
  210. package/dist/src/design_system/properties_theme.d.ts.map +1 -0
  211. package/dist/src/design_system/properties_theme.js +315 -0
  212. package/dist/src/design_system/properties_theme.js.map +1 -0
  213. package/dist/src/design_system/theme.d.ts +630 -0
  214. package/dist/src/design_system/theme.d.ts.map +1 -0
  215. package/dist/src/design_system/theme.js +17 -0
  216. package/dist/src/design_system/theme.js.map +1 -0
  217. package/dist/src/design_system/tokens/index.d.ts +6 -0
  218. package/dist/src/design_system/tokens/index.d.ts.map +1 -0
  219. package/dist/src/design_system/tokens/index.js +6 -0
  220. package/dist/src/design_system/tokens/index.js.map +1 -0
  221. package/dist/src/design_system/tokens/layouts.d.ts +29 -0
  222. package/dist/src/design_system/tokens/layouts.d.ts.map +1 -0
  223. package/dist/src/design_system/tokens/layouts.js +29 -0
  224. package/dist/src/design_system/tokens/layouts.js.map +1 -0
  225. package/dist/src/design_system/tokens/radiuses.d.ts +23 -0
  226. package/dist/src/design_system/tokens/radiuses.d.ts.map +1 -0
  227. package/dist/src/design_system/tokens/radiuses.js +23 -0
  228. package/dist/src/design_system/tokens/radiuses.js.map +1 -0
  229. package/dist/src/design_system/tokens/shadows.d.ts +23 -0
  230. package/dist/src/design_system/tokens/shadows.d.ts.map +1 -0
  231. package/dist/src/design_system/tokens/shadows.js +23 -0
  232. package/dist/src/design_system/tokens/shadows.js.map +1 -0
  233. package/dist/src/design_system/tokens/spaces.d.ts +15 -0
  234. package/dist/src/design_system/tokens/spaces.d.ts.map +1 -0
  235. package/dist/src/design_system/tokens/spaces.js +14 -0
  236. package/dist/src/design_system/tokens/spaces.js.map +1 -0
  237. package/dist/src/design_system/tokens/transitions.d.ts +20 -0
  238. package/dist/src/design_system/tokens/transitions.d.ts.map +1 -0
  239. package/dist/src/design_system/tokens/transitions.js +20 -0
  240. package/dist/src/design_system/tokens/transitions.js.map +1 -0
  241. package/dist/src/design_system/typography_theme.d.ts +189 -0
  242. package/dist/src/design_system/typography_theme.d.ts.map +1 -0
  243. package/dist/src/design_system/typography_theme.js +190 -0
  244. package/dist/src/design_system/typography_theme.js.map +1 -0
  245. package/dist/src/index.d.ts +7 -0
  246. package/dist/src/index.d.ts.map +1 -0
  247. package/dist/src/index.js +7 -0
  248. package/dist/src/index.js.map +1 -0
  249. package/dist/src/type_utils.d.ts +6 -0
  250. package/dist/src/type_utils.d.ts.map +1 -0
  251. package/dist/src/type_utils.js +2 -0
  252. package/dist/src/type_utils.js.map +1 -0
  253. package/dist/src/ui_dependency_provider.d.ts +29 -0
  254. package/dist/src/ui_dependency_provider.d.ts.map +1 -0
  255. package/dist/src/ui_dependency_provider.jsx +14 -0
  256. package/dist/src/ui_dependency_provider.jsx.map +1 -0
  257. package/dist/src/utils/copy_to_clipboard.d.ts +7 -0
  258. package/dist/src/utils/copy_to_clipboard.d.ts.map +1 -0
  259. package/dist/src/utils/copy_to_clipboard.js +16 -0
  260. package/dist/src/utils/copy_to_clipboard.js.map +1 -0
  261. package/dist/src/utils/image_color.d.ts +7 -0
  262. package/dist/src/utils/image_color.d.ts.map +1 -0
  263. package/dist/src/utils/image_color.js +35 -0
  264. package/dist/src/utils/image_color.js.map +1 -0
  265. package/dist/src/utils/index.d.ts +4 -0
  266. package/dist/src/utils/index.d.ts.map +1 -0
  267. package/dist/src/utils/index.js +4 -0
  268. package/dist/src/utils/index.js.map +1 -0
  269. package/dist/src/utils/sanitization.d.ts +11 -0
  270. package/dist/src/utils/sanitization.d.ts.map +1 -0
  271. package/dist/src/utils/sanitization.js +16 -0
  272. package/dist/src/utils/sanitization.js.map +1 -0
  273. package/dist/tsconfig.build.tsbuildinfo +1 -0
  274. package/package.json +71 -0
  275. package/src/codemods/generate_color_property_tokens.mjs +97 -0
  276. package/src/codemods/generate_color_theme_files.mjs +46 -0
  277. package/src/codemods/generate_typograpy_tokens_files.mjs +136 -0
  278. package/src/components/action_link.tsx +59 -0
  279. package/src/components/actor_template_card.tsx +99 -0
  280. package/src/components/badge.tsx +144 -0
  281. package/src/components/banner.tsx +95 -0
  282. package/src/components/blog_article.tsx +85 -0
  283. package/src/components/box.tsx +127 -0
  284. package/src/components/button.tsx +303 -0
  285. package/src/components/chip.tsx +121 -0
  286. package/src/components/code/action_button.tsx +96 -0
  287. package/src/components/code/code_block/code_block.styled.tsx +228 -0
  288. package/src/components/code/code_block/code_block.tsx +235 -0
  289. package/src/components/code/code_block/utils.ts +19 -0
  290. package/src/components/code/index.ts +3 -0
  291. package/src/components/code/inline_code/inline_code.tsx +44 -0
  292. package/src/components/code/one_line_code/one_line_code.tsx +232 -0
  293. package/src/components/code/syntax_highlighter.tsx +125 -0
  294. package/src/components/color_wheel_gradient.tsx +31 -0
  295. package/src/components/floating/index.ts +3 -0
  296. package/src/components/floating/menu.tsx +191 -0
  297. package/src/components/floating/menu_common.tsx +31 -0
  298. package/src/components/floating/menu_components.tsx +94 -0
  299. package/src/components/image.tsx +23 -0
  300. package/src/components/index.ts +20 -0
  301. package/src/components/link.tsx +114 -0
  302. package/src/components/message.tsx +157 -0
  303. package/src/components/readme_renderer/index.ts +3 -0
  304. package/src/components/readme_renderer/pythonize_value.ts +78 -0
  305. package/src/components/readme_renderer/table_of_contents.tsx +257 -0
  306. package/src/components/readme_renderer/utils.tsx +46 -0
  307. package/src/components/simple_markdown/index.tsx +2 -0
  308. package/src/components/simple_markdown/simple_markdown.tsx +181 -0
  309. package/src/components/simple_markdown/simple_markdown_components.tsx +295 -0
  310. package/src/components/tag.tsx +185 -0
  311. package/src/components/text/heading_content.tsx +56 -0
  312. package/src/components/text/heading_marketing.tsx +55 -0
  313. package/src/components/text/heading_shared.tsx +57 -0
  314. package/src/components/text/index.ts +18 -0
  315. package/src/components/text/text_base.tsx +52 -0
  316. package/src/components/text/text_content.tsx +104 -0
  317. package/src/components/text/text_marketing.tsx +152 -0
  318. package/src/components/text/text_shared.tsx +96 -0
  319. package/src/components/tile/horizontal_tile.tsx +76 -0
  320. package/src/components/tile/index.ts +2 -0
  321. package/src/components/tile/shared.ts +27 -0
  322. package/src/components/tile/vertical_tile.tsx +58 -0
  323. package/src/components/to_consolidate/card.tsx +141 -0
  324. package/src/components/to_consolidate/index.ts +4 -0
  325. package/src/components/to_consolidate/markdown.tsx +593 -0
  326. package/src/components/to_consolidate/pagination.tsx +139 -0
  327. package/src/components/to_consolidate/tab_number_chip.tsx +31 -0
  328. package/src/design_system/colors_theme.ts +213 -0
  329. package/src/design_system/generate_color_definitions.js +43 -0
  330. package/src/design_system/properties_theme.ts +453 -0
  331. package/src/design_system/supernova_color_tokens.json +1766 -0
  332. package/src/design_system/supernova_typography_tokens.json +657 -0
  333. package/src/design_system/theme.ts +26 -0
  334. package/src/design_system/tokens/index.ts +5 -0
  335. package/src/design_system/tokens/layouts.ts +29 -0
  336. package/src/design_system/tokens/radiuses.ts +22 -0
  337. package/src/design_system/tokens/shadows.ts +22 -0
  338. package/src/design_system/tokens/spaces.ts +15 -0
  339. package/src/design_system/tokens/transitions.ts +19 -0
  340. package/src/design_system/typography_theme.ts +197 -0
  341. package/src/index.ts +7 -0
  342. package/src/type_utils.ts +7 -0
  343. package/src/ui_dependency_provider.tsx +50 -0
  344. package/src/utils/copy_to_clipboard.ts +24 -0
  345. package/src/utils/image_color.ts +44 -0
  346. package/src/utils/index.ts +3 -0
  347. package/src/utils/sanitization.ts +14 -0
  348. package/tsconfig.build.json +18 -0
  349. package/tsconfig.json +10 -0
@@ -0,0 +1,139 @@
1
+ import type { FC } from 'react';
2
+ import React, { useMemo } from 'react';
3
+ import styled from 'styled-components';
4
+
5
+ import {
6
+ ChevronRight20,
7
+ ChevronLeft20,
8
+ } from '@apify/icons';
9
+
10
+ import { theme } from '../../design_system/theme';
11
+ import { Box } from '../box';
12
+ import { Button } from '../button';
13
+
14
+ const LEADING_THREE_DOTS_PAGE_KEY = -1;
15
+ const TRAILING_THREE_DOTS_PAGE_KEY = -2;
16
+
17
+ const PaginationButtonBase = styled(Button).attrs({ variant: 'text' })`
18
+ padding: 0;
19
+ height: 28px;
20
+ min-width: 28px;
21
+ font-weight: 400 !important; /* default for button is medium, force regular to all page selection buttons */
22
+
23
+ &:disabled {
24
+ background: transparent;
25
+ }
26
+
27
+ &.currentPage {
28
+ background-color: ${theme.color.neutral.chipBackground};
29
+
30
+ &:hover {
31
+ background-color: ${theme.color.neutral.hover};
32
+ }
33
+ }
34
+ `;
35
+
36
+ const StyledPageSelectionButtons = styled(Box)`
37
+ display: inline-flex;
38
+ gap: ${theme.space.space8};
39
+ `;
40
+
41
+ export type PaginationButtonsProps = {
42
+ page: number;
43
+ totalPages: number;
44
+ onPageChange: (page: number) => void;
45
+ }
46
+
47
+ // TODO: Consolidate and move to /library
48
+ export const PaginationButtons: FC<PaginationButtonsProps> = ({
49
+ page,
50
+ totalPages,
51
+ onPageChange,
52
+ }) => {
53
+ // Pages to display buttons for (counting from 0, -1 and -2 will mean a special '...' disabled button)
54
+ const pagesToDisplay = useMemo(() => {
55
+ const result = [];
56
+ if (totalPages <= 8) {
57
+ for (let i = 0; i < totalPages; i++) {
58
+ result.push(i);
59
+ }
60
+ } else if (page < 5) {
61
+ for (let i = 0; i < 7; i++) {
62
+ result.push(i);
63
+ }
64
+ result.push(TRAILING_THREE_DOTS_PAGE_KEY);
65
+ } else if (page < totalPages - 4) {
66
+ result.push(0);
67
+ result.push(LEADING_THREE_DOTS_PAGE_KEY);
68
+ for (let i = page - 2; i <= page + 2; i++) {
69
+ result.push(i);
70
+ }
71
+ result.push(TRAILING_THREE_DOTS_PAGE_KEY);
72
+ } else {
73
+ result.push(0);
74
+ result.push(LEADING_THREE_DOTS_PAGE_KEY);
75
+ for (let i = totalPages - 6; i < totalPages; i++) {
76
+ result.push(i);
77
+ }
78
+ }
79
+ return result;
80
+ }, [page, totalPages]);
81
+
82
+ return (
83
+ <StyledPageSelectionButtons>
84
+ <PaginationButtonBase
85
+ data-test='page-prev-button'
86
+ disabled={page <= 0}
87
+ onClick={() => onPageChange(page - 1)}
88
+ trackingId='PaginationPrevPage'
89
+ >
90
+ <ChevronLeft20 strokeWidth={2} />
91
+ </PaginationButtonBase>
92
+ {pagesToDisplay.map((pageToDisplay) => {
93
+ if (pageToDisplay === LEADING_THREE_DOTS_PAGE_KEY || pageToDisplay === TRAILING_THREE_DOTS_PAGE_KEY) {
94
+ return (
95
+ <PaginationButtonBase
96
+ trackingId='ThreeDots'
97
+ key={pageToDisplay}
98
+ onClick={() => undefined}
99
+ disabled
100
+ >
101
+ ...
102
+ </PaginationButtonBase>
103
+ );
104
+ }
105
+ if (pageToDisplay === page) {
106
+ return (
107
+ <PaginationButtonBase
108
+ key={pageToDisplay}
109
+ data-test='current-page-button'
110
+ trackingId='PaginationCurrentPage'
111
+ className='currentPage'
112
+ onClick={() => undefined}
113
+ >
114
+ {pageToDisplay + 1}
115
+ </PaginationButtonBase>
116
+ );
117
+ }
118
+ return (
119
+ <PaginationButtonBase
120
+ key={pageToDisplay}
121
+ data-test='page-number-button'
122
+ onClick={() => onPageChange(pageToDisplay)}
123
+ trackingId='PaginationNumberedPage'
124
+ >
125
+ {pageToDisplay + 1}
126
+ </PaginationButtonBase>
127
+ );
128
+ })}
129
+ <PaginationButtonBase
130
+ data-test='page-next-button'
131
+ disabled={page >= totalPages - 1}
132
+ onClick={() => onPageChange(page + 1)}
133
+ trackingId='PaginationNextPage'
134
+ >
135
+ <ChevronRight20 strokeWidth={2} />
136
+ </PaginationButtonBase>
137
+ </StyledPageSelectionButtons>
138
+ );
139
+ };
@@ -0,0 +1,31 @@
1
+ import React from 'react';
2
+ import styled from 'styled-components';
3
+
4
+ import { theme } from '../../design_system/theme';
5
+ import { Text } from '../text';
6
+
7
+ const StyledChip = styled(Text)`
8
+ color: ${theme.color.neutral.text};
9
+ background-color: ${theme.color.neutral.chipBackground};
10
+ line-height: 1;
11
+ padding: ${theme.space.space2} ${theme.space.space4};
12
+ border-radius: ${theme.radius.radius8};
13
+
14
+ ._disabled & {
15
+ background-color: ${theme.color.neutral.backgroundSubtle};
16
+ color: ${theme.color.neutral.textDisabled};
17
+ }
18
+ `;
19
+
20
+ interface ChipProps {
21
+ children: React.ReactNode;
22
+ }
23
+
24
+ export const TabNumberChip: React.FC<ChipProps> = ({ children, ...rest }) => {
25
+ return <StyledChip
26
+ size='small'
27
+ {...rest}
28
+ >
29
+ {children}
30
+ </StyledChip>;
31
+ };
@@ -0,0 +1,213 @@
1
+ export const lightTheme = {
2
+ neutral0: '#ffffff',
3
+ neutral25: '#f8f9fc',
4
+ neutral50: '#f3f4fa',
5
+ neutral75: '#eef0f8',
6
+ neutral100: '#e0e3f2',
7
+ neutral150: '#d0d5e9',
8
+ neutral200: '#c0c6de',
9
+ neutral250: '#b0b8d1',
10
+ neutral300: '#a3abc5',
11
+ neutral350: '#969eb8',
12
+ neutral400: '#8a93ae',
13
+ neutral450: '#7b84a0',
14
+ neutral500: '#6c7590',
15
+ neutral550: '#626a85',
16
+ neutral600: '#555d76',
17
+ neutral650: '#4b526b',
18
+ neutral700: '#3f475d',
19
+ neutral750: '#31384d',
20
+ neutral775: '#2b3143',
21
+ neutral800: '#272d3e',
22
+ neutral850: '#242836',
23
+ neutral875: '#1d202a',
24
+ neutral900: '#191b22',
25
+ neutral950: '#0a0b0f',
26
+ yellow25: '#f9f6ea',
27
+ yellow50: '#f9f0db',
28
+ yellow75: '#f7e8c4',
29
+ yellow100: '#f7dfb1',
30
+ yellow200: '#f5b315',
31
+ yellow300: '#e39c04',
32
+ yellow350: '#d58e00',
33
+ yellow400: '#ca8200',
34
+ yellow500: '#a96600',
35
+ yellow600: '#8c4e02',
36
+ yellow700: '#864906',
37
+ red25: '#fcf2ef',
38
+ red50: '#fff0ec',
39
+ red75: '#ffe3dc',
40
+ red100: '#fedad1',
41
+ red200: '#ffb39f',
42
+ red300: '#ff886e',
43
+ red350: '#fc7156',
44
+ red400: '#fa4d37',
45
+ red500: '#e3231d',
46
+ red600: '#bb0401',
47
+ red700: '#af0600',
48
+ green25: '#e8f9ef',
49
+ green50: '#e4f5e5',
50
+ green75: '#daefdc',
51
+ green100: '#cfe9d1',
52
+ green200: '#80da8d',
53
+ green300: '#46c263',
54
+ green350: '#22b551',
55
+ green400: '#00ab46',
56
+ green500: '#008a27',
57
+ green600: '#086e08',
58
+ green700: '#176b08',
59
+ blue25: '#f0f8ff',
60
+ blue50: '#ecf1ff',
61
+ blue75: '#e1eaff',
62
+ blue100: '#d8e2ff',
63
+ blue200: '#b2c6ff',
64
+ blue300: '#88abfe',
65
+ blue350: '#709efd',
66
+ blue400: '#5290f9',
67
+ blue500: '#1672eb',
68
+ blue600: '#1a57da',
69
+ blue700: '#224ed5',
70
+ roseLight: '#f483b5',
71
+ roseBase: '#c6387d',
72
+ roseDark: '#781552',
73
+ roseText: '#b6006b',
74
+ buttercupLight: '#ffdd96',
75
+ buttercupBase: '#f0b21b',
76
+ buttercupDark: '#c37319',
77
+ buttercupText: '#a65d00',
78
+ paprikaLight: '#e44467',
79
+ paprikaBase: '#9b0238',
80
+ paprikaDark: '#4a0018',
81
+ paprikaText: '#ba0044',
82
+ tealLight: '#a7f2ed',
83
+ tealBase: '#30c0bb',
84
+ tealDark: '#297774',
85
+ tealText: '#018181',
86
+ indigoLight: '#a1b7ff',
87
+ indigoBase: '#5d85e1',
88
+ indigoDark: '#365494',
89
+ indigoText: '#2563c1',
90
+ slateLight: '#c1c5e1',
91
+ slateBase: '#8490c4',
92
+ slateDark: '#525c85',
93
+ slateText: '#566087',
94
+ coralLight: '#ffc89f',
95
+ coralBase: '#fa8136',
96
+ coralDark: '#bb4511',
97
+ coralText: '#c74000',
98
+ lavenderLight: '#bf97ed',
99
+ lavenderBase: '#6a14de',
100
+ lavenderDark: '#330276',
101
+ lavenderText: '#6e00f4',
102
+ bambooLight: '#64cda5',
103
+ bambooBase: '#12966f',
104
+ bambooDark: '#195d46',
105
+ bambooText: '#007455',
106
+ } as const;
107
+
108
+ export const darkTheme = {
109
+ neutral0: '#ffffff',
110
+ neutral25: '#f8f9fc',
111
+ neutral50: '#f3f4fa',
112
+ neutral75: '#eef0f8',
113
+ neutral100: '#e1e3ed',
114
+ neutral150: '#d1d5e4',
115
+ neutral200: '#c1c6d9',
116
+ neutral250: '#b2b8cc',
117
+ neutral300: '#a5abc0',
118
+ neutral350: '#989eb3',
119
+ neutral400: '#8c93a8',
120
+ neutral450: '#7d8499',
121
+ neutral500: '#6e758a',
122
+ neutral550: '#646a7f',
123
+ neutral600: '#575d71',
124
+ neutral650: '#4d5265',
125
+ neutral700: '#414758',
126
+ neutral750: '#343847',
127
+ neutral775: '#2d313e',
128
+ neutral800: '#2a2d39',
129
+ neutral850: '#252832',
130
+ neutral875: '#1e2027',
131
+ neutral900: '#1a1b21',
132
+ neutral950: '#101114',
133
+ yellow25: '#fcdc73',
134
+ yellow50: '#ffd761',
135
+ yellow75: '#f9ce4b',
136
+ yellow100: '#f5bc38',
137
+ yellow200: '#cf9117',
138
+ yellow300: '#a56909',
139
+ yellow350: '#8a4f05',
140
+ yellow400: '#6d3806',
141
+ yellow500: '#5d2e0e',
142
+ yellow600: '#3f1b07',
143
+ yellow700: '#301806',
144
+ red25: '#f5a790',
145
+ red50: '#fe9e8a',
146
+ red75: '#ff8770',
147
+ red100: '#ff7157',
148
+ red200: '#ef6045',
149
+ red300: '#cf4436',
150
+ red350: '#aa3229',
151
+ red400: '#812420',
152
+ red500: '#672523',
153
+ red600: '#40191b',
154
+ red700: '#381719',
155
+ green25: '#74d584',
156
+ green50: '#6ccd7c',
157
+ green75: '#55c06a',
158
+ green100: '#3bb358',
159
+ green200: '#23a64a',
160
+ green300: '#068a35',
161
+ green350: '#006e29',
162
+ green400: '#00531e',
163
+ green500: '#14441f',
164
+ green600: '#0f2b14',
165
+ green700: '#09260f',
166
+ blue25: '#92C0ff',
167
+ blue50: '#8ebcff',
168
+ blue75: '#80a9ff',
169
+ blue100: '#6f9dff',
170
+ blue200: '#5990ff',
171
+ blue300: '#3970d7',
172
+ blue350: '#295cbb',
173
+ blue400: '#194594',
174
+ blue500: '#1a3a78',
175
+ blue600: '#0d2550',
176
+ blue700: '#151d34',
177
+ roseLight: '#e88bb3',
178
+ roseBase: '#b8487b',
179
+ roseDark: '#6f234f',
180
+ roseText: '#ed8bb5',
181
+ buttercupLight: '#f9deaa',
182
+ buttercupBase: '#e5b557',
183
+ buttercupDark: '#b87939',
184
+ buttercupText: '#ebbf6c',
185
+ paprikaLight: '#e26c7d',
186
+ paprikaBase: '#9e384b',
187
+ paprikaDark: '#511d27',
188
+ paprikaText: '#f67c8d',
189
+ tealLight: '#aef0f5',
190
+ tealBase: '#58bcc4',
191
+ tealDark: '#408288',
192
+ tealText: '#62c1c8',
193
+ indigoLight: '#a8b7ed',
194
+ indigoBase: '#6d85ca',
195
+ indigoDark: '#425484',
196
+ indigoText: '#a2b2eb',
197
+ slateLight: '#c2c5dc',
198
+ slateBase: '#8690bf',
199
+ slateDark: '#535c81',
200
+ slateText: '#afb2c9',
201
+ coralLight: '#f3ccb0',
202
+ coralBase: '#f08848',
203
+ coralDark: '#9a4e2d',
204
+ coralText: '#f9b27b',
205
+ lavenderLight: '#b482ed',
206
+ lavenderBase: '#8148c9',
207
+ lavenderDark: '#48296f',
208
+ lavenderText: '#be8af9',
209
+ bambooLight: '#7acaa9',
210
+ bambooBase: '#439274',
211
+ bambooDark: '#305b4a',
212
+ bambooText: '#65bc99',
213
+ } as const;
@@ -0,0 +1,43 @@
1
+ import { readFileSync } from 'fs';
2
+
3
+ const code = readFileSync('./src/design_system/supernova_color_tokens.json', 'utf-8');
4
+
5
+ const colorsDefinitions = JSON.parse(code);
6
+
7
+ const getObjectValueByPath = (obj, path) => {
8
+ return path.split('.').reduce((acc, part) => {
9
+ return acc && acc[part];
10
+ }, obj);
11
+ };
12
+
13
+ const getColorPropertyName = (semanticCategory, property) => {
14
+ const semanticColorName = `${property.split(/[_ ]/).map((semanticPartName) => semanticPartName.toLowerCase()).join('-')}`;
15
+
16
+ // lower case and replace spaces with dashes
17
+ const semanticCategoryName = semanticCategory.toLowerCase().split(' ').join('-');
18
+
19
+ return `--color-${semanticCategoryName}-${semanticColorName}`;
20
+ };
21
+
22
+ const generateColorDefinitions = (themeVariant) => {
23
+ const mergedPalette = {
24
+ ...colorsDefinitions[themeVariant].Semantic,
25
+ ...colorsDefinitions[themeVariant].Decorative,
26
+ };
27
+
28
+ const colorDefinitions = [];
29
+ for (const [semanticCategory, palette] of Object.entries(mergedPalette)) {
30
+ for (const [key, { value }] of Object.entries(palette)) {
31
+ colorDefinitions.push(
32
+ // eslint-disable-next-line max-len
33
+ `${getColorPropertyName(semanticCategory, key)}: ${value.startsWith('#') ? value : getObjectValueByPath(colorsDefinitions[themeVariant], value.slice(1, -1)).value};`,
34
+ );
35
+ }
36
+ }
37
+
38
+ return colorDefinitions.join('\n');
39
+ };
40
+
41
+ ['light', 'dark'].forEach((themeVariant) => {
42
+ console.log(`\n*** CSS variables fro ${themeVariant} mode ***\n`, generateColorDefinitions(themeVariant));
43
+ });