bkui-vue 2.0.1-beta.34 → 2.0.1-beta.34.scrollbar.2

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.
Files changed (42) hide show
  1. package/dist/index.cjs.js +57 -57
  2. package/dist/index.esm.js +14138 -14147
  3. package/dist/index.umd.js +58 -58
  4. package/dist/style.css +1 -1
  5. package/dist/style.variable.css +1 -1
  6. package/lib/index.js +1 -1
  7. package/lib/scrollbar/handlers/click-rail.d.ts +2 -0
  8. package/lib/scrollbar/handlers/drag-thumb.d.ts +1 -0
  9. package/lib/scrollbar/handlers/keyboard.d.ts +2 -0
  10. package/lib/scrollbar/handlers/mouse-wheel.d.ts +2 -0
  11. package/lib/scrollbar/handlers/touch.d.ts +4 -0
  12. package/lib/scrollbar/helper/class-names.d.ts +21 -0
  13. package/lib/scrollbar/helper/css.d.ts +3 -0
  14. package/lib/scrollbar/helper/dom.d.ts +4 -0
  15. package/lib/scrollbar/helper/event-manager.d.ts +20 -0
  16. package/lib/scrollbar/helper/util.d.ts +11 -0
  17. package/lib/scrollbar/index.d.ts +129 -12
  18. package/lib/scrollbar/index.js +1336 -18488
  19. package/lib/scrollbar/process-scroll-diff.d.ts +1 -0
  20. package/lib/scrollbar/scrollbar.css +91 -75
  21. package/lib/scrollbar/scrollbar.less +111 -91
  22. package/lib/scrollbar/scrollbar.variable.css +90 -74
  23. package/lib/scrollbar/update-geometry.d.ts +8 -0
  24. package/lib/styles/index.d.ts +1 -0
  25. package/lib/table/table.css +90 -82
  26. package/lib/table/table.variable.css +90 -82
  27. package/lib/tree/tree.css +91 -83
  28. package/lib/tree/tree.variable.css +91 -83
  29. package/lib/virtual-render/index.d.ts +0 -23
  30. package/lib/virtual-render/index.js +54 -106
  31. package/lib/virtual-render/props.d.ts +0 -6
  32. package/lib/virtual-render/use-scrollbar.d.ts +3 -17
  33. package/lib/virtual-render/virtual-render.css +90 -82
  34. package/lib/virtual-render/virtual-render.d.ts +2 -13
  35. package/lib/virtual-render/virtual-render.less +1 -10
  36. package/lib/virtual-render/virtual-render.variable.css +90 -82
  37. package/package.json +1 -1
  38. package/lib/scrollbar/scrollbar-core/can-use-dom.d.ts +0 -2
  39. package/lib/scrollbar/scrollbar-core/helpers.d.ts +0 -5
  40. package/lib/scrollbar/scrollbar-core/index.d.ts +0 -242
  41. package/lib/scrollbar/scrollbar-core/mouse-wheel.d.ts +0 -5
  42. package/lib/scrollbar/scrollbar-core/scrollbar-width.d.ts +0 -1
@@ -1,242 +0,0 @@
1
- import * as helpers from './helpers';
2
- interface DebouncedFunc<T extends (...args: any[]) => void> {
3
- /**
4
- * Call the original function, but applying the debounce rules.
5
- *
6
- * If the debounced function can be run immediately, this calls it and returns its return
7
- * value.
8
- *
9
- * Otherwise, it returns the return value of the last invocation, or undefined if the debounced
10
- * function was not invoked yet.
11
- */
12
- (...args: Parameters<T>): ReturnType<T> | undefined;
13
- /**
14
- * Throw away any pending invocation of the debounced function.
15
- */
16
- cancel(): void;
17
- /**
18
- * If there is a pending invocation of the debounced function, invoke it immediately and return
19
- * its return value.
20
- *
21
- * Otherwise, return the value from the last invocation, or undefined if the debounced function
22
- * was never invoked.
23
- */
24
- flush(): ReturnType<T> | undefined;
25
- }
26
- export interface Options {
27
- forceVisible: Axis | boolean;
28
- clickOnTrack: boolean;
29
- scrollbarMinSize: number;
30
- scrollbarMaxSize: number;
31
- classNames: Partial<ClassNames>;
32
- ariaLabel: string;
33
- contentNode: HTMLElement | null;
34
- delegateYContent: HTMLElement | null;
35
- delegateXContent: HTMLElement | null;
36
- wrapperNode: HTMLElement | null;
37
- autoHide: boolean;
38
- useSystemScrollXBehavior?: boolean;
39
- useSystemScrollYBehavior?: boolean;
40
- size: 'default' | 'small';
41
- scrollDelegate: {
42
- scrollHeight?: number;
43
- scrollWidth?: number;
44
- };
45
- onScrollCallback?: (args: {
46
- x: number;
47
- y: number;
48
- }) => void;
49
- }
50
- export type BkScrollBarOptions = Partial<Options>;
51
- type ClassNames = {
52
- contentEl: string;
53
- offset: string;
54
- mask: string;
55
- wrapper: string;
56
- placeholder: string;
57
- scrollbar: string;
58
- track: string;
59
- visible: string;
60
- horizontal: string;
61
- vertical: string;
62
- hover: string;
63
- dragging: string;
64
- scrolling: string;
65
- scrollable: string;
66
- mouseEntered: string;
67
- };
68
- type Axis = 'x' | 'y';
69
- type AxisProps = {
70
- scrollOffsetAttr: 'scrollLeft' | 'scrollTop';
71
- sizeAttr: 'height' | 'width';
72
- scrollSizeAttr: 'scrollHeight' | 'scrollWidth';
73
- offsetSizeAttr: 'offsetHeight' | 'offsetWidth';
74
- offsetAttr: 'left' | 'top';
75
- overflowAttr: 'overflowX' | 'overflowY';
76
- dragOffset: number;
77
- isOverflowing: boolean;
78
- forceVisible: boolean;
79
- track: {
80
- size: number;
81
- el: HTMLElement | null;
82
- rect: DOMRect | null;
83
- isVisible: boolean;
84
- };
85
- scrollbar: {
86
- size: number;
87
- el: HTMLElement | null;
88
- rect: DOMRect | null;
89
- isVisible: boolean;
90
- };
91
- };
92
- type RtlHelpers = {
93
- isScrollOriginAtZero: boolean;
94
- isScrollingToNegative: boolean;
95
- } | null;
96
- type DefaultOptions = Options & typeof BkScrollbarCore.defaultOptions;
97
- type MouseWheelInstance = {
98
- addWheelEvent: (target: HTMLElement) => void;
99
- removeWheelEvent: (target: HTMLElement) => void;
100
- };
101
- export default class BkScrollbarCore {
102
- static rtlHelpers: RtlHelpers;
103
- static defaultOptions: Options;
104
- /**
105
- * Static functions
106
- */
107
- static helpers: typeof helpers;
108
- /**
109
- * Helper to fix browsers inconsistency on RTL:
110
- * - Firefox inverts the scrollbar initial position
111
- * - IE11 inverts both scrollbar position and scrolling offset
112
- */
113
- static getRtlHelpers(): {
114
- isScrollOriginAtZero: boolean;
115
- isScrollingToNegative: boolean;
116
- };
117
- static getOffset(el: Element): {
118
- top: number;
119
- left: number;
120
- };
121
- el: HTMLElement;
122
- options: DefaultOptions;
123
- classNames: ClassNames;
124
- axis: {
125
- x: AxisProps;
126
- y: AxisProps;
127
- };
128
- draggedAxis?: Axis;
129
- removePreventClickId: null | number;
130
- minScrollbarWidth: number;
131
- stopScrollDelay: number;
132
- isScrolling: boolean;
133
- isMouseEntering: boolean;
134
- isDragging: boolean;
135
- scrollXTicking: boolean;
136
- scrollYTicking: boolean;
137
- wrapperEl: HTMLElement | null;
138
- contentEl: HTMLElement | null;
139
- delegateXContent: HTMLElement | null;
140
- delegateYContent: HTMLElement | null;
141
- rtlHelpers: RtlHelpers;
142
- scrollbarWidth: number;
143
- resizeObserver: ResizeObserver | null;
144
- mutationObserver: MutationObserver | null;
145
- elStyles: CSSStyleDeclaration | null;
146
- isRtl: boolean | null;
147
- mouseX: number;
148
- mouseY: number;
149
- mouseWheelInstance: MouseWheelInstance;
150
- wheelOffsetY: number;
151
- wheelOffsetX: number;
152
- mouseWeelTimer: any;
153
- /**
154
- * 最外层滚动容器滚动实际位置缓存器
155
- */
156
- wrapperScrollValue: {
157
- scrollTop: number;
158
- scrollLeft: number;
159
- };
160
- /**
161
- * 模拟滚动条内部缩略滚动器滚动位置缓存器
162
- */
163
- wrapperScrollMap: {};
164
- onMouseMove: (() => void) | DebouncedFunc<(...args: any[]) => void>;
165
- onWindowResize: (() => void) | DebouncedFunc<(...args: any[]) => void>;
166
- onStopScrolling: (() => void) | DebouncedFunc<(...args: any[]) => void>;
167
- onMouseEntered: (() => void) | DebouncedFunc<(...args: any[]) => void>;
168
- onMouseWheel: (() => void) | DebouncedFunc<(...args: any[]) => void>;
169
- constructor(element: HTMLElement, options?: Partial<Options>);
170
- getScrollbarWidth(): number;
171
- init(): void;
172
- initDOM(): void;
173
- initListeners(): void;
174
- getWrapperElScrollSize(attrName: string, target?: HTMLElement): any;
175
- recalculate(): void;
176
- /**
177
- * Calculate scrollbar size
178
- */
179
- getScrollbarSize(axis?: Axis): any;
180
- positionScrollbar(axis?: Axis): void;
181
- toggleTrackVisibility(axis?: Axis): void;
182
- showScrollbar(axis?: Axis): void;
183
- hideScrollbar(axis?: Axis): void;
184
- /**
185
- * On scroll event handling
186
- */
187
- onScroll: () => void;
188
- scrollX: () => void;
189
- scrollY: () => void;
190
- onMouseEnter: () => void;
191
- onMouseMoveForAxis(axis?: Axis): void;
192
- onMouseLeave: () => void;
193
- onMouseLeaveForAxis(axis?: Axis): void;
194
- onPointerEvent: (e: PointerEvent) => void;
195
- /**
196
- * on scrollbar handle drag movement starts
197
- */
198
- onDragStart(e: MouseEvent, axis?: Axis): void;
199
- /**
200
- * Drag scrollbar handle
201
- */
202
- drag: (e: MouseEvent) => void;
203
- getPointerPosition: (dragPos: number, axis: Axis) => number;
204
- scrollToAxisPosition: (scrollPos: number, axisValue: Axis) => boolean;
205
- fixedScrollTo: (axisValue: Axis, resolvedValue: number) => void;
206
- /**
207
- * End scroll handle drag
208
- */
209
- onEndDrag: (e: MouseEvent) => void;
210
- /**
211
- * Handler to ignore click events during drag
212
- */
213
- preventClick: (e: MouseEvent) => void;
214
- onTrackClick(e: MouseEvent, axis?: Axis): void;
215
- /**
216
- * Getter for content element
217
- */
218
- getContentElement(): HTMLElement;
219
- /**
220
- * Getter for original scrolling element
221
- */
222
- getScrollElement(): HTMLElement;
223
- removeListeners(): void;
224
- /**
225
- * Remove all listeners from DOM nodes
226
- */
227
- unMount(): void;
228
- /**
229
- * Check if mouse is within bounds
230
- */
231
- isWithinBounds(bbox: DOMRect): boolean;
232
- /**
233
- * Find element children matches query
234
- */
235
- findChild(el: HTMLElement, query: string): any;
236
- private mOnMouseWheel;
237
- private mOnStopScrolling;
238
- private mOnMouseEntered;
239
- private mOnMouseMove;
240
- private mOnWindowResize;
241
- }
242
- export {};
@@ -1,5 +0,0 @@
1
- declare const _default: (fn: any) => {
2
- addWheelEvent: (target: HTMLElement) => void;
3
- removeWheelEvent: (target: HTMLElement) => void;
4
- };
5
- export default _default;
@@ -1 +0,0 @@
1
- export default function scrollbarWidth(): number;