| 
					
				 | 
			
			
				@@ -0,0 +1,47 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const copydir = require('copy-dir'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const file = require('./src/file'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const deploy = require('./deploy.json'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// Constante 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+const OUT = './dist/'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// Creation dossier destination 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+file.makedir(OUT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// Séparation de chaque programme 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+deploy.programs.forEach(program => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // Création du dossier 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const distPath = OUT + program.name; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    file.makedir(distPath); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // Copie des fichiers commun 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    file.makedir(distPath + '/src'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    file.fs.readdirSync('./src').forEach(f => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!file.isDir('./src/' + f)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            file.fs.copyFile('./src/' + f, distPath + '/src/' + f, (err) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (err) throw err; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // Copie dossier propre à chaque programme 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    copydir('./src/' + program.name, distPath + '/src/' + program.name, { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        utimes: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        mode: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        cover: true 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, (err) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (err) throw err; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // Copie fichier main 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    file.fs.copyFile(program.main, distPath + '/main.js', (err) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (err) throw err; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // Copie package.json 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    const pckg = require('./package.json'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    pckg.scripts = program.scripts; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    pckg.version = program.version; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    program.rm_dependencies.forEach(elt => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        delete pckg.dependencies[elt]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let json = JSON.stringify(pckg, null, 4); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    json = json.replace(new RegExp(program.main, 'g'), 'main.js'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    file.put(distPath + '/package.json', json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}); 
			 |