diff --git a/package.json b/package.json index 8138c12..0bd1d78 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "react-apexcharts": "^1.3.9", "react-big-calendar": "0.33.2", "react-bootstrap-sweetalert": "5.2.0", + "react-custom-scrollbars": "^4.2.1", "react-datetime": "3.0.4", "react-dom": "17.0.2", "react-github-btn": "^1.2.1", diff --git a/src/components/Scrollbar/Scrollbar.js b/src/components/Scrollbar/Scrollbar.js new file mode 100644 index 0000000..d957fca --- /dev/null +++ b/src/components/Scrollbar/Scrollbar.js @@ -0,0 +1,91 @@ +import React from "react"; + +export const renderTrack = ({ style, ...props }) => { + const trackStyle = { + position: "absolute", + maxWidth: "100%", + width: 6, + transition: "opacity 200ms ease 0s", + opacity: 0, + bottom: 2, + top: 2, + borderRadius: 3, + right: 0, + }; + return
; +}; +export const renderTrackRTL = ({ style, ...props }) => { + const trackStyle = { + position: "absolute", + width: 6, + transition: "opacity 200ms ease 0s", + opacity: 0, + bottom: 2, + top: 2, + borderRadius: 3, + right: "unset", + left: 0, + }; + return
; +}; +export const renderThumbDark = ({ style, ...props }) => { + const thumbStyle = { + borderRadius: 15, + background: "rgba(222, 222, 222, .1)", + }; + return
; +}; +export const renderThumbLight = ({ style, ...props }) => { + const thumbStyle = { + borderRadius: 15, + background: "rgba(48, 48, 48, .1)", + }; + return
; +}; +export const renderView = ({ style, ...props }) => { + const viewStyle = { + marginRight: -22, + }; + return
; +}; +export const renderViewRTL = ({ style, ...props }) => { + const viewStyle = { + marginRight: "unset", + marginLeft: -15, + }; + return
; +}; + +export const kanbanRenderTrack = ({ style, ...props }) => { + const trackStyle = { + width: 6, + transition: "opacity 200ms ease 0s", + opacity: 0, + bottom: 2, + top: 2, + borderRadius: 3, + right: 0, + }; + return
; +}; +export const kanbanRenderThumbDark = ({ style, ...props }) => { + const thumbStyle = { + borderRadius: 15, + background: "rgba(222, 222, 222, .1)", + }; + return
; +}; +export const kanbanRenderThumbLight = ({ style, ...props }) => { + const thumbStyle = { + borderRadius: 15, + background: "rgba(48, 48, 48, .1)", + }; + return
; +}; +export const kanbanRenderView = ({ style, ...props }) => { + const viewStyle = { + position: "relative", + marginRight: -15, + }; + return
; +}; \ No newline at end of file diff --git a/src/components/Sidebar/Sidebar.js b/src/components/Sidebar/Sidebar.js index 305f1af..922ad7e 100644 --- a/src/components/Sidebar/Sidebar.js +++ b/src/components/Sidebar/Sidebar.js @@ -23,6 +23,17 @@ import PropTypes from "prop-types"; import React from "react"; import { NavLink, useLocation } from "react-router-dom"; +import { Scrollbars } from "react-custom-scrollbars"; + +import { + renderThumbDark, + renderThumbLight, + renderTrack, + renderTrackRTL, + renderView, + renderViewRTL, +} from "components/Scrollbar/Scrollbar"; + // FUNCTIONS function Sidebar(props) { @@ -58,16 +69,17 @@ function Sidebar(props) { <> + py="12px" + > {document.documentElement.dir === "rtl" ? prop.rtlName : prop.name} @@ -80,9 +92,9 @@ function Sidebar(props) { {activeRoute(prop.layout + prop.path) === "active" ? ( ) : ( ) : (