Comparing version 0.2.0-alpha.2 to 1.0.0-alpha.1
@@ -17,3 +17,2 @@ #!/usr/bin/env node | ||
const assert = require('assert'); | ||
const util = require('util'); | ||
@@ -70,4 +69,4 @@ const sqb = require('sqb'); | ||
const db = sqb.pool(cfg); | ||
const exporter = new uniqorm.MetadataExporter(db, { | ||
const pool = sqb.pool(cfg); | ||
const exporter = new uniqorm.MetadataExporter(pool, { | ||
includeSchemas: includeSchemas, | ||
@@ -79,3 +78,3 @@ includeTables: includeTables, | ||
if (process.env.DEBUG) | ||
db.on('execute', function(q) { | ||
pool.on('execute', function(q) { | ||
console.log(q.sql); | ||
@@ -129,2 +128,4 @@ }); | ||
logError('Failed', err); | ||
}).then(function() { | ||
pool.close(true); | ||
}); | ||
@@ -131,0 +132,0 @@ |
@@ -9,21 +9,24 @@ /* UNIQORM | ||
/* Internal module dependencies. */ | ||
const Uniqorm = require('./uniqorm'); | ||
const Model = require('./model'); | ||
const Field = require('./field'); | ||
const MetadataExporter = require('./metadata-exporter'); | ||
/** | ||
* Module dependencies. | ||
* @private | ||
*/ | ||
const Uniqorm = require('./Uniqorm'); | ||
const Model = require('./Model'); | ||
const Field = require('./Field'); | ||
const MetadataExporter = require('./MetadataExporter'); | ||
// Register field classes | ||
Field.register(require('./fields/field-integer')); | ||
Field.register(require('./fields/field-bigint')); | ||
Field.register(require('./fields/field-float')); | ||
Field.register(require('./fields/field-number')); | ||
Field.register(require('./fields/field-varchar')); | ||
Field.register(require('./fields/field-char')); | ||
Field.register(require('./fields/field-date')); | ||
Field.register(require('./fields/field-timestamp')); | ||
Field.register(require('./fields/field-time')); | ||
Field.register(require('./fields/field-clob')); | ||
Field.register(require('./fields/field-blob')); | ||
Field.register(require('./fields/field-buffer')); | ||
Field.register(require('./fields/INTEGER')); | ||
Field.register(require('./fields/BIGINT')); | ||
Field.register(require('./fields/FLOAT')); | ||
Field.register(require('./fields/NUMBER')); | ||
Field.register(require('./fields/VARCHAR')); | ||
Field.register(require('./fields/CHAR')); | ||
Field.register(require('./fields/DATE')); | ||
Field.register(require('./fields/TIMESTAMP')); | ||
Field.register(require('./fields/TIME')); | ||
Field.register(require('./fields/CLOB')); | ||
Field.register(require('./fields/BLOB')); | ||
Field.register(require('./fields/BUFFER')); | ||
@@ -30,0 +33,0 @@ module.exports = Uniqorm; |
@@ -9,49 +9,54 @@ /* UNIQORM | ||
/* Internal module dependencies. */ | ||
/** | ||
* Module dependencies. | ||
* @private | ||
*/ | ||
const Relation = require('./relation'); | ||
/* External module dependencies. */ | ||
/** | ||
* Expose `Relation`. | ||
*/ | ||
module.exports = RelationO2O; | ||
/** | ||
* @class | ||
* @public | ||
* | ||
* @constructor | ||
*/ | ||
class RelationO2O extends Relation { | ||
function RelationO2O() { | ||
Relation.apply(this, arguments); | ||
/*const fields = new Proxy({}, { | ||
get: function(obj, key) { | ||
return typeof key === 'string' ? obj[key.toUpperCase()] : obj[key]; | ||
}, | ||
set: function(obj, key, value) { | ||
if (typeof key === 'string') | ||
obj[key.toUpperCase()] = value; | ||
else obj[key] = value; | ||
return true; | ||
} | ||
}); | ||
Object.defineProperty(this, 'fields', { | ||
value: fields, | ||
configurable: false, | ||
writable: false | ||
});*/ | ||
} | ||
constructor(...args) { | ||
super(...args); | ||
const fields = new Proxy({}, { | ||
get: function(obj, key) { | ||
return typeof key === 'string' ? obj[key.toUpperCase()] : obj[key]; | ||
}, | ||
set: function(obj, key, value) { | ||
if (typeof key === 'string') | ||
obj[key.toUpperCase()] = value; | ||
else obj[key] = value; | ||
return true; | ||
} | ||
}); | ||
Object.defineProperty(this, 'fields', { | ||
value: fields, | ||
configurable: false, | ||
writable: false | ||
}); | ||
} | ||
RelationO2O.prototype = { | ||
get type() { | ||
return '1:1'; | ||
} | ||
}; | ||
setFields(...args) { | ||
if (args.length) { | ||
args.forEach(item => { | ||
const a = String(item).split(' '); | ||
this.fields[a[1] || a[0]] = a[0]; | ||
}); | ||
} | ||
return this; | ||
RelationO2O.prototype.setFields(); | ||
{ | ||
/*if (args.length) { | ||
args.forEach(item => { | ||
const a = String(item).split(' '); | ||
this.fields[a[1] || a[0]] = a[0]; | ||
}); | ||
} | ||
return this;*/ | ||
} | ||
module.exports = RelationO2O; | ||
@@ -10,21 +10,26 @@ /* UNIQORM | ||
/** | ||
* @class | ||
* @public | ||
* Expose `Relation`. | ||
*/ | ||
module.exports = Relation; | ||
class Relation { | ||
/** | ||
* | ||
* @param {Model} model | ||
* @param {String} field | ||
* @param {Model} foreignModel | ||
* @param {String} foreignKey | ||
* @constructor | ||
*/ | ||
function Relation(model, field, foreignModel, foreignKey) { | ||
this.model = model; | ||
this.field = field; | ||
this.foreignModel = foreignModel; | ||
this.foreignKey = foreignKey; | ||
} | ||
constructor(model, field, foreignModel, foreignKey) { | ||
this.model = model; | ||
this.field = field; | ||
this.foreignModel = foreignModel; | ||
this.foreignKey = foreignKey; | ||
} | ||
Relation.prototype = { | ||
get foreignSchema() { | ||
return this.foreignModel.schema.name; | ||
} | ||
} | ||
module.exports = Relation; | ||
}; | ||
Relation.prototype.constructor = Relation; |
{ | ||
"name": "uniqorm", | ||
"description": "Easy to use, multi-dialect ORM framework for JavaScript", | ||
"version": "0.2.0-alpha.2", | ||
"version": "1.0.0-alpha.1", | ||
"author": "Panates Ltd.", | ||
@@ -23,3 +23,3 @@ "contributors": [ | ||
"dependencies": { | ||
"chalk": "^2.2.0", | ||
"chalk": "^2.3.0", | ||
"commander": "^2.11.0", | ||
@@ -29,7 +29,8 @@ "errorex": "^1.0.6", | ||
"putil-promisify": "^1.1.0", | ||
"putil-waterfall": "^1.1.0" | ||
"putil-waterfall": "^1.1.2", | ||
"sqb": "^1.0.0-beta.4" | ||
}, | ||
"devDependencies": { | ||
"babel-eslint": "^8.0.1", | ||
"eslint": "^4.9.0", | ||
"babel-eslint": "^8.0.2", | ||
"eslint": "^4.11.0", | ||
"eslint-config-google": "^0.9.1", | ||
@@ -39,5 +40,3 @@ "istanbul": "^0.4.5", | ||
}, | ||
"peerDependencies": { | ||
"sqb": "^0.9.1" | ||
}, | ||
"peerDependencies": {}, | ||
"engines": { | ||
@@ -44,0 +43,0 @@ "node": ">= 4.0" |
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
57962
2094
1
+ Addedsqb@^1.0.0-beta.4
+ Addedlightning-pool@1.2.0(transitive)
+ Addedsqb@1.4.2(transitive)
- Removedsqb@0.9.4(transitive)
Updatedchalk@^2.3.0
Updatedputil-waterfall@^1.1.2