@campxdev/react-blueprint 3.0.0-alpha.5 → 3.0.0-alpha.7
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/dist/cjs/index.js +1 -1
- package/dist/cjs/types/src/components/Assets/ErrorPages/ComingSoon.d.ts +24 -0
- package/dist/cjs/types/src/components/Assets/ErrorPages/InternalServerError.d.ts +20 -0
- package/dist/cjs/types/src/components/Assets/ErrorPages/NoInternetConnection.d.ts +20 -0
- package/dist/cjs/types/src/components/Assets/ErrorPages/NoItemFound.d.ts +28 -0
- package/dist/cjs/types/src/components/Assets/ErrorPages/PageNotFound.d.ts +21 -0
- package/dist/cjs/types/src/components/Assets/ErrorPages/ResourceNotFound.d.ts +21 -0
- package/dist/cjs/types/src/components/Assets/ErrorPages/UnAuthorized.d.ts +31 -0
- package/dist/cjs/types/src/components/Assets/Icons/Icons.d.ts +54 -0
- package/dist/cjs/types/src/components/Charts/BarChart/BarChart.d.ts +38 -0
- package/dist/cjs/types/src/components/Charts/BarChart/HorizontalBarChart.d.ts +93 -0
- package/dist/cjs/types/src/components/Charts/BarChart/VerticalBarChart.d.ts +110 -0
- package/dist/cjs/types/src/components/Charts/LineChart/LineChart.d.ts +89 -0
- package/dist/cjs/types/src/components/Charts/PieChart/PieChart.d.ts +86 -0
- package/dist/cjs/types/src/components/Charts/TreeMap/TreeMap.d.ts +74 -0
- package/dist/cjs/types/src/components/DataDisplay/Accordion/Accordion.d.ts +54 -0
- package/dist/cjs/types/src/components/DataDisplay/ActivityLogView/ActivityLogFilter.d.ts +35 -0
- package/dist/cjs/types/src/components/DataDisplay/ActivityLogView/ActivityLogView.d.ts +78 -0
- package/dist/cjs/types/src/components/DataDisplay/Avatar/Avatar.d.ts +40 -0
- package/dist/cjs/types/src/components/DataDisplay/Chip/Chip.d.ts +28 -0
- package/dist/cjs/types/src/components/DataDisplay/Chips/Chips.d.ts +55 -0
- package/dist/cjs/types/src/components/DataDisplay/DataTable/DataTable.d.ts +96 -1
- package/dist/cjs/types/src/components/DataDisplay/DataTable/components/CardsView.d.ts +14 -2
- package/dist/cjs/types/src/components/DataDisplay/DataTable/components/TablePagination.d.ts +35 -0
- package/dist/cjs/types/src/components/DataDisplay/EmptyIllustration/EmptyIllustration.d.ts +30 -0
- package/dist/cjs/types/src/components/DataDisplay/ReactJoyride/ReactJoyride.d.ts +64 -0
- package/dist/cjs/types/src/components/DataDisplay/Separator/Separator.d.ts +30 -0
- package/dist/cjs/types/src/components/DataDisplay/Skeleton/Skeleton.d.ts +20 -0
- package/dist/cjs/types/src/components/DataDisplay/StatusCard/StatusCard.d.ts +36 -0
- package/dist/cjs/types/src/components/DataDisplay/Timeline/Timeline.d.ts +58 -0
- package/dist/cjs/types/src/components/DataDisplay/Typography/Typography.d.ts +25 -0
- package/dist/cjs/types/src/components/Feedback/Alert/Alert.d.ts +31 -0
- package/dist/cjs/types/src/components/Feedback/Snackbar/Snackbar.d.ts +54 -0
- package/dist/cjs/types/src/components/Feedback/Spinner/Spinner.d.ts +15 -0
- package/dist/cjs/types/src/components/Feedback/Tooltip/Tooltip.d.ts +54 -0
- package/dist/cjs/types/src/components/Input/Button/Button.d.ts +26 -0
- package/dist/cjs/types/src/components/Input/DatePicker/DatePicker.d.ts +41 -0
- package/dist/cjs/types/src/components/Input/DateTimePicker/DateTimePicker.d.ts +42 -0
- package/dist/cjs/types/src/components/Input/FileUpload/FileUpload.d.ts +41 -0
- package/dist/cjs/types/src/components/Input/FormActions/FormActions.d.ts +37 -0
- package/dist/cjs/types/src/components/Input/FormControlWrapper/FormControlWrapper.d.ts +31 -0
- package/dist/cjs/types/src/components/Input/FormWrapper/FormWrapper.d.ts +20 -0
- package/dist/cjs/types/src/components/Input/HelpButton/HelpButton.d.ts +14 -0
- package/dist/cjs/types/src/components/Input/IconButtons/IconButtons/DeleteButton.d.ts +16 -0
- package/dist/cjs/types/src/components/Input/IconButtons/IconButtons/EditButton.d.ts +16 -0
- package/dist/cjs/types/src/components/Input/IconButtons/IconButtons/RedirectButton.d.ts +16 -0
- package/dist/cjs/types/src/components/Input/IconButtons/IconButtons/ViewButton.d.ts +16 -0
- package/dist/cjs/types/src/components/Input/IconButtons/IconButtons.d.ts +18 -0
- package/dist/cjs/types/src/components/Input/LabelWrapper/LabelWrapper.d.ts +26 -0
- package/dist/cjs/types/src/components/Input/MultiCheckBox/MultiCheckBox.d.ts +34 -0
- package/dist/cjs/types/src/components/Input/MultiSelect/MultiSelect.d.ts +40 -0
- package/dist/cjs/types/src/components/Input/OtpInput/OtpInput.d.ts +29 -0
- package/dist/cjs/types/src/components/Input/PasswordField/PasswordField.d.ts +34 -0
- package/dist/cjs/types/src/components/Input/RadioGroup/RadioGroup.d.ts +38 -0
- package/dist/cjs/types/src/components/Input/SearchBar/SearchBar.d.ts +26 -0
- package/dist/cjs/types/src/components/Input/Select/Select.d.ts +32 -0
- package/dist/cjs/types/src/components/Input/SingleCheckBox/SingleCheckBox.d.ts +29 -0
- package/dist/cjs/types/src/components/Input/SingleSelect/SingleSelect.d.ts +40 -0
- package/dist/cjs/types/src/components/Input/Switch/Switch.d.ts +23 -0
- package/dist/cjs/types/src/components/Input/Tags/Tags.d.ts +26 -0
- package/dist/cjs/types/src/components/Input/TextField/TextField.d.ts +35 -0
- package/dist/cjs/types/src/components/Input/Textarea/Textarea.d.ts +36 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/AppLayout.d.ts +32 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/components/MenuToggleButton.d.ts +16 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/components/Sidebar/MenuBar.d.ts +26 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/components/Sidebar/MenuItem.d.ts +37 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/components/Sidebar/Sidebar.d.ts +30 -1
- package/dist/cjs/types/src/components/Layout/AppLayout/components/Sidebar/StyledComponents.d.ts +139 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/components/UserProfilePopup.d.ts +34 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/context/SidebarContext.d.ts +48 -0
- package/dist/cjs/types/src/components/Layout/AppLayout/types.d.ts +1 -1
- package/dist/cjs/types/src/components/Layout/PageContent/PageContent.d.ts +21 -1
- package/dist/cjs/types/src/components/Layout/PageHeader/PageHeader.d.ts +46 -0
- package/dist/cjs/types/src/components/Layout/PageHeader/components/SearchBar.d.ts +22 -0
- package/dist/cjs/types/src/components/Layout/UserBox/UserBox.d.ts +40 -0
- package/dist/cjs/types/src/components/Navigation/Breadcrumbs/Breadcrumbs.d.ts +33 -0
- package/dist/cjs/types/src/components/Navigation/Calendar/Calendar.d.ts +63 -0
- package/dist/cjs/types/src/components/Navigation/ConfirmDialog/ConfirmDialog.d.ts +64 -0
- package/dist/cjs/types/src/components/Navigation/Dialog/Dialog.d.ts +55 -0
- package/dist/cjs/types/src/components/Navigation/DialogButton/DialogButton.d.ts +64 -0
- package/dist/cjs/types/src/components/Navigation/DropDownMenu/DropDownMenu.d.ts +73 -0
- package/dist/cjs/types/src/components/Navigation/PreviewFiles/PreviewFiles.d.ts +54 -0
- package/dist/cjs/types/src/components/Navigation/Stepper/Stepper.d.ts +55 -10
- package/dist/cjs/types/src/components/Navigation/TabsContainer/TabsContainer.d.ts +85 -1
- package/dist/cjs/types/src/components/Navigation/UploadDialog/UploadDialog.d.ts +64 -0
- package/dist/cjs/types/src/shadcn-components/Input/Button/Button.d.ts +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/types/src/components/Assets/ErrorPages/ComingSoon.d.ts +24 -0
- package/dist/esm/types/src/components/Assets/ErrorPages/InternalServerError.d.ts +20 -0
- package/dist/esm/types/src/components/Assets/ErrorPages/NoInternetConnection.d.ts +20 -0
- package/dist/esm/types/src/components/Assets/ErrorPages/NoItemFound.d.ts +28 -0
- package/dist/esm/types/src/components/Assets/ErrorPages/PageNotFound.d.ts +21 -0
- package/dist/esm/types/src/components/Assets/ErrorPages/ResourceNotFound.d.ts +21 -0
- package/dist/esm/types/src/components/Assets/ErrorPages/UnAuthorized.d.ts +31 -0
- package/dist/esm/types/src/components/Assets/Icons/Icons.d.ts +54 -0
- package/dist/esm/types/src/components/Charts/BarChart/BarChart.d.ts +38 -0
- package/dist/esm/types/src/components/Charts/BarChart/HorizontalBarChart.d.ts +93 -0
- package/dist/esm/types/src/components/Charts/BarChart/VerticalBarChart.d.ts +110 -0
- package/dist/esm/types/src/components/Charts/LineChart/LineChart.d.ts +89 -0
- package/dist/esm/types/src/components/Charts/PieChart/PieChart.d.ts +86 -0
- package/dist/esm/types/src/components/Charts/TreeMap/TreeMap.d.ts +74 -0
- package/dist/esm/types/src/components/DataDisplay/Accordion/Accordion.d.ts +54 -0
- package/dist/esm/types/src/components/DataDisplay/ActivityLogView/ActivityLogFilter.d.ts +35 -0
- package/dist/esm/types/src/components/DataDisplay/ActivityLogView/ActivityLogView.d.ts +78 -0
- package/dist/esm/types/src/components/DataDisplay/Avatar/Avatar.d.ts +40 -0
- package/dist/esm/types/src/components/DataDisplay/Chip/Chip.d.ts +28 -0
- package/dist/esm/types/src/components/DataDisplay/Chips/Chips.d.ts +55 -0
- package/dist/esm/types/src/components/DataDisplay/DataTable/DataTable.d.ts +96 -1
- package/dist/esm/types/src/components/DataDisplay/DataTable/components/CardsView.d.ts +14 -2
- package/dist/esm/types/src/components/DataDisplay/DataTable/components/TablePagination.d.ts +35 -0
- package/dist/esm/types/src/components/DataDisplay/EmptyIllustration/EmptyIllustration.d.ts +30 -0
- package/dist/esm/types/src/components/DataDisplay/ReactJoyride/ReactJoyride.d.ts +64 -0
- package/dist/esm/types/src/components/DataDisplay/Separator/Separator.d.ts +30 -0
- package/dist/esm/types/src/components/DataDisplay/Skeleton/Skeleton.d.ts +20 -0
- package/dist/esm/types/src/components/DataDisplay/StatusCard/StatusCard.d.ts +36 -0
- package/dist/esm/types/src/components/DataDisplay/Timeline/Timeline.d.ts +58 -0
- package/dist/esm/types/src/components/DataDisplay/Typography/Typography.d.ts +25 -0
- package/dist/esm/types/src/components/Feedback/Alert/Alert.d.ts +31 -0
- package/dist/esm/types/src/components/Feedback/Snackbar/Snackbar.d.ts +54 -0
- package/dist/esm/types/src/components/Feedback/Spinner/Spinner.d.ts +15 -0
- package/dist/esm/types/src/components/Feedback/Tooltip/Tooltip.d.ts +54 -0
- package/dist/esm/types/src/components/Input/Button/Button.d.ts +26 -0
- package/dist/esm/types/src/components/Input/DatePicker/DatePicker.d.ts +41 -0
- package/dist/esm/types/src/components/Input/DateTimePicker/DateTimePicker.d.ts +42 -0
- package/dist/esm/types/src/components/Input/FileUpload/FileUpload.d.ts +41 -0
- package/dist/esm/types/src/components/Input/FormActions/FormActions.d.ts +37 -0
- package/dist/esm/types/src/components/Input/FormControlWrapper/FormControlWrapper.d.ts +31 -0
- package/dist/esm/types/src/components/Input/FormWrapper/FormWrapper.d.ts +20 -0
- package/dist/esm/types/src/components/Input/HelpButton/HelpButton.d.ts +14 -0
- package/dist/esm/types/src/components/Input/IconButtons/IconButtons/DeleteButton.d.ts +16 -0
- package/dist/esm/types/src/components/Input/IconButtons/IconButtons/EditButton.d.ts +16 -0
- package/dist/esm/types/src/components/Input/IconButtons/IconButtons/RedirectButton.d.ts +16 -0
- package/dist/esm/types/src/components/Input/IconButtons/IconButtons/ViewButton.d.ts +16 -0
- package/dist/esm/types/src/components/Input/IconButtons/IconButtons.d.ts +18 -0
- package/dist/esm/types/src/components/Input/LabelWrapper/LabelWrapper.d.ts +26 -0
- package/dist/esm/types/src/components/Input/MultiCheckBox/MultiCheckBox.d.ts +34 -0
- package/dist/esm/types/src/components/Input/MultiSelect/MultiSelect.d.ts +40 -0
- package/dist/esm/types/src/components/Input/OtpInput/OtpInput.d.ts +29 -0
- package/dist/esm/types/src/components/Input/PasswordField/PasswordField.d.ts +34 -0
- package/dist/esm/types/src/components/Input/RadioGroup/RadioGroup.d.ts +38 -0
- package/dist/esm/types/src/components/Input/SearchBar/SearchBar.d.ts +26 -0
- package/dist/esm/types/src/components/Input/Select/Select.d.ts +32 -0
- package/dist/esm/types/src/components/Input/SingleCheckBox/SingleCheckBox.d.ts +29 -0
- package/dist/esm/types/src/components/Input/SingleSelect/SingleSelect.d.ts +40 -0
- package/dist/esm/types/src/components/Input/Switch/Switch.d.ts +23 -0
- package/dist/esm/types/src/components/Input/Tags/Tags.d.ts +26 -0
- package/dist/esm/types/src/components/Input/TextField/TextField.d.ts +35 -0
- package/dist/esm/types/src/components/Input/Textarea/Textarea.d.ts +36 -0
- package/dist/esm/types/src/components/Layout/AppLayout/AppLayout.d.ts +32 -0
- package/dist/esm/types/src/components/Layout/AppLayout/components/MenuToggleButton.d.ts +16 -0
- package/dist/esm/types/src/components/Layout/AppLayout/components/Sidebar/MenuBar.d.ts +26 -0
- package/dist/esm/types/src/components/Layout/AppLayout/components/Sidebar/MenuItem.d.ts +37 -0
- package/dist/esm/types/src/components/Layout/AppLayout/components/Sidebar/Sidebar.d.ts +30 -1
- package/dist/esm/types/src/components/Layout/AppLayout/components/Sidebar/StyledComponents.d.ts +139 -0
- package/dist/esm/types/src/components/Layout/AppLayout/components/UserProfilePopup.d.ts +34 -0
- package/dist/esm/types/src/components/Layout/AppLayout/context/SidebarContext.d.ts +48 -0
- package/dist/esm/types/src/components/Layout/AppLayout/types.d.ts +1 -1
- package/dist/esm/types/src/components/Layout/PageContent/PageContent.d.ts +21 -1
- package/dist/esm/types/src/components/Layout/PageHeader/PageHeader.d.ts +46 -0
- package/dist/esm/types/src/components/Layout/PageHeader/components/SearchBar.d.ts +22 -0
- package/dist/esm/types/src/components/Layout/UserBox/UserBox.d.ts +40 -0
- package/dist/esm/types/src/components/Navigation/Breadcrumbs/Breadcrumbs.d.ts +33 -0
- package/dist/esm/types/src/components/Navigation/Calendar/Calendar.d.ts +63 -0
- package/dist/esm/types/src/components/Navigation/ConfirmDialog/ConfirmDialog.d.ts +64 -0
- package/dist/esm/types/src/components/Navigation/Dialog/Dialog.d.ts +55 -0
- package/dist/esm/types/src/components/Navigation/DialogButton/DialogButton.d.ts +64 -0
- package/dist/esm/types/src/components/Navigation/DropDownMenu/DropDownMenu.d.ts +73 -0
- package/dist/esm/types/src/components/Navigation/PreviewFiles/PreviewFiles.d.ts +54 -0
- package/dist/esm/types/src/components/Navigation/Stepper/Stepper.d.ts +55 -10
- package/dist/esm/types/src/components/Navigation/TabsContainer/TabsContainer.d.ts +85 -1
- package/dist/esm/types/src/components/Navigation/UploadDialog/UploadDialog.d.ts +64 -0
- package/dist/esm/types/src/shadcn-components/Input/Button/Button.d.ts +1 -1
- package/dist/index.d.ts +2961 -16
- package/dist/styles.css +30 -81
- package/package.json +1 -1
- package/src/components/Assets/ErrorPages/ComingSoon.tsx +24 -0
- package/src/components/Assets/ErrorPages/InternalServerError.tsx +20 -0
- package/src/components/Assets/ErrorPages/NoInternetConnection.tsx +20 -0
- package/src/components/Assets/ErrorPages/NoItemFound.tsx +28 -0
- package/src/components/Assets/ErrorPages/PageNotFound.tsx +21 -0
- package/src/components/Assets/ErrorPages/ResourceNotFound.tsx +21 -0
- package/src/components/Assets/ErrorPages/UnAuthorized.tsx +31 -0
- package/src/components/Assets/Icons/Icons.tsx +55 -1
- package/src/components/Charts/BarChart/BarChart.tsx +38 -0
- package/src/components/Charts/BarChart/HorizontalBarChart.tsx +93 -0
- package/src/components/Charts/BarChart/VerticalBarChart.tsx +110 -0
- package/src/components/Charts/LineChart/LineChart.tsx +89 -0
- package/src/components/Charts/PieChart/PieChart.tsx +86 -0
- package/src/components/Charts/TreeMap/TreeMap.tsx +90 -0
- package/src/components/DataDisplay/Accordion/Accordion.tsx +54 -0
- package/src/components/DataDisplay/ActivityLogView/ActivityLogFilter.tsx +35 -0
- package/src/components/DataDisplay/ActivityLogView/ActivityLogView.tsx +84 -0
- package/src/components/DataDisplay/Avatar/Avatar.tsx +40 -0
- package/src/components/DataDisplay/Chip/Chip.tsx +28 -0
- package/src/components/DataDisplay/Chips/Chips.tsx +56 -0
- package/src/components/DataDisplay/DataTable/DataTable.tsx +109 -2
- package/src/components/DataDisplay/DataTable/components/CardsView.tsx +28 -13
- package/src/components/DataDisplay/DataTable/components/ColumnSelector/ColumnSelector.tsx +22 -4
- package/src/components/DataDisplay/DataTable/components/TableHeaders/TableActionHeader.tsx +9 -4
- package/src/components/DataDisplay/DataTable/components/TablePagination.tsx +35 -0
- package/src/components/DataDisplay/DataTable/components/TableView.tsx +5 -1
- package/src/components/DataDisplay/EmptyIllustration/EmptyIllustration.tsx +31 -0
- package/src/components/DataDisplay/ReactJoyride/ReactJoyride.tsx +64 -0
- package/src/components/DataDisplay/Separator/Separator.tsx +32 -0
- package/src/components/DataDisplay/Skeleton/Skeleton.tsx +20 -0
- package/src/components/DataDisplay/StatusCard/StatusCard.tsx +36 -0
- package/src/components/DataDisplay/Timeline/Timeline.tsx +58 -0
- package/src/components/DataDisplay/Typography/Typography.tsx +25 -0
- package/src/components/Feedback/Alert/Alert.tsx +38 -0
- package/src/components/Feedback/Snackbar/Snackbar.tsx +54 -0
- package/src/components/Feedback/Spinner/Spinner.tsx +15 -0
- package/src/components/Feedback/Tooltip/Tooltip.tsx +54 -0
- package/src/components/Input/Button/Button.tsx +26 -0
- package/src/components/Input/DatePicker/DatePicker.tsx +41 -0
- package/src/components/Input/DateTimePicker/DateTimePicker.tsx +42 -0
- package/src/components/Input/FileUpload/FileUpload.tsx +41 -0
- package/src/components/Input/FormActions/FormActions.tsx +37 -0
- package/src/components/Input/FormControlWrapper/FormControlWrapper.tsx +31 -0
- package/src/components/Input/FormWrapper/FormWrapper.tsx +20 -0
- package/src/components/Input/HelpButton/HelpButton.tsx +14 -0
- package/src/components/Input/IconButtons/IconButtons/DeleteButton.tsx +16 -0
- package/src/components/Input/IconButtons/IconButtons/EditButton.tsx +16 -0
- package/src/components/Input/IconButtons/IconButtons/RedirectButton.tsx +16 -0
- package/src/components/Input/IconButtons/IconButtons/ViewButton.tsx +16 -0
- package/src/components/Input/IconButtons/IconButtons.tsx +18 -0
- package/src/components/Input/LabelWrapper/LabelWrapper.tsx +26 -0
- package/src/components/Input/MultiCheckBox/MultiCheckBox.tsx +34 -0
- package/src/components/Input/MultiSelect/MultiSelect.tsx +40 -0
- package/src/components/Input/OtpInput/OtpInput.tsx +29 -0
- package/src/components/Input/PasswordField/PasswordField.tsx +34 -0
- package/src/components/Input/RadioGroup/RadioGroup.tsx +38 -0
- package/src/components/Input/SearchBar/SearchBar.tsx +26 -0
- package/src/components/Input/Select/Select.tsx +41 -0
- package/src/components/Input/SingleCheckBox/SingleCheckBox.tsx +29 -0
- package/src/components/Input/SingleSelect/SingleSelect.tsx +40 -0
- package/src/components/Input/Switch/Switch.tsx +23 -0
- package/src/components/Input/Tags/Tags.tsx +26 -0
- package/src/components/Input/TextField/TextField.tsx +35 -0
- package/src/components/Input/Textarea/Textarea.tsx +36 -0
- package/src/components/Layout/AppLayout/AppLayout.tsx +34 -11
- package/src/components/Layout/AppLayout/components/MenuToggleButton.tsx +16 -0
- package/src/components/Layout/AppLayout/components/Sidebar/MenuBar.tsx +26 -0
- package/src/components/Layout/AppLayout/components/Sidebar/MenuItem.tsx +51 -1
- package/src/components/Layout/AppLayout/components/Sidebar/Sidebar.tsx +173 -104
- package/src/components/Layout/AppLayout/components/Sidebar/StyledComponents.tsx +139 -9
- package/src/components/Layout/AppLayout/components/UserProfilePopup.tsx +35 -1
- package/src/components/Layout/AppLayout/context/SidebarContext.tsx +48 -0
- package/src/components/Layout/AppLayout/types.ts +1 -1
- package/src/components/Layout/PageContent/PageContent.tsx +23 -3
- package/src/components/Layout/PageHeader/PageHeader.tsx +68 -7
- package/src/components/Layout/PageHeader/components/SearchBar.tsx +22 -0
- package/src/components/Layout/UserBox/UserBox.tsx +40 -0
- package/src/components/Navigation/Breadcrumbs/Breadcrumbs.tsx +53 -4
- package/src/components/Navigation/Calendar/Calendar.tsx +63 -0
- package/src/components/Navigation/ConfirmDialog/ConfirmDialog.tsx +64 -0
- package/src/components/Navigation/Dialog/Dialog.tsx +62 -2
- package/src/components/Navigation/DialogButton/DialogButton.tsx +64 -0
- package/src/components/Navigation/DropDownMenu/DropDownMenu.tsx +73 -0
- package/src/components/Navigation/PreviewFiles/PreviewFiles.tsx +93 -0
- package/src/components/Navigation/Stepper/Stepper.tsx +56 -10
- package/src/components/Navigation/TabsContainer/TabsContainer.tsx +86 -1
- package/src/components/Navigation/UploadDialog/UploadDialog.tsx +64 -0
- package/src/shadcn-components/Layout/Sheet/Sheet.tsx +2 -2
|
@@ -3,5 +3,29 @@ interface NoItemFoundProps {
|
|
|
3
3
|
title?: string;
|
|
4
4
|
description: ReactNode;
|
|
5
5
|
}
|
|
6
|
+
/**
|
|
7
|
+
* ComingSoon component displays a "Coming Soon" placeholder page.
|
|
8
|
+
*
|
|
9
|
+
* This component renders a centered container with an SVG illustration,
|
|
10
|
+
* a title, and a description message to inform users that a feature or page
|
|
11
|
+
* is not yet available.
|
|
12
|
+
*
|
|
13
|
+
* @component
|
|
14
|
+
* @param {Object} props - The component props
|
|
15
|
+
* @param {string} [props.title='Coming Soon'] - The title text to display. Defaults to "Coming Soon"
|
|
16
|
+
* @param {ReactNode} props.description - The description or message to display below the title
|
|
17
|
+
* @returns {React.ReactElement} A centered layout with SVG, title, and description
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* // Basic usage
|
|
21
|
+
* <ComingSoon description="This feature will be available soon!" />
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* // With custom title
|
|
25
|
+
* <ComingSoon
|
|
26
|
+
* title="New Dashboard"
|
|
27
|
+
* description="We're working hard to bring you an improved dashboard experience."
|
|
28
|
+
* />
|
|
29
|
+
*/
|
|
6
30
|
export declare const ComingSoon: ({ title, description, }: NoItemFoundProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
31
|
export {};
|
|
@@ -1 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* InternalServerError component displays a 500 server error page.
|
|
3
|
+
*
|
|
4
|
+
* This component renders a centered error page with an SVG illustration,
|
|
5
|
+
* error message, and a "Try Again" button that triggers the error boundary reset.
|
|
6
|
+
* Typically used within an error boundary to handle unexpected server errors.
|
|
7
|
+
*
|
|
8
|
+
* @component
|
|
9
|
+
* @param {Object} props - The component props
|
|
10
|
+
* @param {Function} props.resetBoundary - Callback function to reset the error boundary and retry the operation
|
|
11
|
+
* @returns {React.ReactElement} A centered error page with icon, message, and retry button
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // Usage within an error boundary
|
|
15
|
+
* <InternalServerError resetBoundary={() => window.location.reload()} />
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* // Usage with custom reset logic
|
|
19
|
+
* <InternalServerError resetBoundary={handleRetry} />
|
|
20
|
+
*/
|
|
1
21
|
export declare const InternalServerError: ({ resetBoundary }: any) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NoInterneConnection component displays a "No Internet Connection" error page.
|
|
3
|
+
*
|
|
4
|
+
* This component renders a centered error page with an SVG illustration,
|
|
5
|
+
* a message informing the user of a lost internet connection, and a "Try Again" button.
|
|
6
|
+
* Useful for displaying when the application detects no network connectivity.
|
|
7
|
+
*
|
|
8
|
+
* @component
|
|
9
|
+
* @param {Object} props - The component props
|
|
10
|
+
* @param {Function} props.resetBoundary - Callback function to retry the connection or operation
|
|
11
|
+
* @returns {React.ReactElement} A centered offline error page with icon, message, and retry button
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // Display when network connection is lost
|
|
15
|
+
* <NoInterneConnection resetBoundary={handleRetry} />
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* // With navigation reset
|
|
19
|
+
* <NoInterneConnection resetBoundary={() => window.location.reload()} />
|
|
20
|
+
*/
|
|
1
21
|
export declare const NoInterneConnection: ({ resetBoundary }: any) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -5,5 +5,33 @@ interface NoItemFoundProps {
|
|
|
5
5
|
height?: string | number;
|
|
6
6
|
width?: string | number;
|
|
7
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* NoItemFound component displays a "No Items Found" placeholder page.
|
|
10
|
+
*
|
|
11
|
+
* This component renders a centered container with an empty state SVG illustration,
|
|
12
|
+
* a title, and a description. The SVG size can be customized with height and width props.
|
|
13
|
+
* Commonly used to indicate when a list, search results, or data collection is empty.
|
|
14
|
+
*
|
|
15
|
+
* @component
|
|
16
|
+
* @param {Object} props - The component props
|
|
17
|
+
* @param {string} [props.title='No Items Found'] - The title text to display. Defaults to "No Items Found"
|
|
18
|
+
* @param {ReactNode} props.description - The description or message to display below the title
|
|
19
|
+
* @param {string | number} [props.height] - The height of the SVG illustration
|
|
20
|
+
* @param {string | number} [props.width] - The width of the SVG illustration
|
|
21
|
+
* @returns {React.ReactElement} A centered layout with SVG, title, and description
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* // Basic usage
|
|
25
|
+
* <NoItemFound description="Try adjusting your search criteria." />
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* // With custom title and SVG dimensions
|
|
29
|
+
* <NoItemFound
|
|
30
|
+
* title="No Results"
|
|
31
|
+
* description="Your search didn't return any results."
|
|
32
|
+
* width={200}
|
|
33
|
+
* height={200}
|
|
34
|
+
* />
|
|
35
|
+
*/
|
|
8
36
|
export declare const NoItemFound: ({ title, description, height, width, }: NoItemFoundProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
37
|
export {};
|
|
@@ -1 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PageNotFound component displays a 404 "Page Not Found" error page.
|
|
3
|
+
*
|
|
4
|
+
* This component renders a centered error page with an SVG illustration
|
|
5
|
+
* and informative messages to indicate that the requested page does not exist.
|
|
6
|
+
* Typically used as a fallback for invalid or missing routes.
|
|
7
|
+
*
|
|
8
|
+
* @component
|
|
9
|
+
* @returns {React.ReactElement} A centered 404 error page with icon and messages
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* // Basic usage in routing
|
|
13
|
+
* <Route path="*" element={<PageNotFound />} />
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* // As a fallback route
|
|
17
|
+
* <Routes>
|
|
18
|
+
* <Route path="/" element={<Home />} />
|
|
19
|
+
* <Route path="*" element={<PageNotFound />} />
|
|
20
|
+
* </Routes>
|
|
21
|
+
*/
|
|
1
22
|
export declare const PageNotFound: () => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ResourceNotFound component displays a "Resource Not Found" error page.
|
|
3
|
+
*
|
|
4
|
+
* This component renders a centered error page with an SVG illustration
|
|
5
|
+
* and a custom message. Typically used when a specific resource (e.g., user, post, item)
|
|
6
|
+
* cannot be found in the system.
|
|
7
|
+
*
|
|
8
|
+
* @component
|
|
9
|
+
* @param {any} message - The error message or description to display. Can be any ReactNode type
|
|
10
|
+
* @returns {React.ReactElement} A centered error page with icon and custom message
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* // Basic usage
|
|
14
|
+
* <ResourceNotFound message="The user profile you're looking for does not exist." />
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* // With JSX message
|
|
18
|
+
* <ResourceNotFound
|
|
19
|
+
* message={<span>The requested <strong>item</strong> was not found in the database.</span>}
|
|
20
|
+
* />
|
|
21
|
+
*/
|
|
1
22
|
export declare const ResourceNotFound: (message: any) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,35 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* UnAuthorized component displays an "Unauthorized Access" error page.
|
|
4
|
+
*
|
|
5
|
+
* This component renders a centered error page with an SVG illustration,
|
|
6
|
+
* a message indicating the user must be logged in, and an optional login component.
|
|
7
|
+
* Typically used to protect routes that require authentication.
|
|
8
|
+
*
|
|
9
|
+
* @component
|
|
10
|
+
* @param {Object} props - The component props
|
|
11
|
+
* @param {ReactNode} [props.component] - Optional React element to render below the messages (e.g., a login form or button)
|
|
12
|
+
* @returns {React.ReactElement} A centered authorization error page with icon, messages, and optional component
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* // Basic usage without additional component
|
|
16
|
+
* <UnAuthorized />
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* // With a login button
|
|
20
|
+
* <UnAuthorized component={<LoginButton />} />
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* // With a full login form
|
|
24
|
+
* <UnAuthorized
|
|
25
|
+
* component={
|
|
26
|
+
* <form>
|
|
27
|
+
* <input type="email" placeholder="Email" />
|
|
28
|
+
* <button>Sign In</button>
|
|
29
|
+
* </form>
|
|
30
|
+
* }
|
|
31
|
+
* />
|
|
32
|
+
*/
|
|
2
33
|
export declare const UnAuthorized: ({ component }: {
|
|
3
34
|
component?: ReactNode;
|
|
4
35
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
import { FC, MouseEvent } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* IconProps interface defines common properties for icon components.
|
|
4
|
+
*
|
|
5
|
+
* Provides a standardized set of props for customizing icon appearance
|
|
6
|
+
* and behavior across the application.
|
|
7
|
+
*
|
|
8
|
+
* @interface IconProps
|
|
9
|
+
* @property {number} [size] - The size of the icon in pixels
|
|
10
|
+
* @property {string} [color] - The color of the icon (CSS color value)
|
|
11
|
+
* @property {boolean} [disabled] - Whether the icon is in a disabled state
|
|
12
|
+
* @property {string} [hoverColor] - The color of the icon on hover (CSS color value)
|
|
13
|
+
* @property {string} [backgroundColor] - The background color behind the icon (CSS color value)
|
|
14
|
+
* @property {Function} [onClick] - Callback function triggered when the icon is clicked
|
|
15
|
+
*/
|
|
2
16
|
export interface IconProps {
|
|
3
17
|
size?: number;
|
|
4
18
|
color?: string;
|
|
@@ -7,9 +21,49 @@ export interface IconProps {
|
|
|
7
21
|
backgroundColor?: string;
|
|
8
22
|
onClick?: (event: MouseEvent<Element>) => void;
|
|
9
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* IconComponent type represents a React functional component that accepts IconProps.
|
|
26
|
+
*
|
|
27
|
+
* Used as the base type for icon components throughout the application.
|
|
28
|
+
*
|
|
29
|
+
* @typedef {FC<IconProps>} IconComponent
|
|
30
|
+
*/
|
|
10
31
|
export type IconComponent = FC<IconProps>;
|
|
32
|
+
/**
|
|
33
|
+
* IconsType interface defines the shape of the Icons object.
|
|
34
|
+
*
|
|
35
|
+
* Maps icon names to their corresponding component implementations.
|
|
36
|
+
*
|
|
37
|
+
* @interface IconsType
|
|
38
|
+
* @property {IconComponent} CampxFullLogoIcon - The full Campx logo with text icon component
|
|
39
|
+
* @property {IconComponent} CampxIcon - The Campx logo mark icon component
|
|
40
|
+
*/
|
|
11
41
|
export type IconsType = {
|
|
12
42
|
CampxFullLogoIcon: IconComponent;
|
|
13
43
|
CampxIcon: IconComponent;
|
|
14
44
|
};
|
|
45
|
+
/**
|
|
46
|
+
* Icons object exports all available icon components.
|
|
47
|
+
*
|
|
48
|
+
* Provides a centralized registry of all icon components used throughout the application.
|
|
49
|
+
* Each icon can be accessed as a property of this object and used as a React component.
|
|
50
|
+
*
|
|
51
|
+
* @constant
|
|
52
|
+
* @type {IconsType}
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* // Use individual icons
|
|
56
|
+
* <Icons.CampxIcon size={24} />
|
|
57
|
+
* <Icons.CampxFullLogoIcon />
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* // Use in a component
|
|
61
|
+
* const MyComponent = () => {
|
|
62
|
+
* return (
|
|
63
|
+
* <div>
|
|
64
|
+
* <Icons.CampxIcon size={32} color="#E43341" />
|
|
65
|
+
* </div>
|
|
66
|
+
* );
|
|
67
|
+
* };
|
|
68
|
+
*/
|
|
15
69
|
export declare const Icons: IconsType;
|
|
@@ -3,10 +3,48 @@ import HorizontalBarChart, { type HorizontalBarChartData, type HorizontalBarChar
|
|
|
3
3
|
import VerticalBarChart, { type VerticalBarChartData, type VerticalBarChartProps } from './VerticalBarChart';
|
|
4
4
|
export type BarChartVariant = 'vertical' | 'horizontal';
|
|
5
5
|
export type BarChartData = HorizontalBarChartData | VerticalBarChartData;
|
|
6
|
+
/**
|
|
7
|
+
* Props for the BarChart component
|
|
8
|
+
* Combines props from both VerticalBarChart and HorizontalBarChart
|
|
9
|
+
* @typedef {Object} BarChartProps
|
|
10
|
+
* @property {BarChartData[]} data - Array of data objects to display in the chart
|
|
11
|
+
* @property {BarChartVariant} [variant='vertical'] - Orientation of the bars ('vertical' or 'horizontal')
|
|
12
|
+
*/
|
|
6
13
|
export interface BarChartProps extends Omit<VerticalBarChartProps, 'data'>, Omit<HorizontalBarChartProps, 'data' | keyof VerticalBarChartProps> {
|
|
7
14
|
data: BarChartData[];
|
|
8
15
|
variant?: BarChartVariant;
|
|
9
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* BarChart Component
|
|
19
|
+
* A flexible bar chart component that supports both vertical and horizontal orientations.
|
|
20
|
+
* Delegates rendering to either VerticalBarChart or HorizontalBarChart based on the variant prop.
|
|
21
|
+
*
|
|
22
|
+
* @component
|
|
23
|
+
* @param {BarChartProps} props - The props object
|
|
24
|
+
* @param {BarChartData[]} props.data - Array of data objects containing chart values
|
|
25
|
+
* @param {BarChartVariant} [props.variant='vertical'] - Chart orientation: 'vertical' for vertical bars or 'horizontal' for horizontal bars
|
|
26
|
+
* @returns {React.ReactElement} Rendered bar chart component
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* const data = [
|
|
30
|
+
* { month: 'January', sales: 400, revenue: 2400 },
|
|
31
|
+
* { month: 'February', sales: 300, revenue: 1398 }
|
|
32
|
+
* ];
|
|
33
|
+
* const config = {
|
|
34
|
+
* sales: { label: 'Sales', color: '#2563eb' },
|
|
35
|
+
* revenue: { label: 'Revenue', color: '#7c3aed' }
|
|
36
|
+
* };
|
|
37
|
+
*
|
|
38
|
+
* return (
|
|
39
|
+
* <BarChart
|
|
40
|
+
* data={data}
|
|
41
|
+
* variant="vertical"
|
|
42
|
+
* dataKeys={['sales', 'revenue']}
|
|
43
|
+
* xAxisKey="month"
|
|
44
|
+
* config={config}
|
|
45
|
+
* />
|
|
46
|
+
* );
|
|
47
|
+
*/
|
|
10
48
|
declare const BarChart: React.FC<BarChartProps>;
|
|
11
49
|
export default BarChart;
|
|
12
50
|
export { HorizontalBarChart, VerticalBarChart };
|
|
@@ -1,9 +1,46 @@
|
|
|
1
1
|
import { type ChartConfig } from '@/shadcn-components/Charts/Chart';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { LegendProps, MarginProps, SubTitleProps, TitleProps } from '../types/types';
|
|
4
|
+
/**
|
|
5
|
+
* Data object for HorizontalBarChart
|
|
6
|
+
* @typedef {Object} HorizontalBarChartData
|
|
7
|
+
* @property {string|number} [key] - Dynamic data properties
|
|
8
|
+
*/
|
|
4
9
|
export interface HorizontalBarChartData {
|
|
5
10
|
[key: string]: string | number;
|
|
6
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Props for the HorizontalBarChart component
|
|
14
|
+
* @typedef {Object} HorizontalBarChartProps
|
|
15
|
+
* @property {HorizontalBarChartData[]} data - Array of data objects to display
|
|
16
|
+
* @property {string[]} dataKeys - Array of keys from data objects to visualize as bars
|
|
17
|
+
* @property {string} xAxisKey - The key to use for Y-axis (category) labels
|
|
18
|
+
* @property {ChartConfig} config - Chart configuration with color mappings for data keys
|
|
19
|
+
* @property {number} [height] - Chart height in pixels (auto-calculated if not provided)
|
|
20
|
+
* @property {MarginProps} [margin={top: 20, right: 30, bottom: 20, left: -20}] - Chart margins
|
|
21
|
+
* @property {number} [barSize=32] - Height of each bar in pixels
|
|
22
|
+
* @property {number|number[]} [radius=5] - Border radius for bars (single value or [top-left, top-right, bottom-right, bottom-left])
|
|
23
|
+
* @property {string} [stackId] - ID for stacking multiple bars together
|
|
24
|
+
* @property {boolean} [hideXAxis=false] - Whether to hide the X-axis
|
|
25
|
+
* @property {number} [yAxisWidth=100] - Width allocated for Y-axis labels
|
|
26
|
+
* @property {Function} [yAxisTickFormatter] - Function to format Y-axis tick labels
|
|
27
|
+
* @property {Function} [xAxisTickFormatter] - Function to format X-axis tick labels
|
|
28
|
+
* @property {boolean} [showTooltip=true] - Whether to show tooltip on hover
|
|
29
|
+
* @property {boolean|object} [tooltipCursor=false] - Tooltip cursor appearance
|
|
30
|
+
* @property {boolean} [hideTooltipLabel=true] - Whether to hide the label in tooltip
|
|
31
|
+
* @property {'line'|'dot'|'dashed'} [tooltipIndicator='line'] - Tooltip indicator style
|
|
32
|
+
* @property {LegendProps} [legend] - Legend configuration props
|
|
33
|
+
* @property {boolean} [showLegend=false] - Whether to display the legend
|
|
34
|
+
* @property {string} [title] - Chart title text
|
|
35
|
+
* @property {TitleProps} [titleProps={variant: 'h3', className: ''}] - Title styling props
|
|
36
|
+
* @property {string} [subtitle] - Chart subtitle text
|
|
37
|
+
* @property {SubTitleProps} [subtitleProps={variant: 'muted', className: ''}] - Subtitle styling props
|
|
38
|
+
* @property {string} [className] - CSS class for the container
|
|
39
|
+
* @property {Function} [onBarClick] - Callback function when a bar is clicked
|
|
40
|
+
* @property {number} [animationDuration=750] - Duration of animations in milliseconds
|
|
41
|
+
* @property {'ease'|'ease-in'|'ease-out'|'ease-in-out'|'linear'} [animationEasing='ease-in-out'] - Easing function for animations
|
|
42
|
+
* @property {boolean} [accessibilityLayer=true] - Enable accessibility features
|
|
43
|
+
*/
|
|
7
44
|
export interface HorizontalBarChartProps {
|
|
8
45
|
data: HorizontalBarChartData[];
|
|
9
46
|
dataKeys: string[];
|
|
@@ -34,5 +71,61 @@ export interface HorizontalBarChartProps {
|
|
|
34
71
|
animationEasing?: 'ease' | 'ease-in' | 'ease-out' | 'ease-in-out' | 'linear';
|
|
35
72
|
accessibilityLayer?: boolean;
|
|
36
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* HorizontalBarChart Component
|
|
76
|
+
* Displays data as horizontal bars with full customization support for axes, tooltips, legends, and animations.
|
|
77
|
+
* The chart dynamically calculates height based on data length if height is not provided.
|
|
78
|
+
*
|
|
79
|
+
* @component
|
|
80
|
+
* @param {HorizontalBarChartProps} props - The component props
|
|
81
|
+
* @param {HorizontalBarChartData[]} props.data - Array of data objects to display
|
|
82
|
+
* @param {string[]} props.dataKeys - Keys from data objects to visualize
|
|
83
|
+
* @param {string} props.xAxisKey - The key for Y-axis category labels
|
|
84
|
+
* @param {ChartConfig} props.config - Chart color and display configuration
|
|
85
|
+
* @param {number} [props.height] - Chart height; auto-calculated if not provided
|
|
86
|
+
* @param {MarginProps} [props.margin] - Chart margin spacing
|
|
87
|
+
* @param {number} [props.barSize] - Height of each bar in pixels
|
|
88
|
+
* @param {number|number[]} [props.radius] - Border radius for bar corners
|
|
89
|
+
* @param {string} [props.stackId] - ID for stacked bars
|
|
90
|
+
* @param {boolean} [props.hideXAxis] - Hide/show the X-axis
|
|
91
|
+
* @param {number} [props.yAxisWidth] - Width of Y-axis label area
|
|
92
|
+
* @param {Function} [props.yAxisTickFormatter] - Custom Y-axis label formatter
|
|
93
|
+
* @param {Function} [props.xAxisTickFormatter] - Custom X-axis label formatter
|
|
94
|
+
* @param {boolean} [props.showTooltip] - Show/hide tooltip
|
|
95
|
+
* @param {boolean|object} [props.tooltipCursor] - Tooltip cursor style
|
|
96
|
+
* @param {boolean} [props.hideTooltipLabel] - Hide/show tooltip label
|
|
97
|
+
* @param {'line'|'dot'|'dashed'} [props.tooltipIndicator] - Tooltip indicator style
|
|
98
|
+
* @param {LegendProps} [props.legend] - Legend configuration
|
|
99
|
+
* @param {boolean} [props.showLegend] - Show/hide legend
|
|
100
|
+
* @param {string} [props.title] - Chart title
|
|
101
|
+
* @param {TitleProps} [props.titleProps] - Title styling
|
|
102
|
+
* @param {string} [props.subtitle] - Chart subtitle
|
|
103
|
+
* @param {SubTitleProps} [props.subtitleProps] - Subtitle styling
|
|
104
|
+
* @param {string} [props.className] - Container CSS class
|
|
105
|
+
* @param {Function} [props.onBarClick] - Click handler callback
|
|
106
|
+
* @param {number} [props.animationDuration] - Animation duration in ms
|
|
107
|
+
* @param {'ease'|'ease-in'|'ease-out'|'ease-in-out'|'linear'} [props.animationEasing] - Animation easing
|
|
108
|
+
* @param {boolean} [props.accessibilityLayer] - Enable accessibility features
|
|
109
|
+
* @returns {React.ReactElement} Rendered horizontal bar chart
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* const data = [
|
|
113
|
+
* { category: 'Category A', value: 120 },
|
|
114
|
+
* { category: 'Category B', value: 200 }
|
|
115
|
+
* ];
|
|
116
|
+
* const config = {
|
|
117
|
+
* value: { label: 'Value', color: '#3b82f6' }
|
|
118
|
+
* };
|
|
119
|
+
*
|
|
120
|
+
* return (
|
|
121
|
+
* <HorizontalBarChart
|
|
122
|
+
* data={data}
|
|
123
|
+
* dataKeys={['value']}
|
|
124
|
+
* xAxisKey="category"
|
|
125
|
+
* config={config}
|
|
126
|
+
* title="Sales by Category"
|
|
127
|
+
* />
|
|
128
|
+
* );
|
|
129
|
+
*/
|
|
37
130
|
declare const HorizontalBarChart: React.FC<HorizontalBarChartProps>;
|
|
38
131
|
export default HorizontalBarChart;
|
|
@@ -1,9 +1,53 @@
|
|
|
1
1
|
import { type ChartConfig } from '@/shadcn-components/Charts/Chart';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { LegendProps, MarginProps, SubTitleProps, TitleProps } from '../types/types';
|
|
4
|
+
/**
|
|
5
|
+
* Data object for VerticalBarChart
|
|
6
|
+
* @typedef {Object} VerticalBarChartData
|
|
7
|
+
* @property {string|number} [key] - Dynamic data properties
|
|
8
|
+
*/
|
|
4
9
|
export interface VerticalBarChartData {
|
|
5
10
|
[key: string]: string | number;
|
|
6
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Props for the VerticalBarChart component
|
|
14
|
+
* @typedef {Object} VerticalBarChartProps
|
|
15
|
+
* @property {VerticalBarChartData[]} data - Array of data objects to display
|
|
16
|
+
* @property {string[]} dataKeys - Array of keys from data objects to visualize as bars
|
|
17
|
+
* @property {string} xAxisKey - The key to use for X-axis (category) labels
|
|
18
|
+
* @property {ChartConfig} config - Chart configuration with color mappings for data keys
|
|
19
|
+
* @property {number} [height=400] - Chart height in pixels
|
|
20
|
+
* @property {MarginProps} [margin={top: 20, right: 30, bottom: 20, left: 30}] - Chart margins
|
|
21
|
+
* @property {number} [barSize] - Width of each bar in pixels
|
|
22
|
+
* @property {number} [barGap=4] - Gap between bars in pixels
|
|
23
|
+
* @property {number|string} [barCategoryGap='10%'] - Gap between bar groups (pixels or percentage)
|
|
24
|
+
* @property {number|number[]} [radius=4] - Border radius for bars (single value or [top-left, top-right, bottom-right, bottom-left])
|
|
25
|
+
* @property {string} [stackId] - ID for stacking multiple bars together
|
|
26
|
+
* @property {boolean} [showGrid=true] - Whether to show the cartesian grid
|
|
27
|
+
* @property {string|number} [gridStrokeDasharray='3 3'] - Grid line dash pattern
|
|
28
|
+
* @property {Function} [xAxisTickFormatter] - Function to format X-axis tick labels
|
|
29
|
+
* @property {Function} [yAxisTickFormatter] - Function to format Y-axis tick labels
|
|
30
|
+
* @property {boolean} [showLabels=false] - Whether to show value labels on bars
|
|
31
|
+
* @property {'top'|'bottom'|'left'|'right'|'inside'|'outside'|'insideLeft'|'insideRight'|'insideTop'|'insideBottom'|'center'} [labelPosition='top'] - Position of bar labels
|
|
32
|
+
* @property {Function} [labelFormatter] - Function to format label values
|
|
33
|
+
* @property {boolean} [showTooltip=true] - Whether to show tooltip on hover
|
|
34
|
+
* @property {boolean|object} [tooltipCursor=false] - Tooltip cursor appearance
|
|
35
|
+
* @property {boolean} [hideTooltipLabel=false] - Whether to hide the label in tooltip
|
|
36
|
+
* @property {'line'|'dot'|'dashed'} [tooltipIndicator='dashed'] - Tooltip indicator style
|
|
37
|
+
* @property {LegendProps} [legend] - Legend configuration props
|
|
38
|
+
* @property {boolean} [showLegend=false] - Whether to display the legend
|
|
39
|
+
* @property {string} [title] - Chart title text
|
|
40
|
+
* @property {TitleProps} [titleProps={variant: 'h3', className: ''}] - Title styling props
|
|
41
|
+
* @property {string} [subtitle] - Chart subtitle text
|
|
42
|
+
* @property {SubTitleProps} [subtitleProps={variant: 'muted', className: ''}] - Subtitle styling props
|
|
43
|
+
* @property {string} [className] - CSS class for the container
|
|
44
|
+
* @property {boolean} [activeBar=false] - Enable/disable active bar highlighting
|
|
45
|
+
* @property {number} [activeBarIndex] - Index of the initially active bar
|
|
46
|
+
* @property {Function} [onBarClick] - Callback function when a bar is clicked
|
|
47
|
+
* @property {number} [animationDuration=750] - Duration of animations in milliseconds
|
|
48
|
+
* @property {'ease'|'ease-in'|'ease-out'|'ease-in-out'|'linear'} [animationEasing='ease-in-out'] - Easing function for animations
|
|
49
|
+
* @property {boolean} [accessibilityLayer=true] - Enable accessibility features
|
|
50
|
+
*/
|
|
7
51
|
export interface VerticalBarChartProps {
|
|
8
52
|
data: VerticalBarChartData[];
|
|
9
53
|
dataKeys: string[];
|
|
@@ -41,5 +85,71 @@ export interface VerticalBarChartProps {
|
|
|
41
85
|
animationEasing?: 'ease' | 'ease-in' | 'ease-out' | 'ease-in-out' | 'linear';
|
|
42
86
|
accessibilityLayer?: boolean;
|
|
43
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
* VerticalBarChart Component
|
|
90
|
+
* Displays data as vertical bars with comprehensive customization for grid, labels, tooltips, legends, and animations.
|
|
91
|
+
* Supports active bar highlighting with state management for user interaction.
|
|
92
|
+
*
|
|
93
|
+
* @component
|
|
94
|
+
* @param {VerticalBarChartProps} props - The component props
|
|
95
|
+
* @param {VerticalBarChartData[]} props.data - Array of data objects to display
|
|
96
|
+
* @param {string[]} props.dataKeys - Keys from data objects to visualize as bars
|
|
97
|
+
* @param {string} props.xAxisKey - The key for X-axis category labels
|
|
98
|
+
* @param {ChartConfig} props.config - Chart color and display configuration
|
|
99
|
+
* @param {number} [props.height] - Chart height in pixels
|
|
100
|
+
* @param {MarginProps} [props.margin] - Chart margin spacing
|
|
101
|
+
* @param {number} [props.barSize] - Width of each bar in pixels
|
|
102
|
+
* @param {number} [props.barGap] - Spacing between adjacent bars
|
|
103
|
+
* @param {number|string} [props.barCategoryGap] - Spacing between bar groups
|
|
104
|
+
* @param {number|number[]} [props.radius] - Border radius for bar corners
|
|
105
|
+
* @param {string} [props.stackId] - ID for stacked bars
|
|
106
|
+
* @param {boolean} [props.showGrid] - Show/hide background grid
|
|
107
|
+
* @param {string|number} [props.gridStrokeDasharray] - Grid line dash pattern
|
|
108
|
+
* @param {Function} [props.xAxisTickFormatter] - Custom X-axis label formatter
|
|
109
|
+
* @param {Function} [props.yAxisTickFormatter] - Custom Y-axis label formatter
|
|
110
|
+
* @param {boolean} [props.showLabels] - Show/hide value labels on bars
|
|
111
|
+
* @param {string} [props.labelPosition] - Label position relative to bars
|
|
112
|
+
* @param {Function} [props.labelFormatter] - Custom label value formatter
|
|
113
|
+
* @param {boolean} [props.showTooltip] - Show/hide tooltip
|
|
114
|
+
* @param {boolean|object} [props.tooltipCursor] - Tooltip cursor style
|
|
115
|
+
* @param {boolean} [props.hideTooltipLabel] - Hide/show tooltip label
|
|
116
|
+
* @param {'line'|'dot'|'dashed'} [props.tooltipIndicator] - Tooltip indicator style
|
|
117
|
+
* @param {LegendProps} [props.legend] - Legend configuration
|
|
118
|
+
* @param {boolean} [props.showLegend] - Show/hide legend
|
|
119
|
+
* @param {string} [props.title] - Chart title
|
|
120
|
+
* @param {TitleProps} [props.titleProps] - Title styling
|
|
121
|
+
* @param {string} [props.subtitle] - Chart subtitle
|
|
122
|
+
* @param {SubTitleProps} [props.subtitleProps] - Subtitle styling
|
|
123
|
+
* @param {string} [props.className] - Container CSS class
|
|
124
|
+
* @param {boolean} [props.activeBar] - Enable active bar highlighting
|
|
125
|
+
* @param {number} [props.activeBarIndex] - Initial active bar index
|
|
126
|
+
* @param {Function} [props.onBarClick] - Click handler callback
|
|
127
|
+
* @param {number} [props.animationDuration] - Animation duration in ms
|
|
128
|
+
* @param {'ease'|'ease-in'|'ease-out'|'ease-in-out'|'linear'} [props.animationEasing] - Animation easing
|
|
129
|
+
* @param {boolean} [props.accessibilityLayer] - Enable accessibility features
|
|
130
|
+
* @returns {React.ReactElement} Rendered vertical bar chart
|
|
131
|
+
*
|
|
132
|
+
* @example
|
|
133
|
+
* const data = [
|
|
134
|
+
* { month: 'Jan', sales: 400, revenue: 2400 },
|
|
135
|
+
* { month: 'Feb', sales: 300, revenue: 1398 }
|
|
136
|
+
* ];
|
|
137
|
+
* const config = {
|
|
138
|
+
* sales: { label: 'Sales', color: '#3b82f6' },
|
|
139
|
+
* revenue: { label: 'Revenue', color: '#10b981' }
|
|
140
|
+
* };
|
|
141
|
+
*
|
|
142
|
+
* return (
|
|
143
|
+
* <VerticalBarChart
|
|
144
|
+
* data={data}
|
|
145
|
+
* dataKeys={['sales', 'revenue']}
|
|
146
|
+
* xAxisKey="month"
|
|
147
|
+
* config={config}
|
|
148
|
+
* title="Monthly Sales & Revenue"
|
|
149
|
+
* showLabels={true}
|
|
150
|
+
* activeBar={true}
|
|
151
|
+
* />
|
|
152
|
+
* );
|
|
153
|
+
*/
|
|
44
154
|
declare const VerticalBarChart: React.FC<VerticalBarChartProps>;
|
|
45
155
|
export default VerticalBarChart;
|
|
@@ -1,6 +1,32 @@
|
|
|
1
1
|
import { type ChartConfig } from '@/shadcn-components/Charts/Chart';
|
|
2
2
|
import { CurveType } from 'recharts/types/shape/Curve';
|
|
3
3
|
import { AxisLabelProps, BaseAxisProps, CartesianGridProps, LegendProps, MarginProps, SubTitleProps, TitleProps } from '../types/types';
|
|
4
|
+
/**
|
|
5
|
+
* Props for the LineChart component
|
|
6
|
+
* @typedef {Object} LineChartProps
|
|
7
|
+
* @property {string} [title='Line Chart'] - Chart title text
|
|
8
|
+
* @property {boolean} [showSubtitle=false] - Whether to display subtitle
|
|
9
|
+
* @property {string} [subTitle=''] - Chart subtitle text
|
|
10
|
+
* @property {TitleProps} [titleProps={variant: 'large'}] - Title styling props
|
|
11
|
+
* @property {SubTitleProps} [subTitleProps={variant: 'small'}] - Subtitle styling props
|
|
12
|
+
* @property {ChartConfig} config - Chart configuration with color mappings for data keys
|
|
13
|
+
* @property {number} [width=700] - Chart width in pixels
|
|
14
|
+
* @property {number} [height=500] - Chart height in pixels
|
|
15
|
+
* @property {string} dataKey - The key in data objects to use for X-axis values
|
|
16
|
+
* @property {any[]} data - Array of data objects to display
|
|
17
|
+
* @property {LineItem[]} lines - Array of line configurations with curve types and colors
|
|
18
|
+
* @property {boolean} [showToolTip=true] - Whether to show tooltip on hover
|
|
19
|
+
* @property {boolean} [showLegend=true] - Whether to display the legend
|
|
20
|
+
* @property {CartesianGridProps} [cartesianGrid={showCartesianGrid: false}] - Grid configuration
|
|
21
|
+
* @property {AxisLabelProps} [axisLabelProps] - X and Y axis label configuration
|
|
22
|
+
* @property {BaseAxisProps} [baseAxisProps] - Base axis customization props
|
|
23
|
+
* @property {LegendProps} [legendSx] - Legend styling props
|
|
24
|
+
* @property {string} [className] - CSS class for the container
|
|
25
|
+
* @property {MarginProps} [margin={top: 20, right: 30, bottom: 20, left: 30}] - Chart margins
|
|
26
|
+
* @property {boolean} [hideTooltipLabel=false] - Whether to hide the label in tooltip
|
|
27
|
+
* @property {'line'|'dot'|'dashed'} [tooltipIndicator='line'] - Tooltip indicator style
|
|
28
|
+
* @property {boolean} [accessibilityLayer=true] - Enable accessibility features
|
|
29
|
+
*/
|
|
4
30
|
export type LineChartProps = {
|
|
5
31
|
title?: string;
|
|
6
32
|
showSubtitle?: boolean;
|
|
@@ -25,11 +51,74 @@ export type LineChartProps = {
|
|
|
25
51
|
tooltipIndicator?: 'line' | 'dot' | 'dashed';
|
|
26
52
|
accessibilityLayer?: boolean;
|
|
27
53
|
};
|
|
54
|
+
/**
|
|
55
|
+
* Configuration for a single line in the LineChart
|
|
56
|
+
* @typedef {Object} LineItem
|
|
57
|
+
* @property {CurveType} type - Curve type for the line ('linear', 'monotone', 'natural', 'step', 'stepBefore', 'stepAfter', 'basisOpen', 'basis', 'basisClosed')
|
|
58
|
+
* @property {string} dataKey - The key in data objects to use for Y-axis values
|
|
59
|
+
* @property {string} stroke - Line color (CSS color value)
|
|
60
|
+
* @property {any} [activeDot] - Configuration for the active dot on hover
|
|
61
|
+
*/
|
|
28
62
|
type LineItem = {
|
|
29
63
|
type: CurveType;
|
|
30
64
|
dataKey: string;
|
|
31
65
|
stroke: string;
|
|
32
66
|
activeDot?: any;
|
|
33
67
|
};
|
|
68
|
+
/**
|
|
69
|
+
* LineChart Component
|
|
70
|
+
* Displays one or more lines with customizable curve types, colors, and interactive features.
|
|
71
|
+
* Supports grid, tooltips, legends, and labeled axes.
|
|
72
|
+
*
|
|
73
|
+
* @component
|
|
74
|
+
* @param {LineChartProps} props - The component props
|
|
75
|
+
* @param {string} [props.title] - Chart title
|
|
76
|
+
* @param {boolean} [props.showSubtitle] - Show/hide subtitle
|
|
77
|
+
* @param {string} [props.subTitle] - Chart subtitle
|
|
78
|
+
* @param {TitleProps} [props.titleProps] - Title styling
|
|
79
|
+
* @param {SubTitleProps} [props.subTitleProps] - Subtitle styling
|
|
80
|
+
* @param {ChartConfig} props.config - Chart color configuration
|
|
81
|
+
* @param {number} [props.width] - Chart width in pixels
|
|
82
|
+
* @param {number} [props.height] - Chart height in pixels
|
|
83
|
+
* @param {string} props.dataKey - X-axis data key
|
|
84
|
+
* @param {any[]} props.data - Chart data array
|
|
85
|
+
* @param {LineItem[]} props.lines - Line configurations
|
|
86
|
+
* @param {boolean} [props.showToolTip] - Show/hide tooltip
|
|
87
|
+
* @param {boolean} [props.showLegend] - Show/hide legend
|
|
88
|
+
* @param {CartesianGridProps} [props.cartesianGrid] - Grid settings
|
|
89
|
+
* @param {AxisLabelProps} [props.axisLabelProps] - Axis labels
|
|
90
|
+
* @param {BaseAxisProps} [props.baseAxisProps] - Axis customization
|
|
91
|
+
* @param {LegendProps} [props.legendSx] - Legend styling
|
|
92
|
+
* @param {string} [props.className] - Container CSS class
|
|
93
|
+
* @param {MarginProps} [props.margin] - Chart margins
|
|
94
|
+
* @param {boolean} [props.hideTooltipLabel] - Hide tooltip label
|
|
95
|
+
* @param {'line'|'dot'|'dashed'} [props.tooltipIndicator] - Tooltip indicator style
|
|
96
|
+
* @param {boolean} [props.accessibilityLayer] - Enable accessibility features
|
|
97
|
+
* @returns {React.ReactElement} Rendered line chart
|
|
98
|
+
*
|
|
99
|
+
* @example
|
|
100
|
+
* const data = [
|
|
101
|
+
* { month: 'Jan', sales: 400, revenue: 2400 },
|
|
102
|
+
* { month: 'Feb', sales: 300, revenue: 1398 }
|
|
103
|
+
* ];
|
|
104
|
+
* const config = {
|
|
105
|
+
* sales: { label: 'Sales', color: '#3b82f6' },
|
|
106
|
+
* revenue: { label: 'Revenue', color: '#10b981' }
|
|
107
|
+
* };
|
|
108
|
+
* const lines = [
|
|
109
|
+
* { dataKey: 'sales', stroke: '#3b82f6', type: 'monotone' },
|
|
110
|
+
* { dataKey: 'revenue', stroke: '#10b981', type: 'monotone' }
|
|
111
|
+
* ];
|
|
112
|
+
*
|
|
113
|
+
* return (
|
|
114
|
+
* <LineChart
|
|
115
|
+
* data={data}
|
|
116
|
+
* dataKey="month"
|
|
117
|
+
* lines={lines}
|
|
118
|
+
* config={config}
|
|
119
|
+
* title="Sales & Revenue Trend"
|
|
120
|
+
* />
|
|
121
|
+
* );
|
|
122
|
+
*/
|
|
34
123
|
export declare const LineChart: ({ title, showSubtitle, subTitle, subTitleProps, titleProps, config, width, height, margin, dataKey, data, lines, showToolTip, showLegend, cartesianGrid, axisLabelProps, baseAxisProps, legendSx, className, hideTooltipLabel, tooltipIndicator, accessibilityLayer, }: LineChartProps) => import("react/jsx-runtime").JSX.Element;
|
|
35
124
|
export {};
|