sy-ui-lib 1.0.0
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/README.md +89 -0
- package/dist/components/AdminBetSlip/AdminBetSlip.component.d.ts +32 -0
- package/dist/components/AdminBetSlip/AdminBetSlip.stories.d.ts +8 -0
- package/dist/components/AdminBetSlip/AdminBetSlip.types.d.ts +50 -0
- package/dist/components/AdminBetSlip/index.d.ts +3 -0
- package/dist/components/Avatar/Avatar.component.d.ts +18 -0
- package/dist/components/Avatar/Avatar.stories.d.ts +6 -0
- package/dist/components/Avatar/Avatar.types.d.ts +13 -0
- package/dist/components/Avatar/index.d.ts +3 -0
- package/dist/components/BannerCard/BannerCard.component.d.ts +3 -0
- package/dist/components/BannerCard/BannerCard.stories.d.ts +6 -0
- package/dist/components/BannerCard/BannerCard.types.d.ts +12 -0
- package/dist/components/BannerCard/index.d.ts +3 -0
- package/dist/components/BetSlip/BetSlip.component.d.ts +88 -0
- package/dist/components/BetSlip/BetSlip.stories.d.ts +13 -0
- package/dist/components/BetSlip/BetSlip.types.d.ts +51 -0
- package/dist/components/BetSlip/index.d.ts +3 -0
- package/dist/components/BetSlipModal/BetSlipModal.component.d.ts +24 -0
- package/dist/components/BetSlipModal/BetSlipModal.stories.d.ts +11 -0
- package/dist/components/BetSlipModal/BetSlipModal.types.d.ts +8 -0
- package/dist/components/BetSlipModal/index.d.ts +3 -0
- package/dist/components/Button/Button.component.d.ts +33 -0
- package/dist/components/Button/Button.stories.d.ts +18 -0
- package/dist/components/Button/Button.types.d.ts +29 -0
- package/dist/components/Button/index.d.ts +3 -0
- package/dist/components/Checkbox/Checkbox.component.d.ts +27 -0
- package/dist/components/Checkbox/Checkbox.stories.d.ts +12 -0
- package/dist/components/Checkbox/Checkbox.types.d.ts +16 -0
- package/dist/components/Checkbox/index.d.ts +3 -0
- package/dist/components/Chip/Chip.component.d.ts +21 -0
- package/dist/components/Chip/Chip.stories.d.ts +51 -0
- package/dist/components/Chip/Chip.types.d.ts +22 -0
- package/dist/components/Chip/index.d.ts +3 -0
- package/dist/components/Colors/Colors.component.d.ts +2 -0
- package/dist/components/Colors/Colors.stories.d.ts +6 -0
- package/dist/components/CommonMarketHeader/CommonMarketHeader.component.d.ts +3 -0
- package/dist/components/CommonMarketHeader/CommonMarketHeader.stories.d.ts +17 -0
- package/dist/components/CommonMarketHeader/CommonMarketHeader.types.d.ts +35 -0
- package/dist/components/CommonMarketHeader/index.d.ts +3 -0
- package/dist/components/CommonMarketRow/CommonMarketRow.component.d.ts +4 -0
- package/dist/components/CommonMarketRow/CommonMarketRow.stories.d.ts +9 -0
- package/dist/components/CommonMarketRow/CommonMarketRow.types.d.ts +151 -0
- package/dist/components/CommonMarketRow/CommonOddButton.component.d.ts +132 -0
- package/dist/components/CommonMarketRow/FancyOddsRow.component.d.ts +3 -0
- package/dist/components/CommonMarketRow/LayeredOddsRow.component.d.ts +3 -0
- package/dist/components/CommonMarketRow/PairOddsRow.component.d.ts +3 -0
- package/dist/components/CommonMarketRow/index.d.ts +3 -0
- package/dist/components/DatePicker/DatePicker.component.d.ts +28 -0
- package/dist/components/DatePicker/DatePicker.stories.d.ts +10 -0
- package/dist/components/DatePicker/DatePicker.types.d.ts +33 -0
- package/dist/components/DatePicker/index.d.ts +3 -0
- package/dist/components/Dropdown/Dropdown.component.d.ts +38 -0
- package/dist/components/Dropdown/Dropdown.stories.d.ts +10 -0
- package/dist/components/Dropdown/Dropdown.types.d.ts +26 -0
- package/dist/components/Dropdown/index.d.ts +3 -0
- package/dist/components/EventCard/EventCard.component.d.ts +48 -0
- package/dist/components/EventCard/EventCard.stories.d.ts +6 -0
- package/dist/components/EventCard/EventCard.types.d.ts +44 -0
- package/dist/components/EventCard/index.d.ts +3 -0
- package/dist/components/EventDisplayCard/EventDisplayCard.component.d.ts +24 -0
- package/dist/components/EventDisplayCard/EventDisplayCard.stories.d.ts +8 -0
- package/dist/components/EventDisplayCard/EventDisplayCard.types.d.ts +10 -0
- package/dist/components/EventDisplayCard/index.d.ts +3 -0
- package/dist/components/EventInfoCard/EventInfoCard.component.d.ts +38 -0
- package/dist/components/EventInfoCard/EventInfoCard.stories.d.ts +6 -0
- package/dist/components/EventInfoCard/EventInfoCard.types.d.ts +19 -0
- package/dist/components/EventInfoCard/index.d.ts +3 -0
- package/dist/components/FileUploader/FileUploader.component.d.ts +55 -0
- package/dist/components/FileUploader/FileUploader.stories.d.ts +8 -0
- package/dist/components/FileUploader/FileUploader.types.d.ts +23 -0
- package/dist/components/FileUploader/index.d.ts +3 -0
- package/dist/components/FlashNotification/FlashNotification.component.d.ts +34 -0
- package/dist/components/FlashNotification/FlashNotification.stories.d.ts +9 -0
- package/dist/components/FlashNotification/FlashNotification.types.d.ts +13 -0
- package/dist/components/FlashNotification/index.d.ts +3 -0
- package/dist/components/Icon/Icon.component.d.ts +20 -0
- package/dist/components/Icon/Icon.types.d.ts +43 -0
- package/dist/components/Icon/SvgIcons.d.ts +80 -0
- package/dist/components/Icon/index.d.ts +3 -0
- package/dist/components/ImageCard/ImageCard.component.d.ts +22 -0
- package/dist/components/ImageCard/ImageCard.stories.d.ts +9 -0
- package/dist/components/ImageCard/ImageCard.types.d.ts +8 -0
- package/dist/components/ImageCard/index.d.ts +3 -0
- package/dist/components/InputField/InputField.component.d.ts +28 -0
- package/dist/components/InputField/InputField.stories.d.ts +10 -0
- package/dist/components/InputField/InputField.types.d.ts +33 -0
- package/dist/components/InputField/index.d.ts +3 -0
- package/dist/components/Loader/Loader.component.d.ts +18 -0
- package/dist/components/Loader/Loader.stories.d.ts +14 -0
- package/dist/components/Loader/Loader.types.d.ts +8 -0
- package/dist/components/Loader/index.d.ts +3 -0
- package/dist/components/MaintenancePage/MaintenancePage.component.d.ts +37 -0
- package/dist/components/MaintenancePage/MaintenancePage.stories.d.ts +10 -0
- package/dist/components/MaintenancePage/MaintenancePage.types.d.ts +14 -0
- package/dist/components/MaintenancePage/index.d.ts +3 -0
- package/dist/components/Menu/Menu.component.d.ts +21 -0
- package/dist/components/Menu/Menu.stories.d.ts +7 -0
- package/dist/components/Menu/Menu.types.d.ts +24 -0
- package/dist/components/Menu/index.d.ts +3 -0
- package/dist/components/Modal/Modal.component.d.ts +39 -0
- package/dist/components/Modal/Modal.stories.d.ts +11 -0
- package/dist/components/Modal/Modal.types.d.ts +20 -0
- package/dist/components/Modal/index.d.ts +3 -0
- package/dist/components/MultiSelectDropdown/MultiSelectDropdown.component.d.ts +22 -0
- package/dist/components/MultiSelectDropdown/MultiSelectDropdown.stories.d.ts +10 -0
- package/dist/components/MultiSelectDropdown/MultiSelectDropdown.types.d.ts +22 -0
- package/dist/components/MultiSelectDropdown/index.d.ts +3 -0
- package/dist/components/NotFoundPage/NotFoundPage.component.d.ts +48 -0
- package/dist/components/NotFoundPage/NotFoundPage.stories.d.ts +11 -0
- package/dist/components/NotFoundPage/NotFoundPage.types.d.ts +13 -0
- package/dist/components/NotFoundPage/index.d.ts +3 -0
- package/dist/components/NotificationBanner/NotificationBanner.component.d.ts +39 -0
- package/dist/components/NotificationBanner/NotificationBanner.stories.d.ts +6 -0
- package/dist/components/NotificationBanner/NotificationBanner.types.d.ts +44 -0
- package/dist/components/NotificationBanner/index.d.ts +3 -0
- package/dist/components/NullState/NullState.component.d.ts +25 -0
- package/dist/components/NullState/NullState.stories.d.ts +14 -0
- package/dist/components/NullState/NullState.types.d.ts +22 -0
- package/dist/components/NullState/index.d.ts +3 -0
- package/dist/components/Pagination/Pagination.component.d.ts +23 -0
- package/dist/components/Pagination/Pagination.stories.d.ts +7 -0
- package/dist/components/Pagination/Pagination.types.d.ts +14 -0
- package/dist/components/Pagination/index.d.ts +3 -0
- package/dist/components/PasswordFieldGroup/PasswordFieldGroup.component.d.ts +28 -0
- package/dist/components/PasswordFieldGroup/PasswordFieldGroup.stories.d.ts +8 -0
- package/dist/components/PasswordFieldGroup/PasswordFieldGroup.types.d.ts +21 -0
- package/dist/components/PasswordFieldGroup/index.d.ts +3 -0
- package/dist/components/PhoneNumberInput/PhoneNumberInput.component.d.ts +38 -0
- package/dist/components/PhoneNumberInput/PhoneNumberInput.stories.d.ts +8 -0
- package/dist/components/PhoneNumberInput/PhoneNumberInput.types.d.ts +6 -0
- package/dist/components/PhoneNumberInput/index.d.ts +3 -0
- package/dist/components/ProgressBar/ProgressBar.component.d.ts +22 -0
- package/dist/components/ProgressBar/ProgressBar.stories.d.ts +9 -0
- package/dist/components/ProgressBar/ProgressBar.types.d.ts +12 -0
- package/dist/components/ProgressBar/index.d.ts +3 -0
- package/dist/components/RadioButton/RadioButton.component.d.ts +15 -0
- package/dist/components/RadioButton/RadioButton.stories.d.ts +8 -0
- package/dist/components/RadioButton/RadioButton.types.d.ts +31 -0
- package/dist/components/RadioButton/index.d.ts +3 -0
- package/dist/components/SearchBar/SearchBar.component.d.ts +18 -0
- package/dist/components/SearchBar/SearchBar.stories.d.ts +8 -0
- package/dist/components/SearchBar/SearchBar.types.d.ts +11 -0
- package/dist/components/SearchBar/index.d.ts +3 -0
- package/dist/components/Skeleton/Skeleton.component.d.ts +29 -0
- package/dist/components/Skeleton/Skeleton.stories.d.ts +6 -0
- package/dist/components/Skeleton/Skeleton.types.d.ts +26 -0
- package/dist/components/Skeleton/index.d.ts +3 -0
- package/dist/components/SnackBar/SnackBar.component.d.ts +47 -0
- package/dist/components/SnackBar/SnackBar.stories.d.ts +8 -0
- package/dist/components/SnackBar/SnackBar.types.d.ts +41 -0
- package/dist/components/SnackBar/SnackBarQueue.d.ts +9 -0
- package/dist/components/SnackBar/SnackbarFetcher.d.ts +34 -0
- package/dist/components/SnackBar/SnackbarProvider.d.ts +25 -0
- package/dist/components/SnackBar/index.d.ts +4 -0
- package/dist/components/StatsList/StatsList.component.d.ts +34 -0
- package/dist/components/StatsList/StatsList.stories.d.ts +11 -0
- package/dist/components/StatsList/StatsList.types.d.ts +39 -0
- package/dist/components/StatsList/index.d.ts +3 -0
- package/dist/components/StatusDisplayCard/StatusDisplayCard.component.d.ts +20 -0
- package/dist/components/StatusDisplayCard/StatusDisplayCard.stories.d.ts +30 -0
- package/dist/components/StatusDisplayCard/StatusDisplayCard.types.d.ts +17 -0
- package/dist/components/StatusDisplayCard/index.d.ts +3 -0
- package/dist/components/Svgs/LoaderSvg.d.ts +2 -0
- package/dist/components/Svgs/NotFoundSvg.d.ts +2 -0
- package/dist/components/Svgs/NullStateAdminSvg.d.ts +2 -0
- package/dist/components/Svgs/NullStateUserSvg.d.ts +2 -0
- package/dist/components/Svgs/UnderMaintenanceSvg.d.ts +2 -0
- package/dist/components/Svgs/index.d.ts +6 -0
- package/dist/components/Swiper/Swiper.component.d.ts +37 -0
- package/dist/components/Swiper/Swiper.stories.d.ts +32 -0
- package/dist/components/Swiper/Swiper.types.d.ts +46 -0
- package/dist/components/Swiper/index.d.ts +3 -0
- package/dist/components/TabList/TabList.component.d.ts +37 -0
- package/dist/components/TabList/TabList.stories.d.ts +16 -0
- package/dist/components/TabList/TabList.types.d.ts +27 -0
- package/dist/components/TabList/index.d.ts +3 -0
- package/dist/components/Table/Table.component.d.ts +47 -0
- package/dist/components/Table/Table.stories.d.ts +25 -0
- package/dist/components/Table/Table.types.d.ts +28 -0
- package/dist/components/Table/index.d.ts +3 -0
- package/dist/components/TimePicker/TimePicker.component.d.ts +22 -0
- package/dist/components/TimePicker/TimePicker.stories.d.ts +8 -0
- package/dist/components/TimePicker/TimePicker.types.d.ts +22 -0
- package/dist/components/TimePicker/index.d.ts +3 -0
- package/dist/components/TitleBar/TitleBar.component.d.ts +22 -0
- package/dist/components/TitleBar/TitleBar.stories.d.ts +8 -0
- package/dist/components/TitleBar/TitleBar.types.d.ts +10 -0
- package/dist/components/TitleBar/index.d.ts +3 -0
- package/dist/components/Toggle/Toggle.component.d.ts +22 -0
- package/dist/components/Toggle/Toggle.stories.d.ts +8 -0
- package/dist/components/Toggle/Toggle.types.d.ts +8 -0
- package/dist/components/Toggle/index.d.ts +3 -0
- package/dist/components/Tooltip/Tooltip.component.d.ts +19 -0
- package/dist/components/Tooltip/Tooltip.stories.d.ts +10 -0
- package/dist/components/Tooltip/Tooltip.types.d.ts +11 -0
- package/dist/components/Tooltip/index.d.ts +3 -0
- package/dist/components/TooltipExt/TooltipExt.component.d.ts +23 -0
- package/dist/components/TooltipExt/TooltipExt.stories.d.ts +19 -0
- package/dist/components/TooltipExt/TooltipExt.types.d.ts +11 -0
- package/dist/components/TooltipExt/index.d.ts +3 -0
- package/dist/components/Typography/Typography.component.d.ts +24 -0
- package/dist/components/Typography/Typography.stories.d.ts +8 -0
- package/dist/components/Typography/Typography.types.d.ts +54 -0
- package/dist/components/Typography/index.d.ts +3 -0
- package/dist/components/UserBetSlip/UserBetSlip.component.d.ts +45 -0
- package/dist/components/UserBetSlip/UserBetSlip.stories.d.ts +9 -0
- package/dist/components/UserBetSlip/UserBetSlip.types.d.ts +56 -0
- package/dist/components/UserBetSlip/index.d.ts +3 -0
- package/dist/components/WalletInfo/WalletInfo.component.d.ts +59 -0
- package/dist/components/WalletInfo/WalletInfo.stories.d.ts +7 -0
- package/dist/components/WalletInfo/WalletInfo.types.d.ts +25 -0
- package/dist/components/WalletInfo/index.d.ts +3 -0
- package/dist/components/ZIndex/ZIndex.component.d.ts +2 -0
- package/dist/components/ZIndex/ZIndex.stories.d.ts +5 -0
- package/dist/components/ZIndex/index.d.ts +2 -0
- package/dist/components/index.d.ts +50 -0
- package/dist/fonts/roboto-v48-latin-100.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-200.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-300.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-500.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-600.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-700.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-800.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-900.woff2 +0 -0
- package/dist/fonts/roboto-v48-latin-regular.woff2 +0 -0
- package/dist/images/404_Error_image.png +0 -0
- package/dist/images/female_avatar.png +0 -0
- package/dist/images/image_card.png +0 -0
- package/dist/images/loader.png +0 -0
- package/dist/images/male_avatar.png +0 -0
- package/dist/images/null_state_admin.png +0 -0
- package/dist/images/null_state_user.png +0 -0
- package/dist/images/under_maintenance.png +0 -0
- package/dist/index.cjs +59 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +15014 -0
- package/dist/utils/commonFunctionality/commonFunctionality.d.ts +13 -0
- package/dist/utils/commonFunctionality/commonFunctionality.types.d.ts +3 -0
- package/dist/utils/commonFunctionality/index.d.ts +2 -0
- package/dist/utils/constants.d.ts +44 -0
- package/dist/utils/countryCodes.d.ts +6 -0
- package/dist/utils/paginationUtils.d.ts +10 -0
- package/dist/utils/useScreenSize.d.ts +3 -0
- package/dist/vite-env.d.ts +1 -0
- package/package.json +61 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { TooltipPropsExt } from './TooltipExt.types';
|
|
2
|
+
/**
|
|
3
|
+
* TooltipExt Component
|
|
4
|
+
*
|
|
5
|
+
* Displays a tooltip message when users hover over a target element.
|
|
6
|
+
* The tooltip dynamically adjusts its position based on available viewport space
|
|
7
|
+
* and flips direction when necessary.
|
|
8
|
+
*
|
|
9
|
+
* The tooltip also updates its position on window resize and scroll
|
|
10
|
+
* to ensure that it remains visible within the viewport.
|
|
11
|
+
*
|
|
12
|
+
* Props:
|
|
13
|
+
* @param {React.ReactNode | string | number} title - Content displayed inside the tooltip. Supports text, numbers, or custom JSX content.
|
|
14
|
+
* @param {React.ReactNode} children - The element that triggers the tooltip on hover.
|
|
15
|
+
* @param {"top" | "bottom" | "left" | "right"} [position="top"] - Preferred position of the tooltip relative to the target element. The component may automatically flip the position if there is insufficient space.
|
|
16
|
+
*
|
|
17
|
+
* Example usage:
|
|
18
|
+
* <TooltipExt title="Click to submit" position="top">
|
|
19
|
+
* <button>Submit</button>
|
|
20
|
+
* </TooltipExt>
|
|
21
|
+
*/
|
|
22
|
+
declare const TooltipExt: React.FC<TooltipPropsExt>;
|
|
23
|
+
export default TooltipExt;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import { default as TooltipExt } from './TooltipExt.component';
|
|
3
|
+
/**
|
|
4
|
+
* Storybook metadata for the TooltipExt component.
|
|
5
|
+
* This configuration defines how the TooltipExt component appears in the Storybook UI.
|
|
6
|
+
*/
|
|
7
|
+
declare const meta: Meta<typeof TooltipExt>;
|
|
8
|
+
export default meta;
|
|
9
|
+
type Story = StoryObj<typeof TooltipExt>;
|
|
10
|
+
/** Default story demonstrating a basic tooltip with simple text content. */
|
|
11
|
+
export declare const Basic: Story;
|
|
12
|
+
/** Story showing a tooltip with custom JSX content. */
|
|
13
|
+
export declare const CustomContent: Story;
|
|
14
|
+
/** Story demonstrating tooltip behavior with long text content. */
|
|
15
|
+
export declare const LongText: Story;
|
|
16
|
+
/** Story to test tooltip flipping when placed near the screen edge. */
|
|
17
|
+
export declare const EdgeFlip: Story;
|
|
18
|
+
/** Story demonstrating tooltip behavior inside a scrollable container. */
|
|
19
|
+
export declare const ScrollContainer: Story;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/** Defines the allowed positions for the TooltipExt component relative to the target element. */
|
|
2
|
+
export type TooltipPositionExt = "top" | "bottom" | "left" | "right";
|
|
3
|
+
/** Props for the TooltipExt component. */
|
|
4
|
+
export interface TooltipPropsExt {
|
|
5
|
+
/** Content displayed inside the tooltip. */
|
|
6
|
+
title?: string | number | React.ReactNode;
|
|
7
|
+
/** Element that triggers the tooltip on hover. */
|
|
8
|
+
children: React.ReactNode;
|
|
9
|
+
/** Position of the tooltip relative to the target element. Defaults to "top". */
|
|
10
|
+
position?: TooltipPositionExt;
|
|
11
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { TypographyProps } from './Typography.types.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Typography Component
|
|
4
|
+
*
|
|
5
|
+
* A flexible and reusable text component that supports multiple
|
|
6
|
+
* variants, colors, underline, and optional HTML tag customization.
|
|
7
|
+
*
|
|
8
|
+
* Additional features:
|
|
9
|
+
* - letter-based ellipsis support
|
|
10
|
+
*
|
|
11
|
+
* @param ellipsis - Enable letter-based ellipsis
|
|
12
|
+
* @param ellipsisCount - Number of letter to show before ellipsis
|
|
13
|
+
* @param variant - Typography variant to control the visual style of the text.
|
|
14
|
+
* @param text - The content to render inside the Typography component.
|
|
15
|
+
* @param color - Optional color to apply to the text.
|
|
16
|
+
* @param underline - Optional prop to apply underline. If true, applies underline in same color as text.
|
|
17
|
+
* @param component - Optional HTML tag to render as the root element.
|
|
18
|
+
* @returns A styled text element based on the given props.
|
|
19
|
+
*
|
|
20
|
+
* Example usage:
|
|
21
|
+
* <Typography variant='subtitle1' text='Demo text for example' color='primary underline />
|
|
22
|
+
*/
|
|
23
|
+
declare const Typography: React.FC<TypographyProps>;
|
|
24
|
+
export default Typography;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import { default as Typography } from './Typography.component';
|
|
3
|
+
declare const meta: Meta<typeof Typography>;
|
|
4
|
+
export default meta;
|
|
5
|
+
type Story = StoryObj<typeof Typography>;
|
|
6
|
+
export declare const Playground: Story;
|
|
7
|
+
export declare const EllipsisTypography: Story;
|
|
8
|
+
export declare const AllVariants: Story;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
/** Allowed typography variants */
|
|
3
|
+
export type TypoVariant = "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "subtitle1" | "subtitle2" | "body1" | "body2" | "button" | "caption" | "overline" | "inherit" | "captionBold" | "smallCaps" | "smallBold" | "smallMedium";
|
|
4
|
+
/** Allowed text color options for the Typography component */
|
|
5
|
+
export type TypoColor = "primary" | "secondary" | "error" | "success" | "black" | "smokyblack" | "slategray" | "brightgray" | "offWhite" | "white" | "neutralGray" | "babyBlue" | "watermelonRed" | "goldenYellow" | "techBlue";
|
|
6
|
+
/** Maps each color option to its corresponding Tailwind css text color class */
|
|
7
|
+
export declare const colorClasses: Record<TypoColor, string>;
|
|
8
|
+
/** Maps each variant to its corresponding Tailwind font style */
|
|
9
|
+
export declare const variantClasses: Record<TypoVariant, string>;
|
|
10
|
+
/** Maps each variant to a default HTML tag */
|
|
11
|
+
export declare const variantToTagMap: Record<TypoVariant, keyof React.JSX.IntrinsicElements>;
|
|
12
|
+
export interface TypographyProps {
|
|
13
|
+
/**
|
|
14
|
+
* Typography variant to control the visual style of the text.
|
|
15
|
+
* Typically affects size, weight, and other styling aspects.
|
|
16
|
+
*/
|
|
17
|
+
variant: TypoVariant;
|
|
18
|
+
/**
|
|
19
|
+
* The content to render inside the Typography component.
|
|
20
|
+
* Can be a string, number, or any valid React node.
|
|
21
|
+
*/
|
|
22
|
+
text: React.ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Optional color to apply to the text.
|
|
25
|
+
* Should match one of the predefined color tokens.
|
|
26
|
+
* @default Black
|
|
27
|
+
*/
|
|
28
|
+
color?: TypoColor;
|
|
29
|
+
/**
|
|
30
|
+
* Optional HTML tag to render as the root element (e.g., 'p', 'span', 'h1').
|
|
31
|
+
* Useful for semantic or structural control.
|
|
32
|
+
*/
|
|
33
|
+
component?: keyof React.JSX.IntrinsicElements;
|
|
34
|
+
/** Optional prop to apply underline with the same color as the text.*/
|
|
35
|
+
underline?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Enables text truncation with ellipsis (`...`).
|
|
38
|
+
* When true, text will be shortened based on `ellipsisCount`.
|
|
39
|
+
*/
|
|
40
|
+
ellipsis?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Maximum number of characters (letters) to display
|
|
43
|
+
* before appending ellipsis (`...`).
|
|
44
|
+
*
|
|
45
|
+
* Works only when `ellipsis` is set to true.
|
|
46
|
+
*/
|
|
47
|
+
ellipsisCount?: number;
|
|
48
|
+
/**
|
|
49
|
+
* When enabled, the text color changes based on the value:
|
|
50
|
+
* - Negative values are displayed in red
|
|
51
|
+
* - Positive values are displayed in green
|
|
52
|
+
*/
|
|
53
|
+
isNumberTypography?: boolean;
|
|
54
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { UserBetSlipProps } from './UserBetSlip.types';
|
|
2
|
+
/**
|
|
3
|
+
* UserBetSlip component renders a list of user bet slips with support for
|
|
4
|
+
* toggling between a compact view and a detailed view using a checkbox.
|
|
5
|
+
*
|
|
6
|
+
* - Compact view (default): Shows bet type, subtitle, result, and odds.
|
|
7
|
+
* - Detailed view (when checkbox is enabled): Expands each bet slip to show reference, date & time, and a breakdown of odds.
|
|
8
|
+
* - On mobile screens: This component is typically rendered inside a `Modal` for better UX on limited screen space.
|
|
9
|
+
* - Supports i18n/localization via `titles` prop (all labels in one place).
|
|
10
|
+
*
|
|
11
|
+
* @param {UserBetSlipProps} props - Contains bet slip data and UI labels.
|
|
12
|
+
* @returns {JSX.Element} Structured layout of bet slips.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* const bets = [
|
|
16
|
+
* {
|
|
17
|
+
* id: "1",
|
|
18
|
+
* type: "Back",
|
|
19
|
+
* subTitle: "Tseng, Chun Hsin",
|
|
20
|
+
* result: "Winner",
|
|
21
|
+
* reference: "386560789",
|
|
22
|
+
* time: "02-07-2025 11:33",
|
|
23
|
+
* oddsDetails: [
|
|
24
|
+
* { title: "Odds", value: 13.5 },
|
|
25
|
+
* { title: "Stake", value: 10.001 },
|
|
26
|
+
* { title: "P&L", value: 125.0 },
|
|
27
|
+
* ],
|
|
28
|
+
* },
|
|
29
|
+
* ];
|
|
30
|
+
* @example
|
|
31
|
+
* <UserBetSlip
|
|
32
|
+
* titles={{
|
|
33
|
+
* slipTitle: "Open Bets",
|
|
34
|
+
* betFor: "Bet For",
|
|
35
|
+
* betAgainst: "Bet Against",
|
|
36
|
+
* betInfo: "Bet Info",
|
|
37
|
+
* reference: "Ref:",
|
|
38
|
+
* time: "Time:",
|
|
39
|
+
* nullMessage: "No bets available at the moment.",
|
|
40
|
+
* }}
|
|
41
|
+
* bets={bets}
|
|
42
|
+
* />
|
|
43
|
+
*/
|
|
44
|
+
declare const UserBetSlip: React.FC<UserBetSlipProps>;
|
|
45
|
+
export default UserBetSlip;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react-vite/*';
|
|
2
|
+
import { default as UserBetSlip } from './UserBetSlip.component';
|
|
3
|
+
declare const meta: Meta<typeof UserBetSlip>;
|
|
4
|
+
/** Type alias for the story object of AdminBetSlip */
|
|
5
|
+
type Story = StoryObj<typeof UserBetSlip>;
|
|
6
|
+
/** Default story configuration for AdminBetSlip */
|
|
7
|
+
export declare const Default: Story;
|
|
8
|
+
export declare const ForMobile: Story;
|
|
9
|
+
export default meta;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { BET_TYPE } from '../../utils/constants';
|
|
2
|
+
/** Types of bets */
|
|
3
|
+
export type UserBetType = (typeof BET_TYPE)[keyof typeof BET_TYPE];
|
|
4
|
+
/** Odds / Stake / Profit details */
|
|
5
|
+
export interface UserOddsDetails {
|
|
6
|
+
title: string;
|
|
7
|
+
value: string | number;
|
|
8
|
+
}
|
|
9
|
+
/** Single bet slip entry */
|
|
10
|
+
export interface UserBetSlipDetails {
|
|
11
|
+
id: string;
|
|
12
|
+
/** Bet type: Back / Lay */
|
|
13
|
+
type: UserBetType;
|
|
14
|
+
/** Player or team name */
|
|
15
|
+
subTitle: string;
|
|
16
|
+
/** Outcome (e.g., Winner, Loser) */
|
|
17
|
+
result: string;
|
|
18
|
+
/** Reference ID of bet */
|
|
19
|
+
reference: string;
|
|
20
|
+
/** Time of bet */
|
|
21
|
+
time: string;
|
|
22
|
+
/** Odds / Stake / P&L details */
|
|
23
|
+
oddsDetails: UserOddsDetails[];
|
|
24
|
+
}
|
|
25
|
+
/** UI labels for UserBetSlip */
|
|
26
|
+
export interface UserBetSlipTitles {
|
|
27
|
+
/** Section title (e.g., "Open Bets") */
|
|
28
|
+
slipTitle?: string;
|
|
29
|
+
/** Label for bet type: Back */
|
|
30
|
+
betFor: string;
|
|
31
|
+
/** Label for bet type: Lay */
|
|
32
|
+
betAgainst: string;
|
|
33
|
+
/** Label for Bet Info toggle */
|
|
34
|
+
betInfo: string;
|
|
35
|
+
/** Label for reference field */
|
|
36
|
+
reference: string;
|
|
37
|
+
/** Label for time field */
|
|
38
|
+
time: string;
|
|
39
|
+
/** Message shown when no bets are available */
|
|
40
|
+
nullMessage: string;
|
|
41
|
+
}
|
|
42
|
+
/** Props for UserBetSlip */
|
|
43
|
+
export interface UserBetSlipProps {
|
|
44
|
+
titles: UserBetSlipTitles;
|
|
45
|
+
bets: UserBetSlipDetails[];
|
|
46
|
+
}
|
|
47
|
+
/** Props for OddsDetails component */
|
|
48
|
+
export interface OddsDetailsProps {
|
|
49
|
+
odds: UserOddsDetails[];
|
|
50
|
+
showTitles?: boolean;
|
|
51
|
+
}
|
|
52
|
+
/** Props for BetInfo component */
|
|
53
|
+
export interface BetInfoProps {
|
|
54
|
+
label: string;
|
|
55
|
+
value: string;
|
|
56
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { WalletInfoProps } from './WalletInfo.types';
|
|
2
|
+
/**
|
|
3
|
+
* WalletInfo component displays a user's wallet summary including key balance data,
|
|
4
|
+
* quick action buttons (Deposit, Withdraw, etc.), and useful redirect links.
|
|
5
|
+
*
|
|
6
|
+
* - Shows key-value wallet data (e.g., Main Balance, Bonus Balance, etc.) with optional tooltip info.
|
|
7
|
+
* - Displays footer CTAs (Call To Actions) like Deposit / Withdraw for quick user actions.
|
|
8
|
+
* - Shows redirect links such as “Transaction History” or “Wallet Settings” at the bottom.
|
|
9
|
+
* - Automatically adjusts for mobile screens (e.g., hides tooltip icons on smaller viewports).
|
|
10
|
+
* - Integrates with design system components like `Typography`, `Button`, `Tooltip`, and `Icon`.
|
|
11
|
+
*
|
|
12
|
+
* @param walletData Array of wallet information objects.
|
|
13
|
+
* Each object includes a `key` (label), `value` (display amount), optional `color`, and `info` (tooltip config).
|
|
14
|
+
* @param footerCTA List of button configurations (text, variant, onClick handler)
|
|
15
|
+
* shown below the wallet data for primary actions like Deposit or Withdraw.
|
|
16
|
+
* @param redirectLinks List of redirect links displayed below the footer.
|
|
17
|
+
* Each link has a title and an optional `onClick` navigation handler.
|
|
18
|
+
*
|
|
19
|
+
* @returns {JSX.Element} A styled wallet summary card UI.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* const walletData = [
|
|
23
|
+
* {
|
|
24
|
+
* key: "Main Balance",
|
|
25
|
+
* value: "$1,200.00",
|
|
26
|
+
* color: "green",
|
|
27
|
+
* info: { title: "Your available wallet balance", position: "top" },
|
|
28
|
+
* },
|
|
29
|
+
* {
|
|
30
|
+
* key: "Bonus Balance",
|
|
31
|
+
* value: "$150.00",
|
|
32
|
+
* color: "yellow",
|
|
33
|
+
* info: { title: "Bonus funds usable for bets", position: "top" },
|
|
34
|
+
* },
|
|
35
|
+
* ];
|
|
36
|
+
*
|
|
37
|
+
* const footerCTA = [
|
|
38
|
+
* { text: "Deposit", variant: "primary", onClick: handleDeposit },
|
|
39
|
+
* { text: "Withdraw", variant: "secondary", onClick: handleWithdraw },
|
|
40
|
+
* ];
|
|
41
|
+
*
|
|
42
|
+
* const redirectLinks = [
|
|
43
|
+
* { title: "View Transactions", onClick: handleTransactions },
|
|
44
|
+
* { title: "Wallet Settings", onClick: handleSettings },
|
|
45
|
+
* ];
|
|
46
|
+
*
|
|
47
|
+
* <WalletInfo
|
|
48
|
+
* walletData={walletData}
|
|
49
|
+
* footerCTA={footerCTA}
|
|
50
|
+
* redirectLinks={redirectLinks}
|
|
51
|
+
* />
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* Responsive behavior (mobile):
|
|
55
|
+
* On mobile screens, the tooltip icons are hidden to reduce clutter.
|
|
56
|
+
* Button layout adapts using flex-wrap for better alignment.
|
|
57
|
+
*/
|
|
58
|
+
declare const WalletInfo: React.FC<WalletInfoProps>;
|
|
59
|
+
export default WalletInfo;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Meta, StoryObj } from '@storybook/react-vite';
|
|
2
|
+
import { WalletInfo } from '..';
|
|
3
|
+
import { WalletInfoProps } from './WalletInfo.types';
|
|
4
|
+
type Story = StoryObj<typeof WalletInfo>;
|
|
5
|
+
declare const meta: Meta<WalletInfoProps>;
|
|
6
|
+
export default meta;
|
|
7
|
+
export declare const Default: Story;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { ButtonProps, TypoColor, statTooltipProps } from '..';
|
|
2
|
+
export interface walletDataDetails {
|
|
3
|
+
/** Label for the wallet data item (e.g., "Balance") */
|
|
4
|
+
key: string;
|
|
5
|
+
/** Value to be displayed (e.g., "$120.00") */
|
|
6
|
+
value: string;
|
|
7
|
+
/** Tooltip configuration for displaying info icons */
|
|
8
|
+
info: statTooltipProps;
|
|
9
|
+
/** Optional color for the value text (default: "white") */
|
|
10
|
+
color?: TypoColor;
|
|
11
|
+
}
|
|
12
|
+
export interface redirectLinksDetails {
|
|
13
|
+
/** Display text for the redirect link */
|
|
14
|
+
title: string;
|
|
15
|
+
/** Click handler for the link */
|
|
16
|
+
onClick?: (e: React.MouseEvent<HTMLElement>) => void;
|
|
17
|
+
}
|
|
18
|
+
export interface WalletInfoProps {
|
|
19
|
+
/** Array of wallet data items (e.g., balance, bonus, etc.).*/
|
|
20
|
+
walletData: walletDataDetails[];
|
|
21
|
+
/** Array of call-to-action buttons shown in the footer.*/
|
|
22
|
+
footerCTA: ButtonProps[];
|
|
23
|
+
/** Array of redirect links displayed below the footer.*/
|
|
24
|
+
redirectLinks: redirectLinksDetails[];
|
|
25
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
export * from './Avatar';
|
|
2
|
+
export * from './Button';
|
|
3
|
+
export * from './DatePicker';
|
|
4
|
+
export * from './Dropdown';
|
|
5
|
+
export * from './Chip';
|
|
6
|
+
export * from './Icon';
|
|
7
|
+
export * from './InputField';
|
|
8
|
+
export * from './Modal';
|
|
9
|
+
export * from './NullState';
|
|
10
|
+
export * from './Pagination';
|
|
11
|
+
export * from './PasswordFieldGroup';
|
|
12
|
+
export * from './SearchBar';
|
|
13
|
+
export * from './Skeleton';
|
|
14
|
+
export * from './StatsList';
|
|
15
|
+
export * from './Table';
|
|
16
|
+
export * from './TabList';
|
|
17
|
+
export * from './Typography';
|
|
18
|
+
export * from './StatusDisplayCard';
|
|
19
|
+
export * from './Loader';
|
|
20
|
+
export * from './Tooltip';
|
|
21
|
+
export * from './EventDisplayCard';
|
|
22
|
+
export * from './MultiSelectDropdown';
|
|
23
|
+
export * from './Checkbox';
|
|
24
|
+
export * from './TitleBar';
|
|
25
|
+
export * from './SnackBar';
|
|
26
|
+
export * from './NotFoundPage';
|
|
27
|
+
export * from './MaintenancePage';
|
|
28
|
+
export * from './AdminBetSlip';
|
|
29
|
+
export * from './RadioButton';
|
|
30
|
+
export * from './NotificationBanner';
|
|
31
|
+
export * from './UserBetSlip';
|
|
32
|
+
export * from './Swiper';
|
|
33
|
+
export * from './BetSlip';
|
|
34
|
+
export * from './PhoneNumberInput';
|
|
35
|
+
export * from './Menu';
|
|
36
|
+
export * from './ProgressBar';
|
|
37
|
+
export * from './WalletInfo';
|
|
38
|
+
export * from './FileUploader';
|
|
39
|
+
export * from './ZIndex';
|
|
40
|
+
export * from './BetSlipModal';
|
|
41
|
+
export * from './FlashNotification';
|
|
42
|
+
export * from './CommonMarketHeader';
|
|
43
|
+
export * from './CommonMarketRow';
|
|
44
|
+
export * from './Toggle';
|
|
45
|
+
export * from './EventInfoCard';
|
|
46
|
+
export * from './EventCard';
|
|
47
|
+
export * from './TimePicker';
|
|
48
|
+
export * from './TooltipExt';
|
|
49
|
+
export * from './BannerCard';
|
|
50
|
+
export * from './ImageCard';
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|