1 | "use strict";
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.default = void 0;
|
7 |
|
8 | const scroll = (size, {
|
9 | offset,
|
10 | max
|
11 | }) => {
|
12 | let start = 0;
|
13 | let index = Math.min(offset, size);
|
14 | const halfScreen = max / 2;
|
15 |
|
16 | if (index <= halfScreen) {
|
17 | start = 0;
|
18 | } else {
|
19 | if (size >= max) {
|
20 | start = Math.min(index - halfScreen - 1, size - max);
|
21 | }
|
22 |
|
23 | index = Math.min(index - start, size);
|
24 | }
|
25 |
|
26 | return {
|
27 | end: Math.min(size, start + max),
|
28 | index,
|
29 | start
|
30 | };
|
31 | };
|
32 |
|
33 | var _default = scroll;
|
34 | exports.default = _default; |
\ | No newline at end of file |