alasql 3.1.1 → 3.1.2
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 +1 -1
- package/dist/alasql-worker.js +2 -2
- package/dist/alasql-worker.min.js +1 -1
- package/dist/alasql.fs.js +12 -12
- package/dist/alasql.js +12 -12
- package/dist/alasql.min.js +46 -46
- package/package.json +1 -1
package/bin/alasql-cli.js
CHANGED
package/dist/alasql-worker.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//! AlaSQL v3.1.
|
|
1
|
+
//! AlaSQL v3.1.2 build: v3-hotfix-dfc34cf0 | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 3.1.
|
|
4
|
+
@version 3.1.2
|
|
5
5
|
|
|
6
6
|
AlaSQL - JavaScript SQL database
|
|
7
7
|
© 2014-2023 Andrey Gershun & Mathias Wulff
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
//! AlaSQL v3.1.
|
|
1
|
+
//! AlaSQL v3.1.2 build: v3-hotfix-dfc34cf0 | © 2014-2023 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 v3.1.
|
|
1
|
+
//! AlaSQL v3.1.2 build: v3-hotfix-dfc34cf0 | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 3.1.
|
|
4
|
+
@version 3.1.2
|
|
5
5
|
|
|
6
6
|
AlaSQL - JavaScript SQL database
|
|
7
7
|
© 2014-2023 Andrey Gershun & Mathias 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 = '3.1.
|
|
145
|
+
alasql.version = '3.1.2';
|
|
146
146
|
alasql.build = 'v3-hotfix-dfc34cf0';
|
|
147
147
|
|
|
148
148
|
/**
|
|
@@ -4022,11 +4022,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
|
|
|
4022
4022
|
return +obj;
|
|
4023
4023
|
}
|
|
4024
4024
|
|
|
4025
|
-
var temp = new obj.constructor(); // changed
|
|
4025
|
+
var temp = new (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;
|
|
@@ -8677,7 +8677,7 @@ yy.Select.prototype.compileGroup = function (query) {
|
|
|
8677
8677
|
aft2 = '';
|
|
8678
8678
|
|
|
8679
8679
|
if (typeof query.groupStar !== 'undefined') {
|
|
8680
|
-
aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
|
|
8680
|
+
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];};";
|
|
8681
8681
|
}
|
|
8682
8682
|
|
|
8683
8683
|
/*
|
|
@@ -9120,7 +9120,7 @@ function compileSelectStar(query, aliases, joinstar) {
|
|
|
9120
9120
|
} else {
|
|
9121
9121
|
|
|
9122
9122
|
// if column not exist, then copy all
|
|
9123
|
-
sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
|
|
9123
|
+
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]};';
|
|
9124
9124
|
|
|
9125
9125
|
query.dirtyColumns = true;
|
|
9126
9126
|
}
|
|
@@ -9448,10 +9448,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
|
|
|
9448
9448
|
self.columns.forEach(function (col) {
|
|
9449
9449
|
|
|
9450
9450
|
if (col instanceof yy.Column && col.columnid === '*') {
|
|
9451
|
-
// s += 'for(var k in g){r[k]=g[k]};';
|
|
9451
|
+
// s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9452
9452
|
// s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
|
|
9453
9453
|
|
|
9454
|
-
s += 'for(var k in g) {r[k]=g[k]};';
|
|
9454
|
+
s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9455
9455
|
return '';
|
|
9456
9456
|
|
|
9457
9457
|
} else {
|
|
@@ -12806,7 +12806,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
|
|
|
12806
12806
|
|
|
12807
12807
|
table.update(
|
|
12808
12808
|
function (t) {
|
|
12809
|
-
for (var f in r) t[f] = r[f];
|
|
12809
|
+
for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
|
|
12810
12810
|
},
|
|
12811
12811
|
table.data.indexOf(toreplace),
|
|
12812
12812
|
params
|
|
@@ -14380,7 +14380,7 @@ yy.Insert.prototype.compile = function (databaseid) {
|
|
|
14380
14380
|
});
|
|
14381
14381
|
} else {
|
|
14382
14382
|
|
|
14383
|
-
// sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
|
|
14383
|
+
// 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]};';
|
|
14384
14384
|
sw = JSONtoJS(values);
|
|
14385
14385
|
}
|
|
14386
14386
|
}
|
package/dist/alasql.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//! AlaSQL v3.1.
|
|
1
|
+
//! AlaSQL v3.1.2 build: v3-hotfix-dfc34cf0 | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 3.1.
|
|
4
|
+
@version 3.1.2
|
|
5
5
|
|
|
6
6
|
AlaSQL - JavaScript SQL database
|
|
7
7
|
© 2014-2023 Andrey Gershun & Mathias 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 = '3.1.
|
|
145
|
+
alasql.version = '3.1.2';
|
|
146
146
|
alasql.build = 'v3-hotfix-dfc34cf0';
|
|
147
147
|
|
|
148
148
|
/**
|
|
@@ -4022,11 +4022,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
|
|
|
4022
4022
|
return +obj;
|
|
4023
4023
|
}
|
|
4024
4024
|
|
|
4025
|
-
var temp = new obj.constructor(); // changed
|
|
4025
|
+
var temp = new (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;
|
|
@@ -8677,7 +8677,7 @@ yy.Select.prototype.compileGroup = function (query) {
|
|
|
8677
8677
|
aft2 = '';
|
|
8678
8678
|
|
|
8679
8679
|
if (typeof query.groupStar !== 'undefined') {
|
|
8680
|
-
aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
|
|
8680
|
+
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];};";
|
|
8681
8681
|
}
|
|
8682
8682
|
|
|
8683
8683
|
/*
|
|
@@ -9120,7 +9120,7 @@ function compileSelectStar(query, aliases, joinstar) {
|
|
|
9120
9120
|
} else {
|
|
9121
9121
|
|
|
9122
9122
|
// if column not exist, then copy all
|
|
9123
|
-
sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
|
|
9123
|
+
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]};';
|
|
9124
9124
|
|
|
9125
9125
|
query.dirtyColumns = true;
|
|
9126
9126
|
}
|
|
@@ -9448,10 +9448,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
|
|
|
9448
9448
|
self.columns.forEach(function (col) {
|
|
9449
9449
|
|
|
9450
9450
|
if (col instanceof yy.Column && col.columnid === '*') {
|
|
9451
|
-
// s += 'for(var k in g){r[k]=g[k]};';
|
|
9451
|
+
// s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9452
9452
|
// s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
|
|
9453
9453
|
|
|
9454
|
-
s += 'for(var k in g) {r[k]=g[k]};';
|
|
9454
|
+
s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9455
9455
|
return '';
|
|
9456
9456
|
|
|
9457
9457
|
} else {
|
|
@@ -12806,7 +12806,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
|
|
|
12806
12806
|
|
|
12807
12807
|
table.update(
|
|
12808
12808
|
function (t) {
|
|
12809
|
-
for (var f in r) t[f] = r[f];
|
|
12809
|
+
for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
|
|
12810
12810
|
},
|
|
12811
12811
|
table.data.indexOf(toreplace),
|
|
12812
12812
|
params
|
|
@@ -14380,7 +14380,7 @@ yy.Insert.prototype.compile = function (databaseid) {
|
|
|
14380
14380
|
});
|
|
14381
14381
|
} else {
|
|
14382
14382
|
|
|
14383
|
-
// sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
|
|
14383
|
+
// 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]};';
|
|
14384
14384
|
sw = JSONtoJS(values);
|
|
14385
14385
|
}
|
|
14386
14386
|
}
|