@@ -5,29 +5,29 @@ import etch from 'etch'
5
5
import { toView , Toolbar , Button , Icon , makeicon , Etch , Raw } from './etch'
6
6
import { TextEditor , CompositeDisposable } from 'atom'
7
7
8
- export function showBasicModal ( queries ) {
8
+ export default function showBasicModal ( queries ) {
9
9
return new Promise ( ( resolve , reject ) => {
10
- subs = new CompositeDisposable ( )
10
+ const subs = new CompositeDisposable ( )
11
11
12
- _resolve = ( ...args ) => {
12
+ const _resolve = ( ...args ) => {
13
13
panel . destroy ( )
14
14
subs . dispose ( )
15
15
resolve ( ...args )
16
16
}
17
- _reject = ( ...args ) => {
17
+ const _reject = ( ...args ) => {
18
18
panel . destroy ( )
19
19
subs . dispose ( )
20
20
reject ( ...args )
21
21
}
22
- let view = new BasicModalView ( queries , _resolve , _reject )
22
+ const view = new BasicModalView ( queries , _resolve , _reject )
23
23
24
24
subs . add ( atom . commands . add ( '.basic-modal .editor' , {
25
25
'basic-modal:confirm' : ( ) => view . confirm ( )
26
26
} ) )
27
27
subs . add ( atom . commands . add ( '.basic-modal .editor' , {
28
28
'basic-modal:cancel' : ( ) => view . cancel ( )
29
29
} ) )
30
- let panel = atom . workspace . addModalPanel ( {
30
+ const panel = atom . workspace . addModalPanel ( {
31
31
item : view ,
32
32
autoFocus : true
33
33
} )
@@ -44,24 +44,24 @@ class BasicModalView {
44
44
this . reject = reject
45
45
this . models = { }
46
46
this . queries = queries
47
- for ( let query of this . queries ) {
47
+ this . queries . forEach ( query => {
48
48
this . models [ query . name ] = new TextEditor ( {
49
49
mini : true ,
50
50
placeholderText : query . placeholder || ''
51
51
} )
52
- if ( query . value ) {
53
- this . models [ query . name ] . setText ( query . value )
52
+ if ( query . defaultText ) {
53
+ this . models [ query . name ] . setText ( query . defaultText )
54
54
}
55
- }
55
+ } )
56
56
57
57
etch . initialize ( this )
58
58
}
59
59
60
60
confirm ( ) {
61
- let ret = { }
62
- for ( let query of this . queries ) {
61
+ const ret = { }
62
+ this . queries . forEach ( query => {
63
63
ret [ query . name ] = this . models [ query . name ] . getText ( )
64
- }
64
+ } )
65
65
this . resolve ( ret )
66
66
}
67
67
@@ -72,34 +72,35 @@ class BasicModalView {
72
72
update ( ) { }
73
73
74
74
render ( ) {
75
- let queryViews = this . queries . map ( query => {
75
+ const queryViews = this . queries . map ( query => {
76
76
return < div className = "flex-table row" >
77
77
< div className = "flex-row" >
78
78
{ query . name || '' }
79
79
</ div >
80
80
< div className = "flex-row second" >
81
81
{ toView ( this . models [ query . name ] . element ) }
82
+ { query . message || '' }
82
83
</ div >
83
84
</ div >
84
85
} )
85
86
return < div className = "basic-modal flex-table-container" >
86
- { queryViews }
87
- < div className = "confirm-cancel flex-table" >
88
- < div className = "flex-row" >
89
- < Button
90
- className = "btn-success"
91
- onclick = { ( ) => this . confirm ( ) } >
92
- Confirm
93
- </ Button >
94
- </ div >
95
- < div className = "flex-row" >
96
- < Button
97
- className = "btn-error"
98
- onclick = { ( ) => this . cancel ( ) } >
99
- Cancel
100
- </ Button >
101
- </ div >
102
- </ div >
103
- </ div >
87
+ { queryViews }
88
+ < div className = "confirm-cancel flex-table" >
89
+ < div className = "flex-row" >
90
+ < Button
91
+ className = "btn-success"
92
+ onclick = { ( ) => this . confirm ( ) } >
93
+ Confirm
94
+ </ Button >
95
+ </ div >
96
+ < div className = "flex-row" >
97
+ < Button
98
+ className = "btn-error"
99
+ onclick = { ( ) => this . cancel ( ) } >
100
+ Cancel
101
+ </ Button >
102
+ </ div >
103
+ </ div >
104
+ </ div >
104
105
}
105
106
}
0 commit comments