knex-schema-inspector
Advanced tools
Comparing version 1.1.1 to 1.2.0
@@ -8,2 +8,3 @@ import { Knex } from 'knex'; | ||
constructor(knex: Knex); | ||
parseDefaultValue(value: string): string | number | null; | ||
/** | ||
@@ -10,0 +11,0 @@ * List all existing tables in the current schema/database |
@@ -43,2 +43,15 @@ "use strict"; | ||
} | ||
MSSQL.prototype.parseDefaultValue = function (value) { | ||
if (!value) | ||
return null; | ||
if (value.startsWith('(') && value.endsWith(')')) { | ||
value = value.slice(1, -1); | ||
} | ||
if (value.startsWith("'") && value.endsWith("'")) { | ||
value = value.slice(1, -1); | ||
} | ||
if (Number.isNaN(Number(value))) | ||
return String(value); | ||
return Number(value); | ||
}; | ||
// Tables | ||
@@ -166,16 +179,4 @@ // =============================================================================================== | ||
return __awaiter(this, void 0, void 0, function () { | ||
function parseDefault(value) { | ||
if (!value) | ||
return null; | ||
if (value.startsWith('(') && value.endsWith(')')) { | ||
value = value.slice(1, -1); | ||
} | ||
if (value.startsWith("'") && value.endsWith("'")) { | ||
value = value.slice(1, -1); | ||
} | ||
if (Number.isNaN(Number(value))) | ||
return String(value); | ||
return Number(value); | ||
} | ||
var dbName, query, rawColumn, records; | ||
var _this = this; | ||
return __generator(this, function (_a) { | ||
@@ -208,3 +209,3 @@ switch (_a.label) { | ||
data_type: rawColumn.DATA_TYPE, | ||
default_value: parseDefault(rawColumn.COLUMN_DEFAULT), | ||
default_value: this.parseDefaultValue(rawColumn.COLUMN_DEFAULT), | ||
max_length: rawColumn.CHARACTER_MAXIMUM_LENGTH, | ||
@@ -228,3 +229,3 @@ numeric_precision: rawColumn.NUMERIC_PRECISION, | ||
data_type: rawColumn.DATA_TYPE, | ||
default_value: parseDefault(rawColumn.COLUMN_DEFAULT), | ||
default_value: _this.parseDefaultValue(rawColumn.COLUMN_DEFAULT), | ||
max_length: rawColumn.CHARACTER_MAXIMUM_LENGTH, | ||
@@ -231,0 +232,0 @@ numeric_precision: rawColumn.NUMERIC_PRECISION, |
@@ -41,2 +41,18 @@ import { Knex } from 'knex'; | ||
parseDefaultValue(value: string) { | ||
if (!value) return null; | ||
if (value.startsWith('(') && value.endsWith(')')) { | ||
value = value.slice(1, -1); | ||
} | ||
if (value.startsWith("'") && value.endsWith("'")) { | ||
value = value.slice(1, -1); | ||
} | ||
if (Number.isNaN(Number(value))) return String(value); | ||
return Number(value); | ||
} | ||
// Tables | ||
@@ -264,3 +280,3 @@ // =============================================================================================== | ||
data_type: rawColumn.DATA_TYPE, | ||
default_value: parseDefault(rawColumn.COLUMN_DEFAULT), | ||
default_value: this.parseDefaultValue(rawColumn.COLUMN_DEFAULT), | ||
max_length: rawColumn.CHARACTER_MAXIMUM_LENGTH, | ||
@@ -286,3 +302,3 @@ numeric_precision: rawColumn.NUMERIC_PRECISION, | ||
data_type: rawColumn.DATA_TYPE, | ||
default_value: parseDefault(rawColumn.COLUMN_DEFAULT), | ||
default_value: this.parseDefaultValue(rawColumn.COLUMN_DEFAULT), | ||
max_length: rawColumn.CHARACTER_MAXIMUM_LENGTH, | ||
@@ -300,18 +316,2 @@ numeric_precision: rawColumn.NUMERIC_PRECISION, | ||
) as Column[]; | ||
function parseDefault(value: string) { | ||
if (!value) return null; | ||
if (value.startsWith('(') && value.endsWith(')')) { | ||
value = value.slice(1, -1); | ||
} | ||
if (value.startsWith("'") && value.endsWith("'")) { | ||
value = value.slice(1, -1); | ||
} | ||
if (Number.isNaN(Number(value))) return String(value); | ||
return Number(value); | ||
} | ||
} | ||
@@ -318,0 +318,0 @@ |
{ | ||
"name": "knex-schema-inspector", | ||
"version": "1.1.1", | ||
"version": "1.2.0", | ||
"description": "Utility for extracting information about existing DB schema", | ||
@@ -5,0 +5,0 @@ "main": "dist/lib/index.js", |
474124
9687