@@ -6,6 +6,7 @@ import React from 'react'
66import styles from './StorageItem.styl'
77import CSSModules from 'browser/lib/CSSModules'
88import _ from 'lodash'
9+ import { SortableHandle } from 'react-sortable-hoc'
910
1011/**
1112 * @param {boolean } isActive
@@ -23,32 +24,35 @@ import _ from 'lodash'
2324const StorageItem = ( {
2425 isActive, handleButtonClick, handleContextMenu, folderName,
2526 folderColor, isFolded, noteCount, handleDrop, handleDragEnter, handleDragLeave
26- } ) => (
27- < button styleName = { isActive
27+ } ) => {
28+ const FolderDragger = SortableHandle ( ( { className } ) => < i className = { className } /> )
29+ return (
30+ < button styleName = { isActive
2831 ? 'folderList-item--active'
2932 : 'folderList-item'
3033 }
31- onClick = { handleButtonClick }
32- onContextMenu = { handleContextMenu }
33- onDrop = { handleDrop }
34- onDragEnter = { handleDragEnter }
35- onDragLeave = { handleDragLeave }
36- >
37- < span styleName = { isFolded
38- ? 'folderList-item-name--folded' : 'folderList-item-name'
39- } >
40- < text style = { { color : folderColor , paddingRight : '10px' } } > { isActive ? < i className = 'fa fa-folder-open-o' /> : < i className = 'fa fa-folder-o' /> } </ text > { isFolded ? _ . truncate ( folderName , { length : 1 , omission : '' } ) : folderName }
41- </ span >
42- { ( ! isFolded && _ . isNumber ( noteCount ) ) &&
43- < span styleName = 'folderList-item-noteCount' > { noteCount } </ span >
44- }
45- { isFolded &&
46- < span styleName = 'folderList-item-tooltip' >
47- { folderName }
34+ onClick = { handleButtonClick }
35+ onContextMenu = { handleContextMenu }
36+ onDrop = { handleDrop }
37+ onDragEnter = { handleDragEnter }
38+ onDragLeave = { handleDragLeave }
39+ >
40+ < span styleName = { isFolded
41+ ? 'folderList-item-name--folded' : 'folderList-item-name'
42+ } >
43+ < text style = { { color : folderColor , paddingRight : '10px' } } > { isActive ? < FolderDragger className = 'fa fa-folder-open-o' /> : < FolderDragger className = 'fa fa-folder-o' /> } </ text > { isFolded ? _ . truncate ( folderName , { length : 1 , omission : '' } ) : folderName }
4844 </ span >
49- }
50- </ button >
51- )
45+ { ( ! isFolded && _ . isNumber ( noteCount ) ) &&
46+ < span styleName = 'folderList-item-noteCount' > { noteCount } </ span >
47+ }
48+ { isFolded &&
49+ < span styleName = 'folderList-item-tooltip' >
50+ { folderName }
51+ </ span >
52+ }
53+ </ button >
54+ )
55+ }
5256
5357StorageItem . propTypes = {
5458 isActive : PropTypes . bool . isRequired ,
0 commit comments