|  | @@ -325,8 +325,33 @@ function create_compiler(compilerFilesArray) {
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  function compile() {
 |  |  function compile() {
 | 
											
												
													
														|  |  	console.log('Compiling collected .st files to .js')
 |  |  	console.log('Compiling collected .st files to .js')
 | 
											
												
													
														|  | -	node_compile(defaults.compile, defaults.compiled_categories);
 |  | 
 | 
											
												
													
														|  | 
 |  | +	// import .st files
 | 
											
												
													
														|  | 
 |  | +	defaults.compile.forEach(function(stFile) {
 | 
											
												
													
														|  | 
 |  | +		if (/\.st/.test(stFile)) {
 | 
											
												
													
														|  | 
 |  | +			console.log("Importing: " + stFile);
 | 
											
												
													
														|  | 
 |  | +			var code = fs.readFileSync(stFile, "utf8");
 | 
											
												
													
														|  | 
 |  | +			defaults.smalltalk.Importer._new()._import_(code._stream());
 | 
											
												
													
														|  | 
 |  | +		}
 | 
											
												
													
														|  | 
 |  | +	});
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +	// export categories as .js
 | 
											
												
													
														|  | 
 |  | +	defaults.compiled_categories.forEach(function(category) {
 | 
											
												
													
														|  | 
 |  | +		var jsFile = category + defaults.suffix_used + '.js';
 | 
											
												
													
														|  | 
 |  | +		var jsFileDeploy = category + defaults.suffix_used + '.deploy.js';
 | 
											
												
													
														|  | 
 |  | +		console.log('Exporting ' + (defaults.deploy ? '(debug + deploy)' : '(debug)')
 | 
											
												
													
														|  | 
 |  | +			+ ' category ' + category + ' as ' + jsFile
 | 
											
												
													
														|  | 
 |  | +			+ (defaults.deploy ? ' and ' + jsFileDeploy : ''));
 | 
											
												
													
														|  | 
 |  | +		fs.writeFileSync(jsFile, defaults.smalltalk.Exporter._new()._exportPackage_(category));
 | 
											
												
													
														|  | 
 |  | +		if (defaults.deploy) {
 | 
											
												
													
														|  | 
 |  | +			fs.writeFileSync(jsFileDeploy, defaults.smalltalk.StrippedExporter._new()._exportPackage_(category));
 | 
											
												
													
														|  | 
 |  | +		}
 | 
											
												
													
														|  | 
 |  | +	});
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +	verify();
 | 
											
												
													
														|  | 
 |  | +}
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +function verify() {
 | 
											
												
													
														|  |  	console.log('Verifying if all .st files were compiled');
 |  |  	console.log('Verifying if all .st files were compiled');
 | 
											
												
													
														|  |  	map(defaults.compiled, function(file, callback) {
 |  |  	map(defaults.compiled, function(file, callback) {
 | 
											
												
													
														|  |  			path.exists(file, function(exists) {
 |  |  			path.exists(file, function(exists) {
 | 
											
										
											
												
													
														|  | @@ -344,31 +369,6 @@ function compile() {
 | 
											
												
													
														|  |  }
 |  |  }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -function node_compile(smalltalkFiles, categories) {
 |  | 
 | 
											
												
													
														|  | -	// the smalltalkFiles variable is a series of .st filenames to be imported
 |  | 
 | 
											
												
													
														|  | -	// the categories variable holds category names to be exported as aCategoryName.js.
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -	// import .st files
 |  | 
 | 
											
												
													
														|  | -	smalltalkFiles.forEach(function(val) {
 |  | 
 | 
											
												
													
														|  | -		if (/\.st/.test(val)) {
 |  | 
 | 
											
												
													
														|  | -			console.log("Importing: " + val);
 |  | 
 | 
											
												
													
														|  | -			var code = fs.readFileSync(val, "utf8");
 |  | 
 | 
											
												
													
														|  | -			defaults.smalltalk.Importer._new()._import_(code._stream());
 |  | 
 | 
											
												
													
														|  | -		}
 |  | 
 | 
											
												
													
														|  | -	});
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -	// export categories as .js
 |  | 
 | 
											
												
													
														|  | -	categories.forEach(function(val) {
 |  | 
 | 
											
												
													
														|  | -		console.log("Exporting " + (defaults.deploy ? "(debug + deploy)" : "(debug)") + " category "
 |  | 
 | 
											
												
													
														|  | -			+ val + " as " + val + defaults.suffix_used + ".js" + (defaults.deploy ? " and " + val + defaults.suffix_used + ".deploy.js" : ""));
 |  | 
 | 
											
												
													
														|  | -		fs.writeFileSync(val + defaults.suffix_used + ".js", defaults.smalltalk.Exporter._new()._exportPackage_(val));
 |  | 
 | 
											
												
													
														|  | -		if (defaults.deploy) {
 |  | 
 | 
											
												
													
														|  | -			fs.writeFileSync(val + defaults.suffix_used + ".deploy.js", defaults.smalltalk.StrippedExporter._new()._exportPackage_(val));
 |  | 
 | 
											
												
													
														|  | -		}
 |  | 
 | 
											
												
													
														|  | -	});
 |  | 
 | 
											
												
													
														|  | -}
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  | -
 |  | 
 | 
											
												
													
														|  |  function compose_js_files() {
 |  |  function compose_js_files() {
 | 
											
												
													
														|  |  	var program_files = [];
 |  |  	var program_files = [];
 | 
											
												
													
														|  |  
 |  |  
 |