1
1
import * as React from 'react' ;
2
2
import { CaretToolbar } from 'nice-ui/lib/4-card/Toolbar/ToolbarMenu/CaretToolbar' ;
3
- import { useToolbarPlugin } from '../context' ;
4
- import { useSyncStore , useSyncStoreOpt , useTimeout } from '../../../web/react/hooks' ;
5
- import { AfterTimeout } from '../../../web/react/util/AfterTimeout' ;
6
- import { CaretFrame } from './CaretFrame' ;
7
- import type { CaretViewProps } from '../../../web/react/cursor/CaretView' ;
3
+ import { useToolbarPlugin } from '../../context' ;
4
+ import { useSyncStore , useTimeout } from '../../../../web/react/hooks' ;
5
+ import { AfterTimeout } from '../../../../web/react/util/AfterTimeout' ;
6
+ import type { CaretViewProps } from '../../../../web/react/cursor/CaretView' ;
8
7
9
- export interface RenderCaretProps extends CaretViewProps {
8
+ export interface CaretTopOverlayProps extends CaretViewProps {
10
9
children : React . ReactNode ;
11
10
}
12
11
13
- export const RenderCaret : React . FC < RenderCaretProps > = ( { children } ) => {
12
+ export const CaretTopOverlay : React . FC < CaretTopOverlayProps > = ( ) => {
14
13
const { toolbar} = useToolbarPlugin ( ) ! ;
15
14
const showInlineToolbar = toolbar . showInlineToolbar ;
16
- const [ showCaretToolbarValue , toolbarVisibilityChangeTime ] = useSyncStore ( showInlineToolbar ) ;
17
- const focus = useSyncStoreOpt ( toolbar . surface . dom ?. cursor . focus ) || false ;
15
+ const [ , toolbarVisibilityChangeTime ] = useSyncStore ( showInlineToolbar ) ;
18
16
const doHideForCoolDown = toolbarVisibilityChangeTime + 500 > Date . now ( ) ;
19
17
const enableAfterCoolDown = useTimeout ( 500 , [ doHideForCoolDown ] ) ;
20
18
@@ -25,19 +23,15 @@ export const RenderCaret: React.FC<RenderCaretProps> = ({children}) => {
25
23
} , 5 ) ;
26
24
} , [ ] ) ;
27
25
28
- let over : React . ReactNode | undefined = (
26
+ let element : React . ReactNode | undefined = (
29
27
< CaretToolbar disabled = { ! enableAfterCoolDown } menu = { toolbar . getCaretMenu ( ) } onPopupClose = { handleClose } />
30
28
) ;
31
29
32
30
if ( doHideForCoolDown ) {
33
- over = < AfterTimeout ms = { 500 } > { over } </ AfterTimeout > ;
31
+ element = < AfterTimeout ms = { 500 } > { element } </ AfterTimeout > ;
34
32
}
35
33
36
- over = null ;
34
+ element = null ;
37
35
38
- return (
39
- < CaretFrame over = { over } >
40
- { children }
41
- </ CaretFrame >
42
- ) ;
36
+ return element ;
43
37
} ;
0 commit comments