1
- import React , { useEffect , useState } from 'react' ;
1
+ import React , { useState , useEffect } from 'react' ;
2
2
3
3
import { SidePanelInput } from './SidePanelInput' ;
4
- import { createComponentStyles } from '../styles/componentStyles' ;
5
- import { getStatusStyle } from '../styles/style' ;
6
- import type { ThemeProps } from '../types/theme' ;
7
4
import type { DataItem } from '../types/types' ;
8
-
5
+ import type { ThemeProps } from '../types/theme' ;
6
+ import { componentStyles , getStatusStyle } from '../styles/style' ;
9
7
import '../styles/SidePanel.css' ;
10
8
11
9
interface SidePanelProps {
@@ -31,7 +29,6 @@ export const SidePanel: React.FC<SidePanelProps> = ({
31
29
isStatusEditable = false , // Status is typically not editable
32
30
} ) => {
33
31
const [ formData , setFormData ] = useState < Partial < DataItem > > ( { } ) ;
34
- const styles = createComponentStyles ( theme ) ;
35
32
36
33
// Prevent body scroll when side panel is open
37
34
useEffect ( ( ) => {
@@ -89,7 +86,7 @@ export const SidePanel: React.FC<SidePanelProps> = ({
89
86
90
87
return (
91
88
< span style = { {
92
- ...styles . statusBadge . base ,
89
+ ...componentStyles . statusBadge . base ,
93
90
...style
94
91
} } >
95
92
{ status }
@@ -104,22 +101,22 @@ export const SidePanel: React.FC<SidePanelProps> = ({
104
101
const firstLetter = value . charAt ( 0 ) . toUpperCase ( ) ;
105
102
106
103
return (
107
- < div style = { styles . resourceTypeDisplay . container } >
104
+ < div style = { componentStyles . resourceTypeDisplay . container } >
108
105
< div style = { {
109
- ...styles . resourceTypeDisplay . icon ,
110
- ...( imageURL ? styles . resourceTypeDisplay . iconWithImage : styles . resourceTypeDisplay . iconWithoutImage )
106
+ ...componentStyles . resourceTypeDisplay . icon ,
107
+ ...( imageURL ? componentStyles . resourceTypeDisplay . iconWithImage : componentStyles . resourceTypeDisplay . iconWithoutImage )
111
108
} } >
112
109
{ imageURL ? (
113
110
< img
114
111
src = { imageURL }
115
112
alt = { value }
116
- style = { styles . resourceTypeDisplay . image }
113
+ style = { componentStyles . resourceTypeDisplay . image }
117
114
/>
118
115
) : (
119
116
firstLetter
120
117
) }
121
118
</ div >
122
- < span style = { styles . resourceTypeDisplay . text } > { value } </ span >
119
+ < span style = { componentStyles . resourceTypeDisplay . text } > { value } </ span >
123
120
</ div >
124
121
) ;
125
122
} ;
@@ -130,36 +127,36 @@ export const SidePanel: React.FC<SidePanelProps> = ({
130
127
< div
131
128
className = "side-panel-overlay"
132
129
onClick = { onClose }
133
- style = { styles . sidePanel . overlay }
130
+ style = { componentStyles . sidePanel . overlay }
134
131
/>
135
132
136
133
{ /* Side Panel */ }
137
134
< div
138
135
className = "side-panel"
139
136
style = { {
140
- ...styles . sidePanel . container ,
137
+ ...componentStyles . sidePanel . container ,
141
138
transform : isOpen ? 'translateX(0)' : 'translateX(100%)' ,
142
139
transition : 'transform 0.3s ease-in-out' ,
143
140
} }
144
141
>
145
142
{ /* Header */ }
146
- < div style = { styles . sidePanel . header } >
147
- < h2 style = { styles . sidePanel . title } >
143
+ < div style = { componentStyles . sidePanel . header } >
144
+ < h2 style = { componentStyles . sidePanel . title } >
148
145
Resource Details
149
146
</ h2 >
150
147
< button
151
148
onClick = { onClose }
152
- style = { styles . sidePanel . closeButton }
149
+ style = { componentStyles . sidePanel . closeButton }
153
150
>
154
151
×
155
152
</ button >
156
153
</ div >
157
154
158
155
{ /* Content */ }
159
- < div style = { styles . sidePanel . content } >
156
+ < div style = { componentStyles . sidePanel . content } >
160
157
{ /* Resource Type */ }
161
- < div style = { styles . sidePanel . fieldContainer } >
162
- < label style = { styles . sidePanel . label } >
158
+ < div style = { componentStyles . sidePanel . fieldContainer } >
159
+ < label style = { componentStyles . sidePanel . label } >
163
160
Resource Type
164
161
</ label >
165
162
< ResourceTypeDisplay
@@ -169,11 +166,11 @@ export const SidePanel: React.FC<SidePanelProps> = ({
169
166
</ div >
170
167
171
168
{ /* ID */ }
172
- < div style = { styles . sidePanel . fieldContainer } >
173
- < label style = { styles . sidePanel . label } >
169
+ < div style = { componentStyles . sidePanel . fieldContainer } >
170
+ < label style = { componentStyles . sidePanel . label } >
174
171
ID *
175
172
</ label >
176
- < div style = { styles . sidePanel . idField } >
173
+ < div style = { componentStyles . sidePanel . idField } >
177
174
{ item . id }
178
175
</ div >
179
176
</ div >
@@ -199,8 +196,8 @@ export const SidePanel: React.FC<SidePanelProps> = ({
199
196
/>
200
197
201
198
{ /* Status */ }
202
- < div style = { styles . sidePanel . fieldContainer } >
203
- < label style = { styles . sidePanel . label } >
199
+ < div style = { componentStyles . sidePanel . fieldContainer } >
200
+ < label style = { componentStyles . sidePanel . label } >
204
201
Status
205
202
</ label >
206
203
{ isStatusEditable ? (
@@ -229,13 +226,13 @@ export const SidePanel: React.FC<SidePanelProps> = ({
229
226
</ div >
230
227
231
228
{ /* Footer with Save Changes Button */ }
232
- < div style = { styles . sidePanel . footer } >
229
+ < div style = { componentStyles . sidePanel . footer } >
233
230
< button
234
231
onClick = { handleSaveChanges }
235
232
disabled = { ! hasChanges }
236
233
style = { {
237
- ...styles . sidePanel . saveButton ,
238
- ...( hasChanges ? styles . sidePanel . saveButtonEnabled : styles . sidePanel . saveButtonDisabled ) ,
234
+ ...componentStyles . sidePanel . saveButton ,
235
+ ...( hasChanges ? componentStyles . sidePanel . saveButtonEnabled : componentStyles . sidePanel . saveButtonDisabled ) ,
239
236
} }
240
237
onMouseEnter = { ( e ) => {
241
238
if ( hasChanges )
0 commit comments