@op-engineering/op-sqlite 11.0.2 → 11.2.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 +3 -1
- package/android/src/main/java/com/op/sqlite/OPSQLiteModule.kt +5 -0
- package/cpp/DBHostObject.cpp +36 -94
- package/cpp/bridge.cpp +10 -8
- package/ios/OPSQLite.mm +7 -0
- package/lib/commonjs/index.js +33 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +31 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/index.d.ts +6 -3
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +48 -5
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-

|
|
2
2
|
|
|
3
3
|
Created by [@ospfranco](https://twitter.com/ospfranco). **Please consider sponsoring!**.
|
|
4
4
|
|
|
@@ -21,6 +21,8 @@ Some of the big supported features:
|
|
|
21
21
|
- sqlite-vec plugin
|
|
22
22
|
- Reactive queries
|
|
23
23
|
- Custom tokenizers
|
|
24
|
+
- Load runtime extensions
|
|
25
|
+
- JSONB support
|
|
24
26
|
|
|
25
27
|
# License
|
|
26
28
|
|
|
@@ -50,6 +50,11 @@ internal class OPSQLiteModule(context: ReactApplicationContext?) : ReactContextB
|
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
@ReactMethod(isBlockingSynchronousMethod = true)
|
|
54
|
+
fun getDylibPath(bundleId: String, name: String) {
|
|
55
|
+
throw Exception("Do not call getDylibPath on Android")
|
|
56
|
+
}
|
|
57
|
+
|
|
53
58
|
@ReactMethod
|
|
54
59
|
fun moveAssetsDatabase(args: ReadableMap, promise: Promise) {
|
|
55
60
|
val filename = args.getString("filename")!!
|
package/cpp/DBHostObject.cpp
CHANGED
|
@@ -17,12 +17,14 @@ namespace jsi = facebook::jsi;
|
|
|
17
17
|
namespace react = facebook::react;
|
|
18
18
|
|
|
19
19
|
#ifdef OP_SQLITE_USE_LIBSQL
|
|
20
|
-
void DBHostObject::flush_pending_reactive_queries(
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
void DBHostObject::flush_pending_reactive_queries(
|
|
21
|
+
std::shared_ptr<jsi::Value> resolve) {
|
|
22
|
+
invoker->invokeAsync(
|
|
23
|
+
[this, resolve]() { resolve->asObject(rt).asFunction(rt).call(rt, {}); });
|
|
23
24
|
}
|
|
24
25
|
#else
|
|
25
|
-
void DBHostObject::flush_pending_reactive_queries(
|
|
26
|
+
void DBHostObject::flush_pending_reactive_queries(
|
|
27
|
+
std::shared_ptr<jsi::Value> resolve) {
|
|
26
28
|
for (const auto &query_ptr : pending_reactive_queries) {
|
|
27
29
|
auto query = query_ptr.get();
|
|
28
30
|
|
|
@@ -51,9 +53,9 @@ void DBHostObject::flush_pending_reactive_queries(std::shared_ptr<jsi::Value> re
|
|
|
51
53
|
});
|
|
52
54
|
}
|
|
53
55
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
56
|
+
|
|
57
|
+
pending_reactive_queries.clear();
|
|
58
|
+
|
|
57
59
|
invoker->invokeAsync(
|
|
58
60
|
[this, resolve]() { resolve->asObject(rt).asFunction(rt).call(rt, {}); });
|
|
59
61
|
}
|
|
@@ -365,6 +367,26 @@ void DBHostObject::create_jsi_functions() {
|
|
|
365
367
|
return promise;
|
|
366
368
|
});
|
|
367
369
|
|
|
370
|
+
auto execute_sync = HOSTFN("executeSync") {
|
|
371
|
+
|
|
372
|
+
std::string query = args[0].asString(rt).utf8(rt);
|
|
373
|
+
std::vector<JSVariant> params;
|
|
374
|
+
|
|
375
|
+
if (count == 2) {
|
|
376
|
+
params = to_variant_vec(rt, args[1]);
|
|
377
|
+
}
|
|
378
|
+
#ifdef OP_SQLITE_USE_LIBSQL
|
|
379
|
+
auto status = opsqlite_libsql_execute(db_name, query, ¶ms);
|
|
380
|
+
#else
|
|
381
|
+
auto status = opsqlite_execute(db_name, query, ¶ms);
|
|
382
|
+
#endif
|
|
383
|
+
|
|
384
|
+
if (status.type != SQLiteOk) {
|
|
385
|
+
throw std::runtime_error(status.message);
|
|
386
|
+
}
|
|
387
|
+
return create_js_rows(rt, status);
|
|
388
|
+
});
|
|
389
|
+
|
|
368
390
|
auto execute = HOSTFN("execute") {
|
|
369
391
|
std::string query = args[0].asString(rt).utf8(rt);
|
|
370
392
|
std::vector<JSVariant> params;
|
|
@@ -835,6 +857,7 @@ void DBHostObject::create_jsi_functions() {
|
|
|
835
857
|
function_map["detach"] = std::move(detach);
|
|
836
858
|
function_map["close"] = std::move(close);
|
|
837
859
|
function_map["execute"] = std::move(execute);
|
|
860
|
+
function_map["executeSync"] = std::move(execute_sync);
|
|
838
861
|
function_map["executeRaw"] = std::move(execute_raw);
|
|
839
862
|
function_map["executeWithHostObjects"] = std::move(execute_with_host_objects);
|
|
840
863
|
function_map["delete"] = std::move(remove);
|
|
@@ -863,97 +886,16 @@ std::vector<jsi::PropNameID> DBHostObject::getPropertyNames(jsi::Runtime &rt) {
|
|
|
863
886
|
|
|
864
887
|
jsi::Value DBHostObject::get(jsi::Runtime &rt,
|
|
865
888
|
const jsi::PropNameID &propNameID) {
|
|
866
|
-
|
|
867
889
|
auto name = propNameID.utf8(rt);
|
|
868
|
-
if (name
|
|
869
|
-
return
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
}
|
|
874
|
-
if (name == "attach") {
|
|
875
|
-
return jsi::Value(rt, function_map["attach"]);
|
|
876
|
-
}
|
|
877
|
-
if (name == "detach") {
|
|
878
|
-
return jsi::Value(rt, function_map["detach"]);
|
|
879
|
-
}
|
|
880
|
-
if (name == "close") {
|
|
881
|
-
return jsi::Value(rt, function_map["close"]);
|
|
882
|
-
}
|
|
883
|
-
if (name == "executeRaw") {
|
|
884
|
-
return jsi::Value(rt, function_map["executeRaw"]);
|
|
885
|
-
}
|
|
886
|
-
if (name == "executeWithHostObjects") {
|
|
887
|
-
return jsi::Value(rt, function_map["executeWithHostObjects"]);
|
|
888
|
-
}
|
|
889
|
-
if (name == "delete") {
|
|
890
|
-
return jsi::Value(rt, function_map["delete"]);
|
|
891
|
-
}
|
|
892
|
-
if (name == "executeBatch") {
|
|
893
|
-
return jsi::Value(rt, function_map["executeBatch"]);
|
|
894
|
-
}
|
|
895
|
-
if (name == "prepareStatement") {
|
|
896
|
-
return jsi::Value(rt, function_map["prepareStatement"]);
|
|
897
|
-
}
|
|
898
|
-
if (name == "getDbPath") {
|
|
899
|
-
return jsi::Value(rt, function_map["getDbPath"]);
|
|
900
|
-
}
|
|
901
|
-
if (name == "sync") {
|
|
902
|
-
return jsi::Value(rt, function_map["sync"]);
|
|
903
|
-
}
|
|
904
|
-
#ifdef OP_SQLITE_USE_LIBSQL
|
|
905
|
-
if (name == "loadFile") {
|
|
906
|
-
return HOSTFN("loadFile") {
|
|
907
|
-
throw std::runtime_error("[op-sqlite] Load file not implemented");
|
|
908
|
-
});
|
|
909
|
-
}
|
|
910
|
-
if (name == "updateHook") {
|
|
911
|
-
return HOSTFN("updateHook") {
|
|
912
|
-
throw std::runtime_error("[op-sqlite] Hooks not supported in libsql");
|
|
913
|
-
});
|
|
914
|
-
}
|
|
915
|
-
if (name == "commitHook") {
|
|
916
|
-
return HOSTFN("commitHook") {
|
|
917
|
-
throw std::runtime_error("[op-sqlite] Hooks not supported in libsql");
|
|
918
|
-
});
|
|
919
|
-
}
|
|
920
|
-
if (name == "rollbackHook") {
|
|
921
|
-
return HOSTFN("rollbackHook") {
|
|
922
|
-
throw std::runtime_error("[op-sqlite] Hooks not supported in libsql");
|
|
923
|
-
});
|
|
924
|
-
}
|
|
925
|
-
if (name == "loadExtension") {
|
|
926
|
-
return HOSTFN("loadExtension") {
|
|
927
|
-
throw std::runtime_error("[op-sqlite] Hooks not supported in libsql");
|
|
928
|
-
});
|
|
929
|
-
}
|
|
930
|
-
if (name == "reactiveExecute") {
|
|
931
|
-
return HOSTFN("reactiveExecute") {
|
|
932
|
-
throw std::runtime_error("[op-sqlite] Hooks not supported in libsql");
|
|
890
|
+
if (function_map.count(name) != 1) {
|
|
891
|
+
return HOSTFN(name.c_str()) {
|
|
892
|
+
throw std::runtime_error(
|
|
893
|
+
"[op-sqlite] Function " + name +
|
|
894
|
+
" not implemented for current backend (libsql or sqlcipher)");
|
|
933
895
|
});
|
|
934
896
|
}
|
|
935
|
-
#else
|
|
936
|
-
if (name == "loadFile") {
|
|
937
|
-
return jsi::Value(rt, function_map["loadFile"]);
|
|
938
|
-
}
|
|
939
|
-
if (name == "updateHook") {
|
|
940
|
-
return jsi::Value(rt, function_map["updateHook"]);
|
|
941
|
-
}
|
|
942
|
-
if (name == "commitHook") {
|
|
943
|
-
return jsi::Value(rt, function_map["commitHook"]);
|
|
944
|
-
}
|
|
945
|
-
if (name == "rollbackHook") {
|
|
946
|
-
return jsi::Value(rt, function_map["rollbackHook"]);
|
|
947
|
-
}
|
|
948
|
-
if (name == "loadExtension") {
|
|
949
|
-
return jsi::Value(rt, function_map["loadExtension"]);
|
|
950
|
-
}
|
|
951
|
-
if (name == "reactiveExecute") {
|
|
952
|
-
return jsi::Value(rt, function_map["reactiveExecute"]);
|
|
953
|
-
}
|
|
954
|
-
#endif
|
|
955
897
|
|
|
956
|
-
return
|
|
898
|
+
return jsi::Value(rt, function_map[name]);
|
|
957
899
|
}
|
|
958
900
|
|
|
959
901
|
void DBHostObject::set(jsi::Runtime &rt, const jsi::PropNameID &name,
|
package/cpp/bridge.cpp
CHANGED
|
@@ -988,28 +988,30 @@ BridgeResult opsqlite_load_extension(std::string const &db_name,
|
|
|
988
988
|
std::string &entry_point) {
|
|
989
989
|
#ifdef OP_SQLITE_USE_PHONE_VERSION
|
|
990
990
|
throw std::runtime_error(
|
|
991
|
-
"Embedded version of SQLite does not support loading extensions");
|
|
991
|
+
"[op-sqlite] Embedded version of SQLite does not support loading extensions");
|
|
992
992
|
#else
|
|
993
993
|
check_db_open(db_name);
|
|
994
994
|
|
|
995
995
|
sqlite3 *db = dbMap[db_name];
|
|
996
|
-
int
|
|
997
|
-
|
|
996
|
+
int status = 0;
|
|
997
|
+
status = sqlite3_enable_load_extension(db, 1);
|
|
998
|
+
if (status != SQLITE_OK) {
|
|
998
999
|
return {SQLiteError, "[op-sqlite] could not enable extension loading"};
|
|
999
1000
|
}
|
|
1000
|
-
|
|
1001
|
-
const char *entry_point_cstr;
|
|
1001
|
+
|
|
1002
|
+
const char *entry_point_cstr = nullptr;
|
|
1002
1003
|
if (!entry_point.empty()) {
|
|
1003
1004
|
entry_point_cstr = entry_point.c_str();
|
|
1004
1005
|
}
|
|
1005
1006
|
|
|
1006
1007
|
char *error_message;
|
|
1007
1008
|
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
if (
|
|
1009
|
+
status = sqlite3_load_extension(db, path.c_str(), entry_point_cstr,
|
|
1010
|
+
&error_message);
|
|
1011
|
+
if (status != SQLITE_OK) {
|
|
1011
1012
|
return {SQLiteError, std::string(error_message)};
|
|
1012
1013
|
}
|
|
1014
|
+
|
|
1013
1015
|
return {SQLiteOk};
|
|
1014
1016
|
#endif
|
|
1015
1017
|
}
|
package/ios/OPSQLite.mm
CHANGED
|
@@ -93,6 +93,13 @@ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(install) {
|
|
|
93
93
|
return @true;
|
|
94
94
|
}
|
|
95
95
|
|
|
96
|
+
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(getDylibPath : (
|
|
97
|
+
NSString *)bundleId andResource : (NSString *)resourceName) {
|
|
98
|
+
NSBundle *bundle = [NSBundle bundleWithIdentifier:bundleId];
|
|
99
|
+
NSString *path = [bundle pathForResource:resourceName ofType:@""];
|
|
100
|
+
return path;
|
|
101
|
+
}
|
|
102
|
+
|
|
96
103
|
RCT_EXPORT_METHOD(moveAssetsDatabase : (NSDictionary *)args resolve : (
|
|
97
104
|
RCTPromiseResolveBlock)resolve reject : (RCTPromiseRejectBlock)reject) {
|
|
98
105
|
NSString *documentPath = [NSSearchPathForDirectoriesInDomains(
|
package/lib/commonjs/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.openSync = exports.openRemote = exports.open = exports.moveAssetsDatabase = exports.isSQLCipher = exports.isLibsql = exports.OPSQLite = exports.IOS_LIBRARY_PATH = exports.IOS_DOCUMENT_PATH = exports.ANDROID_FILES_PATH = exports.ANDROID_EXTERNAL_FILES_PATH = exports.ANDROID_DATABASE_PATH = void 0;
|
|
6
|
+
exports.openSync = exports.openRemote = exports.open = exports.moveAssetsDatabase = exports.isSQLCipher = exports.isLibsql = exports.getDylibPath = exports.OPSQLite = exports.IOS_LIBRARY_PATH = exports.IOS_DOCUMENT_PATH = exports.ANDROID_FILES_PATH = exports.ANDROID_EXTERNAL_FILES_PATH = exports.ANDROID_DATABASE_PATH = void 0;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
8
|
if (global.__OPSQLiteProxy == null) {
|
|
9
9
|
if (_reactNative.NativeModules.OPSQLite == null) {
|
|
@@ -125,6 +125,32 @@ function enhanceDB(db, options) {
|
|
|
125
125
|
const result = await db.executeWithHostObjects(query, sanitizedParams);
|
|
126
126
|
return result;
|
|
127
127
|
},
|
|
128
|
+
executeSync: (query, params) => {
|
|
129
|
+
const sanitizedParams = params?.map(p => {
|
|
130
|
+
if (ArrayBuffer.isView(p)) {
|
|
131
|
+
return p.buffer;
|
|
132
|
+
}
|
|
133
|
+
return p;
|
|
134
|
+
});
|
|
135
|
+
let intermediateResult = db.executeSync(query, sanitizedParams);
|
|
136
|
+
let rows = [];
|
|
137
|
+
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
138
|
+
let row = {};
|
|
139
|
+
let rawRow = intermediateResult.rawRows[i];
|
|
140
|
+
for (let j = 0; j < intermediateResult.columnNames.length; j++) {
|
|
141
|
+
let columnName = intermediateResult.columnNames[j];
|
|
142
|
+
let value = rawRow[j];
|
|
143
|
+
row[columnName] = value;
|
|
144
|
+
}
|
|
145
|
+
rows.push(row);
|
|
146
|
+
}
|
|
147
|
+
let res = {
|
|
148
|
+
...intermediateResult,
|
|
149
|
+
rows
|
|
150
|
+
};
|
|
151
|
+
delete res.rawRows;
|
|
152
|
+
return res;
|
|
153
|
+
},
|
|
128
154
|
execute: async (query, params) => {
|
|
129
155
|
const sanitizedParams = params?.map(p => {
|
|
130
156
|
if (ArrayBuffer.isView(p)) {
|
|
@@ -136,9 +162,10 @@ function enhanceDB(db, options) {
|
|
|
136
162
|
let rows = [];
|
|
137
163
|
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
138
164
|
let row = {};
|
|
165
|
+
let rawRow = intermediateResult.rawRows[i];
|
|
139
166
|
for (let j = 0; j < intermediateResult.columnNames.length; j++) {
|
|
140
167
|
let columnName = intermediateResult.columnNames[j];
|
|
141
|
-
let value =
|
|
168
|
+
let value = rawRow[j];
|
|
142
169
|
row[columnName] = value;
|
|
143
170
|
}
|
|
144
171
|
rows.push(row);
|
|
@@ -266,6 +293,10 @@ const moveAssetsDatabase = async args => {
|
|
|
266
293
|
return _reactNative.NativeModules.OPSQLite.moveAssetsDatabase(args);
|
|
267
294
|
};
|
|
268
295
|
exports.moveAssetsDatabase = moveAssetsDatabase;
|
|
296
|
+
const getDylibPath = (bundle, name) => {
|
|
297
|
+
return _reactNative.NativeModules.OPSQLite.getDylibPath(bundle, name);
|
|
298
|
+
};
|
|
299
|
+
exports.getDylibPath = getDylibPath;
|
|
269
300
|
const isSQLCipher = () => {
|
|
270
301
|
return OPSQLite.isSQLCipher();
|
|
271
302
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","global","__OPSQLiteProxy","NativeModules","OPSQLite","Error","install","result","proxy","exports","IOS_DOCUMENT_PATH","IOS_LIBRARY_PATH","ANDROID_DATABASE_PATH","ANDROID_FILES_PATH","ANDROID_EXTERNAL_FILES_PATH","getConstants","locks","enhanceDB","db","options","lock","queue","inProgress","startNextTransaction","length","tx","shift","setImmediate","start","enhancedDb","delete","attach","detach","executeBatch","loadFile","updateHook","commitHook","rollbackHook","loadExtension","executeRaw","getDbPath","reactiveExecute","sync","flushPendingReactiveQueries","close","url","executeWithHostObjects","query","params","sanitizedParams","map","p","ArrayBuffer","isView","buffer","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","global","__OPSQLiteProxy","NativeModules","OPSQLite","Error","install","result","proxy","exports","IOS_DOCUMENT_PATH","IOS_LIBRARY_PATH","ANDROID_DATABASE_PATH","ANDROID_FILES_PATH","ANDROID_EXTERNAL_FILES_PATH","getConstants","locks","enhanceDB","db","options","lock","queue","inProgress","startNextTransaction","length","tx","shift","setImmediate","start","enhancedDb","delete","attach","detach","executeBatch","loadFile","updateHook","commitHook","rollbackHook","loadExtension","executeRaw","getDbPath","reactiveExecute","sync","flushPendingReactiveQueries","close","url","executeWithHostObjects","query","params","sanitizedParams","map","p","ArrayBuffer","isView","buffer","executeSync","intermediateResult","rows","i","rawRows","row","rawRow","j","columnNames","columnName","value","push","res","execute","prepareStatement","stmt","bind","transaction","fn","isFinalized","commit","rollback","run","executionError","rollbackError","Promise","resolve","reject","then","catch","openSync","isLibsql","openRemote","open","moveAssetsDatabase","args","getDylibPath","bundle","name","isSQLCipher"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -115,6 +115,32 @@ function enhanceDB(db, options) {
|
|
|
115
115
|
const result = await db.executeWithHostObjects(query, sanitizedParams);
|
|
116
116
|
return result;
|
|
117
117
|
},
|
|
118
|
+
executeSync: (query, params) => {
|
|
119
|
+
const sanitizedParams = params?.map(p => {
|
|
120
|
+
if (ArrayBuffer.isView(p)) {
|
|
121
|
+
return p.buffer;
|
|
122
|
+
}
|
|
123
|
+
return p;
|
|
124
|
+
});
|
|
125
|
+
let intermediateResult = db.executeSync(query, sanitizedParams);
|
|
126
|
+
let rows = [];
|
|
127
|
+
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
128
|
+
let row = {};
|
|
129
|
+
let rawRow = intermediateResult.rawRows[i];
|
|
130
|
+
for (let j = 0; j < intermediateResult.columnNames.length; j++) {
|
|
131
|
+
let columnName = intermediateResult.columnNames[j];
|
|
132
|
+
let value = rawRow[j];
|
|
133
|
+
row[columnName] = value;
|
|
134
|
+
}
|
|
135
|
+
rows.push(row);
|
|
136
|
+
}
|
|
137
|
+
let res = {
|
|
138
|
+
...intermediateResult,
|
|
139
|
+
rows
|
|
140
|
+
};
|
|
141
|
+
delete res.rawRows;
|
|
142
|
+
return res;
|
|
143
|
+
},
|
|
118
144
|
execute: async (query, params) => {
|
|
119
145
|
const sanitizedParams = params?.map(p => {
|
|
120
146
|
if (ArrayBuffer.isView(p)) {
|
|
@@ -126,9 +152,10 @@ function enhanceDB(db, options) {
|
|
|
126
152
|
let rows = [];
|
|
127
153
|
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
128
154
|
let row = {};
|
|
155
|
+
let rawRow = intermediateResult.rawRows[i];
|
|
129
156
|
for (let j = 0; j < intermediateResult.columnNames.length; j++) {
|
|
130
157
|
let columnName = intermediateResult.columnNames[j];
|
|
131
|
-
let value =
|
|
158
|
+
let value = rawRow[j];
|
|
132
159
|
row[columnName] = value;
|
|
133
160
|
}
|
|
134
161
|
rows.push(row);
|
|
@@ -252,6 +279,9 @@ export const open = options => {
|
|
|
252
279
|
export const moveAssetsDatabase = async args => {
|
|
253
280
|
return NativeModules.OPSQLite.moveAssetsDatabase(args);
|
|
254
281
|
};
|
|
282
|
+
export const getDylibPath = (bundle, name) => {
|
|
283
|
+
return NativeModules.OPSQLite.getDylibPath(bundle, name);
|
|
284
|
+
};
|
|
255
285
|
export const isSQLCipher = () => {
|
|
256
286
|
return OPSQLite.isSQLCipher();
|
|
257
287
|
};
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeModules","global","__OPSQLiteProxy","OPSQLite","Error","install","result","proxy","IOS_DOCUMENT_PATH","IOS_LIBRARY_PATH","ANDROID_DATABASE_PATH","ANDROID_FILES_PATH","ANDROID_EXTERNAL_FILES_PATH","getConstants","locks","enhanceDB","db","options","lock","queue","inProgress","startNextTransaction","length","tx","shift","setImmediate","start","enhancedDb","delete","attach","detach","executeBatch","loadFile","updateHook","commitHook","rollbackHook","loadExtension","executeRaw","getDbPath","reactiveExecute","sync","flushPendingReactiveQueries","close","url","executeWithHostObjects","query","params","sanitizedParams","map","p","ArrayBuffer","isView","buffer","
|
|
1
|
+
{"version":3,"names":["NativeModules","global","__OPSQLiteProxy","OPSQLite","Error","install","result","proxy","IOS_DOCUMENT_PATH","IOS_LIBRARY_PATH","ANDROID_DATABASE_PATH","ANDROID_FILES_PATH","ANDROID_EXTERNAL_FILES_PATH","getConstants","locks","enhanceDB","db","options","lock","queue","inProgress","startNextTransaction","length","tx","shift","setImmediate","start","enhancedDb","delete","attach","detach","executeBatch","loadFile","updateHook","commitHook","rollbackHook","loadExtension","executeRaw","getDbPath","reactiveExecute","sync","flushPendingReactiveQueries","close","url","executeWithHostObjects","query","params","sanitizedParams","map","p","ArrayBuffer","isView","buffer","executeSync","intermediateResult","rows","i","rawRows","row","rawRow","j","columnNames","columnName","value","push","res","execute","prepareStatement","stmt","bind","transaction","fn","isFinalized","commit","rollback","run","executionError","rollbackError","Promise","resolve","reject","then","catch","openSync","isLibsql","openRemote","open","moveAssetsDatabase","args","getDylibPath","bundle","name","isSQLCipher"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,6 +4,7 @@ declare global {
|
|
|
4
4
|
}
|
|
5
5
|
export declare const OPSQLite: OPSQLiteProxy;
|
|
6
6
|
export declare const IOS_DOCUMENT_PATH: any, IOS_LIBRARY_PATH: any, ANDROID_DATABASE_PATH: any, ANDROID_FILES_PATH: any, ANDROID_EXTERNAL_FILES_PATH: any;
|
|
7
|
+
type Scalar = string | number | boolean | null | ArrayBuffer | ArrayBufferView;
|
|
7
8
|
/**
|
|
8
9
|
* Object returned by SQL Query executions {
|
|
9
10
|
* insertId: Represent the auto-generated row id if applicable
|
|
@@ -18,8 +19,8 @@ export type QueryResult = {
|
|
|
18
19
|
insertId?: number;
|
|
19
20
|
rowsAffected: number;
|
|
20
21
|
res?: any[];
|
|
21
|
-
rows: Array<Record<string,
|
|
22
|
-
rawRows?:
|
|
22
|
+
rows: Array<Record<string, Scalar>>;
|
|
23
|
+
rawRows?: Scalar[][];
|
|
23
24
|
columnNames?: string[];
|
|
24
25
|
/**
|
|
25
26
|
* Query metadata, available only for select query results
|
|
@@ -64,7 +65,7 @@ export interface FileLoadResult extends BatchQueryResult {
|
|
|
64
65
|
}
|
|
65
66
|
export interface Transaction {
|
|
66
67
|
commit: () => Promise<QueryResult>;
|
|
67
|
-
execute: (query: string, params?:
|
|
68
|
+
execute: (query: string, params?: Scalar[]) => Promise<QueryResult>;
|
|
68
69
|
rollback: () => Promise<QueryResult>;
|
|
69
70
|
}
|
|
70
71
|
export interface PendingTransaction {
|
|
@@ -80,6 +81,7 @@ export type DB = {
|
|
|
80
81
|
attach: (mainDbName: string, dbNameToAttach: string, alias: string, location?: string) => void;
|
|
81
82
|
detach: (mainDbName: string, alias: string) => void;
|
|
82
83
|
transaction: (fn: (tx: Transaction) => Promise<void>) => Promise<void>;
|
|
84
|
+
executeSync: (query: string, params?: any[]) => QueryResult;
|
|
83
85
|
execute: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
84
86
|
executeWithHostObjects: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
85
87
|
executeBatch: (commands: SQLBatchTuple[]) => Promise<BatchQueryResult>;
|
|
@@ -162,6 +164,7 @@ export declare const moveAssetsDatabase: (args: {
|
|
|
162
164
|
path?: string;
|
|
163
165
|
overwrite?: boolean;
|
|
164
166
|
}) => Promise<boolean>;
|
|
167
|
+
export declare const getDylibPath: (bundle: string, name: string) => string;
|
|
165
168
|
export declare const isSQLCipher: () => boolean;
|
|
166
169
|
export declare const isLibsql: () => boolean;
|
|
167
170
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,CAAC;IACb,SAAS,kBAAkB,IAAI,OAAO,CAAC;IACvC,IAAI,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AA8BD,eAAO,MAAM,QAAQ,eAAyB,CAAC;AAE/C,eAAO,MACL,iBAAiB,OACjB,gBAAgB,OAChB,qBAAqB,OACrB,kBAAkB,OAClB,2BAA2B,KAGH,CAAC;AAE3B;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;IACZ,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -45,6 +45,8 @@ export const {
|
|
|
45
45
|
? NativeModules.OPSQLite.getConstants()
|
|
46
46
|
: NativeModules.OPSQLite;
|
|
47
47
|
|
|
48
|
+
type Scalar = string | number | boolean | null | ArrayBuffer | ArrayBufferView;
|
|
49
|
+
|
|
48
50
|
/**
|
|
49
51
|
* Object returned by SQL Query executions {
|
|
50
52
|
* insertId: Represent the auto-generated row id if applicable
|
|
@@ -59,9 +61,9 @@ export type QueryResult = {
|
|
|
59
61
|
insertId?: number;
|
|
60
62
|
rowsAffected: number;
|
|
61
63
|
res?: any[];
|
|
62
|
-
rows: Array<Record<string,
|
|
64
|
+
rows: Array<Record<string, Scalar>>;
|
|
63
65
|
// An array of intermediate results, just values without column names
|
|
64
|
-
rawRows?:
|
|
66
|
+
rawRows?: Scalar[][];
|
|
65
67
|
columnNames?: string[];
|
|
66
68
|
/**
|
|
67
69
|
* Query metadata, available only for select query results
|
|
@@ -112,7 +114,7 @@ export interface FileLoadResult extends BatchQueryResult {
|
|
|
112
114
|
|
|
113
115
|
export interface Transaction {
|
|
114
116
|
commit: () => Promise<QueryResult>;
|
|
115
|
-
execute: (query: string, params?:
|
|
117
|
+
execute: (query: string, params?: Scalar[]) => Promise<QueryResult>;
|
|
116
118
|
rollback: () => Promise<QueryResult>;
|
|
117
119
|
}
|
|
118
120
|
|
|
@@ -145,6 +147,7 @@ export type DB = {
|
|
|
145
147
|
) => void;
|
|
146
148
|
detach: (mainDbName: string, alias: string) => void;
|
|
147
149
|
transaction: (fn: (tx: Transaction) => Promise<void>) => Promise<void>;
|
|
150
|
+
executeSync: (query: string, params?: any[]) => QueryResult;
|
|
148
151
|
execute: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
149
152
|
executeWithHostObjects: (
|
|
150
153
|
query: string,
|
|
@@ -273,9 +276,44 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
273
276
|
|
|
274
277
|
return result;
|
|
275
278
|
},
|
|
279
|
+
executeSync: (
|
|
280
|
+
query: string,
|
|
281
|
+
params?: Scalar[] | undefined
|
|
282
|
+
): QueryResult => {
|
|
283
|
+
const sanitizedParams = params?.map((p) => {
|
|
284
|
+
if (ArrayBuffer.isView(p)) {
|
|
285
|
+
return p.buffer;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
return p;
|
|
289
|
+
});
|
|
290
|
+
|
|
291
|
+
let intermediateResult = db.executeSync(query, sanitizedParams);
|
|
292
|
+
let rows: any[] = [];
|
|
293
|
+
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
294
|
+
let row: Record<string, Scalar> = {};
|
|
295
|
+
let rawRow = intermediateResult.rawRows![i]!;
|
|
296
|
+
for (let j = 0; j < intermediateResult.columnNames!.length; j++) {
|
|
297
|
+
let columnName = intermediateResult.columnNames![j]!;
|
|
298
|
+
let value = rawRow[j]!;
|
|
299
|
+
|
|
300
|
+
row[columnName] = value;
|
|
301
|
+
}
|
|
302
|
+
rows.push(row);
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
let res = {
|
|
306
|
+
...intermediateResult,
|
|
307
|
+
rows,
|
|
308
|
+
};
|
|
309
|
+
|
|
310
|
+
delete res.rawRows;
|
|
311
|
+
|
|
312
|
+
return res;
|
|
313
|
+
},
|
|
276
314
|
execute: async (
|
|
277
315
|
query: string,
|
|
278
|
-
params?:
|
|
316
|
+
params?: Scalar[] | undefined
|
|
279
317
|
): Promise<QueryResult> => {
|
|
280
318
|
const sanitizedParams = params?.map((p) => {
|
|
281
319
|
if (ArrayBuffer.isView(p)) {
|
|
@@ -290,9 +328,10 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
290
328
|
let rows: any[] = [];
|
|
291
329
|
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
292
330
|
let row: any = {};
|
|
331
|
+
let rawRow = intermediateResult.rawRows![i]!;
|
|
293
332
|
for (let j = 0; j < intermediateResult.columnNames!.length; j++) {
|
|
294
333
|
let columnName = intermediateResult.columnNames![j]!;
|
|
295
|
-
let value =
|
|
334
|
+
let value = rawRow[j]!;
|
|
296
335
|
|
|
297
336
|
row[columnName] = value;
|
|
298
337
|
}
|
|
@@ -465,6 +504,10 @@ export const moveAssetsDatabase = async (args: {
|
|
|
465
504
|
return NativeModules.OPSQLite.moveAssetsDatabase(args);
|
|
466
505
|
};
|
|
467
506
|
|
|
507
|
+
export const getDylibPath = (bundle: string, name: string): string => {
|
|
508
|
+
return NativeModules.OPSQLite.getDylibPath(bundle, name);
|
|
509
|
+
};
|
|
510
|
+
|
|
468
511
|
export const isSQLCipher = (): boolean => {
|
|
469
512
|
return OPSQLite.isSQLCipher();
|
|
470
513
|
};
|