Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | 174x 114x 106x 8x 24x 26x 10x | import type { NormalizedValue } from "../normalize";
import type { FieldType } from "./types";
export class UnknownTypeError extends Error {}
export function getType(
prevType: FieldType | undefined,
value: NormalizedValue | undefined,
): FieldType {
switch (typeof value) {
case "number": {
if (prevType !== "real" && Number.isInteger(value)) {
return "integer";
} else {
return "real";
}
}
case "string": {
return "text";
}
case "boolean": {
return "boolean";
}
default: {
throw new UnknownTypeError();
}
}
}
|