alasql 4.9.0 → 4.9.1
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.fs.js +14 -14
- package/dist/alasql.js +14 -14
- package/dist/alasql.min.js +34 -34
- package/package.json +1 -1
package/bin/alasql-cli.js
CHANGED
package/dist/alasql-worker.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//! AlaSQL v4.
|
|
1
|
+
//! AlaSQL v4.9.1 build: develop-af967432 | © 2014-2024 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 4.
|
|
4
|
+
@version 4.9.1
|
|
5
5
|
|
|
6
6
|
AlaSQL - JavaScript SQL database
|
|
7
7
|
© 2014-2024 Andrey Gershun & Mathias Wulff
|
package/dist/alasql.fs.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//! AlaSQL v4.
|
|
1
|
+
//! AlaSQL v4.9.1 build: develop-af967432 | © 2014-2024 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 4.
|
|
4
|
+
@version 4.9.1
|
|
5
5
|
|
|
6
6
|
AlaSQL - JavaScript SQL database
|
|
7
7
|
© 2014-2024 Andrey Gershun & Mathias Wulff
|
|
@@ -141,7 +141,7 @@ SOFTWARE.
|
|
|
141
141
|
Current version of alasql
|
|
142
142
|
@constant {string}
|
|
143
143
|
*/
|
|
144
|
-
alasql.version = '4.
|
|
144
|
+
alasql.version = '4.9.1';
|
|
145
145
|
alasql.build = 'develop-af967432';
|
|
146
146
|
|
|
147
147
|
/**
|
|
@@ -4061,11 +4061,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
|
|
|
4061
4061
|
return +obj;
|
|
4062
4062
|
}
|
|
4063
4063
|
|
|
4064
|
-
var temp = new obj.constructor(); // changed
|
|
4064
|
+
var temp = new (Object.prototype.hasOwnProperty.call(obj, 'constructor') ? Object : obj.constructor)(); // changed
|
|
4065
4065
|
|
|
4066
4066
|
for (var key in obj) {
|
|
4067
4067
|
if (obj.hasOwnProperty(key)) {
|
|
4068
|
-
temp[key] = cloneDeep(obj[key]);
|
|
4068
|
+
/* 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]); }
|
|
4069
4069
|
}
|
|
4070
4070
|
}
|
|
4071
4071
|
return temp;
|
|
@@ -4137,7 +4137,7 @@ var extend = (utils.extend = function extend(a, b) {
|
|
|
4137
4137
|
a = a || {};
|
|
4138
4138
|
for (var key in b) {
|
|
4139
4139
|
if (b.hasOwnProperty(key)) {
|
|
4140
|
-
a[key] = b[key];
|
|
4140
|
+
/* 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]; }
|
|
4141
4141
|
}
|
|
4142
4142
|
}
|
|
4143
4143
|
return a;
|
|
@@ -8424,7 +8424,7 @@ yy.Select.prototype.compileGroup = function (query) {
|
|
|
8424
8424
|
aft2 = '';
|
|
8425
8425
|
|
|
8426
8426
|
if (typeof query.groupStar !== 'undefined') {
|
|
8427
|
-
aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
|
|
8427
|
+
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];};";
|
|
8428
8428
|
}
|
|
8429
8429
|
|
|
8430
8430
|
s += query.selectGroup
|
|
@@ -8873,7 +8873,7 @@ function compileSelectStar(query, aliases, joinstar) {
|
|
|
8873
8873
|
} else {
|
|
8874
8874
|
|
|
8875
8875
|
// if column not exist, then copy all
|
|
8876
|
-
sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
|
|
8876
|
+
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]};';
|
|
8877
8877
|
|
|
8878
8878
|
query.dirtyColumns = true;
|
|
8879
8879
|
}
|
|
@@ -9201,10 +9201,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
|
|
|
9201
9201
|
self.columns.forEach(function (col) {
|
|
9202
9202
|
|
|
9203
9203
|
if (col instanceof yy.Column && col.columnid === '*') {
|
|
9204
|
-
// s += 'for(var k in g){r[k]=g[k]};';
|
|
9204
|
+
// s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9205
9205
|
// s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
|
|
9206
9206
|
|
|
9207
|
-
s += 'for(var k in g) {r[k]=g[k]};';
|
|
9207
|
+
s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9208
9208
|
return '';
|
|
9209
9209
|
|
|
9210
9210
|
} else {
|
|
@@ -10427,7 +10427,7 @@ yy.Over = class Over {
|
|
|
10427
10427
|
const allValues = this.right.map(value => value.value);
|
|
10428
10428
|
const allValuesStr = allValues.join(',');
|
|
10429
10429
|
alasql.sets[allValuesStr] = alasql.sets[allValuesStr] || new Set(allValues);
|
|
10430
|
-
s = `alasql.sets[
|
|
10430
|
+
s = `alasql.sets[${JSON.stringify(allValuesStr)}].has(alasql.utils.getValueOf(${leftJS()}))`;
|
|
10431
10431
|
}
|
|
10432
10432
|
} else {
|
|
10433
10433
|
s = `(${rightJS()}.indexOf(${leftJS()}) > -1)`;
|
|
@@ -10445,7 +10445,7 @@ yy.Over = class Over {
|
|
|
10445
10445
|
const allValues = this.right.map(value => value.value);
|
|
10446
10446
|
const allValuesStr = allValues.join(',');
|
|
10447
10447
|
alasql.sets[allValuesStr] = alasql.sets[allValuesStr] || new Set(allValues);
|
|
10448
|
-
s = `!alasql.sets[
|
|
10448
|
+
s = `!alasql.sets[${JSON.stringify(allValuesStr)}].has(alasql.utils.getValueOf(${leftJS()}))`;
|
|
10449
10449
|
}
|
|
10450
10450
|
} else {
|
|
10451
10451
|
s = `(${rightJS()}.indexOf(${leftJS()}) === -1)`;
|
|
@@ -12313,7 +12313,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
|
|
|
12313
12313
|
|
|
12314
12314
|
table.update(
|
|
12315
12315
|
function (t) {
|
|
12316
|
-
for (var f in r) t[f] = r[f];
|
|
12316
|
+
for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
|
|
12317
12317
|
},
|
|
12318
12318
|
table.data.indexOf(toreplace),
|
|
12319
12319
|
params
|
|
@@ -13827,7 +13827,7 @@ yy.Insert.prototype.compile = function (databaseid) {
|
|
|
13827
13827
|
});
|
|
13828
13828
|
} else {
|
|
13829
13829
|
|
|
13830
|
-
// sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
|
|
13830
|
+
// 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]};';
|
|
13831
13831
|
sw = JSONtoJS(values);
|
|
13832
13832
|
}
|
|
13833
13833
|
}
|
package/dist/alasql.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
//! AlaSQL v4.
|
|
1
|
+
//! AlaSQL v4.9.1 build: develop-af967432 | © 2014-2024 Andrey Gershun & Mathias Wulff | License: MIT
|
|
2
2
|
/*
|
|
3
3
|
@module alasql
|
|
4
|
-
@version 4.
|
|
4
|
+
@version 4.9.1
|
|
5
5
|
|
|
6
6
|
AlaSQL - JavaScript SQL database
|
|
7
7
|
© 2014-2024 Andrey Gershun & Mathias Wulff
|
|
@@ -141,7 +141,7 @@ SOFTWARE.
|
|
|
141
141
|
Current version of alasql
|
|
142
142
|
@constant {string}
|
|
143
143
|
*/
|
|
144
|
-
alasql.version = '4.
|
|
144
|
+
alasql.version = '4.9.1';
|
|
145
145
|
alasql.build = 'develop-af967432';
|
|
146
146
|
|
|
147
147
|
/**
|
|
@@ -4061,11 +4061,11 @@ var cloneDeep = (utils.cloneDeep = function cloneDeep(obj) {
|
|
|
4061
4061
|
return +obj;
|
|
4062
4062
|
}
|
|
4063
4063
|
|
|
4064
|
-
var temp = new obj.constructor(); // changed
|
|
4064
|
+
var temp = new (Object.prototype.hasOwnProperty.call(obj, 'constructor') ? Object : obj.constructor)(); // changed
|
|
4065
4065
|
|
|
4066
4066
|
for (var key in obj) {
|
|
4067
4067
|
if (obj.hasOwnProperty(key)) {
|
|
4068
|
-
temp[key] = cloneDeep(obj[key]);
|
|
4068
|
+
/* 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]); }
|
|
4069
4069
|
}
|
|
4070
4070
|
}
|
|
4071
4071
|
return temp;
|
|
@@ -4137,7 +4137,7 @@ var extend = (utils.extend = function extend(a, b) {
|
|
|
4137
4137
|
a = a || {};
|
|
4138
4138
|
for (var key in b) {
|
|
4139
4139
|
if (b.hasOwnProperty(key)) {
|
|
4140
|
-
a[key] = b[key];
|
|
4140
|
+
/* 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]; }
|
|
4141
4141
|
}
|
|
4142
4142
|
}
|
|
4143
4143
|
return a;
|
|
@@ -8424,7 +8424,7 @@ yy.Select.prototype.compileGroup = function (query) {
|
|
|
8424
8424
|
aft2 = '';
|
|
8425
8425
|
|
|
8426
8426
|
if (typeof query.groupStar !== 'undefined') {
|
|
8427
|
-
aft2 += "for(var f in p['" + query.groupStar + "']) {g[f]=p['" + query.groupStar + "'][f];};";
|
|
8427
|
+
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];};";
|
|
8428
8428
|
}
|
|
8429
8429
|
|
|
8430
8430
|
s += query.selectGroup
|
|
@@ -8873,7 +8873,7 @@ function compileSelectStar(query, aliases, joinstar) {
|
|
|
8873
8873
|
} else {
|
|
8874
8874
|
|
|
8875
8875
|
// if column not exist, then copy all
|
|
8876
|
-
sp += 'var w=p["' + alias + '"];for(var k in w){r[k]=w[k]};';
|
|
8876
|
+
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]};';
|
|
8877
8877
|
|
|
8878
8878
|
query.dirtyColumns = true;
|
|
8879
8879
|
}
|
|
@@ -9201,10 +9201,10 @@ yy.Select.prototype.compileSelectGroup1 = function (query) {
|
|
|
9201
9201
|
self.columns.forEach(function (col) {
|
|
9202
9202
|
|
|
9203
9203
|
if (col instanceof yy.Column && col.columnid === '*') {
|
|
9204
|
-
// s += 'for(var k in g){r[k]=g[k]};';
|
|
9204
|
+
// s += 'for(var k in g){if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9205
9205
|
// s += 'for(var k in this.query.groupColumns){r[k]=g[this.query.groupColumns[k]]};';
|
|
9206
9206
|
|
|
9207
|
-
s += 'for(var k in g) {r[k]=g[k]};';
|
|
9207
|
+
s += 'for(var k in g) {if(/^__proto__$/.test(k))Object.defineProperty(r,k,{writable:true,enumerable:true,configurable:true});r[k]=g[k]};';
|
|
9208
9208
|
return '';
|
|
9209
9209
|
|
|
9210
9210
|
} else {
|
|
@@ -10427,7 +10427,7 @@ yy.Over = class Over {
|
|
|
10427
10427
|
const allValues = this.right.map(value => value.value);
|
|
10428
10428
|
const allValuesStr = allValues.join(',');
|
|
10429
10429
|
alasql.sets[allValuesStr] = alasql.sets[allValuesStr] || new Set(allValues);
|
|
10430
|
-
s = `alasql.sets[
|
|
10430
|
+
s = `alasql.sets[${JSON.stringify(allValuesStr)}].has(alasql.utils.getValueOf(${leftJS()}))`;
|
|
10431
10431
|
}
|
|
10432
10432
|
} else {
|
|
10433
10433
|
s = `(${rightJS()}.indexOf(${leftJS()}) > -1)`;
|
|
@@ -10445,7 +10445,7 @@ yy.Over = class Over {
|
|
|
10445
10445
|
const allValues = this.right.map(value => value.value);
|
|
10446
10446
|
const allValuesStr = allValues.join(',');
|
|
10447
10447
|
alasql.sets[allValuesStr] = alasql.sets[allValuesStr] || new Set(allValues);
|
|
10448
|
-
s = `!alasql.sets[
|
|
10448
|
+
s = `!alasql.sets[${JSON.stringify(allValuesStr)}].has(alasql.utils.getValueOf(${leftJS()}))`;
|
|
10449
10449
|
}
|
|
10450
10450
|
} else {
|
|
10451
10451
|
s = `(${rightJS()}.indexOf(${leftJS()}) === -1)`;
|
|
@@ -12313,7 +12313,7 @@ yy.CreateTable.prototype.execute = function (databaseid, params, cb) {
|
|
|
12313
12313
|
|
|
12314
12314
|
table.update(
|
|
12315
12315
|
function (t) {
|
|
12316
|
-
for (var f in r) t[f] = r[f];
|
|
12316
|
+
for (var f in r) {if(/^__proto__$/.test(f))Object.defineProperty(t,f,{writable:true,enumerable:true,configurable:true});t[f] = r[f];}
|
|
12317
12317
|
},
|
|
12318
12318
|
table.data.indexOf(toreplace),
|
|
12319
12319
|
params
|
|
@@ -13827,7 +13827,7 @@ yy.Insert.prototype.compile = function (databaseid) {
|
|
|
13827
13827
|
});
|
|
13828
13828
|
} else {
|
|
13829
13829
|
|
|
13830
|
-
// sw = 'var w='+JSONtoJS(values)+';for(var k in w){r[k]=w[k]};';
|
|
13830
|
+
// 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]};';
|
|
13831
13831
|
sw = JSONtoJS(values);
|
|
13832
13832
|
}
|
|
13833
13833
|
}
|