@rc-component/trigger 3.1.0 → 3.2.0
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/es/index.d.ts +4 -0
- package/es/index.js +4 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.js +4 -0
- package/package.json +1 -1
package/es/index.d.ts
CHANGED
|
@@ -18,7 +18,11 @@ export interface TriggerProps {
|
|
|
18
18
|
stretch?: string;
|
|
19
19
|
popupVisible?: boolean;
|
|
20
20
|
defaultPopupVisible?: boolean;
|
|
21
|
+
onOpenChange?: (visible: boolean) => void;
|
|
22
|
+
afterOpenChange?: (visible: boolean) => void;
|
|
23
|
+
/** @deprecated Use `onOpenChange` instead */
|
|
21
24
|
onPopupVisibleChange?: (visible: boolean) => void;
|
|
25
|
+
/** @deprecated Use `afterOpenChange` instead */
|
|
22
26
|
afterPopupVisibleChange?: (visible: boolean) => void;
|
|
23
27
|
getPopupContainer?: (node: HTMLElement) => HTMLElement;
|
|
24
28
|
forceRender?: boolean;
|
package/es/index.js
CHANGED
|
@@ -35,6 +35,8 @@ export function generateTrigger(PortalComponent = Portal) {
|
|
|
35
35
|
// Open
|
|
36
36
|
popupVisible,
|
|
37
37
|
defaultPopupVisible,
|
|
38
|
+
onOpenChange,
|
|
39
|
+
afterOpenChange,
|
|
38
40
|
onPopupVisibleChange,
|
|
39
41
|
afterPopupVisibleChange,
|
|
40
42
|
// Delay
|
|
@@ -155,6 +157,7 @@ export function generateTrigger(PortalComponent = Portal) {
|
|
|
155
157
|
// Use `lastTriggerRef` to record last open type
|
|
156
158
|
if ((lastTriggerRef.current[lastTriggerRef.current.length - 1] ?? mergedOpen) !== nextOpen) {
|
|
157
159
|
lastTriggerRef.current.push(nextOpen);
|
|
160
|
+
onOpenChange?.(nextOpen);
|
|
158
161
|
onPopupVisibleChange?.(nextOpen);
|
|
159
162
|
}
|
|
160
163
|
});
|
|
@@ -246,6 +249,7 @@ export function generateTrigger(PortalComponent = Portal) {
|
|
|
246
249
|
const onVisibleChanged = visible => {
|
|
247
250
|
setInMotion(false);
|
|
248
251
|
onAlign();
|
|
252
|
+
afterOpenChange?.(visible);
|
|
249
253
|
afterPopupVisibleChange?.(visible);
|
|
250
254
|
};
|
|
251
255
|
|
package/lib/index.d.ts
CHANGED
|
@@ -18,7 +18,11 @@ export interface TriggerProps {
|
|
|
18
18
|
stretch?: string;
|
|
19
19
|
popupVisible?: boolean;
|
|
20
20
|
defaultPopupVisible?: boolean;
|
|
21
|
+
onOpenChange?: (visible: boolean) => void;
|
|
22
|
+
afterOpenChange?: (visible: boolean) => void;
|
|
23
|
+
/** @deprecated Use `onOpenChange` instead */
|
|
21
24
|
onPopupVisibleChange?: (visible: boolean) => void;
|
|
25
|
+
/** @deprecated Use `afterOpenChange` instead */
|
|
22
26
|
afterPopupVisibleChange?: (visible: boolean) => void;
|
|
23
27
|
getPopupContainer?: (node: HTMLElement) => HTMLElement;
|
|
24
28
|
forceRender?: boolean;
|
package/lib/index.js
CHANGED
|
@@ -44,6 +44,8 @@ function generateTrigger(PortalComponent = _portal.default) {
|
|
|
44
44
|
// Open
|
|
45
45
|
popupVisible,
|
|
46
46
|
defaultPopupVisible,
|
|
47
|
+
onOpenChange,
|
|
48
|
+
afterOpenChange,
|
|
47
49
|
onPopupVisibleChange,
|
|
48
50
|
afterPopupVisibleChange,
|
|
49
51
|
// Delay
|
|
@@ -164,6 +166,7 @@ function generateTrigger(PortalComponent = _portal.default) {
|
|
|
164
166
|
// Use `lastTriggerRef` to record last open type
|
|
165
167
|
if ((lastTriggerRef.current[lastTriggerRef.current.length - 1] ?? mergedOpen) !== nextOpen) {
|
|
166
168
|
lastTriggerRef.current.push(nextOpen);
|
|
169
|
+
onOpenChange?.(nextOpen);
|
|
167
170
|
onPopupVisibleChange?.(nextOpen);
|
|
168
171
|
}
|
|
169
172
|
});
|
|
@@ -255,6 +258,7 @@ function generateTrigger(PortalComponent = _portal.default) {
|
|
|
255
258
|
const onVisibleChanged = visible => {
|
|
256
259
|
setInMotion(false);
|
|
257
260
|
onAlign();
|
|
261
|
+
afterOpenChange?.(visible);
|
|
258
262
|
afterPopupVisibleChange?.(visible);
|
|
259
263
|
};
|
|
260
264
|
|