@qoretechnologies/reqore 0.74.2 → 0.74.3-pr.651.g07cdba1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/FadeScroller/index.d.ts.map +1 -1
- package/dist/components/FadeScroller/index.js +21 -38
- package/dist/components/FadeScroller/index.js.map +1 -1
- package/dist/components/NavRail/index.d.ts +72 -7
- package/dist/components/NavRail/index.d.ts.map +1 -1
- package/dist/components/NavRail/index.js +230 -39
- package/dist/components/NavRail/index.js.map +1 -1
- package/dist/hooks/useScrollFade.d.ts +61 -0
- package/dist/hooks/useScrollFade.d.ts.map +1 -0
- package/dist/hooks/useScrollFade.js +70 -0
- package/dist/hooks/useScrollFade.js.map +1 -0
- package/package.json +1 -1
- package/tests.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FadeScroller/index.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/FadeScroller/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoB,SAAS,EAA2C,MAAM,OAAO,CAAC;AAE7F,OAAO,EAAiB,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAK5C,OAAO,EACL,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAS5B,MAAM,WAAW,wBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,EACzD,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB;IACpB,mEAAmE;IACnE,QAAQ,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,aAAa,CAAC,EAAE,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IACjE;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;;;;;;;;;;;;OAeG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AA6JD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kBAAkB,+JAuR9B,CAAC;AAIF,eAAe,kBAAkB,CAAC"}
|
|
@@ -36,6 +36,7 @@ var styled_components_1 = __importDefault(require("styled-components"));
|
|
|
36
36
|
var sizes_1 = require("../../constants/sizes");
|
|
37
37
|
var colors_1 = require("../../helpers/colors");
|
|
38
38
|
var useCombinedRefs_1 = require("../../hooks/useCombinedRefs");
|
|
39
|
+
var useScrollFade_1 = require("../../hooks/useScrollFade");
|
|
39
40
|
var useTheme_1 = require("../../hooks/useTheme");
|
|
40
41
|
var TooltipComponent_1 = require("../TooltipComponent");
|
|
41
42
|
/**
|
|
@@ -120,47 +121,29 @@ exports.ReqoreFadeScroller = (0, react_1.memo)((0, react_1.forwardRef)(function
|
|
|
120
121
|
var theme = (0, useTheme_1.useReqoreTheme)('main', customTheme, intent, undefined, inheritCustomTheme);
|
|
121
122
|
var scrollRef = (0, react_1.useRef)(null);
|
|
122
123
|
var targetRef = (0, useCombinedRefs_1.useCombinedRefs)(ref).targetRef;
|
|
123
|
-
// Read inside
|
|
124
|
+
// Read inside the measurement pass, which is dependency-free so it can be
|
|
124
125
|
// handed to listeners and observers once and never rebuilt.
|
|
125
126
|
var dragToScrollRef = (0, react_1.useRef)(dragToScroll);
|
|
126
127
|
dragToScrollRef.current = dragToScroll;
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
}
|
|
146
|
-
// After every render, because the children can change width without the
|
|
147
|
-
// scroller resizing (a chip's label loads, an item is removed). Safe to run
|
|
148
|
-
// unconditionally now that it only writes classes: there is no state for it
|
|
149
|
-
// to feed back into.
|
|
150
|
-
(0, react_1.useLayoutEffect)(update);
|
|
151
|
-
(0, react_1.useEffect)(function () {
|
|
152
|
-
var element = scrollRef.current;
|
|
153
|
-
if (!element) {
|
|
154
|
-
return undefined;
|
|
155
|
-
}
|
|
156
|
-
element.addEventListener('scroll', update, { passive: true });
|
|
157
|
-
var observer = typeof ResizeObserver === 'undefined' ? undefined : new ResizeObserver(update);
|
|
158
|
-
observer === null || observer === void 0 ? void 0 : observer.observe(element);
|
|
159
|
-
return function () {
|
|
160
|
-
element.removeEventListener('scroll', update);
|
|
161
|
-
observer === null || observer === void 0 ? void 0 : observer.disconnect();
|
|
162
|
-
};
|
|
163
|
-
}, [update]);
|
|
128
|
+
// The cursor follows the measurement, not the render: toggling a class
|
|
129
|
+
// here keeps "can this be dragged?" answered by the same pass that
|
|
130
|
+
// decides which edges fade, without a state round-trip.
|
|
131
|
+
var onMeasure = (0, react_1.useCallback)(function (_a) {
|
|
132
|
+
var element = _a.element, overflows = _a.overflows;
|
|
133
|
+
element.classList.toggle('reqore-fade-scroller-draggable', dragToScrollRef.current && overflows);
|
|
134
|
+
}, []);
|
|
135
|
+
// Which edges fade is a measurement carried by classes on the wrapper (see
|
|
136
|
+
// the styled block above, and the hook for why it is never state). The
|
|
137
|
+
// pass re-runs on scroll, on resize and after every render.
|
|
138
|
+
(0, useScrollFade_1.useScrollFade)({
|
|
139
|
+
scrollRef: scrollRef,
|
|
140
|
+
targetRef: targetRef,
|
|
141
|
+
axis: 'x',
|
|
142
|
+
enabled: fade,
|
|
143
|
+
startClassName: 'reqore-fade-scroller-fade-left',
|
|
144
|
+
endClassName: 'reqore-fade-scroller-fade-right',
|
|
145
|
+
onMeasure: onMeasure,
|
|
146
|
+
});
|
|
164
147
|
(0, react_1.useEffect)(function () {
|
|
165
148
|
var element = scrollRef.current;
|
|
166
149
|
if (!dragToScroll || !element) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FadeScroller/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/FadeScroller/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { TReqoreIntent } from '../../constants/theme';
|
|
|
4
4
|
import { IReqoreComponent, IReqoreIntent, IWithReqoreCustomTheme, IWithReqoreEffect, IWithReqoreFlat, IWithReqoreMinimal, IWithReqoreSize, IWithReqoreTransparent } from '../../types/global';
|
|
5
5
|
import { IReqoreIconName } from '../../types/icons';
|
|
6
6
|
import { IReqoreButtonProps } from '../Button';
|
|
7
|
-
import { IReqoreEffect } from '../Effect';
|
|
7
|
+
import { IReqoreEffect, TReqoreHexColor } from '../Effect';
|
|
8
8
|
export interface IReqoreNavRailItem {
|
|
9
9
|
/** Stable id used for active-state matching and callbacks. */
|
|
10
10
|
id: string;
|
|
@@ -93,6 +93,56 @@ export interface IReqoreNavRailProps extends IReqoreComponent, IWithReqoreSize,
|
|
|
93
93
|
* (the lower of the two wins), so a short viewport can still show fewer. Does
|
|
94
94
|
* not cap the active page's sub-items. */
|
|
95
95
|
maxItems?: number;
|
|
96
|
+
/**
|
|
97
|
+
* Fold hidden destinations behind an expand toggle that grows the rail in
|
|
98
|
+
* place, instead of the `⋮` flyout. Collapsed, the rail shows what the height
|
|
99
|
+
* budget and `maxItems` allow; expanded, it shows EVERY item and section,
|
|
100
|
+
* growing up to `expandedMaxHeight` and scrolling past that — with the
|
|
101
|
+
* scrollbar hidden and a vignette on whichever edge still has marks out of
|
|
102
|
+
* view. The toggle is the rail's only overflow affordance in this mode: the
|
|
103
|
+
* active page's hidden sections fold behind it too, not into a `⋮`.
|
|
104
|
+
*/
|
|
105
|
+
expandable?: boolean;
|
|
106
|
+
/** Controlled expanded state (with `expandable`). Omit to run uncontrolled. */
|
|
107
|
+
expanded?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Uncontrolled initial expanded state.
|
|
110
|
+
* @default false
|
|
111
|
+
*/
|
|
112
|
+
defaultExpanded?: boolean;
|
|
113
|
+
onExpandedChange?: (expanded: boolean) => void;
|
|
114
|
+
/**
|
|
115
|
+
* Tallest the expanded rail may grow before it scrolls. A number is taken as
|
|
116
|
+
* px; a string is any CSS length. A `floating` rail is additionally capped by
|
|
117
|
+
* its positioned ancestor, whichever is shorter.
|
|
118
|
+
* @default '95vh'
|
|
119
|
+
*/
|
|
120
|
+
expandedMaxHeight?: number | string;
|
|
121
|
+
/**
|
|
122
|
+
* Colour of the vignette at the scrolling edges of an expanded rail. Defaults
|
|
123
|
+
* to the rail's own surface, so the marks read as dissolving into it; set it
|
|
124
|
+
* when a surface `effect` paints something the default cannot match.
|
|
125
|
+
*/
|
|
126
|
+
fadeColor?: TReqoreHexColor;
|
|
127
|
+
/**
|
|
128
|
+
* Show each mark's label beside its icon, widening the rail — to the right for
|
|
129
|
+
* a left / static rail, to the left for a right one:
|
|
130
|
+
* - `true` — always: a labelled rail.
|
|
131
|
+
* - `'hover'` — icons only until the pointer has rested on the rail for
|
|
132
|
+
* `showLabelsDelay`; the labels hide again once it leaves. Pointer devices
|
|
133
|
+
* only: on a touch screen there is no hover to dwell in, so the rail stays
|
|
134
|
+
* icon-only (as a rail on a tablet should) and the marks keep their
|
|
135
|
+
* tooltips.
|
|
136
|
+
* Labelled marks drop their tooltips — the label IS the tooltip — and the
|
|
137
|
+
* `header` / `footer` align to the rail's leading edge.
|
|
138
|
+
*/
|
|
139
|
+
showLabels?: boolean | 'hover';
|
|
140
|
+
/**
|
|
141
|
+
* How long the pointer must rest on the rail before `showLabels='hover'`
|
|
142
|
+
* reveals the labels, in ms.
|
|
143
|
+
* @default 1500
|
|
144
|
+
*/
|
|
145
|
+
showLabelsDelay?: number;
|
|
96
146
|
/** Surface radius. Round (pill, matching the circular marks) by default;
|
|
97
147
|
* `radiusSize` overrides with a fixed size; `rounded={false}` squares it. */
|
|
98
148
|
rounded?: boolean;
|
|
@@ -125,7 +175,9 @@ export interface IReqoreNavRailProps extends IReqoreComponent, IWithReqoreSize,
|
|
|
125
175
|
moreSectionsLabel?: string;
|
|
126
176
|
/**
|
|
127
177
|
* Suffix used to build the overflow-trigger tooltip content — rendered as
|
|
128
|
-
* `${hidden.length} ${overflowTooltipSuffix}`. Defaults to `'more'`.
|
|
178
|
+
* `${hidden.length} ${overflowTooltipSuffix}`. Defaults to `'more'`. With
|
|
179
|
+
* `expandable`, the same string is the collapsed toggle's tooltip (and, on a
|
|
180
|
+
* labelled rail, its text).
|
|
129
181
|
*/
|
|
130
182
|
overflowTooltipSuffix?: string;
|
|
131
183
|
/**
|
|
@@ -134,15 +186,28 @@ export interface IReqoreNavRailProps extends IReqoreComponent, IWithReqoreSize,
|
|
|
134
186
|
* grouping element's `aria-label`. Defaults to `'sections'`.
|
|
135
187
|
*/
|
|
136
188
|
activeGroupAriaLabelSuffix?: string;
|
|
189
|
+
/**
|
|
190
|
+
* ARIA label of the expand toggle while the rail is collapsed (its tooltip
|
|
191
|
+
* is the hidden count). Defaults to `'Show all items'`.
|
|
192
|
+
*/
|
|
193
|
+
expandLabel?: string;
|
|
194
|
+
/**
|
|
195
|
+
* ARIA label, tooltip and (on a labelled rail) text of the expand toggle
|
|
196
|
+
* while the rail is expanded. Defaults to `'Show fewer items'`.
|
|
197
|
+
*/
|
|
198
|
+
collapseLabel?: string;
|
|
137
199
|
}
|
|
138
200
|
/**
|
|
139
201
|
* A compact navigation rail: a thin column of circular marks for primary
|
|
140
202
|
* destinations, with the active destination's sub-items nested directly beneath
|
|
141
|
-
* it in a distinct sub-capsule. Overflow folds into a `⋮` flyout
|
|
142
|
-
* a
|
|
143
|
-
*
|
|
144
|
-
*
|
|
203
|
+
* it in a distinct sub-capsule. Overflow folds into a `⋮` flyout — or, with
|
|
204
|
+
* `expandable`, behind a toggle that grows the rail in place (capped, then
|
|
205
|
+
* scrolling behind a vignette). It can pin to a gutter and rest dimmed until
|
|
206
|
+
* approached (or, for mobile, stay hidden and appear only while scrolling); its
|
|
207
|
+
* sub-items can drive and follow page scroll via `scrollSpy` + `scrollTargetId`;
|
|
208
|
+
* and `showLabels` widens it into a labelled rail — always, or after the pointer
|
|
209
|
+
* has rested on it for a moment.
|
|
145
210
|
*/
|
|
146
|
-
export declare const ReqoreNavRail: import("react").MemoExoticComponent<({ items, activeId, activeSubId, defaultActiveId, defaultActiveSubId, onItemClick, onSubClick, position, floating, idleReveal, idleOpacity, revealOnScroll, scrollHideDelay, offset, scrollContainer, scrollSpy, maxHeight, maxItems, size, intent, effect, activeEffect, flat, minimal, transparent, rounded, radiusSize, padded, raised, opacity, blur, customTheme, inheritCustomTheme, header, footer, className, style, moreItemsLabel, moreSectionsLabel, overflowTooltipSuffix, activeGroupAriaLabelSuffix, }: IReqoreNavRailProps) => import("react/jsx-runtime").JSX.Element>;
|
|
211
|
+
export declare const ReqoreNavRail: import("react").MemoExoticComponent<({ items, activeId, activeSubId, defaultActiveId, defaultActiveSubId, onItemClick, onSubClick, position, floating, idleReveal, idleOpacity, revealOnScroll, scrollHideDelay, offset, scrollContainer, scrollSpy, maxHeight, maxItems, expandable, expanded, defaultExpanded, onExpandedChange, expandedMaxHeight, fadeColor, showLabels, showLabelsDelay, size, intent, effect, activeEffect, flat, minimal, transparent, rounded, radiusSize, padded, raised, opacity, blur, customTheme, inheritCustomTheme, header, footer, className, style, moreItemsLabel, moreSectionsLabel, overflowTooltipSuffix, activeGroupAriaLabelSuffix, expandLabel, collapseLabel, }: IReqoreNavRailProps) => import("react/jsx-runtime").JSX.Element>;
|
|
147
212
|
export default ReqoreNavRail;
|
|
148
213
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/NavRail/index.tsx"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EAEb,SAAS,EACT,SAAS,EAMV,MAAM,OAAO,CAAC;AAEf,OAAO,EAKL,MAAM,EACP,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAgB,aAAa,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/NavRail/index.tsx"],"names":[],"mappings":"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"}
|