clever-orm
Advanced tools
Comparing version 2.0.0-rc1 to 2.0.0-rc2
@@ -6,3 +6,3 @@ 'use strict'; | ||
module.exports = { | ||
model : require(path.resolve(path.join(__dirname, 'model'))) | ||
model: require(path.resolve(path.join(__dirname, 'model'))) | ||
}; |
@@ -23,3 +23,4 @@ 'use strict'; | ||
.catch(reject); | ||
}); | ||
} | ||
.bind(this)); | ||
} |
@@ -48,35 +48,3 @@ 'use strict'; | ||
if (associationOptions.lazy === true) { | ||
var lazilyLoadedIncludes; | ||
// Grab any of the includes for a find() before eager loading them | ||
sourceModel.on('beforeFind', function(findOptions, queryOptions, callback) { | ||
findOptions.include.every(function(include, includeIndex) { | ||
if (include.as === alias) { | ||
lazilyLoadedIncludes = include; | ||
findOptions.include.splice(includeIndex, 1); | ||
return false; | ||
} | ||
return true; | ||
}); | ||
callback(null, findOptions); | ||
}); | ||
// Call a finder method to lazy load the result | ||
sourceModel.on('afterFind', function(instance, findOptions, queryOptions, callback) { | ||
var association = instance.Class.entity.associations[alias] | ||
, accessor = association.accessors.get | ||
, targetFindOptions = {}; | ||
if (lazilyLoadedIncludes) { | ||
targetFindOptions.include = targetFindOptions.include || []; | ||
targetFindOptions.include.push(lazilyLoadedIncludes); | ||
} | ||
instance[accessor].apply(instance, [targetFindOptions, queryOptions]).then(function(){ | ||
callback(null); | ||
}) | ||
.catch(callback); | ||
}); | ||
loaders.lazy.load(sourceModel, assocType, targetModel, alias, association); | ||
} | ||
@@ -83,0 +51,0 @@ |
@@ -6,2 +6,3 @@ var injector = require('injector') | ||
, underscore = injector.getInstance('underscore') | ||
, inflect = injector.getInstance('inflect'); | ||
@@ -11,3 +12,5 @@ module.exports.load = function eagerLoad(findOptions) { | ||
for(var i = 0; i < findOptions.include.length; i++) { | ||
this.debug('eagerLoad(' + inspect(underscore.omit(findOptions.include[i], 'model', 'include')) + ', ' + inspect(findOptions.include[i].model.name) + ')'); | ||
if (this.debug.enabled) { | ||
this.debug('eagerLoad(' + inspect(underscore.omit(findOptions.include[i], 'model', 'include')) + ', ' + inspect(findOptions.include[i].model.name) + ')'); | ||
} | ||
@@ -42,3 +45,5 @@ if (findOptions.include[i].entity) { | ||
this.debug('afterEagerLoad(' + inspect(_include.as) + ', ' + inspect(_include.model.name) + ')'); | ||
if (this.debug.enabled) { | ||
this.debug('afterEagerLoad(' + inspect(_include.as) + ', ' + inspect(_include.model.name) + ')'); | ||
} | ||
@@ -45,0 +50,0 @@ if (!!csModel && !!model.entity[as]) { |
@@ -15,3 +15,2 @@ 'use strict'; | ||
destroy : require(path.resolve(path.join(__dirname, 'destroy'))) | ||
}; |
@@ -13,3 +13,3 @@ 'use strict'; | ||
eager | ||
.load.apply(this, [findOptions, model]); | ||
.afterLoad.apply(this, [findOptions, model]); | ||
@@ -16,0 +16,0 @@ return !callback ? model : callback( null, model ); |
@@ -8,3 +8,4 @@ 'use strict'; | ||
destroy : require(path.resolve(path.join(__dirname, 'destroy'))), | ||
hydrator : require(path.resolve(path.join(__dirname, 'hydrator'))) | ||
hydrator : require(path.resolve(path.join(__dirname, 'hydrator'))), | ||
setup : require(path.resolve(path.join(__dirname, 'setup'))) | ||
}; |
{ | ||
"name": "clever-orm", | ||
"description": "CleverStack ORM (SQL) Module", | ||
"version": "2.0.0-rc1", | ||
"version": "2.0.0-rc2", | ||
"main": "module.js", | ||
@@ -36,3 +36,3 @@ "author": { | ||
], | ||
"license": "BSD-2-Clause", | ||
"license": "MIT", | ||
"dependencies": { | ||
@@ -39,0 +39,0 @@ "mysql": "2.0.0-rc2", |
@@ -13,2 +13,3 @@ var path = require('path') | ||
wrapModel : ormLib.model.instance.hydrator, | ||
setup : ormLib.model.instance.setup, | ||
eagerLoad : ormLib.model.associations.loaders.eager.load, | ||
@@ -15,0 +16,0 @@ afterEagerLoad : ormLib.model.associations.loaders.eager.afterLoad, |
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Mixed license
License(Experimental) Package contains multiple licenses.
Found 1 instance in 1 package
85178
55
0
1906
1
54