@kdcloudjs/kdesign 1.7.48-usePopper.1 → 1.7.49
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/kdesign-complete.less +9 -106
- package/dist/kdesign.css +64 -360
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +202 -3632
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +2 -2
- package/dist/kdesign.min.js +11 -11
- package/dist/kdesign.min.js.map +1 -1
- package/es/anchor/anchor.js +9 -1
- package/es/input-number/inputNumber.js +29 -8
- package/es/tooltip/style/index.css +63 -2
- package/es/tooltip/style/index.less +9 -2
- package/es/tooltip/tooltip.d.ts +7 -3
- package/es/tooltip/tooltip.js +26 -10
- package/lib/anchor/anchor.js +9 -1
- package/lib/input-number/inputNumber.js +29 -8
- package/lib/style/components.less +0 -1
- package/lib/tooltip/style/index.css +63 -2
- package/lib/tooltip/style/index.less +9 -2
- package/lib/tooltip/tooltip.d.ts +7 -3
- package/lib/tooltip/tooltip.js +31 -10
- package/package.json +4 -5
- package/es/popper/index.d.ts +0 -51
- package/es/popper/index.js +0 -418
- package/es/popper/style/css.js +0 -2
- package/es/popper/style/index.css +0 -356
- package/es/popper/style/index.d.ts +0 -2
- package/es/popper/style/index.js +0 -2
- package/es/popper/style/index.less +0 -103
- package/lib/popper/index.d.ts +0 -51
- package/lib/popper/index.js +0 -435
- package/lib/popper/style/css.js +0 -4
- package/lib/popper/style/index.css +0 -356
- package/lib/popper/style/index.d.ts +0 -2
- package/lib/popper/style/index.js +0 -4
- package/lib/popper/style/index.less +0 -103
package/es/anchor/anchor.js
CHANGED
|
@@ -179,6 +179,7 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
179
179
|
var normalRef = React.useRef(null);
|
|
180
180
|
var anchorRef = ref || normalRef;
|
|
181
181
|
var linksWidthRef = React.useRef([]);
|
|
182
|
+
var animating = React.useRef(false);
|
|
182
183
|
var wrapperClass = classNames(className, _defineProperty({}, "".concat(anchorPrefixCls, "-wrapper"), true));
|
|
183
184
|
// classes
|
|
184
185
|
var anchorMenuClass = classNames(_defineProperty({}, "".concat(anchorPrefixCls, "-menu"), true));
|
|
@@ -298,8 +299,12 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
298
299
|
var eleOffsetTop = getOffsetTop(targetElement, container);
|
|
299
300
|
var y = scrollTop + eleOffsetTop;
|
|
300
301
|
y -= targetOffset !== undefined ? targetOffset : offsetTop || 0;
|
|
302
|
+
animating.current = true;
|
|
301
303
|
scrollTo(y, {
|
|
302
|
-
getContainer: getScrollContainer
|
|
304
|
+
getContainer: getScrollContainer,
|
|
305
|
+
callback: function callback() {
|
|
306
|
+
animating.current = false;
|
|
307
|
+
}
|
|
303
308
|
});
|
|
304
309
|
};
|
|
305
310
|
var setCurrentActiveLink = useCallback(function (link) {
|
|
@@ -320,6 +325,9 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
320
325
|
setFixedTop(false);
|
|
321
326
|
}
|
|
322
327
|
}
|
|
328
|
+
if (animating.current) {
|
|
329
|
+
return;
|
|
330
|
+
}
|
|
323
331
|
var currentActiveLink = getAnchor(targetOffset !== undefined ? targetOffset : offsetTop || 0, bounds);
|
|
324
332
|
currentActiveLink && setCurrentActiveLink(currentActiveLink);
|
|
325
333
|
}, [affix, setFixedTop, offsetTop, bounds, getAnchor, setCurrentActiveLink, type, getScrollContainer, anchorRef, targetOffset]);
|
|
@@ -62,6 +62,10 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
62
62
|
_useState4 = _slicedToArray(_useState3, 2),
|
|
63
63
|
forceUpdate = _useState4[0],
|
|
64
64
|
setForceUpdate = _useState4[1];
|
|
65
|
+
var _useState5 = useState(''),
|
|
66
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
67
|
+
compositionValue = _useState6[0],
|
|
68
|
+
setCompositionValue = _useState6[1];
|
|
65
69
|
var inputStatus = useRef({
|
|
66
70
|
isHandleChange: false,
|
|
67
71
|
inputFocused: false
|
|
@@ -71,6 +75,7 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
71
75
|
var inputNumberRef = ref || thisInputNumberRef;
|
|
72
76
|
var stepMouseDownDelayTimer = useRef(null);
|
|
73
77
|
var stepMouseDownIntervalTimer = useRef(null);
|
|
78
|
+
var refIszComposition = useRef(false);
|
|
74
79
|
var isScopeValid = function isScopeValid(value) {
|
|
75
80
|
if (value === '') return true;
|
|
76
81
|
var numberValue = parseFloat(value) || 0;
|
|
@@ -112,14 +117,20 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
112
117
|
};
|
|
113
118
|
var handleChange = function handleChange(event) {
|
|
114
119
|
inputStatus.current.isHandleChange = true;
|
|
115
|
-
var
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
+
var newValue = event.target.value;
|
|
121
|
+
if (!refIszComposition.current) {
|
|
122
|
+
compositionValue && setCompositionValue('');
|
|
123
|
+
var legalNumber = verifiValue(newValue);
|
|
124
|
+
if (legalNumber === false) {
|
|
125
|
+
setForceUpdate(forceUpdate + 1);
|
|
126
|
+
return false;
|
|
127
|
+
}
|
|
128
|
+
value === undefined && setInputValue(legalNumber);
|
|
129
|
+
onChange && onChange(handleEventAttachValue(event, numberMode ? Number(legalNumber) : legalNumber));
|
|
130
|
+
updateSelectionRangePosition(event);
|
|
131
|
+
} else {
|
|
132
|
+
setCompositionValue(newValue);
|
|
120
133
|
}
|
|
121
|
-
value === undefined && setInputValue(legalNumber);
|
|
122
|
-
onChange && onChange(handleEventAttachValue(event, numberMode ? Number(legalNumber) : legalNumber));
|
|
123
134
|
};
|
|
124
135
|
var handleFocus = function handleFocus(event) {
|
|
125
136
|
inputStatus.current.inputFocused = true;
|
|
@@ -318,9 +329,19 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
318
329
|
inputValue: displayedInputValue,
|
|
319
330
|
forceUpdate: forceUpdate
|
|
320
331
|
});
|
|
332
|
+
var handleComposition = function handleComposition(e) {
|
|
333
|
+
refIszComposition.current = e.type !== 'compositionend';
|
|
334
|
+
if (!refIszComposition.current) {
|
|
335
|
+
setCompositionValue('');
|
|
336
|
+
handleChange(e);
|
|
337
|
+
}
|
|
338
|
+
};
|
|
321
339
|
return /*#__PURE__*/React.createElement(Input, _extends({}, others, {
|
|
340
|
+
onCompositionStart: handleComposition,
|
|
341
|
+
onCompositionUpdate: handleComposition,
|
|
342
|
+
onCompositionEnd: handleComposition,
|
|
322
343
|
ref: inputNumberRef,
|
|
323
|
-
value: displayedInputValue,
|
|
344
|
+
value: compositionValue || displayedInputValue,
|
|
324
345
|
prefix: prefix,
|
|
325
346
|
suffix: suffix,
|
|
326
347
|
onChange: handleChange,
|
|
@@ -124,7 +124,68 @@
|
|
|
124
124
|
background-color: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
125
125
|
-webkit-box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
126
126
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
127
|
+
opacity: 1;
|
|
128
|
+
z-index: var(--kd-g-z-index-popper, 1050);
|
|
129
|
+
visibility: visible;
|
|
127
130
|
}
|
|
128
|
-
.kd-tooltip
|
|
129
|
-
|
|
131
|
+
.kd-tooltip.hidden {
|
|
132
|
+
opacity: 0;
|
|
133
|
+
visibility: hidden;
|
|
134
|
+
}
|
|
135
|
+
.kd-tooltip.arrow::before {
|
|
136
|
+
position: absolute;
|
|
137
|
+
z-index: -2;
|
|
138
|
+
background: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
139
|
+
border-style: solid;
|
|
140
|
+
border-width: var(--arrowSize);
|
|
141
|
+
-webkit-transform: rotate(45deg);
|
|
142
|
+
transform: rotate(45deg);
|
|
143
|
+
content: '';
|
|
144
|
+
}
|
|
145
|
+
.kd-tooltip.arrow::after {
|
|
146
|
+
position: absolute;
|
|
147
|
+
z-index: -1;
|
|
148
|
+
top: 0;
|
|
149
|
+
right: 0;
|
|
150
|
+
bottom: 0;
|
|
151
|
+
left: 0;
|
|
152
|
+
content: '';
|
|
153
|
+
background: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
154
|
+
border-radius: var(--kd-g-radius-border, 2px);
|
|
155
|
+
}
|
|
156
|
+
.kd-tooltip.arrow.bottomLeft::before,
|
|
157
|
+
.kd-tooltip.arrow.bottom::before,
|
|
158
|
+
.kd-tooltip.arrow.bottomRight::before {
|
|
159
|
+
left: var(--arrowLeft);
|
|
160
|
+
top: var(--arrowSpill);
|
|
161
|
+
-webkit-box-shadow: -2px -2px calc(6px - 1px) rgba(0, 0, 0, 0.1);
|
|
162
|
+
box-shadow: -2px -2px calc(6px - 1px) rgba(0, 0, 0, 0.1);
|
|
163
|
+
border-color: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) transparent transparent var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
164
|
+
}
|
|
165
|
+
.kd-tooltip.arrow.topLeft::before,
|
|
166
|
+
.kd-tooltip.arrow.top::before,
|
|
167
|
+
.kd-tooltip.arrow.topRight::before {
|
|
168
|
+
left: var(--arrowLeft);
|
|
169
|
+
bottom: var(--arrowSpill);
|
|
170
|
+
-webkit-box-shadow: 3px 3px calc(6px + 1px) rgba(0, 0, 0, 0.15);
|
|
171
|
+
box-shadow: 3px 3px calc(6px + 1px) rgba(0, 0, 0, 0.15);
|
|
172
|
+
border-color: transparent var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) transparent;
|
|
173
|
+
}
|
|
174
|
+
.kd-tooltip.arrow.leftTop::before,
|
|
175
|
+
.kd-tooltip.arrow.left::before,
|
|
176
|
+
.kd-tooltip.arrow.leftBottom::before {
|
|
177
|
+
top: var(--arrowTop);
|
|
178
|
+
right: var(--arrowSpill);
|
|
179
|
+
-webkit-box-shadow: 3px 0 6px rgba(0, 0, 0, 0.12), 0 -2px 6px rgba(204, 149, 149, 0.12);
|
|
180
|
+
box-shadow: 3px 0 6px rgba(0, 0, 0, 0.12), 0 -2px 6px rgba(204, 149, 149, 0.12);
|
|
181
|
+
border-color: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) transparent transparent;
|
|
182
|
+
}
|
|
183
|
+
.kd-tooltip.arrow.rightTop::before,
|
|
184
|
+
.kd-tooltip.arrow.right::before,
|
|
185
|
+
.kd-tooltip.arrow.rightBottom::before {
|
|
186
|
+
top: var(--arrowTop);
|
|
187
|
+
left: var(--arrowSpill);
|
|
188
|
+
-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1), -2px 0 6px rgba(0, 0, 0, 0.1);
|
|
189
|
+
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1), -2px 0 6px rgba(0, 0, 0, 0.1);
|
|
190
|
+
border-color: transparent transparent var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
130
191
|
}
|
|
@@ -14,8 +14,15 @@
|
|
|
14
14
|
line-height: 1.5;
|
|
15
15
|
background-color: @tooltip-background-color;
|
|
16
16
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
17
|
+
opacity: 1;
|
|
18
|
+
z-index: @z-index-popper;
|
|
19
|
+
visibility: visible;
|
|
17
20
|
|
|
18
|
-
|
|
19
|
-
|
|
21
|
+
&.hidden {
|
|
22
|
+
opacity: 0;
|
|
23
|
+
visibility: hidden;
|
|
20
24
|
}
|
|
25
|
+
|
|
26
|
+
// 箭头样式
|
|
27
|
+
.popperArrow(@tooltip-background-color, @tooltip-horizontal-gap, @tooltip-box-shadow-blur);
|
|
21
28
|
}
|
package/es/tooltip/tooltip.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { PopperProps } from '../
|
|
3
|
-
export declare type
|
|
4
|
-
|
|
2
|
+
import { PopperProps } from '../_utils/usePopper';
|
|
3
|
+
export declare type RenderFunction = () => React.ReactNode;
|
|
4
|
+
export interface TooltipProps extends PopperProps {
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
tip?: React.ReactNode | RenderFunction;
|
|
7
|
+
}
|
|
8
|
+
declare const Tooltip: React.ForwardRefExoticComponent<TooltipProps & React.RefAttributes<unknown>>;
|
|
5
9
|
export default Tooltip;
|
package/es/tooltip/tooltip.js
CHANGED
|
@@ -1,20 +1,36 @@
|
|
|
1
1
|
import _extends from "@babel/runtime-corejs3/helpers/extends";
|
|
2
|
-
import React from 'react';
|
|
2
|
+
import React, { useRef } from 'react';
|
|
3
3
|
import { getCompProps } from '../_utils';
|
|
4
|
+
import { isFragment } from '../_utils/reactNode';
|
|
4
5
|
import { ConfigContext } from '../config-provider';
|
|
5
|
-
import
|
|
6
|
+
import usePopper from '../_utils/usePopper';
|
|
6
7
|
var Tooltip = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
7
8
|
var _React$useContext = React.useContext(ConfigContext),
|
|
8
9
|
getPrefixCls = _React$useContext.getPrefixCls,
|
|
9
10
|
pkgPrefixCls = _React$useContext.prefixCls,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
userDefaultProps = _React$useContext.compDefaultProps;
|
|
12
|
+
// 属性需要合并一遍用户定义的默认属性
|
|
13
|
+
var allProps = getCompProps('ToolTip', userDefaultProps, props);
|
|
14
|
+
var status = useRef();
|
|
15
|
+
var tip = allProps.tip,
|
|
16
|
+
children = allProps.children,
|
|
17
|
+
customPrefixcls = allProps.prefixCls;
|
|
18
|
+
// className前缀
|
|
19
|
+
var prefixCls = getPrefixCls(pkgPrefixCls, 'tooltip', customPrefixcls);
|
|
20
|
+
var tiplocator = /*#__PURE__*/React.cloneElement( /*#__PURE__*/React.isValidElement(children) && !isFragment(children) ? children : /*#__PURE__*/React.createElement("span", null, children), {
|
|
21
|
+
ref: /*#__PURE__*/React.isValidElement(children) && !isFragment(children) && children.ref ? children.ref : ref
|
|
22
|
+
});
|
|
23
|
+
var onVisibleChange = function onVisibleChange(v) {
|
|
24
|
+
if (status.current === v && allProps.visible === undefined) return;
|
|
25
|
+
status.current = v;
|
|
26
|
+
props.onVisibleChange && props.onVisibleChange(v);
|
|
27
|
+
};
|
|
28
|
+
var popperProps = _extends(_extends({}, allProps), {
|
|
29
|
+
prefixCls: prefixCls,
|
|
30
|
+
onVisibleChange: onVisibleChange
|
|
31
|
+
});
|
|
32
|
+
var tipPopper = typeof tip === 'function' ? tip() : tip;
|
|
33
|
+
return usePopper(tiplocator, tipPopper, popperProps);
|
|
18
34
|
});
|
|
19
35
|
Tooltip.displayName = 'Tooltip';
|
|
20
36
|
export default Tooltip;
|
package/lib/anchor/anchor.js
CHANGED
|
@@ -192,6 +192,7 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
192
192
|
var normalRef = _react.default.useRef(null);
|
|
193
193
|
var anchorRef = ref || normalRef;
|
|
194
194
|
var linksWidthRef = _react.default.useRef([]);
|
|
195
|
+
var animating = _react.default.useRef(false);
|
|
195
196
|
var wrapperClass = (0, _classnames.default)(className, (0, _defineProperty2.default)({}, "".concat(anchorPrefixCls, "-wrapper"), true));
|
|
196
197
|
// classes
|
|
197
198
|
var anchorMenuClass = (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(anchorPrefixCls, "-menu"), true));
|
|
@@ -311,8 +312,12 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
311
312
|
var eleOffsetTop = getOffsetTop(targetElement, container);
|
|
312
313
|
var y = scrollTop + eleOffsetTop;
|
|
313
314
|
y -= targetOffset !== undefined ? targetOffset : offsetTop || 0;
|
|
315
|
+
animating.current = true;
|
|
314
316
|
scrollTo(y, {
|
|
315
|
-
getContainer: getScrollContainer
|
|
317
|
+
getContainer: getScrollContainer,
|
|
318
|
+
callback: function callback() {
|
|
319
|
+
animating.current = false;
|
|
320
|
+
}
|
|
316
321
|
});
|
|
317
322
|
};
|
|
318
323
|
var setCurrentActiveLink = (0, _react.useCallback)(function (link) {
|
|
@@ -333,6 +338,9 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
333
338
|
setFixedTop(false);
|
|
334
339
|
}
|
|
335
340
|
}
|
|
341
|
+
if (animating.current) {
|
|
342
|
+
return;
|
|
343
|
+
}
|
|
336
344
|
var currentActiveLink = getAnchor(targetOffset !== undefined ? targetOffset : offsetTop || 0, bounds);
|
|
337
345
|
currentActiveLink && setCurrentActiveLink(currentActiveLink);
|
|
338
346
|
}, [affix, setFixedTop, offsetTop, bounds, getAnchor, setCurrentActiveLink, type, getScrollContainer, anchorRef, targetOffset]);
|
|
@@ -74,6 +74,10 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
74
74
|
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
75
75
|
forceUpdate = _useState4[0],
|
|
76
76
|
setForceUpdate = _useState4[1];
|
|
77
|
+
var _useState5 = (0, _react.useState)(''),
|
|
78
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
79
|
+
compositionValue = _useState6[0],
|
|
80
|
+
setCompositionValue = _useState6[1];
|
|
77
81
|
var inputStatus = (0, _react.useRef)({
|
|
78
82
|
isHandleChange: false,
|
|
79
83
|
inputFocused: false
|
|
@@ -83,6 +87,7 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
83
87
|
var inputNumberRef = ref || thisInputNumberRef;
|
|
84
88
|
var stepMouseDownDelayTimer = (0, _react.useRef)(null);
|
|
85
89
|
var stepMouseDownIntervalTimer = (0, _react.useRef)(null);
|
|
90
|
+
var refIszComposition = (0, _react.useRef)(false);
|
|
86
91
|
var isScopeValid = function isScopeValid(value) {
|
|
87
92
|
if (value === '') return true;
|
|
88
93
|
var numberValue = parseFloat(value) || 0;
|
|
@@ -124,14 +129,20 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
124
129
|
};
|
|
125
130
|
var handleChange = function handleChange(event) {
|
|
126
131
|
inputStatus.current.isHandleChange = true;
|
|
127
|
-
var
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
+
var newValue = event.target.value;
|
|
133
|
+
if (!refIszComposition.current) {
|
|
134
|
+
compositionValue && setCompositionValue('');
|
|
135
|
+
var legalNumber = verifiValue(newValue);
|
|
136
|
+
if (legalNumber === false) {
|
|
137
|
+
setForceUpdate(forceUpdate + 1);
|
|
138
|
+
return false;
|
|
139
|
+
}
|
|
140
|
+
value === undefined && setInputValue(legalNumber);
|
|
141
|
+
onChange && onChange(handleEventAttachValue(event, numberMode ? Number(legalNumber) : legalNumber));
|
|
142
|
+
updateSelectionRangePosition(event);
|
|
143
|
+
} else {
|
|
144
|
+
setCompositionValue(newValue);
|
|
132
145
|
}
|
|
133
|
-
value === undefined && setInputValue(legalNumber);
|
|
134
|
-
onChange && onChange(handleEventAttachValue(event, numberMode ? Number(legalNumber) : legalNumber));
|
|
135
146
|
};
|
|
136
147
|
var handleFocus = function handleFocus(event) {
|
|
137
148
|
inputStatus.current.inputFocused = true;
|
|
@@ -330,9 +341,19 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
|
|
|
330
341
|
inputValue: displayedInputValue,
|
|
331
342
|
forceUpdate: forceUpdate
|
|
332
343
|
});
|
|
344
|
+
var handleComposition = function handleComposition(e) {
|
|
345
|
+
refIszComposition.current = e.type !== 'compositionend';
|
|
346
|
+
if (!refIszComposition.current) {
|
|
347
|
+
setCompositionValue('');
|
|
348
|
+
handleChange(e);
|
|
349
|
+
}
|
|
350
|
+
};
|
|
333
351
|
return /*#__PURE__*/_react.default.createElement(_input.default, (0, _extends2.default)({}, others, {
|
|
352
|
+
onCompositionStart: handleComposition,
|
|
353
|
+
onCompositionUpdate: handleComposition,
|
|
354
|
+
onCompositionEnd: handleComposition,
|
|
334
355
|
ref: inputNumberRef,
|
|
335
|
-
value: displayedInputValue,
|
|
356
|
+
value: compositionValue || displayedInputValue,
|
|
336
357
|
prefix: prefix,
|
|
337
358
|
suffix: suffix,
|
|
338
359
|
onChange: handleChange,
|
|
@@ -34,7 +34,6 @@
|
|
|
34
34
|
@import "../notification/style/index.less";
|
|
35
35
|
@import "../pagination/style/index.less";
|
|
36
36
|
@import "../popconfirm/style/index.less";
|
|
37
|
-
@import "../popper/style/index.less";
|
|
38
37
|
@import "../progress/style/index.less";
|
|
39
38
|
@import "../qr-code/style/index.less";
|
|
40
39
|
@import "../radio/style/index.less";
|
|
@@ -124,7 +124,68 @@
|
|
|
124
124
|
background-color: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
125
125
|
-webkit-box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
126
126
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
127
|
+
opacity: 1;
|
|
128
|
+
z-index: var(--kd-g-z-index-popper, 1050);
|
|
129
|
+
visibility: visible;
|
|
127
130
|
}
|
|
128
|
-
.kd-tooltip
|
|
129
|
-
|
|
131
|
+
.kd-tooltip.hidden {
|
|
132
|
+
opacity: 0;
|
|
133
|
+
visibility: hidden;
|
|
134
|
+
}
|
|
135
|
+
.kd-tooltip.arrow::before {
|
|
136
|
+
position: absolute;
|
|
137
|
+
z-index: -2;
|
|
138
|
+
background: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
139
|
+
border-style: solid;
|
|
140
|
+
border-width: var(--arrowSize);
|
|
141
|
+
-webkit-transform: rotate(45deg);
|
|
142
|
+
transform: rotate(45deg);
|
|
143
|
+
content: '';
|
|
144
|
+
}
|
|
145
|
+
.kd-tooltip.arrow::after {
|
|
146
|
+
position: absolute;
|
|
147
|
+
z-index: -1;
|
|
148
|
+
top: 0;
|
|
149
|
+
right: 0;
|
|
150
|
+
bottom: 0;
|
|
151
|
+
left: 0;
|
|
152
|
+
content: '';
|
|
153
|
+
background: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
154
|
+
border-radius: var(--kd-g-radius-border, 2px);
|
|
155
|
+
}
|
|
156
|
+
.kd-tooltip.arrow.bottomLeft::before,
|
|
157
|
+
.kd-tooltip.arrow.bottom::before,
|
|
158
|
+
.kd-tooltip.arrow.bottomRight::before {
|
|
159
|
+
left: var(--arrowLeft);
|
|
160
|
+
top: var(--arrowSpill);
|
|
161
|
+
-webkit-box-shadow: -2px -2px calc(6px - 1px) rgba(0, 0, 0, 0.1);
|
|
162
|
+
box-shadow: -2px -2px calc(6px - 1px) rgba(0, 0, 0, 0.1);
|
|
163
|
+
border-color: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) transparent transparent var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
164
|
+
}
|
|
165
|
+
.kd-tooltip.arrow.topLeft::before,
|
|
166
|
+
.kd-tooltip.arrow.top::before,
|
|
167
|
+
.kd-tooltip.arrow.topRight::before {
|
|
168
|
+
left: var(--arrowLeft);
|
|
169
|
+
bottom: var(--arrowSpill);
|
|
170
|
+
-webkit-box-shadow: 3px 3px calc(6px + 1px) rgba(0, 0, 0, 0.15);
|
|
171
|
+
box-shadow: 3px 3px calc(6px + 1px) rgba(0, 0, 0, 0.15);
|
|
172
|
+
border-color: transparent var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) transparent;
|
|
173
|
+
}
|
|
174
|
+
.kd-tooltip.arrow.leftTop::before,
|
|
175
|
+
.kd-tooltip.arrow.left::before,
|
|
176
|
+
.kd-tooltip.arrow.leftBottom::before {
|
|
177
|
+
top: var(--arrowTop);
|
|
178
|
+
right: var(--arrowSpill);
|
|
179
|
+
-webkit-box-shadow: 3px 0 6px rgba(0, 0, 0, 0.12), 0 -2px 6px rgba(204, 149, 149, 0.12);
|
|
180
|
+
box-shadow: 3px 0 6px rgba(0, 0, 0, 0.12), 0 -2px 6px rgba(204, 149, 149, 0.12);
|
|
181
|
+
border-color: var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) transparent transparent;
|
|
182
|
+
}
|
|
183
|
+
.kd-tooltip.arrow.rightTop::before,
|
|
184
|
+
.kd-tooltip.arrow.right::before,
|
|
185
|
+
.kd-tooltip.arrow.rightBottom::before {
|
|
186
|
+
top: var(--arrowTop);
|
|
187
|
+
left: var(--arrowSpill);
|
|
188
|
+
-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1), -2px 0 6px rgba(0, 0, 0, 0.1);
|
|
189
|
+
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1), -2px 0 6px rgba(0, 0, 0, 0.1);
|
|
190
|
+
border-color: transparent transparent var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-tooltip-color-background, var(--kd-g-color-background, #fff));
|
|
130
191
|
}
|
|
@@ -14,8 +14,15 @@
|
|
|
14
14
|
line-height: 1.5;
|
|
15
15
|
background-color: @tooltip-background-color;
|
|
16
16
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
17
|
+
opacity: 1;
|
|
18
|
+
z-index: @z-index-popper;
|
|
19
|
+
visibility: visible;
|
|
17
20
|
|
|
18
|
-
|
|
19
|
-
|
|
21
|
+
&.hidden {
|
|
22
|
+
opacity: 0;
|
|
23
|
+
visibility: hidden;
|
|
20
24
|
}
|
|
25
|
+
|
|
26
|
+
// 箭头样式
|
|
27
|
+
.popperArrow(@tooltip-background-color, @tooltip-horizontal-gap, @tooltip-box-shadow-blur);
|
|
21
28
|
}
|
package/lib/tooltip/tooltip.d.ts
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { PopperProps } from '../
|
|
3
|
-
export declare type
|
|
4
|
-
|
|
2
|
+
import { PopperProps } from '../_utils/usePopper';
|
|
3
|
+
export declare type RenderFunction = () => React.ReactNode;
|
|
4
|
+
export interface TooltipProps extends PopperProps {
|
|
5
|
+
children?: React.ReactNode;
|
|
6
|
+
tip?: React.ReactNode | RenderFunction;
|
|
7
|
+
}
|
|
8
|
+
declare const Tooltip: React.ForwardRefExoticComponent<TooltipProps & React.RefAttributes<unknown>>;
|
|
5
9
|
export default Tooltip;
|
package/lib/tooltip/tooltip.js
CHANGED
|
@@ -1,27 +1,48 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
|
+
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
5
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
3
6
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
4
7
|
Object.defineProperty(exports, "__esModule", {
|
|
5
8
|
value: true
|
|
6
9
|
});
|
|
7
10
|
exports.default = void 0;
|
|
8
11
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
9
|
-
var _react =
|
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
13
|
var _utils = require("../_utils");
|
|
14
|
+
var _reactNode = require("../_utils/reactNode");
|
|
11
15
|
var _configProvider = require("../config-provider");
|
|
12
|
-
var
|
|
16
|
+
var _usePopper = _interopRequireDefault(require("../_utils/usePopper"));
|
|
17
|
+
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); }
|
|
18
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
13
19
|
var Tooltip = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
14
20
|
var _React$useContext = _react.default.useContext(_configProvider.ConfigContext),
|
|
15
21
|
getPrefixCls = _React$useContext.getPrefixCls,
|
|
16
22
|
pkgPrefixCls = _React$useContext.prefixCls,
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
userDefaultProps = _React$useContext.compDefaultProps;
|
|
24
|
+
// 属性需要合并一遍用户定义的默认属性
|
|
25
|
+
var allProps = (0, _utils.getCompProps)('ToolTip', userDefaultProps, props);
|
|
26
|
+
var status = (0, _react.useRef)();
|
|
27
|
+
var tip = allProps.tip,
|
|
28
|
+
children = allProps.children,
|
|
29
|
+
customPrefixcls = allProps.prefixCls;
|
|
30
|
+
// className前缀
|
|
31
|
+
var prefixCls = getPrefixCls(pkgPrefixCls, 'tooltip', customPrefixcls);
|
|
32
|
+
var tiplocator = /*#__PURE__*/_react.default.cloneElement( /*#__PURE__*/_react.default.isValidElement(children) && !(0, _reactNode.isFragment)(children) ? children : /*#__PURE__*/_react.default.createElement("span", null, children), {
|
|
33
|
+
ref: /*#__PURE__*/_react.default.isValidElement(children) && !(0, _reactNode.isFragment)(children) && children.ref ? children.ref : ref
|
|
34
|
+
});
|
|
35
|
+
var onVisibleChange = function onVisibleChange(v) {
|
|
36
|
+
if (status.current === v && allProps.visible === undefined) return;
|
|
37
|
+
status.current = v;
|
|
38
|
+
props.onVisibleChange && props.onVisibleChange(v);
|
|
39
|
+
};
|
|
40
|
+
var popperProps = (0, _extends2.default)((0, _extends2.default)({}, allProps), {
|
|
41
|
+
prefixCls: prefixCls,
|
|
42
|
+
onVisibleChange: onVisibleChange
|
|
43
|
+
});
|
|
44
|
+
var tipPopper = typeof tip === 'function' ? tip() : tip;
|
|
45
|
+
return (0, _usePopper.default)(tiplocator, tipPopper, popperProps);
|
|
25
46
|
});
|
|
26
47
|
Tooltip.displayName = 'Tooltip';
|
|
27
48
|
var _default = Tooltip;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kdcloudjs/kdesign",
|
|
3
|
-
"version": "1.7.
|
|
3
|
+
"version": "1.7.49",
|
|
4
4
|
"description": "KDesign 金蝶前端react 组件库",
|
|
5
5
|
"title": "kdesign",
|
|
6
6
|
"keywords": [
|
|
@@ -61,7 +61,6 @@
|
|
|
61
61
|
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && node scripts/filter-changelog.js",
|
|
62
62
|
"pub": "npm run test:all && npm run build && cross-env PUB_ENV=pub np --no-cleanup --no-tests",
|
|
63
63
|
"pub:beta": "npm run test:all && npm run build && cross-env PUB_ENV=pub np --no-cleanup --anyBranch --no-tests --tag=beta",
|
|
64
|
-
"pub:usePopper": "npm run test:all && npm run build && cross-env PUB_ENV=pub np --no-cleanup --anyBranch --no-tests --tag=usePopper",
|
|
65
64
|
"prepublishOnly": "node scripts/guard.js",
|
|
66
65
|
"new": "node scripts/create-component.js",
|
|
67
66
|
"token": "node scripts/generate-token.js",
|
|
@@ -79,8 +78,8 @@
|
|
|
79
78
|
"@babel/runtime-corejs3": "^7.11.2",
|
|
80
79
|
"@babel/standalone": "^7.14.3",
|
|
81
80
|
"@kdcloudjs/kdesign-icons": "^1.0.0",
|
|
82
|
-
"@kdcloudjs/table": "1.2.0-canary.
|
|
83
|
-
"@popperjs/core": "^2.
|
|
81
|
+
"@kdcloudjs/table": "1.2.0-canary.16",
|
|
82
|
+
"@popperjs/core": "^2.5.4",
|
|
84
83
|
"@types/js-cookie": "^3.0.3",
|
|
85
84
|
"async-validator": "^3.5.1",
|
|
86
85
|
"axios": "^0.21.1",
|
|
@@ -96,7 +95,7 @@
|
|
|
96
95
|
"qrcode.react": "^3.1.0",
|
|
97
96
|
"react-color": "^2.19.3",
|
|
98
97
|
"react-draggable": "^4.4.3",
|
|
99
|
-
"react-popper": "^2.3
|
|
98
|
+
"react-popper": "^2.2.3",
|
|
100
99
|
"resize-observer-polyfill": "^1.5.1",
|
|
101
100
|
"styled-components": "^5.2.1"
|
|
102
101
|
},
|
package/es/popper/index.d.ts
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
export declare const Placements: ["top", "left", "right", "bottom", "topLeft", "topRight", "bottomLeft", "bottomRight", "leftTop", "leftBottom", "rightTop", "rightBottom"];
|
|
3
|
-
export declare type PlacementType = typeof Placements[number];
|
|
4
|
-
export declare const Triggers: ["hover", "focus", "click", "contextMenu"];
|
|
5
|
-
export declare type TriggerType = typeof Triggers[number];
|
|
6
|
-
export declare type RenderFunction = () => React.ReactNode;
|
|
7
|
-
export interface PopperProps {
|
|
8
|
-
gap?: number;
|
|
9
|
-
arrow?: boolean;
|
|
10
|
-
visible?: boolean;
|
|
11
|
-
prefixCls?: string;
|
|
12
|
-
arrowSize?: number;
|
|
13
|
-
disabled?: boolean;
|
|
14
|
-
arrowOffset?: number;
|
|
15
|
-
scrollHidden?: boolean;
|
|
16
|
-
mouseEnterDelay?: number;
|
|
17
|
-
mouseLeaveDelay?: number;
|
|
18
|
-
defaultVisible?: boolean;
|
|
19
|
-
autoPlacement?: boolean;
|
|
20
|
-
className?: string;
|
|
21
|
-
style?: React.CSSProperties;
|
|
22
|
-
popperClassName?: string;
|
|
23
|
-
popperStyle?: React.CSSProperties;
|
|
24
|
-
placement?: PlacementType;
|
|
25
|
-
tip?: any;
|
|
26
|
-
trigger?: TriggerType | Array<TriggerType>;
|
|
27
|
-
clickToClose?: boolean;
|
|
28
|
-
onTrigger?: (trigger: TriggerType) => void;
|
|
29
|
-
onVisibleChange?: (visible: boolean) => void;
|
|
30
|
-
getTriggerElement?: (locatorNode: HTMLElement) => HTMLElement;
|
|
31
|
-
getPopupContainer?: (locatorNode: HTMLElement) => HTMLElement;
|
|
32
|
-
onTransitionEnd?: (e: React.TransitionEvent) => void;
|
|
33
|
-
onAnimationEnd?: (e: React.AnimationEvent) => void;
|
|
34
|
-
children?: React.ReactNode;
|
|
35
|
-
}
|
|
36
|
-
export declare const popperPlacementMap: {
|
|
37
|
-
top: string;
|
|
38
|
-
left: string;
|
|
39
|
-
right: string;
|
|
40
|
-
bottom: string;
|
|
41
|
-
topLeft: string;
|
|
42
|
-
topRight: string;
|
|
43
|
-
bottomLeft: string;
|
|
44
|
-
bottomRight: string;
|
|
45
|
-
leftTop: string;
|
|
46
|
-
leftBottom: string;
|
|
47
|
-
rightTop: string;
|
|
48
|
-
rightBottom: string;
|
|
49
|
-
};
|
|
50
|
-
export declare const Popper: React.ForwardRefExoticComponent<PopperProps & React.RefAttributes<unknown>>;
|
|
51
|
-
export default Popper;
|