Update docs and version
This commit is contained in:
parent
711cc0c4f8
commit
d1e1d64912
@ -100,22 +100,6 @@ var d = {
|
||||
: str;
|
||||
},
|
||||
|
||||
/**
|
||||
* Sets the table prefix on the passed string
|
||||
*
|
||||
* @param {String} str
|
||||
* @return {String}
|
||||
* @private
|
||||
*/
|
||||
_prefix: function(str) {
|
||||
if (str.startsWith(d.prefix))
|
||||
{
|
||||
return str;
|
||||
}
|
||||
|
||||
return d.prefix + str;
|
||||
},
|
||||
|
||||
/**
|
||||
* Set the limit clause
|
||||
|
||||
@ -135,32 +119,6 @@ var d = {
|
||||
return sql;
|
||||
},
|
||||
|
||||
/**
|
||||
* Prefixes a table if it is not already prefixed
|
||||
*
|
||||
* @param {String} table
|
||||
* @return {String}
|
||||
*/
|
||||
prefixTable: function(table) {
|
||||
if (d.tablePrefix)
|
||||
{
|
||||
// Split identifier by period, will split into:
|
||||
// database.schema.table OR
|
||||
// schema.table OR
|
||||
// database.table OR
|
||||
// table
|
||||
var idents = table.split('.', table);
|
||||
var segments = idents.length;
|
||||
|
||||
// Add the database prefix
|
||||
idents[segments - 1] = d._prefix(idents[segments - 1]);
|
||||
|
||||
table = idents.join('.');
|
||||
}
|
||||
|
||||
return table;
|
||||
},
|
||||
|
||||
/**
|
||||
* Quote database table name, and set prefix
|
||||
*
|
||||
@ -168,8 +126,6 @@ var d = {
|
||||
* @return {String}
|
||||
*/
|
||||
quoteTable: function(table) {
|
||||
table = d.prefixTable(table);
|
||||
|
||||
// Quote after prefix
|
||||
return d.quoteIdentifiers(table);
|
||||
},
|
||||
|
@ -138,6 +138,11 @@ types.forEach(function (t) {
|
||||
* @return {Boolean}
|
||||
*/
|
||||
h['is' + t] = function (o) {
|
||||
if (t.toLowerCase() === 'infinite')
|
||||
{
|
||||
t = 'infinity';
|
||||
}
|
||||
|
||||
return h.type(o) === t.toLowerCase();
|
||||
};
|
||||
});
|
||||
|
@ -955,7 +955,7 @@
|
||||
<ul class="dummy">
|
||||
<li>
|
||||
<a href="query-builder.js.html">query-builder.js</a>,
|
||||
<a href="query-builder.js.html#sunlight-1-line-861">line 861</a>
|
||||
<a href="query-builder.js.html#sunlight-1-line-862">line 862</a>
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -1154,7 +1154,7 @@
|
||||
<ul class="dummy">
|
||||
<li>
|
||||
<a href="query-builder.js.html">query-builder.js</a>,
|
||||
<a href="query-builder.js.html#sunlight-1-line-839">line 839</a>
|
||||
<a href="query-builder.js.html#sunlight-1-line-840">line 840</a>
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
@ -1546,7 +1546,7 @@
|
||||
<ul class="dummy">
|
||||
<li>
|
||||
<a href="query-builder.js.html">query-builder.js</a>,
|
||||
<a href="query-builder.js.html#sunlight-1-line-850">line 850</a>
|
||||
<a href="query-builder.js.html#sunlight-1-line-851">line 851</a>
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
|
@ -104,7 +104,7 @@ nodeQuery.init = function (driverType, connObject, connLib) {
|
||||
}
|
||||
});
|
||||
|
||||
return new qb(require(paths.driver), require(paths.adapter)(connObject));
|
||||
return qb(require(paths.driver), require(paths.adapter)(connObject));
|
||||
};
|
||||
|
||||
|
||||
|
@ -238,10 +238,6 @@ var QueryBuilder = function(driver, adapter) {
|
||||
{
|
||||
obj = args.$key;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new Error("Invalid arguments passed");
|
||||
}
|
||||
|
||||
Object.keys(obj).forEach(function(k) {
|
||||
// If a single value for the return
|
||||
@ -267,8 +263,6 @@ var QueryBuilder = function(driver, adapter) {
|
||||
_p.mixedSet('whereValues', 'value', args.key, args.val);
|
||||
},
|
||||
where: function(key, val, conj) {
|
||||
conj = conj || 'AND';
|
||||
|
||||
// Normalize key and value and insert into state.whereMap
|
||||
_p.whereMixedSet(key, val);
|
||||
|
||||
@ -300,6 +294,9 @@ var QueryBuilder = function(driver, adapter) {
|
||||
}
|
||||
|
||||
_p.appendMap(conj, item, 'where');
|
||||
|
||||
// Clear the where Map
|
||||
state.whereMap = {};
|
||||
});
|
||||
},
|
||||
having: function(/*key, val, conj*/) {
|
||||
@ -326,6 +323,9 @@ var QueryBuilder = function(driver, adapter) {
|
||||
string: item
|
||||
});
|
||||
});
|
||||
|
||||
// Clear the where Map
|
||||
state.whereMap = {};
|
||||
},
|
||||
whereIn: function(/*key, val, inClause, conj*/) {
|
||||
var args = getArgs('key:string, val:array, inClause:string, conj:string', arguments);
|
||||
@ -382,7 +382,7 @@ var QueryBuilder = function(driver, adapter) {
|
||||
orderArray: [],
|
||||
groupArray: [],
|
||||
havingMap: [],
|
||||
whereMap: [],
|
||||
whereMap: {},
|
||||
|
||||
// Partials
|
||||
selectString: '',
|
||||
@ -759,7 +759,7 @@ var QueryBuilder = function(driver, adapter) {
|
||||
* @return this
|
||||
*/
|
||||
this.groupStart = function() {
|
||||
var conj = (state.queryMap.length < 1) ? ' WHERE ' : ' ';
|
||||
var conj = (state.queryMap.length < 1) ? ' WHERE ' : ' AND ';
|
||||
_p.appendMap(conj, '(', 'groupStart');
|
||||
|
||||
return this;
|
||||
@ -895,13 +895,14 @@ var QueryBuilder = function(driver, adapter) {
|
||||
* @param {Boolean} [reset=true] - Whether to reset the query builder so another query can be built
|
||||
* @return String
|
||||
*/
|
||||
this.getCompiledSelect = function(table, reset) {
|
||||
if (table)
|
||||
this.getCompiledSelect = function(/*table, reset*/) {
|
||||
var args = getArgs('[table]:string, [reset]:boolean', arguments);
|
||||
if (args.table)
|
||||
{
|
||||
this.from(table);
|
||||
this.from(args.table);
|
||||
}
|
||||
|
||||
return _p.getCompile('get', table, reset);
|
||||
return _p.getCompile('get', args.table, args.reset);
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "ci-node-query",
|
||||
"version": "0.0.3",
|
||||
"version": "0.0.4",
|
||||
"description": "A query builder for node based on the one in CodeIgniter",
|
||||
"author": "Timothy J Warren <tim@timshomepage.net>",
|
||||
"engines": {
|
||||
|
Loading…
Reference in New Issue
Block a user