bkui-vue 1.0.3-beta.62 → 1.0.3-beta.62.dialog.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.
- package/dist/index.cjs.js +69 -69
- package/dist/index.esm.js +20255 -19428
- package/dist/index.umd.js +69 -69
- package/dist/style.css +1 -1
- package/dist/style.variable.css +1 -1
- package/lib/components.d.ts +1 -0
- package/lib/components.js +1 -0
- package/lib/dialog/dialog.css +139 -77
- package/lib/dialog/dialog.d.ts +41 -121
- package/lib/dialog/dialog.less +10 -65
- package/lib/dialog/dialog.variable.css +139 -77
- package/lib/dialog/index.d.ts +105 -272
- package/lib/dialog/index.js +91 -100
- package/lib/dialog/props.d.ts +8 -48
- package/lib/info-box/index.d.ts +2 -2
- package/lib/info-box/index.js +312 -173
- package/lib/info-box/info-box.css +63 -7
- package/lib/info-box/info-box.d.ts +17 -16
- package/lib/info-box/info-box.less +76 -14
- package/lib/info-box/info-box.variable.css +63 -7
- package/lib/info-box/render-component.d.ts +4 -0
- package/lib/modal/index.d.ts +45 -325
- package/lib/modal/index.js +187 -666
- package/lib/modal/mask.d.ts +6 -0
- package/lib/modal/modal.css +131 -31
- package/lib/modal/modal.d.ts +16 -126
- package/lib/modal/modal.less +84 -28
- package/lib/modal/modal.variable.css +131 -31
- package/lib/modal/props.mixin.d.ts +2 -53
- package/lib/scrollbar/index.d.ts +14 -0
- package/lib/scrollbar/index.js +18740 -0
- package/lib/scrollbar/scrollbar-core/can-use-dom.d.ts +2 -0
- package/lib/scrollbar/scrollbar-core/helpers.d.ts +5 -0
- package/lib/scrollbar/scrollbar-core/index.d.ts +236 -0
- package/lib/scrollbar/scrollbar-core/mouse-wheel.d.ts +5 -0
- package/lib/scrollbar/scrollbar-core/scrollbar-width.d.ts +1 -0
- package/lib/scrollbar/scrollbar.css +74 -0
- package/lib/scrollbar/scrollbar.less +93 -0
- package/lib/scrollbar/scrollbar.variable.css +203 -0
- package/lib/shared/index.d.ts +0 -1
- package/lib/shared/index.js +1 -48
- package/lib/sideslider/index.d.ts +31 -222
- package/lib/sideslider/index.js +49 -36
- package/lib/sideslider/sideslider.css +4 -42
- package/lib/sideslider/sideslider.d.ts +14 -105
- package/lib/sideslider/sideslider.less +13 -58
- package/lib/sideslider/sideslider.variable.css +4 -42
- package/lib/table/const.d.ts +1 -1
- package/lib/table/index.d.ts +23 -0
- package/lib/table/index.js +176 -43
- package/lib/table/plugins/use-fixed-column.d.ts +1 -1
- package/lib/table/plugins/use-pagination.d.ts +3 -1
- package/lib/table/plugins/use-shift-key.d.ts +11 -0
- package/lib/table/props.d.ts +8 -0
- package/lib/table/table.css +97 -42
- package/lib/table/table.d.ts +11 -0
- package/lib/table/table.less +43 -58
- package/lib/table/table.variable.css +97 -42
- package/lib/table/use-attributes.d.ts +1 -0
- package/lib/table/use-render.d.ts +1 -1
- package/lib/table-column/index.js +6 -2
- package/lib/tree/index.d.ts +23 -0
- package/lib/tree/index.js +9 -3
- package/lib/tree/props.d.ts +8 -0
- package/lib/tree/tree.css +75 -2
- package/lib/tree/tree.d.ts +11 -0
- package/lib/tree/tree.variable.css +75 -2
- package/lib/virtual-render/index.d.ts +4 -0
- package/lib/virtual-render/index.js +253 -52
- package/lib/virtual-render/props.d.ts +7 -0
- package/lib/virtual-render/use-fix-top.d.ts +2 -7
- package/lib/virtual-render/use-scrollbar.d.ts +23 -0
- package/lib/virtual-render/v-virtual-render.d.ts +2 -1
- package/lib/virtual-render/virtual-render.css +75 -2
- package/lib/virtual-render/virtual-render.d.ts +2 -0
- package/lib/virtual-render/virtual-render.less +3 -3
- package/lib/virtual-render/virtual-render.variable.css +75 -2
- package/package.json +1 -1
- package/lib/shared/mask.d.ts +0 -11
@@ -3,6 +3,8 @@ import "./virtual-render.less";
|
|
3
3
|
import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_shared_edbdfb03__ from "../shared";
|
4
4
|
import * as __WEBPACK_EXTERNAL_MODULE_vue__ from "vue";
|
5
5
|
import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_config_provider_fe8577a3__ from "../config-provider";
|
6
|
+
import * as __WEBPACK_EXTERNAL_MODULE_vue_types_22de060a__ from "vue-types";
|
7
|
+
import * as __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_scrollbar_918447d0__ from "../scrollbar";
|
6
8
|
import * as __WEBPACK_EXTERNAL_MODULE_lodash_throttle_a7b7506a__ from "lodash/throttle";
|
7
9
|
/******/ // The require scope
|
8
10
|
/******/ var __webpack_require__ = {};
|
@@ -127,6 +129,10 @@ const external_vue_namespaceObject = external_vue_x({ ["computed"]: () => __WEBP
|
|
127
129
|
var config_provider_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
|
128
130
|
var config_provider_y = x => () => x
|
129
131
|
const config_provider_namespaceObject = config_provider_x({ ["usePrefix"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_config_provider_fe8577a3__.usePrefix });
|
132
|
+
;// CONCATENATED MODULE: external "vue-types"
|
133
|
+
var external_vue_types_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
|
134
|
+
var external_vue_types_y = x => () => x
|
135
|
+
const external_vue_types_namespaceObject = external_vue_types_x({ ["toType"]: () => __WEBPACK_EXTERNAL_MODULE_vue_types_22de060a__.toType });
|
130
136
|
;// CONCATENATED MODULE: ../../packages/virtual-render/src/props.ts
|
131
137
|
|
132
138
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
@@ -157,6 +163,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
157
163
|
* IN THE SOFTWARE.
|
158
164
|
*/
|
159
165
|
|
166
|
+
|
160
167
|
var EventProps = {
|
161
168
|
onContentScroll: Function
|
162
169
|
};
|
@@ -241,6 +248,14 @@ var virtualRenderProps = _objectSpread({
|
|
241
248
|
* 保持滚动条位置、当前渲染区间
|
242
249
|
*/
|
243
250
|
keepAlive: shared_namespaceObject.PropTypes.bool.def(false),
|
251
|
+
/**
|
252
|
+
* 是否允许滚动条改变原有DOM结构
|
253
|
+
*/
|
254
|
+
scrollbar: (0,external_vue_types_namespaceObject.toType)('IScrollbarOption', {
|
255
|
+
"default": {
|
256
|
+
enabled: true
|
257
|
+
}
|
258
|
+
}),
|
244
259
|
/**
|
245
260
|
* 数据监听改变时,是否自动重置位置到[0, 0]
|
246
261
|
*/
|
@@ -248,16 +263,32 @@ var virtualRenderProps = _objectSpread({
|
|
248
263
|
wrapperStyle: shared_namespaceObject.PropTypes.any.def({})
|
249
264
|
}, EventProps);
|
250
265
|
;// CONCATENATED MODULE: ../../packages/virtual-render/src/use-fix-top.tsx
|
251
|
-
/*
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
266
|
+
/*
|
267
|
+
* Tencent is pleased to support the open source community by making
|
268
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
|
269
|
+
*
|
270
|
+
* Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.
|
271
|
+
*
|
272
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
|
273
|
+
*
|
274
|
+
* License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
|
275
|
+
*
|
276
|
+
* ---------------------------------------------------
|
277
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
|
278
|
+
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation
|
279
|
+
* the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
|
280
|
+
* to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
281
|
+
*
|
282
|
+
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of
|
283
|
+
* the Software.
|
284
|
+
*
|
285
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
286
|
+
* THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
287
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
288
|
+
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
289
|
+
* IN THE SOFTWARE.
|
290
|
+
*/
|
291
|
+
/* harmony default export */ const use_fix_top = (function (props, scrollTo) {
|
261
292
|
/**
|
262
293
|
* 指定元素滚动到顶部
|
263
294
|
* @param param0
|
@@ -282,15 +313,91 @@ var virtualRenderProps = _objectSpread({
|
|
282
313
|
if (typeof targetIndex === 'number') {
|
283
314
|
var resolvedIndex = targetIndex >= 0 ? targetIndex : 0;
|
284
315
|
var offsetY = resolvedIndex * props.lineHeight;
|
285
|
-
scrollTo(
|
286
|
-
|
287
|
-
|
316
|
+
scrollTo(0, offsetY);
|
317
|
+
}
|
318
|
+
return null;
|
319
|
+
};
|
320
|
+
return {
|
321
|
+
fixToTop: fixToTop
|
322
|
+
};
|
323
|
+
});
|
324
|
+
;// CONCATENATED MODULE: external "../scrollbar"
|
325
|
+
var scrollbar_x = y => { var x = {}; __webpack_require__.d(x, y); return x; }
|
326
|
+
var scrollbar_y = x => () => x
|
327
|
+
const scrollbar_namespaceObject = scrollbar_x({ ["default"]: () => __WEBPACK_EXTERNAL_MODULE_bkui_vue_lib_scrollbar_918447d0__["default"] });
|
328
|
+
;// CONCATENATED MODULE: ../../packages/virtual-render/src/use-scrollbar.tsx
|
329
|
+
/*
|
330
|
+
* Tencent is pleased to support the open source community by making
|
331
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
|
332
|
+
*
|
333
|
+
* Copyright (C) 2021 THL A29 Limited, a Tencent company. All rights reserved.
|
334
|
+
*
|
335
|
+
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) is licensed under the MIT License.
|
336
|
+
*
|
337
|
+
* License for 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition):
|
338
|
+
*
|
339
|
+
* ---------------------------------------------------
|
340
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
|
341
|
+
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation
|
342
|
+
* the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
|
343
|
+
* to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
344
|
+
*
|
345
|
+
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of
|
346
|
+
* the Software.
|
347
|
+
*
|
348
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
349
|
+
* THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
350
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
|
351
|
+
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
352
|
+
* IN THE SOFTWARE.
|
353
|
+
*/
|
354
|
+
|
355
|
+
|
356
|
+
/* harmony default export */ const use_scrollbar = (function (target, props) {
|
357
|
+
var instance = null;
|
358
|
+
var _usePrefix = (0,config_provider_namespaceObject.usePrefix)(),
|
359
|
+
resolveClassName = _usePrefix.resolveClassName;
|
360
|
+
var classNames = {
|
361
|
+
contentEl: resolveClassName('scrollbar-content-el'),
|
362
|
+
wrapper: resolveClassName('scrollbar-wrapper'),
|
363
|
+
scrollbar: resolveClassName('scrollbar'),
|
364
|
+
track: resolveClassName('scrollbar-track'),
|
365
|
+
visible: resolveClassName('scrollbar-visible'),
|
366
|
+
horizontal: resolveClassName('scrollbar-horizontal'),
|
367
|
+
vertical: resolveClassName('scrollbar-vertical'),
|
368
|
+
hover: resolveClassName('scrollbar-hover'),
|
369
|
+
dragging: resolveClassName('scrollbar-dragging'),
|
370
|
+
scrolling: resolveClassName('scrollbar-scrolling'),
|
371
|
+
scrollable: resolveClassName('scrollbar-scrollable'),
|
372
|
+
mouseEntered: resolveClassName('scrollbar-mouse-entered')
|
373
|
+
};
|
374
|
+
var init = function init(scrollFn, delegateXContent, delegateYContent) {
|
375
|
+
instance = new scrollbar_namespaceObject["default"](target.value, {
|
376
|
+
classNames: classNames,
|
377
|
+
wrapperNode: target.value,
|
378
|
+
useSystemScrollYBehavior: !props.enabled,
|
379
|
+
useSystemScrollXBehavior: true,
|
380
|
+
delegateXContent: delegateXContent,
|
381
|
+
delegateYContent: delegateYContent,
|
382
|
+
onScrollCallback: scrollFn
|
383
|
+
});
|
384
|
+
};
|
385
|
+
var scrollTo = function scrollTo(x, y) {
|
386
|
+
var _props$scrollbar;
|
387
|
+
if ((_props$scrollbar = props.scrollbar) !== null && _props$scrollbar !== void 0 && _props$scrollbar.enabled) {
|
388
|
+
instance.scrollTo({
|
389
|
+
left: x,
|
390
|
+
top: y
|
288
391
|
});
|
392
|
+
return;
|
289
393
|
}
|
394
|
+
target.value.scrollTo(x, y);
|
290
395
|
};
|
291
396
|
return {
|
292
|
-
|
293
|
-
|
397
|
+
init: init,
|
398
|
+
instance: instance,
|
399
|
+
scrollTo: scrollTo,
|
400
|
+
classNames: classNames
|
294
401
|
};
|
295
402
|
});
|
296
403
|
;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js
|
@@ -325,6 +432,7 @@ const throttle_namespaceObject = throttle_x({ ["default"]: () => __WEBPACK_EXTER
|
|
325
432
|
;// CONCATENATED MODULE: ../../packages/virtual-render/src/v-virtual-render.ts
|
326
433
|
|
327
434
|
|
435
|
+
|
328
436
|
/*
|
329
437
|
* Tencent is pleased to support the open source community by making
|
330
438
|
* 蓝鲸智云PaaS平台社区版 (BlueKing PaaS Community Edition) available.
|
@@ -375,14 +483,14 @@ function getMatchedIndex(maxCount, maxHeight, groupItemCount, callback) {
|
|
375
483
|
diffHeight: diffHeight
|
376
484
|
};
|
377
485
|
}
|
378
|
-
function computedVirtualIndex(lineHeight, callback, pagination,
|
379
|
-
if (!event.
|
486
|
+
function computedVirtualIndex(lineHeight, callback, pagination, wrapper, event) {
|
487
|
+
if (!wrapper || !event.offset) {
|
380
488
|
return;
|
381
489
|
}
|
382
|
-
var elScrollTop = event.
|
383
|
-
var elScrollLeft = event.
|
384
|
-
var elScrollHeight =
|
385
|
-
var elOffsetHeight =
|
490
|
+
var elScrollTop = event.offset.y;
|
491
|
+
var elScrollLeft = event.offset.x;
|
492
|
+
var elScrollHeight = wrapper.scrollHeight;
|
493
|
+
var elOffsetHeight = wrapper.offsetHeight;
|
386
494
|
var count = pagination.count,
|
387
495
|
groupItemCount = pagination.groupItemCount;
|
388
496
|
var targetStartIndex = 0;
|
@@ -402,7 +510,8 @@ function computedVirtualIndex(lineHeight, callback, pagination, _el, event) {
|
|
402
510
|
}
|
403
511
|
var bottom = elScrollHeight - elOffsetHeight - elScrollTop;
|
404
512
|
typeof callback === 'function' && callback(event, targetStartIndex, targetEndIndex, elScrollTop, translateY, elScrollLeft, {
|
405
|
-
bottom: bottom >= 0 ? bottom : 0
|
513
|
+
bottom: bottom >= 0 ? bottom : 0,
|
514
|
+
scrollbar: event
|
406
515
|
});
|
407
516
|
return {
|
408
517
|
targetStartIndex: targetStartIndex,
|
@@ -414,7 +523,33 @@ function computedVirtualIndex(lineHeight, callback, pagination, _el, event) {
|
|
414
523
|
}
|
415
524
|
var VisibleRender = /*#__PURE__*/function () {
|
416
525
|
function VisibleRender(binding, el) {
|
526
|
+
var _this = this;
|
417
527
|
_classCallCheck(this, VisibleRender);
|
528
|
+
_defineProperty(this, "getEvent", function (event) {
|
529
|
+
var _this$binding$value$s = _this.binding.value.scrollbar,
|
530
|
+
scrollbar = _this$binding$value$s === void 0 ? {
|
531
|
+
enabled: false
|
532
|
+
} : _this$binding$value$s;
|
533
|
+
if (scrollbar.enabled) {
|
534
|
+
var _event$offset;
|
535
|
+
return {
|
536
|
+
offset: (_event$offset = event.offset) !== null && _event$offset !== void 0 ? _event$offset : event
|
537
|
+
};
|
538
|
+
}
|
539
|
+
if (event !== null && event !== void 0 && event.offset) {
|
540
|
+
return {
|
541
|
+
offset: event === null || event === void 0 ? void 0 : event.offset
|
542
|
+
};
|
543
|
+
}
|
544
|
+
var elScrollTop = event.target.scrollTop;
|
545
|
+
var elScrollLeft = event.target.scrollLeft;
|
546
|
+
return {
|
547
|
+
offset: {
|
548
|
+
x: elScrollLeft,
|
549
|
+
y: elScrollTop
|
550
|
+
}
|
551
|
+
};
|
552
|
+
});
|
418
553
|
this.binding = binding;
|
419
554
|
this.wrapper = el;
|
420
555
|
var throttleDelay = binding.value.throttleDelay;
|
@@ -431,11 +566,13 @@ var VisibleRender = /*#__PURE__*/function () {
|
|
431
566
|
pagination = _this$binding$value$p === void 0 ? {} : _this$binding$value$p,
|
432
567
|
onlyScroll = _this$binding$value.onlyScroll;
|
433
568
|
if (onlyScroll) {
|
434
|
-
var
|
435
|
-
var
|
436
|
-
var
|
569
|
+
var _e$offset, _e$offset$x, _e$offset2;
|
570
|
+
var elScrollTop = (_e$offset = e.offset) === null || _e$offset === void 0 ? void 0 : _e$offset.y;
|
571
|
+
var elScrollLeft = (_e$offset$x = (_e$offset2 = e.offset) === null || _e$offset2 === void 0 ? void 0 : _e$offset2.x) !== null && _e$offset$x !== void 0 ? _e$offset$x : 0;
|
572
|
+
var bottom = this.wrapper.scrollHeight - this.wrapper.offsetHeight - elScrollTop;
|
437
573
|
handleScrollCallback(e, null, null, elScrollTop, elScrollTop, elScrollLeft, {
|
438
|
-
bottom: bottom >= 0 ? bottom : 0
|
574
|
+
bottom: bottom >= 0 ? bottom : 0,
|
575
|
+
scrollbar: e
|
439
576
|
});
|
440
577
|
return;
|
441
578
|
}
|
@@ -457,7 +594,7 @@ var VisibleRender = /*#__PURE__*/function () {
|
|
457
594
|
}, {
|
458
595
|
key: "executeThrottledRender",
|
459
596
|
value: function executeThrottledRender(e) {
|
460
|
-
(0,throttle_namespaceObject["default"])(this.render.bind(this), this.delay)(e);
|
597
|
+
(0,throttle_namespaceObject["default"])(this.render.bind(this), this.delay)(this.getEvent(e));
|
461
598
|
}
|
462
599
|
}, {
|
463
600
|
key: "install",
|
@@ -532,28 +669,46 @@ function use_tag_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
532
669
|
|
533
670
|
|
534
671
|
|
672
|
+
|
535
673
|
/* harmony default export */ const use_tag_render = (function (props, ctx) {
|
536
674
|
var renderAs = props.renderAs,
|
537
675
|
contentAs = props.contentAs;
|
676
|
+
var refRoot = (0,external_vue_namespaceObject.ref)(null);
|
677
|
+
var _useScrollbar = use_scrollbar(refRoot, props),
|
678
|
+
init = _useScrollbar.init,
|
679
|
+
scrollTo = _useScrollbar.scrollTo,
|
680
|
+
classNames = _useScrollbar.classNames;
|
681
|
+
var contentStyle = (0,external_vue_namespaceObject.reactive)({
|
682
|
+
x: 0,
|
683
|
+
y: 0
|
684
|
+
});
|
685
|
+
var computedStyle = (0,external_vue_namespaceObject.computed)(function () {
|
686
|
+
return use_tag_render_objectSpread({}, props.contentStyle);
|
687
|
+
});
|
538
688
|
/** 指令触发Scroll事件,计算当前startIndex & endIndex & scrollTop & translateY */
|
539
689
|
var handleScrollCallback = function handleScrollCallback(event, _startIndex, _endIndex, _scrollTop, translateY, scrollLeft, pos) {
|
690
|
+
var scrollbar = pos.scrollbar;
|
691
|
+
if (scrollbar !== null && scrollbar !== void 0 && scrollbar.offset) {
|
692
|
+
var _scrollbar$offset;
|
693
|
+
Object.assign(contentStyle, (_scrollbar$offset = scrollbar === null || scrollbar === void 0 ? void 0 : scrollbar.offset) !== null && _scrollbar$offset !== void 0 ? _scrollbar$offset : {});
|
694
|
+
}
|
540
695
|
ctx.emit('content-scroll', [event, {
|
541
696
|
translateY: translateY,
|
542
697
|
translateX: scrollLeft,
|
543
698
|
pos: pos
|
544
699
|
}]);
|
545
700
|
};
|
546
|
-
var
|
701
|
+
var renderInstance = null;
|
547
702
|
var binding = (0,external_vue_namespaceObject.computed)(function () {
|
548
703
|
return {
|
549
704
|
lineHeight: props.lineHeight,
|
705
|
+
scrollbar: props.scrollbar,
|
550
706
|
handleScrollCallback: handleScrollCallback,
|
551
707
|
pagination: {},
|
552
708
|
throttleDelay: props.throttleDelay,
|
553
709
|
onlyScroll: props.scrollEvent
|
554
710
|
};
|
555
711
|
});
|
556
|
-
var refRoot = (0,external_vue_namespaceObject.ref)(null);
|
557
712
|
/** 虚拟渲染外层容器样式 */
|
558
713
|
var wrapperStyle = (0,external_vue_namespaceObject.computed)(function () {
|
559
714
|
var _props$maxHeight;
|
@@ -565,20 +720,36 @@ function use_tag_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
565
720
|
maxHeight: (_props$maxHeight = props.maxHeight) !== null && _props$maxHeight !== void 0 ? _props$maxHeight : height
|
566
721
|
}, props.wrapperStyle);
|
567
722
|
});
|
568
|
-
var _useFixTop = use_fix_top(props,
|
569
|
-
scrollTo = _useFixTop.scrollTo,
|
723
|
+
var _useFixTop = use_fix_top(props, scrollTo),
|
570
724
|
fixToTop = _useFixTop.fixToTop;
|
571
725
|
ctx.expose({
|
572
726
|
scrollTo: scrollTo,
|
573
727
|
fixToTop: fixToTop
|
574
728
|
});
|
575
729
|
(0,external_vue_namespaceObject.onMounted)(function () {
|
576
|
-
|
577
|
-
|
730
|
+
var _props$scrollbar;
|
731
|
+
renderInstance = new VisibleRender(binding, refRoot.value);
|
732
|
+
if ((_props$scrollbar = props.scrollbar) !== null && _props$scrollbar !== void 0 && _props$scrollbar.enabled) {
|
733
|
+
init(renderInstance.executeThrottledRender.bind(renderInstance));
|
734
|
+
return;
|
735
|
+
}
|
736
|
+
renderInstance.install();
|
578
737
|
});
|
579
738
|
(0,external_vue_namespaceObject.onUnmounted)(function () {
|
580
|
-
var
|
581
|
-
(
|
739
|
+
var _renderInstance;
|
740
|
+
(_renderInstance = renderInstance) === null || _renderInstance === void 0 || _renderInstance.uninstall();
|
741
|
+
});
|
742
|
+
var wrapperClassNames = (0,external_vue_namespaceObject.computed)(function () {
|
743
|
+
if (props.scrollbar.enabled) {
|
744
|
+
return [props.className, classNames.wrapper];
|
745
|
+
}
|
746
|
+
return [props.className];
|
747
|
+
});
|
748
|
+
var contentClassNames = (0,external_vue_namespaceObject.computed)(function () {
|
749
|
+
if (props.scrollbar.enabled) {
|
750
|
+
return [props.contentClassName, classNames.contentEl];
|
751
|
+
}
|
752
|
+
return [props.contentClassName];
|
582
753
|
});
|
583
754
|
return {
|
584
755
|
rendAsTag: function rendAsTag() {
|
@@ -586,12 +757,12 @@ function use_tag_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
586
757
|
return (0,external_vue_namespaceObject.h)(
|
587
758
|
// @ts-ignore:next-line
|
588
759
|
renderAs, {
|
589
|
-
"class":
|
760
|
+
"class": wrapperClassNames.value,
|
590
761
|
style: wrapperStyle.value,
|
591
762
|
ref: refRoot
|
592
763
|
}, [(_ctx$slots$beforeCont = (_ctx$slots$beforeCont2 = (_ctx$slots = ctx.slots).beforeContent) === null || _ctx$slots$beforeCont2 === void 0 ? void 0 : _ctx$slots$beforeCont2.call(_ctx$slots)) !== null && _ctx$slots$beforeCont !== void 0 ? _ctx$slots$beforeCont : '', (0,external_vue_namespaceObject.h)(contentAs, {
|
593
|
-
"class":
|
594
|
-
style:
|
764
|
+
"class": contentClassNames.value,
|
765
|
+
style: computedStyle.value
|
595
766
|
}, [(_ctx$slots$default = (_ctx$slots$default2 = (_ctx$slots2 = ctx.slots)["default"]) === null || _ctx$slots$default2 === void 0 ? void 0 : _ctx$slots$default2.call(_ctx$slots2, {
|
596
767
|
data: props.list
|
597
768
|
})) !== null && _ctx$slots$default !== void 0 ? _ctx$slots$default : '']), (_ctx$slots$afterConte = (_ctx$slots$afterConte2 = (_ctx$slots3 = ctx.slots).afterContent) === null || _ctx$slots$afterConte2 === void 0 ? void 0 : _ctx$slots$afterConte2.call(_ctx$slots3)) !== null && _ctx$slots$afterConte !== void 0 ? _ctx$slots$afterConte : '', (_ctx$slots$afterSecti = (_ctx$slots$afterSecti2 = (_ctx$slots4 = ctx.slots).afterSection) === null || _ctx$slots$afterSecti2 === void 0 ? void 0 : _ctx$slots$afterSecti2.call(_ctx$slots4)) !== null && _ctx$slots$afterSecti !== void 0 ? _ctx$slots$afterSecti : '']);
|
@@ -640,6 +811,7 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
640
811
|
|
641
812
|
|
642
813
|
|
814
|
+
|
643
815
|
/* harmony default export */ const virtual_render = ((0,external_vue_namespaceObject.defineComponent)({
|
644
816
|
name: 'VirtualRender',
|
645
817
|
directives: {
|
@@ -671,10 +843,17 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
671
843
|
lineHeight: props.lineHeight,
|
672
844
|
handleScrollCallback: handleScrollCallback,
|
673
845
|
pagination: pagination,
|
674
|
-
throttleDelay: props.throttleDelay
|
846
|
+
throttleDelay: props.throttleDelay,
|
847
|
+
scrollbar: props.scrollbar
|
675
848
|
};
|
676
849
|
});
|
677
850
|
var refRoot = (0,external_vue_namespaceObject.ref)(null);
|
851
|
+
var refVirtualSection = (0,external_vue_namespaceObject.ref)(null);
|
852
|
+
var refContent = (0,external_vue_namespaceObject.ref)(null);
|
853
|
+
var _useScrollbar = use_scrollbar(refRoot, props),
|
854
|
+
init = _useScrollbar.init,
|
855
|
+
scrollTo = _useScrollbar.scrollTo,
|
856
|
+
classNames = _useScrollbar.classNames;
|
678
857
|
var instance = null;
|
679
858
|
var pagination = (0,external_vue_namespaceObject.reactive)({
|
680
859
|
startIndex: 0,
|
@@ -704,10 +883,9 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
704
883
|
var end = (pagination.endIndex + props.preloadItemCount) * props.groupItemCount;
|
705
884
|
var total = localList.value.length;
|
706
885
|
if (total < end) {
|
707
|
-
var contentLength = end - start;
|
708
886
|
calcList.value = localList.value.slice(start, total);
|
709
887
|
end = total + 1;
|
710
|
-
start = end -
|
888
|
+
start = end - Math.ceil(refContent.value.offsetHeight / props.lineHeight);
|
711
889
|
start = start < 0 ? 0 : start;
|
712
890
|
}
|
713
891
|
var value = localList.value.slice(start, end + 10);
|
@@ -717,7 +895,18 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
717
895
|
}
|
718
896
|
};
|
719
897
|
(0,external_vue_namespaceObject.onMounted)(function () {
|
898
|
+
var _props$scrollbar;
|
720
899
|
instance = new VisibleRender(binding, refRoot.value);
|
900
|
+
if ((_props$scrollbar = props.scrollbar) !== null && _props$scrollbar !== void 0 && _props$scrollbar.enabled) {
|
901
|
+
init(instance.executeThrottledRender.bind(instance), null, refVirtualSection.value);
|
902
|
+
instance.executeThrottledRender.call(instance, {
|
903
|
+
offset: {
|
904
|
+
x: 0,
|
905
|
+
y: 0
|
906
|
+
}
|
907
|
+
});
|
908
|
+
return;
|
909
|
+
}
|
721
910
|
instance.install();
|
722
911
|
});
|
723
912
|
(0,external_vue_namespaceObject.onUnmounted)(function () {
|
@@ -781,10 +970,7 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
781
970
|
});
|
782
971
|
/** 展示列表内容区域样式 */
|
783
972
|
var innerContentStyle = (0,external_vue_namespaceObject.computed)(function () {
|
784
|
-
return props.scrollPosition === 'content' ? {
|
785
|
-
top: "".concat(pagination.scrollTop + props.scrollOffsetTop, "px"),
|
786
|
-
transform: "translateY(-".concat(pagination.translateY, "px)")
|
787
|
-
} : {};
|
973
|
+
return props.scrollPosition === 'content' ? {} : {};
|
788
974
|
});
|
789
975
|
/** 虚拟渲染外层容器样式 */
|
790
976
|
var wrapperStyle = (0,external_vue_namespaceObject.computed)(function () {
|
@@ -809,7 +995,7 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
809
995
|
resolveClassName = _usePrefix.resolveClassName;
|
810
996
|
/** 外层样式列表 */
|
811
997
|
var wrapperClass = (0,external_vue_namespaceObject.computed)(function () {
|
812
|
-
return [resolveClassName('virtual-render')
|
998
|
+
return [resolveClassName('virtual-render')].concat(_toConsumableArray(resolvePropClassName(props.className)), [props.scrollPosition === 'container' ? resolveClassName('virtual-content') : '']);
|
813
999
|
});
|
814
1000
|
/** 内容区域样式列表 */
|
815
1001
|
var innerClass = (0,external_vue_namespaceObject.computed)(function () {
|
@@ -820,20 +1006,33 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
820
1006
|
* @param keepLastPostion
|
821
1007
|
*/
|
822
1008
|
var reset = function reset() {
|
1009
|
+
var _instance2;
|
823
1010
|
handleChangeListConfig();
|
824
1011
|
afterListDataReset();
|
1012
|
+
(_instance2 = instance) === null || _instance2 === void 0 || _instance2.executeThrottledRender.call(instance, {
|
1013
|
+
offset: {
|
1014
|
+
x: 0,
|
1015
|
+
y: 0
|
1016
|
+
}
|
1017
|
+
});
|
825
1018
|
};
|
826
|
-
var _useFixTop = use_fix_top(props,
|
827
|
-
scrollTo = _useFixTop.scrollTo,
|
1019
|
+
var _useFixTop = use_fix_top(props, scrollTo),
|
828
1020
|
fixToTop = _useFixTop.fixToTop;
|
829
1021
|
(0,external_vue_namespaceObject.watch)(function () {
|
830
1022
|
return [props.lineHeight, props.height, props.list, props.maxHeight];
|
831
1023
|
}, function () {
|
832
|
-
var
|
833
|
-
(
|
1024
|
+
var _instance3;
|
1025
|
+
(_instance3 = instance) === null || _instance3 === void 0 || _instance3.setBinding(binding);
|
834
1026
|
handleChangeListConfig();
|
835
1027
|
(0,external_vue_namespaceObject.nextTick)(function () {
|
1028
|
+
var _instance4;
|
836
1029
|
afterListDataReset();
|
1030
|
+
(_instance4 = instance) === null || _instance4 === void 0 || _instance4.executeThrottledRender.call(instance, {
|
1031
|
+
offset: {
|
1032
|
+
x: 0,
|
1033
|
+
y: 0
|
1034
|
+
}
|
1035
|
+
});
|
837
1036
|
});
|
838
1037
|
}, {
|
839
1038
|
deep: true,
|
@@ -850,14 +1049,16 @@ function virtual_render_objectSpread(e) { for (var r = 1; r < arguments.length;
|
|
850
1049
|
// @ts-ignore:next-line
|
851
1050
|
renderAs || 'div', {
|
852
1051
|
ref: refRoot,
|
853
|
-
"class": wrapperClass.value,
|
1052
|
+
"class": [].concat(_toConsumableArray(wrapperClass.value), [classNames.wrapper]),
|
854
1053
|
style: wrapperStyle.value
|
855
1054
|
}, [(_ctx$slots$beforeCont = (_ctx$slots$beforeCont2 = (_ctx$slots = ctx.slots).beforeContent) === null || _ctx$slots$beforeCont2 === void 0 ? void 0 : _ctx$slots$beforeCont2.call(_ctx$slots)) !== null && _ctx$slots$beforeCont !== void 0 ? _ctx$slots$beforeCont : '', (0,external_vue_namespaceObject.h)(contentAs || 'div', {
|
856
|
-
|
1055
|
+
ref: refContent,
|
1056
|
+
"class": [].concat(_toConsumableArray(innerClass.value), [classNames.contentEl]),
|
857
1057
|
style: virtual_render_objectSpread(virtual_render_objectSpread({}, innerContentStyle.value), props.contentStyle)
|
858
1058
|
}, [(_ctx$slots$default = (_ctx$slots$default2 = (_ctx$slots2 = ctx.slots)["default"]) === null || _ctx$slots$default2 === void 0 ? void 0 : _ctx$slots$default2.call(_ctx$slots2, {
|
859
1059
|
data: calcList.value
|
860
1060
|
})) !== null && _ctx$slots$default !== void 0 ? _ctx$slots$default : '']), (_ctx$slots$afterConte = (_ctx$slots$afterConte2 = (_ctx$slots3 = ctx.slots).afterContent) === null || _ctx$slots$afterConte2 === void 0 ? void 0 : _ctx$slots$afterConte2.call(_ctx$slots3)) !== null && _ctx$slots$afterConte !== void 0 ? _ctx$slots$afterConte : '', (0,external_vue_namespaceObject.h)('div', {
|
1061
|
+
ref: refVirtualSection,
|
861
1062
|
"class": [resolveClassName('virtual-section')],
|
862
1063
|
style: innerStyle.value
|
863
1064
|
}), (_ctx$slots$afterSecti = (_ctx$slots$afterSecti2 = (_ctx$slots4 = ctx.slots).afterSection) === null || _ctx$slots$afterSecti2 === void 0 ? void 0 : _ctx$slots$afterSecti2.call(_ctx$slots4)) !== null && _ctx$slots$afterSecti !== void 0 ? _ctx$slots$afterSecti : '']);
|
@@ -1,4 +1,7 @@
|
|
1
1
|
import { ExtractPropTypes } from 'vue';
|
2
|
+
export type IScrollbarOption = {
|
3
|
+
enabled: boolean;
|
4
|
+
};
|
2
5
|
export declare const virtualRenderProps: {
|
3
6
|
onContentScroll: FunctionConstructor;
|
4
7
|
/** 传入原始数据源 */
|
@@ -181,6 +184,10 @@ export declare const virtualRenderProps: {
|
|
181
184
|
} & {
|
182
185
|
default: boolean;
|
183
186
|
};
|
187
|
+
/**
|
188
|
+
* 是否允许滚动条改变原有DOM结构
|
189
|
+
*/
|
190
|
+
scrollbar: import("vue-types").VueTypeDef<IScrollbarOption>;
|
184
191
|
/**
|
185
192
|
* 数据监听改变时,是否自动重置位置到[0, 0]
|
186
193
|
*/
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import { Ref } from 'vue';
|
2
1
|
import { VirtualRenderProps } from './props';
|
3
2
|
type IFixToTopParams = {
|
4
3
|
index?: number;
|
@@ -8,11 +7,7 @@ type IFixToTopParams = {
|
|
8
7
|
};
|
9
8
|
position: number[];
|
10
9
|
};
|
11
|
-
declare const _default: (props: VirtualRenderProps,
|
12
|
-
fixToTop: (params: IFixToTopParams) =>
|
13
|
-
scrollTo: (option?: {
|
14
|
-
left: number;
|
15
|
-
top: number;
|
16
|
-
}) => void;
|
10
|
+
declare const _default: (props: VirtualRenderProps, scrollTo: (x: any, y: any) => void) => {
|
11
|
+
fixToTop: (params: IFixToTopParams) => any;
|
17
12
|
};
|
18
13
|
export default _default;
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import { Ref } from 'vue';
|
2
|
+
import BkScrollbar from '../scrollbar';
|
3
|
+
import { VirtualRenderProps } from './props';
|
4
|
+
declare const _default: (target: Ref<HTMLElement>, props: VirtualRenderProps) => {
|
5
|
+
init: (scrollFn?: any, delegateXContent?: any, delegateYContent?: any) => void;
|
6
|
+
instance: BkScrollbar;
|
7
|
+
scrollTo: (x: any, y: any) => void;
|
8
|
+
classNames: {
|
9
|
+
contentEl: string;
|
10
|
+
wrapper: string;
|
11
|
+
scrollbar: string;
|
12
|
+
track: string;
|
13
|
+
visible: string;
|
14
|
+
horizontal: string;
|
15
|
+
vertical: string;
|
16
|
+
hover: string;
|
17
|
+
dragging: string;
|
18
|
+
scrolling: string;
|
19
|
+
scrollable: string;
|
20
|
+
mouseEntered: string;
|
21
|
+
};
|
22
|
+
};
|
23
|
+
export default _default;
|
@@ -3,7 +3,7 @@ export declare function getMatchedIndex(maxCount: number, maxHeight: number, gro
|
|
3
3
|
height: number;
|
4
4
|
diffHeight: number;
|
5
5
|
};
|
6
|
-
export declare function computedVirtualIndex(lineHeight: any, callback: any, pagination: any,
|
6
|
+
export declare function computedVirtualIndex(lineHeight: any, callback: any, pagination: any, wrapper: any, event: any): {
|
7
7
|
targetStartIndex: number;
|
8
8
|
targetEndIndex: number;
|
9
9
|
elScrollTop: any;
|
@@ -20,6 +20,7 @@ export declare class VisibleRender {
|
|
20
20
|
install(): void;
|
21
21
|
uninstall(): void;
|
22
22
|
setBinding(binding: any): void;
|
23
|
+
private getEvent;
|
23
24
|
}
|
24
25
|
declare const _default: {
|
25
26
|
mounted(el: any, binding: any): void;
|