react-page-scroll-progress-bar
Advanced tools
Comparing version 2.0.2 to 3.0.1
@@ -1,2 +0,11 @@ | ||
import PageScrollProgressBar from "./PageScrollProgressBar/PageScrollProgressBar"; | ||
interface Props { | ||
container?: HTMLDivElement | HTMLElement | null; | ||
color?: string; | ||
bgColor?: string; | ||
height?: string; | ||
top?: string; | ||
} | ||
declare const PageScrollProgressBar: ({ container, color, bgColor, height, top }: Props) => JSX.Element; | ||
export default PageScrollProgressBar; | ||
//# sourceMappingURL=index.d.ts.map |
@@ -1,2 +0,66 @@ | ||
import PageScrollProgressBar from "./PageScrollProgressBar/PageScrollProgressBar"; | ||
export default PageScrollProgressBar; | ||
import "./index.css"; | ||
import {jsx as $hgUW1$jsx} from "react/jsx-runtime"; | ||
import {useState as $hgUW1$useState, useMemo as $hgUW1$useMemo, useEffect as $hgUW1$useEffect} from "react"; | ||
function $parcel$interopDefault(a) { | ||
return a && a.__esModule ? a.default : a; | ||
} | ||
function $parcel$export(e, n, v, s) { | ||
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true}); | ||
} | ||
var $0de4af030c812050$exports = {}; | ||
$parcel$export($0de4af030c812050$exports, "pageScroll", () => $0de4af030c812050$export$b17a96fcfd4ef908, (v) => $0de4af030c812050$export$b17a96fcfd4ef908 = v); | ||
var $0de4af030c812050$export$b17a96fcfd4ef908; | ||
$0de4af030c812050$export$b17a96fcfd4ef908 = `b5_jqa_pageScroll`; | ||
const $dc0014a2d0f0ac28$export$b5450e75fc4994df = ({ container: container , color: color , bgColor: bgColor , height: height , top: top })=>{ | ||
const [scrollPosition, setscrollPosition] = (0, $hgUW1$useState)(0); | ||
const cssStyles = (0, $hgUW1$useMemo)(()=>({ | ||
"--page-scroll-bar-color": color || "#eb5757", | ||
"--page-scroll-background-color": bgColor || "#f2f2f2", | ||
"--page-scroll-height": height || "0.25rem", | ||
"--top": top || "0" | ||
}), [ | ||
color, | ||
bgColor, | ||
height, | ||
top | ||
]); | ||
const handleScroll = ()=>{ | ||
const scrollYHeight = window.scrollY; | ||
const viewPortHeight = document.documentElement.clientHeight; | ||
let appHeight; | ||
if (container) appHeight = container?.clientHeight; | ||
else appHeight = document.body.clientHeight; | ||
const percent = scrollYHeight * 100 / (appHeight - viewPortHeight); | ||
setscrollPosition(percent); | ||
}; | ||
(0, $hgUW1$useEffect)(()=>{ | ||
window.addEventListener("scroll", handleScroll, { | ||
passive: true | ||
}); | ||
return ()=>{ | ||
window.removeEventListener("scroll", handleScroll); | ||
}; | ||
}, []); | ||
return /*#__PURE__*/ (0, $hgUW1$jsx)("progress", { | ||
className: (0, (/*@__PURE__*/$parcel$interopDefault($0de4af030c812050$exports))).pageScroll, | ||
style: cssStyles, | ||
id: "top-scroll-bar", | ||
"data-testid": "top-scroll-bar", | ||
value: scrollPosition, | ||
max: 100 | ||
}); | ||
}; | ||
var $dc0014a2d0f0ac28$export$2e2bcd8739ae039 = $dc0014a2d0f0ac28$export$b5450e75fc4994df; | ||
var $149c1bd638913645$export$2e2bcd8739ae039 = (0, $dc0014a2d0f0ac28$export$2e2bcd8739ae039); | ||
export {$149c1bd638913645$export$2e2bcd8739ae039 as default}; | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "react-page-scroll-progress-bar", | ||
"version": "2.0.2", | ||
"version": "3.0.1", | ||
"description": "Page scroll progress bar", | ||
"main": "dist/", | ||
"source": "./src/index.ts", | ||
"module": "./dist/index.js", | ||
"types": "./dist/index.d.ts", | ||
"scripts": { | ||
"build": "tsc" | ||
"build": "parcel build" | ||
}, | ||
@@ -17,11 +18,12 @@ "author": "Anoop Jadhav @anoop-jadhav-ui <anoopjadhav@gmail.com>", | ||
"peerDependencies": { | ||
"react": "^18.2.0", | ||
"react-dom": "^18.2.0" | ||
"react": "^18.2.0" | ||
}, | ||
"devDependencies": { | ||
"@parcel/packager-ts": "2.7.0", | ||
"@parcel/transformer-typescript-types": "2.7.0", | ||
"@types/react": "^18.0.18", | ||
"@types/react-dom": "^18.0.6", | ||
"parcel": "^2.7.0", | ||
"react": "^18.2.0", | ||
"react-dom": "^18.2.0", | ||
"tsc-hooks": "^1.1.1", | ||
"typescript": "^4.8.3" | ||
@@ -28,0 +30,0 @@ }, |
11563
1
86
8