@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.
- package/.eslintrc +39 -0
- package/.stylelintrc +12 -0
- package/CHANGELOG.md +2804 -0
- package/README.md +15 -0
- package/dist/src/components/action_link.d.ts +5 -0
- package/dist/src/components/action_link.d.ts.map +1 -0
- package/dist/src/components/action_link.jsx +35 -0
- package/dist/src/components/action_link.jsx.map +1 -0
- package/dist/src/components/actor_template_card.d.ts +10 -0
- package/dist/src/components/actor_template_card.d.ts.map +1 -0
- package/dist/src/components/actor_template_card.jsx +73 -0
- package/dist/src/components/actor_template_card.jsx.map +1 -0
- package/dist/src/components/badge.d.ts +26 -0
- package/dist/src/components/badge.d.ts.map +1 -0
- package/dist/src/components/badge.jsx +96 -0
- package/dist/src/components/badge.jsx.map +1 -0
- package/dist/src/components/banner.d.ts +11 -0
- package/dist/src/components/banner.d.ts.map +1 -0
- package/dist/src/components/banner.jsx +73 -0
- package/dist/src/components/banner.jsx.map +1 -0
- package/dist/src/components/blog_article.d.ts +9 -0
- package/dist/src/components/blog_article.d.ts.map +1 -0
- package/dist/src/components/blog_article.jsx +73 -0
- package/dist/src/components/blog_article.jsx.map +1 -0
- package/dist/src/components/box.d.ts +41 -0
- package/dist/src/components/box.d.ts.map +1 -0
- package/dist/src/components/box.jsx +48 -0
- package/dist/src/components/box.jsx.map +1 -0
- package/dist/src/components/button.d.ts +35 -0
- package/dist/src/components/button.d.ts.map +1 -0
- package/dist/src/components/button.jsx +193 -0
- package/dist/src/components/button.jsx.map +1 -0
- package/dist/src/components/chip.d.ts +52 -0
- package/dist/src/components/chip.d.ts.map +1 -0
- package/dist/src/components/chip.jsx +89 -0
- package/dist/src/components/chip.jsx.map +1 -0
- package/dist/src/components/code/action_button.d.ts +11 -0
- package/dist/src/components/code/action_button.d.ts.map +1 -0
- package/dist/src/components/code/action_button.jsx +67 -0
- package/dist/src/components/code/action_button.jsx.map +1 -0
- package/dist/src/components/code/code_block/code_block.d.ts +38 -0
- package/dist/src/components/code/code_block/code_block.d.ts.map +1 -0
- package/dist/src/components/code/code_block/code_block.jsx +99 -0
- package/dist/src/components/code/code_block/code_block.jsx.map +1 -0
- package/dist/src/components/code/code_block/code_block.styled.d.ts +13 -0
- package/dist/src/components/code/code_block/code_block.styled.d.ts.map +1 -0
- package/dist/src/components/code/code_block/code_block.styled.jsx +215 -0
- package/dist/src/components/code/code_block/code_block.styled.jsx.map +1 -0
- package/dist/src/components/code/code_block/utils.d.ts +2 -0
- package/dist/src/components/code/code_block/utils.d.ts.map +1 -0
- package/dist/src/components/code/code_block/utils.js +20 -0
- package/dist/src/components/code/code_block/utils.js.map +1 -0
- package/dist/src/components/code/index.d.ts +4 -0
- package/dist/src/components/code/index.d.ts.map +1 -0
- package/dist/src/components/code/index.js +4 -0
- package/dist/src/components/code/index.js.map +1 -0
- package/dist/src/components/code/inline_code/inline_code.d.ts +11 -0
- package/dist/src/components/code/inline_code/inline_code.d.ts.map +1 -0
- package/dist/src/components/code/inline_code/inline_code.jsx +24 -0
- package/dist/src/components/code/inline_code/inline_code.jsx.map +1 -0
- package/dist/src/components/code/one_line_code/one_line_code.d.ts +27 -0
- package/dist/src/components/code/one_line_code/one_line_code.d.ts.map +1 -0
- package/dist/src/components/code/one_line_code/one_line_code.jsx +157 -0
- package/dist/src/components/code/one_line_code/one_line_code.jsx.map +1 -0
- package/dist/src/components/code/syntax_highlighter.d.ts +16 -0
- package/dist/src/components/code/syntax_highlighter.d.ts.map +1 -0
- package/dist/src/components/code/syntax_highlighter.jsx +94 -0
- package/dist/src/components/code/syntax_highlighter.jsx.map +1 -0
- package/dist/src/components/color_wheel_gradient.d.ts +9 -0
- package/dist/src/components/color_wheel_gradient.d.ts.map +1 -0
- package/dist/src/components/color_wheel_gradient.jsx +23 -0
- package/dist/src/components/color_wheel_gradient.jsx.map +1 -0
- package/dist/src/components/floating/index.d.ts +4 -0
- package/dist/src/components/floating/index.d.ts.map +1 -0
- package/dist/src/components/floating/index.js +4 -0
- package/dist/src/components/floating/index.js.map +1 -0
- package/dist/src/components/floating/menu.d.ts +33 -0
- package/dist/src/components/floating/menu.d.ts.map +1 -0
- package/dist/src/components/floating/menu.jsx +95 -0
- package/dist/src/components/floating/menu.jsx.map +1 -0
- package/dist/src/components/floating/menu_common.d.ts +42 -0
- package/dist/src/components/floating/menu_common.d.ts.map +1 -0
- package/dist/src/components/floating/menu_common.jsx +20 -0
- package/dist/src/components/floating/menu_common.jsx.map +1 -0
- package/dist/src/components/floating/menu_components.d.ts +29 -0
- package/dist/src/components/floating/menu_components.d.ts.map +1 -0
- package/dist/src/components/floating/menu_components.jsx +73 -0
- package/dist/src/components/floating/menu_components.jsx.map +1 -0
- package/dist/src/components/image.d.ts +12 -0
- package/dist/src/components/image.d.ts.map +1 -0
- package/dist/src/components/image.jsx +8 -0
- package/dist/src/components/image.jsx.map +1 -0
- package/dist/src/components/index.d.ts +21 -0
- package/dist/src/components/index.d.ts.map +1 -0
- package/dist/src/components/index.js +21 -0
- package/dist/src/components/index.js.map +1 -0
- package/dist/src/components/link.d.ts +24 -0
- package/dist/src/components/link.d.ts.map +1 -0
- package/dist/src/components/link.jsx +67 -0
- package/dist/src/components/link.jsx.map +1 -0
- package/dist/src/components/message.d.ts +31 -0
- package/dist/src/components/message.d.ts.map +1 -0
- package/dist/src/components/message.jsx +105 -0
- package/dist/src/components/message.jsx.map +1 -0
- package/dist/src/components/readme_renderer/index.d.ts +4 -0
- package/dist/src/components/readme_renderer/index.d.ts.map +1 -0
- package/dist/src/components/readme_renderer/index.js +4 -0
- package/dist/src/components/readme_renderer/index.js.map +1 -0
- package/dist/src/components/readme_renderer/pythonize_value.d.ts +3 -0
- package/dist/src/components/readme_renderer/pythonize_value.d.ts.map +1 -0
- package/dist/src/components/readme_renderer/pythonize_value.js +81 -0
- package/dist/src/components/readme_renderer/pythonize_value.js.map +1 -0
- package/dist/src/components/readme_renderer/table_of_contents.d.ts +10 -0
- package/dist/src/components/readme_renderer/table_of_contents.d.ts.map +1 -0
- package/dist/src/components/readme_renderer/table_of_contents.jsx +197 -0
- package/dist/src/components/readme_renderer/table_of_contents.jsx.map +1 -0
- package/dist/src/components/readme_renderer/utils.d.ts +6 -0
- package/dist/src/components/readme_renderer/utils.d.ts.map +1 -0
- package/dist/src/components/readme_renderer/utils.jsx +42 -0
- package/dist/src/components/readme_renderer/utils.jsx.map +1 -0
- package/dist/src/components/simple_markdown/index.d.ts +3 -0
- package/dist/src/components/simple_markdown/index.d.ts.map +1 -0
- package/dist/src/components/simple_markdown/index.jsx +3 -0
- package/dist/src/components/simple_markdown/index.jsx.map +1 -0
- package/dist/src/components/simple_markdown/simple_markdown.d.ts +16 -0
- package/dist/src/components/simple_markdown/simple_markdown.d.ts.map +1 -0
- package/dist/src/components/simple_markdown/simple_markdown.jsx +137 -0
- package/dist/src/components/simple_markdown/simple_markdown.jsx.map +1 -0
- package/dist/src/components/simple_markdown/simple_markdown_components.d.ts +26 -0
- package/dist/src/components/simple_markdown/simple_markdown_components.d.ts.map +1 -0
- package/dist/src/components/simple_markdown/simple_markdown_components.jsx +193 -0
- package/dist/src/components/simple_markdown/simple_markdown_components.jsx.map +1 -0
- package/dist/src/components/tag.d.ts +38 -0
- package/dist/src/components/tag.d.ts.map +1 -0
- package/dist/src/components/tag.jsx +126 -0
- package/dist/src/components/tag.jsx.map +1 -0
- package/dist/src/components/text/heading_content.d.ts +10 -0
- package/dist/src/components/text/heading_content.d.ts.map +1 -0
- package/dist/src/components/text/heading_content.jsx +31 -0
- package/dist/src/components/text/heading_content.jsx.map +1 -0
- package/dist/src/components/text/heading_marketing.d.ts +10 -0
- package/dist/src/components/text/heading_marketing.d.ts.map +1 -0
- package/dist/src/components/text/heading_marketing.jsx +31 -0
- package/dist/src/components/text/heading_marketing.jsx.map +1 -0
- package/dist/src/components/text/heading_shared.d.ts +10 -0
- package/dist/src/components/text/heading_shared.d.ts.map +1 -0
- package/dist/src/components/text/heading_shared.jsx +32 -0
- package/dist/src/components/text/heading_shared.jsx.map +1 -0
- package/dist/src/components/text/index.d.ts +12 -0
- package/dist/src/components/text/index.d.ts.map +1 -0
- package/dist/src/components/text/index.js +11 -0
- package/dist/src/components/text/index.js.map +1 -0
- package/dist/src/components/text/text_base.d.ts +13 -0
- package/dist/src/components/text/text_base.d.ts.map +1 -0
- package/dist/src/components/text/text_base.jsx +23 -0
- package/dist/src/components/text/text_base.jsx.map +1 -0
- package/dist/src/components/text/text_content.d.ts +11 -0
- package/dist/src/components/text/text_content.d.ts.map +1 -0
- package/dist/src/components/text/text_content.jsx +68 -0
- package/dist/src/components/text/text_content.jsx.map +1 -0
- package/dist/src/components/text/text_marketing.d.ts +11 -0
- package/dist/src/components/text/text_marketing.d.ts.map +1 -0
- package/dist/src/components/text/text_marketing.jsx +116 -0
- package/dist/src/components/text/text_marketing.jsx.map +1 -0
- package/dist/src/components/text/text_shared.d.ts +14 -0
- package/dist/src/components/text/text_shared.d.ts.map +1 -0
- package/dist/src/components/text/text_shared.jsx +55 -0
- package/dist/src/components/text/text_shared.jsx.map +1 -0
- package/dist/src/components/tile/horizontal_tile.d.ts +9 -0
- package/dist/src/components/tile/horizontal_tile.d.ts.map +1 -0
- package/dist/src/components/tile/horizontal_tile.jsx +43 -0
- package/dist/src/components/tile/horizontal_tile.jsx.map +1 -0
- package/dist/src/components/tile/index.d.ts +3 -0
- package/dist/src/components/tile/index.d.ts.map +1 -0
- package/dist/src/components/tile/index.js +3 -0
- package/dist/src/components/tile/index.js.map +1 -0
- package/dist/src/components/tile/shared.d.ts +17 -0
- package/dist/src/components/tile/shared.d.ts.map +1 -0
- package/dist/src/components/tile/shared.js +12 -0
- package/dist/src/components/tile/shared.js.map +1 -0
- package/dist/src/components/tile/vertical_tile.d.ts +10 -0
- package/dist/src/components/tile/vertical_tile.d.ts.map +1 -0
- package/dist/src/components/tile/vertical_tile.jsx +32 -0
- package/dist/src/components/tile/vertical_tile.jsx.map +1 -0
- package/dist/src/components/to_consolidate/card.d.ts +27 -0
- package/dist/src/components/to_consolidate/card.d.ts.map +1 -0
- package/dist/src/components/to_consolidate/card.jsx +93 -0
- package/dist/src/components/to_consolidate/card.jsx.map +1 -0
- package/dist/src/components/to_consolidate/index.d.ts +5 -0
- package/dist/src/components/to_consolidate/index.d.ts.map +1 -0
- package/dist/src/components/to_consolidate/index.js +5 -0
- package/dist/src/components/to_consolidate/index.js.map +1 -0
- package/dist/src/components/to_consolidate/markdown.d.ts +40 -0
- package/dist/src/components/to_consolidate/markdown.d.ts.map +1 -0
- package/dist/src/components/to_consolidate/markdown.jsx +454 -0
- package/dist/src/components/to_consolidate/markdown.jsx.map +1 -0
- package/dist/src/components/to_consolidate/pagination.d.ts +8 -0
- package/dist/src/components/to_consolidate/pagination.d.ts.map +1 -0
- package/dist/src/components/to_consolidate/pagination.jsx +88 -0
- package/dist/src/components/to_consolidate/pagination.jsx.map +1 -0
- package/dist/src/components/to_consolidate/tab_number_chip.d.ts +7 -0
- package/dist/src/components/to_consolidate/tab_number_chip.d.ts.map +1 -0
- package/dist/src/components/to_consolidate/tab_number_chip.jsx +22 -0
- package/dist/src/components/to_consolidate/tab_number_chip.jsx.map +1 -0
- package/dist/src/design_system/colors_theme.d.ts +213 -0
- package/dist/src/design_system/colors_theme.d.ts.map +1 -0
- package/dist/src/design_system/colors_theme.js +213 -0
- package/dist/src/design_system/colors_theme.js.map +1 -0
- package/dist/src/design_system/properties_theme.d.ts +175 -0
- package/dist/src/design_system/properties_theme.d.ts.map +1 -0
- package/dist/src/design_system/properties_theme.js +315 -0
- package/dist/src/design_system/properties_theme.js.map +1 -0
- package/dist/src/design_system/theme.d.ts +630 -0
- package/dist/src/design_system/theme.d.ts.map +1 -0
- package/dist/src/design_system/theme.js +17 -0
- package/dist/src/design_system/theme.js.map +1 -0
- package/dist/src/design_system/tokens/index.d.ts +6 -0
- package/dist/src/design_system/tokens/index.d.ts.map +1 -0
- package/dist/src/design_system/tokens/index.js +6 -0
- package/dist/src/design_system/tokens/index.js.map +1 -0
- package/dist/src/design_system/tokens/layouts.d.ts +29 -0
- package/dist/src/design_system/tokens/layouts.d.ts.map +1 -0
- package/dist/src/design_system/tokens/layouts.js +29 -0
- package/dist/src/design_system/tokens/layouts.js.map +1 -0
- package/dist/src/design_system/tokens/radiuses.d.ts +23 -0
- package/dist/src/design_system/tokens/radiuses.d.ts.map +1 -0
- package/dist/src/design_system/tokens/radiuses.js +23 -0
- package/dist/src/design_system/tokens/radiuses.js.map +1 -0
- package/dist/src/design_system/tokens/shadows.d.ts +23 -0
- package/dist/src/design_system/tokens/shadows.d.ts.map +1 -0
- package/dist/src/design_system/tokens/shadows.js +23 -0
- package/dist/src/design_system/tokens/shadows.js.map +1 -0
- package/dist/src/design_system/tokens/spaces.d.ts +15 -0
- package/dist/src/design_system/tokens/spaces.d.ts.map +1 -0
- package/dist/src/design_system/tokens/spaces.js +14 -0
- package/dist/src/design_system/tokens/spaces.js.map +1 -0
- package/dist/src/design_system/tokens/transitions.d.ts +20 -0
- package/dist/src/design_system/tokens/transitions.d.ts.map +1 -0
- package/dist/src/design_system/tokens/transitions.js +20 -0
- package/dist/src/design_system/tokens/transitions.js.map +1 -0
- package/dist/src/design_system/typography_theme.d.ts +189 -0
- package/dist/src/design_system/typography_theme.d.ts.map +1 -0
- package/dist/src/design_system/typography_theme.js +190 -0
- package/dist/src/design_system/typography_theme.js.map +1 -0
- package/dist/src/index.d.ts +7 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +7 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/type_utils.d.ts +6 -0
- package/dist/src/type_utils.d.ts.map +1 -0
- package/dist/src/type_utils.js +2 -0
- package/dist/src/type_utils.js.map +1 -0
- package/dist/src/ui_dependency_provider.d.ts +29 -0
- package/dist/src/ui_dependency_provider.d.ts.map +1 -0
- package/dist/src/ui_dependency_provider.jsx +14 -0
- package/dist/src/ui_dependency_provider.jsx.map +1 -0
- package/dist/src/utils/copy_to_clipboard.d.ts +7 -0
- package/dist/src/utils/copy_to_clipboard.d.ts.map +1 -0
- package/dist/src/utils/copy_to_clipboard.js +16 -0
- package/dist/src/utils/copy_to_clipboard.js.map +1 -0
- package/dist/src/utils/image_color.d.ts +7 -0
- package/dist/src/utils/image_color.d.ts.map +1 -0
- package/dist/src/utils/image_color.js +35 -0
- package/dist/src/utils/image_color.js.map +1 -0
- package/dist/src/utils/index.d.ts +4 -0
- package/dist/src/utils/index.d.ts.map +1 -0
- package/dist/src/utils/index.js +4 -0
- package/dist/src/utils/index.js.map +1 -0
- package/dist/src/utils/sanitization.d.ts +11 -0
- package/dist/src/utils/sanitization.d.ts.map +1 -0
- package/dist/src/utils/sanitization.js +16 -0
- package/dist/src/utils/sanitization.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +71 -0
- package/src/codemods/generate_color_property_tokens.mjs +97 -0
- package/src/codemods/generate_color_theme_files.mjs +46 -0
- package/src/codemods/generate_typograpy_tokens_files.mjs +136 -0
- package/src/components/action_link.tsx +59 -0
- package/src/components/actor_template_card.tsx +99 -0
- package/src/components/badge.tsx +144 -0
- package/src/components/banner.tsx +95 -0
- package/src/components/blog_article.tsx +85 -0
- package/src/components/box.tsx +127 -0
- package/src/components/button.tsx +303 -0
- package/src/components/chip.tsx +121 -0
- package/src/components/code/action_button.tsx +96 -0
- package/src/components/code/code_block/code_block.styled.tsx +228 -0
- package/src/components/code/code_block/code_block.tsx +235 -0
- package/src/components/code/code_block/utils.ts +19 -0
- package/src/components/code/index.ts +3 -0
- package/src/components/code/inline_code/inline_code.tsx +44 -0
- package/src/components/code/one_line_code/one_line_code.tsx +232 -0
- package/src/components/code/syntax_highlighter.tsx +125 -0
- package/src/components/color_wheel_gradient.tsx +31 -0
- package/src/components/floating/index.ts +3 -0
- package/src/components/floating/menu.tsx +191 -0
- package/src/components/floating/menu_common.tsx +31 -0
- package/src/components/floating/menu_components.tsx +94 -0
- package/src/components/image.tsx +23 -0
- package/src/components/index.ts +20 -0
- package/src/components/link.tsx +114 -0
- package/src/components/message.tsx +157 -0
- package/src/components/readme_renderer/index.ts +3 -0
- package/src/components/readme_renderer/pythonize_value.ts +78 -0
- package/src/components/readme_renderer/table_of_contents.tsx +257 -0
- package/src/components/readme_renderer/utils.tsx +46 -0
- package/src/components/simple_markdown/index.tsx +2 -0
- package/src/components/simple_markdown/simple_markdown.tsx +181 -0
- package/src/components/simple_markdown/simple_markdown_components.tsx +295 -0
- package/src/components/tag.tsx +185 -0
- package/src/components/text/heading_content.tsx +56 -0
- package/src/components/text/heading_marketing.tsx +55 -0
- package/src/components/text/heading_shared.tsx +57 -0
- package/src/components/text/index.ts +18 -0
- package/src/components/text/text_base.tsx +52 -0
- package/src/components/text/text_content.tsx +104 -0
- package/src/components/text/text_marketing.tsx +152 -0
- package/src/components/text/text_shared.tsx +96 -0
- package/src/components/tile/horizontal_tile.tsx +76 -0
- package/src/components/tile/index.ts +2 -0
- package/src/components/tile/shared.ts +27 -0
- package/src/components/tile/vertical_tile.tsx +58 -0
- package/src/components/to_consolidate/card.tsx +141 -0
- package/src/components/to_consolidate/index.ts +4 -0
- package/src/components/to_consolidate/markdown.tsx +593 -0
- package/src/components/to_consolidate/pagination.tsx +139 -0
- package/src/components/to_consolidate/tab_number_chip.tsx +31 -0
- package/src/design_system/colors_theme.ts +213 -0
- package/src/design_system/generate_color_definitions.js +43 -0
- package/src/design_system/properties_theme.ts +453 -0
- package/src/design_system/supernova_color_tokens.json +1766 -0
- package/src/design_system/supernova_typography_tokens.json +657 -0
- package/src/design_system/theme.ts +26 -0
- package/src/design_system/tokens/index.ts +5 -0
- package/src/design_system/tokens/layouts.ts +29 -0
- package/src/design_system/tokens/radiuses.ts +22 -0
- package/src/design_system/tokens/shadows.ts +22 -0
- package/src/design_system/tokens/spaces.ts +15 -0
- package/src/design_system/tokens/transitions.ts +19 -0
- package/src/design_system/typography_theme.ts +197 -0
- package/src/index.ts +7 -0
- package/src/type_utils.ts +7 -0
- package/src/ui_dependency_provider.tsx +50 -0
- package/src/utils/copy_to_clipboard.ts +24 -0
- package/src/utils/image_color.ts +44 -0
- package/src/utils/index.ts +3 -0
- package/src/utils/sanitization.ts +14 -0
- package/tsconfig.build.json +18 -0
- 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
|
+
});
|