alasql 1.7.5 → 1.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
- //! AlaSQL v1.7.4-develop-89075a50undefined | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
1
+ //! AlaSQL v1.7.6 | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 1.7.4-develop-89075a50undefined
4
+ @version 1.7.6
5
5
 
6
6
  AlaSQL - JavaScript SQL database
7
7
  © 2014-2016 Andrey Gershun & Mathias Rangel Wulff
@@ -1,2 +1,2 @@
1
- //! AlaSQL v1.7.4-develop-89075a50undefined | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
1
+ //! AlaSQL v1.7.6 | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
2
2
  !function(r,e){"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?module.exports=e():r.alasql=e()}(this,function(){function i(r,e,o){"function"==typeof(e=e||[])&&(scope=o,o=e,e=[]),"object"!=typeof e&&(e=[e]);var t=i.lastid++;i.buffer[t]=o,i.webworker.postMessage({id:t,sql:r,params:e})}var a;if(i.options={},i.options.progress=function(){},isArray=function(r){return"[object Array]"===Object.prototype.toString.call(r)},i.promise=function(){throw new Error("Please include a Promise/A+ library")},"undefined"!=typeof Promise&&(a=function(r,e,n,s){return new Promise(function(o,t){i(r,e,function(r,e){e?t(e):(n&&s&&!1!==i.options.progress&&i.options.progress(n,s),o(r))})})},i.promise=function(r,e){if("undefined"==typeof Promise)throw new Error("Please include a Promise/A+ library");if("string"==typeof r)return a(r,e);if(!isArray(r)||r.length<1||void 0!==e)throw new Error("Error in .promise parameters");var o=r;if(!(o.length<1)){for(var t,n,s=[],i=0;i<o.length;i++){if("string"==typeof(n=o[i])&&(n=[n]),!isArray(n)||n.length<1||2<n.length)throw new Error("Error in .promise parameter");t=n[0],n=n[1]||void 0,s.push(a(t,n,i,o.length))}return Promise.all(s)}}),i=i||!1)return i.worker=function(){throw new Error("Can find webworker in this enviroment")},"undefined"!=typeof Worker&&(i.worker=function(r,e,o){if(void 0===(r=!0===r?void 0:r))for(var t=document.getElementsByTagName("script"),n=0;n<t.length;n++){if("alasql-worker.js"===t[n].src.substr(-16).toLowerCase()){r=t[n].src.substr(0,t[n].src.length-16)+"alasql.js";break}if("alasql-worker.min.js"===t[n].src.substr(-20).toLowerCase()){r=t[n].src.substr(0,t[n].src.length-20)+"alasql.min.js";break}if("alasql.js"===t[n].src.substr(-9).toLowerCase()){r=t[n].src;break}if("alasql.min.js"===t[n].src.substr(-13).toLowerCase()){r=t[n].src.substr(0,t[n].src.length-13)+"alasql.min.js";break}}if(void 0===r)throw new Error("Path to alasql.js is not specified");var s;!1!==r?(s=(s="importScripts('")+r+"');self.onmessage = function(event) {alasql(event.data.sql,event.data.params, function(data){postMessage({id:event.data.id, data:data});});}",s=new Blob([s],{type:"text/plain"}),i.webworker=new Worker(URL.createObjectURL(s)),i.webworker.onmessage=function(r){var e=r.data.id;i.buffer[e](r.data.data),delete i.buffer[e]},i.webworker.onerror=function(r){throw r},1<arguments.length&&i("REQUIRE "+e.map(function(r){return'"'+r+'"'}).join(","),[],o)):!1===r&&delete i.webworker}),i.lastid=0,i.buffer={},i.worker(),i;throw new Error("alasql was not found")});
@@ -1,7 +1,7 @@
1
- //! AlaSQL v1.7.4-develop-89075a50undefined | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
1
+ //! AlaSQL v1.7.6 | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 1.7.4-develop-89075a50undefined
4
+ @version 1.7.6
5
5
 
6
6
  AlaSQL - JavaScript SQL database
7
7
  © 2014-2016 Andrey Gershun & Mathias Rangel Wulff
@@ -142,7 +142,7 @@ var alasql = function(sql, params, cb, scope) {
142
142
  Current version of alasql
143
143
  @constant {string}
144
144
  */
145
- alasql.version = '1.7.4-develop-89075a50undefined';
145
+ alasql.version = '1.7.6';
146
146
 
147
147
  /**
148
148
  Debug flag
@@ -4027,11 +4027,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
4027
4027
  return +obj;
4028
4028
  }
4029
4029
 
4030
- var temp = obj.constructor(); // changed
4030
+ var temp = (Object.prototype.hasOwnProperty.call(obj, 'constructor') ? Object : obj.constructor)(); // changed
4031
4031
 
4032
4032
  for (var key in obj) {
4033
4033
  if (obj.hasOwnProperty(key)) {
4034
- temp[key] = cloneDeep(obj[key]);
4034
+ /* A "__proto__" key from parsed data is copied as data, never as the prototype */ if (key === '__proto__') { Object.defineProperty(temp, key, {value: cloneDeep(obj[key]), writable: true, enumerable: true, configurable: true}); } else { temp[key] = cloneDeep(obj[key]); }
4035
4035
  }
4036
4036
  }
4037
4037
  return temp;
@@ -4103,7 +4103,7 @@ var extend = (utils.extend = function extend(a, b) {
4103
4103
  a = a || {};
4104
4104
  for (var key in b) {
4105
4105
  if (b.hasOwnProperty(key)) {
4106
- a[key] = b[key];
4106
+ /* A "__proto__" key from parsed data is copied as data, never as the prototype */ if (key === '__proto__') { Object.defineProperty(a, key, {value: b[key], writable: true, enumerable: true, configurable: true}); } else { a[key] = b[key]; }
4107
4107
  }
4108
4108
  }
4109
4109
  return a;
@@ -9061,7 +9061,7 @@ yy.Select.prototype.compileGroup = function (query) {
9061
9061
  aft2 = '';
9062
9062
 
9063
9063
  if (typeof query.groupStar !== 'undefined') {
9064
- aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
9064
+ aft2 += "for(var f in p['" + query.groupStar + "']) {if(/^__proto__$/.test(f))Object.defineProperty(g,f,{writable:true,enumerable:true,configurable:true});g[f]=p['" + query.groupStar + "'][f];};";
9065
9065
  }
9066
9066
 
9067
9067
  /*
@@ -9384,7 +9384,7 @@ function compileSelectStar(query, aliases, joinstar) {
9384
9384
  } else {
9385
9385
 
9386
9386
  // if column not exist, then copy all
9387
- sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
9387
+ sp += 'var w=p["' + alias + '"];for(var k in w){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=w[k]};';
9388
9388
 
9389
9389
  query.dirtyColumns = true;
9390
9390
  }
@@ -9713,10 +9713,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
9713
9713
  self.columns.forEach(function (col) {
9714
9714
 
9715
9715
  if (col instanceof yy.Column && col.columnid === '*') {
9716
- // s += 'for(var k in g){r[k]=g[k]};';
9716
+ // s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9717
9717
  // s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
9718
9718
 
9719
- s += 'for(var k in g) {r[k]=g[k]};';
9719
+ s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9720
9720
  return '';
9721
9721
 
9722
9722
  } else {
@@ -13033,7 +13033,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
13033
13033
 
13034
13034
  table.update(
13035
13035
  function (t) {
13036
- for (var f in r) t[f] = r[f];
13036
+ for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
13037
13037
  },
13038
13038
  table.data.indexOf(toreplace),
13039
13039
  params
@@ -14579,7 +14579,7 @@ yy.Insert.prototype.compile = function (databaseid) {
14579
14579
  });
14580
14580
  } else {
14581
14581
 
14582
- // sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
14582
+ // sw = 'var w='+JSONtoJS(values)+';for(var k in w){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=w[k]};';
14583
14583
  sw = JSONtoJS(values);
14584
14584
  }
14585
14585
  }
@@ -1,7 +1,7 @@
1
- //! AlaSQL v1.7.4-develop-89075a50undefined | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
1
+ //! AlaSQL v1.7.6 | © 2014-2018 Andrey Gershun & Mathias Rangel Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 1.7.4-develop-89075a50undefined
4
+ @version 1.7.6
5
5
 
6
6
  AlaSQL - JavaScript SQL database
7
7
  © 2014-2016 Andrey Gershun & Mathias Rangel Wulff
@@ -142,7 +142,7 @@ var alasql = function(sql, params, cb, scope) {
142
142
  Current version of alasql
143
143
  @constant {string}
144
144
  */
145
- alasql.version = '1.7.4-develop-89075a50undefined';
145
+ alasql.version = '1.7.6';
146
146
 
147
147
  /**
148
148
  Debug flag
@@ -4022,11 +4022,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
4022
4022
  return +obj;
4023
4023
  }
4024
4024
 
4025
- var temp = obj.constructor(); // changed
4025
+ var temp = (Object.prototype.hasOwnProperty.call(obj, 'constructor') ? Object : obj.constructor)(); // changed
4026
4026
 
4027
4027
  for (var key in obj) {
4028
4028
  if (obj.hasOwnProperty(key)) {
4029
- temp[key] = cloneDeep(obj[key]);
4029
+ /* A "__proto__" key from parsed data is copied as data, never as the prototype */ if (key === '__proto__') { Object.defineProperty(temp, key, {value: cloneDeep(obj[key]), writable: true, enumerable: true, configurable: true}); } else { temp[key] = cloneDeep(obj[key]); }
4030
4030
  }
4031
4031
  }
4032
4032
  return temp;
@@ -4098,7 +4098,7 @@ var extend = (utils.extend = function extend(a, b) {
4098
4098
  a = a || {};
4099
4099
  for (var key in b) {
4100
4100
  if (b.hasOwnProperty(key)) {
4101
- a[key] = b[key];
4101
+ /* A "__proto__" key from parsed data is copied as data, never as the prototype */ if (key === '__proto__') { Object.defineProperty(a, key, {value: b[key], writable: true, enumerable: true, configurable: true}); } else { a[key] = b[key]; }
4102
4102
  }
4103
4103
  }
4104
4104
  return a;
@@ -9056,7 +9056,7 @@ yy.Select.prototype.compileGroup = function (query) {
9056
9056
  aft2 = '';
9057
9057
 
9058
9058
  if (typeof query.groupStar !== 'undefined') {
9059
- aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
9059
+ aft2 += "for(var f in p['" + query.groupStar + "']) {if(/^__proto__$/.test(f))Object.defineProperty(g,f,{writable:true,enumerable:true,configurable:true});g[f]=p['" + query.groupStar + "'][f];};";
9060
9060
  }
9061
9061
 
9062
9062
  /*
@@ -9379,7 +9379,7 @@ function compileSelectStar(query, aliases, joinstar) {
9379
9379
  } else {
9380
9380
 
9381
9381
  // if column not exist, then copy all
9382
- sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
9382
+ sp += 'var w=p["' + alias + '"];for(var k in w){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=w[k]};';
9383
9383
 
9384
9384
  query.dirtyColumns = true;
9385
9385
  }
@@ -9708,10 +9708,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
9708
9708
  self.columns.forEach(function (col) {
9709
9709
 
9710
9710
  if (col instanceof yy.Column && col.columnid === '*') {
9711
- // s += 'for(var k in g){r[k]=g[k]};';
9711
+ // s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9712
9712
  // s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
9713
9713
 
9714
- s += 'for(var k in g) {r[k]=g[k]};';
9714
+ s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9715
9715
  return '';
9716
9716
 
9717
9717
  } else {
@@ -13028,7 +13028,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
13028
13028
 
13029
13029
  table.update(
13030
13030
  function (t) {
13031
- for (var f in r) t[f] = r[f];
13031
+ for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
13032
13032
  },
13033
13033
  table.data.indexOf(toreplace),
13034
13034
  params
@@ -14574,7 +14574,7 @@ yy.Insert.prototype.compile = function (databaseid) {
14574
14574
  });
14575
14575
  } else {
14576
14576
 
14577
- // sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
14577
+ // sw = 'var w='+JSONtoJS(values)+';for(var k in w){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=w[k]};';
14578
14578
  sw = JSONtoJS(values);
14579
14579
  }
14580
14580
  }