@deterministic-code/datasources-mysql 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.
@@ -34,7 +34,6 @@ export class MysqlDriver {
34
34
  typeConverter = new DeterministicTypeConverter({
35
35
  string: "TEXT",
36
36
  character: "CHAR(1)",
37
- number: "INT",
38
37
  integer: "INT",
39
38
  unsignedinteger: "INT UNSIGNED",
40
39
  smallinteger: "SMALLINT",
@@ -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 MysqlRowTypeConverters = {
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
- ? MysqlRowTypeConverters.bool.reverseConvert(value)
16
+ ? MysqlRowTypeConverters.boolean.reverseConvert(value)
15
17
  : value instanceof Date
16
18
  || (typeof value === "string" && /^\d{4}-\d{2}-\d{2}T/.test(value))
17
19
  ? MysqlRowTypeConverters.datetime.reverseConvert(value)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deterministic-code/datasources-mysql",
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
  "mysql2": "^3.14.0"
23
23
  }
24
24
  }