@qoretechnologies/reqore 0.78.6-pr.715.g3e70b13 → 0.78.6-pr.715.g4e6c5cf
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/.claude/CLAUDE.md +14 -0
- package/dist/components/Accordion/index.d.ts.map +1 -1
- package/dist/components/Accordion/index.js +17 -12
- package/dist/components/Accordion/index.js.map +1 -1
- package/dist/components/Breadcrumbs/index.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/index.js +293 -34
- package/dist/components/Breadcrumbs/index.js.map +1 -1
- package/dist/components/Breadcrumbs/item.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/item.js +6 -2
- package/dist/components/Breadcrumbs/item.js.map +1 -1
- package/dist/components/Bubble/index.d.ts.map +1 -1
- package/dist/components/Bubble/index.js +10 -41
- package/dist/components/Bubble/index.js.map +1 -1
- package/dist/components/Button/index.d.ts +8 -0
- package/dist/components/Button/index.d.ts.map +1 -1
- package/dist/components/Button/index.js +78 -14
- package/dist/components/Button/index.js.map +1 -1
- package/dist/components/ButtonRail/index.d.ts.map +1 -1
- package/dist/components/ButtonRail/index.js +3 -2
- package/dist/components/ButtonRail/index.js.map +1 -1
- package/dist/components/Callout/index.d.ts +4 -3
- package/dist/components/Callout/index.d.ts.map +1 -1
- package/dist/components/Callout/index.js +40 -8
- package/dist/components/Callout/index.js.map +1 -1
- package/dist/components/Checkbox/index.d.ts.map +1 -1
- package/dist/components/Checkbox/index.js +11 -10
- package/dist/components/Checkbox/index.js.map +1 -1
- package/dist/components/Collapse/index.d.ts.map +1 -1
- package/dist/components/Collapse/index.js +7 -36
- package/dist/components/Collapse/index.js.map +1 -1
- package/dist/components/CollapsibleContent/index.d.ts.map +1 -1
- package/dist/components/CollapsibleContent/index.js +6 -38
- package/dist/components/CollapsibleContent/index.js.map +1 -1
- package/dist/components/Collection/index.js +3 -3
- package/dist/components/Collection/index.js.map +1 -1
- package/dist/components/Collection/item.d.ts.map +1 -1
- package/dist/components/Collection/item.js +3 -3
- package/dist/components/Collection/item.js.map +1 -1
- package/dist/components/Columns/column.d.ts.map +1 -1
- package/dist/components/Columns/column.js +6 -35
- package/dist/components/Columns/column.js.map +1 -1
- package/dist/components/Columns/index.d.ts.map +1 -1
- package/dist/components/Columns/index.js +3 -35
- package/dist/components/Columns/index.js.map +1 -1
- package/dist/components/Comment/index.js +8 -8
- package/dist/components/Comment/index.js.map +1 -1
- package/dist/components/CommentFeed/index.js +2 -2
- package/dist/components/CommentFeed/index.js.map +1 -1
- package/dist/components/Content/index.d.ts.map +1 -1
- package/dist/components/Content/index.js +3 -35
- package/dist/components/Content/index.js.map +1 -1
- package/dist/components/Content/wrapper.js +2 -2
- package/dist/components/Content/wrapper.js.map +1 -1
- package/dist/components/ControlGroup/index.d.ts.map +1 -1
- package/dist/components/ControlGroup/index.js +8 -4
- package/dist/components/ControlGroup/index.js.map +1 -1
- package/dist/components/ControlGroup/item.d.ts.map +1 -1
- package/dist/components/ControlGroup/item.js +35 -6
- package/dist/components/ControlGroup/item.js.map +1 -1
- package/dist/components/DataView/index.d.ts +6 -0
- package/dist/components/DataView/index.d.ts.map +1 -1
- package/dist/components/DataView/index.js +39 -66
- package/dist/components/DataView/index.js.map +1 -1
- package/dist/components/DatePicker/index.d.ts.map +1 -1
- package/dist/components/DatePicker/index.js +40 -8
- package/dist/components/DatePicker/index.js.map +1 -1
- package/dist/components/DescriptionList/index.d.ts.map +1 -1
- package/dist/components/DescriptionList/index.js +12 -40
- package/dist/components/DescriptionList/index.js.map +1 -1
- package/dist/components/Drawer/backdrop.d.ts.map +1 -1
- package/dist/components/Drawer/backdrop.js +35 -6
- package/dist/components/Drawer/backdrop.js.map +1 -1
- package/dist/components/Drawer/index.d.ts.map +1 -1
- package/dist/components/Drawer/index.js +39 -44
- package/dist/components/Drawer/index.js.map +1 -1
- package/dist/components/Dropdown/index.d.ts.map +1 -1
- package/dist/components/Dropdown/index.js +3 -1
- package/dist/components/Dropdown/index.js.map +1 -1
- package/dist/components/Dropdown/list.d.ts.map +1 -1
- package/dist/components/Dropdown/list.js +71 -5
- package/dist/components/Dropdown/list.js.map +1 -1
- package/dist/components/Effect/index.d.ts.map +1 -1
- package/dist/components/Effect/index.js +12 -6
- package/dist/components/Effect/index.js.map +1 -1
- package/dist/components/EntityRow/index.d.ts +18 -1
- package/dist/components/EntityRow/index.d.ts.map +1 -1
- package/dist/components/EntityRow/index.js +57 -13
- package/dist/components/EntityRow/index.js.map +1 -1
- package/dist/components/FadeScroller/index.d.ts.map +1 -1
- package/dist/components/FadeScroller/index.js +12 -62
- package/dist/components/FadeScroller/index.js.map +1 -1
- package/dist/components/FeatureCard/index.d.ts +7 -1
- package/dist/components/FeatureCard/index.d.ts.map +1 -1
- package/dist/components/FeatureCard/index.js +33 -10
- package/dist/components/FeatureCard/index.js.map +1 -1
- package/dist/components/Header/index.js +2 -2
- package/dist/components/Header/index.js.map +1 -1
- package/dist/components/Icon/index.d.ts.map +1 -1
- package/dist/components/Icon/index.js +21 -6
- package/dist/components/Icon/index.js.map +1 -1
- package/dist/components/IconPicker/index.js +2 -2
- package/dist/components/IconPicker/index.js.map +1 -1
- package/dist/components/Input/index.d.ts.map +1 -1
- package/dist/components/Input/index.js +11 -10
- package/dist/components/Input/index.js.map +1 -1
- package/dist/components/InputClearButton/index.d.ts.map +1 -1
- package/dist/components/InputClearButton/index.js +35 -3
- package/dist/components/InputClearButton/index.js.map +1 -1
- package/dist/components/InternalPopover/index.d.ts.map +1 -1
- package/dist/components/InternalPopover/index.js +37 -9
- package/dist/components/InternalPopover/index.js.map +1 -1
- package/dist/components/KeyboardShortcut/index.d.ts.map +1 -1
- package/dist/components/KeyboardShortcut/index.js +6 -5
- package/dist/components/KeyboardShortcut/index.js.map +1 -1
- package/dist/components/Layout/content.js +2 -2
- package/dist/components/Layout/content.js.map +1 -1
- package/dist/components/Layout/index.d.ts.map +1 -1
- package/dist/components/Layout/index.js +8 -36
- package/dist/components/Layout/index.js.map +1 -1
- package/dist/components/Link/index.d.ts.map +1 -1
- package/dist/components/Link/index.js +13 -40
- package/dist/components/Link/index.js.map +1 -1
- package/dist/components/Menu/divider.d.ts.map +1 -1
- package/dist/components/Menu/divider.js +7 -4
- package/dist/components/Menu/divider.js.map +1 -1
- package/dist/components/Menu/index.d.ts.map +1 -1
- package/dist/components/Menu/index.js +17 -11
- package/dist/components/Menu/index.js.map +1 -1
- package/dist/components/Menu/item.d.ts.map +1 -1
- package/dist/components/Menu/item.js +28 -0
- package/dist/components/Menu/item.js.map +1 -1
- package/dist/components/Menu/section.d.ts.map +1 -1
- package/dist/components/Menu/section.js +11 -6
- package/dist/components/Menu/section.js.map +1 -1
- package/dist/components/NavRail/index.d.ts.map +1 -1
- package/dist/components/NavRail/index.js +16 -6
- package/dist/components/NavRail/index.js.map +1 -1
- package/dist/components/Navbar/divider.d.ts.map +1 -1
- package/dist/components/Navbar/divider.js +35 -6
- package/dist/components/Navbar/divider.js.map +1 -1
- package/dist/components/Navbar/group.js +3 -3
- package/dist/components/Navbar/group.js.map +1 -1
- package/dist/components/Navbar/index.js +3 -3
- package/dist/components/Navbar/index.js.map +1 -1
- package/dist/components/Navbar/item.js +3 -3
- package/dist/components/Navbar/item.js.map +1 -1
- package/dist/components/Notifications/index.d.ts.map +1 -1
- package/dist/components/Notifications/index.js +6 -35
- package/dist/components/Notifications/index.js.map +1 -1
- package/dist/components/Notifications/notification.d.ts.map +1 -1
- package/dist/components/Notifications/notification.js +23 -47
- package/dist/components/Notifications/notification.js.map +1 -1
- package/dist/components/Notifications/styles.d.ts.map +1 -1
- package/dist/components/Notifications/styles.js +11 -10
- package/dist/components/Notifications/styles.js.map +1 -1
- package/dist/components/Paging/index.d.ts.map +1 -1
- package/dist/components/Paging/index.js +19 -19
- package/dist/components/Paging/index.js.map +1 -1
- package/dist/components/Panel/index.d.ts +12 -0
- package/dist/components/Panel/index.d.ts.map +1 -1
- package/dist/components/Panel/index.js +321 -44
- package/dist/components/Panel/index.js.map +1 -1
- package/dist/components/Paragraph/index.d.ts +6 -0
- package/dist/components/Paragraph/index.d.ts.map +1 -1
- package/dist/components/Paragraph/index.js +60 -11
- package/dist/components/Paragraph/index.js.map +1 -1
- package/dist/components/Popover/index.d.ts +8 -0
- package/dist/components/Popover/index.d.ts.map +1 -1
- package/dist/components/Popover/index.js +166 -18
- package/dist/components/Popover/index.js.map +1 -1
- package/dist/components/Progress/index.d.ts.map +1 -1
- package/dist/components/Progress/index.js +13 -44
- package/dist/components/Progress/index.js.map +1 -1
- package/dist/components/Rating/index.d.ts.map +1 -1
- package/dist/components/Rating/index.js +13 -39
- package/dist/components/Rating/index.js.map +1 -1
- package/dist/components/RichTextEditor/index.d.ts.map +1 -1
- package/dist/components/RichTextEditor/index.js +42 -7
- package/dist/components/RichTextEditor/index.js.map +1 -1
- package/dist/components/RowActionsMenu/index.d.ts +69 -0
- package/dist/components/RowActionsMenu/index.d.ts.map +1 -0
- package/dist/components/RowActionsMenu/index.js +170 -0
- package/dist/components/RowActionsMenu/index.js.map +1 -0
- package/dist/components/SegmentedControl/index.d.ts.map +1 -1
- package/dist/components/SegmentedControl/index.js +17 -46
- package/dist/components/SegmentedControl/index.js.map +1 -1
- package/dist/components/Select/valuePreview.js +6 -3
- package/dist/components/Select/valuePreview.js.map +1 -1
- package/dist/components/SeverityRow/index.d.ts +19 -1
- package/dist/components/SeverityRow/index.d.ts.map +1 -1
- package/dist/components/SeverityRow/index.js +59 -15
- package/dist/components/SeverityRow/index.js.map +1 -1
- package/dist/components/Skeleton/index.d.ts.map +1 -1
- package/dist/components/Skeleton/index.js +6 -35
- package/dist/components/Skeleton/index.js.map +1 -1
- package/dist/components/Slider/index.js +9 -9
- package/dist/components/Slider/index.js.map +1 -1
- package/dist/components/Spacer/index.js +7 -7
- package/dist/components/Spacer/index.js.map +1 -1
- package/dist/components/Span/index.d.ts.map +1 -1
- package/dist/components/Span/index.js +38 -9
- package/dist/components/Span/index.js.map +1 -1
- package/dist/components/StackedBar/index.d.ts.map +1 -1
- package/dist/components/StackedBar/index.js +16 -39
- package/dist/components/StackedBar/index.js.map +1 -1
- package/dist/components/Statistic/index.d.ts +8 -1
- package/dist/components/Statistic/index.d.ts.map +1 -1
- package/dist/components/Statistic/index.js +12 -40
- package/dist/components/Statistic/index.js.map +1 -1
- package/dist/components/Table/body.d.ts.map +1 -1
- package/dist/components/Table/body.js +41 -41
- package/dist/components/Table/body.js.map +1 -1
- package/dist/components/Table/cell.d.ts.map +1 -1
- package/dist/components/Table/cell.js +32 -24
- package/dist/components/Table/cell.js.map +1 -1
- package/dist/components/Table/header.d.ts.map +1 -1
- package/dist/components/Table/header.js +13 -10
- package/dist/components/Table/header.js.map +1 -1
- package/dist/components/Table/headerCell.d.ts.map +1 -1
- package/dist/components/Table/headerCell.js +26 -52
- package/dist/components/Table/headerCell.js.map +1 -1
- package/dist/components/Table/helpers.d.ts +37 -0
- package/dist/components/Table/helpers.d.ts.map +1 -1
- package/dist/components/Table/helpers.js +72 -1
- package/dist/components/Table/helpers.js.map +1 -1
- package/dist/components/Table/index.d.ts +57 -2
- package/dist/components/Table/index.d.ts.map +1 -1
- package/dist/components/Table/index.js +154 -59
- package/dist/components/Table/index.js.map +1 -1
- package/dist/components/Table/row.d.ts +3 -1
- package/dist/components/Table/row.d.ts.map +1 -1
- package/dist/components/Table/row.js +45 -14
- package/dist/components/Table/row.js.map +1 -1
- package/dist/components/Table/scrollbar.js +3 -3
- package/dist/components/Table/scrollbar.js.map +1 -1
- package/dist/components/Tabs/content.js +2 -2
- package/dist/components/Tabs/content.js.map +1 -1
- package/dist/components/Tabs/index.js +3 -3
- package/dist/components/Tabs/index.js.map +1 -1
- package/dist/components/Tabs/item.d.ts.map +1 -1
- package/dist/components/Tabs/item.js +7 -5
- package/dist/components/Tabs/item.js.map +1 -1
- package/dist/components/Tabs/list.d.ts +4 -2
- package/dist/components/Tabs/list.d.ts.map +1 -1
- package/dist/components/Tabs/list.js +31 -19
- package/dist/components/Tabs/list.js.map +1 -1
- package/dist/components/Tag/group.d.ts.map +1 -1
- package/dist/components/Tag/group.js +3 -35
- package/dist/components/Tag/group.js.map +1 -1
- package/dist/components/Tag/index.d.ts +7 -0
- package/dist/components/Tag/index.d.ts.map +1 -1
- package/dist/components/Tag/index.js +91 -24
- package/dist/components/Tag/index.js.map +1 -1
- package/dist/components/Testimonial/index.d.ts +6 -1
- package/dist/components/Testimonial/index.d.ts.map +1 -1
- package/dist/components/Testimonial/index.js +29 -7
- package/dist/components/Testimonial/index.js.map +1 -1
- package/dist/components/Textarea/index.d.ts +10 -0
- package/dist/components/Textarea/index.d.ts.map +1 -1
- package/dist/components/Textarea/index.js +164 -18
- package/dist/components/Textarea/index.js.map +1 -1
- package/dist/components/Tier/group.d.ts.map +1 -1
- package/dist/components/Tier/group.js +9 -8
- package/dist/components/Tier/group.js.map +1 -1
- package/dist/components/Tier/index.d.ts +5 -0
- package/dist/components/Tier/index.d.ts.map +1 -1
- package/dist/components/Tier/index.js +15 -11
- package/dist/components/Tier/index.js.map +1 -1
- package/dist/components/Timeline/index.d.ts.map +1 -1
- package/dist/components/Timeline/index.js +21 -18
- package/dist/components/Timeline/index.js.map +1 -1
- package/dist/components/TooltipComponent/index.d.ts.map +1 -1
- package/dist/components/TooltipComponent/index.js +6 -7
- package/dist/components/TooltipComponent/index.js.map +1 -1
- package/dist/components/Tree/index.js +3 -3
- package/dist/components/Tree/index.js.map +1 -1
- package/dist/components/Tree/modal.d.ts.map +1 -1
- package/dist/components/Tree/modal.js +3 -1
- package/dist/components/Tree/modal.js.map +1 -1
- package/dist/constants/sizes.d.ts +5 -0
- package/dist/constants/sizes.d.ts.map +1 -1
- package/dist/constants/sizes.js +6 -1
- package/dist/constants/sizes.js.map +1 -1
- package/dist/constants/theme.d.ts +44 -0
- package/dist/constants/theme.d.ts.map +1 -1
- package/dist/constants/theme.js.map +1 -1
- package/dist/containers/ReqoreProvider.d.ts.map +1 -1
- package/dist/containers/ReqoreProvider.js +27 -13
- package/dist/containers/ReqoreProvider.js.map +1 -1
- package/dist/containers/UIProvider.d.ts.map +1 -1
- package/dist/containers/UIProvider.js +8 -36
- package/dist/containers/UIProvider.js.map +1 -1
- package/dist/helpers/hoveringPointer.d.ts +54 -0
- package/dist/helpers/hoveringPointer.d.ts.map +1 -0
- package/dist/helpers/hoveringPointer.js +66 -0
- package/dist/helpers/hoveringPointer.js.map +1 -0
- package/dist/helpers/styled.d.ts +39 -26
- package/dist/helpers/styled.d.ts.map +1 -1
- package/dist/helpers/styled.js +156 -4
- package/dist/helpers/styled.js.map +1 -1
- package/dist/helpers/typeScale.d.ts +25 -0
- package/dist/helpers/typeScale.d.ts.map +1 -0
- package/dist/helpers/typeScale.js +28 -0
- package/dist/helpers/typeScale.js.map +1 -0
- package/dist/hooks/useCloneThroughFragments.d.ts.map +1 -1
- package/dist/hooks/useCloneThroughFragments.js +51 -18
- package/dist/hooks/useCloneThroughFragments.js.map +1 -1
- package/dist/hooks/useDragToScroll.d.ts +58 -0
- package/dist/hooks/useDragToScroll.d.ts.map +1 -0
- package/dist/hooks/useDragToScroll.js +262 -0
- package/dist/hooks/useDragToScroll.js.map +1 -0
- package/dist/hooks/useMarqueeOnHover.d.ts.map +1 -1
- package/dist/hooks/useMarqueeOnHover.js +10 -0
- package/dist/hooks/useMarqueeOnHover.js.map +1 -1
- package/dist/hooks/usePaging.d.ts +9 -4
- package/dist/hooks/usePaging.d.ts.map +1 -1
- package/dist/hooks/usePaging.js +21 -32
- package/dist/hooks/usePaging.js.map +1 -1
- package/dist/hooks/usePointerDrag.d.ts.map +1 -1
- package/dist/hooks/usePointerDrag.js +13 -3
- package/dist/hooks/usePointerDrag.js.map +1 -1
- package/dist/hooks/useReqoreMedia.d.ts +22 -7
- package/dist/hooks/useReqoreMedia.d.ts.map +1 -1
- package/dist/hooks/useReqoreMedia.js +33 -9
- package/dist/hooks/useReqoreMedia.js.map +1 -1
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/dist/styles.js +6 -6
- package/dist/styles.js.map +1 -1
- package/docs/docs/guides/theming.mdx +15 -0
- package/package.json +2 -4
- package/vitest.config.ts +105 -31
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useDragToScroll = exports.NON_DRAGGABLE = exports.DRAG_TO_SCROLL_THRESHOLD = void 0;
|
|
4
|
+
var react_1 = require("react");
|
|
5
|
+
/**
|
|
6
|
+
* How far the pointer must travel before a press becomes a drag.
|
|
7
|
+
*
|
|
8
|
+
* Zero would make every click a one-pixel drag and swallow it; too large and the
|
|
9
|
+
* row feels stuck before it moves. Four pixels is the usual hysteresis for
|
|
10
|
+
* distinguishing a click from a drag.
|
|
11
|
+
*/
|
|
12
|
+
exports.DRAG_TO_SCROLL_THRESHOLD = 4;
|
|
13
|
+
/**
|
|
14
|
+
* Elements a drag must never start on.
|
|
15
|
+
*
|
|
16
|
+
* Deliberately NOT "anything interactive". The surfaces this is built for are made
|
|
17
|
+
* OF interactive things - a rail of clickable KPI tiles, a table header of sort
|
|
18
|
+
* buttons - so excluding buttons would leave nowhere to grab and the feature would
|
|
19
|
+
* do nothing. Their clicks are protected instead by suppressing the click that
|
|
20
|
+
* follows a real drag, which is what makes press-and-release still activate a
|
|
21
|
+
* tile while press-and-pull scrolls past it.
|
|
22
|
+
*
|
|
23
|
+
* What IS excluded is text entry, where a press-and-move already means
|
|
24
|
+
* "select within this value" and there is no other way to ask for it, and anything
|
|
25
|
+
* marked `reqore-no-drag-scroll`: a grab handle of its own (a column's resize handle),
|
|
26
|
+
* where a press-and-move already means something else.
|
|
27
|
+
*/
|
|
28
|
+
exports.NON_DRAGGABLE = 'input, textarea, select, [contenteditable=""], [contenteditable="true"], .reqore-no-drag-scroll';
|
|
29
|
+
/**
|
|
30
|
+
* Press and pull a sideways-scrolling surface to scroll it.
|
|
31
|
+
*
|
|
32
|
+
* `ReqoreTable`'s (`dragToScroll`, and its header's touch swipes). It binds to the
|
|
33
|
+
* elements themselves, not through handlers spread in render, because a table's body
|
|
34
|
+
* appears after mount and its header scrolls a body that is another element. The other
|
|
35
|
+
* drags in the library - a sheet, a modal, a toast, a tier stack, `ReqoreFadeScroller`'s
|
|
36
|
+
* `dragToScroll` - share `usePointerDrag`; a fix to the gesture belongs in both (a
|
|
37
|
+
* finger's implicit capture, for one).
|
|
38
|
+
*/
|
|
39
|
+
var useDragToScroll = function (_a) {
|
|
40
|
+
var scrollRef = _a.scrollRef, handleRef = _a.handleRef, _b = _a.mouse, mouse = _b === void 0 ? false : _b, _c = _a.touch, touch = _c === void 0 ? false : _c, draggingClass = _a.draggingClass;
|
|
41
|
+
/* What the gesture is bound to. The elements can come and go after the hook
|
|
42
|
+
mounts - a table renders no body until it has rows - so every commit compares
|
|
43
|
+
them with what is bound and rebinds when they changed, instead of binding once
|
|
44
|
+
on mount and silently never seeing a body that appeared later. */
|
|
45
|
+
var bound = (0, react_1.useRef)();
|
|
46
|
+
(0, react_1.useEffect)(function () {
|
|
47
|
+
var _a;
|
|
48
|
+
var scroller = scrollRef.current;
|
|
49
|
+
var handle = handleRef ? handleRef.current : scroller;
|
|
50
|
+
var key = "".concat(mouse, ":").concat(touch, ":").concat(draggingClass !== null && draggingClass !== void 0 ? draggingClass : '');
|
|
51
|
+
if (bound.current &&
|
|
52
|
+
bound.current.scroller === scroller &&
|
|
53
|
+
bound.current.handle === handle &&
|
|
54
|
+
bound.current.key === key) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
(_a = bound.current) === null || _a === void 0 ? void 0 : _a.unbind();
|
|
58
|
+
bound.current = undefined;
|
|
59
|
+
if ((!mouse && !touch) || !scroller || !handle) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
bound.current = {
|
|
63
|
+
scroller: scroller,
|
|
64
|
+
handle: handle,
|
|
65
|
+
key: key,
|
|
66
|
+
unbind: bind(scroller, handle, mouse, touch, draggingClass),
|
|
67
|
+
};
|
|
68
|
+
});
|
|
69
|
+
// Unbound when the component goes, whatever is bound then.
|
|
70
|
+
(0, react_1.useEffect)(function () { return function () {
|
|
71
|
+
var _a;
|
|
72
|
+
(_a = bound.current) === null || _a === void 0 ? void 0 : _a.unbind();
|
|
73
|
+
bound.current = undefined;
|
|
74
|
+
}; }, []);
|
|
75
|
+
};
|
|
76
|
+
exports.useDragToScroll = useDragToScroll;
|
|
77
|
+
/** Binds the gesture; returns what unbinds it. */
|
|
78
|
+
var bind = function (scroller, handle, mouse, touch, draggingClass) {
|
|
79
|
+
{
|
|
80
|
+
var activePointer_1;
|
|
81
|
+
var startX_1 = 0;
|
|
82
|
+
var startScrollLeft_1 = 0;
|
|
83
|
+
var engaged_1 = false;
|
|
84
|
+
// Set when a drag actually moved the surface, and consumed by the click that
|
|
85
|
+
// the browser fires next. Without it, pulling sideways and letting go on top
|
|
86
|
+
// of a clickable tile ALSO activates that tile.
|
|
87
|
+
var swallowNextClick_1 = false;
|
|
88
|
+
/* The live gesture is tracked on the WINDOW, not on the handle.
|
|
89
|
+
*
|
|
90
|
+
* A pull leaves the handle almost immediately - the edges are where you are
|
|
91
|
+
* pulling TO - and the release can land anywhere, including outside the
|
|
92
|
+
* browser window entirely. Listening on the handle alone meant a release it
|
|
93
|
+
* never saw left `activePointer` set: the next move over it resumed the drag
|
|
94
|
+
* with no button held, and there was no way to let go.
|
|
95
|
+
*
|
|
96
|
+
* Pointer capture alone does not cover this - it is taken only once the drag
|
|
97
|
+
* ENGAGES, and a fast pull can be past the edge before the first qualifying
|
|
98
|
+
* move arrives.
|
|
99
|
+
*
|
|
100
|
+
* Bound per-gesture rather than permanently, so an idle surface adds no global
|
|
101
|
+
* pointermove listener. */
|
|
102
|
+
var stopTracking_1 = function () {
|
|
103
|
+
window.removeEventListener('pointermove', onPointerMove_1);
|
|
104
|
+
window.removeEventListener('pointerup', onPointerEnd_1);
|
|
105
|
+
window.removeEventListener('pointercancel', onPointerEnd_1);
|
|
106
|
+
window.removeEventListener('lostpointercapture', onPointerEnd_1);
|
|
107
|
+
window.removeEventListener('blur', endGesture_1);
|
|
108
|
+
};
|
|
109
|
+
var startTracking_1 = function () {
|
|
110
|
+
window.addEventListener('pointermove', onPointerMove_1);
|
|
111
|
+
window.addEventListener('pointerup', onPointerEnd_1);
|
|
112
|
+
window.addEventListener('pointercancel', onPointerEnd_1);
|
|
113
|
+
window.addEventListener('lostpointercapture', onPointerEnd_1);
|
|
114
|
+
// Alt-tabbing mid-pull: the release happens in another window.
|
|
115
|
+
window.addEventListener('blur', endGesture_1);
|
|
116
|
+
};
|
|
117
|
+
/* Ends the gesture however it got here - a normal release, a release the page
|
|
118
|
+
* never saw, a cancelled pointer, or the window losing focus. Idempotent:
|
|
119
|
+
* `activePointer` is cleared before the capture is released, so the
|
|
120
|
+
* `lostpointercapture` our own release fires re-enters and returns. */
|
|
121
|
+
var endGesture_1 = function () {
|
|
122
|
+
var _a;
|
|
123
|
+
if (activePointer_1 === undefined) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
var pointerId = activePointer_1;
|
|
127
|
+
activePointer_1 = undefined;
|
|
128
|
+
stopTracking_1();
|
|
129
|
+
if ((_a = handle.hasPointerCapture) === null || _a === void 0 ? void 0 : _a.call(handle, pointerId)) {
|
|
130
|
+
handle.releasePointerCapture(pointerId);
|
|
131
|
+
}
|
|
132
|
+
if (engaged_1) {
|
|
133
|
+
engaged_1 = false;
|
|
134
|
+
if (draggingClass) {
|
|
135
|
+
handle.classList.remove(draggingClass);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
var onPointerEnd_1 = function (event) {
|
|
140
|
+
if (activePointer_1 === undefined || event.pointerId !== activePointer_1) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
/* Only the capture THIS gesture took ends it. A finger's pointer is captured by
|
|
144
|
+
the element it lands on (implicit touch capture); taking the capture for the
|
|
145
|
+
handle moves it away from that element, which then reports losing it - and
|
|
146
|
+
that is the drag starting, not ending. Ending there stopped a swipe on a
|
|
147
|
+
table's header after its first few pixels. */
|
|
148
|
+
if (event.type === 'lostpointercapture' && event.target !== handle) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
endGesture_1();
|
|
152
|
+
};
|
|
153
|
+
var onPointerMove_1 = function (event) {
|
|
154
|
+
if (activePointer_1 === undefined || event.pointerId !== activePointer_1) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
/* Nothing is held down, so the button came up somewhere this page could
|
|
158
|
+
* never observe it - off the edge of the window, the usual way. Recover on
|
|
159
|
+
* the first move back rather than wait for a pointerup that is never coming;
|
|
160
|
+
* `buttons` is a bitmask of what is CURRENTLY pressed, so during a real drag
|
|
161
|
+
* (or a finger on the screen) it can only be non-zero. */
|
|
162
|
+
if (event.buttons === 0) {
|
|
163
|
+
endGesture_1();
|
|
164
|
+
return;
|
|
165
|
+
}
|
|
166
|
+
var distance = event.clientX - startX_1;
|
|
167
|
+
if (!engaged_1) {
|
|
168
|
+
// Below the threshold this is still a click, so do nothing at all - not
|
|
169
|
+
// even preventDefault, which would break focus on the target.
|
|
170
|
+
if (Math.abs(distance) < exports.DRAG_TO_SCROLL_THRESHOLD) {
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
engaged_1 = true;
|
|
174
|
+
swallowNextClick_1 = true;
|
|
175
|
+
if (draggingClass) {
|
|
176
|
+
handle.classList.add(draggingClass);
|
|
177
|
+
}
|
|
178
|
+
// Capture keeps the moves addressed to the handle while the pointer is over
|
|
179
|
+
// other elements. The window listeners are what make the drag survive
|
|
180
|
+
// leaving it; this is what keeps hover states elsewhere quiet.
|
|
181
|
+
try {
|
|
182
|
+
handle.setPointerCapture(event.pointerId);
|
|
183
|
+
}
|
|
184
|
+
catch (_a) {
|
|
185
|
+
// Capture is a nicety, not the mechanism.
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
// Stops the browser starting a native text/image drag mid-pull.
|
|
189
|
+
event.preventDefault();
|
|
190
|
+
scroller.scrollLeft = startScrollLeft_1 - distance;
|
|
191
|
+
};
|
|
192
|
+
var onPointerDown_1 = function (event) {
|
|
193
|
+
var _a, _b;
|
|
194
|
+
/* Before any guard. A previous gesture whose click never arrived - released
|
|
195
|
+
* off-window, so nothing followed it - leaves this armed, and the next
|
|
196
|
+
* genuine click would be eaten. A fresh press always makes the previous
|
|
197
|
+
* gesture's click moot, INCLUDING a press this handler goes on to decline. */
|
|
198
|
+
swallowNextClick_1 = false;
|
|
199
|
+
if (event.pointerType === 'touch') {
|
|
200
|
+
// A real scroller pans natively under a finger, and long-press selects.
|
|
201
|
+
if (!touch) {
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
if (!mouse) {
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
// Middle/right are paste and context menu.
|
|
210
|
+
if (event.button !== 0) {
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
// Shift is the documented escape hatch to "select instead of drag".
|
|
214
|
+
if (event.shiftKey) {
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
if ((_b = (_a = event.target) === null || _a === void 0 ? void 0 : _a.closest) === null || _b === void 0 ? void 0 : _b.call(_a, exports.NON_DRAGGABLE)) {
|
|
219
|
+
return;
|
|
220
|
+
}
|
|
221
|
+
// Nothing to scroll: leave the press alone entirely so a click on a surface
|
|
222
|
+
// that happens to fit behaves exactly as it did before.
|
|
223
|
+
if (scroller.scrollWidth <= scroller.clientWidth) {
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
activePointer_1 = event.pointerId;
|
|
227
|
+
startX_1 = event.clientX;
|
|
228
|
+
startScrollLeft_1 = scroller.scrollLeft;
|
|
229
|
+
engaged_1 = false;
|
|
230
|
+
startTracking_1();
|
|
231
|
+
};
|
|
232
|
+
var onClickCapture_1 = function (event) {
|
|
233
|
+
if (!swallowNextClick_1) {
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
swallowNextClick_1 = false;
|
|
237
|
+
event.preventDefault();
|
|
238
|
+
event.stopPropagation();
|
|
239
|
+
};
|
|
240
|
+
// A native drag beats pointer events to the punch on links and images.
|
|
241
|
+
var onDragStart_1 = function (event) {
|
|
242
|
+
if (engaged_1) {
|
|
243
|
+
event.preventDefault();
|
|
244
|
+
}
|
|
245
|
+
};
|
|
246
|
+
handle.addEventListener('pointerdown', onPointerDown_1);
|
|
247
|
+
handle.addEventListener('dragstart', onDragStart_1);
|
|
248
|
+
// Capture phase: the click has to be stopped before it reaches the tile.
|
|
249
|
+
handle.addEventListener('click', onClickCapture_1, true);
|
|
250
|
+
return function () {
|
|
251
|
+
handle.removeEventListener('pointerdown', onPointerDown_1);
|
|
252
|
+
handle.removeEventListener('dragstart', onDragStart_1);
|
|
253
|
+
handle.removeEventListener('click', onClickCapture_1, true);
|
|
254
|
+
// A gesture live at unmount would otherwise leave window listeners behind.
|
|
255
|
+
stopTracking_1();
|
|
256
|
+
if (draggingClass) {
|
|
257
|
+
handle.classList.remove(draggingClass);
|
|
258
|
+
}
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
//# sourceMappingURL=useDragToScroll.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDragToScroll.js","sourceRoot":"","sources":["../../src/hooks/useDragToScroll.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMarqueeOnHover.d.ts","sourceRoot":"","sources":["../../src/hooks/useMarqueeOnHover.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useMarqueeOnHover.d.ts","sourceRoot":"","sources":["../../src/hooks/useMarqueeOnHover.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,qBAAqB;IACpC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,qBAAqB,CAK5D,CAAC;AAEF,sFAAsF;AACtF,eAAO,MAAM,sBAAsB;;CAA8C,CAAC;AAElF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB;;CAA6C,CAAC;AAC9E,eAAO,MAAM,mBAAmB;;CAA6C,CAAC;AAE9E,yFAAyF;AACzF,eAAO,MAAM,uBAAuB,8BAA8B,CAAC;AASnE;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,YAAY,OAAO,EAAE,YAAY,OAAO,KAAG,MAKnE,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,GAAG,MAAM,KAAG,MAa3C,CAAC;AAmBF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,GAAI,QAAQ,WAAW,GAAG,IAAI,KAAG,WAAW,GAAG,IA8B/E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,GAAI,QAAQ,WAAW,GAAG,IAAI,KAAG,WAAW,EAmB1E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,WAAW,GAAG,WAAW,EAAE,EACrC,SAAS,QAAQ,CAAC,qBAAqB,CAAC,KACvC,CAAC,MAAM,IAAI,CA+Fb,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB,GAAI,SAAS,OAAO,EAAE,UAAU,qBAAqB,KAAG,IA8FrF,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useMarqueeOnHover = exports.startMarquee = exports.findMarqueeTargets = exports.findTruncatedElement = exports.marqueeProgress = exports.edgeMask = exports.MARQUEE_STATE_ATTRIBUTE = exports.REQORE_MARQUEE_TEXT = exports.REQORE_MARQUEE_HOST = exports.REQORE_MARQUEE_OPT_OUT = exports.MARQUEE_DEFAULTS = void 0;
|
|
4
4
|
var react_1 = require("react");
|
|
5
|
+
var hoveringPointer_1 = require("../helpers/hoveringPointer");
|
|
5
6
|
exports.MARQUEE_DEFAULTS = {
|
|
6
7
|
delay: 450,
|
|
7
8
|
speed: 40,
|
|
@@ -238,8 +239,16 @@ var useMarqueeOnHover = function (enabled, options) {
|
|
|
238
239
|
active === null || active === void 0 ? void 0 : active.stop();
|
|
239
240
|
active = null;
|
|
240
241
|
};
|
|
242
|
+
/* A hover scrolls a box: a mouse's, not a finger's tap - after which the browser emulates a `mouseover`
|
|
243
|
+
of its own, and the tapped box scrolled until the next tap elsewhere (on a touch laptop: `enabled` asks
|
|
244
|
+
about the device's primary pointer, this about the pointer that came). See `createHoverGate`. */
|
|
245
|
+
var gate = (0, hoveringPointer_1.createHoverGate)();
|
|
246
|
+
var stopGate = (0, hoveringPointer_1.watchHoverGate)(document, gate);
|
|
241
247
|
var onOver = function (event) {
|
|
242
248
|
var _a;
|
|
249
|
+
if (!gate.isHover()) {
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
243
252
|
var boxes = (0, exports.findMarqueeTargets)(event.target);
|
|
244
253
|
if (!boxes.length) {
|
|
245
254
|
return;
|
|
@@ -283,6 +292,7 @@ var useMarqueeOnHover = function (enabled, options) {
|
|
|
283
292
|
document.addEventListener('mouseout', onOut, true);
|
|
284
293
|
return function () {
|
|
285
294
|
stopActive();
|
|
295
|
+
stopGate();
|
|
286
296
|
document.removeEventListener('mouseover', onOver, true);
|
|
287
297
|
document.removeEventListener('mouseout', onOut, true);
|
|
288
298
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useMarqueeOnHover.js","sourceRoot":"","sources":["../../src/hooks/useMarqueeOnHover.ts"],"names":[],"mappings":";;;AAAA,+BAAkC;
|
|
1
|
+
{"version":3,"file":"useMarqueeOnHover.js","sourceRoot":"","sources":["../../src/hooks/useMarqueeOnHover.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { usePaginationReturn } from 'react-use-pagination-hook';
|
|
2
1
|
export interface IReqorePageChangeData {
|
|
3
2
|
isFirst?: boolean;
|
|
4
3
|
isLast?: boolean;
|
|
@@ -12,7 +11,11 @@ export interface IReqorePagingOptions<T> {
|
|
|
12
11
|
enabled?: boolean;
|
|
13
12
|
onPageChange?: (page: number, info: IReqorePageChangeData) => void;
|
|
14
13
|
}
|
|
15
|
-
export interface IReqorePagingResult<T>
|
|
14
|
+
export interface IReqorePagingResult<T> {
|
|
15
|
+
/** Opens a page: one outside the list opens the nearest page in it. */
|
|
16
|
+
setPage: (page: number) => void;
|
|
17
|
+
/** The open page: always one of the list's (1 when it has none). */
|
|
18
|
+
currentPage: number;
|
|
16
19
|
pages: number[];
|
|
17
20
|
allPages: number[];
|
|
18
21
|
applyPaging: (items: T[]) => T[];
|
|
@@ -21,8 +24,10 @@ export interface IReqorePagingResult<T> extends Pick<usePaginationReturn, 'setPa
|
|
|
21
24
|
itemsLeft: number;
|
|
22
25
|
isLastPage: boolean;
|
|
23
26
|
isFirstPage: boolean;
|
|
24
|
-
next:
|
|
25
|
-
|
|
27
|
+
/** The next page, or the last one: each call a step, the steps one render takes too. */
|
|
28
|
+
next: () => void;
|
|
29
|
+
/** The page before, or the first one. */
|
|
30
|
+
back: () => void;
|
|
26
31
|
first: () => void;
|
|
27
32
|
last: () => void;
|
|
28
33
|
pageCount: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePaging.d.ts","sourceRoot":"","sources":["../../src/hooks/usePaging.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePaging.d.ts","sourceRoot":"","sources":["../../src/hooks/usePaging.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC;IACrC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;CACpE;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,uEAAuE;IACvE,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,oEAAoE;IACpE,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,wFAAwF;IACxF,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,yCAAyC;IACzC,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,eAAO,MAAM,oBAAoB,EAAE,oBAAoB,CAAC,GAAG,CAI1D,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,CAAC,EAC/B,UAAS,oBAAoB,CAAC,CAAC,CAAwB,KACtD,mBAAmB,CAAC,CAAC,CA4IvB,CAAC"}
|
package/dist/hooks/usePaging.js
CHANGED
|
@@ -19,15 +19,11 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
19
19
|
}
|
|
20
20
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
21
|
};
|
|
22
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
23
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
24
|
-
};
|
|
25
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
23
|
exports.useReqorePaging = exports.defaultPagingOptions = void 0;
|
|
27
24
|
var lodash_1 = require("lodash");
|
|
28
25
|
var react_1 = require("react");
|
|
29
26
|
var react_use_1 = require("react-use");
|
|
30
|
-
var react_use_pagination_hook_1 = __importDefault(require("react-use-pagination-hook"));
|
|
31
27
|
exports.defaultPagingOptions = {
|
|
32
28
|
items: [],
|
|
33
29
|
itemsPerPage: 10,
|
|
@@ -40,10 +36,22 @@ var useReqorePaging = function (options) {
|
|
|
40
36
|
return value !== undefined;
|
|
41
37
|
}))), items = _a.items, itemsPerPage = _a.itemsPerPage, infinite = _a.infinite, pagesToShow = _a.pagesToShow, startPage = _a.startPage, _b = _a.enabled, enabled = _b === void 0 ? true : _b, onPageChange = _a.onPageChange;
|
|
42
38
|
var allPageCount = (0, react_1.useMemo)(function () { return Math.ceil((0, lodash_1.size)(items) / itemsPerPage); }, [items, itemsPerPage]);
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
39
|
+
// a list without rows still has its one, empty, page
|
|
40
|
+
var pagelist = (0, react_1.useMemo)(function () { return (0, lodash_1.range)(1, Math.max(1, allPageCount) + 1); }, [allPageCount]);
|
|
41
|
+
/* The page is ours, kept within the list on every change. It was a pagination hook's window index, which two
|
|
42
|
+
steps from one render (two auto-load observers, say) took past the last page: the page read as undefined,
|
|
43
|
+
no rows were shown and "Load more" stayed. A step reads the page it is taken from (a functional update),
|
|
44
|
+
not the one the render saw, and stops at either end. */
|
|
45
|
+
var lastPage = (0, react_1.useRef)(Math.max(1, allPageCount));
|
|
46
|
+
lastPage.current = Math.max(1, allPageCount);
|
|
47
|
+
var toPage = function (page) { return Math.min(Math.max(1, page), lastPage.current); };
|
|
48
|
+
var _c = (0, react_1.useState)(1), openPage = _c[0], setOpenPage = _c[1];
|
|
49
|
+
// the page as shown: within the list as it is now, also before the effects below have caught up with it
|
|
50
|
+
var currentPage = toPage(openPage);
|
|
51
|
+
var setPage = (0, react_1.useCallback)(function (page) { return setOpenPage(toPage(page)); }, []);
|
|
52
|
+
var goNext = (0, react_1.useCallback)(function () { return setOpenPage(function (page) { return toPage(page + 1); }); }, []);
|
|
53
|
+
var goBefore = (0, react_1.useCallback)(function () { return setOpenPage(function (page) { return toPage(page - 1); }); }, []);
|
|
54
|
+
// the start page is opened as any other, so `onPageChange` hears of it
|
|
47
55
|
(0, react_1.useEffect)(function () {
|
|
48
56
|
setPage(startPage || 1);
|
|
49
57
|
}, [startPage]);
|
|
@@ -53,36 +61,17 @@ var useReqorePaging = function (options) {
|
|
|
53
61
|
isLast: currentPage === allPageCount,
|
|
54
62
|
});
|
|
55
63
|
}, [currentPage]);
|
|
56
|
-
/* The pagination hook derives `currentPage` from a window of pages; while the
|
|
57
|
-
total is shrinking that window is briefly out of range and the page reads as
|
|
58
|
-
undefined, which is exactly when the clamp below has to know where the reader
|
|
59
|
-
was. */
|
|
60
|
-
var lastKnownPage = (0, react_1.useRef)(1);
|
|
61
|
-
if (currentPage) {
|
|
62
|
-
lastKnownPage.current = currentPage;
|
|
63
|
-
}
|
|
64
64
|
(0, react_use_1.useUpdateEffect)(function () {
|
|
65
|
-
var pageCount = Math.max(1, Math.ceil((0, lodash_1.size)(items) / itemsPerPage));
|
|
66
65
|
/* An INFINITE list keeps the reader where they are. Its pages are cumulative
|
|
67
66
|
— page 3 shows the first thirty rows — so a row arriving at the top or
|
|
68
67
|
fifty older rows loading at the bottom changes what the window holds, not
|
|
69
68
|
where the reader is; snapping to page 1 on every count change collapsed a
|
|
70
69
|
list someone had scrolled down three times the moment anything arrived.
|
|
71
|
-
Only a list that shrank below the current page pulls the page back
|
|
72
|
-
|
|
73
|
-
filter, a reload) should open on its
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
if (!currentPage || page > pageCount) {
|
|
77
|
-
setPage(Math.min(page, pageCount));
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
setPage(1);
|
|
82
|
-
}
|
|
83
|
-
// After the page: the pagination hook validates a page against the total it
|
|
84
|
-
// holds, so shrinking the total first would reject the page it should land on.
|
|
85
|
-
setTotalPage(pageCount);
|
|
70
|
+
Only a list that shrank below the current page pulls the page back (and
|
|
71
|
+
keeps it there when it grows again). A paged table is different: its page
|
|
72
|
+
is a slice, and a new data set (a filter, a reload) should open on its
|
|
73
|
+
first page as it always has. */
|
|
74
|
+
setOpenPage(function (page) { return (infinite ? toPage(page) : 1); });
|
|
86
75
|
}, [(0, lodash_1.size)(items)]);
|
|
87
76
|
var slicedItems = (0, react_1.useMemo)(function () {
|
|
88
77
|
return items.slice(infinite ? 0 : (currentPage - 1) * itemsPerPage, currentPage * itemsPerPage);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePaging.js","sourceRoot":"","sources":["../../src/hooks/usePaging.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"usePaging.js","sourceRoot":"","sources":["../../src/hooks/usePaging.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePointerDrag.d.ts","sourceRoot":"","sources":["../../src/hooks/usePointerDrag.ts"],"names":[],"mappings":"AAGA,6BAA6B;AAC7B,MAAM,MAAM,gBAAgB,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC;AAElD,+BAA+B;AAC/B,MAAM,WAAW,iBAAiB;IAChC,+DAA+D;IAC/D,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,oGAC+D,CAAC;AAElG,MAAM,WAAW,sBAAsB;IACrC,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,+FAA+F;IAC/F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC;IAC/D,qFAAqF;IACrF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9D,wCAAwC;IACxC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACjE;;;OAGG;IACH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CAChE;AAED,mEAAmE;AACnE,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAChE,2FAA2F;IAC3F,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC/D,6FAA6F;IAC7F,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CAC5D;AAED,MAAM,WAAW,eAAe;IAC9B,gFAAgF;IAChF,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,oBAAoB,CAAC;CAChC;AAgBD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,sBAAsB,KAAG,
|
|
1
|
+
{"version":3,"file":"usePointerDrag.d.ts","sourceRoot":"","sources":["../../src/hooks/usePointerDrag.ts"],"names":[],"mappings":"AAGA,6BAA6B;AAC7B,MAAM,MAAM,gBAAgB,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC;AAElD,+BAA+B;AAC/B,MAAM,WAAW,iBAAiB;IAChC,+DAA+D;IAC/D,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,oGAC+D,CAAC;AAElG,MAAM,WAAW,sBAAsB;IACrC,+EAA+E;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,+FAA+F;IAC/F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC;IAC/D,qFAAqF;IACrF,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9D,wCAAwC;IACxC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACjE;;;OAGG;IACH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAC;CAChE;AAED,mEAAmE;AACnE,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAChE,2FAA2F;IAC3F,cAAc,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC/D,6FAA6F;IAC7F,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CAC5D;AAED,MAAM,WAAW,eAAe;IAC9B,gFAAgF;IAChF,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,oBAAoB,CAAC;CAChC;AAgBD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,cAAc,GAAI,SAAS,sBAAsB,KAAG,eAyNhE,CAAC"}
|
|
@@ -114,10 +114,20 @@ var usePointerDrag = function (options) {
|
|
|
114
114
|
(_d = (_c = optionsRef.current).onMove) === null || _d === void 0 ? void 0 : _d.call(_c, { dx: dx, dy: dy, vx: gesture.vx, vy: gesture.vy }, event);
|
|
115
115
|
};
|
|
116
116
|
var onEnd = function (event) {
|
|
117
|
-
var
|
|
118
|
-
if ((
|
|
119
|
-
|
|
117
|
+
var gesture = gestureRef.current;
|
|
118
|
+
if ((gesture === null || gesture === void 0 ? void 0 : gesture.pointerId) !== event.pointerId) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
/* Only the capture THIS gesture took ends it. A finger's pointer is captured by the element
|
|
122
|
+
it lands on (implicit touch capture); taking the capture for the element that drags moves
|
|
123
|
+
it away from that one - a title, a label, a cell inside it - which then reports losing it,
|
|
124
|
+
and that is the drag starting, not ending. Ending there stopped a swipe after its first few
|
|
125
|
+
pixels whenever the finger landed on something inside the element (found on a table's
|
|
126
|
+
header with real touch events, #710). */
|
|
127
|
+
if (event.type === 'lostpointercapture' && event.target !== gesture.element) {
|
|
128
|
+
return;
|
|
120
129
|
}
|
|
130
|
+
finish(event.type === 'pointerup');
|
|
121
131
|
};
|
|
122
132
|
// Alt-tabbing mid-drag: the release happens in another window.
|
|
123
133
|
var onBlur = function () { return finish(false); };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePointerDrag.js","sourceRoot":"","sources":["../../src/hooks/usePointerDrag.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"usePointerDrag.js","sourceRoot":"","sources":["../../src/hooks/usePointerDrag.ts"],"names":[],"mappings":"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"}
|