@@ -6,44 +6,44 @@ import React from 'react';
6
6
import { Dialog , DialogContent , DialogPortal , DialogTrigger } from '@/components/ui/dialog' ;
7
7
import { DropdownMenuItem } from '@/components/ui/dropdown-menu' ;
8
8
9
- type TDialog = {
9
+ type TForwardedDialog = {
10
10
isDialogOpen ?: boolean ;
11
11
triggerChildren : React . ReactNode ;
12
12
children : React . ReactNode ;
13
13
onDropdownSelect : ( ) => void ;
14
14
onDialogOpenChange : ( open : boolean ) => void ;
15
15
} ;
16
16
17
- function _Dialog (
18
- {
19
- isDialogOpen ,
20
- triggerChildren ,
21
- children : contentChildren ,
22
- onDropdownSelect ,
23
- onDialogOpenChange
24
- } : TDialog ,
25
- forwardedReference : React . Ref < HTMLDivElement >
26
- ) {
27
- return (
28
- < Dialog open = { isDialogOpen } onOpenChange = { onDialogOpenChange } >
29
- < DialogTrigger asChild >
30
- < DropdownMenuItem
31
- ref = { forwardedReference }
32
- onSelect = { ( event ) => {
33
- event . preventDefault ( ) ;
34
- onDropdownSelect ( ) ;
35
- } }
36
- >
37
- { triggerChildren }
38
- </ DropdownMenuItem >
39
- </ DialogTrigger >
40
- < DialogPortal >
41
- < DialogContent > { contentChildren } </ DialogContent >
42
- </ DialogPortal >
43
- </ Dialog >
44
- ) ;
45
- }
46
-
47
- const ForwardedDialog = React . forwardRef < HTMLDivElement , TDialog > ( _Dialog ) ;
17
+ const ForwardedDialog = React . forwardRef < HTMLDivElement , TForwardedDialog > (
18
+ function DialogWithReference (
19
+ {
20
+ isDialogOpen ,
21
+ triggerChildren ,
22
+ children ,
23
+ onDropdownSelect ,
24
+ onDialogOpenChange
25
+ } : TForwardedDialog ,
26
+ forwardedReference
27
+ ) {
28
+ return (
29
+ < Dialog open = { isDialogOpen } onOpenChange = { onDialogOpenChange } >
30
+ < DialogTrigger asChild >
31
+ < DropdownMenuItem
32
+ ref = { forwardedReference }
33
+ onSelect = { ( event ) => {
34
+ event . preventDefault ( ) ;
35
+ onDropdownSelect ( ) ;
36
+ } }
37
+ >
38
+ { triggerChildren }
39
+ </ DropdownMenuItem >
40
+ </ DialogTrigger >
41
+ < DialogPortal >
42
+ < DialogContent > { children } </ DialogContent >
43
+ </ DialogPortal >
44
+ </ Dialog >
45
+ ) ;
46
+ }
47
+ ) ;
48
48
49
49
export default ForwardedDialog ;
0 commit comments