nl_tokens: We . js object
pl_tokens: function We ( options ) { if ( ! options ) options = { } ; const we = this ; this . packageJSON = require ( '../package.json' ) ; this . config = options ; this . childProcesses = [ ] ; this . plugins = { } ; this . pluginPaths = [ ] ; this . pluginNames = [ ] ; // controllers this . controllers = { } ; this . projectPath = options . projectPath || process . cwd ( ) ; this . projectPackageJSON = require ( path . resolve ( this . projectPath , 'package.json' ) ) ; this . projectConfigFolder = options . projectConfigFolder || path . join ( this . projectPath , 'config' ) ; // start configs with static configs this . config = staticConfig ( this . projectPath , this ) ; // enviroment config prod | dev | test we . env = options . env || require ( './getEnv.js' ) ( ) ; // winston logger we . log = require ( './log' ) ( we ) ; // hooks and events we . hooks = new Hooks ( ) ; we . events = new EventEmiter ( ) ; // we.js events is controlled then we will use an max of 70 listenners in every event: we . events . setMaxListeners ( 70 ) ; // we.js sanitizer we . sanitizer = new Sanitizer ( this ) ; // The we.js router we . router = new Router ( this ) ; // we.js prototypes we . class = { Controller : require ( './class/Controller.js' ) , Theme : require ( './class/Theme.js' ) ( we ) , Plugin : require ( './class/Plugin.js' ) ( we ) } ; // database logic and models is avaible in we.db.models we . db = new Database ( this ) ; // - init database we . db . defaultConnection = we . db . connect ( we . env ) ; //set for more compatbility with sequelize docs we . db . sequelize = we . db . defaultConnection ; // plugin manager and plugins vars we . pluginManager = new PluginManager ( this ) ; switch ( we . config . bootstrapMode ) { <mask> 'install' : case 'installation' : case 'update' : we . hooks . on ( 'bootstrap' , [ we . bootstrapFunctions . checkDBConnection , we . bootstrapFunctions . loadCoreFeatures , we . bootstrapFunctions . loadPluginFeatures , we . bootstrapFunctions . initI18n , we . bootstrapFunctions . loadTemplateCache , we . bootstrapFunctions . instantiateModels , we . bootstrapFunctions . syncModels , we . bootstrapFunctions . loadControllers , we . bootstrapFunctions . installAndRegisterPlugins ] ) ; break ; case 'complete' : case 'full' : case 'test' : // full load, usefull for tests we . hooks . on ( 'bootstrap' , [ we . bootstrapFunctions . checkDBConnection , we . bootstrapFunctions . loadCoreFeatures , we . bootstrapFunctions . loadPluginFeatures , we . bootstrapFunctions . initI18n , we . bootstrapFunctions . loadTemplateCache , we . bootstrapFunctions . instantiateModels , we . bootstrapFunctions . syncModels , we . bootstrapFunctions . loadControllers , we . bootstrapFunctions . installAndRegisterPlugins , we . bootstrapFunctions . setExpressApp , we . bootstrapFunctions . passport , we . bootstrapFunctions . createDefaultFolders , we . bootstrapFunctions . registerAllViewTemplates , we . bootstrapFunctions . mergeRoutes , we . bootstrapFunctions . bindResources , we . bootstrapFunctions . bindRoutes ] ) ; break ; default : // defaults to load for run we . hooks . on ( 'bootstrap' , [ we . bootstrapFunctions . checkDBConnection , we . bootstrapFunctions . loadCoreFeatures , we . bootstrapFunctions . loadPluginFeatures , we . bootstrapFunctions . initI18n , we . bootstrapFunctions . loadTemplateCache , we . bootstrapFunctions . instantiateModels , we . bootstrapFunctions . syncModels , we . bootstrapFunctions . loadControllers , we . bootstrapFunctions . installAndRegisterPlugins , we . bootstrapFunctions . setExpressApp , we . bootstrapFunctions . passport , we . bootstrapFunctions . createDefaultFolders , we . bootstrapFunctions . registerAllViewTemplates , we . bootstrapFunctions . mergeRoutes , we . bootstrapFunctions . bindResources , we . bootstrapFunctions . bindRoutes ] ) ; } }