@deterministic-code/datasources-sqlite 0.1.15 → 0.1.18

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.
@@ -26,7 +26,6 @@ export class SqliteDriver {
26
26
  typeConverter = new DeterministicTypeConverter({
27
27
  string: "TEXT",
28
28
  character: "TEXT",
29
- number: "INTEGER",
30
29
  integer: "INTEGER",
31
30
  unsignedinteger: "INTEGER",
32
31
  smallinteger: "INTEGER",
package/dist/command.js CHANGED
@@ -102,7 +102,7 @@ export class SqliteCommand extends CommandMiddlewareHost {
102
102
  }
103
103
  }
104
104
  const booleanDeclared = (declared) => declared?.toUpperCase() === "BOOLEAN";
105
- const cell = (value, declared) => value == null ? null : booleanDeclared(declared) ? SqliteRowTypeConverters.bool.convert(value) : value;
105
+ const cell = (value, declared) => value == null ? null : booleanDeclared(declared) ? SqliteRowTypeConverters.boolean.convert(value) : value;
106
106
  const closable = (iter, columns) => {
107
107
  const stop = iter.return ? iter.return.bind(iter) : undefined;
108
108
  const rows = {
@@ -0,0 +1,5 @@
1
+ import { TypeConverter, type Cell } from "@deterministic-code/datasources";
2
+ export declare class IntegerConverter extends TypeConverter<Cell, Cell> {
3
+ convert: (from: Cell) => Cell;
4
+ reverseConvert: (to: Cell) => Cell;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { TypeConverter } from "@deterministic-code/datasources";
2
+ export class IntegerConverter extends TypeConverter {
3
+ convert = (from) => from === "" ? 0 : typeof from === "string" && /^-?\d+$/.test(from) ? Number(from) : from;
4
+ reverseConvert = (to) => to;
5
+ }
@@ -2,16 +2,18 @@ import { BinaryConverter } from "./BinaryConverter.js";
2
2
  import { BoolConverter } from "./BoolConverter.js";
3
3
  import { DateTimeConverter } from "./DateTimeConverter.js";
4
4
  import { DecimalConverter } from "./DecimalConverter.js";
5
+ import { IntegerConverter } from "./IntegerConverter.js";
5
6
  import { UuidConverter } from "./UuidConverter.js";
6
7
  export const SqliteRowTypeConverters = {
7
- bool: new BoolConverter(),
8
+ boolean: new BoolConverter(),
8
9
  datetime: new DateTimeConverter(),
9
10
  uuid: new UuidConverter(),
10
11
  decimal: new DecimalConverter(),
11
12
  binary: new BinaryConverter(),
13
+ integer: new IntegerConverter(),
12
14
  };
13
15
  export const reverse = (value) => typeof value === "boolean"
14
- ? SqliteRowTypeConverters.bool.reverseConvert(value)
16
+ ? SqliteRowTypeConverters.boolean.reverseConvert(value)
15
17
  : value instanceof Date
16
18
  ? SqliteRowTypeConverters.datetime.reverseConvert(value)
17
19
  : value instanceof Uint8Array
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deterministic-code/datasources-sqlite",
3
- "version": "0.1.15",
3
+ "version": "0.1.18",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.js",
@@ -18,7 +18,7 @@
18
18
  "access": "public"
19
19
  },
20
20
  "dependencies": {
21
- "@deterministic-code/datasources": "^0.1.15",
21
+ "@deterministic-code/datasources": "^0.1.18",
22
22
  "@types/better-sqlite3": "^7.6.13",
23
23
  "better-sqlite3": "^13.0.3"
24
24
  }