@op-engineering/op-sqlite 3.0.2 → 3.0.3
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/android/src/main/java/com/op/sqlite/OPSQLiteModule.kt +47 -0
- package/android/src/paper/java/com/op/sqlite/NativeOPSQLiteSpec.java +4 -0
- package/cpp/bindings.cpp +11 -22
- package/cpp/bridge.cpp +99 -96
- package/cpp/bridge.h +3 -6
- package/cpp/types.h +0 -1
- package/cpp/utils.cpp +0 -37
- package/cpp/utils.h +0 -4
- package/ios/OPSQLite.mm +17 -0
- package/lib/commonjs/NativeOPSQLite.js.map +1 -1
- package/lib/commonjs/index.js +8 -7
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/NativeOPSQLite.js.map +1 -1
- package/lib/module/index.js +6 -6
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/NativeOPSQLite.d.ts +1 -0
- package/lib/typescript/NativeOPSQLite.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/op-sqlite.podspec +1 -1
- package/package.json +1 -1
- package/src/NativeOPSQLite.ts +2 -0
- package/src/index.ts +10 -6
|
@@ -3,6 +3,10 @@ package com.op.sqlite
|
|
|
3
3
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
4
4
|
import com.facebook.react.bridge.ReactMethod
|
|
5
5
|
import com.facebook.react.module.annotations.ReactModule;
|
|
6
|
+
import java.io.File
|
|
7
|
+
import java.io.FileOutputStream
|
|
8
|
+
import java.io.InputStream
|
|
9
|
+
import java.io.OutputStream
|
|
6
10
|
|
|
7
11
|
@ReactModule(name = OPSQLiteModule.NAME)
|
|
8
12
|
internal class OPSQLiteModule(context: ReactApplicationContext?) :
|
|
@@ -38,6 +42,49 @@ internal class OPSQLiteModule(context: ReactApplicationContext?) :
|
|
|
38
42
|
}
|
|
39
43
|
}
|
|
40
44
|
|
|
45
|
+
@ReactMethod(isBlockingSynchronousMethod = true)
|
|
46
|
+
override fun moveAssetsDatabase(name: String, extension: String): Boolean {
|
|
47
|
+
val context = reactApplicationContext
|
|
48
|
+
val assetsManager = context.assets
|
|
49
|
+
|
|
50
|
+
try {
|
|
51
|
+
|
|
52
|
+
// val assets = assetsManager.list("");
|
|
53
|
+
// Open the input stream for the asset file
|
|
54
|
+
val inputStream: InputStream = assetsManager.open("custom/$name.$extension")
|
|
55
|
+
|
|
56
|
+
// Create the output file in the documents directory
|
|
57
|
+
val databasesFolder = context
|
|
58
|
+
.getDatabasePath("defaultDatabase")
|
|
59
|
+
.absolutePath
|
|
60
|
+
.replace("defaultDatabase", "")
|
|
61
|
+
|
|
62
|
+
val outputFile = File(databasesFolder, "$name.$extension")
|
|
63
|
+
|
|
64
|
+
if (outputFile.exists()) {
|
|
65
|
+
return true
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// Open the output stream for the output file
|
|
69
|
+
val outputStream: OutputStream = FileOutputStream(outputFile)
|
|
70
|
+
|
|
71
|
+
// Copy the contents from the input stream to the output stream
|
|
72
|
+
val buffer = ByteArray(1024)
|
|
73
|
+
var length: Int
|
|
74
|
+
while (inputStream.read(buffer).also { length = it } > 0) {
|
|
75
|
+
outputStream.write(buffer, 0, length)
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// Close the streams
|
|
79
|
+
inputStream.close()
|
|
80
|
+
outputStream.close()
|
|
81
|
+
|
|
82
|
+
return true
|
|
83
|
+
} catch (exception: Exception) {
|
|
84
|
+
return false
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
41
88
|
override fun onCatalystInstanceDestroy() {
|
|
42
89
|
OPSQLiteBridge.instance.clearState()
|
|
43
90
|
}
|
|
@@ -70,4 +70,8 @@ public abstract class NativeOPSQLiteSpec extends ReactContextBaseJavaModule impl
|
|
|
70
70
|
@ReactMethod(isBlockingSynchronousMethod = true)
|
|
71
71
|
@DoNotStrip
|
|
72
72
|
public abstract boolean install();
|
|
73
|
+
|
|
74
|
+
@ReactMethod(isBlockingSynchronousMethod = true)
|
|
75
|
+
@DoNotStrip
|
|
76
|
+
public abstract boolean moveAssetsDatabase(String name, String extension);
|
|
73
77
|
}
|
package/cpp/bindings.cpp
CHANGED
|
@@ -511,7 +511,8 @@ void install(jsi::Runtime &rt,
|
|
|
511
511
|
auto callback = std::make_shared<jsi::Value>(rt, args[1]);
|
|
512
512
|
|
|
513
513
|
if (callback->isUndefined() || callback->isNull()) {
|
|
514
|
-
|
|
514
|
+
opsqlite_deregister_update_hook(dbName);
|
|
515
|
+
return {};
|
|
515
516
|
}
|
|
516
517
|
|
|
517
518
|
updateHooks[dbName] = callback;
|
|
@@ -551,13 +552,9 @@ void install(jsi::Runtime &rt,
|
|
|
551
552
|
});
|
|
552
553
|
};
|
|
553
554
|
|
|
554
|
-
|
|
555
|
-
opsqlite_register_update_hook(dbName, std::move(hook));
|
|
555
|
+
opsqlite_register_update_hook(dbName, std::move(hook));
|
|
556
556
|
|
|
557
|
-
return
|
|
558
|
-
opsqlite_deregister_update_hook(dbName, register_result.identifier);
|
|
559
|
-
return {};
|
|
560
|
-
});
|
|
557
|
+
return {};
|
|
561
558
|
});
|
|
562
559
|
|
|
563
560
|
auto commit_hook = HOSTFN("commitHook", 2) {
|
|
@@ -570,7 +567,8 @@ void install(jsi::Runtime &rt,
|
|
|
570
567
|
auto dbName = args[0].asString(rt).utf8(rt);
|
|
571
568
|
auto callback = std::make_shared<jsi::Value>(rt, args[1]);
|
|
572
569
|
if (callback->isUndefined() || callback->isNull()) {
|
|
573
|
-
|
|
570
|
+
opsqlite_deregister_commit_hook(dbName);
|
|
571
|
+
return {};
|
|
574
572
|
}
|
|
575
573
|
commitHooks[dbName] = callback;
|
|
576
574
|
|
|
@@ -579,13 +577,9 @@ void install(jsi::Runtime &rt,
|
|
|
579
577
|
[&rt, callback] { callback->asObject(rt).asFunction(rt).call(rt); });
|
|
580
578
|
};
|
|
581
579
|
|
|
582
|
-
|
|
583
|
-
opsqlite_register_commit_hook(dbName, std::move(hook));
|
|
580
|
+
opsqlite_register_commit_hook(dbName, std::move(hook));
|
|
584
581
|
|
|
585
|
-
return
|
|
586
|
-
opsqlite_deregister_commit_hook(dbName, register_result.identifier);
|
|
587
|
-
return {};
|
|
588
|
-
});
|
|
582
|
+
return {};
|
|
589
583
|
});
|
|
590
584
|
|
|
591
585
|
auto rollback_hook = HOSTFN("rollbackHook", 2) {
|
|
@@ -600,7 +594,7 @@ void install(jsi::Runtime &rt,
|
|
|
600
594
|
auto callback = std::make_shared<jsi::Value>(rt, args[1]);
|
|
601
595
|
|
|
602
596
|
if (callback->isUndefined() || callback->isNull()) {
|
|
603
|
-
|
|
597
|
+
opsqlite_deregister_rollback_hook(dbName);
|
|
604
598
|
return {};
|
|
605
599
|
}
|
|
606
600
|
rollbackHooks[dbName] = callback;
|
|
@@ -610,13 +604,8 @@ void install(jsi::Runtime &rt,
|
|
|
610
604
|
[&rt, callback] { callback->asObject(rt).asFunction(rt).call(rt); });
|
|
611
605
|
};
|
|
612
606
|
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
return HOSTFN("remove", 0) {
|
|
617
|
-
opsqlite_deregister_rollback_hook(dbName, register_result.identifier);
|
|
618
|
-
return {};
|
|
619
|
-
});
|
|
607
|
+
opsqlite_register_rollback_hook(dbName, std::move(hook));
|
|
608
|
+
return {};
|
|
620
609
|
});
|
|
621
610
|
|
|
622
611
|
auto prepare_statement = HOSTFN("prepareStatement", 1) {
|
package/cpp/bridge.cpp
CHANGED
|
@@ -8,25 +8,17 @@
|
|
|
8
8
|
|
|
9
9
|
namespace opsqlite {
|
|
10
10
|
|
|
11
|
-
// TODO this has gotten unweildy, using a HostObject abstraction would be better
|
|
12
11
|
/// Maps to hold the different objects
|
|
13
12
|
std::unordered_map<std::string, sqlite3 *> dbMap =
|
|
14
13
|
std::unordered_map<std::string, sqlite3 *>();
|
|
15
|
-
std::unordered_map<std::string,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
std::unordered_map<std::string, CommitCallback>>();
|
|
24
|
-
|
|
25
|
-
std::unordered_map<std::string,
|
|
26
|
-
std::unordered_map<std::string, RollbackCallback>>
|
|
27
|
-
rollbackCallbackMap =
|
|
28
|
-
std::unordered_map<std::string,
|
|
29
|
-
std::unordered_map<std::string, RollbackCallback>>();
|
|
14
|
+
std::unordered_map<std::string, UpdateCallback> updateCallbackMap =
|
|
15
|
+
std::unordered_map<std::string, UpdateCallback>();
|
|
16
|
+
|
|
17
|
+
std::unordered_map<std::string, CommitCallback> commitCallbackMap =
|
|
18
|
+
std::unordered_map<std::string, CommitCallback>();
|
|
19
|
+
|
|
20
|
+
std::unordered_map<std::string, RollbackCallback> rollbackCallbackMap =
|
|
21
|
+
std::unordered_map<std::string, RollbackCallback>();
|
|
30
22
|
|
|
31
23
|
inline void check_db_open(std::string const &db_name) {
|
|
32
24
|
if (dbMap.count(db_name) == 0) {
|
|
@@ -34,38 +26,6 @@ inline void check_db_open(std::string const &db_name) {
|
|
|
34
26
|
}
|
|
35
27
|
}
|
|
36
28
|
|
|
37
|
-
// Hook native callbacks
|
|
38
|
-
void update_callback(void *user_data, int operation_type, char const *database,
|
|
39
|
-
char const *table, sqlite3_int64 rowid) {
|
|
40
|
-
std::string db_name(database);
|
|
41
|
-
auto callbacks = updateCallbackMap[db_name];
|
|
42
|
-
// iterate over the callback map and call them
|
|
43
|
-
|
|
44
|
-
for (auto &cb : callbacks) {
|
|
45
|
-
cb.second(db_name, std::string(table),
|
|
46
|
-
sqlite_operation_to_string(operation_type),
|
|
47
|
-
static_cast<long long>(rowid));
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
int commit_callback(void *database) {
|
|
52
|
-
std::string db_name(static_cast<char const *>(database));
|
|
53
|
-
auto callbacks = commitCallbackMap[db_name];
|
|
54
|
-
for (auto &cb : callbacks) {
|
|
55
|
-
cb.second(db_name);
|
|
56
|
-
}
|
|
57
|
-
// You need to return 0 to allow commits to continue
|
|
58
|
-
return 0;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
void rollback_callback(void *database) {
|
|
62
|
-
std::string db_name(static_cast<char const *>(database));
|
|
63
|
-
auto callbacks = rollbackCallbackMap[db_name];
|
|
64
|
-
for (auto &cb : callbacks) {
|
|
65
|
-
cb.second(db_name);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
|
|
69
29
|
/// Start of api
|
|
70
30
|
|
|
71
31
|
/// Returns the completely formed db path, but it also creates any sub-folders
|
|
@@ -109,12 +69,6 @@ BridgeResult opsqlite_open(std::string const &dbName,
|
|
|
109
69
|
nullptr, nullptr);
|
|
110
70
|
#endif
|
|
111
71
|
|
|
112
|
-
// On connection we register the native hooks, so on JS people can create
|
|
113
|
-
// reactive queries and their own hooks
|
|
114
|
-
sqlite3_update_hook(db, &update_callback, nullptr);
|
|
115
|
-
sqlite3_commit_hook(db, &commit_callback, nullptr);
|
|
116
|
-
sqlite3_rollback_hook(db, &rollback_callback, nullptr);
|
|
117
|
-
|
|
118
72
|
return BridgeResult{.type = SQLiteOk, .affectedRows = 0};
|
|
119
73
|
}
|
|
120
74
|
|
|
@@ -730,83 +684,132 @@ void opsqlite_close_all() {
|
|
|
730
684
|
commitCallbackMap.clear();
|
|
731
685
|
}
|
|
732
686
|
|
|
733
|
-
|
|
687
|
+
std::string operation_to_string(int operation_type) {
|
|
688
|
+
switch (operation_type) {
|
|
689
|
+
case SQLITE_INSERT:
|
|
690
|
+
return "INSERT";
|
|
691
|
+
|
|
692
|
+
case SQLITE_DELETE:
|
|
693
|
+
return "DELETE";
|
|
694
|
+
|
|
695
|
+
case SQLITE_UPDATE:
|
|
696
|
+
return "UPDATE";
|
|
697
|
+
|
|
698
|
+
default:
|
|
699
|
+
throw std::invalid_argument("Uknown SQLite operation on hook");
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
|
|
703
|
+
void update_callback(void *dbName, int operation_type, char const *database,
|
|
704
|
+
char const *table, sqlite3_int64 rowid) {
|
|
705
|
+
std::string &strDbName = *(static_cast<std::string *>(dbName));
|
|
706
|
+
auto callback = updateCallbackMap[strDbName];
|
|
707
|
+
callback(strDbName, std::string(table), operation_to_string(operation_type),
|
|
708
|
+
static_cast<int>(rowid));
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
BridgeResult opsqlite_register_update_hook(std::string const &dbName,
|
|
734
712
|
UpdateCallback const callback) {
|
|
735
|
-
check_db_open(
|
|
713
|
+
check_db_open(dbName);
|
|
736
714
|
|
|
737
|
-
sqlite3 *db = dbMap[
|
|
738
|
-
|
|
715
|
+
sqlite3 *db = dbMap[dbName];
|
|
716
|
+
updateCallbackMap[dbName] = callback;
|
|
717
|
+
const std::string *key = nullptr;
|
|
739
718
|
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
719
|
+
// TODO find a more elegant way to retrieve a reference to the key
|
|
720
|
+
for (auto const &element : dbMap) {
|
|
721
|
+
if (element.first == dbName) {
|
|
722
|
+
key = &element.first;
|
|
723
|
+
}
|
|
743
724
|
}
|
|
744
725
|
|
|
745
|
-
|
|
726
|
+
sqlite3_update_hook(db, &update_callback, (void *)key);
|
|
746
727
|
|
|
747
|
-
return {
|
|
728
|
+
return {SQLiteOk};
|
|
748
729
|
}
|
|
749
730
|
|
|
750
|
-
BridgeResult opsqlite_deregister_update_hook(std::string const &
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
731
|
+
BridgeResult opsqlite_deregister_update_hook(std::string const &dbName) {
|
|
732
|
+
check_db_open(dbName);
|
|
733
|
+
|
|
734
|
+
sqlite3 *db = dbMap[dbName];
|
|
735
|
+
updateCallbackMap.erase(dbName);
|
|
736
|
+
|
|
737
|
+
sqlite3_update_hook(db, NULL, NULL);
|
|
754
738
|
|
|
755
739
|
return {SQLiteOk};
|
|
756
740
|
}
|
|
757
741
|
|
|
758
|
-
|
|
742
|
+
int commit_callback(void *dbName) {
|
|
743
|
+
std::string &strDbName = *(static_cast<std::string *>(dbName));
|
|
744
|
+
auto callback = commitCallbackMap[strDbName];
|
|
745
|
+
callback(strDbName);
|
|
746
|
+
// You need to return 0 to allow commits to continue
|
|
747
|
+
return 0;
|
|
748
|
+
}
|
|
749
|
+
|
|
750
|
+
BridgeResult opsqlite_register_commit_hook(std::string const &dbName,
|
|
759
751
|
CommitCallback const callback) {
|
|
760
|
-
check_db_open(
|
|
752
|
+
check_db_open(dbName);
|
|
761
753
|
|
|
762
|
-
sqlite3 *db = dbMap[
|
|
763
|
-
|
|
754
|
+
sqlite3 *db = dbMap[dbName];
|
|
755
|
+
commitCallbackMap[dbName] = callback;
|
|
756
|
+
const std::string *key = nullptr;
|
|
764
757
|
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
758
|
+
// TODO find a more elegant way to retrieve a reference to the key
|
|
759
|
+
for (auto const &element : dbMap) {
|
|
760
|
+
if (element.first == dbName) {
|
|
761
|
+
key = &element.first;
|
|
762
|
+
}
|
|
768
763
|
}
|
|
769
764
|
|
|
770
|
-
|
|
765
|
+
sqlite3_commit_hook(db, &commit_callback, (void *)key);
|
|
771
766
|
|
|
772
|
-
return {
|
|
767
|
+
return {SQLiteOk};
|
|
773
768
|
}
|
|
774
769
|
|
|
775
|
-
BridgeResult opsqlite_deregister_commit_hook(std::string const &
|
|
776
|
-
|
|
777
|
-
check_db_open(db_name);
|
|
770
|
+
BridgeResult opsqlite_deregister_commit_hook(std::string const &dbName) {
|
|
771
|
+
check_db_open(dbName);
|
|
778
772
|
|
|
779
|
-
sqlite3 *db = dbMap[
|
|
780
|
-
commitCallbackMap
|
|
773
|
+
sqlite3 *db = dbMap[dbName];
|
|
774
|
+
commitCallbackMap.erase(dbName);
|
|
781
775
|
sqlite3_commit_hook(db, NULL, NULL);
|
|
782
776
|
|
|
783
777
|
return {SQLiteOk};
|
|
784
778
|
}
|
|
785
779
|
|
|
786
|
-
|
|
780
|
+
void rollback_callback(void *dbName) {
|
|
781
|
+
std::string &strDbName = *(static_cast<std::string *>(dbName));
|
|
782
|
+
auto callback = rollbackCallbackMap[strDbName];
|
|
783
|
+
callback(strDbName);
|
|
784
|
+
}
|
|
785
|
+
|
|
786
|
+
BridgeResult opsqlite_register_rollback_hook(std::string const &dbName,
|
|
787
787
|
RollbackCallback const callback) {
|
|
788
|
-
check_db_open(
|
|
788
|
+
check_db_open(dbName);
|
|
789
789
|
|
|
790
|
-
sqlite3 *db = dbMap[
|
|
791
|
-
|
|
790
|
+
sqlite3 *db = dbMap[dbName];
|
|
791
|
+
rollbackCallbackMap[dbName] = callback;
|
|
792
|
+
const std::string *key = nullptr;
|
|
792
793
|
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
794
|
+
// TODO find a more elegant way to retrieve a reference to the key
|
|
795
|
+
for (auto const &element : dbMap) {
|
|
796
|
+
if (element.first == dbName) {
|
|
797
|
+
key = &element.first;
|
|
798
|
+
}
|
|
796
799
|
}
|
|
797
800
|
|
|
798
|
-
|
|
801
|
+
sqlite3_rollback_hook(db, &rollback_callback, (void *)key);
|
|
799
802
|
|
|
800
|
-
return {
|
|
803
|
+
return {SQLiteOk};
|
|
801
804
|
}
|
|
802
805
|
|
|
803
|
-
BridgeResult opsqlite_deregister_rollback_hook(std::string const &
|
|
804
|
-
|
|
805
|
-
check_db_open(db_name);
|
|
806
|
+
BridgeResult opsqlite_deregister_rollback_hook(std::string const &dbName) {
|
|
807
|
+
check_db_open(dbName);
|
|
806
808
|
|
|
807
|
-
sqlite3 *db = dbMap[
|
|
808
|
-
rollbackCallbackMap
|
|
809
|
-
|
|
809
|
+
sqlite3 *db = dbMap[dbName];
|
|
810
|
+
rollbackCallbackMap.erase(dbName);
|
|
811
|
+
|
|
812
|
+
sqlite3_rollback_hook(db, NULL, NULL);
|
|
810
813
|
|
|
811
814
|
return {SQLiteOk};
|
|
812
815
|
}
|
package/cpp/bridge.h
CHANGED
|
@@ -58,16 +58,13 @@ void opsqlite_close_all();
|
|
|
58
58
|
|
|
59
59
|
BridgeResult opsqlite_register_update_hook(std::string const &dbName,
|
|
60
60
|
UpdateCallback const callback);
|
|
61
|
-
BridgeResult opsqlite_deregister_update_hook(std::string const &dbName
|
|
62
|
-
std::string const &id);
|
|
61
|
+
BridgeResult opsqlite_deregister_update_hook(std::string const &dbName);
|
|
63
62
|
BridgeResult opsqlite_register_commit_hook(std::string const &dbName,
|
|
64
63
|
CommitCallback const callback);
|
|
65
|
-
BridgeResult opsqlite_deregister_commit_hook(std::string const &dbName
|
|
66
|
-
std::string const &id);
|
|
64
|
+
BridgeResult opsqlite_deregister_commit_hook(std::string const &dbName);
|
|
67
65
|
BridgeResult opsqlite_register_rollback_hook(std::string const &dbName,
|
|
68
66
|
RollbackCallback const callback);
|
|
69
|
-
BridgeResult opsqlite_deregister_rollback_hook(std::string const &dbName
|
|
70
|
-
std::string const &id);
|
|
67
|
+
BridgeResult opsqlite_deregister_rollback_hook(std::string const &dbName);
|
|
71
68
|
|
|
72
69
|
sqlite3_stmt *opsqlite_prepare_statement(std::string const &dbName,
|
|
73
70
|
std::string const &query);
|
package/cpp/types.h
CHANGED
package/cpp/utils.cpp
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
#include "bridge.h"
|
|
4
4
|
#include <fstream>
|
|
5
5
|
#include <iostream>
|
|
6
|
-
#include <random>
|
|
7
6
|
#include <sstream>
|
|
8
7
|
#include <sys/stat.h>
|
|
9
8
|
#include <unistd.h>
|
|
@@ -253,40 +252,4 @@ int mkdir(std::string const &path) {
|
|
|
253
252
|
return 0;
|
|
254
253
|
}
|
|
255
254
|
|
|
256
|
-
// Semi random function, more than enough for our purposes
|
|
257
|
-
std::string get_uuid() {
|
|
258
|
-
static std::random_device dev;
|
|
259
|
-
static std::mt19937 rng(dev());
|
|
260
|
-
|
|
261
|
-
std::uniform_int_distribution<int> dist(0, 15);
|
|
262
|
-
|
|
263
|
-
const char *v = "0123456789abcdef";
|
|
264
|
-
const bool dash[] = {0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0};
|
|
265
|
-
|
|
266
|
-
std::string res;
|
|
267
|
-
for (int i = 0; i < 16; i++) {
|
|
268
|
-
if (dash[i])
|
|
269
|
-
res += "-";
|
|
270
|
-
res += v[dist(rng)];
|
|
271
|
-
res += v[dist(rng)];
|
|
272
|
-
}
|
|
273
|
-
return res;
|
|
274
|
-
}
|
|
275
|
-
|
|
276
|
-
std::string sqlite_operation_to_string(int operation_type) {
|
|
277
|
-
switch (operation_type) {
|
|
278
|
-
case SQLITE_INSERT:
|
|
279
|
-
return "INSERT";
|
|
280
|
-
|
|
281
|
-
case SQLITE_DELETE:
|
|
282
|
-
return "DELETE";
|
|
283
|
-
|
|
284
|
-
case SQLITE_UPDATE:
|
|
285
|
-
return "UPDATE";
|
|
286
|
-
|
|
287
|
-
default:
|
|
288
|
-
throw std::invalid_argument("Uknown SQLite operation on hook");
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
|
|
292
255
|
} // namespace opsqlite
|
package/cpp/utils.h
CHANGED
package/ios/OPSQLite.mm
CHANGED
|
@@ -75,6 +75,23 @@ RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(install) {
|
|
|
75
75
|
return @true;
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
+
RCT_EXPORT_BLOCKING_SYNCHRONOUS_METHOD(moveAssetsDatabase:(NSString *)name extension:(NSString *)extension) {
|
|
79
|
+
NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, true) objectAtIndex:0];
|
|
80
|
+
NSString *sourcePath = [[NSBundle mainBundle] pathForResource:name ofType:extension];
|
|
81
|
+
NSString *destinationPath = [documentPath stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.%@", name, extension]];
|
|
82
|
+
|
|
83
|
+
NSFileManager *fileManager = [NSFileManager defaultManager];
|
|
84
|
+
if ([fileManager fileExistsAtPath:destinationPath]) {
|
|
85
|
+
return @true;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
NSError *error;
|
|
89
|
+
[fileManager copyItemAtPath:sourcePath toPath:destinationPath error:&error];
|
|
90
|
+
if (error) {
|
|
91
|
+
return @false;
|
|
92
|
+
}
|
|
93
|
+
return @true;
|
|
94
|
+
}
|
|
78
95
|
|
|
79
96
|
#if RCT_NEW_ARCH_ENABLED
|
|
80
97
|
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOPSQLite.ts"],"mappings":";;;;;;AAAA;AAAgE,
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOPSQLite.ts"],"mappings":";;;;;;AAAA;AAAgE,eAgBjDA,gCAAmB,CAACC,YAAY,CAAO,UAAU,CAAC;AAAA"}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -3,22 +3,19 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.open = 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.open = exports.moveAssetsDatabase = 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 _NativeOPSQLite = _interopRequireDefault(require("./NativeOPSQLite"));
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
9
9
|
if (global.__OPSQLiteProxy == null) {
|
|
10
|
-
|
|
11
|
-
if (OPSQLiteModule == null) {
|
|
10
|
+
if (_NativeOPSQLite.default == null) {
|
|
12
11
|
throw new Error('Base module not found. Maybe try rebuilding the app.');
|
|
13
12
|
}
|
|
14
|
-
|
|
15
|
-
// Check if we are running on-device (JSI)
|
|
16
|
-
if (global.nativeCallSyncHook == null || OPSQLiteModule.install == null) {
|
|
13
|
+
if (_NativeOPSQLite.default.install == null) {
|
|
17
14
|
throw new Error('Failed to install op-sqlite: React Native is not running on-device. OPSQLite can only be used when synchronous method invocations (JSI) are possible. If you are using a remote debugger (e.g. Chrome), switch to an on-device debugger (e.g. Flipper) instead.');
|
|
18
15
|
}
|
|
19
16
|
|
|
20
17
|
// Call the synchronous blocking install() function
|
|
21
|
-
const result =
|
|
18
|
+
const result = _NativeOPSQLite.default.install();
|
|
22
19
|
if (result !== true) {
|
|
23
20
|
throw new Error(`Failed to install op-sqlite: The native OPSQLite Module could not be installed! Looks like something went wrong when installing JSI bindings: ${result}`);
|
|
24
21
|
}
|
|
@@ -227,4 +224,8 @@ const open = options => {
|
|
|
227
224
|
};
|
|
228
225
|
};
|
|
229
226
|
exports.open = open;
|
|
227
|
+
const moveAssetsDatabase = (dbName, extension) => {
|
|
228
|
+
return _NativeOPSQLite.default.moveAssetsDatabase(dbName, extension);
|
|
229
|
+
};
|
|
230
|
+
exports.moveAssetsDatabase = moveAssetsDatabase;
|
|
230
231
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["global","__OPSQLiteProxy","
|
|
1
|
+
{"version":3,"names":["global","__OPSQLiteProxy","NativeOPSQLite","Error","install","result","proxy","OPSQLite","IOS_DOCUMENT_PATH","IOS_LIBRARY_PATH","ANDROID_DATABASE_PATH","ANDROID_FILES_PATH","ANDROID_EXTERNAL_FILES_PATH","getConstants","locks","enhanceQueryResult","rows","_array","length","item","idx","_open","open","options","name","queue","inProgress","_close","close","dbName","_execute","execute","query","params","sanitizedParams","map","p","ArrayBuffer","isView","buffer","_executeAsync","executeAsync","res","transaction","fn","isFinalized","commit","rollback","run","executionError","rollbackError","startNextTransaction","Promise","resolve","reject","tx","start","then","catch","push","shift","setImmediate","delete","location","attach","dbNameToAttach","alias","detach","executeBatch","commands","executeBatchAsync","loadFile","updateHook","callback","commitHook","rollbackHook","prepareStatement","loadExtension","path","entryPoint","executeRawAsync","getDbPath","moveAssetsDatabase","extension"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOPSQLite.ts"],"mappings":"AAAA,SAASA,mBAAmB,QAAqB,cAAc;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOPSQLite.ts"],"mappings":"AAAA,SAASA,mBAAmB,QAAqB,cAAc;AAgB/D,eAAeA,mBAAmB,CAACC,YAAY,CAAO,UAAU,CAAC"}
|
package/lib/module/index.js
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
import NativeOPSQLite from './NativeOPSQLite';
|
|
2
2
|
if (global.__OPSQLiteProxy == null) {
|
|
3
|
-
|
|
4
|
-
if (OPSQLiteModule == null) {
|
|
3
|
+
if (NativeOPSQLite == null) {
|
|
5
4
|
throw new Error('Base module not found. Maybe try rebuilding the app.');
|
|
6
5
|
}
|
|
7
|
-
|
|
8
|
-
// Check if we are running on-device (JSI)
|
|
9
|
-
if (global.nativeCallSyncHook == null || OPSQLiteModule.install == null) {
|
|
6
|
+
if (NativeOPSQLite.install == null) {
|
|
10
7
|
throw new Error('Failed to install op-sqlite: React Native is not running on-device. OPSQLite can only be used when synchronous method invocations (JSI) are possible. If you are using a remote debugger (e.g. Chrome), switch to an on-device debugger (e.g. Flipper) instead.');
|
|
11
8
|
}
|
|
12
9
|
|
|
13
10
|
// Call the synchronous blocking install() function
|
|
14
|
-
const result =
|
|
11
|
+
const result = NativeOPSQLite.install();
|
|
15
12
|
if (result !== true) {
|
|
16
13
|
throw new Error(`Failed to install op-sqlite: The native OPSQLite Module could not be installed! Looks like something went wrong when installing JSI bindings: ${result}`);
|
|
17
14
|
}
|
|
@@ -214,4 +211,7 @@ export const open = options => {
|
|
|
214
211
|
getDbPath: () => OPSQLite.getDbPath(options.name, options.location)
|
|
215
212
|
};
|
|
216
213
|
};
|
|
214
|
+
export const moveAssetsDatabase = (dbName, extension) => {
|
|
215
|
+
return NativeOPSQLite.moveAssetsDatabase(dbName, extension);
|
|
216
|
+
};
|
|
217
217
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeOPSQLite","global","__OPSQLiteProxy","
|
|
1
|
+
{"version":3,"names":["NativeOPSQLite","global","__OPSQLiteProxy","Error","install","result","proxy","OPSQLite","IOS_DOCUMENT_PATH","IOS_LIBRARY_PATH","ANDROID_DATABASE_PATH","ANDROID_FILES_PATH","ANDROID_EXTERNAL_FILES_PATH","getConstants","locks","enhanceQueryResult","rows","_array","length","item","idx","_open","open","options","name","queue","inProgress","_close","close","dbName","_execute","execute","query","params","sanitizedParams","map","p","ArrayBuffer","isView","buffer","_executeAsync","executeAsync","res","transaction","fn","isFinalized","commit","rollback","run","executionError","rollbackError","startNextTransaction","Promise","resolve","reject","tx","start","then","catch","push","shift","setImmediate","delete","location","attach","dbNameToAttach","alias","detach","executeBatch","commands","executeBatchAsync","loadFile","updateHook","callback","commitHook","rollbackHook","prepareStatement","loadExtension","path","entryPoint","executeRawAsync","getDbPath","moveAssetsDatabase","extension"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeOPSQLite.d.ts","sourceRoot":"","sources":["../../src/NativeOPSQLite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,YAAY,EAAE,MAAM;QAClB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;QACzB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,2BAA2B,EAAE,MAAM,CAAC;KACrC,CAAC;IAEF,OAAO,IAAI,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"NativeOPSQLite.d.ts","sourceRoot":"","sources":["../../src/NativeOPSQLite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,YAAY,EAAE,MAAM;QAClB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;QACzB,qBAAqB,EAAE,MAAM,CAAC;QAC9B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,2BAA2B,EAAE,MAAM,CAAC;KACrC,CAAC;IAEF,OAAO,IAAI,OAAO,CAAC;IAEnB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;CAC9D;;AAED,wBAAkE"}
|
|
@@ -140,5 +140,6 @@ export declare const open: (options: {
|
|
|
140
140
|
location?: string;
|
|
141
141
|
encryptionKey?: string;
|
|
142
142
|
}) => OPSQLiteConnection;
|
|
143
|
+
export declare const moveAssetsDatabase: (dbName: string, extension: string) => boolean;
|
|
143
144
|
export {};
|
|
144
145
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -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;
|
|
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,SAAmB,CAAC;AAEzC,eAAO,MAEL,iBAAiB,OAEjB,gBAAgB,OAEhB,qBAAqB,OAErB,kBAAkB,OAElB,2BAA2B,KAGX,CAAC;AAEnB;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE;QACL,iCAAiC;QACjC,MAAM,EAAE,GAAG,EAAE,CAAC;QACd,+BAA+B;QAC/B,MAAM,EAAE,MAAM,CAAC;QACf;;;WAGG;QACH,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,GAAG,CAAC;KAC5B,CAAC;IACF;;OAEG;IACH,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,uLAAuL;IACvL,IAAI,EAAE,MAAM,CAAC;IACb;qDACiD;IACjD,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAEhF,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjE;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,WAAW,CAAC;IAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,WAAW,CAAC;IACxD,YAAY,EAAE,CACZ,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,SAAS,KACvB,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1B,QAAQ,EAAE,MAAM,WAAW,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IAUjC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,WAAW,CAAC;CAC5B,CAAC;AAEF,UAAU,OAAO;IACf,IAAI,EAAE,CAAC,OAAO,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,KAAK,IAAI,CAAC;IACX,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,MAAM,EAAE,CACN,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,KACd,IAAI,CAAC;IACV,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,WAAW,EAAE,CACX,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,KACnC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,WAAW,CAAC;IACxE,YAAY,EAAE,CACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,GAAG,EAAE,KACX,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1B,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,gBAAgB,CAAC;IAC9E,iBAAiB,EAAE,CACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,aAAa,EAAE,KACtB,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC/B,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACxE,UAAU,EAAE,CACV,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EACL,CAAC,CAAC,MAAM,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,mBAAmB,CAAC;QAC/B,GAAG,CAAC,EAAE,GAAG,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC,GACX,IAAI,KACL,IAAI,CAAC;IACV,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACrE,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACvE,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,oBAAoB,CAAC;IAC1E,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3E,eAAe,EAAE,CACf,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,GAAG,EAAE,KACX,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACpB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;CAC1D;AAuMD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3E,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,WAAW,CAAC;IACxD,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IACtE,YAAY,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,gBAAgB,CAAC;IAC9D,iBAAiB,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5E,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACxD,UAAU,EAAE,CACV,QAAQ,EACJ,CAAC,CAAC,MAAM,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,mBAAmB,CAAC;QAC/B,GAAG,CAAC,EAAE,GAAG,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;KACf,KAAK,IAAI,CAAC,GACX,IAAI,KACL,IAAI,CAAC;IACV,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACpD,YAAY,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACtD,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,oBAAoB,CAAC;IAC1D,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACnE,SAAS,EAAE,MAAM,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,IAAI,YAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,KAAG,kBAiCH,CAAC;AAEF,eAAO,MAAM,kBAAkB,WACrB,MAAM,aACH,MAAM,KAChB,OAEF,CAAC"}
|
package/op-sqlite.podspec
CHANGED
|
@@ -28,7 +28,7 @@ Pod::Spec.new do |s|
|
|
|
28
28
|
if ENV['OP_SQLITE_USE_SQLCIPHER'] == '1' then
|
|
29
29
|
puts "OP-SQLITE using SQLCipher! 🔒\n"
|
|
30
30
|
s.exclude_files = "cpp/sqlite3.c", "cpp/sqlite3.h"
|
|
31
|
-
xcconfig[:GCC_PREPROCESSOR_DEFINITIONS] += " OP_SQLITE_USE_SQLCIPHER=1
|
|
31
|
+
xcconfig[:GCC_PREPROCESSOR_DEFINITIONS] += " OP_SQLITE_USE_SQLCIPHER=1"
|
|
32
32
|
else
|
|
33
33
|
puts "OP-SQLITE using SQLite! 📦\n"
|
|
34
34
|
s.exclude_files = "cpp/sqlcipher/sqlite3.c", "cpp/sqlcipher/sqlite3.h"
|
package/package.json
CHANGED
package/src/NativeOPSQLite.ts
CHANGED
package/src/index.ts
CHANGED
|
@@ -6,21 +6,18 @@ declare global {
|
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
if (global.__OPSQLiteProxy == null) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
if (OPSQLiteModule == null) {
|
|
9
|
+
if (NativeOPSQLite == null) {
|
|
12
10
|
throw new Error('Base module not found. Maybe try rebuilding the app.');
|
|
13
11
|
}
|
|
14
12
|
|
|
15
|
-
|
|
16
|
-
if (global.nativeCallSyncHook == null || OPSQLiteModule.install == null) {
|
|
13
|
+
if (NativeOPSQLite.install == null) {
|
|
17
14
|
throw new Error(
|
|
18
15
|
'Failed to install op-sqlite: React Native is not running on-device. OPSQLite can only be used when synchronous method invocations (JSI) are possible. If you are using a remote debugger (e.g. Chrome), switch to an on-device debugger (e.g. Flipper) instead.'
|
|
19
16
|
);
|
|
20
17
|
}
|
|
21
18
|
|
|
22
19
|
// Call the synchronous blocking install() function
|
|
23
|
-
const result =
|
|
20
|
+
const result = NativeOPSQLite.install();
|
|
24
21
|
if (result !== true) {
|
|
25
22
|
throw new Error(
|
|
26
23
|
`Failed to install op-sqlite: The native OPSQLite Module could not be installed! Looks like something went wrong when installing JSI bindings: ${result}`
|
|
@@ -470,3 +467,10 @@ export const open = (options: {
|
|
|
470
467
|
getDbPath: () => OPSQLite.getDbPath(options.name, options.location),
|
|
471
468
|
};
|
|
472
469
|
};
|
|
470
|
+
|
|
471
|
+
export const moveAssetsDatabase = (
|
|
472
|
+
dbName: string,
|
|
473
|
+
extension: string
|
|
474
|
+
): boolean => {
|
|
475
|
+
return NativeOPSQLite.moveAssetsDatabase(dbName, extension);
|
|
476
|
+
};
|