e-virt-table
Version:
A powerful data table based on canvas. You can use it as data grid、Microsoft Excel or Google sheets. It supports virtual scroll、cell edit etc.
38 lines • 1.39 kB
JavaScript
export function getScrollbarMode(config) {
const mode = config.scrollbarMode ?? config.SCROLLBAR_MODE;
return mode === 'inner' ? 'inner' : 'outer';
}
export function isInnerScrollbarMode(config) {
return getScrollbarMode(config) === 'inner';
}
export function getLayoutScrollerTrackSize(config) {
return isInnerScrollbarMode(config) ? 0 : config.SCROLLER_TRACK_SIZE || 0;
}
export function getOverlayScrollerTrackSize(config) {
return config.SCROLLER_TRACK_SIZE || 0;
}
export function getScrollbarCornerOffset(config, hasOppositeScrollbar) {
if (!isInnerScrollbarMode(config) || !hasOppositeScrollbar) {
return 0;
}
return getOverlayScrollerTrackSize(config);
}
export function getScrollbarThumbEndInset(config) {
return isInnerScrollbarMode(config) ? 1 : 0;
}
export function shouldDrawScrollbarTrackBorder(config) {
return !isInnerScrollbarMode(config);
}
export function shouldDrawScrollbarTrackBackground(config) {
return !isInnerScrollbarMode(config);
}
export function shouldStartInnerScrollbarShowTimer(config, isPointerInsideTable) {
return isInnerScrollbarMode(config) && isPointerInsideTable;
}
export function shouldDrawScrollbar(config, state) {
if (!isInnerScrollbarMode(config)) {
return true;
}
return state.innerVisible || state.isFocus || state.isDragging;
}
//# sourceMappingURL=ScrollbarMode.js.map