codexuse-cli 3.7.6 → 3.8.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/dist/index.js +29 -13
- package/dist/index.js.map +1 -1
- package/dist/server/index.mjs +14 -6
- package/package.json +1 -1
package/dist/server/index.mjs
CHANGED
|
@@ -28758,6 +28758,14 @@ function rollback(db) {
|
|
|
28758
28758
|
db.exec("ROLLBACK");
|
|
28759
28759
|
} catch {}
|
|
28760
28760
|
}
|
|
28761
|
+
function useStatement(db, sql, task) {
|
|
28762
|
+
const statement = db.prepare(sql);
|
|
28763
|
+
try {
|
|
28764
|
+
return task(statement);
|
|
28765
|
+
} finally {
|
|
28766
|
+
statement.finalize?.();
|
|
28767
|
+
}
|
|
28768
|
+
}
|
|
28761
28769
|
async function withWriteQueue(dbPath, task) {
|
|
28762
28770
|
const previous = writeQueueByDbPath.get(dbPath) ?? Promise.resolve();
|
|
28763
28771
|
let release;
|
|
@@ -28827,7 +28835,7 @@ function resolveAppStorageDbPath(userDataDir) {
|
|
|
28827
28835
|
}
|
|
28828
28836
|
async function readDocument(dbPath, namespace, normalize) {
|
|
28829
28837
|
return withDatabase(dbPath, (db) => {
|
|
28830
|
-
const row = db
|
|
28838
|
+
const row = useStatement(db, `SELECT value_json AS valueJson FROM ${APP_STORAGE_TABLE} WHERE namespace = ?`, (statement) => statement.get(namespace));
|
|
28831
28839
|
const parsed = isRecord$8(row) ? safeParseJson(row.valueJson) : null;
|
|
28832
28840
|
if (parsed === null) return null;
|
|
28833
28841
|
return normalize(parsed);
|
|
@@ -28838,14 +28846,14 @@ async function writeDocument(dbPath, namespace, value) {
|
|
|
28838
28846
|
const normalizedValue = clone$1(value);
|
|
28839
28847
|
beginImmediate(db);
|
|
28840
28848
|
try {
|
|
28841
|
-
db
|
|
28849
|
+
useStatement(db, `
|
|
28842
28850
|
INSERT INTO ${APP_STORAGE_TABLE} (namespace, value_json, updated_at)
|
|
28843
28851
|
VALUES (?, ?, ?)
|
|
28844
28852
|
ON CONFLICT(namespace)
|
|
28845
28853
|
DO UPDATE SET
|
|
28846
28854
|
value_json = excluded.value_json,
|
|
28847
28855
|
updated_at = excluded.updated_at
|
|
28848
|
-
|
|
28856
|
+
`, (statement) => statement.run(namespace, JSON.stringify(normalizedValue), (/* @__PURE__ */ new Date()).toISOString()));
|
|
28849
28857
|
commit(db);
|
|
28850
28858
|
return normalizedValue;
|
|
28851
28859
|
} catch (error) {
|
|
@@ -28858,17 +28866,17 @@ async function updateDocument(input) {
|
|
|
28858
28866
|
return withWriteQueue(input.dbPath, async () => withDatabase(input.dbPath, (db) => {
|
|
28859
28867
|
beginImmediate(db);
|
|
28860
28868
|
try {
|
|
28861
|
-
const row = db
|
|
28869
|
+
const row = useStatement(db, `SELECT value_json AS valueJson FROM ${APP_STORAGE_TABLE} WHERE namespace = ?`, (statement) => statement.get(input.namespace));
|
|
28862
28870
|
const current = isRecord$8(row) ? input.normalize(safeParseJson(row.valueJson) ?? input.fallback()) : input.fallback();
|
|
28863
28871
|
const next = input.normalize(input.transform(clone$1(current)));
|
|
28864
|
-
db
|
|
28872
|
+
useStatement(db, `
|
|
28865
28873
|
INSERT INTO ${APP_STORAGE_TABLE} (namespace, value_json, updated_at)
|
|
28866
28874
|
VALUES (?, ?, ?)
|
|
28867
28875
|
ON CONFLICT(namespace)
|
|
28868
28876
|
DO UPDATE SET
|
|
28869
28877
|
value_json = excluded.value_json,
|
|
28870
28878
|
updated_at = excluded.updated_at
|
|
28871
|
-
|
|
28879
|
+
`, (statement) => statement.run(input.namespace, JSON.stringify(next), (/* @__PURE__ */ new Date()).toISOString()));
|
|
28872
28880
|
commit(db);
|
|
28873
28881
|
return clone$1(next);
|
|
28874
28882
|
} catch (error) {
|