@xylabs/react-scroll-to-top 2.18.3 → 2.19.1
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/ScrollToTop.js +15 -0
- package/dist/cjs/ScrollToTop.js.map +1 -0
- package/dist/cjs/ScrollToTopButton.js +23 -0
- package/dist/cjs/ScrollToTopButton.js.map +1 -0
- package/dist/cjs/index.js +6 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/esm/ScrollToTop.js +11 -0
- package/dist/esm/ScrollToTop.js.map +1 -0
- package/dist/esm/ScrollToTopButton.js +17 -0
- package/dist/esm/ScrollToTopButton.js.map +1 -0
- package/dist/{index.d.mts → esm/index.js} +1 -1
- package/dist/esm/index.js.map +1 -0
- package/dist/types/ScrollToTop.d.ts.map +1 -0
- package/dist/types/ScrollToTopButton.d.ts.map +1 -0
- package/dist/types/index.d.ts.map +1 -0
- package/package.json +13 -23
- package/dist/ScrollToTop.d.mts +0 -2
- package/dist/ScrollToTop.d.mts.map +0 -1
- package/dist/ScrollToTop.d.ts.map +0 -1
- package/dist/ScrollToTopButton.d.mts +0 -7
- package/dist/ScrollToTopButton.d.mts.map +0 -1
- package/dist/ScrollToTopButton.d.ts.map +0 -1
- package/dist/index.d.mts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -6553
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -6538
- package/dist/index.mjs.map +0 -1
- /package/dist/{ScrollToTop.d.ts → types/ScrollToTop.d.ts} +0 -0
- /package/dist/{ScrollToTopButton.d.ts → types/ScrollToTopButton.d.ts} +0 -0
- /package/dist/{index.d.ts → types/index.d.ts} +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ScrollToTop = void 0;
|
|
4
|
+
const react_1 = require("react");
|
|
5
|
+
const react_router_dom_1 = require("react-router-dom");
|
|
6
|
+
// The point of this component it to return to the top of the page on any router navigate
|
|
7
|
+
const ScrollToTop = () => {
|
|
8
|
+
const { pathname } = (0, react_router_dom_1.useLocation)();
|
|
9
|
+
(0, react_1.useEffect)(() => {
|
|
10
|
+
window.scrollTo(0, 0);
|
|
11
|
+
}, [pathname]);
|
|
12
|
+
return null;
|
|
13
|
+
};
|
|
14
|
+
exports.ScrollToTop = ScrollToTop;
|
|
15
|
+
//# sourceMappingURL=ScrollToTop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollToTop.js","sourceRoot":"","sources":["../../src/ScrollToTop.tsx"],"names":[],"mappings":";;;AAAA,iCAAiC;AACjC,uDAA8C;AAE9C,yFAAyF;AAElF,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,8BAAW,GAAE,CAAA;IAClC,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACvB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAPY,QAAA,WAAW,eAOvB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ScrollToTopButton = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
|
+
const material_1 = require("@mui/material");
|
|
7
|
+
const ScrollToTopButton = (_a) => {
|
|
8
|
+
var { children, anchorId } = _a, props = tslib_1.__rest(_a, ["children", "anchorId"]);
|
|
9
|
+
const trigger = (0, material_1.useScrollTrigger)({
|
|
10
|
+
disableHysteresis: true,
|
|
11
|
+
threshold: 100,
|
|
12
|
+
});
|
|
13
|
+
const handleClick = (event) => {
|
|
14
|
+
const anchor = (event.target.ownerDocument || document).querySelector(`#${anchorId}`);
|
|
15
|
+
if (anchor) {
|
|
16
|
+
anchor.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
const theme = (0, material_1.useTheme)();
|
|
20
|
+
return ((0, jsx_runtime_1.jsx)(material_1.Zoom, Object.assign({ in: trigger }, props, { children: (0, jsx_runtime_1.jsx)(material_1.Box, { zIndex: 10, position: "fixed", right: theme.spacing(2), bottom: theme.spacing(2), onClick: handleClick, role: "presentation", children: children }) })));
|
|
21
|
+
};
|
|
22
|
+
exports.ScrollToTopButton = ScrollToTopButton;
|
|
23
|
+
//# sourceMappingURL=ScrollToTopButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollToTopButton.js","sourceRoot":"","sources":["../../src/ScrollToTopButton.tsx"],"names":[],"mappings":";;;;;AAAA,4CAAgF;AAOzE,MAAM,iBAAiB,GAAqC,CAAC,EAAgC,EAAE,EAAE;QAApC,EAAE,QAAQ,EAAE,QAAQ,OAAY,EAAP,KAAK,sBAA9B,wBAAgC,CAAF;IAChG,MAAM,OAAO,GAAG,IAAA,2BAAgB,EAAC;QAC/B,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,GAAG;KACf,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,CAAC,KAAuC,EAAE,EAAE;QAC9D,MAAM,MAAM,GAAG,CAAE,KAAK,CAAC,MAAyB,CAAC,aAAa,IAAI,QAAQ,CAAC,CAAC,aAAa,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAA;QAEzG,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;SAC/D;IACH,CAAC,CAAA;IAED,MAAM,KAAK,GAAG,IAAA,mBAAQ,GAAE,CAAA;IAExB,OAAO,CACL,uBAAC,eAAI,kBAAC,EAAE,EAAE,OAAO,IAAM,KAAK,cAC1B,uBAAC,cAAG,IAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAC,OAAO,EAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAC,cAAc,YAC3H,QAAQ,GACL,IACD,CACR,CAAA;AACH,CAAC,CAAA;AAvBY,QAAA,iBAAiB,qBAuB7B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./ScrollToTop"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./ScrollToTopButton"), exports);
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAA6B;AAC7B,8DAAmC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useEffect } from 'react';
|
|
2
|
+
import { useLocation } from 'react-router-dom';
|
|
3
|
+
// The point of this component it to return to the top of the page on any router navigate
|
|
4
|
+
export const ScrollToTop = () => {
|
|
5
|
+
const { pathname } = useLocation();
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
window.scrollTo(0, 0);
|
|
8
|
+
}, [pathname]);
|
|
9
|
+
return null;
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=ScrollToTop.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollToTop.js","sourceRoot":"","sources":["../../src/ScrollToTop.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,yFAAyF;AAEzF,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAA;IAClC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACvB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Box, useScrollTrigger, useTheme, Zoom } from '@mui/material';
|
|
3
|
+
export const ScrollToTopButton = ({ children, anchorId, ...props }) => {
|
|
4
|
+
const trigger = useScrollTrigger({
|
|
5
|
+
disableHysteresis: true,
|
|
6
|
+
threshold: 100,
|
|
7
|
+
});
|
|
8
|
+
const handleClick = (event) => {
|
|
9
|
+
const anchor = (event.target.ownerDocument || document).querySelector(`#${anchorId}`);
|
|
10
|
+
if (anchor) {
|
|
11
|
+
anchor.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
const theme = useTheme();
|
|
15
|
+
return (_jsx(Zoom, { in: trigger, ...props, children: _jsx(Box, { zIndex: 10, position: "fixed", right: theme.spacing(2), bottom: theme.spacing(2), onClick: handleClick, role: "presentation", children: children }) }));
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=ScrollToTopButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollToTopButton.js","sourceRoot":"","sources":["../../src/ScrollToTopButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,gBAAgB,EAAE,QAAQ,EAAE,IAAI,EAAa,MAAM,eAAe,CAAA;AAOhF,MAAM,CAAC,MAAM,iBAAiB,GAAqC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IACtG,MAAM,OAAO,GAAG,gBAAgB,CAAC;QAC/B,iBAAiB,EAAE,IAAI;QACvB,SAAS,EAAE,GAAG;KACf,CAAC,CAAA;IAEF,MAAM,WAAW,GAAG,CAAC,KAAuC,EAAE,EAAE;QAC9D,MAAM,MAAM,GAAG,CAAE,KAAK,CAAC,MAAyB,CAAC,aAAa,IAAI,QAAQ,CAAC,CAAC,aAAa,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAA;QAEzG,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;SAC/D;IACH,CAAC,CAAA;IAED,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,OAAO,CACL,KAAC,IAAI,IAAC,EAAE,EAAE,OAAO,KAAM,KAAK,YAC1B,KAAC,GAAG,IAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAC,OAAO,EAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAC,cAAc,YAC3H,QAAQ,GACL,GACD,CACR,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollToTop.d.ts","sourceRoot":"","sources":["../../src/ScrollToTop.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,YAOvB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScrollToTopButton.d.ts","sourceRoot":"","sources":["../../src/ScrollToTopButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyC,SAAS,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAuB9D,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA"}
|
package/package.json
CHANGED
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
"description": "Common React library for all XY Labs projects that use React",
|
|
16
16
|
"devDependencies": {
|
|
17
17
|
"@mui/material": "^5.14.10",
|
|
18
|
-
"@xylabs/ts-scripts-yarn3": "^
|
|
19
|
-
"@xylabs/tsconfig-react": "^
|
|
18
|
+
"@xylabs/ts-scripts-yarn3": "^2.19.12",
|
|
19
|
+
"@xylabs/tsconfig-react": "^2.19.12",
|
|
20
20
|
"react": "^18.2.0",
|
|
21
21
|
"react-dom": "^18.2.0",
|
|
22
22
|
"react-router-dom": "^6.16.0",
|
|
@@ -27,37 +27,27 @@
|
|
|
27
27
|
"react-dom": "^18",
|
|
28
28
|
"react-router-dom": "^6"
|
|
29
29
|
},
|
|
30
|
+
"browser": "dist/esm/index.js",
|
|
31
|
+
"docs": "dist/docs.json",
|
|
30
32
|
"exports": {
|
|
31
33
|
".": {
|
|
32
34
|
"node": {
|
|
33
|
-
"import":
|
|
34
|
-
|
|
35
|
-
"default": "./dist/index.mjs"
|
|
36
|
-
},
|
|
37
|
-
"require": {
|
|
38
|
-
"types": "./dist/index.d.ts",
|
|
39
|
-
"default": "./dist/index.js"
|
|
40
|
-
}
|
|
35
|
+
"import": "./dist/esm/index.js",
|
|
36
|
+
"require": "./dist/cjs/index.js"
|
|
41
37
|
},
|
|
42
38
|
"browser": {
|
|
43
|
-
"import":
|
|
44
|
-
|
|
45
|
-
"default": "./dist/index.mjs"
|
|
46
|
-
},
|
|
47
|
-
"require": {
|
|
48
|
-
"types": "./dist/index.d.ts",
|
|
49
|
-
"default": "./dist/index.js"
|
|
50
|
-
}
|
|
39
|
+
"import": "./dist/esm/index.js",
|
|
40
|
+
"require": "./dist/cjs/index.js"
|
|
51
41
|
},
|
|
52
|
-
"default": "./dist/index.
|
|
42
|
+
"default": "./dist/esm/index.js"
|
|
53
43
|
},
|
|
54
44
|
"./dist/docs.json": {
|
|
55
45
|
"default": "./dist/docs.json"
|
|
56
46
|
},
|
|
57
47
|
"./package.json": "./package.json"
|
|
58
48
|
},
|
|
59
|
-
"main": "dist/index.js",
|
|
60
|
-
"module": "dist/index.
|
|
49
|
+
"main": "dist/cjs/index.js",
|
|
50
|
+
"module": "dist/esm/index.js",
|
|
61
51
|
"homepage": "https://xylabs.com",
|
|
62
52
|
"keywords": [
|
|
63
53
|
"utility",
|
|
@@ -73,6 +63,6 @@
|
|
|
73
63
|
"url": "https://github.com/xylabs/sdk-react.git"
|
|
74
64
|
},
|
|
75
65
|
"sideEffects": false,
|
|
76
|
-
"types": "dist/index.d.ts",
|
|
77
|
-
"version": "2.
|
|
66
|
+
"types": "dist/types/index.d.ts",
|
|
67
|
+
"version": "2.19.1"
|
|
78
68
|
}
|
package/dist/ScrollToTop.d.mts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollToTop.d.ts","sourceRoot":"","sources":["../src/ScrollToTop.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,YAOvB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollToTop.d.ts","sourceRoot":"","sources":["../src/ScrollToTop.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,WAAW,YAOvB,CAAA"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { ZoomProps } from '@mui/material';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
export interface ScrollToTopButtonProps extends ZoomProps {
|
|
4
|
-
anchorId: string;
|
|
5
|
-
}
|
|
6
|
-
export declare const ScrollToTopButton: React.FC<ScrollToTopButtonProps>;
|
|
7
|
-
//# sourceMappingURL=ScrollToTopButton.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollToTopButton.d.ts","sourceRoot":"","sources":["../src/ScrollToTopButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyC,SAAS,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAuB9D,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollToTopButton.d.ts","sourceRoot":"","sources":["../src/ScrollToTopButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAyC,SAAS,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAuB9D,CAAA"}
|
package/dist/index.d.mts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA"}
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,qBAAqB,CAAA"}
|