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.
@@ -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.prepare(`SELECT value_json AS valueJson FROM ${APP_STORAGE_TABLE} WHERE namespace = ?`).get(namespace);
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.prepare(`
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
- `).run(namespace, JSON.stringify(normalizedValue), (/* @__PURE__ */ new Date()).toISOString());
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.prepare(`SELECT value_json AS valueJson FROM ${APP_STORAGE_TABLE} WHERE namespace = ?`).get(input.namespace);
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.prepare(`
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
- `).run(input.namespace, JSON.stringify(next), (/* @__PURE__ */ new Date()).toISOString());
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) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codexuse-cli",
3
- "version": "3.7.6",
3
+ "version": "3.8.0",
4
4
  "description": "CodexUse CLI for profiles, Accounts Pool, daemon mode, licenses, and sync.",
5
5
  "author": {
6
6
  "name": "Hoang",