alasql 2.5.4 → 2.5.5
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 v2.5.
|
|
1
|
+
//! AlaSQL v2.5.5 build: v2-hotfix-8eb69ccf | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 2.5.
|
|
4
|
+
@version 2.5.5
|
|
5
5
|
|
|
6
6
|
AlaSQL - JavaScript SQL database
|
|
7
7
|
© 2014-2023 Andrey Gershun & Mathias Wulff
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
//! AlaSQL v2.5.
|
|
1
|
+
//! AlaSQL v2.5.5 build: v2-hotfix-8eb69ccf | © 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 v2.5.
|
|
1
|
+
//! AlaSQL v2.5.5 build: v2-hotfix-8eb69ccf | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 2.5.
|
|
4
|
+
@version 2.5.5
|
|
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 = '2.5.
|
|
145
|
+
alasql.version = '2.5.5';
|
|
146
146
|
alasql.build = 'v2-hotfix-8eb69ccf';
|
|
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;
|
|
@@ -8670,7 +8670,7 @@ yy.Select.prototype.compileGroup = function (query) {
|
|
|
8670
8670
|
aft2 = '';
|
|
8671
8671
|
|
|
8672
8672
|
if (typeof query.groupStar !== 'undefined') {
|
|
8673
|
-
aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
|
|
8673
|
+
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];};";
|
|
8674
8674
|
}
|
|
8675
8675
|
|
|
8676
8676
|
/*
|
|
@@ -9113,7 +9113,7 @@ function compileSelectStar(query, aliases, joinstar) {
|
|
|
9113
9113
|
} else {
|
|
9114
9114
|
|
|
9115
9115
|
// if column not exist, then copy all
|
|
9116
|
-
sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
|
|
9116
|
+
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]};';
|
|
9117
9117
|
|
|
9118
9118
|
query.dirtyColumns = true;
|
|
9119
9119
|
}
|
|
@@ -9441,10 +9441,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
|
|
|
9441
9441
|
self.columns.forEach(function (col) {
|
|
9442
9442
|
|
|
9443
9443
|
if (col instanceof yy.Column && col.columnid === '*') {
|
|
9444
|
-
// s += 'for(var k in g){r[k]=g[k]};';
|
|
9444
|
+
// s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9445
9445
|
// s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
|
|
9446
9446
|
|
|
9447
|
-
s += 'for(var k in g) {r[k]=g[k]};';
|
|
9447
|
+
s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9448
9448
|
return '';
|
|
9449
9449
|
|
|
9450
9450
|
} else {
|
|
@@ -12799,7 +12799,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
|
|
|
12799
12799
|
|
|
12800
12800
|
table.update(
|
|
12801
12801
|
function (t) {
|
|
12802
|
-
for (var f in r) t[f] = r[f];
|
|
12802
|
+
for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
|
|
12803
12803
|
},
|
|
12804
12804
|
table.data.indexOf(toreplace),
|
|
12805
12805
|
params
|
|
@@ -14373,7 +14373,7 @@ yy.Insert.prototype.compile = function (databaseid) {
|
|
|
14373
14373
|
});
|
|
14374
14374
|
} else {
|
|
14375
14375
|
|
|
14376
|
-
// sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
|
|
14376
|
+
// 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]};';
|
|
14377
14377
|
sw = JSONtoJS(values);
|
|
14378
14378
|
}
|
|
14379
14379
|
}
|
package/dist/alasql.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//! AlaSQL v2.5.
|
|
1
|
+
//! AlaSQL v2.5.5 build: v2-hotfix-8eb69ccf | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 2.5.
|
|
4
|
+
@version 2.5.5
|
|
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 = '2.5.
|
|
145
|
+
alasql.version = '2.5.5';
|
|
146
146
|
alasql.build = 'v2-hotfix-8eb69ccf';
|
|
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;
|
|
@@ -8670,7 +8670,7 @@ yy.Select.prototype.compileGroup = function (query) {
|
|
|
8670
8670
|
aft2 = '';
|
|
8671
8671
|
|
|
8672
8672
|
if (typeof query.groupStar !== 'undefined') {
|
|
8673
|
-
aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
|
|
8673
|
+
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];};";
|
|
8674
8674
|
}
|
|
8675
8675
|
|
|
8676
8676
|
/*
|
|
@@ -9113,7 +9113,7 @@ function compileSelectStar(query, aliases, joinstar) {
|
|
|
9113
9113
|
} else {
|
|
9114
9114
|
|
|
9115
9115
|
// if column not exist, then copy all
|
|
9116
|
-
sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
|
|
9116
|
+
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]};';
|
|
9117
9117
|
|
|
9118
9118
|
query.dirtyColumns = true;
|
|
9119
9119
|
}
|
|
@@ -9441,10 +9441,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
|
|
|
9441
9441
|
self.columns.forEach(function (col) {
|
|
9442
9442
|
|
|
9443
9443
|
if (col instanceof yy.Column && col.columnid === '*') {
|
|
9444
|
-
// s += 'for(var k in g){r[k]=g[k]};';
|
|
9444
|
+
// s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9445
9445
|
// s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
|
|
9446
9446
|
|
|
9447
|
-
s += 'for(var k in g) {r[k]=g[k]};';
|
|
9447
|
+
s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9448
9448
|
return '';
|
|
9449
9449
|
|
|
9450
9450
|
} else {
|
|
@@ -12799,7 +12799,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
|
|
|
12799
12799
|
|
|
12800
12800
|
table.update(
|
|
12801
12801
|
function (t) {
|
|
12802
|
-
for (var f in r) t[f] = r[f];
|
|
12802
|
+
for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
|
|
12803
12803
|
},
|
|
12804
12804
|
table.data.indexOf(toreplace),
|
|
12805
12805
|
params
|
|
@@ -14373,7 +14373,7 @@ yy.Insert.prototype.compile = function (databaseid) {
|
|
|
14373
14373
|
});
|
|
14374
14374
|
} else {
|
|
14375
14375
|
|
|
14376
|
-
// sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
|
|
14376
|
+
// 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]};';
|
|
14377
14377
|
sw = JSONtoJS(values);
|
|
14378
14378
|
}
|
|
14379
14379
|
}
|