bkui-vue 0.0.2-beta.111 → 0.0.2-beta.113

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.
@@ -585,7 +585,11 @@ var tableProps = {
585
585
  /**
586
586
  * 是否采用flex布局表格
587
587
  */
588
- isFlex: external_shared_namespaceObject.PropTypes.bool.def(true)
588
+ isFlex: external_shared_namespaceObject.PropTypes.bool.def(true),
589
+ /**
590
+ * VirtualRender throttleDelay
591
+ */
592
+ throttleDelay: external_shared_namespaceObject.PropTypes.number.def(120)
589
593
  };
590
594
  ;// CONCATENATED MODULE: ../../packages/table/src/components/table-column.tsx
591
595
 
package/lib/tree/index.js CHANGED
@@ -2372,7 +2372,8 @@ var use_tree_init_this = undefined;
2372
2372
  isNodeChecked = _useNodeAttribute.isNodeChecked,
2373
2373
  isNodeMatched = _useNodeAttribute.isNodeMatched,
2374
2374
  hasChildNode = _useNodeAttribute.hasChildNode,
2375
- getNodePath = _useNodeAttribute.getNodePath;
2375
+ getNodePath = _useNodeAttribute.getNodePath,
2376
+ getNodeId = _useNodeAttribute.getNodeId;
2376
2377
  var _useSearch = use_search(props),
2377
2378
  searchFn = _useSearch.searchFn,
2378
2379
  isSearchActive = _useSearch.isSearchActive,
@@ -2453,6 +2454,49 @@ var use_tree_init_this = undefined;
2453
2454
  var _root$value;
2454
2455
  (_root$value = root.value) === null || _root$value === void 0 ? void 0 : _root$value.reset();
2455
2456
  };
2457
+ /**
2458
+ * 将制定元素滚动到顶部
2459
+ * @param option
2460
+ */
2461
+ var scrollToTop = function scrollToTop(option) {
2462
+ if (option === undefined || option === null) {
2463
+ root.value.fixToTop({
2464
+ index: 1
2465
+ });
2466
+ return;
2467
+ }
2468
+ if (props.nodeKey && Object.prototype.hasOwnProperty.call(option, props.nodeKey)) {
2469
+ root.value.fixToTop({
2470
+ index: renderData.value.findIndex(function (node) {
2471
+ return node[props.nodeKey] === option[props.nodeKey];
2472
+ }) + 1
2473
+ });
2474
+ return;
2475
+ }
2476
+ if (option.id !== undefined && option.id !== null) {
2477
+ root.value.fixToTop({
2478
+ index: renderData.value.findIndex(function (node) {
2479
+ return node[props.nodeKey] === option.id;
2480
+ }) + 1
2481
+ });
2482
+ return;
2483
+ }
2484
+ if (option.index >= 0) {
2485
+ root.value.fixToTop({
2486
+ index: option.index
2487
+ });
2488
+ return;
2489
+ }
2490
+ var id = getNodeId(option);
2491
+ if (id) {
2492
+ root.value.fixToTop({
2493
+ index: renderData.value.findIndex(function (node) {
2494
+ return getNodeId(node) === id;
2495
+ }) + 1
2496
+ });
2497
+ return;
2498
+ }
2499
+ };
2456
2500
  ctx.expose({
2457
2501
  handleTreeNodeClick: handleTreeNodeClick,
2458
2502
  isNodeChecked: isNodeChecked,
@@ -2465,6 +2509,7 @@ var use_tree_init_this = undefined;
2465
2509
  setNodeAction: setNodeAction,
2466
2510
  setNodeOpened: setNodeOpened,
2467
2511
  setSelect: setSelect,
2512
+ scrollToTop: scrollToTop,
2468
2513
  asyncNodeClick: asyncNodeClick,
2469
2514
  getData: getData,
2470
2515
  reset: reset
@@ -1,5 +1,9 @@
1
1
  import { TreePropTypes as defineTypes } from './props';
2
2
  export type TreePropTypes = defineTypes;
3
+ export type ITreeScrollTopOption = {
4
+ id?: string;
5
+ index?: number;
6
+ };
3
7
  declare const _default: import("vue").DefineComponent<{
4
8
  data: import("vue-types").VueTypeDef<any[]> & {
5
9
  default: () => any[];
@@ -245,6 +245,52 @@ var virtualRenderProps = _objectSpread({
245
245
  autoReset: external_shared_namespaceObject.PropTypes.bool.def(true),
246
246
  wrapperStyle: external_shared_namespaceObject.PropTypes.any.def({})
247
247
  }, EventProps);
248
+ ;// CONCATENATED MODULE: ../../packages/virtual-render/src/use-fix-top.tsx
249
+ /* harmony default export */ const use_fix_top = (function (props, refRoot) {
250
+ var scrollTo = function scrollTo() {
251
+ var option = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
252
+ left: 0,
253
+ top: 0
254
+ };
255
+ var left = option.left,
256
+ top = option.top;
257
+ refRoot.value.scrollTo(left, top);
258
+ };
259
+ /**
260
+ * 指定元素滚动到顶部
261
+ * @param param0
262
+ */
263
+ var fixToTop = function fixToTop(params) {
264
+ var id = params.id,
265
+ index = params.index,
266
+ item = params.item;
267
+ var targetIndex = typeof index === 'number' ? index - 1 : 0;
268
+ if (id !== undefined) {
269
+ var _props$list$findIndex;
270
+ targetIndex = (_props$list$findIndex = props.list.findIndex(function (row) {
271
+ return row[props.rowKey] === id;
272
+ })) !== null && _props$list$findIndex !== void 0 ? _props$list$findIndex : targetIndex;
273
+ }
274
+ if (item !== undefined) {
275
+ var _props$list$findIndex2;
276
+ targetIndex = (_props$list$findIndex2 = props.list.findIndex(function (row) {
277
+ return item[props.rowKey] === row[props.rowKey];
278
+ })) !== null && _props$list$findIndex2 !== void 0 ? _props$list$findIndex2 : targetIndex;
279
+ }
280
+ if (typeof targetIndex === 'number') {
281
+ var resolvedIndex = targetIndex >= 0 ? targetIndex : 0;
282
+ var offsetY = resolvedIndex * props.lineHeight;
283
+ scrollTo({
284
+ left: 0,
285
+ top: offsetY
286
+ });
287
+ }
288
+ };
289
+ return {
290
+ fixToTop: fixToTop,
291
+ scrollTo: scrollTo
292
+ };
293
+ });
248
294
  ;// CONCATENATED MODULE: ../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js
249
295
  function _classCallCheck(instance, Constructor) {
250
296
  if (!(instance instanceof Constructor)) {
@@ -483,6 +529,7 @@ function use_tag_render_objectSpread(target) { for (var i = 1; i < arguments.len
483
529
  */
484
530
 
485
531
 
532
+
486
533
  /* harmony default export */ const use_tag_render = (function (props, ctx) {
487
534
  var renderAs = props.renderAs,
488
535
  contentAs = props.contentAs;
@@ -505,13 +552,6 @@ function use_tag_render_objectSpread(target) { for (var i = 1; i < arguments.len
505
552
  };
506
553
  });
507
554
  var refRoot = (0,external_vue_namespaceObject.ref)(null);
508
- var scrollTo = function scrollTo(_ref) {
509
- var _ref$left = _ref.left,
510
- left = _ref$left === void 0 ? 0 : _ref$left,
511
- _ref$top = _ref.top,
512
- top = _ref$top === void 0 ? 0 : _ref$top;
513
- refRoot.value.scrollTo(left, top);
514
- };
515
555
  /** 虚拟渲染外层容器样式 */
516
556
  var wrapperStyle = (0,external_vue_namespaceObject.computed)(function () {
517
557
  var _props$maxHeight;
@@ -523,8 +563,12 @@ function use_tag_render_objectSpread(target) { for (var i = 1; i < arguments.len
523
563
  maxHeight: (_props$maxHeight = props.maxHeight) !== null && _props$maxHeight !== void 0 ? _props$maxHeight : height
524
564
  }, props.wrapperStyle);
525
565
  });
566
+ var _useFixTop = use_fix_top(props, refRoot),
567
+ scrollTo = _useFixTop.scrollTo,
568
+ fixToTop = _useFixTop.fixToTop;
526
569
  ctx.expose({
527
- scrollTo: scrollTo
570
+ scrollTo: scrollTo,
571
+ fixToTop: fixToTop
528
572
  });
529
573
  (0,external_vue_namespaceObject.onMounted)(function () {
530
574
  instance = new VisibleRender(binding, refRoot.value);
@@ -593,6 +637,7 @@ function virtual_render_objectSpread(target) { for (var i = 1; i < arguments.len
593
637
 
594
638
 
595
639
 
640
+
596
641
  /* harmony default export */ const virtual_render = ((0,external_vue_namespaceObject.defineComponent)({
597
642
  name: 'VirtualRender',
598
643
  directives: {
@@ -677,18 +722,6 @@ function virtual_render_objectSpread(target) { for (var i = 1; i < arguments.len
677
722
  var _instance;
678
723
  (_instance = instance) === null || _instance === void 0 ? void 0 : _instance.uninstall();
679
724
  });
680
- (0,external_vue_namespaceObject.watch)(function () {
681
- return [props.lineHeight, props.height, props.list, props.maxHeight];
682
- }, function () {
683
- var _instance2;
684
- (_instance2 = instance) === null || _instance2 === void 0 ? void 0 : _instance2.setBinding(binding);
685
- handleChangeListConfig();
686
- (0,external_vue_namespaceObject.nextTick)(function () {
687
- afterListDataReset();
688
- });
689
- }, {
690
- deep: true
691
- });
692
725
  var handleChangeListConfig = function handleChangeListConfig() {
693
726
  /** 数据改变时激活当前表单,使其渲染DOM */
694
727
  handleListChanged(props.list);
@@ -788,18 +821,26 @@ function virtual_render_objectSpread(target) { for (var i = 1; i < arguments.len
788
821
  handleChangeListConfig();
789
822
  afterListDataReset();
790
823
  };
791
- var scrollTo = function scrollTo() {
792
- var option = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
793
- left: 0,
794
- top: 0
795
- };
796
- var left = option.left,
797
- top = option.top;
798
- refRoot.value.scrollTo(left, top);
799
- };
824
+ var _useFixTop = use_fix_top(props, refRoot),
825
+ scrollTo = _useFixTop.scrollTo,
826
+ fixToTop = _useFixTop.fixToTop;
827
+ (0,external_vue_namespaceObject.watch)(function () {
828
+ return [props.lineHeight, props.height, props.list, props.maxHeight];
829
+ }, function () {
830
+ var _instance2;
831
+ (_instance2 = instance) === null || _instance2 === void 0 ? void 0 : _instance2.setBinding(binding);
832
+ handleChangeListConfig();
833
+ (0,external_vue_namespaceObject.nextTick)(function () {
834
+ afterListDataReset();
835
+ });
836
+ }, {
837
+ deep: true,
838
+ immediate: true
839
+ });
800
840
  ctx.expose({
801
841
  reset: reset,
802
- scrollTo: scrollTo
842
+ scrollTo: scrollTo,
843
+ fixToTop: fixToTop
803
844
  });
804
845
  return function () {
805
846
  var _ctx$slots$beforeCont, _ctx$slots$beforeCont2, _ctx$slots, _ctx$slots$default, _ctx$slots$default2, _ctx$slots2, _ctx$slots$afterConte, _ctx$slots$afterConte2, _ctx$slots3, _ctx$slots$afterSecti, _ctx$slots$afterSecti2, _ctx$slots4;
@@ -0,0 +1,18 @@
1
+ import { Ref } from 'vue';
2
+ import { VirtualRenderProps } from './props';
3
+ type IFixToTopParams = {
4
+ index?: number;
5
+ id?: string;
6
+ item?: {
7
+ [key: string]: any;
8
+ };
9
+ position: number[];
10
+ };
11
+ declare const _default: (props: VirtualRenderProps, refRoot: Ref<HTMLElement>) => {
12
+ fixToTop: (params: IFixToTopParams) => void;
13
+ scrollTo: (option?: {
14
+ left: number;
15
+ top: number;
16
+ }) => void;
17
+ };
18
+ export default _default;
@@ -1,3 +1,8 @@
1
+ export declare function getMatchedIndex(maxCount: number, maxHeight: number, groupItemCount: number, callback: (index: number, items: any[]) => 0): {
2
+ startIndex: number;
3
+ height: number;
4
+ diffHeight: number;
5
+ };
1
6
  export declare function computedVirtualIndex(lineHeight: any, callback: any, pagination: any, _el: any, event: any): {
2
7
  targetStartIndex: number;
3
8
  targetEndIndex: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkui-vue",
3
- "version": "0.0.2-beta.111",
3
+ "version": "0.0.2-beta.113",
4
4
  "workspaces": {
5
5
  "packages": [
6
6
  "packages/!(**.bak)*",