@atscript/db-sqlite 0.1.83 → 0.1.84

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.cjs CHANGED
@@ -201,8 +201,8 @@ function buildSelect(table, where, controls) {
201
201
  /**
202
202
  * Builds an UPDATE ... SET ... WHERE statement.
203
203
  */
204
- function buildUpdate(table, data, where, ops) {
205
- return (0, _atscript_db_sql_tools.buildUpdate)(sqliteDialect, table, data, where, void 0, ops);
204
+ function buildUpdate(table, data, where, ops, versionColumn, expectedVersion) {
205
+ return (0, _atscript_db_sql_tools.buildUpdate)(sqliteDialect, table, data, where, void 0, ops, versionColumn, expectedVersion);
206
206
  }
207
207
  /**
208
208
  * Builds a DELETE ... WHERE statement.
@@ -521,13 +521,14 @@ var SqliteAdapter = class SqliteAdapter extends _atscript_db.BaseDbAdapter {
521
521
  this._log(sql, params);
522
522
  return this.driver.all(sql, params);
523
523
  }
524
- async updateOne(filter, data, ops) {
524
+ async updateOne(filter, data, ops, expectedVersion) {
525
525
  const where = buildWhere(filter);
526
526
  const tableName = this.resolveTableName();
527
+ const versionColumn = this._table.versionColumn;
527
528
  const { sql, params } = buildUpdate(tableName, data, {
528
529
  sql: `rowid = (SELECT rowid FROM "${esc(tableName)}" WHERE ${where.sql} LIMIT 1)`,
529
530
  params: where.params
530
- }, ops);
531
+ }, ops, versionColumn, expectedVersion);
531
532
  this._log(sql, params);
532
533
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
533
534
  return {
@@ -537,7 +538,8 @@ var SqliteAdapter = class SqliteAdapter extends _atscript_db.BaseDbAdapter {
537
538
  }
538
539
  async updateMany(filter, data, ops) {
539
540
  const where = buildWhere(filter);
540
- const { sql, params } = buildUpdate(this.resolveTableName(), data, where, ops);
541
+ const versionColumn = this._table.versionColumn;
542
+ const { sql, params } = buildUpdate(this.resolveTableName(), data, where, ops, versionColumn);
541
543
  this._log(sql, params);
542
544
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
543
545
  return {
@@ -545,13 +547,14 @@ var SqliteAdapter = class SqliteAdapter extends _atscript_db.BaseDbAdapter {
545
547
  modifiedCount: result.changes
546
548
  };
547
549
  }
548
- async replaceOne(filter, data) {
550
+ async replaceOne(filter, data, expectedVersion) {
549
551
  const where = buildWhere(filter);
550
552
  const tableName = this.resolveTableName();
553
+ const versionColumn = this._table.versionColumn;
551
554
  const { sql, params } = buildUpdate(tableName, data, {
552
555
  sql: `rowid = (SELECT rowid FROM "${esc(tableName)}" WHERE ${where.sql} LIMIT 1)`,
553
556
  params: where.params
554
- });
557
+ }, void 0, versionColumn, expectedVersion);
555
558
  this._log(sql, params);
556
559
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
557
560
  return {
@@ -561,7 +564,8 @@ var SqliteAdapter = class SqliteAdapter extends _atscript_db.BaseDbAdapter {
561
564
  }
562
565
  async replaceMany(filter, data) {
563
566
  const where = buildWhere(filter);
564
- const { sql, params } = buildUpdate(this.resolveTableName(), data, where);
567
+ const versionColumn = this._table.versionColumn;
568
+ const { sql, params } = buildUpdate(this.resolveTableName(), data, where, void 0, versionColumn);
565
569
  this._log(sql, params);
566
570
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
567
571
  return {
package/dist/index.d.cts CHANGED
@@ -106,9 +106,9 @@ declare class SqliteAdapter extends BaseDbAdapter {
106
106
  findMany(query: DbQuery): Promise<Array<Record<string, unknown>>>;
107
107
  count(query: DbQuery): Promise<number>;
108
108
  aggregate(query: DbQuery): Promise<Array<Record<string, unknown>>>;
109
- updateOne(filter: FilterExpr, data: Record<string, unknown>, ops?: TFieldOps): Promise<TDbUpdateResult>;
109
+ updateOne(filter: FilterExpr, data: Record<string, unknown>, ops?: TFieldOps, expectedVersion?: number): Promise<TDbUpdateResult>;
110
110
  updateMany(filter: FilterExpr, data: Record<string, unknown>, ops?: TFieldOps): Promise<TDbUpdateResult>;
111
- replaceOne(filter: FilterExpr, data: Record<string, unknown>): Promise<TDbUpdateResult>;
111
+ replaceOne(filter: FilterExpr, data: Record<string, unknown>, expectedVersion?: number): Promise<TDbUpdateResult>;
112
112
  replaceMany(filter: FilterExpr, data: Record<string, unknown>): Promise<TDbUpdateResult>;
113
113
  deleteOne(filter: FilterExpr): Promise<TDbDeleteResult>;
114
114
  deleteMany(filter: FilterExpr): Promise<TDbDeleteResult>;
package/dist/index.d.mts CHANGED
@@ -106,9 +106,9 @@ declare class SqliteAdapter extends BaseDbAdapter {
106
106
  findMany(query: DbQuery): Promise<Array<Record<string, unknown>>>;
107
107
  count(query: DbQuery): Promise<number>;
108
108
  aggregate(query: DbQuery): Promise<Array<Record<string, unknown>>>;
109
- updateOne(filter: FilterExpr, data: Record<string, unknown>, ops?: TFieldOps): Promise<TDbUpdateResult>;
109
+ updateOne(filter: FilterExpr, data: Record<string, unknown>, ops?: TFieldOps, expectedVersion?: number): Promise<TDbUpdateResult>;
110
110
  updateMany(filter: FilterExpr, data: Record<string, unknown>, ops?: TFieldOps): Promise<TDbUpdateResult>;
111
- replaceOne(filter: FilterExpr, data: Record<string, unknown>): Promise<TDbUpdateResult>;
111
+ replaceOne(filter: FilterExpr, data: Record<string, unknown>, expectedVersion?: number): Promise<TDbUpdateResult>;
112
112
  replaceMany(filter: FilterExpr, data: Record<string, unknown>): Promise<TDbUpdateResult>;
113
113
  deleteOne(filter: FilterExpr): Promise<TDbDeleteResult>;
114
114
  deleteMany(filter: FilterExpr): Promise<TDbDeleteResult>;
package/dist/index.mjs CHANGED
@@ -200,8 +200,8 @@ function buildSelect$1(table, where, controls) {
200
200
  /**
201
201
  * Builds an UPDATE ... SET ... WHERE statement.
202
202
  */
203
- function buildUpdate$1(table, data, where, ops) {
204
- return buildUpdate(sqliteDialect, table, data, where, void 0, ops);
203
+ function buildUpdate$1(table, data, where, ops, versionColumn, expectedVersion) {
204
+ return buildUpdate(sqliteDialect, table, data, where, void 0, ops, versionColumn, expectedVersion);
205
205
  }
206
206
  /**
207
207
  * Builds a DELETE ... WHERE statement.
@@ -520,13 +520,14 @@ var SqliteAdapter = class SqliteAdapter extends BaseDbAdapter {
520
520
  this._log(sql, params);
521
521
  return this.driver.all(sql, params);
522
522
  }
523
- async updateOne(filter, data, ops) {
523
+ async updateOne(filter, data, ops, expectedVersion) {
524
524
  const where = buildWhere(filter);
525
525
  const tableName = this.resolveTableName();
526
+ const versionColumn = this._table.versionColumn;
526
527
  const { sql, params } = buildUpdate$1(tableName, data, {
527
528
  sql: `rowid = (SELECT rowid FROM "${esc(tableName)}" WHERE ${where.sql} LIMIT 1)`,
528
529
  params: where.params
529
- }, ops);
530
+ }, ops, versionColumn, expectedVersion);
530
531
  this._log(sql, params);
531
532
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
532
533
  return {
@@ -536,7 +537,8 @@ var SqliteAdapter = class SqliteAdapter extends BaseDbAdapter {
536
537
  }
537
538
  async updateMany(filter, data, ops) {
538
539
  const where = buildWhere(filter);
539
- const { sql, params } = buildUpdate$1(this.resolveTableName(), data, where, ops);
540
+ const versionColumn = this._table.versionColumn;
541
+ const { sql, params } = buildUpdate$1(this.resolveTableName(), data, where, ops, versionColumn);
540
542
  this._log(sql, params);
541
543
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
542
544
  return {
@@ -544,13 +546,14 @@ var SqliteAdapter = class SqliteAdapter extends BaseDbAdapter {
544
546
  modifiedCount: result.changes
545
547
  };
546
548
  }
547
- async replaceOne(filter, data) {
549
+ async replaceOne(filter, data, expectedVersion) {
548
550
  const where = buildWhere(filter);
549
551
  const tableName = this.resolveTableName();
552
+ const versionColumn = this._table.versionColumn;
550
553
  const { sql, params } = buildUpdate$1(tableName, data, {
551
554
  sql: `rowid = (SELECT rowid FROM "${esc(tableName)}" WHERE ${where.sql} LIMIT 1)`,
552
555
  params: where.params
553
- });
556
+ }, void 0, versionColumn, expectedVersion);
554
557
  this._log(sql, params);
555
558
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
556
559
  return {
@@ -560,7 +563,8 @@ var SqliteAdapter = class SqliteAdapter extends BaseDbAdapter {
560
563
  }
561
564
  async replaceMany(filter, data) {
562
565
  const where = buildWhere(filter);
563
- const { sql, params } = buildUpdate$1(this.resolveTableName(), data, where);
566
+ const versionColumn = this._table.versionColumn;
567
+ const { sql, params } = buildUpdate$1(this.resolveTableName(), data, where, void 0, versionColumn);
564
568
  this._log(sql, params);
565
569
  const result = this._wrapConstraintError(() => this.driver.run(sql, params));
566
570
  return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atscript/db-sqlite",
3
- "version": "0.1.83",
3
+ "version": "0.1.84",
4
4
  "description": "SQLite adapter for @atscript/db with swappable driver support.",
5
5
  "keywords": [
6
6
  "atscript",
@@ -49,8 +49,8 @@
49
49
  "@atscript/typescript": "^0.1.59",
50
50
  "@uniqu/core": "^0.1.6",
51
51
  "better-sqlite3": ">=11.0.0",
52
- "@atscript/db": "^0.1.83",
53
- "@atscript/db-sql-tools": "^0.1.83"
52
+ "@atscript/db": "^0.1.84",
53
+ "@atscript/db-sql-tools": "^0.1.84"
54
54
  },
55
55
  "peerDependenciesMeta": {
56
56
  "better-sqlite3": {