@kdcloudjs/kdesign 1.8.70 → 1.8.71

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.
@@ -22,7 +22,7 @@ import { colorFormat, strFixed, getColorObj, highlightPresetColorIndex, presetCo
22
22
  import { defaultSystemColor } from './constant/defaultColor';
23
23
  import Color from 'color';
24
24
  import { getCompProps } from '../_utils';
25
- import usePopper from '../_utils/usePopper';
25
+ import Popper from '../popper';
26
26
  import { systemPresetColor } from './constant/systemPresetColor';
27
27
  import { removeTransparency } from './utils/removeTransparency';
28
28
  var InternalColorPicker = function InternalColorPicker(props, ref) {
@@ -305,7 +305,9 @@ var InternalColorPicker = function InternalColorPicker(props, ref) {
305
305
  onVisibleChange: null,
306
306
  clickToClose: false
307
307
  });
308
- return usePopper(colorInputEle, panel, popperProps);
308
+ return React.createElement(Popper, _extends({
309
+ tip: panel
310
+ }, popperProps), colorInputEle);
309
311
  };
310
312
  var ColorPicker = forwardRef(InternalColorPicker);
311
313
  ColorPicker.displayName = 'ColorPicker';
@@ -324,7 +324,11 @@ export var Popper = forwardRef(function (props, ref) {
324
324
  var delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
325
325
  triggerOpen(nextOpen, triggerType, delay);
326
326
  };
327
- var onClick = debounce(function () {
327
+ var onClick = debounce(function (e) {
328
+ var targetEl = e.target;
329
+ if (!targetEl) return;
330
+ var ignoreEl = closestPolyfill(targetEl, '[data-popper-ignore]');
331
+ if (ignoreEl) return;
328
332
  if (!visibleInner) {
329
333
  onTriggerInner(true, 'click');
330
334
  } else if (clickToClose) {
@@ -422,6 +426,10 @@ export var Popper = forwardRef(function (props, ref) {
422
426
  useEffect(function () {
423
427
  var clickHandle = debounce(function (e) {
424
428
  var _a, _b, _c;
429
+ var targetEl = e.target;
430
+ if (!targetEl) return;
431
+ var ignoreEl = closestPolyfill(targetEl, '[data-popper-ignore]');
432
+ if (ignoreEl) return;
425
433
  if (visibleInner) {
426
434
  var isPopper = popperRefDom.current ? popperRefDom.current === e.target || ((_b = (_a = popperRefDom.current).contains) === null || _b === void 0 ? void 0 : _b.call(_a, e.target)) : false;
427
435
  var domReference = getRealDom(referenceRef, referenceElement);
@@ -440,7 +448,8 @@ export var Popper = forwardRef(function (props, ref) {
440
448
  }
441
449
  }
442
450
  }, 10, {
443
- leading: true
451
+ leading: true,
452
+ trailing: false
444
453
  });
445
454
  if (visibleInner) {
446
455
  document.addEventListener('click', clickHandle, true);
@@ -621,6 +630,19 @@ export var Popper = forwardRef(function (props, ref) {
621
630
  resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
622
631
  };
623
632
  }, [exist, placementInner]);
633
+ useEffect(function () {
634
+ if (!exist) return;
635
+ var current = getRealDom(referenceRef, referenceElement);
636
+ if (!current) return;
637
+ var referenceResizeObserver = new ResizeObserver(function () {
638
+ var _a;
639
+ (_a = popperInstance.current) === null || _a === void 0 ? void 0 : _a.update();
640
+ });
641
+ referenceResizeObserver.observe(current);
642
+ return function () {
643
+ referenceResizeObserver === null || referenceResizeObserver === void 0 ? void 0 : referenceResizeObserver.disconnect();
644
+ };
645
+ }, [exist, referenceRef, referenceElement]);
624
646
  useEnhancedEffect(function () {
625
647
  if (!exist) {
626
648
  return undefined;
@@ -25,7 +25,7 @@ import { getCompProps } from '../_utils';
25
25
  import { toArray } from '../_utils/react-children';
26
26
  import { Icon, Checkbox, Tag } from '../index';
27
27
  import Option from './option';
28
- import usePopper from '../_utils/usePopper';
28
+ import Popper from '../popper';
29
29
  import VirtualList from '../virtual-list';
30
30
  import KeyCode from '../_utils/KeyCode';
31
31
  var INPUT_MIN_WIDTH = 4;
@@ -726,7 +726,10 @@ var InternalSelect = function InternalSelect(props, ref) {
726
726
  onClose: function onClose(e) {
727
727
  return handleRemove(e, value);
728
728
  },
729
- "data-tag": value
729
+ "data-tag": value,
730
+ customCloseProps: {
731
+ 'data-popper-ignore': true
732
+ }
730
733
  }, label)) : null;
731
734
  }), maxTagCount && mulOptions.length > maxTagCount ? maxTagPlaceholder ? handleMaxTagHolder() : React.createElement("span", {
732
735
  className: itemCls
@@ -918,7 +921,9 @@ var InternalSelect = function InternalSelect(props, ref) {
918
921
  onVisibleChange: handleVisibleChange,
919
922
  clickToClose: !(isShowSearch && searchValue)
920
923
  });
921
- return usePopper(renderSelect(), renderContent(), popperProps);
924
+ return React.createElement(Popper, _extends({
925
+ tip: renderContent()
926
+ }, popperProps), renderSelect());
922
927
  };
923
928
  var Select = React.forwardRef(InternalSelect);
924
929
  Select.displayName = 'Select';
package/es/table/api.js CHANGED
@@ -104,7 +104,7 @@ export default function getApi(pipelineRef) {
104
104
  var pxRight = colRightPixel - viewportWidth + lockColumnRight;
105
105
  var colBeforeViewport = vScrollLeft > colLeftPixel;
106
106
  var colPastViewport = vScrollRight < colRightPixel;
107
- var colToSmallForViewport = viewportWidth < column.width;
107
+ var colToSmallForViewport = viewportWidth - lockColumnLeft - lockColumnRight < column.width;
108
108
  var alignColToLeft = colBeforeViewport || colToSmallForViewport;
109
109
  var alignColToRight = colPastViewport;
110
110
  if (alignColToLeft || alignColToRight) {
package/es/tag/tag.d.ts CHANGED
@@ -20,6 +20,7 @@ export interface ITagProps {
20
20
  onClose?: React.MouseEventHandler<HTMLElement>;
21
21
  children?: React.ReactNode;
22
22
  title?: string;
23
+ customCloseProps?: unknown;
23
24
  }
24
25
  declare const Tag: React.ForwardRefExoticComponent<ITagProps & React.RefAttributes<unknown>>;
25
26
  export default Tag;
package/es/tag/tag.js CHANGED
@@ -41,8 +41,9 @@ var InteranalTag = function InteranalTag(props, ref) {
41
41
  onClose = tagProps.onClose,
42
42
  style = tagProps.style,
43
43
  customPrefixcls = tagProps.prefixCls,
44
+ customCloseProps = tagProps.customCloseProps,
44
45
  children = tagProps.children,
45
- others = __rest(tagProps, ["className", "clickable", "closable", "closeIcon", "color", "disabled", "icon", "size", "type", "onClick", "onClose", "style", "prefixCls", "children"]);
46
+ others = __rest(tagProps, ["className", "clickable", "closable", "closeIcon", "color", "disabled", "icon", "size", "type", "onClick", "onClose", "style", "prefixCls", "customCloseProps", "children"]);
46
47
  devWarning(TagTypes.indexOf(type) === -1, 'tag', "cannot found tag type '".concat(type, "'"));
47
48
  devWarning(TagSizes.indexOf(size) === -1, 'tag', "cannot found tag size '".concat(size, "'"));
48
49
  var tagPrefixCls = getPrefixCls(prefixCls, 'tag', customPrefixcls);
@@ -87,10 +88,10 @@ var InteranalTag = function InteranalTag(props, ref) {
87
88
  });
88
89
  var closeNode = closable && type === 'edit' ? disabled ? React.createElement("span", {
89
90
  className: "".concat(tagPrefixCls, "-closeWrapper")
90
- }, closeIconNode) : React.createElement("span", {
91
+ }, closeIconNode) : React.createElement("span", _extends({
91
92
  className: "".concat(tagPrefixCls, "-closeWrapper"),
92
93
  onClick: handleClose
93
- }, closeIconNode) : null;
94
+ }, customCloseProps), closeIconNode) : null;
94
95
  return React.createElement("span", _extends({
95
96
  ref: tagRef,
96
97
  onClick: handleClick,
@@ -24,7 +24,7 @@ var _colorFormat = require("./utils/colorFormat");
24
24
  var _defaultColor = require("./constant/defaultColor");
25
25
  var _color = _interopRequireDefault(require("color"));
26
26
  var _utils = require("../_utils");
27
- var _usePopper = _interopRequireDefault(require("../_utils/usePopper"));
27
+ var _popper = _interopRequireDefault(require("../popper"));
28
28
  var _systemPresetColor = require("./constant/systemPresetColor");
29
29
  var _removeTransparency = require("./utils/removeTransparency");
30
30
  function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -317,7 +317,9 @@ var InternalColorPicker = function InternalColorPicker(props, ref) {
317
317
  onVisibleChange: null,
318
318
  clickToClose: false
319
319
  });
320
- return (0, _usePopper.default)(colorInputEle, panel, popperProps);
320
+ return _react.default.createElement(_popper.default, (0, _extends2.default)({
321
+ tip: panel
322
+ }, popperProps), colorInputEle);
321
323
  };
322
324
  var ColorPicker = (0, _react.forwardRef)(InternalColorPicker);
323
325
  ColorPicker.displayName = 'ColorPicker';
@@ -341,7 +341,11 @@ var Popper = (0, _react.forwardRef)(function (props, ref) {
341
341
  var delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
342
342
  triggerOpen(nextOpen, triggerType, delay);
343
343
  };
344
- var onClick = (0, _debounce.default)(function () {
344
+ var onClick = (0, _debounce.default)(function (e) {
345
+ var targetEl = e.target;
346
+ if (!targetEl) return;
347
+ var ignoreEl = closestPolyfill(targetEl, '[data-popper-ignore]');
348
+ if (ignoreEl) return;
345
349
  if (!visibleInner) {
346
350
  onTriggerInner(true, 'click');
347
351
  } else if (clickToClose) {
@@ -439,6 +443,10 @@ var Popper = (0, _react.forwardRef)(function (props, ref) {
439
443
  (0, _react.useEffect)(function () {
440
444
  var clickHandle = (0, _debounce.default)(function (e) {
441
445
  var _a, _b, _c;
446
+ var targetEl = e.target;
447
+ if (!targetEl) return;
448
+ var ignoreEl = closestPolyfill(targetEl, '[data-popper-ignore]');
449
+ if (ignoreEl) return;
442
450
  if (visibleInner) {
443
451
  var isPopper = popperRefDom.current ? popperRefDom.current === e.target || ((_b = (_a = popperRefDom.current).contains) === null || _b === void 0 ? void 0 : _b.call(_a, e.target)) : false;
444
452
  var domReference = getRealDom(referenceRef, referenceElement);
@@ -457,7 +465,8 @@ var Popper = (0, _react.forwardRef)(function (props, ref) {
457
465
  }
458
466
  }
459
467
  }, 10, {
460
- leading: true
468
+ leading: true,
469
+ trailing: false
461
470
  });
462
471
  if (visibleInner) {
463
472
  document.addEventListener('click', clickHandle, true);
@@ -638,6 +647,19 @@ var Popper = (0, _react.forwardRef)(function (props, ref) {
638
647
  resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();
639
648
  };
640
649
  }, [exist, placementInner]);
650
+ (0, _react.useEffect)(function () {
651
+ if (!exist) return;
652
+ var current = getRealDom(referenceRef, referenceElement);
653
+ if (!current) return;
654
+ var referenceResizeObserver = new _resizeObserverPolyfill.default(function () {
655
+ var _a;
656
+ (_a = popperInstance.current) === null || _a === void 0 ? void 0 : _a.update();
657
+ });
658
+ referenceResizeObserver.observe(current);
659
+ return function () {
660
+ referenceResizeObserver === null || referenceResizeObserver === void 0 ? void 0 : referenceResizeObserver.disconnect();
661
+ };
662
+ }, [exist, referenceRef, referenceElement]);
641
663
  useEnhancedEffect(function () {
642
664
  if (!exist) {
643
665
  return undefined;
@@ -32,7 +32,7 @@ var _utils = require("../_utils");
32
32
  var _reactChildren = require("../_utils/react-children");
33
33
  var _index = require("../index");
34
34
  var _option = _interopRequireDefault(require("./option"));
35
- var _usePopper = _interopRequireDefault(require("../_utils/usePopper"));
35
+ var _popper = _interopRequireDefault(require("../popper"));
36
36
  var _virtualList = _interopRequireDefault(require("../virtual-list"));
37
37
  var _KeyCode = _interopRequireDefault(require("../_utils/KeyCode"));
38
38
  function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -738,7 +738,10 @@ var InternalSelect = function InternalSelect(props, ref) {
738
738
  onClose: function onClose(e) {
739
739
  return handleRemove(e, value);
740
740
  },
741
- "data-tag": value
741
+ "data-tag": value,
742
+ customCloseProps: {
743
+ 'data-popper-ignore': true
744
+ }
742
745
  }, label)) : null;
743
746
  }), maxTagCount && mulOptions.length > maxTagCount ? maxTagPlaceholder ? handleMaxTagHolder() : _react.default.createElement("span", {
744
747
  className: itemCls
@@ -930,7 +933,9 @@ var InternalSelect = function InternalSelect(props, ref) {
930
933
  onVisibleChange: handleVisibleChange,
931
934
  clickToClose: !(isShowSearch && searchValue)
932
935
  });
933
- return (0, _usePopper.default)(renderSelect(), renderContent(), popperProps);
936
+ return _react.default.createElement(_popper.default, (0, _extends2.default)({
937
+ tip: renderContent()
938
+ }, popperProps), renderSelect());
934
939
  };
935
940
  var Select = _react.default.forwardRef(InternalSelect);
936
941
  Select.displayName = 'Select';
package/lib/table/api.js CHANGED
@@ -111,7 +111,7 @@ function getApi(pipelineRef) {
111
111
  var pxRight = colRightPixel - viewportWidth + lockColumnRight;
112
112
  var colBeforeViewport = vScrollLeft > colLeftPixel;
113
113
  var colPastViewport = vScrollRight < colRightPixel;
114
- var colToSmallForViewport = viewportWidth < column.width;
114
+ var colToSmallForViewport = viewportWidth - lockColumnLeft - lockColumnRight < column.width;
115
115
  var alignColToLeft = colBeforeViewport || colToSmallForViewport;
116
116
  var alignColToRight = colPastViewport;
117
117
  if (alignColToLeft || alignColToRight) {
package/lib/tag/tag.d.ts CHANGED
@@ -20,6 +20,7 @@ export interface ITagProps {
20
20
  onClose?: React.MouseEventHandler<HTMLElement>;
21
21
  children?: React.ReactNode;
22
22
  title?: string;
23
+ customCloseProps?: unknown;
23
24
  }
24
25
  declare const Tag: React.ForwardRefExoticComponent<ITagProps & React.RefAttributes<unknown>>;
25
26
  export default Tag;
package/lib/tag/tag.js CHANGED
@@ -56,8 +56,9 @@ var InteranalTag = function InteranalTag(props, ref) {
56
56
  onClose = tagProps.onClose,
57
57
  style = tagProps.style,
58
58
  customPrefixcls = tagProps.prefixCls,
59
+ customCloseProps = tagProps.customCloseProps,
59
60
  children = tagProps.children,
60
- others = __rest(tagProps, ["className", "clickable", "closable", "closeIcon", "color", "disabled", "icon", "size", "type", "onClick", "onClose", "style", "prefixCls", "children"]);
61
+ others = __rest(tagProps, ["className", "clickable", "closable", "closeIcon", "color", "disabled", "icon", "size", "type", "onClick", "onClose", "style", "prefixCls", "customCloseProps", "children"]);
61
62
  (0, _devwarning.default)(TagTypes.indexOf(type) === -1, 'tag', "cannot found tag type '".concat(type, "'"));
62
63
  (0, _devwarning.default)(TagSizes.indexOf(size) === -1, 'tag', "cannot found tag size '".concat(size, "'"));
63
64
  var tagPrefixCls = getPrefixCls(prefixCls, 'tag', customPrefixcls);
@@ -102,10 +103,10 @@ var InteranalTag = function InteranalTag(props, ref) {
102
103
  });
103
104
  var closeNode = closable && type === 'edit' ? disabled ? _react.default.createElement("span", {
104
105
  className: "".concat(tagPrefixCls, "-closeWrapper")
105
- }, closeIconNode) : _react.default.createElement("span", {
106
+ }, closeIconNode) : _react.default.createElement("span", (0, _extends2.default)({
106
107
  className: "".concat(tagPrefixCls, "-closeWrapper"),
107
108
  onClick: handleClose
108
- }, closeIconNode) : null;
109
+ }, customCloseProps), closeIconNode) : null;
109
110
  return _react.default.createElement("span", (0, _extends2.default)({
110
111
  ref: tagRef,
111
112
  onClick: handleClick,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kdcloudjs/kdesign",
3
- "version": "1.8.70",
3
+ "version": "1.8.71",
4
4
  "description": "KDesign 金蝶前端react 组件库",
5
5
  "title": "kdesign",
6
6
  "keywords": [