@op-engineering/op-sqlite 7.4.0 → 8.0.0-beta0
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 +11 -3
- package/android/build.gradle +8 -0
- package/cpp/DBHostObject.cpp +101 -106
- package/cpp/PreparedStatementHostObject.cpp +39 -14
- package/cpp/PreparedStatementHostObject.h +17 -4
- package/cpp/bindings.cpp +5 -5
- package/cpp/bridge.cpp +206 -85
- package/cpp/bridge.h +9 -7
- package/cpp/libsql/bridge.cpp +212 -92
- package/cpp/libsql/bridge.h +7 -3
- package/cpp/macros.h +2 -2
- package/cpp/types.h +11 -8
- package/cpp/utils.cpp +43 -7
- package/cpp/utils.h +2 -0
- package/lib/commonjs/index.js +53 -30
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/package.json +1 -0
- package/lib/module/NativeOPSQLite.js +2 -0
- package/lib/module/NativeOPSQLite.js.map +1 -1
- package/lib/module/index.js +55 -29
- package/lib/module/index.js.map +1 -1
- package/lib/module/package.json +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/lib/typescript/commonjs/src/NativeOPSQLite.d.ts.map +1 -0
- package/lib/typescript/{src → commonjs/src}/index.d.ts +11 -11
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/src/NativeOPSQLite.d.ts +15 -0
- package/lib/typescript/module/src/NativeOPSQLite.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +163 -0
- package/lib/typescript/module/src/index.d.ts.map +1 -0
- package/package.json +44 -14
- package/src/index.ts +80 -46
- package/android/.project +0 -17
- package/android/.settings/org.eclipse.buildship.core.prefs +0 -13
- package/lib/typescript/src/NativeOPSQLite.d.ts.map +0 -1
- package/lib/typescript/src/index.d.ts.map +0 -1
- /package/lib/typescript/{src → commonjs/src}/NativeOPSQLite.d.ts +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type TurboModule } from 'react-native';
|
|
2
|
+
export interface Spec extends TurboModule {
|
|
3
|
+
getConstants: () => {
|
|
4
|
+
IOS_DOCUMENT_PATH: string;
|
|
5
|
+
IOS_LIBRARY_PATH: string;
|
|
6
|
+
ANDROID_DATABASE_PATH: string;
|
|
7
|
+
ANDROID_FILES_PATH: string;
|
|
8
|
+
ANDROID_EXTERNAL_FILES_PATH: string;
|
|
9
|
+
};
|
|
10
|
+
install(): boolean;
|
|
11
|
+
moveAssetsDatabase(name: string, extension: string): boolean;
|
|
12
|
+
}
|
|
13
|
+
declare const _default: Spec;
|
|
14
|
+
export default _default;
|
|
15
|
+
//# sourceMappingURL=NativeOPSQLite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeOPSQLite.d.ts","sourceRoot":"","sources":["../../../../src/NativeOPSQLite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,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"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
function nativeCallSyncHook(): unknown;
|
|
3
|
+
var __OPSQLiteProxy: object | undefined;
|
|
4
|
+
}
|
|
5
|
+
export declare const OPSQLite: OPSQLiteProxy;
|
|
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
|
+
/**
|
|
8
|
+
* Object returned by SQL Query executions {
|
|
9
|
+
* insertId: Represent the auto-generated row id if applicable
|
|
10
|
+
* rowsAffected: Number of affected rows if result of a update query
|
|
11
|
+
* message: if status === 1, here you will find error description
|
|
12
|
+
* rows: if status is undefined or 0 this object will contain the query results
|
|
13
|
+
* }
|
|
14
|
+
*
|
|
15
|
+
* @interface QueryResult
|
|
16
|
+
*/
|
|
17
|
+
export type QueryResult = {
|
|
18
|
+
insertId?: number;
|
|
19
|
+
rowsAffected: number;
|
|
20
|
+
res?: any[];
|
|
21
|
+
rows?: {
|
|
22
|
+
/** Raw array with all dataset */
|
|
23
|
+
_array: any[];
|
|
24
|
+
/** The length of the dataset */
|
|
25
|
+
length: number;
|
|
26
|
+
/** A convenience function to access the index based the row object
|
|
27
|
+
* @param idx the row index
|
|
28
|
+
* @returns the row structure identified by column names
|
|
29
|
+
*/
|
|
30
|
+
item: (idx: number) => any;
|
|
31
|
+
};
|
|
32
|
+
rawRows?: any[];
|
|
33
|
+
columnNames?: string[];
|
|
34
|
+
/**
|
|
35
|
+
* Query metadata, available only for select query results
|
|
36
|
+
*/
|
|
37
|
+
metadata?: ColumnMetadata[];
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Column metadata
|
|
41
|
+
* Describes some information about columns fetched by the query
|
|
42
|
+
*/
|
|
43
|
+
export type ColumnMetadata = {
|
|
44
|
+
/** The name used for this column for this result set */
|
|
45
|
+
name: string;
|
|
46
|
+
/** The declared column type for this column, when fetched directly from a table or a View resulting from a table column. "UNKNOWN" for dynamic values, like function returned ones. */
|
|
47
|
+
type: string;
|
|
48
|
+
/**
|
|
49
|
+
* The index for this column for this result set*/
|
|
50
|
+
index: number;
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Allows the execution of bulk of sql commands
|
|
54
|
+
* inside a transaction
|
|
55
|
+
* If a single query must be executed many times with different arguments, its preferred
|
|
56
|
+
* to declare it a single time, and use an array of array parameters.
|
|
57
|
+
*/
|
|
58
|
+
export type SQLBatchTuple = [string] | [string, Array<any> | Array<Array<any>>];
|
|
59
|
+
export type UpdateHookOperation = 'INSERT' | 'DELETE' | 'UPDATE';
|
|
60
|
+
/**
|
|
61
|
+
* status: 0 or undefined for correct execution, 1 for error
|
|
62
|
+
* message: if status === 1, here you will find error description
|
|
63
|
+
* rowsAffected: Number of affected rows if status == 0
|
|
64
|
+
*/
|
|
65
|
+
export type BatchQueryResult = {
|
|
66
|
+
rowsAffected?: number;
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Result of loading a file and executing every line as a SQL command
|
|
70
|
+
* Similar to BatchQueryResult
|
|
71
|
+
*/
|
|
72
|
+
export interface FileLoadResult extends BatchQueryResult {
|
|
73
|
+
commands?: number;
|
|
74
|
+
}
|
|
75
|
+
export interface Transaction {
|
|
76
|
+
commit: () => Promise<QueryResult>;
|
|
77
|
+
execute: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
78
|
+
rollback: () => Promise<QueryResult>;
|
|
79
|
+
}
|
|
80
|
+
export interface PendingTransaction {
|
|
81
|
+
start: () => void;
|
|
82
|
+
}
|
|
83
|
+
export type PreparedStatementObj = {
|
|
84
|
+
bind: (params: any[]) => void;
|
|
85
|
+
execute: () => Promise<QueryResult>;
|
|
86
|
+
};
|
|
87
|
+
export type DB = {
|
|
88
|
+
close: () => void;
|
|
89
|
+
delete: (location?: string) => void;
|
|
90
|
+
attach: (mainDbName: string, dbNameToAttach: string, alias: string, location?: string) => void;
|
|
91
|
+
detach: (mainDbName: string, alias: string) => void;
|
|
92
|
+
transaction: (fn: (tx: Transaction) => Promise<void>) => Promise<void>;
|
|
93
|
+
execute: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
94
|
+
executeWithHostObjects: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
95
|
+
executeBatch: (commands: SQLBatchTuple[]) => Promise<BatchQueryResult>;
|
|
96
|
+
loadFile: (location: string) => Promise<FileLoadResult>;
|
|
97
|
+
updateHook: (callback?: ((params: {
|
|
98
|
+
table: string;
|
|
99
|
+
operation: UpdateHookOperation;
|
|
100
|
+
row?: any;
|
|
101
|
+
rowId: number;
|
|
102
|
+
}) => void) | null) => void;
|
|
103
|
+
commitHook: (callback?: (() => void) | null) => void;
|
|
104
|
+
rollbackHook: (callback?: (() => void) | null) => void;
|
|
105
|
+
prepareStatement: (query: string) => PreparedStatementObj;
|
|
106
|
+
loadExtension: (path: string, entryPoint?: string) => void;
|
|
107
|
+
executeRaw: (query: string, params?: any[]) => Promise<any[]>;
|
|
108
|
+
getDbPath: (location?: string) => string;
|
|
109
|
+
reactiveExecute: (params: {
|
|
110
|
+
query: string;
|
|
111
|
+
arguments: any[];
|
|
112
|
+
fireOn: {
|
|
113
|
+
table: string;
|
|
114
|
+
ids?: number[];
|
|
115
|
+
}[];
|
|
116
|
+
callback: (response: any) => void;
|
|
117
|
+
}) => () => void;
|
|
118
|
+
sync: () => void;
|
|
119
|
+
};
|
|
120
|
+
type OPSQLiteProxy = {
|
|
121
|
+
open: (options: {
|
|
122
|
+
name: string;
|
|
123
|
+
location?: string;
|
|
124
|
+
encryptionKey?: string;
|
|
125
|
+
}) => DB;
|
|
126
|
+
openRemote: (options: {
|
|
127
|
+
url: string;
|
|
128
|
+
authToken: string;
|
|
129
|
+
}) => DB;
|
|
130
|
+
openSync: (options: {
|
|
131
|
+
url: string;
|
|
132
|
+
authToken: string;
|
|
133
|
+
name: string;
|
|
134
|
+
location?: string;
|
|
135
|
+
}) => DB;
|
|
136
|
+
isSQLCipher: () => boolean;
|
|
137
|
+
isLibsql: () => boolean;
|
|
138
|
+
};
|
|
139
|
+
export declare const openSync: (options: {
|
|
140
|
+
url: string;
|
|
141
|
+
authToken: string;
|
|
142
|
+
name: string;
|
|
143
|
+
location?: string;
|
|
144
|
+
syncInterval?: number;
|
|
145
|
+
}) => DB;
|
|
146
|
+
export declare const openRemote: (options: {
|
|
147
|
+
url: string;
|
|
148
|
+
authToken: string;
|
|
149
|
+
}) => DB;
|
|
150
|
+
export declare const open: (options: {
|
|
151
|
+
name: string;
|
|
152
|
+
location?: string;
|
|
153
|
+
encryptionKey?: string;
|
|
154
|
+
}) => DB;
|
|
155
|
+
export declare const moveAssetsDatabase: (args: {
|
|
156
|
+
filename: string;
|
|
157
|
+
path?: string;
|
|
158
|
+
overwrite?: boolean;
|
|
159
|
+
}) => Promise<boolean>;
|
|
160
|
+
export declare const isSQLCipher: () => boolean;
|
|
161
|
+
export declare const isLibsql: () => boolean;
|
|
162
|
+
export {};
|
|
163
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@op-engineering/op-sqlite",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.0.0-beta0",
|
|
4
4
|
"description": "Next generation SQLite for React Native",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
|
|
5
|
+
"source": "./src/index.ts",
|
|
6
|
+
"main": "./lib/commonjs/index.js",
|
|
7
|
+
"module": "./lib/module/index.js",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"import": {
|
|
11
|
+
"types": "./lib/typescript/module/src/index.d.ts",
|
|
12
|
+
"default": "./lib/module/index.js"
|
|
13
|
+
},
|
|
14
|
+
"require": {
|
|
15
|
+
"types": "./lib/typescript/commonjs/src/index.d.ts",
|
|
16
|
+
"default": "./lib/commonjs/index.js"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
},
|
|
10
20
|
"files": [
|
|
11
21
|
"src",
|
|
12
22
|
"lib",
|
|
@@ -19,11 +29,19 @@
|
|
|
19
29
|
"!android/build",
|
|
20
30
|
"!android/.cxx",
|
|
21
31
|
"!ios/build",
|
|
32
|
+
"!android/build",
|
|
33
|
+
"!android/gradle",
|
|
34
|
+
"!android/gradlew",
|
|
35
|
+
"!android/gradlew.bat",
|
|
36
|
+
"!android/local.properties",
|
|
37
|
+
"!android/.cxx",
|
|
22
38
|
"!**/__tests__",
|
|
23
39
|
"!**/__fixtures__",
|
|
24
|
-
"!**/__mocks__"
|
|
40
|
+
"!**/__mocks__",
|
|
41
|
+
"!**/.*"
|
|
25
42
|
],
|
|
26
43
|
"scripts": {
|
|
44
|
+
"example": "yarn workspace op_sqlite_example",
|
|
27
45
|
"typecheck": "tsc --noEmit",
|
|
28
46
|
"prepare": "bob build",
|
|
29
47
|
"pods": "cd example && yarn pods",
|
|
@@ -32,7 +50,8 @@
|
|
|
32
50
|
"keywords": [
|
|
33
51
|
"react-native",
|
|
34
52
|
"ios",
|
|
35
|
-
"android"
|
|
53
|
+
"android",
|
|
54
|
+
"sqlite"
|
|
36
55
|
],
|
|
37
56
|
"repository": "https://github.com/OP-Engineering/op-sqlite",
|
|
38
57
|
"author": "Oscar Franco <ospfranco@protonmail.com> (https://github.com/ospfranco)",
|
|
@@ -49,13 +68,13 @@
|
|
|
49
68
|
"lefthook": "^1.5.5",
|
|
50
69
|
"react": "18.2.0",
|
|
51
70
|
"react-native": "0.74.0",
|
|
52
|
-
"react-native-builder-bob": "^0.
|
|
71
|
+
"react-native-builder-bob": "^0.30.0",
|
|
53
72
|
"turbo": "^1.12.4",
|
|
54
73
|
"typescript": "5.0.4"
|
|
55
74
|
},
|
|
56
75
|
"peerDependencies": {
|
|
57
76
|
"react": "*",
|
|
58
|
-
"react-native": "
|
|
77
|
+
"react-native": "*"
|
|
59
78
|
},
|
|
60
79
|
"workspaces": [
|
|
61
80
|
"example"
|
|
@@ -71,15 +90,26 @@
|
|
|
71
90
|
"source": "src",
|
|
72
91
|
"output": "lib",
|
|
73
92
|
"targets": [
|
|
74
|
-
|
|
75
|
-
|
|
93
|
+
[
|
|
94
|
+
"commonjs",
|
|
95
|
+
{
|
|
96
|
+
"esm": true
|
|
97
|
+
}
|
|
98
|
+
],
|
|
99
|
+
[
|
|
100
|
+
"module",
|
|
101
|
+
{
|
|
102
|
+
"esm": true
|
|
103
|
+
}
|
|
104
|
+
],
|
|
76
105
|
[
|
|
77
106
|
"typescript",
|
|
78
107
|
{
|
|
79
|
-
"project": "tsconfig.build.json"
|
|
108
|
+
"project": "tsconfig.build.json",
|
|
109
|
+
"esm": true
|
|
80
110
|
}
|
|
81
111
|
]
|
|
82
112
|
]
|
|
83
113
|
},
|
|
84
|
-
"packageManager": "yarn@4.
|
|
114
|
+
"packageManager": "yarn@4.4.1"
|
|
85
115
|
}
|
package/src/index.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// import NativeOPSQLite from './NativeOPSQLite';
|
|
2
1
|
import { NativeModules } from 'react-native';
|
|
3
2
|
|
|
4
3
|
declare global {
|
|
@@ -71,6 +70,10 @@ export type QueryResult = {
|
|
|
71
70
|
*/
|
|
72
71
|
item: (idx: number) => any;
|
|
73
72
|
};
|
|
73
|
+
// An array of intermediate results, just values without column names
|
|
74
|
+
rawRows?: any[];
|
|
75
|
+
columnNames?: string[];
|
|
76
|
+
|
|
74
77
|
/**
|
|
75
78
|
* Query metadata, available only for select query results
|
|
76
79
|
*/
|
|
@@ -119,13 +122,9 @@ export interface FileLoadResult extends BatchQueryResult {
|
|
|
119
122
|
}
|
|
120
123
|
|
|
121
124
|
export interface Transaction {
|
|
122
|
-
commit: () => QueryResult
|
|
123
|
-
execute: (query: string, params?: any[]) => QueryResult
|
|
124
|
-
|
|
125
|
-
query: string,
|
|
126
|
-
params?: any[] | undefined
|
|
127
|
-
) => Promise<QueryResult>;
|
|
128
|
-
rollback: () => QueryResult;
|
|
125
|
+
commit: () => Promise<QueryResult>;
|
|
126
|
+
execute: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
127
|
+
rollback: () => Promise<QueryResult>;
|
|
129
128
|
}
|
|
130
129
|
|
|
131
130
|
export interface PendingTransaction {
|
|
@@ -143,7 +142,7 @@ export interface PendingTransaction {
|
|
|
143
142
|
|
|
144
143
|
export type PreparedStatementObj = {
|
|
145
144
|
bind: (params: any[]) => void;
|
|
146
|
-
execute: () => QueryResult
|
|
145
|
+
execute: () => Promise<QueryResult>;
|
|
147
146
|
};
|
|
148
147
|
|
|
149
148
|
export type DB = {
|
|
@@ -157,10 +156,12 @@ export type DB = {
|
|
|
157
156
|
) => void;
|
|
158
157
|
detach: (mainDbName: string, alias: string) => void;
|
|
159
158
|
transaction: (fn: (tx: Transaction) => Promise<void>) => Promise<void>;
|
|
160
|
-
execute: (query: string, params?: any[]) => QueryResult
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
159
|
+
execute: (query: string, params?: any[]) => Promise<QueryResult>;
|
|
160
|
+
executeWithHostObjects: (
|
|
161
|
+
query: string,
|
|
162
|
+
params?: any[]
|
|
163
|
+
) => Promise<QueryResult>;
|
|
164
|
+
executeBatch: (commands: SQLBatchTuple[]) => Promise<BatchQueryResult>;
|
|
164
165
|
loadFile: (location: string) => Promise<FileLoadResult>;
|
|
165
166
|
updateHook: (
|
|
166
167
|
callback?:
|
|
@@ -176,7 +177,7 @@ export type DB = {
|
|
|
176
177
|
rollbackHook: (callback?: (() => void) | null) => void;
|
|
177
178
|
prepareStatement: (query: string) => PreparedStatementObj;
|
|
178
179
|
loadExtension: (path: string, entryPoint?: string) => void;
|
|
179
|
-
|
|
180
|
+
executeRaw: (query: string, params?: any[]) => Promise<any[]>;
|
|
180
181
|
getDbPath: (location?: string) => string;
|
|
181
182
|
reactiveExecute: (params: {
|
|
182
183
|
query: string;
|
|
@@ -260,14 +261,12 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
260
261
|
attach: db.attach,
|
|
261
262
|
detach: db.detach,
|
|
262
263
|
executeBatch: db.executeBatch,
|
|
263
|
-
executeBatchAsync: db.executeBatchAsync,
|
|
264
|
-
|
|
265
264
|
loadFile: db.loadFile,
|
|
266
265
|
updateHook: db.updateHook,
|
|
267
266
|
commitHook: db.commitHook,
|
|
268
267
|
rollbackHook: db.rollbackHook,
|
|
269
268
|
loadExtension: db.loadExtension,
|
|
270
|
-
|
|
269
|
+
executeRaw: db.executeRaw,
|
|
271
270
|
getDbPath: db.getDbPath,
|
|
272
271
|
reactiveExecute: db.reactiveExecute,
|
|
273
272
|
sync: db.sync,
|
|
@@ -275,7 +274,10 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
275
274
|
db.close();
|
|
276
275
|
delete locks[options.url];
|
|
277
276
|
},
|
|
278
|
-
|
|
277
|
+
executeWithHostObjects: async (
|
|
278
|
+
query: string,
|
|
279
|
+
params?: any[] | undefined
|
|
280
|
+
): Promise<QueryResult> => {
|
|
279
281
|
const sanitizedParams = params?.map((p) => {
|
|
280
282
|
if (ArrayBuffer.isView(p)) {
|
|
281
283
|
return p.buffer;
|
|
@@ -284,11 +286,11 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
284
286
|
return p;
|
|
285
287
|
});
|
|
286
288
|
|
|
287
|
-
const result = db.
|
|
289
|
+
const result = await db.executeWithHostObjects(query, sanitizedParams);
|
|
288
290
|
enhanceQueryResult(result);
|
|
289
291
|
return result;
|
|
290
292
|
},
|
|
291
|
-
|
|
293
|
+
execute: async (
|
|
292
294
|
query: string,
|
|
293
295
|
params?: any[] | undefined
|
|
294
296
|
): Promise<QueryResult> => {
|
|
@@ -300,9 +302,29 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
300
302
|
return p;
|
|
301
303
|
});
|
|
302
304
|
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
305
|
+
let intermediateResult = await db.execute(query, sanitizedParams);
|
|
306
|
+
|
|
307
|
+
let rows: any[] = [];
|
|
308
|
+
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
309
|
+
let row: any = {};
|
|
310
|
+
for (let j = 0; j < intermediateResult.columnNames!.length ?? 0; j++) {
|
|
311
|
+
let columnName = intermediateResult.columnNames![j]!;
|
|
312
|
+
let value = intermediateResult.rawRows![i][j];
|
|
313
|
+
|
|
314
|
+
row[columnName] = value;
|
|
315
|
+
}
|
|
316
|
+
rows.push(row);
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
let res = {
|
|
320
|
+
...intermediateResult,
|
|
321
|
+
rows: {
|
|
322
|
+
_array: rows,
|
|
323
|
+
length: rows.length,
|
|
324
|
+
item: (idx: number) => rows[idx],
|
|
325
|
+
},
|
|
326
|
+
};
|
|
327
|
+
return res;
|
|
306
328
|
},
|
|
307
329
|
prepareStatement: (query: string) => {
|
|
308
330
|
const stmt = db.prepareStatement(query);
|
|
@@ -319,8 +341,8 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
319
341
|
|
|
320
342
|
stmt.bind(sanitizedParams);
|
|
321
343
|
},
|
|
322
|
-
execute: () => {
|
|
323
|
-
const res = stmt.execute();
|
|
344
|
+
execute: async () => {
|
|
345
|
+
const res = await stmt.execute();
|
|
324
346
|
enhanceQueryResult(res);
|
|
325
347
|
return res;
|
|
326
348
|
},
|
|
@@ -331,66 +353,78 @@ function enhanceDB(db: DB, options: any): DB {
|
|
|
331
353
|
): Promise<void> => {
|
|
332
354
|
let isFinalized = false;
|
|
333
355
|
|
|
334
|
-
|
|
335
|
-
const execute = (query: string, params?: any[]): QueryResult => {
|
|
356
|
+
const execute = async (query: string, params?: any[] | undefined) => {
|
|
336
357
|
if (isFinalized) {
|
|
337
358
|
throw Error(
|
|
338
359
|
`OP-Sqlite Error: Database: ${options.url}. Cannot execute query on finalized transaction`
|
|
339
360
|
);
|
|
340
361
|
}
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
362
|
+
let intermediateResult = await enhancedDb.execute(query, params);
|
|
363
|
+
let rows: any[] = [];
|
|
364
|
+
for (let i = 0; i < (intermediateResult.rawRows?.length ?? 0); i++) {
|
|
365
|
+
let row: any = {};
|
|
366
|
+
for (
|
|
367
|
+
let j = 0;
|
|
368
|
+
j < intermediateResult.columnNames!.length ?? 0;
|
|
369
|
+
j++
|
|
370
|
+
) {
|
|
371
|
+
let columnName = intermediateResult.columnNames![j]!;
|
|
372
|
+
row[columnName] = intermediateResult.rawRows![i][j];
|
|
373
|
+
}
|
|
374
|
+
rows.push(row);
|
|
349
375
|
}
|
|
350
|
-
|
|
376
|
+
|
|
377
|
+
let res = {
|
|
378
|
+
...intermediateResult,
|
|
379
|
+
rows: {
|
|
380
|
+
_array: rows,
|
|
381
|
+
length: 0,
|
|
382
|
+
item: (idx: number) => rows[idx],
|
|
383
|
+
},
|
|
384
|
+
};
|
|
385
|
+
return res;
|
|
351
386
|
};
|
|
352
387
|
|
|
353
|
-
const commit = () => {
|
|
388
|
+
const commit = async (): Promise<QueryResult> => {
|
|
354
389
|
if (isFinalized) {
|
|
355
390
|
throw Error(
|
|
356
391
|
`OP-Sqlite Error: Database: ${options.url}. Cannot execute query on finalized transaction`
|
|
357
392
|
);
|
|
358
393
|
}
|
|
359
|
-
const result = enhancedDb.execute('COMMIT;');
|
|
394
|
+
const result = await enhancedDb.execute('COMMIT;');
|
|
360
395
|
isFinalized = true;
|
|
361
396
|
return result;
|
|
362
397
|
};
|
|
363
398
|
|
|
364
|
-
const rollback = () => {
|
|
399
|
+
const rollback = async (): Promise<QueryResult> => {
|
|
365
400
|
if (isFinalized) {
|
|
366
401
|
throw Error(
|
|
367
402
|
`OP-Sqlite Error: Database: ${options.url}. Cannot execute query on finalized transaction`
|
|
368
403
|
);
|
|
369
404
|
}
|
|
370
|
-
const result = enhancedDb.execute('ROLLBACK;');
|
|
405
|
+
const result = await enhancedDb.execute('ROLLBACK;');
|
|
371
406
|
isFinalized = true;
|
|
372
407
|
return result;
|
|
373
408
|
};
|
|
374
409
|
|
|
375
410
|
async function run() {
|
|
376
411
|
try {
|
|
377
|
-
await enhancedDb.
|
|
412
|
+
await enhancedDb.execute('BEGIN TRANSACTION;');
|
|
378
413
|
|
|
379
414
|
await fn({
|
|
380
415
|
commit,
|
|
381
416
|
execute,
|
|
382
|
-
executeAsync,
|
|
383
417
|
rollback,
|
|
384
418
|
});
|
|
385
419
|
|
|
386
420
|
if (!isFinalized) {
|
|
387
|
-
commit();
|
|
421
|
+
await commit();
|
|
388
422
|
}
|
|
389
423
|
} catch (executionError) {
|
|
390
|
-
console.warn('transaction error', executionError);
|
|
424
|
+
// console.warn('transaction error', executionError);
|
|
391
425
|
if (!isFinalized) {
|
|
392
426
|
try {
|
|
393
|
-
rollback();
|
|
427
|
+
await rollback();
|
|
394
428
|
} catch (rollbackError) {
|
|
395
429
|
throw rollbackError;
|
|
396
430
|
}
|
|
@@ -425,7 +459,7 @@ export const openSync = (options: {
|
|
|
425
459
|
authToken: string;
|
|
426
460
|
name: string;
|
|
427
461
|
location?: string;
|
|
428
|
-
syncInterval
|
|
462
|
+
syncInterval?: number;
|
|
429
463
|
}): DB => {
|
|
430
464
|
if (!isLibsql()) {
|
|
431
465
|
throw new Error('This function is only available for libsql');
|
package/android/.project
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<projectDescription>
|
|
3
|
-
<name>android_</name>
|
|
4
|
-
<comment>Project android_ created by Buildship.</comment>
|
|
5
|
-
<projects>
|
|
6
|
-
</projects>
|
|
7
|
-
<buildSpec>
|
|
8
|
-
<buildCommand>
|
|
9
|
-
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
|
|
10
|
-
<arguments>
|
|
11
|
-
</arguments>
|
|
12
|
-
</buildCommand>
|
|
13
|
-
</buildSpec>
|
|
14
|
-
<natures>
|
|
15
|
-
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
|
|
16
|
-
</natures>
|
|
17
|
-
</projectDescription>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
arguments=
|
|
2
|
-
auto.sync=false
|
|
3
|
-
build.scans.enabled=false
|
|
4
|
-
connection.gradle.distribution=GRADLE_DISTRIBUTION(VERSION(6.0))
|
|
5
|
-
connection.project.dir=
|
|
6
|
-
eclipse.preferences.version=1
|
|
7
|
-
gradle.user.home=
|
|
8
|
-
java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home
|
|
9
|
-
jvm.arguments=
|
|
10
|
-
offline.mode=false
|
|
11
|
-
override.workspace.settings=true
|
|
12
|
-
show.console.view=true
|
|
13
|
-
show.executions.view=true
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NativeOPSQLite.d.ts","sourceRoot":"","sources":["../../../src/NativeOPSQLite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|