UNPKG

sqlite3orm

Version:

ORM for sqlite3 and TypeScript/JavaScript

129 lines 4.62 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DEFAULT_VALUE_TRANSFORMERS = exports.DefaultValueTransformers = exports.UnknownDefaultTransformer = exports.StringNumberTransformer = exports.StringDefaultTransformer = exports.NumberDefaultTransformer = exports.NumberTextTransformer = exports.DateIntegerAsMillisecondsTransformer = exports.DateIntegerAsSecondsTransformer = exports.DateTextTransformer = exports.BooleanNumberTransformer = exports.BooleanTextTransformer = exports.JsonTransformer = void 0; class JsonTransformer { toDB(input) { return input == undefined ? null : JSON.stringify(input); } fromDB(input) { return input == null ? undefined : JSON.parse(input); } } exports.JsonTransformer = JsonTransformer; class BooleanTextTransformer { toDB(input) { return input == undefined ? null : !input ? '0' : '1'; } fromDB(input) { if (input == null) { return undefined; } if (input === '0' || input === 'false') { return false; } else if (input === '1' || input === 'true') { return true; } return undefined; } } exports.BooleanTextTransformer = BooleanTextTransformer; class BooleanNumberTransformer { toDB(input) { return input == undefined ? null : !input ? 0 : 1; } fromDB(input) { return input == null ? undefined : !input ? false : true; } } exports.BooleanNumberTransformer = BooleanNumberTransformer; class DateTextTransformer { toDB(input) { return input == undefined ? null : input.toISOString(); } fromDB(input) { return input == null ? undefined : new Date(Date.parse(input)); } } exports.DateTextTransformer = DateTextTransformer; class DateIntegerAsSecondsTransformer { toDB(input) { return input == undefined ? null : Math.floor(input.getTime() / 1000); } fromDB(input) { return input == null ? undefined : new Date(Number.isInteger(input) ? input * 1000 : NaN); } } exports.DateIntegerAsSecondsTransformer = DateIntegerAsSecondsTransformer; class DateIntegerAsMillisecondsTransformer { toDB(input) { return input == undefined ? null : input.getTime(); } fromDB(input) { return input == null ? undefined : new Date(Number.isInteger(input) ? input : NaN); } } exports.DateIntegerAsMillisecondsTransformer = DateIntegerAsMillisecondsTransformer; class NumberTextTransformer { toDB(input) { return input == undefined ? null : String(input); } fromDB(input) { return input == null ? undefined : Number(input); } } exports.NumberTextTransformer = NumberTextTransformer; class NumberDefaultTransformer { toDB(input) { return input == undefined ? null : Number(input); } fromDB(input) { return input == null ? undefined : Number(input); } } exports.NumberDefaultTransformer = NumberDefaultTransformer; class StringDefaultTransformer { toDB(input) { return input == undefined ? null : String(input); } fromDB(input) { return input == null ? undefined : String(input); } } exports.StringDefaultTransformer = StringDefaultTransformer; class StringNumberTransformer { toDB(input) { return input == undefined ? null : Number(input); } fromDB(input) { return input == null ? undefined : String(input); } } exports.StringNumberTransformer = StringNumberTransformer; class UnknownDefaultTransformer { /* istanbul ignore next */ toDB(input) { return input == undefined ? null : input; } /* istanbul ignore next */ fromDB(input) { return input == null ? undefined : input; } } exports.UnknownDefaultTransformer = UnknownDefaultTransformer; class DefaultValueTransformers { json = new JsonTransformer(); booleanText = new BooleanTextTransformer(); booleanNumber = new BooleanNumberTransformer(); dateText = new DateTextTransformer(); dateIntegerAsSeconds = new DateIntegerAsSecondsTransformer(); dateIntegerAsMilliseconds = new DateIntegerAsMillisecondsTransformer(); numberText = new NumberTextTransformer(); numberDefault = new NumberDefaultTransformer(); stringNumber = new StringNumberTransformer(); stringDefault = new StringDefaultTransformer(); unknownDefault = new UnknownDefaultTransformer(); } exports.DefaultValueTransformers = DefaultValueTransformers; exports.DEFAULT_VALUE_TRANSFORMERS = new DefaultValueTransformers(); //# sourceMappingURL=DefaultValueTransformers.js.map