alasql 2.1.8 → 2.1.9

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.
package/bin/alasql-cli.js CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  //
4
4
  // Command line interface for Alasql
5
- // Version: 0.2.3
5
+ // Version: 2.1.9
6
6
  // Date: 28.07.2015
7
7
  // (c) 2014-2022, Andrey Gershun & Mathias Wulff
8
8
  //
@@ -1,7 +1,7 @@
1
- //! AlaSQL v2.1.7-develop-295886e2 | © 2014-2022 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v2.1.9 | © 2014-2022 Andrey Gershun & Mathias Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 2.1.7-develop-295886e2
4
+ @version 2.1.9
5
5
 
6
6
  AlaSQL - JavaScript SQL database
7
7
  © 2014-2016 Andrey Gershun & Mathias Rangel Wulff
@@ -1,2 +1,2 @@
1
- //! AlaSQL v2.1.7-develop-295886e2 | © 2014-2022 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v2.1.9 | © 2014-2022 Andrey Gershun & Mathias 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")});
package/dist/alasql.fs.js CHANGED
@@ -1,7 +1,7 @@
1
- //! AlaSQL v2.1.7-develop-295886e2 | © 2014-2022 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v2.1.9 | © 2014-2022 Andrey Gershun & Mathias Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 2.1.7-develop-295886e2
4
+ @version 2.1.9
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 = '2.1.7-develop-295886e2';
145
+ alasql.version = '2.1.9';
146
146
 
147
147
  /**
148
148
  Debug flag
@@ -4055,11 +4055,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
4055
4055
  return +obj;
4056
4056
  }
4057
4057
 
4058
- var temp = obj.constructor(); // changed
4058
+ var temp = (Object.prototype.hasOwnProperty.call(obj, 'constructor') ? Object : obj.constructor)(); // changed
4059
4059
 
4060
4060
  for (var key in obj) {
4061
4061
  if (obj.hasOwnProperty(key)) {
4062
- temp[key] = cloneDeep(obj[key]);
4062
+ /* 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]); }
4063
4063
  }
4064
4064
  }
4065
4065
  return temp;
@@ -4131,7 +4131,7 @@ var extend = (utils.extend = function extend(a, b) {
4131
4131
  a = a || {};
4132
4132
  for (var key in b) {
4133
4133
  if (b.hasOwnProperty(key)) {
4134
- a[key] = b[key];
4134
+ /* 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]; }
4135
4135
  }
4136
4136
  }
4137
4137
  return a;
@@ -8695,7 +8695,7 @@ yy.Select.prototype.compileGroup = function (query) {
8695
8695
  aft2 = '';
8696
8696
 
8697
8697
  if (typeof query.groupStar !== 'undefined') {
8698
- aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
8698
+ 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];};";
8699
8699
  }
8700
8700
 
8701
8701
  /*
@@ -9017,7 +9017,7 @@ function compileSelectStar(query, aliases, joinstar) {
9017
9017
  } else {
9018
9018
 
9019
9019
  // if column not exist, then copy all
9020
- sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
9020
+ 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]};';
9021
9021
 
9022
9022
  query.dirtyColumns = true;
9023
9023
  }
@@ -9346,10 +9346,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
9346
9346
  self.columns.forEach(function (col) {
9347
9347
 
9348
9348
  if (col instanceof yy.Column && col.columnid === '*') {
9349
- // s += 'for(var k in g){r[k]=g[k]};';
9349
+ // s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9350
9350
  // s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
9351
9351
 
9352
- s += 'for(var k in g) {r[k]=g[k]};';
9352
+ s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9353
9353
  return '';
9354
9354
 
9355
9355
  } else {
@@ -12636,7 +12636,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
12636
12636
 
12637
12637
  table.update(
12638
12638
  function (t) {
12639
- for (var f in r) t[f] = r[f];
12639
+ for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
12640
12640
  },
12641
12641
  table.data.indexOf(toreplace),
12642
12642
  params
@@ -14210,7 +14210,7 @@ yy.Insert.prototype.compile = function (databaseid) {
14210
14210
  });
14211
14211
  } else {
14212
14212
 
14213
- // sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
14213
+ // 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]};';
14214
14214
  sw = JSONtoJS(values);
14215
14215
  }
14216
14216
  }
package/dist/alasql.js CHANGED
@@ -1,7 +1,7 @@
1
- //! AlaSQL v2.1.7-develop-295886e2 | © 2014-2022 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v2.1.9 | © 2014-2022 Andrey Gershun & Mathias Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 2.1.7-develop-295886e2
4
+ @version 2.1.9
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 = '2.1.7-develop-295886e2';
145
+ alasql.version = '2.1.9';
146
146
 
147
147
  /**
148
148
  Debug flag
@@ -4047,11 +4047,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
4047
4047
  return +obj;
4048
4048
  }
4049
4049
 
4050
- var temp = obj.constructor(); // changed
4050
+ var temp = (Object.prototype.hasOwnProperty.call(obj, 'constructor') ? Object : obj.constructor)(); // changed
4051
4051
 
4052
4052
  for (var key in obj) {
4053
4053
  if (obj.hasOwnProperty(key)) {
4054
- temp[key] = cloneDeep(obj[key]);
4054
+ /* 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]); }
4055
4055
  }
4056
4056
  }
4057
4057
  return temp;
@@ -4123,7 +4123,7 @@ var extend = (utils.extend = function extend(a, b) {
4123
4123
  a = a || {};
4124
4124
  for (var key in b) {
4125
4125
  if (b.hasOwnProperty(key)) {
4126
- a[key] = b[key];
4126
+ /* 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]; }
4127
4127
  }
4128
4128
  }
4129
4129
  return a;
@@ -8687,7 +8687,7 @@ yy.Select.prototype.compileGroup = function (query) {
8687
8687
  aft2 = '';
8688
8688
 
8689
8689
  if (typeof query.groupStar !== 'undefined') {
8690
- aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
8690
+ 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];};";
8691
8691
  }
8692
8692
 
8693
8693
  /*
@@ -9009,7 +9009,7 @@ function compileSelectStar(query, aliases, joinstar) {
9009
9009
  } else {
9010
9010
 
9011
9011
  // if column not exist, then copy all
9012
- sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
9012
+ 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]};';
9013
9013
 
9014
9014
  query.dirtyColumns = true;
9015
9015
  }
@@ -9338,10 +9338,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
9338
9338
  self.columns.forEach(function (col) {
9339
9339
 
9340
9340
  if (col instanceof yy.Column && col.columnid === '*') {
9341
- // s += 'for(var k in g){r[k]=g[k]};';
9341
+ // s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9342
9342
  // s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
9343
9343
 
9344
- s += 'for(var k in g) {r[k]=g[k]};';
9344
+ s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
9345
9345
  return '';
9346
9346
 
9347
9347
  } else {
@@ -12628,7 +12628,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
12628
12628
 
12629
12629
  table.update(
12630
12630
  function (t) {
12631
- for (var f in r) t[f] = r[f];
12631
+ for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
12632
12632
  },
12633
12633
  table.data.indexOf(toreplace),
12634
12634
  params
@@ -14202,7 +14202,7 @@ yy.Insert.prototype.compile = function (databaseid) {
14202
14202
  });
14203
14203
  } else {
14204
14204
 
14205
- // sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
14205
+ // 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]};';
14206
14206
  sw = JSONtoJS(values);
14207
14207
  }
14208
14208
  }