@nativescript-community/sqlite 3.4.1 → 3.4.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/README.md +49 -7
- package/nanosql/index.js +3 -1
- package/nanosql/index.js.map +1 -1
- package/package.json +12 -5
- package/platforms/android/native-api-usage.json +4 -3
- package/scripts/before-prepare.js +30 -0
- package/scripts/before-prepare.js.map +1 -1
- package/sqlite.android.d.ts +3 -2
- package/sqlite.android.js +4 -5
- package/sqlite.android.js.map +1 -1
- package/sqlite.common.d.ts +4 -4
- package/sqlite.common.js +1 -0
- package/sqlite.common.js.map +1 -1
- package/sqlite.ios.d.ts +6 -6
- package/sqlite.ios.js +259 -21
- package/sqlite.ios.js.map +1 -1
- package/sqlitedatabase.android.d.ts +9 -39
- package/sqlitedatabase.android.js +25 -21
- package/sqlitedatabase.android.js.map +1 -1
- package/sqlitedatabase.d.ts +1 -0
- package/typeorm/NativescriptDriver.d.ts +34 -0
- package/typeorm/NativescriptDriver.js +28 -1
- package/typeorm/NativescriptDriver.js.map +1 -1
- package/typeorm/NativescriptQueryRunner.d.ts +13 -7
- package/typeorm/NativescriptQueryRunner.js +19 -1
- package/typeorm/NativescriptQueryRunner.js.map +1 -1
- package/typeorm/index.d.ts +13 -0
- package/typeorm/index.js +1 -0
- package/typeorm/index.js.map +1 -1
- package/typings/objc!FMDB.d.ts +487 -0
- package/worker.js +31 -2
- package/worker.js.map +1 -1
- package/CHANGELOG.md +0 -230
- package/before-prepare.js.map +0 -1
- package/postinstall.d.ts +0 -0
- package/postinstall.js +0 -2
- package/postinstall.js.map +0 -1
- package/preuninstall.d.ts +0 -0
- package/preuninstall.js +0 -2
- package/preuninstall.js.map +0 -1
package/sqlite.ios.js
CHANGED
@@ -1,26 +1,93 @@
|
|
1
|
-
import { paramsToStringArray, throwError
|
1
|
+
import { paramsToStringArray, throwError } from './sqlite.common';
|
2
2
|
const iosProperty = (_self, property) => {
|
3
3
|
if (typeof property === 'function') {
|
4
|
+
// xCode < 8
|
4
5
|
return property.call(_self);
|
5
6
|
}
|
6
7
|
else {
|
8
|
+
// xCode >= 8
|
7
9
|
return property;
|
8
10
|
}
|
9
11
|
};
|
10
|
-
const toCharPtr = (str) => {
|
11
|
-
const objcStr = NSString.stringWithString(str);
|
12
|
-
const size = strlen(objcStr.UTF8String) + 1;
|
13
|
-
const buffer = interop.alloc(size);
|
14
|
-
objcStr.getCStringMaxLengthEncoding(buffer, size, NSUTF8StringEncoding);
|
15
|
-
return buffer;
|
16
|
-
};
|
17
12
|
const getNewCursorStatement = (statement) => ({
|
18
13
|
statement,
|
19
14
|
built: false,
|
20
15
|
columns: [],
|
21
|
-
count: undefined
|
16
|
+
count: undefined
|
22
17
|
});
|
18
|
+
// const getValuesAsString = (
|
19
|
+
// statement: interop.Reference<any>,
|
20
|
+
// column: number
|
21
|
+
// ) => {
|
22
|
+
// const type = sqlite3_column_type(statement, column);
|
23
|
+
// switch (type) {
|
24
|
+
// case 1: // Int
|
25
|
+
// case 2: // Float
|
26
|
+
// case 3: // Text
|
27
|
+
// return NSString.stringWithUTF8String(
|
28
|
+
// sqlite3_column_text(statement, column)
|
29
|
+
// ).toString();
|
30
|
+
// case 4: // Blob
|
31
|
+
// return NSData.dataWithBytesLength(
|
32
|
+
// sqlite3_column_blob(statement, column),
|
33
|
+
// sqlite3_column_bytes(statement, column)
|
34
|
+
// );
|
35
|
+
// case 5: // Null
|
36
|
+
// return null;
|
37
|
+
// default:
|
38
|
+
// throwError(`unknown.type: ${type}`);
|
39
|
+
// }
|
40
|
+
// };
|
41
|
+
// const getValues = (statement: FMResultSet, column: number) => {
|
42
|
+
// const type = statement.;
|
43
|
+
// switch (type) {
|
44
|
+
// case 1: // Int
|
45
|
+
// return sqlite3_column_int64(statement, column);
|
46
|
+
// case 2: // Float
|
47
|
+
// return sqlite3_column_double(statement, column);
|
48
|
+
// case 3: // Text
|
49
|
+
// return NSString.stringWithUTF8String(
|
50
|
+
// sqlite3_column_text(statement, column)
|
51
|
+
// ).toString();
|
52
|
+
// case 4: // Blob
|
53
|
+
// return NSData.dataWithBytesLength(
|
54
|
+
// sqlite3_column_blob(statement, column),
|
55
|
+
// sqlite3_column_bytes(statement, column)
|
56
|
+
// );
|
57
|
+
// case 5: // Null
|
58
|
+
// return null;
|
59
|
+
// default:
|
60
|
+
// throwError(`unknown.type: ${type}`);
|
61
|
+
// return null;
|
62
|
+
// }
|
63
|
+
// };
|
64
|
+
// const getColumns = (
|
65
|
+
// statement: interop.Reference<any>,
|
66
|
+
// cursorSt: CursorStatement,
|
67
|
+
// asObject: boolean
|
68
|
+
// ) => {
|
69
|
+
// if (!cursorSt.built) {
|
70
|
+
// cursorSt.count = sqlite3_column_count(statement);
|
71
|
+
// if (asObject) {
|
72
|
+
// for (let index = 0; index < cursorSt.count; index++) {
|
73
|
+
// let colName = NSString.stringWithUTF8String(
|
74
|
+
// sqlite3_column_name(statement, index)
|
75
|
+
// ).toString();
|
76
|
+
// if (!colName || cursorSt.columns.indexOf(colName) >= 0) {
|
77
|
+
// colName = `column[${index}]`;
|
78
|
+
// }
|
79
|
+
// cursorSt.columns = [...cursorSt.columns, colName];
|
80
|
+
// }
|
81
|
+
// }
|
82
|
+
// cursorSt.built = true;
|
83
|
+
// }
|
84
|
+
// return cursorSt.count;
|
85
|
+
// };
|
23
86
|
function getResultsAsObject(cursorSt, transformBlobs) {
|
87
|
+
// const count = cursorSt.columnCount;
|
88
|
+
// if (!count) {
|
89
|
+
// return null;
|
90
|
+
// }
|
24
91
|
const data = {};
|
25
92
|
const dict = cursorSt.resultDictionary;
|
26
93
|
dict.enumerateKeysAndObjectsUsingBlock((key, value) => {
|
@@ -30,9 +97,11 @@ function getResultsAsObject(cursorSt, transformBlobs) {
|
|
30
97
|
data[key] = value;
|
31
98
|
}
|
32
99
|
});
|
100
|
+
// for (let index = 0; index < count; index++) {
|
101
|
+
// data[cursorSt.columnNameForIndex(index)] = getValues(cursorSt, index);
|
102
|
+
// }
|
33
103
|
return data;
|
34
104
|
}
|
35
|
-
;
|
36
105
|
function getResultsAsArray(cursorSt, transformBlobs) {
|
37
106
|
const data = [];
|
38
107
|
const dict = cursorSt.resultDictionary;
|
@@ -43,25 +112,142 @@ function getResultsAsArray(cursorSt, transformBlobs) {
|
|
43
112
|
data.push(value);
|
44
113
|
}
|
45
114
|
});
|
115
|
+
// for (let index = 0; index < count; index++) {
|
116
|
+
// data[cursorSt.columnNameForIndex(index)] = getValues(cursorSt, index);
|
117
|
+
// }
|
46
118
|
return data;
|
47
119
|
}
|
48
|
-
;
|
49
120
|
function getRealPath(dbname, create = false) {
|
50
121
|
if (dbname === ':memory:') {
|
51
122
|
return null;
|
52
123
|
}
|
53
124
|
return dbname;
|
125
|
+
// if (dbname !== "") {
|
126
|
+
// let actualPath;
|
127
|
+
// if (dbname.indexOf("/") === -1) {
|
128
|
+
// actualPath = knownFolders.documents().path;
|
129
|
+
// dbname = actualPath + "/" + dbname;
|
130
|
+
// } else {
|
131
|
+
// actualPath = dbname.substr(0, dbname.lastIndexOf("/") + 1);
|
132
|
+
// }
|
133
|
+
// // Create "databases" folder if it is missing. This causes issues on Emulators if it is missing
|
134
|
+
// // So we create it if it is missing
|
135
|
+
// // try {
|
136
|
+
// // // noinspection JSUnresolvedVariable
|
137
|
+
// // if (!File.exists(actualPath) && create) {
|
138
|
+
// // //noinspection JSUnresolvedFunction
|
139
|
+
// // const fileManager = iosProperty(
|
140
|
+
// // NSFileManager,
|
141
|
+
// // NSFileManager.defaultManager
|
142
|
+
// // );
|
143
|
+
// // //noinspection JSUnresolvedFunction
|
144
|
+
// // if (
|
145
|
+
// // !fileManager.createDirectoryAtPathWithIntermediateDirectoriesAttributesError(
|
146
|
+
// // actualPath,
|
147
|
+
// // true,
|
148
|
+
// // null
|
149
|
+
// // )
|
150
|
+
// // ) {
|
151
|
+
// // console.warn(
|
152
|
+
// // "SQLITE.CONSTRUCTOR - Creating DB Folder Error"
|
153
|
+
// // );
|
154
|
+
// // }
|
155
|
+
// // }
|
156
|
+
// // } catch (err) {
|
157
|
+
// // console.warn("SQLITE.CONSTRUCTOR - Creating DB Folder Error", err);
|
158
|
+
// // }
|
159
|
+
// return actualPath;
|
160
|
+
// }
|
54
161
|
}
|
162
|
+
// function open(filePath: string, flags?: number, readOnly?: boolean): FMDatabase {
|
163
|
+
// const db = new interop.Reference<any>();
|
164
|
+
// console.log("open", filePath, flags, readOnly, getRealPath(filePath));
|
165
|
+
// const result = sqlite3_open_v2(
|
166
|
+
// toCharPtr(getRealPath(filePath)),
|
167
|
+
// db,
|
168
|
+
// (readOnly === true ? 65537 : 65542) | flags,
|
169
|
+
// null
|
170
|
+
// );
|
171
|
+
// if (result) {
|
172
|
+
// throwError(`open: ${result}`);
|
173
|
+
// }
|
174
|
+
// return db.value;
|
175
|
+
// }
|
176
|
+
// function prepareStatement(db: FMDatabase, query: string) {
|
177
|
+
// const statement = new interop.Reference<any>();
|
178
|
+
// const result = sqlite3_prepare_v2(db, query, -1, statement, null);
|
179
|
+
// if (result) {
|
180
|
+
// throwError(`prepareStatement: ${result}`);
|
181
|
+
// }
|
182
|
+
// return statement.value as interop.Reference<any>;
|
183
|
+
// }
|
184
|
+
// function step(statement: interop.Reference<any>) {
|
185
|
+
// const result = sqlite3_step(statement);
|
186
|
+
// if (result && result !== 100 && result !== 101) {
|
187
|
+
// finalize(statement);
|
188
|
+
// throwError(`step: ${result}`);
|
189
|
+
// }
|
190
|
+
// return result;
|
191
|
+
// }
|
192
|
+
// function bind(params: SqliteParams, statement: interop.Reference<any>) {
|
193
|
+
// paramsToStringArray(params).forEach((param, i) => {
|
194
|
+
// let result;
|
195
|
+
// if (param === null) {
|
196
|
+
// result = sqlite3_bind_null(statement, i + 1);
|
197
|
+
// } else {
|
198
|
+
// result = sqlite3_bind_text(
|
199
|
+
// statement,
|
200
|
+
// i + 1,
|
201
|
+
// param,
|
202
|
+
// -1,
|
203
|
+
// sqlitehelper.getTrans()
|
204
|
+
// );
|
205
|
+
// }
|
206
|
+
// if (result) {
|
207
|
+
// finalize(statement);
|
208
|
+
// throwError(`bind: ${result}`);
|
209
|
+
// }
|
210
|
+
// });
|
211
|
+
// }
|
212
|
+
// function finalize(statement: interop.Reference<any>) {
|
213
|
+
// const result = sqlite3_finalize(statement);
|
214
|
+
// if (result) {
|
215
|
+
// throwError(`finalize: ${result}`);
|
216
|
+
// }
|
217
|
+
// }
|
55
218
|
function getRaw(db, query, params, asObject, transformBlobs) {
|
219
|
+
// const statement = prepareStatement(db, query);
|
220
|
+
// const cursorSt = getNewCursorStatement(statement);
|
221
|
+
// bind(params, statement);
|
222
|
+
// const result = step(statement);
|
223
|
+
// let data;
|
224
|
+
// if (result === 100) {
|
225
|
+
// data = asObject
|
226
|
+
// ? getResultsAsObject(cursorSt)
|
227
|
+
// : getResultsAsArray(cursorSt);
|
228
|
+
// }
|
229
|
+
// finalize(statement);
|
230
|
+
// return data;
|
56
231
|
const s = db.executeQueryWithArgumentsInArray(query, paramsToStringArray(params));
|
57
232
|
if (s) {
|
58
233
|
return asObject ? getResultsAsObject(s, transformBlobs) : getResultsAsArray(s, transformBlobs);
|
234
|
+
// while (s.next()) {
|
235
|
+
// //retrieve values for each record
|
236
|
+
// const row = getResults(s);
|
237
|
+
// if (row) {
|
238
|
+
// rows = [...rows, row];
|
239
|
+
// }
|
240
|
+
// }
|
59
241
|
}
|
60
242
|
else {
|
61
243
|
throw db.lastError();
|
62
244
|
}
|
63
245
|
}
|
64
246
|
function eachRaw(db, query, params, asObject, callback, complete, transformBlobs) {
|
247
|
+
// const statement = prepareStatement(db, query);
|
248
|
+
// const cursorSt = getNewCursorStatement(statement);
|
249
|
+
// bind(params, statement);
|
250
|
+
// let rows = [];
|
65
251
|
const getResults = asObject ? getResultsAsObject : getResultsAsArray;
|
66
252
|
return Promise.resolve()
|
67
253
|
.then(() => {
|
@@ -69,6 +255,7 @@ function eachRaw(db, query, params, asObject, callback, complete, transformBlobs
|
|
69
255
|
const s = db.executeQueryWithArgumentsInArray(query, paramsToStringArray(params));
|
70
256
|
if (s) {
|
71
257
|
while (s.next()) {
|
258
|
+
//retrieve values for each record
|
72
259
|
const row = getResults(s, transformBlobs);
|
73
260
|
if (row) {
|
74
261
|
count++;
|
@@ -79,23 +266,44 @@ function eachRaw(db, query, params, asObject, callback, complete, transformBlobs
|
|
79
266
|
else {
|
80
267
|
throw db.lastError();
|
81
268
|
}
|
269
|
+
// while (true) {
|
270
|
+
// const result = step(statement);
|
271
|
+
// if (result === 100) {
|
272
|
+
// const row = getResults(cursorSt);
|
273
|
+
// if (row) {
|
274
|
+
// count++;
|
275
|
+
// callback(null, row);
|
276
|
+
// }
|
277
|
+
// } else if (result && result !== 101) {
|
278
|
+
// finalize(statement);
|
279
|
+
// throw new Error("db_error " + result);
|
280
|
+
// } else {
|
281
|
+
// break;
|
282
|
+
// }
|
283
|
+
// }
|
284
|
+
// finalize(statement);
|
82
285
|
complete && complete(null, count);
|
83
286
|
return count;
|
84
287
|
})
|
85
|
-
.catch(err => {
|
288
|
+
.catch((err) => {
|
86
289
|
const errorCB = complete || callback;
|
87
290
|
if (errorCB) {
|
88
291
|
errorCB(err, null);
|
89
292
|
}
|
90
293
|
return Promise.reject(err);
|
91
294
|
});
|
295
|
+
// return rows;
|
92
296
|
}
|
93
297
|
function selectRaw(db, query, params, asObject, transformBlobs) {
|
298
|
+
// const statement = prepareStatement(db, query);
|
299
|
+
// const cursorSt = getNewCursorStatement(statement);
|
300
|
+
// bind(params, statement);
|
94
301
|
let rows = [];
|
95
302
|
const getResults = asObject ? getResultsAsObject : getResultsAsArray;
|
96
303
|
const s = db.executeQueryWithArgumentsInArray(query, paramsToStringArray(params));
|
97
304
|
if (s) {
|
98
305
|
while (s.next()) {
|
306
|
+
//retrieve values for each record
|
99
307
|
const row = getResults(s, transformBlobs);
|
100
308
|
if (row) {
|
101
309
|
rows = [...rows, row];
|
@@ -105,11 +313,35 @@ function selectRaw(db, query, params, asObject, transformBlobs) {
|
|
105
313
|
else {
|
106
314
|
throw db.lastError();
|
107
315
|
}
|
316
|
+
// while (true) {
|
317
|
+
// const result = step(statement);
|
318
|
+
// if (result === 100) {
|
319
|
+
// const row = getResults(cursorSt);
|
320
|
+
// if (row) {
|
321
|
+
// rows = [...rows, row];
|
322
|
+
// }
|
323
|
+
// } else {
|
324
|
+
// break;
|
325
|
+
// }
|
326
|
+
// }
|
327
|
+
// finalize(statement);
|
108
328
|
return rows;
|
109
329
|
}
|
110
330
|
function execRaw(db, query, params) {
|
331
|
+
// const statement = prepareStatement(db, query);
|
332
|
+
// bind(params, statement);
|
333
|
+
// step(statement);
|
334
|
+
// finalize(statement);
|
111
335
|
const s = db.executeUpdateWithArgumentsInArray(query, paramsToStringArray(params));
|
112
336
|
if (!s) {
|
337
|
+
// while (s.next()) {
|
338
|
+
// //retrieve values for each record
|
339
|
+
// const row = getResults(s);
|
340
|
+
// if (row) {
|
341
|
+
// rows = [...rows, row];
|
342
|
+
// }
|
343
|
+
// }
|
344
|
+
// } else {
|
113
345
|
throw db.lastError();
|
114
346
|
}
|
115
347
|
}
|
@@ -146,7 +378,7 @@ export class SQLiteDatabase {
|
|
146
378
|
this._isInTransaction = false;
|
147
379
|
this.transformBlobs = !options || options.transformBlobs !== false;
|
148
380
|
}
|
149
|
-
|
381
|
+
open() {
|
150
382
|
if (!this.db) {
|
151
383
|
this.db = FMDatabase.databaseWithPath(getRealPath(this.filePath));
|
152
384
|
}
|
@@ -155,36 +387,42 @@ export class SQLiteDatabase {
|
|
155
387
|
}
|
156
388
|
return this.isOpen;
|
157
389
|
}
|
158
|
-
|
390
|
+
close() {
|
159
391
|
if (!this.isOpen)
|
160
392
|
return;
|
161
393
|
this.db.close();
|
394
|
+
// sqlite3_close_v2(db);
|
162
395
|
this.db = null;
|
163
396
|
this.isOpen = false;
|
164
397
|
}
|
165
|
-
|
398
|
+
setVersion(version) {
|
166
399
|
this.db.userVersion = version + 0;
|
400
|
+
// const query = "PRAGMA user_version=" + (version + 0).toString();
|
401
|
+
// execRaw(this.db, query);
|
167
402
|
}
|
168
|
-
|
403
|
+
getVersion() {
|
404
|
+
// const query = "PRAGMA user_version";
|
405
|
+
// const result = this.getArray(query);
|
406
|
+
// return result && (result[0] as number);
|
169
407
|
return this.db.userVersion;
|
170
408
|
}
|
171
409
|
async execute(query, params) {
|
172
410
|
return execRaw(this.db, query, params);
|
173
411
|
}
|
174
412
|
async get(query, params, transformBlobs) {
|
175
|
-
return
|
413
|
+
return getRaw(this.db, query, params, true, transformBlobs ?? this.transformBlobs) || null;
|
176
414
|
}
|
177
415
|
async getArray(query, params, transformBlobs) {
|
178
|
-
return (getRaw(this.db, query, params, false, transformBlobs
|
416
|
+
return (getRaw(this.db, query, params, false, transformBlobs ?? this.transformBlobs) || null);
|
179
417
|
}
|
180
418
|
async select(query, params, transformBlobs) {
|
181
|
-
return selectRaw(this.db, query, params, true, transformBlobs
|
419
|
+
return selectRaw(this.db, query, params, true, transformBlobs ?? this.transformBlobs);
|
182
420
|
}
|
183
421
|
async each(query, params, callback, complete, transformBlobs) {
|
184
|
-
return eachRaw(this.db, query, params, true, callback, complete, transformBlobs
|
422
|
+
return eachRaw(this.db, query, params, true, callback, complete, transformBlobs ?? this.transformBlobs);
|
185
423
|
}
|
186
424
|
async selectArray(query, params, transformBlobs) {
|
187
|
-
return selectRaw(this.db, query, params, false, transformBlobs
|
425
|
+
return selectRaw(this.db, query, params, false, transformBlobs ?? this.transformBlobs);
|
188
426
|
}
|
189
427
|
async transaction(action) {
|
190
428
|
let res;
|
package/sqlite.ios.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sqlite.ios.js","sourceRoot":"","sources":["
|
1
|
+
{"version":3,"file":"sqlite.ios.js","sourceRoot":"../src/","sources":["sqlite.ios.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2E,mBAAmB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE3I,MAAM,WAAW,GAAG,CAAgB,KAAK,EAAE,QAAW,EAAK,EAAE;IACzD,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE;QAChC,YAAY;QACZ,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC/B;SAAM;QACH,aAAa;QACb,OAAO,QAAQ,CAAC;KACnB;AACL,CAAC,CAAC;AAiBF,MAAM,qBAAqB,GAAG,CAAC,SAAiC,EAAmB,EAAE,CAAC,CAAC;IACnF,SAAS;IACT,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,EAAE;IACX,KAAK,EAAE,SAAS;CACnB,CAAC,CAAC;AAEH,8BAA8B;AAC9B,yCAAyC;AACzC,qBAAqB;AACrB,SAAS;AACT,2DAA2D;AAC3D,sBAAsB;AACtB,yBAAyB;AACzB,2BAA2B;AAC3B,0BAA0B;AAC1B,oDAAoD;AACpD,yDAAyD;AACzD,4BAA4B;AAE5B,0BAA0B;AAC1B,iDAAiD;AACjD,0DAA0D;AAC1D,0DAA0D;AAC1D,iBAAiB;AAEjB,0BAA0B;AAC1B,2BAA2B;AAE3B,mBAAmB;AACnB,mDAAmD;AACnD,QAAQ;AACR,KAAK;AAEL,kEAAkE;AAClE,+BAA+B;AAC/B,sBAAsB;AACtB,yBAAyB;AACzB,8DAA8D;AAE9D,2BAA2B;AAC3B,+DAA+D;AAE/D,0BAA0B;AAC1B,oDAAoD;AACpD,yDAAyD;AACzD,4BAA4B;AAE5B,0BAA0B;AAC1B,iDAAiD;AACjD,0DAA0D;AAC1D,0DAA0D;AAC1D,iBAAiB;AAEjB,0BAA0B;AAC1B,2BAA2B;AAE3B,mBAAmB;AACnB,mDAAmD;AACnD,2BAA2B;AAC3B,QAAQ;AACR,KAAK;AAEL,uBAAuB;AACvB,yCAAyC;AACzC,iCAAiC;AACjC,wBAAwB;AACxB,SAAS;AACT,6BAA6B;AAC7B,4DAA4D;AAC5D,0BAA0B;AAC1B,qEAAqE;AACrE,+DAA+D;AAC/D,4DAA4D;AAC5D,gCAAgC;AAChC,4EAA4E;AAC5E,oDAAoD;AACpD,oBAAoB;AACpB,qEAAqE;AACrE,gBAAgB;AAChB,YAAY;AACZ,iCAAiC;AACjC,QAAQ;AACR,6BAA6B;AAC7B,KAAK;AAEL,SAAS,kBAAkB,CAAC,QAAqB,EAAE,cAAwB;IACvE,sCAAsC;IACtC,gBAAgB;IAChB,mBAAmB;IACnB,IAAI;IACJ,MAAM,IAAI,GAAG,EAAE,CAAC;IAChB,MAAM,IAAI,GAAG,QAAQ,CAAC,gBAAgB,CAAC;IACvC,IAAI,CAAC,iCAAiC,CAAC,CAAC,GAAQ,EAAE,KAAU,EAAE,EAAE;QAC5D,IAAI,cAAc,IAAI,KAAK,YAAY,MAAM,EAAE;SAC9C;aAAM;YACH,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;SACrB;IACL,CAAC,CAAC,CAAC;IACH,gDAAgD;IAChD,6EAA6E;IAC7E,IAAI;IACJ,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAqB,EAAE,cAAwB;IACtE,MAAM,IAAI,GAAG,EAAE,CAAC;IAChB,MAAM,IAAI,GAAG,QAAQ,CAAC,gBAAgB,CAAC;IACvC,IAAI,CAAC,iCAAiC,CAAC,CAAC,GAAQ,EAAE,KAAU,EAAE,EAAE;QAC5D,IAAI,cAAc,IAAI,KAAK,YAAY,MAAM,EAAE;SAC9C;aAAM;YACH,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACpB;IACL,CAAC,CAAC,CAAC;IACH,gDAAgD;IAChD,6EAA6E;IAC7E,IAAI;IACJ,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,MAAM,GAAG,KAAK;IAC/C,IAAI,MAAM,KAAK,UAAU,EAAE;QACvB,OAAO,IAAI,CAAC;KACf;IACD,OAAO,MAAM,CAAC;IACd,uBAAuB;IACvB,sBAAsB;IACtB,wCAAwC;IACxC,sDAAsD;IACtD,8CAA8C;IAC9C,eAAe;IACf,sEAAsE;IACtE,QAAQ;IACR,uGAAuG;IACvG,0CAA0C;IAC1C,eAAe;IACf,kDAAkD;IAClD,uDAAuD;IACvD,qDAAqD;IACrD,kDAAkD;IAClD,oCAAoC;IACpC,kDAAkD;IAClD,oBAAoB;IACpB,qDAAqD;IACrD,sBAAsB;IACtB,mGAAmG;IACnG,qCAAqC;IACrC,+BAA+B;IAC/B,8BAA8B;IAC9B,uBAAuB;IACvB,qBAAqB;IACrB,mCAAmC;IACnC,yEAAyE;IACzE,wBAAwB;IACxB,mBAAmB;IACnB,eAAe;IACf,yBAAyB;IACzB,iFAAiF;IACjF,WAAW;IACX,yBAAyB;IACzB,IAAI;AACR,CAAC;AAED,oFAAoF;AACpF,+CAA+C;AAC/C,6EAA6E;AAC7E,sCAAsC;AACtC,4CAA4C;AAC5C,cAAc;AACd,uDAAuD;AACvD,eAAe;AACf,SAAS;AACT,oBAAoB;AACpB,yCAAyC;AACzC,QAAQ;AACR,uBAAuB;AACvB,IAAI;AAEJ,6DAA6D;AAC7D,sDAAsD;AACtD,yEAAyE;AACzE,oBAAoB;AACpB,qDAAqD;AACrD,QAAQ;AACR,wDAAwD;AACxD,IAAI;AAEJ,qDAAqD;AACrD,8CAA8C;AAC9C,wDAAwD;AACxD,+BAA+B;AAC/B,yCAAyC;AACzC,QAAQ;AACR,qBAAqB;AACrB,IAAI;AAEJ,2EAA2E;AAC3E,0DAA0D;AAC1D,sBAAsB;AACtB,gCAAgC;AAChC,4DAA4D;AAC5D,mBAAmB;AACnB,0CAA0C;AAC1C,6BAA6B;AAC7B,yBAAyB;AACzB,yBAAyB;AACzB,sBAAsB;AACtB,0CAA0C;AAC1C,iBAAiB;AACjB,YAAY;AACZ,wBAAwB;AACxB,mCAAmC;AACnC,6CAA6C;AAC7C,YAAY;AACZ,UAAU;AACV,IAAI;AAEJ,yDAAyD;AACzD,kDAAkD;AAClD,oBAAoB;AACpB,6CAA6C;AAC7C,QAAQ;AACR,IAAI;AAEJ,SAAS,MAAM,CAAC,EAAc,EAAE,KAAa,EAAE,MAAoB,EAAE,QAAiB,EAAE,cAAwB;IAC5G,iDAAiD;IACjD,qDAAqD;IACrD,2BAA2B;IAC3B,kCAAkC;IAClC,YAAY;IACZ,wBAAwB;IACxB,sBAAsB;IACtB,yCAAyC;IACzC,yCAAyC;IACzC,IAAI;IACJ,uBAAuB;IACvB,eAAe;IAEf,MAAM,CAAC,GAAG,EAAE,CAAC,gCAAgC,CAAC,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;IAClF,IAAI,CAAC,EAAE;QACH,OAAO,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAC/F,qBAAqB;QACrB,wCAAwC;QACxC,iCAAiC;QACjC,iBAAiB;QACjB,iCAAiC;QACjC,QAAQ;QACR,IAAI;KACP;SAAM;QACH,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC;KACxB;AACL,CAAC;AAED,SAAS,OAAO,CACZ,EAAc,EACd,KAAa,EACb,MAAoB,EACpB,QAAiB,EACjB,QAAmE,EACnE,QAA+C,EAC/C,cAAwB;IAExB,iDAAiD;IACjD,qDAAqD;IACrD,2BAA2B;IAC3B,iBAAiB;IACjB,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAErE,OAAO,OAAO,CAAC,OAAO,EAAE;SACnB,IAAI,CAAC,GAAG,EAAE;QACP,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,CAAC,GAAG,EAAE,CAAC,gCAAgC,CAAC,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;QAClF,IAAI,CAAC,EAAE;YACH,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACb,iCAAiC;gBACjC,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;gBAC1C,IAAI,GAAG,EAAE;oBACL,KAAK,EAAE,CAAC;oBACR,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;iBACvB;aACJ;SACJ;aAAM;YACH,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC;SACxB;QAED,iBAAiB;QACjB,sCAAsC;QACtC,4BAA4B;QAC5B,4CAA4C;QAC5C,qBAAqB;QACrB,uBAAuB;QACvB,mCAAmC;QACnC,YAAY;QACZ,6CAA6C;QAC7C,+BAA+B;QAC/B,iDAAiD;QACjD,eAAe;QACf,iBAAiB;QACjB,QAAQ;QACR,IAAI;QACJ,uBAAuB;QACvB,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAClC,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,MAAM,OAAO,GAAG,QAAQ,IAAI,QAAQ,CAAC;QACrC,IAAI,OAAO,EAAE;YACT,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SACtB;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEP,eAAe;AACnB,CAAC;AACD,SAAS,SAAS,CAAC,EAAc,EAAE,KAAa,EAAE,MAAoB,EAAE,QAAiB,EAAE,cAAwB;IAC/G,iDAAiD;IACjD,qDAAqD;IACrD,2BAA2B;IAC3B,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,iBAAiB,CAAC;IACrE,MAAM,CAAC,GAAG,EAAE,CAAC,gCAAgC,CAAC,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;IAClF,IAAI,CAAC,EAAE;QACH,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,iCAAiC;YACjC,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAC1C,IAAI,GAAG,EAAE;gBACL,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC;aACzB;SACJ;KACJ;SAAM;QACH,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC;KACxB;IACD,iBAAiB;IACjB,sCAAsC;IACtC,4BAA4B;IAC5B,4CAA4C;IAC5C,qBAAqB;IACrB,qCAAqC;IACrC,YAAY;IACZ,eAAe;IACf,iBAAiB;IACjB,QAAQ;IACR,IAAI;IACJ,uBAAuB;IACvB,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,SAAS,OAAO,CAAC,EAAc,EAAE,KAAa,EAAE,MAAqB;IACjE,iDAAiD;IACjD,2BAA2B;IAC3B,mBAAmB;IACnB,uBAAuB;IACvB,MAAM,CAAC,GAAG,EAAE,CAAC,iCAAiC,CAAC,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;IACnF,IAAI,CAAC,CAAC,EAAE;QACJ,qBAAqB;QACrB,wCAAwC;QACxC,iCAAiC;QACjC,iBAAiB;QACjB,iCAAiC;QACjC,QAAQ;QACR,IAAI;QACJ,WAAW;QACX,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC;KACxB;AACL,CAAC;AAED,KAAK,UAAU,cAAc,CAAU,EAAc,EAAE,MAA2C,EAAE,kBAA2B;IAC3H,IAAI;QACA,IAAI,kBAAkB,EAAE;YACpB,OAAO,CAAC,EAAE,EAAE,6BAA6B,CAAC,CAAC;SAC9C;QACD,MAAM,SAAS,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,GAAG,EAAE;YAChB,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC;QAC3B,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,kBAAkB,EAAE;YACxC,OAAO,CAAC,EAAE,EAAE,oBAAoB,CAAC,CAAC;SACrC;aAAM,IAAI,SAAS,CAAC,KAAK,IAAI,kBAAkB,EAAE;YAC9C,OAAO,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC;SACvC;QACD,OAAO,MAAM,CAAC;KACjB;IAAC,OAAO,CAAC,EAAE;QACR,IAAI,kBAAkB,EAAE;YACpB,OAAO,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC;SACvC;QACD,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;KACf;AACL,CAAC;AAED,MAAM,OAAO,cAAc;IAGvB,YACW,QAAgB,EACvB,OAIC;QALM,aAAQ,GAAR,QAAQ,CAAQ;QAS3B,WAAM,GAAG,KAAK,CAAC;QA8Cf,qBAAgB,GAAG,KAAK,CAAC;QAhDrB,IAAI,CAAC,cAAc,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,cAAc,KAAK,KAAK,CAAC;IACvE,CAAC;IAED,IAAI;QACA,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACV,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;SACrE;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACd,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;SAChC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IACD,KAAK;QACD,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAChB,wBAAwB;QACxB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACxB,CAAC;IACD,UAAU,CAAC,OAAe;QACtB,IAAI,CAAC,EAAE,CAAC,WAAW,GAAG,OAAO,GAAG,CAAC,CAAC;QAClC,mEAAmE;QACnE,2BAA2B;IAC/B,CAAC;IACD,UAAU;QACN,uCAAuC;QACvC,uCAAuC;QACvC,0CAA0C;QAC1C,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;IAC/B,CAAC;IACD,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,MAAqB;QAC9C,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,KAAa,EAAE,MAAqB,EAAE,cAAwB;QACpE,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;IAC/F,CAAC;IACD,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,MAAqB,EAAE,cAAwB;QACzE,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAkB,CAAC;IACnH,CAAC;IACD,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,MAAqB,EAAE,cAAwB;QACvE,OAAO,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,IAAI,IAAI,CAAC,cAAc,CAAgB,CAAC;IACzG,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,KAAa,EAAE,MAAoB,EAAE,QAAmD,EAAE,QAA+C,EAAE,cAAwB;QAC1K,OAAO,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAA+C,EAAE,QAAQ,EAAE,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC;IACnJ,CAAC;IACD,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,MAAqB,EAAE,cAAwB;QAC5E,OAAO,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,IAAI,IAAI,CAAC,cAAc,CAAoB,CAAC;IAC9G,CAAC;IAED,KAAK,CAAC,WAAW,CAAU,MAA2C;QAClE,IAAI,GAAG,CAAC;QACR,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;SACjC;aAAM;YACH,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;SAChD;QACD,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AAED,MAAM,UAAU,YAAY,CACxB,QAAgB,EAChB,KAAc,EACd,OAIC;IAED,MAAM,GAAG,GAAG,IAAI,cAAc,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/D,GAAG,CAAC,IAAI,EAAE,CAAC;IACX,OAAO,GAAG,CAAC;AACf,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,EAAE;IAC/C,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACjC,MAAM,WAAW,GAAG,WAAW,CAAC,aAAa,EAAE,aAAa,CAAC,cAAc,CAAC,CAAC;IAC7E,IAAI,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE;QACxC,OAAO,WAAW,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;KACtD;IACD,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC"}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { SqliteParams
|
1
|
+
import { SqliteParams } from './sqlite.common';
|
2
2
|
export declare function byteArrayToBuffer(value: any): Uint8Array;
|
3
3
|
export declare class SQLiteDatabaseBase {
|
4
4
|
filePath: string;
|
@@ -22,46 +22,16 @@ export declare class SQLiteDatabaseBase {
|
|
22
22
|
};
|
23
23
|
}): void;
|
24
24
|
lastId: number;
|
25
|
-
sendMessageToWorker(nativeData: any, messageData: any, timeout?: number): Promise<
|
26
|
-
id: number;
|
27
|
-
nativeDatas?: {
|
28
|
-
[k: string]: any;
|
29
|
-
};
|
30
|
-
[k: string]: any;
|
31
|
-
}>;
|
25
|
+
sendMessageToWorker(nativeData: any, messageData: any, timeout?: number): Promise<any>;
|
32
26
|
get isOpen(): boolean;
|
33
|
-
close():
|
27
|
+
close(): void;
|
34
28
|
setVersion(version: number): Promise<void>;
|
35
|
-
getVersion():
|
36
|
-
execute(query: string, params?: SqliteParams): Promise<
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
};
|
42
|
-
}>;
|
43
|
-
get(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<SqliteRow>;
|
44
|
-
getArray(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<any[] | {
|
45
|
-
[k: string]: any;
|
46
|
-
id: number;
|
47
|
-
nativeDatas?: {
|
48
|
-
[k: string]: any;
|
49
|
-
};
|
50
|
-
}>;
|
51
|
-
select(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<SqliteRow[] | {
|
52
|
-
[k: string]: any;
|
53
|
-
id: number;
|
54
|
-
nativeDatas?: {
|
55
|
-
[k: string]: any;
|
56
|
-
};
|
57
|
-
}>;
|
58
|
-
selectArray(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<any[][] | {
|
59
|
-
[k: string]: any;
|
60
|
-
id: number;
|
61
|
-
nativeDatas?: {
|
62
|
-
[k: string]: any;
|
63
|
-
};
|
64
|
-
}>;
|
29
|
+
getVersion(): number;
|
30
|
+
execute(query: string, params?: SqliteParams): Promise<any>;
|
31
|
+
get(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<any>;
|
32
|
+
getArray(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<any>;
|
33
|
+
select(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<any>;
|
34
|
+
selectArray(query: string, params?: SqliteParams, transformBlobs?: boolean): Promise<any>;
|
65
35
|
each(query: string, params: SqliteParams, callback: (error: Error, result: any) => void, complete: (error: Error, count: number) => void, transformBlobs?: boolean): Promise<number>;
|
66
36
|
transaction<T = any>(action: (cancel?: () => void) => Promise<T>): Promise<T>;
|
67
37
|
}
|
@@ -130,7 +130,7 @@ export class SQLiteDatabaseBase {
|
|
130
130
|
this._isInTransaction = false;
|
131
131
|
this.threading = false;
|
132
132
|
this.threading = options && options.threading === true;
|
133
|
-
this.flags = options
|
133
|
+
this.flags = options?.flags;
|
134
134
|
this.transformBlobs = !options || options.transformBlobs !== false;
|
135
135
|
}
|
136
136
|
onWorkerMessage(event) {
|
@@ -145,6 +145,7 @@ export class SQLiteDatabaseBase {
|
|
145
145
|
else {
|
146
146
|
executor.resolve(data.result);
|
147
147
|
}
|
148
|
+
// }
|
148
149
|
});
|
149
150
|
delete messagePromises[id];
|
150
151
|
}
|
@@ -160,10 +161,12 @@ export class SQLiteDatabaseBase {
|
|
160
161
|
let timeoutTimer;
|
161
162
|
if (timeout > 0) {
|
162
163
|
timeoutTimer = setTimeout(() => {
|
164
|
+
// we need to try catch because the simple fact of creating a new Error actually throws.
|
165
|
+
// so we will get an uncaughtException
|
163
166
|
try {
|
164
167
|
reject(new Error('timeout'));
|
165
168
|
}
|
166
|
-
catch
|
169
|
+
catch { }
|
167
170
|
delete messagePromises[id];
|
168
171
|
}, timeout);
|
169
172
|
}
|
@@ -178,7 +181,7 @@ export class SQLiteDatabaseBase {
|
|
178
181
|
dbOptions: {
|
179
182
|
transformBlobs: this.transformBlobs
|
180
183
|
},
|
181
|
-
nativeDataKeys: keys
|
184
|
+
nativeDataKeys: keys
|
182
185
|
}, messageData);
|
183
186
|
this.worker.postMessage(mData);
|
184
187
|
});
|
@@ -186,31 +189,32 @@ export class SQLiteDatabaseBase {
|
|
186
189
|
get isOpen() {
|
187
190
|
return this.db && this.db.isOpen();
|
188
191
|
}
|
189
|
-
|
192
|
+
close() {
|
190
193
|
if (!this.isOpen)
|
191
194
|
return;
|
192
195
|
if (this.worker) {
|
193
196
|
this.worker.postMessage({
|
194
|
-
type: 'terminate'
|
197
|
+
type: 'terminate'
|
195
198
|
});
|
196
199
|
this.worker = null;
|
197
200
|
}
|
198
201
|
this.db.close();
|
202
|
+
// sqlite3_close_v2(db);
|
199
203
|
this.db = null;
|
200
204
|
}
|
201
205
|
async setVersion(version) {
|
202
206
|
this.db.setVersion(version);
|
203
207
|
}
|
204
|
-
|
208
|
+
getVersion() {
|
205
209
|
return this.db.getVersion();
|
206
210
|
}
|
207
211
|
async execute(query, params) {
|
208
212
|
if (this.threading) {
|
209
213
|
return this.sendMessageToWorker({
|
210
|
-
db: this.db
|
214
|
+
db: this.db
|
211
215
|
}, {
|
212
216
|
callName: 'execute',
|
213
|
-
args: [query, params]
|
217
|
+
args: [query, params]
|
214
218
|
});
|
215
219
|
}
|
216
220
|
return this.db.execSQL(query, paramsToStringArray(params));
|
@@ -218,49 +222,49 @@ export class SQLiteDatabaseBase {
|
|
218
222
|
async get(query, params, transformBlobs) {
|
219
223
|
if (this.threading) {
|
220
224
|
return this.sendMessageToWorker({
|
221
|
-
db: this.db
|
225
|
+
db: this.db
|
222
226
|
}, {
|
223
227
|
callName: 'get',
|
224
|
-
args: [query, params]
|
228
|
+
args: [query, params]
|
225
229
|
});
|
226
230
|
}
|
227
|
-
return rawSql(dataFromCursor)(this.db, transformBlobs
|
231
|
+
return rawSql(dataFromCursor)(this.db, transformBlobs ?? this.transformBlobs)(query, params)[0] || null;
|
228
232
|
}
|
229
233
|
async getArray(query, params, transformBlobs) {
|
230
234
|
if (this.threading) {
|
231
235
|
return this.sendMessageToWorker({
|
232
|
-
db: this.db
|
236
|
+
db: this.db
|
233
237
|
}, {
|
234
238
|
callName: 'getArray',
|
235
|
-
args: [query, params]
|
239
|
+
args: [query, params]
|
236
240
|
});
|
237
241
|
}
|
238
|
-
return rawSql(arrayFromCursor)(this.db, transformBlobs
|
242
|
+
return rawSql(arrayFromCursor)(this.db, transformBlobs ?? this.transformBlobs)(query, params)[0] || null;
|
239
243
|
}
|
240
244
|
async select(query, params, transformBlobs) {
|
241
245
|
if (this.threading) {
|
242
246
|
return this.sendMessageToWorker({
|
243
|
-
db: this.db
|
247
|
+
db: this.db
|
244
248
|
}, {
|
245
249
|
callName: 'select',
|
246
|
-
args: [query, params]
|
250
|
+
args: [query, params]
|
247
251
|
});
|
248
252
|
}
|
249
|
-
return rawSql(dataFromCursor)(this.db, transformBlobs
|
253
|
+
return rawSql(dataFromCursor)(this.db, transformBlobs ?? this.transformBlobs)(query, params);
|
250
254
|
}
|
251
255
|
async selectArray(query, params, transformBlobs) {
|
252
256
|
if (this.threading) {
|
253
257
|
return this.sendMessageToWorker({
|
254
|
-
db: this.db
|
258
|
+
db: this.db
|
255
259
|
}, {
|
256
260
|
callName: 'selectArray',
|
257
|
-
args: [query, params]
|
261
|
+
args: [query, params]
|
258
262
|
});
|
259
263
|
}
|
260
|
-
return rawSql(arrayFromCursor)(this.db, transformBlobs
|
264
|
+
return rawSql(arrayFromCursor)(this.db, transformBlobs ?? this.transformBlobs)(query, params);
|
261
265
|
}
|
262
266
|
async each(query, params, callback, complete, transformBlobs) {
|
263
|
-
return eachRaw(dataFromCursor)(this.db, transformBlobs
|
267
|
+
return eachRaw(dataFromCursor)(this.db, transformBlobs ?? this.transformBlobs)(query, params, callback, complete);
|
264
268
|
}
|
265
269
|
async transaction(action) {
|
266
270
|
return transactionRaw(this.db, action);
|