linkmore-design 1.0.54 → 1.0.55

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 (99) hide show
  1. package/dist/Affix/demos/basic.d.ts +2 -0
  2. package/dist/Affix/index.d.ts +54 -0
  3. package/dist/Affix/style/index.d.ts +1 -0
  4. package/dist/Affix/utils.d.ts +15 -0
  5. package/dist/CardTable/fns/index.d.ts +1 -5
  6. package/dist/IconFont/index.d.ts +1 -1
  7. package/dist/LmFilter/{components → baseFilter}/fuzzySearch.d.ts +0 -0
  8. package/dist/LmFilter/utils.d.ts +1 -0
  9. package/dist/QuickMenu/demos/basic.d.ts +2 -0
  10. package/dist/QuickMenu/index.d.ts +14 -0
  11. package/dist/QuickMenu/style/index.d.ts +1 -0
  12. package/dist/Tag/demos/ExigencyTag.d.ts +2 -0
  13. package/dist/Tag/index.d.ts +4 -0
  14. package/dist/Upload/demos/picture-little.d.ts +3 -0
  15. package/dist/Upload/index.d.ts +5 -1
  16. package/dist/_util/domTarget.d.ts +7 -0
  17. package/dist/_util/throttleByAnimationFrame.d.ts +8 -0
  18. package/dist/index.d.ts +1 -0
  19. package/dist/index.umd.js +548 -8
  20. package/dist/index.umd.min.js +4 -4
  21. package/es/Affix/index.d.ts +54 -0
  22. package/es/Affix/index.js +326 -0
  23. package/es/Affix/style/index.css +505 -0
  24. package/es/Affix/style/index.d.ts +1 -0
  25. package/es/Affix/style/index.js +1 -0
  26. package/es/Affix/utils.d.ts +15 -0
  27. package/es/Affix/utils.js +83 -0
  28. package/es/CardTable/fns/index.js +6 -5
  29. package/es/Descriptions/style/index.css +10 -8
  30. package/es/IconFont/index.js +3 -2
  31. package/es/LmFilter/baseFilter/fuzzySearch.js +53 -0
  32. package/es/LmFilter/baseFilter/index.js +1 -1
  33. package/es/LmFilter/clearFilter/index.js +3 -1
  34. package/es/LmFilter/components/CascaderFilter.js +17 -41
  35. package/es/LmFilter/components/DateFilter.js +12 -20
  36. package/es/LmFilter/components/DropdownFIlter.js +78 -10
  37. package/es/LmFilter/components/index.js +56 -13
  38. package/es/LmFilter/hooks/useDelayedFn.js +8 -6
  39. package/es/LmFilter/style/style.css +16 -0
  40. package/es/LmFilter/utils.js +16 -0
  41. package/es/LmFilter/wrapper/FilterRoot.js +6 -0
  42. package/es/QuickMenu/index.d.ts +14 -0
  43. package/es/QuickMenu/index.js +169 -0
  44. package/es/QuickMenu/style/index.css +560 -0
  45. package/es/QuickMenu/style/index.d.ts +1 -0
  46. package/es/QuickMenu/style/index.js +1 -0
  47. package/es/Tag/index.d.ts +4 -0
  48. package/es/Tag/index.js +48 -2
  49. package/es/Tag/style/index.css +4 -1
  50. package/es/Upload/index.d.ts +5 -1
  51. package/es/Upload/index.js +7 -2
  52. package/es/Upload/style/index.css +35 -0
  53. package/es/_util/domTarget.d.ts +7 -0
  54. package/es/_util/domTarget.js +20 -0
  55. package/es/_util/throttleByAnimationFrame.d.ts +8 -0
  56. package/es/_util/throttleByAnimationFrame.js +58 -0
  57. package/es/index.d.ts +1 -0
  58. package/es/index.js +2 -1
  59. package/lib/Affix/index.d.ts +54 -0
  60. package/lib/Affix/index.js +349 -0
  61. package/lib/Affix/style/index.css +505 -0
  62. package/lib/Affix/style/index.d.ts +1 -0
  63. package/lib/Affix/style/index.js +3 -0
  64. package/lib/Affix/utils.d.ts +15 -0
  65. package/lib/Affix/utils.js +104 -0
  66. package/lib/CardTable/fns/index.js +6 -5
  67. package/lib/Descriptions/style/index.css +10 -8
  68. package/lib/IconFont/index.js +3 -2
  69. package/lib/LmFilter/baseFilter/fuzzySearch.js +53 -0
  70. package/lib/LmFilter/baseFilter/index.js +1 -1
  71. package/lib/LmFilter/clearFilter/index.js +3 -1
  72. package/lib/LmFilter/components/CascaderFilter.js +17 -41
  73. package/lib/LmFilter/components/DateFilter.js +12 -20
  74. package/lib/LmFilter/components/DropdownFIlter.js +78 -10
  75. package/lib/LmFilter/components/index.js +56 -13
  76. package/lib/LmFilter/hooks/useDelayedFn.js +8 -6
  77. package/lib/LmFilter/style/style.css +16 -0
  78. package/lib/LmFilter/utils.js +16 -0
  79. package/lib/LmFilter/wrapper/FilterRoot.js +6 -0
  80. package/lib/QuickMenu/index.d.ts +14 -0
  81. package/lib/QuickMenu/index.js +187 -0
  82. package/lib/QuickMenu/style/index.css +560 -0
  83. package/lib/QuickMenu/style/index.d.ts +1 -0
  84. package/lib/QuickMenu/style/index.js +3 -0
  85. package/lib/Tag/index.d.ts +4 -0
  86. package/lib/Tag/index.js +48 -1
  87. package/lib/Tag/style/index.css +4 -1
  88. package/lib/Upload/index.d.ts +5 -1
  89. package/lib/Upload/index.js +8 -2
  90. package/lib/Upload/style/index.css +35 -0
  91. package/lib/_util/domTarget.d.ts +7 -0
  92. package/lib/_util/domTarget.js +31 -0
  93. package/lib/_util/throttleByAnimationFrame.d.ts +8 -0
  94. package/lib/_util/throttleByAnimationFrame.js +72 -0
  95. package/lib/index.d.ts +1 -0
  96. package/lib/index.js +9 -1
  97. package/package.json +5 -2
  98. package/es/LmFilter/components/fuzzySearch.js +0 -37
  99. package/lib/LmFilter/components/fuzzySearch.js +0 -37
package/dist/index.umd.js CHANGED
@@ -2745,8 +2745,9 @@
2745
2745
  }
2746
2746
 
2747
2747
  var IconFont = create({
2748
- // scriptUrl: '//at.alicdn.com/t/font_2966019_8aij0300kjo.js', // 在 iconfont.cn 上生成
2749
- scriptUrl: require('./font/iconfont.js')
2748
+ scriptUrl: '//at.alicdn.com/t/c/font_2966019_7jeb9gjjk63.js' // 在 iconfont.cn 上生成
2749
+ // scriptUrl: require('./font/iconfont.js'),
2750
+
2750
2751
  });
2751
2752
 
2752
2753
  var lodash = createCommonjsModule(function (module, exports) {
@@ -81113,6 +81114,39 @@
81113
81114
  return memoizedFn.current;
81114
81115
  }
81115
81116
 
81117
+ function depsAreSame(oldDeps, deps) {
81118
+ if (oldDeps === deps) return true;
81119
+
81120
+ for (var i = 0; i < oldDeps.length; i++) {
81121
+ if (!Object.is(oldDeps[i], deps[i])) return false;
81122
+ }
81123
+
81124
+ return true;
81125
+ }
81126
+
81127
+ function useLatest$1(value) {
81128
+ var ref = React.useRef(value);
81129
+ ref.current = value;
81130
+ return ref;
81131
+ }
81132
+
81133
+ var useUnmount = function useUnmount(fn) {
81134
+ {
81135
+ if (!isFunction$3(fn)) {
81136
+ console.error("useUnmount expected parameter is a function, got " + typeof fn);
81137
+ }
81138
+ }
81139
+
81140
+ var fnRef = useLatest$1(fn);
81141
+ React.useEffect(function () {
81142
+ return function () {
81143
+ fnRef.current();
81144
+ };
81145
+ }, []);
81146
+ };
81147
+
81148
+ var isBrowser$2 = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
81149
+
81116
81150
  var __read = undefined && undefined.__read || function (o, n) {
81117
81151
  var m = typeof Symbol === "function" && o[Symbol.iterator];
81118
81152
  if (!m) return o;
@@ -81149,6 +81183,77 @@
81149
81183
  }, []);
81150
81184
  };
81151
81185
 
81186
+ function getTargetElement(target, defaultElement) {
81187
+ if (!isBrowser$2) {
81188
+ return undefined;
81189
+ }
81190
+
81191
+ if (!target) {
81192
+ return defaultElement;
81193
+ }
81194
+
81195
+ var targetElement;
81196
+
81197
+ if (isFunction$3(target)) {
81198
+ targetElement = target();
81199
+ } else if ('current' in target) {
81200
+ targetElement = target.current;
81201
+ } else {
81202
+ targetElement = target;
81203
+ }
81204
+
81205
+ return targetElement;
81206
+ }
81207
+
81208
+ var createEffectWithTarget = function createEffectWithTarget(useEffectType) {
81209
+ /**
81210
+ *
81211
+ * @param effect
81212
+ * @param deps
81213
+ * @param target target should compare ref.current vs ref.current, dom vs dom, ()=>dom vs ()=>dom
81214
+ */
81215
+ var useEffectWithTarget = function useEffectWithTarget(effect, deps, target) {
81216
+ var hasInitRef = React.useRef(false);
81217
+ var lastElementRef = React.useRef([]);
81218
+ var lastDepsRef = React.useRef([]);
81219
+ var unLoadRef = React.useRef();
81220
+ useEffectType(function () {
81221
+ var _a;
81222
+
81223
+ var targets = Array.isArray(target) ? target : [target];
81224
+ var els = targets.map(function (item) {
81225
+ return getTargetElement(item);
81226
+ }); // init run
81227
+
81228
+ if (!hasInitRef.current) {
81229
+ hasInitRef.current = true;
81230
+ lastElementRef.current = els;
81231
+ lastDepsRef.current = deps;
81232
+ unLoadRef.current = effect();
81233
+ return;
81234
+ }
81235
+
81236
+ if (els.length !== lastElementRef.current.length || !depsAreSame(els, lastElementRef.current) || !depsAreSame(deps, lastDepsRef.current)) {
81237
+ (_a = unLoadRef.current) === null || _a === void 0 ? void 0 : _a.call(unLoadRef);
81238
+ lastElementRef.current = els;
81239
+ lastDepsRef.current = deps;
81240
+ unLoadRef.current = effect();
81241
+ }
81242
+ });
81243
+ useUnmount(function () {
81244
+ var _a;
81245
+
81246
+ (_a = unLoadRef.current) === null || _a === void 0 ? void 0 : _a.call(unLoadRef); // for react-refresh
81247
+
81248
+ hasInitRef.current = false;
81249
+ });
81250
+ };
81251
+
81252
+ return useEffectWithTarget;
81253
+ };
81254
+
81255
+ var useEffectWithTarget = createEffectWithTarget(React.useEffect);
81256
+
81152
81257
  var __read$1 = undefined && undefined.__read || function (o, n) {
81153
81258
  var m = typeof Symbol === "function" && o[Symbol.iterator];
81154
81259
  if (!m) return o;
@@ -81243,6 +81348,137 @@
81243
81348
  return [stateRef.current, useMemoizedFn(setState)];
81244
81349
  }
81245
81350
 
81351
+ var __read$2 = undefined && undefined.__read || function (o, n) {
81352
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
81353
+ if (!m) return o;
81354
+ var i = m.call(o),
81355
+ r,
81356
+ ar = [],
81357
+ e;
81358
+
81359
+ try {
81360
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
81361
+ ar.push(r.value);
81362
+ }
81363
+ } catch (error) {
81364
+ e = {
81365
+ error: error
81366
+ };
81367
+ } finally {
81368
+ try {
81369
+ if (r && !r.done && (m = i["return"])) m.call(i);
81370
+ } finally {
81371
+ if (e) throw e.error;
81372
+ }
81373
+ }
81374
+
81375
+ return ar;
81376
+ };
81377
+
81378
+ function useRafState(initialState) {
81379
+ var ref = React.useRef(0);
81380
+
81381
+ var _a = __read$2(React.useState(initialState), 2),
81382
+ state = _a[0],
81383
+ setState = _a[1];
81384
+
81385
+ var setRafState = React.useCallback(function (value) {
81386
+ cancelAnimationFrame(ref.current);
81387
+ ref.current = requestAnimationFrame(function () {
81388
+ setState(value);
81389
+ });
81390
+ }, []);
81391
+ useUnmount(function () {
81392
+ cancelAnimationFrame(ref.current);
81393
+ });
81394
+ return [state, setRafState];
81395
+ }
81396
+
81397
+ var __read$3 = undefined && undefined.__read || function (o, n) {
81398
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
81399
+ if (!m) return o;
81400
+ var i = m.call(o),
81401
+ r,
81402
+ ar = [],
81403
+ e;
81404
+
81405
+ try {
81406
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
81407
+ ar.push(r.value);
81408
+ }
81409
+ } catch (error) {
81410
+ e = {
81411
+ error: error
81412
+ };
81413
+ } finally {
81414
+ try {
81415
+ if (r && !r.done && (m = i["return"])) m.call(i);
81416
+ } finally {
81417
+ if (e) throw e.error;
81418
+ }
81419
+ }
81420
+
81421
+ return ar;
81422
+ };
81423
+
81424
+ function useScroll(target, shouldUpdate) {
81425
+ if (shouldUpdate === void 0) {
81426
+ shouldUpdate = function shouldUpdate() {
81427
+ return true;
81428
+ };
81429
+ }
81430
+
81431
+ var _a = __read$3(useRafState(), 2),
81432
+ position = _a[0],
81433
+ setPosition = _a[1];
81434
+
81435
+ var shouldUpdateRef = useLatest$1(shouldUpdate);
81436
+ useEffectWithTarget(function () {
81437
+ var el = getTargetElement(target, document);
81438
+
81439
+ if (!el) {
81440
+ return;
81441
+ }
81442
+
81443
+ var updatePosition = function updatePosition() {
81444
+ var newPosition;
81445
+
81446
+ if (el === document) {
81447
+ if (document.scrollingElement) {
81448
+ newPosition = {
81449
+ left: document.scrollingElement.scrollLeft,
81450
+ top: document.scrollingElement.scrollTop
81451
+ };
81452
+ } else {
81453
+ // When in quirks mode, the scrollingElement attribute returns the HTML body element if it exists and is potentially scrollable, otherwise it returns null.
81454
+ // https://developer.mozilla.org/zh-CN/docs/Web/API/Document/scrollingElement
81455
+ // https://stackoverflow.com/questions/28633221/document-body-scrolltop-firefox-returns-0-only-js
81456
+ newPosition = {
81457
+ left: Math.max(window.pageYOffset, document.documentElement.scrollTop, document.body.scrollTop),
81458
+ top: Math.max(window.pageXOffset, document.documentElement.scrollLeft, document.body.scrollLeft)
81459
+ };
81460
+ }
81461
+ } else {
81462
+ newPosition = {
81463
+ left: el.scrollLeft,
81464
+ top: el.scrollTop
81465
+ };
81466
+ }
81467
+
81468
+ if (shouldUpdateRef.current(newPosition)) {
81469
+ setPosition(newPosition);
81470
+ }
81471
+ };
81472
+
81473
+ updatePosition();
81474
+ el.addEventListener('scroll', updatePosition);
81475
+ return function () {
81476
+ el.removeEventListener('scroll', updatePosition);
81477
+ };
81478
+ }, [], target);
81479
+ return position;
81480
+ }
81481
+
81246
81482
  function getArray(val) {
81247
81483
  if (!val) return [];
81248
81484
  return Array.isArray(val) ? val : [val];
@@ -86336,7 +86572,78 @@
86336
86572
  LmTree.TreeNode = _Tree__default['default'].TreeNode;
86337
86573
  LmTree.DirectoryTree = _Tree__default['default'].DirectoryTree;
86338
86574
 
86339
- var _excluded$1n = ["className", "color"];
86575
+ var removeHash = function removeHash(hex) {
86576
+ return hex.charAt(0) === '#' ? hex.slice(1) : hex;
86577
+ };
86578
+
86579
+ var parseHex = function parseHex(nakedHex) {
86580
+ var isShort = nakedHex.length === 3 || nakedHex.length === 4;
86581
+ var twoDigitHexR = isShort ? "".concat(nakedHex.slice(0, 1)).concat(nakedHex.slice(0, 1)) : nakedHex.slice(0, 2);
86582
+ var twoDigitHexG = isShort ? "".concat(nakedHex.slice(1, 2)).concat(nakedHex.slice(1, 2)) : nakedHex.slice(2, 4);
86583
+ var twoDigitHexB = isShort ? "".concat(nakedHex.slice(2, 3)).concat(nakedHex.slice(2, 3)) : nakedHex.slice(4, 6);
86584
+ var twoDigitHexA = (isShort ? "".concat(nakedHex.slice(3, 4)).concat(nakedHex.slice(3, 4)) : nakedHex.slice(6, 8)) || 'ff'; // const numericA = +((parseInt(a, 16) / 255).toFixed(2));
86585
+
86586
+ return {
86587
+ r: twoDigitHexR,
86588
+ g: twoDigitHexG,
86589
+ b: twoDigitHexB,
86590
+ a: twoDigitHexA
86591
+ };
86592
+ };
86593
+
86594
+ var hexToDecimal = function hexToDecimal(hex) {
86595
+ return parseInt(hex, 16);
86596
+ };
86597
+
86598
+ var hexesToDecimals = function hexesToDecimals(_ref) {
86599
+ var r = _ref.r,
86600
+ g = _ref.g,
86601
+ b = _ref.b,
86602
+ a = _ref.a;
86603
+ return {
86604
+ r: hexToDecimal(r),
86605
+ g: hexToDecimal(g),
86606
+ b: hexToDecimal(b),
86607
+ a: +(hexToDecimal(a) / 255).toFixed(2)
86608
+ };
86609
+ };
86610
+
86611
+ var isNumeric = function isNumeric(n) {
86612
+ return !isNaN(parseFloat(n)) && isFinite(n);
86613
+ }; // eslint-disable-line no-restricted-globals, max-len
86614
+
86615
+
86616
+ var formatRgb = function formatRgb(decimalObject, parameterA) {
86617
+ var r = decimalObject.r,
86618
+ g = decimalObject.g,
86619
+ b = decimalObject.b,
86620
+ parsedA = decimalObject.a;
86621
+ var a = isNumeric(parameterA) ? parameterA : parsedA;
86622
+ return "rgba(".concat(r, ", ").concat(g, ", ").concat(b, ", ").concat(a, ")");
86623
+ };
86624
+ /**
86625
+ * Turns an old-fashioned css hex color value into a rgb color value.
86626
+ *
86627
+ * If you specify an alpha value, you'll get a rgba() value instead.
86628
+ *
86629
+ * @param The hex value to convert. ('123456'. '#123456', ''123', '#123')
86630
+ * @param An alpha value to apply. (optional) ('0.5', '0.25')
86631
+ * @return An rgb or rgba value. ('rgb(11, 22, 33)'. 'rgba(11, 22, 33, 0.5)')
86632
+ */
86633
+
86634
+
86635
+ var hexToRgba = function hexToRgba(hex, a) {
86636
+ var hashlessHex = removeHash(hex);
86637
+ var hexObject = parseHex(hashlessHex);
86638
+ var decimalObject = hexesToDecimals(hexObject);
86639
+ return formatRgb(decimalObject, a);
86640
+ };
86641
+
86642
+ var build = hexToRgba;
86643
+
86644
+ var _excluded$1n = ["className", "color"],
86645
+ _excluded2$m = ["className", "color", "checked"];
86646
+ var CheckableTag = _Tag__default['default'].CheckableTag;
86340
86647
  var PresetColorTypes = ['pink', 'red', 'yellow', 'orange', 'cyan', 'green', 'blue', 'purple', 'geekblue', 'magenta', 'volcano', 'gold', 'lime', 'theme'];
86341
86648
  var prefixCls$9 = 'lm_tag';
86342
86649
  var LmTag = /*#__PURE__*/React.forwardRef(function (props, ref) {
@@ -86353,7 +86660,50 @@
86353
86660
  }, className, PresetColorTypes.includes(color) && "lm_tag_main_color lm_tag_main_".concat(color))
86354
86661
  }));
86355
86662
  });
86356
- LmTag.CheckableTag = _Tag__default['default'].CheckableTag;
86663
+ var checkPreFixCls = 'lm_check_tag';
86664
+
86665
+ LmTag.CheckableTag = function (props) {
86666
+ var className = props.className,
86667
+ color = props.color,
86668
+ checked = props.checked,
86669
+ rest = _objectWithoutProperties(props, _excluded2$m);
86670
+
86671
+ var checkTagRef = React.useRef(null);
86672
+ var colorProps = React.useMemo(function () {
86673
+ if (color) {
86674
+ try {
86675
+ return {
86676
+ style: {
86677
+ color: checked ? '#fff' : build(color),
86678
+ background: checked ? color : build(color, 0.15)
86679
+ },
86680
+ onMouseEnter: function onMouseEnter() {
86681
+ checkTagRef.current.firstChild.style.background = checked ? color : build(color, 0.25);
86682
+ },
86683
+ onMouseLeave: function onMouseLeave() {
86684
+ checkTagRef.current.firstChild.style.background = checked ? color : build(color, 0.15);
86685
+ }
86686
+ };
86687
+ } catch (_unused) {
86688
+ return {
86689
+ style: {
86690
+ color: build(color),
86691
+ background: build(color, 0.15)
86692
+ }
86693
+ };
86694
+ }
86695
+ } else {
86696
+ return {};
86697
+ }
86698
+ }, [color, checked]);
86699
+ return /*#__PURE__*/React__default['default'].createElement("span", {
86700
+ ref: checkTagRef
86701
+ }, /*#__PURE__*/React__default['default'].createElement(CheckableTag, _objectSpread(_objectSpread(_objectSpread({}, rest), {}, {
86702
+ checked: checked
86703
+ }, colorProps), {}, {
86704
+ className: classnames(checkPreFixCls, className, color && 'lm_custom_color_tag')
86705
+ })));
86706
+ };
86357
86707
 
86358
86708
  function createUseMessage(getRcNotificationInstance, getRCNoticeProps) {
86359
86709
  var useMessage = function useMessage() {
@@ -87393,17 +87743,21 @@
87393
87743
  });
87394
87744
 
87395
87745
  var LMUpload = function LMUpload(props) {
87396
- var listType = props.listType;
87746
+ var className = props.className,
87747
+ sizeType = props.sizeType,
87748
+ listType = props.listType;
87397
87749
 
87398
87750
  var renderUploadItem = function renderUploadItem(originNode, file) {
87399
87751
  return !listType ? /*#__PURE__*/React__default['default'].createElement(_Tooltip__default['default'], {
87400
- placement: 'bottom',
87752
+ placement: "bottom",
87401
87753
  title: file.name
87402
87754
  }, originNode.props.children) : originNode;
87403
87755
  };
87404
87756
 
87405
87757
  return /*#__PURE__*/React__default['default'].createElement(_Upload__default['default'], _objectSpread({
87758
+ className: classnames(className, sizeType == 'small' && 'little-upload'),
87406
87759
  itemRender: renderUploadItem,
87760
+ sizeType: sizeType,
87407
87761
  listType: listType
87408
87762
  }, props));
87409
87763
  };
@@ -87528,7 +87882,7 @@
87528
87882
  };
87529
87883
 
87530
87884
  var _excluded$1r = ["index"],
87531
- _excluded2$m = ["index"],
87885
+ _excluded2$n = ["index"],
87532
87886
  _excluded3$7 = ["value", "onChange"],
87533
87887
  _excluded4$3 = ["record", "rowKey", "isEdit", "col", "handleTableRowDelete", "handleTableRowAdd", "getLength", "isHoverEdit", "editEnum", "valueType", "children", "handleSave", "handleAdd", "handleDelete", "itemProps", "setValid", "reWriteOriginSource"],
87534
87888
  _excluded5$2 = ["onMouseEnter", "onMouseLeave"],
@@ -87554,7 +87908,7 @@
87554
87908
 
87555
87909
  var EditableSortRow = function EditableSortRow(_ref2) {
87556
87910
  var index = _ref2.index,
87557
- props = _objectWithoutProperties(_ref2, _excluded2$m);
87911
+ props = _objectWithoutProperties(_ref2, _excluded2$n);
87558
87912
 
87559
87913
  var _Form$useForm3 = _Form__default['default'].useForm(),
87560
87914
  _Form$useForm4 = _slicedToArray(_Form$useForm3, 1),
@@ -88361,6 +88715,191 @@
88361
88715
  });
88362
88716
  var LmEditTable = /*#__PURE__*/React.memo(EditTable$1);
88363
88717
 
88718
+ var isFunction$4 = function isFunction(value) {
88719
+ return typeof value === 'function';
88720
+ };
88721
+ function getTargetElement$1(target, defaultElement) {
88722
+ if (!target) {
88723
+ return defaultElement;
88724
+ }
88725
+
88726
+ var targetElement;
88727
+
88728
+ if (isFunction$4(target)) {
88729
+ targetElement = target();
88730
+ } else if ('current' in target) {
88731
+ targetElement = target.current;
88732
+ } else {
88733
+ targetElement = target;
88734
+ }
88735
+
88736
+ return targetElement;
88737
+ }
88738
+
88739
+ var prefixCls$c = 'lm_quick_menu';
88740
+
88741
+ var LMQuickMenu = function LMQuickMenu(props) {
88742
+ var className = props.className,
88743
+ _props$top = props.top,
88744
+ top = _props$top === void 0 ? '104px' : _props$top,
88745
+ _props$menuData = props.menuData,
88746
+ menuData = _props$menuData === void 0 ? [] : _props$menuData,
88747
+ warpElement = props.warpElement;
88748
+ var idTopInfo = React.useRef({});
88749
+
88750
+ var _useState = React.useState(false),
88751
+ _useState2 = _slicedToArray(_useState, 2),
88752
+ hovering = _useState2[0],
88753
+ setHovering = _useState2[1];
88754
+
88755
+ var menuTimeEventRef = React.useRef(null);
88756
+
88757
+ var _useState3 = React.useState(false),
88758
+ _useState4 = _slicedToArray(_useState3, 2),
88759
+ scrollOpenStatus = _useState4[0],
88760
+ setScrollOpenStatus = _useState4[1];
88761
+
88762
+ var scrollTimeOut = React.useRef(null);
88763
+ var scroll = useScroll(getTargetElement$1(warpElement || document), function () {
88764
+ return scrollOpenStatus;
88765
+ });
88766
+
88767
+ function clearActiveToc() {
88768
+ [].forEach.call(document.querySelectorAll('.lm_menu_list li a'), function (node) {
88769
+ node.className = '';
88770
+ });
88771
+ }
88772
+
88773
+ var updateActiveToc = function updateActiveToc(id) {
88774
+ var currentNode = document.querySelectorAll(".lm_menu_list li a[data-id=\"".concat(id, "\"]"))[0];
88775
+
88776
+ if (currentNode) {
88777
+ clearActiveToc();
88778
+ currentNode.className = 'current';
88779
+ }
88780
+ };
88781
+
88782
+ var bindScroller = function bindScroller() {
88783
+ var _menuTimeEventRef$cur2, _menuTimeEventRef$cur3;
88784
+
88785
+ if (menuTimeEventRef.current) {
88786
+ var _menuTimeEventRef$cur;
88787
+
88788
+ (_menuTimeEventRef$cur = menuTimeEventRef.current) === null || _menuTimeEventRef$cur === void 0 ? void 0 : _menuTimeEventRef$cur.destroy();
88789
+ }
88790
+
88791
+ if (!menuData.length) {
88792
+ return;
88793
+ } // eslint-disable-next-line global-require
88794
+
88795
+
88796
+ require('intersection-observer'); // eslint-disable-next-line global-require
88797
+
88798
+
88799
+ var scrollama = require('scrollama');
88800
+
88801
+ menuTimeEventRef.current = scrollama();
88802
+ (_menuTimeEventRef$cur2 = menuTimeEventRef.current) === null || _menuTimeEventRef$cur2 === void 0 ? void 0 : (_menuTimeEventRef$cur3 = _menuTimeEventRef$cur2.setup({
88803
+ step: menuData.map(function (item) {
88804
+ return document.getElementById("".concat(item.menuId));
88805
+ }).filter(Boolean) // required
88806
+ // offset: '10px',
88807
+
88808
+ })) === null || _menuTimeEventRef$cur3 === void 0 ? void 0 : _menuTimeEventRef$cur3.onStepEnter(function (_ref) {
88809
+ var element = _ref.element;
88810
+ updateActiveToc(element.id);
88811
+ });
88812
+ };
88813
+
88814
+ function setKeysDom() {
88815
+ menuData.forEach(function (item) {
88816
+ var _getTargetElement, _document$getElementB;
88817
+
88818
+ var warpTop = ((_getTargetElement = getTargetElement$1(warpElement || document)) === null || _getTargetElement === void 0 ? void 0 : _getTargetElement.offsetTop) || 0;
88819
+ idTopInfo.current["".concat(item.menuId)] = ((_document$getElementB = document.getElementById("".concat(item.menuId))) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.offsetTop) - warpTop;
88820
+ });
88821
+ }
88822
+
88823
+ React.useEffect(function () {
88824
+ if (scroll && !hovering) {
88825
+ setHovering(true);
88826
+ }
88827
+
88828
+ if (scrollTimeOut.current) {
88829
+ clearTimeout(scrollTimeOut.current);
88830
+ }
88831
+
88832
+ scrollTimeOut.current = setTimeout(function () {
88833
+ setHovering(false);
88834
+ }, 2000);
88835
+ }, [scroll]);
88836
+
88837
+ var bindDom = function bindDom() {
88838
+ if (!Object.keys(idTopInfo.current).length) {
88839
+ setKeysDom();
88840
+ }
88841
+ };
88842
+
88843
+ var handleScroll = function handleScroll() {
88844
+ setScrollOpenStatus(true);
88845
+ };
88846
+
88847
+ var golink = function golink(id) {
88848
+ var _idTopInfo$current;
88849
+
88850
+ getTargetElement$1(warpElement || document).scrollTop = (_idTopInfo$current = idTopInfo.current) === null || _idTopInfo$current === void 0 ? void 0 : _idTopInfo$current[id];
88851
+ };
88852
+
88853
+ React.useEffect(function () {
88854
+ var _getTargetElement2;
88855
+
88856
+ // bindScroller();
88857
+ setTimeout(function () {
88858
+ bindDom();
88859
+ bindScroller();
88860
+ }, 200);
88861
+ (_getTargetElement2 = getTargetElement$1(warpElement || document)) === null || _getTargetElement2 === void 0 ? void 0 : _getTargetElement2.addEventListener('scroll', handleScroll, {
88862
+ once: true
88863
+ });
88864
+ return function () {
88865
+ var _getTargetElement3;
88866
+
88867
+ (_getTargetElement3 = getTargetElement$1(warpElement || document)) === null || _getTargetElement3 === void 0 ? void 0 : _getTargetElement3.removeEventListener('scroll', handleScroll);
88868
+ };
88869
+ }, []);
88870
+ return /*#__PURE__*/React__default['default'].createElement("div", {
88871
+ className: classnames(prefixCls$c),
88872
+ onMouseEnter: function onMouseEnter() {
88873
+ if (scrollTimeOut.current) {
88874
+ clearTimeout(scrollTimeOut.current);
88875
+ }
88876
+
88877
+ setHovering(true);
88878
+ },
88879
+ onMouseLeave: function onMouseLeave() {
88880
+ setHovering(false);
88881
+ },
88882
+ style: {
88883
+ top: top
88884
+ }
88885
+ }, !hovering && /*#__PURE__*/React__default['default'].createElement(LMButton, {
88886
+ icon: /*#__PURE__*/React__default['default'].createElement(IconFont, {
88887
+ type: 'lmweb-icon_m_open'
88888
+ })
88889
+ }), /*#__PURE__*/React__default['default'].createElement("ul", {
88890
+ className: classnames('lm_menu_list', hovering && 'show', className)
88891
+ }, menuData.map(function (item) {
88892
+ return /*#__PURE__*/React__default['default'].createElement("li", {
88893
+ key: item.menuId,
88894
+ onClick: function onClick() {
88895
+ return golink(item.menuId);
88896
+ }
88897
+ }, /*#__PURE__*/React__default['default'].createElement("a", {
88898
+ "data-id": item.menuId
88899
+ }, item.title));
88900
+ })));
88901
+ };
88902
+
88364
88903
  Object.defineProperty(exports, 'Card', {
88365
88904
  enumerable: true,
88366
88905
  get: function () {
@@ -88439,6 +88978,7 @@
88439
88978
  exports.IconSelect = IconSelect;
88440
88979
  exports.Input = LmInput;
88441
88980
  exports.InputNumber = CInputNumber;
88981
+ exports.LMQuickMenu = LMQuickMenu;
88442
88982
  exports.LeftTable = LeftSide;
88443
88983
  exports.LmEditTable = LmEditTable;
88444
88984
  exports.LmSelect = LMSelect;