mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-13 01:36:22 +00:00
modify: add folder selector on top of note detail component
This commit is contained in:
@@ -262,13 +262,11 @@ class FolderSelect extends React.Component {
|
||||
: <div styleName='idle'>
|
||||
<div styleName='idle-label'>
|
||||
<span styleName='idle-label-name'
|
||||
style={{borderColor: currentOption.folder.color}}
|
||||
style={{color: currentOption.folder.color}}
|
||||
>
|
||||
{currentOption.folder.name}
|
||||
<span styleName='idle-label-name-surfix'>in {currentOption.storage.name}</span>
|
||||
{currentOption.folder.name} /
|
||||
</span>
|
||||
</div>
|
||||
<i styleName='idle-caret' className='fa fa-fw fa-caret-down' />
|
||||
</div>
|
||||
}
|
||||
|
||||
|
||||
@@ -7,29 +7,27 @@
|
||||
transition 0.15s
|
||||
user-select none
|
||||
&:hover
|
||||
background-color white
|
||||
border-color $ui-borderColor
|
||||
background-color $ui-button--hover-backgroundColor
|
||||
|
||||
.root--search, .root--focus
|
||||
@extend .root
|
||||
background-color white
|
||||
background-color $ui-noteDetail-backgroundColor = #F4F4F4
|
||||
border-color $ui-input--focus-borderColor
|
||||
width 100px
|
||||
&:hover
|
||||
background-color white
|
||||
border-color $ui-input--focus-borderColor
|
||||
|
||||
.idle
|
||||
position relative
|
||||
cursor pointer
|
||||
|
||||
.idle-label
|
||||
absolute left top
|
||||
padding 0 0 0 5px
|
||||
right 20px
|
||||
overflow ellipsis
|
||||
|
||||
.idle-label-name
|
||||
border-left solid 4px transparent
|
||||
padding 2px 5px
|
||||
padding 2px
|
||||
|
||||
.idle-label-name-surfix
|
||||
font-size 10px
|
||||
color $ui-inactive-text-color
|
||||
@@ -60,9 +58,9 @@
|
||||
max-height 450px
|
||||
overflow auto
|
||||
z-index 200
|
||||
border $ui-border
|
||||
background-color white
|
||||
border-radius 2px
|
||||
box-shadow 2px 2px 10px gray
|
||||
|
||||
.search-optionList-item
|
||||
height 34px
|
||||
@@ -115,8 +113,8 @@ body[data-theme="dark"]
|
||||
|
||||
.search-optionList
|
||||
color white
|
||||
border-color $ui-dark-borderColor
|
||||
background-color $ui-dark-button--hover-backgroundColor
|
||||
box-shadow 2px 2px 10px black
|
||||
|
||||
.search-optionList-item
|
||||
&:hover
|
||||
|
||||
@@ -4,6 +4,7 @@ import styles from './MarkdownNoteDetail.styl'
|
||||
import MarkdownEditor from 'browser/components/MarkdownEditor'
|
||||
import StarButton from './StarButton'
|
||||
import TagSelect from './TagSelect'
|
||||
import FolderSelect from './FolderSelect'
|
||||
import dataApi from 'browser/main/lib/dataApi'
|
||||
import { hashHistory } from 'react-router'
|
||||
import ee from 'browser/main/lib/eventEmitter'
|
||||
@@ -204,7 +205,7 @@ class MarkdownNoteDetail extends React.Component {
|
||||
}
|
||||
|
||||
render () {
|
||||
let { config } = this.props
|
||||
let { data, config } = this.props
|
||||
let { note } = this.state
|
||||
|
||||
return (
|
||||
@@ -218,6 +219,15 @@ class MarkdownNoteDetail extends React.Component {
|
||||
onClick={(e) => this.handleStarButtonClick(e)}
|
||||
isActive={note.isStarred}
|
||||
/>
|
||||
<div styleName='info-left-top'>
|
||||
<FolderSelect styleName='info-left-top-folderSelect'
|
||||
value={this.state.note.storage + '-' + this.state.note.folder}
|
||||
ref='folder'
|
||||
data={data}
|
||||
onChange={(e) => this.handleFolderChange(e)}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<TagSelect
|
||||
ref='tags'
|
||||
value={this.state.note.tags}
|
||||
|
||||
@@ -16,6 +16,19 @@ $info-margin-under-border = 27px
|
||||
padding 0 5px
|
||||
margin 0px 2px
|
||||
|
||||
.info-left-top
|
||||
display inline-block
|
||||
height $info-height
|
||||
line-height $info-height
|
||||
|
||||
.info-left-top-folderSelect
|
||||
display inline-block
|
||||
padding 0 3px
|
||||
height 34px
|
||||
line-height 34px
|
||||
vertical-align middle
|
||||
border-radius 3px
|
||||
|
||||
.info-left-button
|
||||
width 34px
|
||||
height 34px
|
||||
|
||||
@@ -5,6 +5,7 @@ import CodeEditor from 'browser/components/CodeEditor'
|
||||
import MarkdownEditor from 'browser/components/MarkdownEditor'
|
||||
import StarButton from './StarButton'
|
||||
import TagSelect from './TagSelect'
|
||||
import FolderSelect from './FolderSelect'
|
||||
import dataApi from 'browser/main/lib/dataApi'
|
||||
import { hashHistory } from 'react-router'
|
||||
import ee from 'browser/main/lib/eventEmitter'
|
||||
@@ -459,7 +460,7 @@ class SnippetNoteDetail extends React.Component {
|
||||
}
|
||||
|
||||
render () {
|
||||
let { config } = this.props
|
||||
let { data, config } = this.props
|
||||
let { note } = this.state
|
||||
|
||||
let editorFontSize = parseInt(config.editor.fontSize, 10)
|
||||
@@ -527,6 +528,15 @@ class SnippetNoteDetail extends React.Component {
|
||||
onClick={(e) => this.handleStarButtonClick(e)}
|
||||
isActive={note.isStarred}
|
||||
/>
|
||||
<div styleName='info-left-top'>
|
||||
<FolderSelect styleName='info-left-top-folderSelect'
|
||||
value={this.state.note.storage + '-' + this.state.note.folder}
|
||||
ref='folder'
|
||||
data={data}
|
||||
onChange={(e) => this.handleFolderChange(e)}
|
||||
/>
|
||||
</div>
|
||||
|
||||
<TagSelect
|
||||
ref='tags'
|
||||
value={this.state.note.tags}
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
.root
|
||||
position absolute
|
||||
left 7px
|
||||
top 0
|
||||
padding 0
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
.root
|
||||
position absolute
|
||||
display inline-block
|
||||
top 19px
|
||||
left 44px
|
||||
user-select none
|
||||
vertical-align middle
|
||||
width 300px
|
||||
|
||||
Reference in New Issue
Block a user