1
1
import React , { useRef , useContext } from 'react' ;
2
+ import classNames from 'classnames' ;
2
3
import DarkModeContext from '../../../context/dark-mode-context' ;
3
4
import Loader from 'react-loader-spinner' ;
4
5
import { useDrag , useDrop } from 'react-dnd' ;
@@ -162,7 +163,10 @@ const Tab = ({
162
163
< li
163
164
// style={{ opacity: isDragging ? 0 : 1 }}
164
165
ref = { ref }
165
- className = { [ 'TabItem' , isDragging ? 'blink' : null ] . join ( ' ' ) }
166
+ className = { classNames ( {
167
+ TabItem : true ,
168
+ blink : isDragging ,
169
+ } ) }
166
170
onClick = { ( event ) => {
167
171
if ( contextMenuShowPrev && ! contextMenuShow ) {
168
172
clearContextMenuShow ( ) ;
@@ -191,41 +195,40 @@ const Tab = ({
191
195
} }
192
196
>
193
197
< div
194
- className = { [
195
- 'TabContainerPad' ,
196
- isDark ? 'Dark' : null ,
197
- active ? 'TabContainerPadActive' : null ,
198
- ( ! active && isHovering && idx === index ) ||
199
- ( ! active && isHovering && isSearching )
200
- ? 'TabContainerPadInactiveHovering'
201
- : null ,
202
- ] . join ( ' ' ) }
198
+ className = { classNames ( {
199
+ TabContainerPad : true ,
200
+ Dark : isDark ,
201
+ TabContainerPadActive : active ,
202
+ TabContainerPadInactiveHovering :
203
+ ( ! active && isHovering && idx === index ) ||
204
+ ( ! active && isHovering && isSearching ) ,
205
+ } ) }
203
206
>
204
207
< div
205
- className = { [
206
- ' TabContainerLeftPadInner' ,
207
- isDark ? ' Dark' : null ,
208
- ] . join ( ' ' ) }
208
+ className = { classNames ( {
209
+ TabContainerLeftPadInner : true ,
210
+ Dark : isDark ,
211
+ } ) }
209
212
> </ div >
210
213
</ div >
211
214
212
215
< div
213
- className = { [
214
- 'TabContainer' ,
215
- isDark ? 'Dark' : null ,
216
- active ? 'ActiveTabContainer' : null ,
217
- ( ! active && isHovering && idx === index ) ||
218
- ( ! active && isHovering && isSearching )
219
- ? 'InactiveTabContainerHovering'
220
- : null ,
221
- ] . join ( ' ' ) }
216
+ className = { classNames ( {
217
+ TabContainer : true ,
218
+ Dark : isDark ,
219
+ ActiveTabContainer : active ,
220
+ InactiveTabContainerHovering :
221
+ ( ! active && isHovering && idx === index ) ||
222
+ ( ! active && isHovering && isSearching ) ,
223
+ } ) }
222
224
>
223
225
{ pinned && (
224
226
< div className = "PinnedIconContainer" >
225
227
< FaThumbtack
226
- className = { [ 'PinnedIcon' , isDark ? 'Dark' : null ] . join (
227
- ' '
228
- ) }
228
+ className = { classNames ( {
229
+ PinnedIcon : true ,
230
+ Dark : isDark ,
231
+ } ) }
229
232
/>
230
233
</ div >
231
234
) }
@@ -252,30 +255,30 @@ const Tab = ({
252
255
title = { displayTabInFull ? url : `${ title } \n\n${ url } ` }
253
256
>
254
257
< div
255
- className = { [
256
- ' TabTitle' ,
257
- displayTabInFull ? null : 'Truncated' ,
258
- ] . join ( ' ' ) }
258
+ className = { classNames ( {
259
+ TabTitle : true ,
260
+ Truncated : displayTabInFull ,
261
+ } ) }
259
262
>
260
263
{ title }
261
264
</ div >
262
265
{ mutedInfo . muted && audible && (
263
266
< div
264
- className = { [
265
- ' MutedIconContainer' ,
266
- isDark ? ' Dark' : null ,
267
- ] . join ( ' ' ) }
267
+ className = { classNames ( {
268
+ MutedIconContainer : true ,
269
+ Dark : isDark ,
270
+ } ) }
268
271
onClick = { ( e ) => muteTabClickedHandler ( e , id ) }
269
272
>
270
273
< MdVolumeOff size = { '16px' } />
271
274
</ div >
272
275
) }
273
276
{ ! mutedInfo . muted && audible && (
274
277
< div
275
- className = { [
276
- ' MutedIconContainer' ,
277
- isDark ? ' Dark' : null ,
278
- ] . join ( ' ' ) }
278
+ className = { classNames ( {
279
+ MutedIconContainer : true ,
280
+ Dark : isDark ,
281
+ } ) }
279
282
onClick = { ( e ) => muteTabClickedHandler ( e , id ) }
280
283
>
281
284
< MdVolumeUp size = { '16px' } />
@@ -295,10 +298,10 @@ const Tab = ({
295
298
} }
296
299
>
297
300
< div
298
- className = { [
299
- ' TabItemActionButton' ,
300
- isDark ? ' Dark' : null ,
301
- ] . join ( ' ' ) }
301
+ className = { classNames ( {
302
+ TabItemActionButton : true ,
303
+ Dark : isDark ,
304
+ } ) }
302
305
onClick = { ( e ) => reloadTabClickedHandler ( e , id ) }
303
306
>
304
307
< MdRefresh size = { '16px' } />
@@ -309,10 +312,10 @@ const Tab = ({
309
312
310
313
< div title = "Close tab" className = "TabItemActionButtonContainer" >
311
314
< div
312
- className = { [
313
- ' TabItemActionButton' ,
314
- isDark ? ' Dark' : null ,
315
- ] . join ( ' ' ) }
315
+ className = { classNames ( {
316
+ TabItemActionButton : true ,
317
+ Dark : isDark ,
318
+ } ) }
316
319
onClick = { ( e ) => closeTabClickedHandler ( e , id ) }
317
320
>
318
321
< MdClose size = { '16px' } />
@@ -321,21 +324,20 @@ const Tab = ({
321
324
</ div >
322
325
323
326
< div
324
- className = { [
325
- 'TabContainerPad' ,
326
- isDark ? 'Dark' : null ,
327
- active ? 'TabContainerPadActive' : null ,
328
- ( ! active && isHovering && idx === index ) ||
329
- ( ! active && isHovering && isSearching )
330
- ? 'TabContainerPadInactiveHovering'
331
- : null ,
332
- ] . join ( ' ' ) }
327
+ className = { classNames ( {
328
+ TabContainerPad : true ,
329
+ Dark : isDark ,
330
+ TabContainerPadActive : active ,
331
+ TabContainerPadInactiveHovering :
332
+ ( ! active && isHovering && idx === index ) ||
333
+ ( ! active && isHovering && isSearching ) ,
334
+ } ) }
333
335
>
334
336
< div
335
- className = { [
336
- ' TabContainerRightPadInner' ,
337
- isDark ? ' Dark' : null ,
338
- ] . join ( ' ' ) }
337
+ className = { classNames ( {
338
+ TabContainerRightPadInner : true ,
339
+ Dark : isDark ,
340
+ } ) }
339
341
> </ div >
340
342
</ div >
341
343
</ li >
@@ -348,7 +350,9 @@ const Tab = ({
348
350
onHide = { ( e ) => {
349
351
setContextMenuShow ( false ) ;
350
352
} }
351
- className = { [ isDark ? 'Dark' : null ] . join ( ' ' ) }
353
+ className = { classNames ( {
354
+ Dark : isDark ,
355
+ } ) }
352
356
>
353
357
< MenuItem onClick = { ( e ) => openNewTabClickedHandler ( ) } >
354
358
< div className = "MenuItemIconContainer" >
@@ -357,7 +361,12 @@ const Tab = ({
357
361
New Tab
358
362
</ MenuItem >
359
363
360
- < MenuItem divider className = { [ isDark ? 'Dark' : null ] . join ( ' ' ) } />
364
+ < MenuItem
365
+ divider
366
+ className = { classNames ( {
367
+ Dark : isDark ,
368
+ } ) }
369
+ />
361
370
362
371
< MenuItem onClick = { ( e ) => reloadTabClickedHandler ( e , id ) } >
363
372
< div className = "MenuItemIconContainer" >
@@ -397,7 +406,12 @@ const Tab = ({
397
406
Copy Tab URL
398
407
</ MenuItem >
399
408
400
- < MenuItem divider className = { [ isDark ? 'Dark' : null ] . join ( ' ' ) } />
409
+ < MenuItem
410
+ divider
411
+ className = { classNames ( {
412
+ Dark : isDark ,
413
+ } ) }
414
+ />
401
415
402
416
< MenuItem onClick = { ( e ) => closeTabClickedHandler ( e , id ) } >
403
417
< div className = "MenuItemIconContainer" >
0 commit comments