@@ -5,6 +5,7 @@ var ospath = require('ospath')
55var path = require ( 'path' )
66var download = require ( 'electron-download' )
77var gulp = require ( 'gulp' )
8+ var babel = require ( 'gulp-babel' )
89var gutil = require ( 'gulp-util' )
910var latest = require ( 'github-latest-release' )
1011var extract = require ( 'extract-zip' )
@@ -77,7 +78,7 @@ gulp.task('electron:build:windows', _args.v ? [] : ['electron:build:prepare', 'e
7778 platform : 'win32' ,
7879 version : version ,
7980 arch : 'x64' ,
80- out : path . join ( process . cwd ( ) , '/release' , pkg . name + '-win32 -' + pkg . version ) ,
81+ out : path . join ( process . cwd ( ) , '/release' , pkg . name + '-windows -' + pkg . version ) ,
8182 icon : './static/res/icon.ico' ,
8283 asar : true
8384 }
@@ -91,17 +92,57 @@ gulp.task('electron:build:windows', _args.v ? [] : ['electron:build:prepare', 'e
9192 } )
9293} )
9394
94- gulp . task ( 'electron:build:prepare' , function ( ) {
95+ function createResolver ( dir , base ) {
96+ dir = path . relative ( base , path . resolve ( base , dir ) )
97+ return function resolve ( mod , file ) {
98+ if ( mod . indexOf ( '#' ) !== 0 ) return mod
99+ var localModuleName = mod . split ( '#' ) [ 1 ]
100+ var modPath = path . join ( dir , localModuleName )
101+ var d = path . dirname ( file )
102+ var rel = path . relative ( base , d )
103+ var localModule = path . relative ( rel , modPath )
104+
105+ // hack
106+ if ( ! localModule . startsWith ( '.' ) ) localModule = './' + localModule
107+ return localModule
108+ }
109+ }
110+
111+ var r = createResolver ( './src/_local_modules' , '/var/folders/f0/3bf0bqj54fl6b3g0__nymw_m0000gn/T/obsidian/' )
112+ var m = r ( '#keydb' , '/var/folders/f0/3bf0bqj54fl6b3g0__nymw_m0000gn/T/obsidian/src/ui/sidebar/sidebar.react.js' )
113+ console . log ( m )
114+
115+ var m2 = r ( '#flux' , '/var/folders/f0/3bf0bqj54fl6b3g0__nymw_m0000gn/T/obsidian/src/startup.js' )
116+ console . log ( m2 )
117+
118+ gulp . task ( 'electron:build:prepare' , function ( done ) {
95119 var buildDir = path . join ( os . tmpdir ( ) , pkg . name )
96120 fs . emptyDirSync ( buildDir )
97- // fs.emptyDirSync(path.join(process.cwd(), '/release'))
121+ console . log ( buildDir )
122+
123+ var opts = require ( '../src/babel/options' )
124+ delete opts . only
125+ delete opts . cache
126+ delete opts . extensions
127+
128+ opts . resolveModuleSource = createResolver ( './src/_local_modules' , buildDir )
98129
99130 fs . copySync ( './package.json' , path . join ( buildDir , 'package.json' ) )
100131 fs . copySync ( './src' , path . join ( buildDir , 'src' ) )
101132 fs . copySync ( './static' , path . join ( buildDir , 'static' ) )
102133 Object . keys ( pkg . dependencies ) . forEach ( function ( dep ) {
103134 fs . copySync ( path . join ( './node_modules' , dep ) , path . join ( buildDir , 'node_modules' , dep ) )
104135 } )
136+
137+ gulp . src ( path . join ( buildDir , 'src' ) + '/**/*.js' )
138+ . pipe ( babel ( opts ) )
139+ . pipe ( gulp . dest ( path . join ( buildDir , 'src-babel' ) ) )
140+ . on ( 'end' , function ( ) {
141+ fs . copy ( path . join ( buildDir , 'src-babel' ) , path . join ( buildDir , 'src' ) , { clobber : true } , function ( err ) {
142+ if ( err ) console . error ( err )
143+ fs . remove ( path . join ( buildDir , 'src-babel' ) , done )
144+ } )
145+ } )
105146} )
106147
107148gulp . task ( 'electron:download' , _args . v ? [ ] : [ 'electron:latest' ] , function ( done ) {
0 commit comments