mirror of
				https://github.com/HabitRPG/habitica.git
				synced 2025-10-30 20:52:29 +01:00 
			
		
		
		
	* add files for new client side and reorg gulp tasks * add deps and script for new client * fix webpack paths so that building works * fix static assets not copied into prod build * fix linting * add eslint deps and re-enable it in webpack * add most missing deps for client side and split .babelrc for client * reorganize .eslintignore * update client tests paths and .gitignore * uncomment code * client: move App component * client: update oaths in App component * fix client tests and add more deps * add client side tests to npm test * fix typo in depencency name * update more deps * fix karma.conf.js and upgrade phantomjs * fix dep and move karma.conf to subdirectory * update karma.conf.js position in Gruntfile * try downgrading phantomjs * Fixup client tests (#8032) * Use phantom 2 * fix(tests): Fix refresher test * gitignore translation mock * Update karma version * disable e2e tests for new client from build * write vue templates with pug * add basic routing * remove unnecessary Function.bind shim * remove unused dependency
		
			
				
	
	
		
			48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import mongoose from 'mongoose';
 | |
| import autoinc  from 'mongoose-id-autoinc';
 | |
| import logger  from '../website/server/libs/logger';
 | |
| import nconf    from 'nconf';
 | |
| import repl     from 'repl';
 | |
| import gulp     from 'gulp';
 | |
| 
 | |
| // Add additional properties to the repl's context
 | |
| let improveRepl = (context) => {
 | |
| 
 | |
|   // Let "exit" and "quit" terminate the console
 | |
|   ['exit', 'quit'].forEach((term) => {
 | |
|     Object.defineProperty(context, term, { get () { process.exit(); }});
 | |
|   });
 | |
| 
 | |
|   // "clear" clears the screen
 | |
|   Object.defineProperty(context, 'clear', { get () {
 | |
|     process.stdout.write('\u001B[2J\u001B[0;0f');
 | |
|   }});
 | |
| 
 | |
|   context.Challenge = require('../website/server/models/challenge').model;
 | |
|   context.Group     = require('../website/server/models/group').model;
 | |
|   context.User      = require('../website/server/models/user').model;
 | |
| 
 | |
|   var isProd = nconf.get('NODE_ENV') === 'production';
 | |
|   var mongooseOptions = !isProd ? {} : {
 | |
|     replset: { socketOptions: { keepAlive: 1, connectTimeoutMS: 30000 } },
 | |
|     server: { socketOptions: { keepAlive: 1, connectTimeoutMS: 30000 } },
 | |
|   };
 | |
|   autoinc.init(
 | |
|     mongoose.connect(
 | |
|       nconf.get('NODE_DB_URI'),
 | |
|       mongooseOptions,
 | |
|       function (err) {
 | |
|         if (err) throw err;
 | |
|         logger.info('Connected with Mongoose');
 | |
|       }
 | |
|     )
 | |
|   );
 | |
| 
 | |
| };
 | |
| 
 | |
| gulp.task('console', (cb) => {
 | |
|   improveRepl(repl.start({
 | |
|     prompt: 'Habitica > ',
 | |
|   }).context);
 | |
| });
 |