File tree 3 files changed +15
-5
lines changed
3 files changed +15
-5
lines changed Original file line number Diff line number Diff line change 1
1
import Head from "next/head" ;
2
+ import { useState } from "react" ;
2
3
import * as Space from "react-spaces" ;
3
4
4
5
export default function Home ( ) {
6
+ const [ lsize , setLSize ] = useState ( "10%" ) ; // To check for the hover effect
5
7
return (
6
8
< >
7
9
< Space . SSR />
@@ -12,7 +14,12 @@ export default function Home() {
12
14
< link rel = "icon" href = "/favicon.ico" />
13
15
</ Head >
14
16
< Space . ViewPort >
15
- < Space . LeftResizable size = "25%" centerContent = { Space . CenterType . HorizontalVertical } style = { { backgroundColor : "white" } } >
17
+ < Space . LeftResizable
18
+ size = { lsize }
19
+ onMouseEnter = { ( ) => setLSize ( "25%" ) }
20
+ onMouseLeave = { ( ) => setLSize ( "10%" ) }
21
+ centerContent = { Space . CenterType . HorizontalVertical }
22
+ style = { { backgroundColor : "white" , transition : "all 0.3s ease-in-out" } } >
16
23
< span style = { { color : "black" } } > Hello world</ span >
17
24
</ Space . LeftResizable >
18
25
< Space . RightResizable size = "25%" centerContent = { Space . CenterType . HorizontalVertical } style = { { backgroundColor : "white" } } >
Original file line number Diff line number Diff line change @@ -42,7 +42,7 @@ const SpaceInner: React.FC<IReactSpaceInnerProps & { wrapperInstance: Space }> =
42
42
}
43
43
44
44
const {
45
- style ,
45
+ innerComponentStyle ,
46
46
className,
47
47
onClick,
48
48
onDoubleClick,
@@ -55,6 +55,7 @@ const SpaceInner: React.FC<IReactSpaceInnerProps & { wrapperInstance: Space }> =
55
55
onTouchEnd,
56
56
children,
57
57
handleRender,
58
+ style,
58
59
} = props ;
59
60
60
61
const events = {
@@ -103,10 +104,10 @@ const SpaceInner: React.FC<IReactSpaceInnerProps & { wrapperInstance: Space }> =
103
104
104
105
const innerClasses = [ ...[ "spaces-space-inner" ] , ...userClasses ] ;
105
106
106
- let innerStyle = style ;
107
+ let innerStyle = innerComponentStyle ;
107
108
if ( space . handlePlacement === ResizeHandlePlacement . Inside ) {
108
109
innerStyle = {
109
- ...style ,
110
+ ...innerStyle ,
110
111
...{
111
112
left : space . anchor === AnchorType . Right ? space . handleSize : undefined ,
112
113
right : space . anchor === AnchorType . Left ? space . handleSize : undefined ,
@@ -125,6 +126,7 @@ const SpaceInner: React.FC<IReactSpaceInnerProps & { wrapperInstance: Space }> =
125
126
className : outerClasses . join ( " " ) ,
126
127
} ,
127
128
...events ,
129
+ style,
128
130
} as any ;
129
131
130
132
return (
Original file line number Diff line number Diff line change @@ -97,9 +97,10 @@ export interface IReactEvents {
97
97
}
98
98
99
99
export interface IReactSpaceCommonProps extends ICommonProps , IReactEvents {
100
- style ?: React . CSSProperties ;
100
+ innerComponentStyle ?: React . CSSProperties ; // For people who like to modify the inner `as` component
101
101
as ?: keyof React . ReactDOM | React . ComponentType < ICommonProps > ;
102
102
children ?: React . ReactNode ;
103
+ style ?: React . CSSProperties ; // Normal styles for the wrapper itself as it is the main component that is resized
103
104
}
104
105
105
106
export interface IReactSpaceInnerProps extends IReactSpaceCommonProps , ISpaceProps , IReactEvents {
You can’t perform that action at this time.
0 commit comments