@@ -4,33 +4,38 @@ const exec = util.promisify(require("child_process").exec);
44const gitRemoteOriginUrl = require ( "git-remote-origin-url" ) ;
55const open = require ( "open" ) ;
66
7+ function getBrowser ( ) {
8+ const browsers = [
9+ { id : "chrome" , value : "chrome" } ,
10+ { id : "firefox" , value : "firefox" } ,
11+ { id : "edge" , value : "msedge" } ,
12+ { id : "safari" , value : "safari" } ,
13+ { id : "ie" , value : "iexplore" } ,
14+ { id : "opera" , value : "opera" }
15+ ] ;
16+
17+ let [ , , browser = "" ] = process . argv ;
18+
19+ if ( browser ) {
20+ browser = browsers . find ( ( { id } ) => id == browser . toLowerCase ( ) ) ;
21+ browser = browser ? browser . value : "" ;
22+ }
23+
24+ return browser ;
25+ }
26+
727( async ( ) => {
828 try {
929 const { stdout, stderr } = await exec ( "git rev-parse --abbrev-ref HEAD" ) ;
1030 if ( stderr ) {
1131 throw stderr ;
1232 }
13-
14- const browsers = [
15- { id : "chrome" , value : "chrome" } ,
16- { id : "firefox" , value : "firefox" } ,
17- { id : "edge" , value : "msedge" } ,
18- { id : "safari" , value : "safari" } ,
19- { id : "ie" , value : "iexplore" } ,
20- { id : "opera" , value : "opera" }
21- ] ;
22-
2333 const branchName = stdout . trim ( ) ;
2434 const remoteOriginUrl = await gitRemoteOriginUrl ( ) ;
2535 const newPullRequestUrl = `https://${ remoteOriginUrl . replace ( "git@" , "" ) . replace ( ":" , "/" ) . replace ( / \. g i t $ / , "" ) } /pull/new/${ branchName } ` ;
26- let [ , , browser = "" ] = process . argv ;
27-
28- if ( browser ) {
29- browser = browsers . find ( ( { id } ) => id == browser . toLowerCase ( ) ) ;
30- browser = browser ? browser . value : "" ;
31- }
36+ const browser = getBrowser ( ) ;
3237
33- await open ( newPullRequestUrl , { app : browser } ) ;
38+ await open ( newPullRequestUrl , { app : browser } ) ;
3439 } catch ( error ) {
3540 throw error ;
3641 }
0 commit comments