@@ -198,7 +198,7 @@ function Framework() {
198198
199199 this . id = null ;
200200 this . version = 1810 ;
201- this . version_header = '1.8.1-46 ' ;
201+ this . version_header = '1.8.1-47 ' ;
202202
203203 var version = process . version . toString ( ) . replace ( 'v' , '' ) . replace ( / \. / g, '' ) ;
204204 if ( version [ 1 ] === '0' )
@@ -1734,6 +1734,10 @@ Framework.prototype.$load = function(types) {
17341734 }
17351735
17361736 self . _routesSort ( ) ;
1737+
1738+ if ( ! types || types . indexOf ( 'dependencies' ) !== - 1 )
1739+ self . _configure_dependencies ( ) ;
1740+
17371741 return self ;
17381742} ;
17391743
@@ -6260,6 +6264,106 @@ Framework.prototype.translator = function(language, text) {
62606264 return framework_internal . parseLocalization ( text , language ) ;
62616265} ;
62626266
6267+ Framework . prototype . _configure_dependencies = function ( content ) {
6268+
6269+ if ( content === undefined ) {
6270+ var filename = framework_utils . combine ( '/' , 'dependencies' ) ;
6271+ if ( fs . existsSync ( filename ) )
6272+ content = fs . readFileSync ( filename ) . toString ( ENCODING ) ;
6273+ else
6274+ content = '' ;
6275+ }
6276+
6277+ var self = this ;
6278+
6279+ if ( ! content )
6280+ return self ;
6281+
6282+ var arr = content . split ( '\n' ) ;
6283+
6284+ for ( var i = 0 , length = arr . length ; i < length ; i ++ ) {
6285+
6286+ var str = arr [ i ] ;
6287+
6288+ if ( str === '' || str [ 0 ] === '#' || str . substring ( 0 , 3 ) === '// ' )
6289+ continue ;
6290+
6291+ var index = str . indexOf ( ' :' ) ;
6292+ if ( index === - 1 ) {
6293+ index = str . indexOf ( '\t:' ) ;
6294+ if ( index === - 1 )
6295+ continue ;
6296+ }
6297+
6298+ var key = str . substring ( 0 , index ) . trim ( ) ;
6299+ var url = str . substring ( index + 2 ) . trim ( ) ;
6300+ var options = { } ;
6301+
6302+ index = url . indexOf ( '-->' ) ;
6303+
6304+ if ( index !== - 1 ) {
6305+ var opt = url . substring ( index + 3 ) . trim ( ) ;
6306+ if ( opt . isJSON ( ) )
6307+ options = JSON . parse ( opt ) ;
6308+ url = url . substring ( 0 , index ) . trim ( ) ;
6309+ }
6310+
6311+ switch ( key ) {
6312+ case 'package' :
6313+ case 'packages' :
6314+ case 'pkg' :
6315+ self . install ( 'package' , url , options ) ;
6316+ break ;
6317+ case 'module' :
6318+ case 'modules' :
6319+ self . install ( 'module' , url , options ) ;
6320+ break ;
6321+ case 'model' :
6322+ case 'models' :
6323+ self . install ( 'model' , url , options ) ;
6324+ break ;
6325+ case 'source' :
6326+ case 'sources' :
6327+ self . install ( 'source' , url , options ) ;
6328+ break ;
6329+ case 'controller' :
6330+ case 'controllers' :
6331+ self . install ( 'controller' , url , options ) ;
6332+ break ;
6333+ case 'controller' :
6334+ case 'controllers' :
6335+ self . install ( 'controller' , url , options ) ;
6336+ break ;
6337+ case 'view' :
6338+ case 'views' :
6339+ self . install ( 'view' , url , options ) ;
6340+ break ;
6341+ case 'version' :
6342+ case 'versions' :
6343+ self . install ( 'version' , url , options ) ;
6344+ break ;
6345+ case 'config' :
6346+ case 'configuration' :
6347+ self . install ( 'config' , url , options ) ;
6348+ break ;
6349+ case 'isomorphic' :
6350+ case 'isomorphics' :
6351+ self . install ( 'isomorphic' , url , options ) ;
6352+ break ;
6353+ case 'definition' :
6354+ case 'definitions' :
6355+ self . install ( 'definition' , url , options ) ;
6356+ break ;
6357+ case 'middleware' :
6358+ case 'middlewares' :
6359+ self . install ( 'middleware' , url , options ) ;
6360+ break ;
6361+ }
6362+ }
6363+
6364+ return self ;
6365+ } ;
6366+
62636367/**
62646368 * Versions configuration
62656369 * @private
@@ -6271,14 +6375,11 @@ Framework.prototype._configure_versions = function(content) {
62716375 var self = this ;
62726376
62736377 if ( content === undefined ) {
6274-
62756378 var filename = framework_utils . combine ( '/' , 'versions' ) ;
6276-
62776379 if ( fs . existsSync ( filename ) )
62786380 content = fs . readFileSync ( filename ) . toString ( ENCODING ) ;
62796381 else
62806382 content = '' ;
6281-
62826383 self . versions = null ;
62836384 }
62846385
0 commit comments