@rc-component/trigger 3.6.13 → 3.6.15
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/assets/index.css +3 -3
- package/assets/index.less +2 -2
- package/es/UniqueProvider/{UniqueBody.d.ts → UniqueContainer.d.ts} +5 -5
- package/es/UniqueProvider/{UniqueBody.js → UniqueContainer.js} +9 -9
- package/es/UniqueProvider/index.d.ts +1 -1
- package/es/UniqueProvider/index.js +9 -4
- package/es/context.d.ts +2 -2
- package/es/index.d.ts +4 -4
- package/es/index.js +4 -4
- package/lib/UniqueProvider/{UniqueBody.d.ts → UniqueContainer.d.ts} +5 -5
- package/lib/UniqueProvider/{UniqueBody.js → UniqueContainer.js} +9 -9
- package/lib/UniqueProvider/index.d.ts +1 -1
- package/lib/UniqueProvider/index.js +9 -4
- package/lib/context.d.ts +2 -2
- package/lib/index.d.ts +4 -4
- package/lib/index.js +4 -4
- package/package.json +1 -1
package/assets/index.css
CHANGED
|
@@ -62,17 +62,17 @@
|
|
|
62
62
|
opacity: 0;
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
|
-
.rc-trigger-popup-unique-
|
|
65
|
+
.rc-trigger-popup-unique-container {
|
|
66
66
|
position: absolute;
|
|
67
67
|
z-index: 0;
|
|
68
68
|
box-sizing: border-box;
|
|
69
69
|
border: 1px solid red;
|
|
70
70
|
background: green;
|
|
71
71
|
}
|
|
72
|
-
.rc-trigger-popup-unique-
|
|
72
|
+
.rc-trigger-popup-unique-container-hidden {
|
|
73
73
|
display: none;
|
|
74
74
|
}
|
|
75
|
-
.rc-trigger-popup-unique-
|
|
75
|
+
.rc-trigger-popup-unique-container-visible {
|
|
76
76
|
transition: all 0.1s;
|
|
77
77
|
}
|
|
78
78
|
.rc-trigger-popup-unique-controlled {
|
package/assets/index.less
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { CSSMotionProps } from '@rc-component/motion';
|
|
3
3
|
import type { AlignType, ArrowPos } from '../interface';
|
|
4
|
-
export interface
|
|
4
|
+
export interface UniqueContainerProps {
|
|
5
5
|
prefixCls: string;
|
|
6
6
|
isMobile: boolean;
|
|
7
7
|
ready: boolean;
|
|
@@ -17,8 +17,8 @@ export interface UniqueBodyProps {
|
|
|
17
17
|
height: number;
|
|
18
18
|
};
|
|
19
19
|
motion?: CSSMotionProps;
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
uniqueContainerClassName?: string;
|
|
21
|
+
uniqueContainerStyle?: React.CSSProperties;
|
|
22
22
|
}
|
|
23
|
-
declare const
|
|
24
|
-
export default
|
|
23
|
+
declare const UniqueContainer: (props: UniqueContainerProps) => React.JSX.Element;
|
|
24
|
+
export default UniqueContainer;
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import useOffsetStyle from "../hooks/useOffsetStyle";
|
|
4
4
|
import classNames from 'classnames';
|
|
5
5
|
import CSSMotion from '@rc-component/motion';
|
|
6
|
-
const
|
|
6
|
+
const UniqueContainer = props => {
|
|
7
7
|
const {
|
|
8
8
|
prefixCls,
|
|
9
9
|
isMobile,
|
|
@@ -17,10 +17,10 @@ const UniqueBody = props => {
|
|
|
17
17
|
arrowPos,
|
|
18
18
|
popupSize,
|
|
19
19
|
motion,
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
uniqueContainerClassName,
|
|
21
|
+
uniqueContainerStyle
|
|
22
22
|
} = props;
|
|
23
|
-
const
|
|
23
|
+
const containerCls = `${prefixCls}-unique-container`;
|
|
24
24
|
const [motionVisible, setMotionVisible] = React.useState(false);
|
|
25
25
|
|
|
26
26
|
// ========================= Styles =========================
|
|
@@ -47,7 +47,7 @@ const UniqueBody = props => {
|
|
|
47
47
|
motionEnter: true,
|
|
48
48
|
motionLeave: true,
|
|
49
49
|
removeOnLeave: false,
|
|
50
|
-
leavedClassName: `${
|
|
50
|
+
leavedClassName: `${containerCls}-hidden`
|
|
51
51
|
}, motion, {
|
|
52
52
|
visible: open,
|
|
53
53
|
onVisibleChanged: nextVisible => {
|
|
@@ -57,8 +57,8 @@ const UniqueBody = props => {
|
|
|
57
57
|
className: motionClassName,
|
|
58
58
|
style: motionStyle
|
|
59
59
|
}) => {
|
|
60
|
-
const cls = classNames(
|
|
61
|
-
[`${
|
|
60
|
+
const cls = classNames(containerCls, motionClassName, uniqueContainerClassName, {
|
|
61
|
+
[`${containerCls}-visible`]: motionVisible
|
|
62
62
|
});
|
|
63
63
|
return /*#__PURE__*/React.createElement("div", {
|
|
64
64
|
className: cls,
|
|
@@ -68,9 +68,9 @@ const UniqueBody = props => {
|
|
|
68
68
|
...cachedOffsetStyleRef.current,
|
|
69
69
|
...sizeStyle,
|
|
70
70
|
...motionStyle,
|
|
71
|
-
...
|
|
71
|
+
...uniqueContainerStyle
|
|
72
72
|
}
|
|
73
73
|
});
|
|
74
74
|
});
|
|
75
75
|
};
|
|
76
|
-
export default
|
|
76
|
+
export default UniqueContainer;
|
|
@@ -5,5 +5,5 @@ export interface UniqueProviderProps {
|
|
|
5
5
|
/** Additional handle options data to do the customize info */
|
|
6
6
|
postTriggerProps?: (options: UniqueShowOptions) => UniqueShowOptions;
|
|
7
7
|
}
|
|
8
|
-
declare const UniqueProvider: ({ children, postTriggerProps }: UniqueProviderProps) => React.JSX.Element;
|
|
8
|
+
declare const UniqueProvider: ({ children, postTriggerProps, }: UniqueProviderProps) => React.JSX.Element;
|
|
9
9
|
export default UniqueProvider;
|
|
@@ -7,7 +7,7 @@ import Popup from "../Popup";
|
|
|
7
7
|
import { useEvent } from '@rc-component/util';
|
|
8
8
|
import useTargetState from "./useTargetState";
|
|
9
9
|
import { isDOM } from "@rc-component/util/es/Dom/findDOMNode";
|
|
10
|
-
import
|
|
10
|
+
import UniqueContainer from "./UniqueContainer";
|
|
11
11
|
import classNames from 'classnames';
|
|
12
12
|
import { getAlignPopupClassName } from "../util";
|
|
13
13
|
const UniqueProvider = ({
|
|
@@ -89,6 +89,11 @@ const UniqueProvider = ({
|
|
|
89
89
|
hide
|
|
90
90
|
}), []);
|
|
91
91
|
|
|
92
|
+
// =========================== Align ============================
|
|
93
|
+
React.useEffect(() => {
|
|
94
|
+
onAlign();
|
|
95
|
+
}, [mergedOptions?.target]);
|
|
96
|
+
|
|
92
97
|
// =========================== Motion ===========================
|
|
93
98
|
const onPrepare = useEvent(() => {
|
|
94
99
|
onAlign();
|
|
@@ -146,7 +151,7 @@ const UniqueProvider = ({
|
|
|
146
151
|
motion: mergedOptions.popupMotion,
|
|
147
152
|
maskMotion: mergedOptions.maskMotion,
|
|
148
153
|
getPopupContainer: mergedOptions.getPopupContainer
|
|
149
|
-
}, /*#__PURE__*/React.createElement(
|
|
154
|
+
}, /*#__PURE__*/React.createElement(UniqueContainer, {
|
|
150
155
|
prefixCls: prefixCls,
|
|
151
156
|
isMobile: false,
|
|
152
157
|
ready: ready,
|
|
@@ -162,8 +167,8 @@ const UniqueProvider = ({
|
|
|
162
167
|
},
|
|
163
168
|
popupSize: popupSize,
|
|
164
169
|
motion: mergedOptions.popupMotion,
|
|
165
|
-
|
|
166
|
-
|
|
170
|
+
uniqueContainerClassName: classNames(mergedOptions.uniqueContainerClassName, alignedClassName),
|
|
171
|
+
uniqueContainerStyle: mergedOptions.uniqueContainerStyle
|
|
167
172
|
}))));
|
|
168
173
|
};
|
|
169
174
|
export default UniqueProvider;
|
package/es/context.d.ts
CHANGED
|
@@ -14,8 +14,8 @@ export interface UniqueShowOptions {
|
|
|
14
14
|
delay: number;
|
|
15
15
|
prefixCls?: string;
|
|
16
16
|
popupClassName?: string;
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
uniqueContainerClassName?: string;
|
|
18
|
+
uniqueContainerStyle?: React.CSSProperties;
|
|
19
19
|
popupStyle?: React.CSSProperties;
|
|
20
20
|
popupPlacement?: string;
|
|
21
21
|
builtinPlacements?: BuildInPlacements;
|
package/es/index.d.ts
CHANGED
|
@@ -46,10 +46,10 @@ export interface TriggerProps {
|
|
|
46
46
|
builtinPlacements?: BuildInPlacements;
|
|
47
47
|
popupAlign?: AlignType;
|
|
48
48
|
popupClassName?: string;
|
|
49
|
-
/** Pass to `UniqueProvider`
|
|
50
|
-
|
|
51
|
-
/** Pass to `UniqueProvider`
|
|
52
|
-
|
|
49
|
+
/** Pass to `UniqueProvider` UniqueContainer */
|
|
50
|
+
uniqueContainerClassName?: string;
|
|
51
|
+
/** Pass to `UniqueProvider` UniqueContainer */
|
|
52
|
+
uniqueContainerStyle?: React.CSSProperties;
|
|
53
53
|
popupStyle?: React.CSSProperties;
|
|
54
54
|
getPopupClassNameFromAlign?: (align: AlignType) => string;
|
|
55
55
|
onPopupClick?: React.MouseEventHandler<HTMLDivElement>;
|
package/es/index.js
CHANGED
|
@@ -55,8 +55,8 @@ export function generateTrigger(PortalComponent = Portal) {
|
|
|
55
55
|
// Popup
|
|
56
56
|
popup,
|
|
57
57
|
popupClassName,
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
uniqueContainerClassName,
|
|
59
|
+
uniqueContainerStyle,
|
|
60
60
|
popupStyle,
|
|
61
61
|
popupPlacement,
|
|
62
62
|
builtinPlacements = {},
|
|
@@ -167,8 +167,8 @@ export function generateTrigger(PortalComponent = Portal) {
|
|
|
167
167
|
delay,
|
|
168
168
|
prefixCls,
|
|
169
169
|
popupClassName,
|
|
170
|
-
|
|
171
|
-
|
|
170
|
+
uniqueContainerClassName,
|
|
171
|
+
uniqueContainerStyle,
|
|
172
172
|
popupStyle,
|
|
173
173
|
popupPlacement,
|
|
174
174
|
builtinPlacements,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { CSSMotionProps } from '@rc-component/motion';
|
|
3
3
|
import type { AlignType, ArrowPos } from '../interface';
|
|
4
|
-
export interface
|
|
4
|
+
export interface UniqueContainerProps {
|
|
5
5
|
prefixCls: string;
|
|
6
6
|
isMobile: boolean;
|
|
7
7
|
ready: boolean;
|
|
@@ -17,8 +17,8 @@ export interface UniqueBodyProps {
|
|
|
17
17
|
height: number;
|
|
18
18
|
};
|
|
19
19
|
motion?: CSSMotionProps;
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
uniqueContainerClassName?: string;
|
|
21
|
+
uniqueContainerStyle?: React.CSSProperties;
|
|
22
22
|
}
|
|
23
|
-
declare const
|
|
24
|
-
export default
|
|
23
|
+
declare const UniqueContainer: (props: UniqueContainerProps) => React.JSX.Element;
|
|
24
|
+
export default UniqueContainer;
|
|
@@ -10,7 +10,7 @@ var _classnames = _interopRequireDefault(require("classnames"));
|
|
|
10
10
|
var _motion = _interopRequireDefault(require("@rc-component/motion"));
|
|
11
11
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
12
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
13
|
-
const
|
|
13
|
+
const UniqueContainer = props => {
|
|
14
14
|
const {
|
|
15
15
|
prefixCls,
|
|
16
16
|
isMobile,
|
|
@@ -24,10 +24,10 @@ const UniqueBody = props => {
|
|
|
24
24
|
arrowPos,
|
|
25
25
|
popupSize,
|
|
26
26
|
motion,
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
uniqueContainerClassName,
|
|
28
|
+
uniqueContainerStyle
|
|
29
29
|
} = props;
|
|
30
|
-
const
|
|
30
|
+
const containerCls = `${prefixCls}-unique-container`;
|
|
31
31
|
const [motionVisible, setMotionVisible] = _react.default.useState(false);
|
|
32
32
|
|
|
33
33
|
// ========================= Styles =========================
|
|
@@ -54,7 +54,7 @@ const UniqueBody = props => {
|
|
|
54
54
|
motionEnter: true,
|
|
55
55
|
motionLeave: true,
|
|
56
56
|
removeOnLeave: false,
|
|
57
|
-
leavedClassName: `${
|
|
57
|
+
leavedClassName: `${containerCls}-hidden`
|
|
58
58
|
}, motion, {
|
|
59
59
|
visible: open,
|
|
60
60
|
onVisibleChanged: nextVisible => {
|
|
@@ -64,8 +64,8 @@ const UniqueBody = props => {
|
|
|
64
64
|
className: motionClassName,
|
|
65
65
|
style: motionStyle
|
|
66
66
|
}) => {
|
|
67
|
-
const cls = (0, _classnames.default)(
|
|
68
|
-
[`${
|
|
67
|
+
const cls = (0, _classnames.default)(containerCls, motionClassName, uniqueContainerClassName, {
|
|
68
|
+
[`${containerCls}-visible`]: motionVisible
|
|
69
69
|
});
|
|
70
70
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
71
71
|
className: cls,
|
|
@@ -75,9 +75,9 @@ const UniqueBody = props => {
|
|
|
75
75
|
...cachedOffsetStyleRef.current,
|
|
76
76
|
...sizeStyle,
|
|
77
77
|
...motionStyle,
|
|
78
|
-
...
|
|
78
|
+
...uniqueContainerStyle
|
|
79
79
|
}
|
|
80
80
|
});
|
|
81
81
|
});
|
|
82
82
|
};
|
|
83
|
-
var _default = exports.default =
|
|
83
|
+
var _default = exports.default = UniqueContainer;
|
|
@@ -5,5 +5,5 @@ export interface UniqueProviderProps {
|
|
|
5
5
|
/** Additional handle options data to do the customize info */
|
|
6
6
|
postTriggerProps?: (options: UniqueShowOptions) => UniqueShowOptions;
|
|
7
7
|
}
|
|
8
|
-
declare const UniqueProvider: ({ children, postTriggerProps }: UniqueProviderProps) => React.JSX.Element;
|
|
8
|
+
declare const UniqueProvider: ({ children, postTriggerProps, }: UniqueProviderProps) => React.JSX.Element;
|
|
9
9
|
export default UniqueProvider;
|
|
@@ -13,7 +13,7 @@ var _Popup = _interopRequireDefault(require("../Popup"));
|
|
|
13
13
|
var _util = require("@rc-component/util");
|
|
14
14
|
var _useTargetState = _interopRequireDefault(require("./useTargetState"));
|
|
15
15
|
var _findDOMNode = require("@rc-component/util/lib/Dom/findDOMNode");
|
|
16
|
-
var
|
|
16
|
+
var _UniqueContainer = _interopRequireDefault(require("./UniqueContainer"));
|
|
17
17
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
18
18
|
var _util2 = require("../util");
|
|
19
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -98,6 +98,11 @@ const UniqueProvider = ({
|
|
|
98
98
|
hide
|
|
99
99
|
}), []);
|
|
100
100
|
|
|
101
|
+
// =========================== Align ============================
|
|
102
|
+
React.useEffect(() => {
|
|
103
|
+
onAlign();
|
|
104
|
+
}, [mergedOptions?.target]);
|
|
105
|
+
|
|
101
106
|
// =========================== Motion ===========================
|
|
102
107
|
const onPrepare = (0, _util.useEvent)(() => {
|
|
103
108
|
onAlign();
|
|
@@ -155,7 +160,7 @@ const UniqueProvider = ({
|
|
|
155
160
|
motion: mergedOptions.popupMotion,
|
|
156
161
|
maskMotion: mergedOptions.maskMotion,
|
|
157
162
|
getPopupContainer: mergedOptions.getPopupContainer
|
|
158
|
-
}, /*#__PURE__*/React.createElement(
|
|
163
|
+
}, /*#__PURE__*/React.createElement(_UniqueContainer.default, {
|
|
159
164
|
prefixCls: prefixCls,
|
|
160
165
|
isMobile: false,
|
|
161
166
|
ready: ready,
|
|
@@ -171,8 +176,8 @@ const UniqueProvider = ({
|
|
|
171
176
|
},
|
|
172
177
|
popupSize: popupSize,
|
|
173
178
|
motion: mergedOptions.popupMotion,
|
|
174
|
-
|
|
175
|
-
|
|
179
|
+
uniqueContainerClassName: (0, _classnames.default)(mergedOptions.uniqueContainerClassName, alignedClassName),
|
|
180
|
+
uniqueContainerStyle: mergedOptions.uniqueContainerStyle
|
|
176
181
|
}))));
|
|
177
182
|
};
|
|
178
183
|
var _default = exports.default = UniqueProvider;
|
package/lib/context.d.ts
CHANGED
|
@@ -14,8 +14,8 @@ export interface UniqueShowOptions {
|
|
|
14
14
|
delay: number;
|
|
15
15
|
prefixCls?: string;
|
|
16
16
|
popupClassName?: string;
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
uniqueContainerClassName?: string;
|
|
18
|
+
uniqueContainerStyle?: React.CSSProperties;
|
|
19
19
|
popupStyle?: React.CSSProperties;
|
|
20
20
|
popupPlacement?: string;
|
|
21
21
|
builtinPlacements?: BuildInPlacements;
|
package/lib/index.d.ts
CHANGED
|
@@ -46,10 +46,10 @@ export interface TriggerProps {
|
|
|
46
46
|
builtinPlacements?: BuildInPlacements;
|
|
47
47
|
popupAlign?: AlignType;
|
|
48
48
|
popupClassName?: string;
|
|
49
|
-
/** Pass to `UniqueProvider`
|
|
50
|
-
|
|
51
|
-
/** Pass to `UniqueProvider`
|
|
52
|
-
|
|
49
|
+
/** Pass to `UniqueProvider` UniqueContainer */
|
|
50
|
+
uniqueContainerClassName?: string;
|
|
51
|
+
/** Pass to `UniqueProvider` UniqueContainer */
|
|
52
|
+
uniqueContainerStyle?: React.CSSProperties;
|
|
53
53
|
popupStyle?: React.CSSProperties;
|
|
54
54
|
getPopupClassNameFromAlign?: (align: AlignType) => string;
|
|
55
55
|
onPopupClick?: React.MouseEventHandler<HTMLDivElement>;
|
package/lib/index.js
CHANGED
|
@@ -69,8 +69,8 @@ function generateTrigger(PortalComponent = _portal.default) {
|
|
|
69
69
|
// Popup
|
|
70
70
|
popup,
|
|
71
71
|
popupClassName,
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
uniqueContainerClassName,
|
|
73
|
+
uniqueContainerStyle,
|
|
74
74
|
popupStyle,
|
|
75
75
|
popupPlacement,
|
|
76
76
|
builtinPlacements = {},
|
|
@@ -181,8 +181,8 @@ function generateTrigger(PortalComponent = _portal.default) {
|
|
|
181
181
|
delay,
|
|
182
182
|
prefixCls,
|
|
183
183
|
popupClassName,
|
|
184
|
-
|
|
185
|
-
|
|
184
|
+
uniqueContainerClassName,
|
|
185
|
+
uniqueContainerStyle,
|
|
186
186
|
popupStyle,
|
|
187
187
|
popupPlacement,
|
|
188
188
|
builtinPlacements,
|