11"use strict" ;
22var Editor = require ( '../../atom/editor' ) ;
3- var parser_1 = require ( './parser ' ) ;
4- var EditorAction = {
3+ var action_helpers_1 = require ( './action-helpers ' ) ;
4+ var Type = {
55 open : 'open' ,
66 set : 'set' ,
7- insert : 'insert'
7+ insert : 'insert' ,
8+ openConsole : 'openConsole'
89} ;
9- function getCommand ( actionString ) {
10- var command = actionString . substring ( 0 , actionString . indexOf ( '(' ) ) ;
11- if ( ! command . length ) {
12- console . log ( 'Error loading editor action command ' , actionString ) ;
13- }
14- else {
15- return command ;
16- }
17- }
18- exports . getCommand = getCommand ;
19- function getParams ( actionString ) {
20- var command = getCommand ( actionString ) ;
21- var params = actionString . substring ( command . length + 1 , actionString . length - 1 ) ;
22- if ( ! params . length ) {
23- console . error ( 'Error loading editor action params ' , actionString ) ;
24- return null ;
25- }
26- var paramsList = parser_1 . parseParams . getParams ( params ) ;
27- return paramsList ;
28- }
29- exports . getParams = getParams ;
30- function createObjectFromKeyValString ( string ) {
31- var keyValList = string . split ( / [: ,] / ) ;
32- var obj = { } ;
33- for ( var i = 0 ; i < keyValList . length ; i += 2 ) {
34- var key = keyValList [ i ] . trim ( ) ;
35- var val = keyValList [ i + 1 ] . trim ( ) ;
36- if ( ! val . match ( / ^ [ " ' ] .+ [ " ' ] $ / ) ) {
37- val = JSON . parse ( val ) ;
38- }
39- else {
40- val = val . substring ( 1 , val . length - 1 ) ;
41- }
42- obj [ key ] = val ;
43- }
44- return obj ;
45- }
46- function getOptions ( paramString ) {
47- var hasOptions = paramString . match ( / \{ ( .+ ) ? \} / ) ;
48- var options = { } ;
49- var param = paramString ;
50- if ( ! ! hasOptions ) {
51- options = createObjectFromKeyValString ( hasOptions [ 1 ] ) ;
52- param = paramString . split ( / , ? { / ) [ 0 ] ;
53- }
54- return {
55- options : options ,
56- param : param
57- } ;
58- }
59- exports . getOptions = getOptions ;
6010function editorActions ( actionString ) {
6111 return new Promise ( function ( resolve , reject ) {
62- var command = getCommand ( actionString ) ;
63- var params = getParams ( actionString ) ;
12+ var command = action_helpers_1 . getCommand ( actionString ) ;
13+ var params = action_helpers_1 . getParams ( actionString ) ;
6414 switch ( command ) {
65- case EditorAction . open :
66- var obj = getOptions ( params [ 0 ] ) ;
15+ case Type . open :
16+ var obj = action_helpers_1 . getOptions ( params [ 0 ] ) ;
6717 var file = obj . param ;
6818 var options = obj . options ;
6919 if ( params . length === 1 ) {
@@ -73,7 +23,7 @@ function editorActions(actionString) {
7323 } , 100 ) ;
7424 }
7525 break ;
76- case EditorAction . set :
26+ case Type . set :
7727 if ( params . length === 1 ) {
7828 var content_1 = params [ 0 ] ;
7929 setTimeout ( function ( ) {
@@ -82,7 +32,7 @@ function editorActions(actionString) {
8232 } ) ;
8333 }
8434 break ;
85- case EditorAction . insert :
35+ case Type . insert :
8636 if ( params . length === 1 ) {
8737 var content_2 = params [ 0 ] ;
8838 setTimeout ( function ( ) {
@@ -91,6 +41,14 @@ function editorActions(actionString) {
9141 } ) ;
9242 }
9343 break ;
44+ case Type . openConsole :
45+ if ( params . length === 0 ) {
46+ setTimeout ( function ( ) {
47+ Editor . openDevTools ( ) ;
48+ resolve ( true ) ;
49+ } ) ;
50+ }
51+ break ;
9452 default :
9553 console . log ( 'Invalid editor action command' ) ;
9654 reject ( false ) ;
@@ -100,7 +58,3 @@ function editorActions(actionString) {
10058 } ) ;
10159}
10260exports . editorActions = editorActions ;
103- function openFolder ( ) {
104- atom . open ( ) ;
105- }
106- exports . openFolder = openFolder ;
0 commit comments