alasql 2.5.3 → 3.1.0

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/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  - _Have a question? Ask on [Stack Overflow](http://stackoverflow.com/questions/ask?tags=AlaSQL) using the "alasql" tag._
4
4
 
5
- - _Wondering if you should upgrade to v2? You probably should, but check the two breaking changes [here](https://github.com/AlaSQL/alasql/releases/tag/v2.0.1)_
5
+ - _Wondering if you should upgrade to v3? You probably should, unless you are using WebSQL. Check the the breaking changes [here](https://github.com/AlaSQL/alasql/releases/tag/v3.0.0)_
6
6
 
7
7
 
8
8
  [![CI-test](https://github.com/alasql/alasql/workflows/CI-test/badge.svg)](https://github.com/alasql/alasql/actions)
@@ -113,14 +113,14 @@ yarn add alasql # yarn
113
113
 
114
114
  npm install alasql # npm
115
115
 
116
- npm install -g alasql # global installation for command line tools
116
+ npm install -g alasql # global install of command line tool
117
117
  ```
118
118
 
119
- For the browser: include [alasql.min.js](https://cdn.jsdelivr.net/npm/alasql)
119
+ For the browsers: include [alasql.min.js](https://cdn.jsdelivr.net/npm/alasql)
120
120
 
121
121
 
122
122
  ```html
123
- <script src="https://cdn.jsdelivr.net/npm/alasql@2"></script>
123
+ <script src="https://cdn.jsdelivr.net/npm/alasql@3"></script>
124
124
  ```
125
125
 
126
126
 
@@ -645,7 +645,6 @@ and other people for useful tools, which make our work much easier.
645
645
  ### Related projects that have inspired us
646
646
 
647
647
  * [AlaX](http://github.com/alasql/alax) - Export to Excel with colors and formats
648
- * [WebSQLShim](http://github.com/alasql/WebSQLShim) - WebSQL shim over IndexedDB (work in progress)
649
648
  * [AlaMDX](http://github.com/alasql/alamdx) - JavaScript MDX OLAP library (work in progress)
650
649
  * [Other similar projects](http://github.com/alasql/alasql/wiki/Similar-Projects.md) - list of databases on JavaScript
651
650
 
@@ -1,7 +1,7 @@
1
- //! AlaSQL v2.5.2 build: develop-0e8a5557 | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v3.0.0 build: develop-4287740e | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 2.5.2
4
+ @version 3.0.0
5
5
 
6
6
  AlaSQL - JavaScript SQL database
7
7
  © 2014-2023 Andrey Gershun & Mathias Wulff
@@ -1,2 +1,2 @@
1
- //! AlaSQL v2.5.2 build: develop-0e8a5557 | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v3.0.0 build: develop-4287740e | © 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.2 build: develop-0e8a5557 | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v3.0.0 build: develop-4287740e | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 2.5.2
4
+ @version 3.0.0
5
5
 
6
6
  AlaSQL - JavaScript SQL database
7
7
  © 2014-2023 Andrey Gershun & Mathias Wulff
@@ -142,8 +142,8 @@ var alasql = function(sql, params, cb, scope) {
142
142
  Current version of alasql
143
143
  @constant {string}
144
144
  */
145
- alasql.version = '2.5.2';
146
- alasql.build = 'develop-0e8a5557';
145
+ alasql.version = '3.0.0';
146
+ alasql.build = 'develop-4287740e';
147
147
 
148
148
  /**
149
149
  Debug flag
@@ -6650,9 +6650,16 @@ function queryfn3(query) {
6650
6650
  ilen = nd.data.length;
6651
6651
  for (var i = 0; i < ilen; i++) {
6652
6652
  r = {};
6653
- jlen = Math.min(query.columns.length, nd.columns.length);
6654
- for (var j = 0; j < jlen; j++) {
6655
- r[query.columns[j].columnid] = nd.data[i][nd.columns[j].columnid];
6653
+ if (query.columns.length) {
6654
+ jlen = Math.min(query.columns.length, nd.columns.length);
6655
+ for (var j = 0; j < jlen; j++) {
6656
+ r[query.columns[j].columnid] = nd.data[i][nd.columns[j].columnid];
6657
+ }
6658
+ } else {
6659
+ jlen = nd.columns.length;
6660
+ for (var j = 0; j < jlen; j++) {
6661
+ r[nd.columns[j].columnid] = nd.data[i][nd.columns[j].columnid];
6662
+ }
6656
6663
  }
6657
6664
  ud.push(r);
6658
6665
  }
@@ -17887,43 +17894,6 @@ yy.Assert.prototype.execute = function (databaseid) {
17887
17894
  return 1;
17888
17895
  };
17889
17896
 
17890
- //
17891
- // 91websql.js
17892
- // WebSQL database support
17893
- // (c) 2014, Andrey Gershun
17894
- //
17895
-
17896
- var WEBSQL = (alasql.engines.WEBSQL = function () {});
17897
-
17898
- WEBSQL.createDatabase = function (wdbid, args, dbid, cb) {
17899
- var res = 1;
17900
- var wdb = openDatabase(wdbid, args[0], args[1], args[2]);
17901
- if (this.dbid) {
17902
- var db = alasql.createDatabase(this.dbid);
17903
- db.engineid = 'WEBSQL';
17904
- db.wdbid = wdbid;
17905
- db.wdb = db;
17906
- }
17907
- if (!wdb) {
17908
- throw new Error('Cannot create WebSQL database "' + this.dbid + '"');
17909
- }
17910
- if (cb) cb(res);
17911
- return res;
17912
- };
17913
-
17914
- WEBSQL.dropDatabase = function (databaseid) {
17915
- throw new Error('This is impossible to drop WebSQL database.');
17916
- };
17917
-
17918
- WEBSQL.attachDatabase = function (databaseid, dbid, args, params, cb) {
17919
- var res = 1;
17920
- if (alasql.databases[dbid]) {
17921
- throw new Error('Unable to attach database as "' + dbid + '" because it already exists');
17922
- }
17923
- alasql.openDatabase(databaseid, args[0], args[1], args[2]);
17924
- return res;
17925
- };
17926
-
17927
17897
  //
17928
17898
  // 91indexeddb.js
17929
17899
  // AlaSQL IndexedDB module
@@ -18726,8 +18696,8 @@ LS.rollback = function (databaseid, cb) {
18726
18696
  };
18727
18697
 
18728
18698
  //
18729
- // 91websql.js
18730
- // WebSQL database support
18699
+ // 93sqlite.js
18700
+ // SQLite database support
18731
18701
  // (c) 2014, Andrey Gershun
18732
18702
  //
18733
18703
 
package/dist/alasql.js CHANGED
@@ -1,7 +1,7 @@
1
- //! AlaSQL v2.5.2 build: develop-0e8a5557 | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
1
+ //! AlaSQL v3.0.0 build: develop-4287740e | © 2014-2023 Andrey Gershun & Mathias Wulff | License: MIT
2
2
  /*
3
3
  @module alasql
4
- @version 2.5.2
4
+ @version 3.0.0
5
5
 
6
6
  AlaSQL - JavaScript SQL database
7
7
  © 2014-2023 Andrey Gershun & Mathias Wulff
@@ -142,8 +142,8 @@ var alasql = function(sql, params, cb, scope) {
142
142
  Current version of alasql
143
143
  @constant {string}
144
144
  */
145
- alasql.version = '2.5.2';
146
- alasql.build = 'develop-0e8a5557';
145
+ alasql.version = '3.0.0';
146
+ alasql.build = 'develop-4287740e';
147
147
 
148
148
  /**
149
149
  Debug flag
@@ -6650,9 +6650,16 @@ function queryfn3(query) {
6650
6650
  ilen = nd.data.length;
6651
6651
  for (var i = 0; i < ilen; i++) {
6652
6652
  r = {};
6653
- jlen = Math.min(query.columns.length, nd.columns.length);
6654
- for (var j = 0; j < jlen; j++) {
6655
- r[query.columns[j].columnid] = nd.data[i][nd.columns[j].columnid];
6653
+ if (query.columns.length) {
6654
+ jlen = Math.min(query.columns.length, nd.columns.length);
6655
+ for (var j = 0; j < jlen; j++) {
6656
+ r[query.columns[j].columnid] = nd.data[i][nd.columns[j].columnid];
6657
+ }
6658
+ } else {
6659
+ jlen = nd.columns.length;
6660
+ for (var j = 0; j < jlen; j++) {
6661
+ r[nd.columns[j].columnid] = nd.data[i][nd.columns[j].columnid];
6662
+ }
6656
6663
  }
6657
6664
  ud.push(r);
6658
6665
  }
@@ -17887,43 +17894,6 @@ yy.Assert.prototype.execute = function (databaseid) {
17887
17894
  return 1;
17888
17895
  };
17889
17896
 
17890
- //
17891
- // 91websql.js
17892
- // WebSQL database support
17893
- // (c) 2014, Andrey Gershun
17894
- //
17895
-
17896
- var WEBSQL = (alasql.engines.WEBSQL = function () {});
17897
-
17898
- WEBSQL.createDatabase = function (wdbid, args, dbid, cb) {
17899
- var res = 1;
17900
- var wdb = openDatabase(wdbid, args[0], args[1], args[2]);
17901
- if (this.dbid) {
17902
- var db = alasql.createDatabase(this.dbid);
17903
- db.engineid = 'WEBSQL';
17904
- db.wdbid = wdbid;
17905
- db.wdb = db;
17906
- }
17907
- if (!wdb) {
17908
- throw new Error('Cannot create WebSQL database "' + this.dbid + '"');
17909
- }
17910
- if (cb) cb(res);
17911
- return res;
17912
- };
17913
-
17914
- WEBSQL.dropDatabase = function (databaseid) {
17915
- throw new Error('This is impossible to drop WebSQL database.');
17916
- };
17917
-
17918
- WEBSQL.attachDatabase = function (databaseid, dbid, args, params, cb) {
17919
- var res = 1;
17920
- if (alasql.databases[dbid]) {
17921
- throw new Error('Unable to attach database as "' + dbid + '" because it already exists');
17922
- }
17923
- alasql.openDatabase(databaseid, args[0], args[1], args[2]);
17924
- return res;
17925
- };
17926
-
17927
17897
  //
17928
17898
  // 91indexeddb.js
17929
17899
  // AlaSQL IndexedDB module
@@ -18726,8 +18696,8 @@ LS.rollback = function (databaseid, cb) {
18726
18696
  };
18727
18697
 
18728
18698
  //
18729
- // 91websql.js
18730
- // WebSQL database support
18699
+ // 93sqlite.js
18700
+ // SQLite database support
18731
18701
  // (c) 2014, Andrey Gershun
18732
18702
  //
18733
18703