@astryxdesign/core 0.1.0 → 0.1.1-canary.080d887
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/CHANGELOG.md +66 -0
- package/README.md +119 -1
- package/dist/AvatarGroup/AvatarGroupOverflow.d.ts +1 -1
- package/dist/AvatarGroup/AvatarGroupOverflow.d.ts.map +1 -1
- package/dist/AvatarGroup/AvatarGroupOverflow.js +4 -1
- package/dist/Banner/Banner.d.ts +7 -0
- package/dist/Banner/Banner.d.ts.map +1 -1
- package/dist/Banner/Banner.js +9 -2
- package/dist/Button/Button.d.ts +12 -2
- package/dist/Button/Button.d.ts.map +1 -1
- package/dist/Button/Button.js +51 -13
- package/dist/Chat/ChatLayoutScrollButton.d.ts.map +1 -1
- package/dist/Chat/ChatLayoutScrollButton.js +5 -1
- package/dist/ContextMenu/ContextMenu.js +2 -2
- package/dist/DropdownMenu/DropdownMenu.js +2 -2
- package/dist/DropdownMenu/{renderXDSDropdownItems.d.ts → renderDropdownItems.d.ts} +3 -3
- package/dist/DropdownMenu/renderDropdownItems.d.ts.map +1 -0
- package/dist/DropdownMenu/{renderXDSDropdownItems.js → renderDropdownItems.js} +2 -2
- package/dist/EmptyState/EmptyState.d.ts.map +1 -1
- package/dist/EmptyState/EmptyState.js +7 -1
- package/dist/HoverCard/HoverCard.d.ts +2 -2
- package/dist/HoverCard/HoverCard.d.ts.map +1 -1
- package/dist/HoverCard/HoverCard.js +18 -6
- package/dist/HoverCard/useHoverCard.d.ts.map +1 -1
- package/dist/HoverCard/useHoverCard.js +6 -3
- package/dist/Kbd/Kbd.d.ts.map +1 -1
- package/dist/Kbd/Kbd.js +1 -1
- package/dist/Layer/useLayer.d.ts +13 -0
- package/dist/Layer/useLayer.d.ts.map +1 -1
- package/dist/Layer/useLayer.js +7 -2
- package/dist/Layout/Layout.d.ts +10 -1
- package/dist/Layout/Layout.d.ts.map +1 -1
- package/dist/Layout/Layout.js +5 -1
- package/dist/Markdown/Markdown.d.ts.map +1 -1
- package/dist/Markdown/Markdown.js +13 -3
- package/dist/MobileNav/MobileNav.d.ts.map +1 -1
- package/dist/MobileNav/MobileNav.js +13 -0
- package/dist/Outline/Outline.d.ts +3 -2
- package/dist/Outline/Outline.d.ts.map +1 -1
- package/dist/Outline/Outline.js +23 -4
- package/dist/Outline/useScrollSpy.d.ts +14 -1
- package/dist/Outline/useScrollSpy.d.ts.map +1 -1
- package/dist/Outline/useScrollSpy.js +161 -50
- package/dist/Pagination/Pagination.d.ts.map +1 -1
- package/dist/Pagination/Pagination.js +31 -27
- package/dist/Resizable/useResizable.d.ts.map +1 -1
- package/dist/Resizable/useResizable.js +1 -5
- package/dist/Selector/Selector.d.ts.map +1 -1
- package/dist/Selector/Selector.js +1 -1
- package/dist/Slider/Slider.js +2 -2
- package/dist/Table/BaseTable.d.ts.map +1 -1
- package/dist/Table/BaseTable.js +26 -8
- package/dist/Table/Table.d.ts.map +1 -1
- package/dist/Table/Table.js +30 -7
- package/dist/Table/index.d.ts +3 -1
- package/dist/Table/index.d.ts.map +1 -1
- package/dist/Table/index.js +1 -0
- package/dist/Table/plugins/stickyColumns/index.d.ts +3 -0
- package/dist/Table/plugins/stickyColumns/index.d.ts.map +1 -0
- package/dist/Table/plugins/stickyColumns/index.js +3 -0
- package/dist/Table/plugins/stickyColumns/useTableStickyColumns.d.ts +25 -0
- package/dist/Table/plugins/stickyColumns/useTableStickyColumns.d.ts.map +1 -0
- package/dist/Table/plugins/stickyColumns/useTableStickyColumns.js +376 -0
- package/dist/Table/types.d.ts +90 -5
- package/dist/Table/types.d.ts.map +1 -1
- package/dist/Table/useBaseTablePlugins.d.ts.map +1 -1
- package/dist/Table/useBaseTablePlugins.js +1 -1
- package/dist/Timestamp/Timestamp.d.ts +1 -1
- package/dist/Timestamp/Timestamp.d.ts.map +1 -1
- package/dist/Timestamp/Timestamp.js +28 -3
- package/dist/ToggleButton/ToggleButton.d.ts +10 -5
- package/dist/ToggleButton/ToggleButton.d.ts.map +1 -1
- package/dist/ToggleButton/ToggleButton.js +40 -17
- package/dist/astryx.css +20 -0
- package/dist/astryx.umd.js +147 -0
- package/dist/astryx.umd.js.map +7 -0
- package/dist/theme/Theme.js +1 -1
- package/dist/theme/defineTheme.d.ts +1 -1
- package/dist/theme/defineTheme.d.ts.map +1 -1
- package/dist/theme/defineTheme.js +1 -1
- package/dist/theme/index.d.ts +1 -1
- package/dist/theme/index.d.ts.map +1 -1
- package/dist/theme/index.js +1 -1
- package/dist/theme/syntax/defineSyntaxTheme.js +1 -1
- package/dist/theme/tokens.d.ts +1 -1
- package/dist/theme/tokens.js +4 -4
- package/dist/theme/useTheme.d.ts +2 -2
- package/dist/utils/dateParser.d.ts.map +1 -1
- package/dist/utils/dateParser.js +15 -2
- package/package.json +7 -3
- package/src/AvatarGroup/AvatarGroupOverflow.tsx +3 -0
- package/src/Banner/Banner.test.tsx +16 -7
- package/src/Banner/Banner.tsx +9 -2
- package/src/Button/Button.doc.mjs +6 -0
- package/src/Button/Button.test.tsx +105 -11
- package/src/Button/Button.tsx +73 -5
- package/src/Chat/ChatLayoutScrollButton.tsx +7 -1
- package/src/Collapsible/useCollapsible.doc.mjs +2 -2
- package/src/ContextMenu/ContextMenu.tsx +2 -2
- package/src/DateInput/DateInput.test.tsx +68 -20
- package/src/Divider/Divider.doc.mjs +1 -1
- package/src/DropdownMenu/DropdownMenu.tsx +2 -2
- package/src/DropdownMenu/{renderXDSDropdownItems.tsx → renderDropdownItems.tsx} +2 -2
- package/src/EmptyState/EmptyState.test.tsx +4 -2
- package/src/EmptyState/EmptyState.tsx +6 -2
- package/src/FormLayout/FormLayout.doc.mjs +3 -3
- package/src/HoverCard/HoverCard.doc.mjs +3 -0
- package/src/HoverCard/HoverCard.test.tsx +178 -2
- package/src/HoverCard/HoverCard.tsx +20 -16
- package/src/HoverCard/useHoverCard.tsx +12 -10
- package/src/Icon/Icon.doc.mjs +12 -4
- package/src/Item/Item.doc.mjs +2 -2
- package/src/Kbd/Kbd.tsx +2 -9
- package/src/Layer/useLayer.doc.mjs +7 -2
- package/src/Layer/useLayer.tsx +19 -2
- package/src/Layout/Layout.doc.mjs +2 -1
- package/src/Layout/Layout.tsx +15 -1
- package/src/Layout/__tests__/childrenAsContent.test.tsx +59 -0
- package/src/Lightbox/Lightbox.doc.mjs +0 -2
- package/src/Link/Link.doc.mjs +3 -3
- package/src/Link/LinkProvider.doc.mjs +3 -3
- package/src/Markdown/Markdown.doc.mjs +6 -4
- package/src/Markdown/Markdown.test.tsx +17 -26
- package/src/Markdown/Markdown.tsx +16 -6
- package/src/MobileNav/MobileNav.doc.mjs +8 -8
- package/src/MobileNav/MobileNav.tsx +13 -0
- package/src/MobileNav/MobileNavReopen.test.tsx +118 -0
- package/src/Outline/Outline.doc.mjs +1 -1
- package/src/Outline/Outline.test.tsx +76 -38
- package/src/Outline/Outline.tsx +23 -4
- package/src/Outline/useScrollSpy.ts +196 -63
- package/src/Pagination/Pagination.test.tsx +137 -13
- package/src/Pagination/Pagination.tsx +33 -28
- package/src/Resizable/Resizable.doc.mjs +3 -3
- package/src/Resizable/useResizable.ts +1 -7
- package/src/Selector/Selector.doc.mjs +4 -0
- package/src/Selector/Selector.tsx +5 -6
- package/src/Skeleton/Skeleton.doc.mjs +11 -1
- package/src/Slider/Slider.doc.mjs +4 -0
- package/src/Slider/Slider.test.tsx +3 -16
- package/src/Slider/Slider.tsx +1 -1
- package/src/Table/BaseTable.tsx +50 -24
- package/src/Table/Table.doc.mjs +15 -3
- package/src/Table/Table.tsx +22 -1
- package/src/Table/index.ts +3 -0
- package/src/Table/plugins/stickyColumns/index.ts +4 -0
- package/src/Table/plugins/stickyColumns/useTableStickyColumns.test.tsx +163 -0
- package/src/Table/plugins/stickyColumns/useTableStickyColumns.tsx +414 -0
- package/src/Table/types.ts +96 -4
- package/src/Table/useBaseTablePlugins.ts +1 -0
- package/src/Text/Heading.doc.mjs +13 -0
- package/src/Timestamp/Timestamp.test.tsx +44 -18
- package/src/Timestamp/Timestamp.tsx +30 -10
- package/src/ToggleButton/ToggleButton.doc.mjs +4 -4
- package/src/ToggleButton/ToggleButton.test.tsx +172 -9
- package/src/ToggleButton/ToggleButton.tsx +57 -31
- package/src/Toolbar/Toolbar.doc.mjs +1 -1
- package/src/hooks/useEntryAnimation.doc.mjs +3 -3
- package/src/hooks/useMediaQuery.doc.mjs +2 -2
- package/src/hooks/useStreamingText.doc.mjs +3 -3
- package/src/theme/Theme.doc.mjs +2 -2
- package/src/theme/Theme.tsx +1 -1
- package/src/theme/defineTheme.ts +1 -1
- package/src/theme/index.ts +1 -1
- package/src/theme/syntax/defineSyntaxTheme.ts +1 -1
- package/src/theme/tokens.ts +4 -4
- package/src/theme/useTheme.ts +2 -2
- package/src/utils/dateParser.test.ts +26 -0
- package/src/utils/dateParser.ts +16 -2
- package/dist/DropdownMenu/renderXDSDropdownItems.d.ts.map +0 -1
|
@@ -4,13 +4,23 @@
|
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* @file useScrollSpy.ts
|
|
7
|
-
* @input Uses React,
|
|
7
|
+
* @input Uses React, scroll position of heading elements, OutlineItem type
|
|
8
8
|
* @output Exports internal useScrollSpy hook
|
|
9
9
|
* @position Internal behavior hook; consumed by Outline.tsx
|
|
10
10
|
*
|
|
11
|
+
* Drives the active outline item from scroll position. On each scroll
|
|
12
|
+
* (rAF-throttled) it reads live heading positions and marks the last heading
|
|
13
|
+
* whose top has passed its activation line (its own scroll-margin-top, i.e.
|
|
14
|
+
* where it lands when navigated to). This is stable — it never compares stale
|
|
15
|
+
* cached positions — so the indicator moves monotonically instead of jumping.
|
|
16
|
+
* Defaults to the first item at the top and the last item at the bottom so
|
|
17
|
+
* short final sections still activate.
|
|
18
|
+
*
|
|
11
19
|
* SYNC: When modified, update /packages/core/src/Outline/Outline.tsx
|
|
12
20
|
*/
|
|
13
|
-
import { useEffect, useRef, useState } from 'react';
|
|
21
|
+
import { useCallback, useEffect, useRef, useState } from 'react';
|
|
22
|
+
/** Keys that scroll the viewport — used to detect a manual scroll intent. */
|
|
23
|
+
const SCROLL_KEYS = new Set(['ArrowUp', 'ArrowDown', 'PageUp', 'PageDown', 'Home', 'End', ' ', 'Spacebar']);
|
|
14
24
|
function getScrollableAncestor(element) {
|
|
15
25
|
let current = element?.parentElement ?? null;
|
|
16
26
|
while (current != null) {
|
|
@@ -24,6 +34,41 @@ function getScrollableAncestor(element) {
|
|
|
24
34
|
}
|
|
25
35
|
return null;
|
|
26
36
|
}
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Resolve the active heading id from current scroll position.
|
|
40
|
+
*
|
|
41
|
+
* A heading is "passed" once its top reaches its activation line — the scroll
|
|
42
|
+
* root's top plus the heading's own scroll-margin-top. The active heading is
|
|
43
|
+
* the last passed one (headings are in document order). When none have passed
|
|
44
|
+
* (scrolled above the first), the first item is active; at the bottom, the
|
|
45
|
+
* last item is active.
|
|
46
|
+
*/
|
|
47
|
+
function resolveActiveId(items, scrollRoot) {
|
|
48
|
+
if (items.length === 0) {
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
const rootTop = scrollRoot != null ? scrollRoot.getBoundingClientRect().top : 0;
|
|
52
|
+
const atBottom = scrollRoot != null ? scrollRoot.scrollTop + scrollRoot.clientHeight >= scrollRoot.scrollHeight - 2 : window.innerHeight + window.scrollY >= document.documentElement.scrollHeight - 2;
|
|
53
|
+
if (atBottom) {
|
|
54
|
+
return items[items.length - 1].id;
|
|
55
|
+
}
|
|
56
|
+
let activeId = items[0].id;
|
|
57
|
+
for (const item of items) {
|
|
58
|
+
const element = document.getElementById(item.id);
|
|
59
|
+
if (element == null) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
const top = element.getBoundingClientRect().top;
|
|
63
|
+
const marginTop = Number.parseFloat(window.getComputedStyle(element).scrollMarginTop) || 0;
|
|
64
|
+
if (top <= rootTop + marginTop + 1) {
|
|
65
|
+
activeId = item.id;
|
|
66
|
+
} else {
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
return activeId;
|
|
71
|
+
}
|
|
27
72
|
export function useScrollSpy({
|
|
28
73
|
activeId,
|
|
29
74
|
items,
|
|
@@ -32,72 +77,138 @@ export function useScrollSpy({
|
|
|
32
77
|
}) {
|
|
33
78
|
const isControlled = activeId !== undefined;
|
|
34
79
|
const [uncontrolledActiveId, setUncontrolledActiveId] = useState(items[0]?.id);
|
|
35
|
-
const visibleHeadingIdsRef = useRef(new Set());
|
|
36
|
-
const headingTopRef = useRef(new Map());
|
|
37
80
|
const activeIdRef = useRef(activeId);
|
|
81
|
+
// While true, scroll-spy ignores scroll updates because a click is driving a
|
|
82
|
+
// programmatic scroll. Released when that scroll settles or the user scrolls.
|
|
83
|
+
const suppressRef = useRef(false);
|
|
84
|
+
const releaseSuppressionRef = useRef(null);
|
|
85
|
+
// Latest scroll-position resolver, so the click handler can resume tracking
|
|
86
|
+
// when the user scrolls during a programmatic scroll.
|
|
87
|
+
const syncRef = useRef(null);
|
|
88
|
+
// Keep latest items/callback in refs so the scroll listener effect doesn't
|
|
89
|
+
// re-subscribe on every render (items is a fresh array each render).
|
|
90
|
+
const itemsRef = useRef(items);
|
|
91
|
+
itemsRef.current = items;
|
|
92
|
+
const onActiveIdChangeRef = useRef(onActiveIdChange);
|
|
93
|
+
onActiveIdChangeRef.current = onActiveIdChange;
|
|
38
94
|
const itemIds = items.map(item => item.id).join('\n');
|
|
39
95
|
activeIdRef.current = isControlled ? activeId : uncontrolledActiveId;
|
|
40
96
|
useEffect(() => {
|
|
41
|
-
if (isControlled || typeof
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
const headingElements = items.map(item => document.getElementById(item.id)).filter(element => element != null);
|
|
45
|
-
if (headingElements.length === 0) {
|
|
97
|
+
if (isControlled || typeof window === 'undefined') {
|
|
46
98
|
return;
|
|
47
99
|
}
|
|
48
|
-
const
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
100
|
+
const scrollRoot = getScrollableAncestor(rootRef.current);
|
|
101
|
+
const scrollTarget = scrollRoot ?? window;
|
|
102
|
+
let frame = 0;
|
|
103
|
+
const update = () => {
|
|
104
|
+
frame = 0;
|
|
105
|
+
if (suppressRef.current) {
|
|
52
106
|
return;
|
|
53
107
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
let nextActiveId;
|
|
60
|
-
let nextTop = Number.POSITIVE_INFINITY;
|
|
61
|
-
for (const id of visibleHeadingIds) {
|
|
62
|
-
const top = headingTop.get(id) ?? Number.POSITIVE_INFINITY;
|
|
63
|
-
if (top < nextTop) {
|
|
64
|
-
nextTop = top;
|
|
65
|
-
nextActiveId = id;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
if (nextActiveId != null) {
|
|
69
|
-
setNextActiveId(nextActiveId);
|
|
108
|
+
const nextActiveId = resolveActiveId(itemsRef.current, scrollRoot);
|
|
109
|
+
if (nextActiveId != null && nextActiveId !== activeIdRef.current) {
|
|
110
|
+
activeIdRef.current = nextActiveId;
|
|
111
|
+
setUncontrolledActiveId(nextActiveId);
|
|
112
|
+
onActiveIdChangeRef.current?.(nextActiveId);
|
|
70
113
|
}
|
|
71
114
|
};
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
headingTop.set(id, entry.boundingClientRect.top);
|
|
76
|
-
if (entry.isIntersecting) {
|
|
77
|
-
visibleHeadingIds.add(id);
|
|
78
|
-
} else {
|
|
79
|
-
visibleHeadingIds.delete(id);
|
|
80
|
-
}
|
|
115
|
+
const onScroll = () => {
|
|
116
|
+
if (frame === 0) {
|
|
117
|
+
frame = requestAnimationFrame(update);
|
|
81
118
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
119
|
+
};
|
|
120
|
+
syncRef.current = update;
|
|
121
|
+
update();
|
|
122
|
+
scrollTarget.addEventListener('scroll', onScroll, {
|
|
123
|
+
passive: true
|
|
124
|
+
});
|
|
125
|
+
window.addEventListener('resize', onScroll, {
|
|
126
|
+
passive: true
|
|
86
127
|
});
|
|
87
|
-
for (const headingElement of headingElements) {
|
|
88
|
-
observer.observe(headingElement);
|
|
89
|
-
}
|
|
90
128
|
return () => {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
129
|
+
syncRef.current = null;
|
|
130
|
+
scrollTarget.removeEventListener('scroll', onScroll);
|
|
131
|
+
window.removeEventListener('resize', onScroll);
|
|
132
|
+
if (frame !== 0) {
|
|
133
|
+
cancelAnimationFrame(frame);
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
}, [isControlled, itemIds, rootRef]);
|
|
137
|
+
|
|
138
|
+
// Tear down any pending suppression listeners when the Outline unmounts.
|
|
139
|
+
useEffect(() => {
|
|
140
|
+
return () => {
|
|
141
|
+
releaseSuppressionRef.current?.();
|
|
94
142
|
};
|
|
95
|
-
}, [
|
|
143
|
+
}, []);
|
|
96
144
|
const setActiveId = nextActiveId => {
|
|
97
145
|
if (!isControlled) {
|
|
98
146
|
setUncontrolledActiveId(nextActiveId);
|
|
99
147
|
}
|
|
100
148
|
onActiveIdChange?.(nextActiveId);
|
|
101
149
|
};
|
|
102
|
-
|
|
150
|
+
const lockActiveId = useCallback(clickedId => {
|
|
151
|
+
if (typeof window === 'undefined') {
|
|
152
|
+
setUncontrolledActiveId(clickedId);
|
|
153
|
+
activeIdRef.current = clickedId;
|
|
154
|
+
onActiveIdChangeRef.current?.(clickedId);
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
// Freeze the indicator during the programmatic smooth scroll instead of
|
|
159
|
+
// moving it immediately — it lands on the clicked item once the scroll
|
|
160
|
+
// settles, so it doesn't chase the scroll through intervening sections.
|
|
161
|
+
suppressRef.current = true;
|
|
162
|
+
// Replace any in-flight handlers from a previous click.
|
|
163
|
+
releaseSuppressionRef.current?.();
|
|
164
|
+
let settleTimer = 0;
|
|
165
|
+
const cleanup = () => {
|
|
166
|
+
window.removeEventListener('scrollend', onSettle);
|
|
167
|
+
window.removeEventListener('wheel', onManual);
|
|
168
|
+
window.removeEventListener('touchmove', onManual);
|
|
169
|
+
window.removeEventListener('keydown', onKeyDown);
|
|
170
|
+
if (settleTimer !== 0) {
|
|
171
|
+
clearTimeout(settleTimer);
|
|
172
|
+
settleTimer = 0;
|
|
173
|
+
}
|
|
174
|
+
releaseSuppressionRef.current = null;
|
|
175
|
+
};
|
|
176
|
+
// Programmatic scroll finished: move the indicator to the clicked item.
|
|
177
|
+
const onSettle = () => {
|
|
178
|
+
cleanup();
|
|
179
|
+
suppressRef.current = false;
|
|
180
|
+
setUncontrolledActiveId(clickedId);
|
|
181
|
+
activeIdRef.current = clickedId;
|
|
182
|
+
onActiveIdChangeRef.current?.(clickedId);
|
|
183
|
+
};
|
|
184
|
+
// User scrolled mid-flight: hand control back to scroll-position tracking.
|
|
185
|
+
const onManual = () => {
|
|
186
|
+
cleanup();
|
|
187
|
+
suppressRef.current = false;
|
|
188
|
+
syncRef.current?.();
|
|
189
|
+
};
|
|
190
|
+
const onKeyDown = event => {
|
|
191
|
+
if (SCROLL_KEYS.has(event.key)) {
|
|
192
|
+
onManual();
|
|
193
|
+
}
|
|
194
|
+
};
|
|
195
|
+
window.addEventListener('scrollend', onSettle, {
|
|
196
|
+
once: true
|
|
197
|
+
});
|
|
198
|
+
window.addEventListener('wheel', onManual, {
|
|
199
|
+
passive: true
|
|
200
|
+
});
|
|
201
|
+
window.addEventListener('touchmove', onManual, {
|
|
202
|
+
passive: true
|
|
203
|
+
});
|
|
204
|
+
window.addEventListener('keydown', onKeyDown);
|
|
205
|
+
// Fallback when scrollend is unsupported or no scroll is needed.
|
|
206
|
+
settleTimer = window.setTimeout(onSettle, 1200);
|
|
207
|
+
releaseSuppressionRef.current = cleanup;
|
|
208
|
+
}, []);
|
|
209
|
+
return {
|
|
210
|
+
activeId: isControlled ? activeId : uncontrolledActiveId,
|
|
211
|
+
setActiveId,
|
|
212
|
+
lockActiveId
|
|
213
|
+
};
|
|
103
214
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../src/Pagination/Pagination.tsx"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAO5C;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,IAAI,CAAC;IACZ,KAAK,EAAE,IAAI,CAAC;IACZ,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,oBAAoB,CAAC;AAE3D,uCAAuC;AACvC,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzC,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAC3C,SAAS,CAAC,WAAW,CAAC,EACtB,UAAU,CACX;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE7B,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtD;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAG9C;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IAGtB,wDAAwD;IACxD,UAAU,CAAC,EAAE,OAAO,CAAC;IAGrB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,qCAAqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAiGD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE,CA6CpB;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,UAAU,EAAE,cAAc,EAC1B,OAAO,EACP,QAAa,EACb,eAAe,EACf,gBAAgB,EAChB,OAAiB,EACjB,YAAgB,EAChB,IAAW,EACX,UAAkB,EAClB,KAAoB,EACpB,aAAa,EAAE,MAAM,EACrB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,GACJ,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../src/Pagination/Pagination.tsx"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAO5C;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,IAAI,CAAC;IACZ,KAAK,EAAE,IAAI,CAAC;IACZ,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,oBAAoB,CAAC;AAE3D,uCAAuC;AACvC,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzC,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAC3C,SAAS,CAAC,WAAW,CAAC,EACtB,UAAU,CACX;IACC,wCAAwC;IACxC,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE7B,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAGtD;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAG9C;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IAGtB,wDAAwD;IACxD,UAAU,CAAC,EAAE,OAAO,CAAC;IAGrB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,qCAAqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAiGD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,CAAC,MAAM,GAAG,KAAK,CAAC,EAAE,CA6CpB;AAMD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,UAAU,EAAE,cAAc,EAC1B,OAAO,EACP,QAAa,EACb,eAAe,EACf,gBAAgB,EAChB,OAAiB,EACjB,YAAgB,EAChB,IAAW,EACX,UAAkB,EAClB,KAAoB,EACpB,aAAa,EAAE,MAAM,EACrB,MAAM,EACN,SAAS,EACT,KAAK,EACL,GAAG,GACJ,EAAE,eAAe,sCA8OjB;yBAlQe,UAAU"}
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* pageSize, pageSizeOptions, onPageSizeChange, variant, siblingCount, size, isDisabled,
|
|
19
19
|
* label, data-testid, xstyle
|
|
20
20
|
*/
|
|
21
|
-
import { useTransition } from 'react';
|
|
21
|
+
import { useOptimistic, useTransition } from 'react';
|
|
22
22
|
import * as stylex from '@stylexjs/stylex';
|
|
23
23
|
import "../theme/tokens.stylex.js";
|
|
24
24
|
import { colorVars, fontWeightVars, sizeVars, spacingVars, durationVars, easeVars, typeScaleVars } from "../theme/tokens.stylex.js";
|
|
@@ -173,12 +173,16 @@ export function Pagination({
|
|
|
173
173
|
style,
|
|
174
174
|
ref
|
|
175
175
|
}) {
|
|
176
|
-
const [
|
|
176
|
+
const [, startTransition] = useTransition();
|
|
177
|
+
|
|
178
|
+
// Track the page optimistically so rapid prev/next clicks advance from the
|
|
179
|
+
// in-flight target instead of stalling on the last committed page.
|
|
180
|
+
const [optimisticPage, setOptimisticPage] = useOptimistic(page);
|
|
177
181
|
|
|
178
182
|
// Compute pagination state
|
|
179
183
|
const computedTotalPages = totalPagesProp ?? (totalItems != null ? Math.ceil(totalItems / pageSize) : undefined);
|
|
180
|
-
const hasPrevious =
|
|
181
|
-
const hasNext = computedTotalPages != null ?
|
|
184
|
+
const hasPrevious = optimisticPage > 1;
|
|
185
|
+
const hasNext = computedTotalPages != null ? optimisticPage < computedTotalPages : hasMore ?? false;
|
|
182
186
|
|
|
183
187
|
// Return null for empty state
|
|
184
188
|
if (totalItems != null && totalItems <= 0) {
|
|
@@ -187,42 +191,42 @@ export function Pagination({
|
|
|
187
191
|
if (computedTotalPages != null && computedTotalPages <= 0) {
|
|
188
192
|
return null;
|
|
189
193
|
}
|
|
194
|
+
|
|
195
|
+
// Interruptible: re-clicking before the transition settles starts a fresh one
|
|
196
|
+
// with the next optimistic page rather than being dropped, so there is no
|
|
197
|
+
// re-entry guard.
|
|
190
198
|
const handlePageChange = newPage => {
|
|
191
|
-
if (isDisabled
|
|
199
|
+
if (isDisabled) {
|
|
192
200
|
return;
|
|
193
201
|
}
|
|
202
|
+
// Keep onChange urgent so controlled page state updates in the same commit
|
|
203
|
+
// as the click; only the optimistic indicator and changeAction defer.
|
|
194
204
|
onChange(newPage);
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
}
|
|
205
|
+
startTransition(async () => {
|
|
206
|
+
setOptimisticPage(newPage);
|
|
207
|
+
await changeAction?.(newPage);
|
|
208
|
+
});
|
|
200
209
|
};
|
|
201
210
|
const handlePrevious = () => {
|
|
202
211
|
if (hasPrevious) {
|
|
203
|
-
handlePageChange(
|
|
212
|
+
handlePageChange(optimisticPage - 1);
|
|
204
213
|
}
|
|
205
214
|
};
|
|
206
215
|
const handleNext = () => {
|
|
207
216
|
if (hasNext) {
|
|
208
|
-
handlePageChange(
|
|
217
|
+
handlePageChange(optimisticPage + 1);
|
|
209
218
|
}
|
|
210
219
|
};
|
|
211
220
|
const handlePageSizeChange = value => {
|
|
212
221
|
const newSize = Number(value);
|
|
213
222
|
onPageSizeChange?.(newSize);
|
|
214
|
-
// Reset to page 1 when page size changes
|
|
215
|
-
|
|
216
|
-
if (changeAction) {
|
|
217
|
-
startTransition(async () => {
|
|
218
|
-
await changeAction(1);
|
|
219
|
-
});
|
|
220
|
-
}
|
|
223
|
+
// Reset to page 1 when page size changes.
|
|
224
|
+
handlePageChange(1);
|
|
221
225
|
};
|
|
222
226
|
|
|
223
227
|
// Item range for count display
|
|
224
|
-
const rangeStart = (
|
|
225
|
-
const rangeEnd = totalItems != null ? Math.min(
|
|
228
|
+
const rangeStart = (optimisticPage - 1) * pageSize + 1;
|
|
229
|
+
const rangeEnd = totalItems != null ? Math.min(optimisticPage * pageSize, totalItems) : optimisticPage * pageSize;
|
|
226
230
|
const buttonSize = size === 'sm' ? 'sm' : 'md';
|
|
227
231
|
const isSm = size === 'sm';
|
|
228
232
|
const renderIndicator = () => {
|
|
@@ -232,7 +236,7 @@ export function Pagination({
|
|
|
232
236
|
if (computedTotalPages == null) {
|
|
233
237
|
return null;
|
|
234
238
|
}
|
|
235
|
-
const pageRange = generatePageRange(
|
|
239
|
+
const pageRange = generatePageRange(optimisticPage, computedTotalPages, siblingCount);
|
|
236
240
|
return /*#__PURE__*/_jsx(_Fragment, {
|
|
237
241
|
children: pageRange.map((item, index) => {
|
|
238
242
|
if (item === '...') {
|
|
@@ -251,7 +255,7 @@ export function Pagination({
|
|
|
251
255
|
children: "\u2026"
|
|
252
256
|
}, `ellipsis-${previousPage}-${nextPage}`);
|
|
253
257
|
}
|
|
254
|
-
const isActive = item ===
|
|
258
|
+
const isActive = item === optimisticPage;
|
|
255
259
|
return /*#__PURE__*/_jsx(Button, {
|
|
256
260
|
label: `Go to page ${item}`,
|
|
257
261
|
"aria-label": `Go to page ${item}`,
|
|
@@ -296,7 +300,7 @@ export function Pagination({
|
|
|
296
300
|
type: "body",
|
|
297
301
|
size: "sm",
|
|
298
302
|
color: "secondary",
|
|
299
|
-
children: `Page ${
|
|
303
|
+
children: `Page ${optimisticPage} of ${computedTotalPages}`
|
|
300
304
|
})
|
|
301
305
|
});
|
|
302
306
|
}
|
|
@@ -316,11 +320,11 @@ export function Pagination({
|
|
|
316
320
|
}, (_, i) => /*#__PURE__*/_jsx("button", {
|
|
317
321
|
type: "button",
|
|
318
322
|
"aria-label": `Go to page ${i + 1}`,
|
|
319
|
-
"aria-current": i + 1 ===
|
|
323
|
+
"aria-current": i + 1 === optimisticPage ? 'page' : undefined,
|
|
320
324
|
onClick: () => handlePageChange(i + 1),
|
|
321
325
|
disabled: isDisabled,
|
|
322
326
|
...mergeProps(themeProps('pagination-dot', {
|
|
323
|
-
active: i + 1 ===
|
|
327
|
+
active: i + 1 === optimisticPage ? 'active' : null,
|
|
324
328
|
size
|
|
325
329
|
}), {
|
|
326
330
|
0: {
|
|
@@ -347,7 +351,7 @@ export function Pagination({
|
|
|
347
351
|
7: {
|
|
348
352
|
className: "xc342km xng3xce x1717udv x16rqkct x15406qy xuedmi6 xlr8y92 x1a2a7pz x17nn4n9 x1wfwxd8 x7s97pk x1wu31ai xcenk2v x1ewilqj x1h6gzvc xbyyjgo"
|
|
349
353
|
}
|
|
350
|
-
}[!!isSm << 2 | !!(i + 1 ===
|
|
354
|
+
}[!!isSm << 2 | !!(i + 1 === optimisticPage) << 1 | !!isDisabled << 0])
|
|
351
355
|
}, i + 1))
|
|
352
356
|
});
|
|
353
357
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useResizable.d.ts","sourceRoot":"","sources":["../../src/Resizable/useResizable.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,uBAAuB;IACtC,8CAA8C;IAC9C,SAAS,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACtC,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC/C,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,WAAW,EAAE,OAAO,CAAC;IACrB,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mCAAmC;IACnC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,wCAAwC;IACxC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,uEAAuE;IACvE,KAAK,EAAE,cAAc,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IAEd,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAE9C,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,IAAI,CAAC;CACzB;
|
|
1
|
+
{"version":3,"file":"useResizable.d.ts","sourceRoot":"","sources":["../../src/Resizable/useResizable.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,qBAAqB;IACpC,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,qEAAqE;IACrE,gBAAgB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AAED,MAAM,WAAW,uBAAuB;IACtC,8CAA8C;IAC9C,SAAS,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACtC,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAC/C,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,iDAAiD;IACjD,WAAW,EAAE,OAAO,CAAC;IACrB,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,mCAAmC;IACnC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,wCAAwC;IACxC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,uEAAuE;IACvE,KAAK,EAAE,cAAc,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IAEd,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAE9C,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,IAAI,CAAC;CACzB;AAyQD,wBAAgB,YAAY,CAAC,MAAM,EAAE,wBAAwB,GAAG,eAAe,CAAC;AAChF,wBAAgB,YAAY,CAC1B,MAAM,EAAE,uBAAuB,GAC9B,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC"}
|
|
@@ -27,10 +27,6 @@ import { useCallback, useEffect, useRef, useState } from 'react';
|
|
|
27
27
|
const DEFAULT_MIN = 50;
|
|
28
28
|
const DEFAULT_COLLAPSED_SIZE = 40;
|
|
29
29
|
const STORAGE_PREFIX = 'astryx-resizable:';
|
|
30
|
-
// Legacy key prefix read during the compat window so persisted panel sizes
|
|
31
|
-
// survive the xds -> astryx rename. Read-only fallback; we always write the
|
|
32
|
-
// new prefix. Removed at final cutover.
|
|
33
|
-
const LEGACY_STORAGE_PREFIX = 'xds-resizable:';
|
|
34
30
|
|
|
35
31
|
// =============================================================================
|
|
36
32
|
// Helpers
|
|
@@ -60,7 +56,7 @@ function loadPersistedSize(key) {
|
|
|
60
56
|
return null;
|
|
61
57
|
}
|
|
62
58
|
try {
|
|
63
|
-
const raw = localStorage.getItem(STORAGE_PREFIX + key)
|
|
59
|
+
const raw = localStorage.getItem(STORAGE_PREFIX + key);
|
|
64
60
|
if (raw != null) {
|
|
65
61
|
const parsed = JSON.parse(raw);
|
|
66
62
|
if (typeof parsed === 'number') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Selector.d.ts","sourceRoot":"","sources":["../../src/Selector/Selector.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,EASZ,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAGf,OAAO,EAAuB,KAAK,QAAQ,EAAC,MAAM,SAAS,CAAC;AAU5D,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAC;AActD,OAAO,KAAK,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,SAAS,CAAC;AAYpE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"Selector.d.ts","sourceRoot":"","sources":["../../src/Selector/Selector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -486,7 +486,7 @@ export function Selector(props) {
|
|
|
486
486
|
onKeyDown: onKeyDown,
|
|
487
487
|
tabIndex: -1,
|
|
488
488
|
...{
|
|
489
|
-
className: "x78zum5 x6s0dn4 x1qughib x1txdalj x1iyjqo2 xs83m0k x1r8uery xeuugli x1717udv x1ghz6dp xc342km xng3xce xjbqb8w xjb2p0i x1qlqyl8 x15bjb6t x1heor9g x1ypdohk x1a2a7pz
|
|
489
|
+
className: "x78zum5 x6s0dn4 x1qughib x1txdalj x1iyjqo2 xs83m0k x1r8uery xeuugli x1717udv x1ghz6dp xc342km xng3xce xjbqb8w xjb2p0i x1qlqyl8 x15bjb6t x1heor9g x1ypdohk x1a2a7pz"
|
|
490
490
|
},
|
|
491
491
|
children: /*#__PURE__*/_jsx("span", {
|
|
492
492
|
...{
|
package/dist/Slider/Slider.js
CHANGED
|
@@ -484,10 +484,10 @@ export function Slider({
|
|
|
484
484
|
orientation
|
|
485
485
|
}), {
|
|
486
486
|
0: {
|
|
487
|
-
className: "x10l6tqk
|
|
487
|
+
className: "x10l6tqk xdsb6cv xjspbzw x13vifvy x1ey2m1c x51ohtg x1nrll8i xuuh30"
|
|
488
488
|
},
|
|
489
489
|
1: {
|
|
490
|
-
className: "x10l6tqk
|
|
490
|
+
className: "x10l6tqk xdsb6cv xjspbzw xu96u03 x3m8u43 xqu0tyb xwa60dl x1cb1t30"
|
|
491
491
|
}
|
|
492
492
|
}[!!isHorizontal << 0])
|
|
493
493
|
}), /*#__PURE__*/_jsx("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseTable.d.ts","sourceRoot":"","sources":["../../src/Table/BaseTable.tsx"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAe,KAAK,YAAY,EAAkB,KAAK,GAAG,EAAC,MAAM,OAAO,CAAC;AAGhF,OAAO,KAAK,EACV,cAAc,
|
|
1
|
+
{"version":3,"file":"BaseTable.d.ts","sourceRoot":"","sources":["../../src/Table/BaseTable.tsx"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAe,KAAK,YAAY,EAAkB,KAAK,GAAG,EAAC,MAAM,OAAO,CAAC;AAGhF,OAAO,KAAK,EACV,cAAc,EAYf,MAAM,SAAS,CAAC;AAwhBjB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,SAAS,EAAqB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3E,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAA;CAAC,KACrD,YAAY,CAAC"}
|
package/dist/Table/BaseTable.js
CHANGED
|
@@ -105,7 +105,7 @@ function TableRowInner({
|
|
|
105
105
|
CellComponent
|
|
106
106
|
}) {
|
|
107
107
|
// Build cells first
|
|
108
|
-
const cells = columns.map(col => {
|
|
108
|
+
const cells = columns.map((col, columnIndex) => {
|
|
109
109
|
// Apply column alignment to body cells
|
|
110
110
|
const initialCellHtmlProps = {};
|
|
111
111
|
if (col.align) {
|
|
@@ -113,10 +113,13 @@ function TableRowInner({
|
|
|
113
113
|
textAlign: col.align
|
|
114
114
|
};
|
|
115
115
|
}
|
|
116
|
-
const
|
|
116
|
+
const initialBodyCellRenderProps = {
|
|
117
117
|
htmlProps: initialCellHtmlProps,
|
|
118
|
-
styles: []
|
|
119
|
-
|
|
118
|
+
styles: [],
|
|
119
|
+
columnIndex,
|
|
120
|
+
columns: columns
|
|
121
|
+
};
|
|
122
|
+
const cellRenderProps = applyPlugins(plugins, p => p.transformBodyCell, initialBodyCellRenderProps, col, item, columnIndex, columns);
|
|
120
123
|
const isDefaultRenderer = !col.renderCell;
|
|
121
124
|
const rawContent = isDefaultRenderer ? defaultCellRenderer(item, col.key) : col.renderCell?.(item) ?? null;
|
|
122
125
|
|
|
@@ -265,7 +268,7 @@ function BaseTableInner({
|
|
|
265
268
|
});
|
|
266
269
|
|
|
267
270
|
// --- Plugin pipeline: header cells ---
|
|
268
|
-
const headerCells = resolvedColumns.map(col => {
|
|
271
|
+
const headerCells = resolvedColumns.map((col, columnIndex) => {
|
|
269
272
|
const headerContent = col.header ?? col.key;
|
|
270
273
|
|
|
271
274
|
// Build initial htmlProps with column alignment if specified
|
|
@@ -277,11 +280,14 @@ function BaseTableInner({
|
|
|
277
280
|
textAlign: col.align
|
|
278
281
|
};
|
|
279
282
|
}
|
|
280
|
-
const
|
|
283
|
+
const initialHeaderRenderProps = {
|
|
281
284
|
htmlProps: initialHeaderHtmlProps,
|
|
282
285
|
styles: [],
|
|
283
|
-
content: headerContent
|
|
284
|
-
|
|
286
|
+
content: headerContent,
|
|
287
|
+
columnIndex,
|
|
288
|
+
columns: resolvedColumns
|
|
289
|
+
};
|
|
290
|
+
const cellRenderProps = applyPlugins(plugins, p => p.transformHeaderCell, initialHeaderRenderProps, col, columnIndex, resolvedColumns);
|
|
285
291
|
|
|
286
292
|
// Apply pre-computed column width styles on the <th>.
|
|
287
293
|
// With table-layout: fixed, header cell sizing controls column widths.
|
|
@@ -381,8 +387,20 @@ function BaseTableInner({
|
|
|
381
387
|
// when columns exceed the container width. This wrapper sits between
|
|
382
388
|
// the <table> and transformTableContext, so plugin chrome (pagination,
|
|
383
389
|
// toolbars) renders outside the scroll area.
|
|
390
|
+
//
|
|
391
|
+
// Before rendering the wrapper, run the plugin `transformScrollWrapper`
|
|
392
|
+
// pipeline so plugins can attach a ref to the scroll container (scroll-aware
|
|
393
|
+
// sticky shadows, virtualization) and inject before/after chrome.
|
|
384
394
|
if (ScrollWrapper) {
|
|
395
|
+
const scrollWrapperRenderProps = applyPlugins(plugins, p => p.transformScrollWrapper, {
|
|
396
|
+
htmlProps: {},
|
|
397
|
+
styles: []
|
|
398
|
+
});
|
|
385
399
|
tableElement = /*#__PURE__*/_jsx(ScrollWrapper, {
|
|
400
|
+
htmlProps: scrollWrapperRenderProps.htmlProps,
|
|
401
|
+
styles: scrollWrapperRenderProps.styles,
|
|
402
|
+
beforeTable: scrollWrapperRenderProps.beforeTable,
|
|
403
|
+
afterTable: scrollWrapperRenderProps.afterTable,
|
|
386
404
|
children: tableElement
|
|
387
405
|
});
|
|
388
406
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table/Table.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAU,KAAK,YAAY,EAAE,KAAK,GAAG,EAAC,MAAM,OAAO,CAAC;AAQ3D,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,WAAW,EAEZ,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/Table/Table.tsx"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAU,KAAK,YAAY,EAAE,KAAK,GAAG,EAAC,MAAM,OAAO,CAAC;AAQ3D,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,WAAW,EAEZ,MAAM,SAAS,CAAC;AAOjB,oDAAoD;AAEpD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAE/D,kCAAkC;AAElC,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAEjE,8DAA8D;AAE9D,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,CAAC;AAEpD;;;;;GAKG;AAEH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,IAAI,CACzE,cAAc,CAAC,CAAC,CAAC,EACjB,SAAS,GAAG,YAAY,CACzB;IACC,uCAAuC;IACvC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,wCAAwC;IACxC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;OAUG;IACH,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;IACnC,6CAA6C;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;CAC1C;AAiJD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,eAAO,MAAM,KAAK,EAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG;IAAC,GAAG,CAAC,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAA;CAAC,KACjD,YAAY,CAAC"}
|
package/dist/Table/Table.js
CHANGED
|
@@ -41,7 +41,7 @@ import { themeProps } from "../utils/themeProps.js";
|
|
|
41
41
|
*
|
|
42
42
|
* @template T - The row data type
|
|
43
43
|
*/
|
|
44
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
44
|
+
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
45
45
|
// =============================================================================
|
|
46
46
|
// StyleX Styles (table-level only; cell/row/header styles owned by components)
|
|
47
47
|
// =============================================================================
|
|
@@ -53,14 +53,37 @@ const tableStyles = {
|
|
|
53
53
|
$$css: true
|
|
54
54
|
}
|
|
55
55
|
};
|
|
56
|
+
const scrollWrapperStyles = {
|
|
57
|
+
base: {
|
|
58
|
+
kXHlph: "xw2csxc",
|
|
59
|
+
kuHK5b: "x5lxg6s",
|
|
60
|
+
$$css: true
|
|
61
|
+
},
|
|
62
|
+
containerBleed: {
|
|
63
|
+
keTefX: "xojxgvx",
|
|
64
|
+
k71WvV: "x1fcf3bl",
|
|
65
|
+
kzqmXN: "xx6qvi6",
|
|
66
|
+
keoZOQ: "xkibk3",
|
|
67
|
+
k1K539: "xlayyun",
|
|
68
|
+
$$css: true
|
|
69
|
+
}
|
|
70
|
+
};
|
|
56
71
|
function TableScrollWrapper({
|
|
57
|
-
children
|
|
72
|
+
children,
|
|
73
|
+
htmlProps,
|
|
74
|
+
styles: pluginStyles,
|
|
75
|
+
beforeTable,
|
|
76
|
+
afterTable
|
|
58
77
|
}) {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
78
|
+
const {
|
|
79
|
+
ref,
|
|
80
|
+
...restHtmlProps
|
|
81
|
+
} = htmlProps ?? {};
|
|
82
|
+
return /*#__PURE__*/_jsxs("div", {
|
|
83
|
+
ref: ref,
|
|
84
|
+
...restHtmlProps,
|
|
85
|
+
...mergeProps(themeProps('table-scroll-wrapper'), stylex.props(scrollWrapperStyles.base, scrollWrapperStyles.containerBleed, ...(pluginStyles ?? []))),
|
|
86
|
+
children: [beforeTable, children, afterTable]
|
|
64
87
|
});
|
|
65
88
|
}
|
|
66
89
|
|
package/dist/Table/index.d.ts
CHANGED
|
@@ -22,10 +22,11 @@ export { useTablePagination, paginateData } from './plugins/pagination';
|
|
|
22
22
|
export { useTableColumnSettings } from './plugins/columnSettings';
|
|
23
23
|
export { useTableColumnSettingsState } from './plugins/columnSettings';
|
|
24
24
|
export { useTableColumnResize } from './plugins/columnResize';
|
|
25
|
+
export { useTableStickyColumns } from './plugins/stickyColumns';
|
|
25
26
|
export { useTableFiltering, useTableFilterState, toSearchFilters, } from './plugins/filtering';
|
|
26
27
|
export { useBaseTablePlugins } from './useBaseTablePlugins';
|
|
27
28
|
export { proportional, pixel, generateColumns, resolveColumnWidths, DEFAULT_MIN_COLUMN_WIDTH, } from './columnUtils';
|
|
28
|
-
export type { TableColumn, TableColumnAlign, TableVerticalAlign, ColumnWidth, ProportionalWidth, PixelWidth, TablePlugin, TableRenderProps, HeaderRowRenderProps, HeaderCellRenderProps, BodyRowRenderProps, BodyCellRenderProps, BaseTableProps, } from './types';
|
|
29
|
+
export type { TableColumn, TableColumnAlign, TableVerticalAlign, ColumnWidth, ProportionalWidth, PixelWidth, TablePlugin, TableRenderProps, HeaderRowRenderProps, HeaderCellRenderProps, BodyRowRenderProps, BodyCellRenderProps, ScrollWrapperRenderProps, BaseTableProps, } from './types';
|
|
29
30
|
export type { TableProps, TableDensity, TableDividers, TableTextOverflow, } from './Table';
|
|
30
31
|
export type { TableRowProps } from './TableRow';
|
|
31
32
|
export type { TableCellProps } from './TableCell';
|
|
@@ -42,5 +43,6 @@ export type { UseTablePaginationConfig } from './plugins/pagination';
|
|
|
42
43
|
export type { UseTableColumnSettingsConfig, ColumnSettingsOption, } from './plugins/columnSettings';
|
|
43
44
|
export type { UseTableColumnSettingsStateConfig, UseTableColumnSettingsStateReturn, } from './plugins/columnSettings';
|
|
44
45
|
export type { UseTableColumnResizeConfig } from './plugins/columnResize';
|
|
46
|
+
export type { UseTableStickyColumnsConfig } from './plugins/stickyColumns';
|
|
45
47
|
export type { UseTableFilteringConfig, TableFilterState, TableFilterVariant, TableFilterValue, TableFilterFieldRef, } from './plugins/filtering';
|
|
46
48
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Table/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Table/index.ts"],"names":[],"mappings":"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"}
|