linkgress-orm 0.0.1
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.
- package/LICENSE +21 -0
- package/README.md +196 -0
- package/dist/database/database-client.interface.d.ts +45 -0
- package/dist/database/database-client.interface.d.ts.map +1 -0
- package/dist/database/database-client.interface.js +20 -0
- package/dist/database/database-client.interface.js.map +1 -0
- package/dist/database/index.d.ts +5 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +10 -0
- package/dist/database/index.js.map +1 -0
- package/dist/database/pg-client.d.ts +30 -0
- package/dist/database/pg-client.d.ts.map +1 -0
- package/dist/database/pg-client.js +76 -0
- package/dist/database/pg-client.js.map +1 -0
- package/dist/database/postgres-client.d.ts +44 -0
- package/dist/database/postgres-client.d.ts.map +1 -0
- package/dist/database/postgres-client.js +111 -0
- package/dist/database/postgres-client.js.map +1 -0
- package/dist/database/types.d.ts +200 -0
- package/dist/database/types.d.ts.map +1 -0
- package/dist/database/types.js +8 -0
- package/dist/database/types.js.map +1 -0
- package/dist/entity/base-entity.d.ts +21 -0
- package/dist/entity/base-entity.d.ts.map +1 -0
- package/dist/entity/base-entity.js +27 -0
- package/dist/entity/base-entity.js.map +1 -0
- package/dist/entity/db-column.d.ts +61 -0
- package/dist/entity/db-column.d.ts.map +1 -0
- package/dist/entity/db-column.js +35 -0
- package/dist/entity/db-column.js.map +1 -0
- package/dist/entity/db-context.d.ts +665 -0
- package/dist/entity/db-context.d.ts.map +1 -0
- package/dist/entity/db-context.js +1463 -0
- package/dist/entity/db-context.js.map +1 -0
- package/dist/entity/entity-base.d.ts +76 -0
- package/dist/entity/entity-base.d.ts.map +1 -0
- package/dist/entity/entity-base.js +42 -0
- package/dist/entity/entity-base.js.map +1 -0
- package/dist/entity/entity-builder.d.ts +171 -0
- package/dist/entity/entity-builder.d.ts.map +1 -0
- package/dist/entity/entity-builder.js +376 -0
- package/dist/entity/entity-builder.js.map +1 -0
- package/dist/entity/model-config.d.ts +18 -0
- package/dist/entity/model-config.d.ts.map +1 -0
- package/dist/entity/model-config.js +157 -0
- package/dist/entity/model-config.js.map +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +142 -0
- package/dist/index.js.map +1 -0
- package/dist/migration/db-schema-manager.d.ts +228 -0
- package/dist/migration/db-schema-manager.d.ts.map +1 -0
- package/dist/migration/db-schema-manager.js +1055 -0
- package/dist/migration/db-schema-manager.js.map +1 -0
- package/dist/migration/enum-migrator.d.ts +29 -0
- package/dist/migration/enum-migrator.d.ts.map +1 -0
- package/dist/migration/enum-migrator.js +137 -0
- package/dist/migration/enum-migrator.js.map +1 -0
- package/dist/query/collection-strategy.factory.d.ts +16 -0
- package/dist/query/collection-strategy.factory.d.ts.map +1 -0
- package/dist/query/collection-strategy.factory.js +37 -0
- package/dist/query/collection-strategy.factory.js.map +1 -0
- package/dist/query/collection-strategy.interface.d.ts +146 -0
- package/dist/query/collection-strategy.interface.d.ts.map +1 -0
- package/dist/query/collection-strategy.interface.js +3 -0
- package/dist/query/collection-strategy.interface.js.map +1 -0
- package/dist/query/conditions.d.ts +222 -0
- package/dist/query/conditions.d.ts.map +1 -0
- package/dist/query/conditions.js +446 -0
- package/dist/query/conditions.js.map +1 -0
- package/dist/query/cte-builder.d.ts +95 -0
- package/dist/query/cte-builder.d.ts.map +1 -0
- package/dist/query/cte-builder.js +172 -0
- package/dist/query/cte-builder.js.map +1 -0
- package/dist/query/grouped-query.d.ts +186 -0
- package/dist/query/grouped-query.d.ts.map +1 -0
- package/dist/query/grouped-query.js +588 -0
- package/dist/query/grouped-query.js.map +1 -0
- package/dist/query/join-builder.d.ts +106 -0
- package/dist/query/join-builder.d.ts.map +1 -0
- package/dist/query/join-builder.js +275 -0
- package/dist/query/join-builder.js.map +1 -0
- package/dist/query/query-builder.d.ts +543 -0
- package/dist/query/query-builder.d.ts.map +1 -0
- package/dist/query/query-builder.js +2649 -0
- package/dist/query/query-builder.js.map +1 -0
- package/dist/query/strategies/jsonb-collection-strategy.d.ts +51 -0
- package/dist/query/strategies/jsonb-collection-strategy.d.ts.map +1 -0
- package/dist/query/strategies/jsonb-collection-strategy.js +210 -0
- package/dist/query/strategies/jsonb-collection-strategy.js.map +1 -0
- package/dist/query/strategies/temptable-collection-strategy.d.ts +95 -0
- package/dist/query/strategies/temptable-collection-strategy.d.ts.map +1 -0
- package/dist/query/strategies/temptable-collection-strategy.js +456 -0
- package/dist/query/strategies/temptable-collection-strategy.js.map +1 -0
- package/dist/query/subquery.d.ts +152 -0
- package/dist/query/subquery.d.ts.map +1 -0
- package/dist/query/subquery.js +206 -0
- package/dist/query/subquery.js.map +1 -0
- package/dist/schema/column-builder.d.ts +127 -0
- package/dist/schema/column-builder.d.ts.map +1 -0
- package/dist/schema/column-builder.js +184 -0
- package/dist/schema/column-builder.js.map +1 -0
- package/dist/schema/inference.d.ts +26 -0
- package/dist/schema/inference.d.ts.map +1 -0
- package/dist/schema/inference.js +3 -0
- package/dist/schema/inference.js.map +1 -0
- package/dist/schema/navigation.d.ts +215 -0
- package/dist/schema/navigation.d.ts.map +1 -0
- package/dist/schema/navigation.js +233 -0
- package/dist/schema/navigation.js.map +1 -0
- package/dist/schema/row-type.d.ts +26 -0
- package/dist/schema/row-type.d.ts.map +1 -0
- package/dist/schema/row-type.js +3 -0
- package/dist/schema/row-type.js.map +1 -0
- package/dist/schema/sequence-builder.d.ts +87 -0
- package/dist/schema/sequence-builder.d.ts.map +1 -0
- package/dist/schema/sequence-builder.js +123 -0
- package/dist/schema/sequence-builder.js.map +1 -0
- package/dist/schema/table-builder.d.ts +122 -0
- package/dist/schema/table-builder.d.ts.map +1 -0
- package/dist/schema/table-builder.js +132 -0
- package/dist/schema/table-builder.js.map +1 -0
- package/dist/schema/typed-schema.d.ts +22 -0
- package/dist/schema/typed-schema.d.ts.map +1 -0
- package/dist/schema/typed-schema.js +28 -0
- package/dist/schema/typed-schema.js.map +1 -0
- package/dist/types/column-types.d.ts +20 -0
- package/dist/types/column-types.d.ts.map +1 -0
- package/dist/types/column-types.js +14 -0
- package/dist/types/column-types.js.map +1 -0
- package/dist/types/custom-types.d.ts +85 -0
- package/dist/types/custom-types.d.ts.map +1 -0
- package/dist/types/custom-types.js +132 -0
- package/dist/types/custom-types.js.map +1 -0
- package/dist/types/enum-builder.d.ts +31 -0
- package/dist/types/enum-builder.d.ts.map +1 -0
- package/dist/types/enum-builder.js +46 -0
- package/dist/types/enum-builder.js.map +1 -0
- package/dist/types/metadata.d.ts +67 -0
- package/dist/types/metadata.d.ts.map +1 -0
- package/dist/types/metadata.js +57 -0
- package/dist/types/metadata.js.map +1 -0
- package/dist/types/type-mapper.d.ts +49 -0
- package/dist/types/type-mapper.d.ts.map +1 -0
- package/dist/types/type-mapper.js +49 -0
- package/dist/types/type-mapper.js.map +1 -0
- package/package.json +77 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Subquery = exports.sql = exports.not = exports.or = exports.and = exports.between = exports.isNotNull = exports.isNull = exports.notInArray = exports.inArray = exports.ilike = exports.like = exports.lte = exports.lt = exports.gte = exports.gt = exports.ne = exports.eq = exports.SqlFragment = exports.ConditionBuilder = exports.JoinQueryBuilder = exports.GroupedSelectQueryBuilder = exports.GroupedQueryBuilder = exports.CollectionQueryBuilder = exports.SelectQueryBuilder = exports.QueryBuilder = exports.EnumTypeRegistry = exports.pgEnum = exports.enumColumn = exports.bytea = exports.jsonb = exports.json = exports.uuid = exports.time = exports.date = exports.timestamptz = exports.timestamp = exports.boolean = exports.text = exports.char = exports.varchar = exports.doublePrecision = exports.real = exports.numeric = exports.decimal = exports.smallint = exports.bigserial = exports.bigint = exports.serial = exports.integer = void 0;
|
|
4
|
+
exports.PgClient = exports.PostgresClient = exports.DatabaseClient = exports.EnumMigrator = exports.DbSchemaManager = exports.sequence = exports.SequenceBuilder = exports.DbSequence = exports.applyFromDriverArray = exports.applyFromDriver = exports.applyToDriver = exports.identityMapper = exports.createCustomType = exports.interval = exports.vector = exports.point = exports.enumType = exports.array = exports.jsonType = exports.customType = exports.CustomTypeBuilder = exports.TypeAliases = exports.EntityInsertBuilder = exports.DbEntityTable = exports.DbContext = exports.DbModelConfig = exports.HasOneNavigationBuilder = exports.HasManyNavigationBuilder = exports.EntityNavigationBuilder = exports.EntityPropertyBuilder = exports.EntityConfigBuilder = exports.isDbColumn = exports.DbColumn = exports.EntityMetadataStore = exports.DbEntity = exports.CollectionStrategyFactory = exports.isCte = exports.DbCteBuilder = exports.DbCte = exports.lteSubquery = exports.ltSubquery = exports.gteSubquery = exports.gtSubquery = exports.neSubquery = exports.eqSubquery = exports.notInSubquery = exports.inSubquery = exports.notExists = exports.exists = exports.isSubquery = void 0;
|
|
5
|
+
// Internal schema builders (exported for DbContext use only)
|
|
6
|
+
var column_builder_1 = require("./schema/column-builder");
|
|
7
|
+
Object.defineProperty(exports, "integer", { enumerable: true, get: function () { return column_builder_1.integer; } });
|
|
8
|
+
Object.defineProperty(exports, "serial", { enumerable: true, get: function () { return column_builder_1.serial; } });
|
|
9
|
+
Object.defineProperty(exports, "bigint", { enumerable: true, get: function () { return column_builder_1.bigint; } });
|
|
10
|
+
Object.defineProperty(exports, "bigserial", { enumerable: true, get: function () { return column_builder_1.bigserial; } });
|
|
11
|
+
Object.defineProperty(exports, "smallint", { enumerable: true, get: function () { return column_builder_1.smallint; } });
|
|
12
|
+
Object.defineProperty(exports, "decimal", { enumerable: true, get: function () { return column_builder_1.decimal; } });
|
|
13
|
+
Object.defineProperty(exports, "numeric", { enumerable: true, get: function () { return column_builder_1.numeric; } });
|
|
14
|
+
Object.defineProperty(exports, "real", { enumerable: true, get: function () { return column_builder_1.real; } });
|
|
15
|
+
Object.defineProperty(exports, "doublePrecision", { enumerable: true, get: function () { return column_builder_1.doublePrecision; } });
|
|
16
|
+
Object.defineProperty(exports, "varchar", { enumerable: true, get: function () { return column_builder_1.varchar; } });
|
|
17
|
+
Object.defineProperty(exports, "char", { enumerable: true, get: function () { return column_builder_1.char; } });
|
|
18
|
+
Object.defineProperty(exports, "text", { enumerable: true, get: function () { return column_builder_1.text; } });
|
|
19
|
+
Object.defineProperty(exports, "boolean", { enumerable: true, get: function () { return column_builder_1.boolean; } });
|
|
20
|
+
Object.defineProperty(exports, "timestamp", { enumerable: true, get: function () { return column_builder_1.timestamp; } });
|
|
21
|
+
Object.defineProperty(exports, "timestamptz", { enumerable: true, get: function () { return column_builder_1.timestamptz; } });
|
|
22
|
+
Object.defineProperty(exports, "date", { enumerable: true, get: function () { return column_builder_1.date; } });
|
|
23
|
+
Object.defineProperty(exports, "time", { enumerable: true, get: function () { return column_builder_1.time; } });
|
|
24
|
+
Object.defineProperty(exports, "uuid", { enumerable: true, get: function () { return column_builder_1.uuid; } });
|
|
25
|
+
Object.defineProperty(exports, "json", { enumerable: true, get: function () { return column_builder_1.json; } });
|
|
26
|
+
Object.defineProperty(exports, "jsonb", { enumerable: true, get: function () { return column_builder_1.jsonb; } });
|
|
27
|
+
Object.defineProperty(exports, "bytea", { enumerable: true, get: function () { return column_builder_1.bytea; } });
|
|
28
|
+
Object.defineProperty(exports, "enumColumn", { enumerable: true, get: function () { return column_builder_1.enumColumn; } });
|
|
29
|
+
// Enum types
|
|
30
|
+
var enum_builder_1 = require("./types/enum-builder");
|
|
31
|
+
Object.defineProperty(exports, "pgEnum", { enumerable: true, get: function () { return enum_builder_1.pgEnum; } });
|
|
32
|
+
Object.defineProperty(exports, "EnumTypeRegistry", { enumerable: true, get: function () { return enum_builder_1.EnumTypeRegistry; } });
|
|
33
|
+
// Query builders
|
|
34
|
+
var query_builder_1 = require("./query/query-builder");
|
|
35
|
+
Object.defineProperty(exports, "QueryBuilder", { enumerable: true, get: function () { return query_builder_1.QueryBuilder; } });
|
|
36
|
+
Object.defineProperty(exports, "SelectQueryBuilder", { enumerable: true, get: function () { return query_builder_1.SelectQueryBuilder; } });
|
|
37
|
+
Object.defineProperty(exports, "CollectionQueryBuilder", { enumerable: true, get: function () { return query_builder_1.CollectionQueryBuilder; } });
|
|
38
|
+
var grouped_query_1 = require("./query/grouped-query");
|
|
39
|
+
Object.defineProperty(exports, "GroupedQueryBuilder", { enumerable: true, get: function () { return grouped_query_1.GroupedQueryBuilder; } });
|
|
40
|
+
Object.defineProperty(exports, "GroupedSelectQueryBuilder", { enumerable: true, get: function () { return grouped_query_1.GroupedSelectQueryBuilder; } });
|
|
41
|
+
var join_builder_1 = require("./query/join-builder");
|
|
42
|
+
Object.defineProperty(exports, "JoinQueryBuilder", { enumerable: true, get: function () { return join_builder_1.JoinQueryBuilder; } });
|
|
43
|
+
// Conditions
|
|
44
|
+
var conditions_1 = require("./query/conditions");
|
|
45
|
+
Object.defineProperty(exports, "ConditionBuilder", { enumerable: true, get: function () { return conditions_1.ConditionBuilder; } });
|
|
46
|
+
Object.defineProperty(exports, "SqlFragment", { enumerable: true, get: function () { return conditions_1.SqlFragment; } });
|
|
47
|
+
Object.defineProperty(exports, "eq", { enumerable: true, get: function () { return conditions_1.eq; } });
|
|
48
|
+
Object.defineProperty(exports, "ne", { enumerable: true, get: function () { return conditions_1.ne; } });
|
|
49
|
+
Object.defineProperty(exports, "gt", { enumerable: true, get: function () { return conditions_1.gt; } });
|
|
50
|
+
Object.defineProperty(exports, "gte", { enumerable: true, get: function () { return conditions_1.gte; } });
|
|
51
|
+
Object.defineProperty(exports, "lt", { enumerable: true, get: function () { return conditions_1.lt; } });
|
|
52
|
+
Object.defineProperty(exports, "lte", { enumerable: true, get: function () { return conditions_1.lte; } });
|
|
53
|
+
Object.defineProperty(exports, "like", { enumerable: true, get: function () { return conditions_1.like; } });
|
|
54
|
+
Object.defineProperty(exports, "ilike", { enumerable: true, get: function () { return conditions_1.ilike; } });
|
|
55
|
+
Object.defineProperty(exports, "inArray", { enumerable: true, get: function () { return conditions_1.inArray; } });
|
|
56
|
+
Object.defineProperty(exports, "notInArray", { enumerable: true, get: function () { return conditions_1.notInArray; } });
|
|
57
|
+
Object.defineProperty(exports, "isNull", { enumerable: true, get: function () { return conditions_1.isNull; } });
|
|
58
|
+
Object.defineProperty(exports, "isNotNull", { enumerable: true, get: function () { return conditions_1.isNotNull; } });
|
|
59
|
+
Object.defineProperty(exports, "between", { enumerable: true, get: function () { return conditions_1.between; } });
|
|
60
|
+
Object.defineProperty(exports, "and", { enumerable: true, get: function () { return conditions_1.and; } });
|
|
61
|
+
Object.defineProperty(exports, "or", { enumerable: true, get: function () { return conditions_1.or; } });
|
|
62
|
+
Object.defineProperty(exports, "not", { enumerable: true, get: function () { return conditions_1.not; } });
|
|
63
|
+
Object.defineProperty(exports, "sql", { enumerable: true, get: function () { return conditions_1.sql; } });
|
|
64
|
+
// Subquery support
|
|
65
|
+
var subquery_1 = require("./query/subquery");
|
|
66
|
+
Object.defineProperty(exports, "Subquery", { enumerable: true, get: function () { return subquery_1.Subquery; } });
|
|
67
|
+
Object.defineProperty(exports, "isSubquery", { enumerable: true, get: function () { return subquery_1.isSubquery; } });
|
|
68
|
+
Object.defineProperty(exports, "exists", { enumerable: true, get: function () { return subquery_1.exists; } });
|
|
69
|
+
Object.defineProperty(exports, "notExists", { enumerable: true, get: function () { return subquery_1.notExists; } });
|
|
70
|
+
Object.defineProperty(exports, "inSubquery", { enumerable: true, get: function () { return subquery_1.inSubquery; } });
|
|
71
|
+
Object.defineProperty(exports, "notInSubquery", { enumerable: true, get: function () { return subquery_1.notInSubquery; } });
|
|
72
|
+
Object.defineProperty(exports, "eqSubquery", { enumerable: true, get: function () { return subquery_1.eqSubquery; } });
|
|
73
|
+
Object.defineProperty(exports, "neSubquery", { enumerable: true, get: function () { return subquery_1.neSubquery; } });
|
|
74
|
+
Object.defineProperty(exports, "gtSubquery", { enumerable: true, get: function () { return subquery_1.gtSubquery; } });
|
|
75
|
+
Object.defineProperty(exports, "gteSubquery", { enumerable: true, get: function () { return subquery_1.gteSubquery; } });
|
|
76
|
+
Object.defineProperty(exports, "ltSubquery", { enumerable: true, get: function () { return subquery_1.ltSubquery; } });
|
|
77
|
+
Object.defineProperty(exports, "lteSubquery", { enumerable: true, get: function () { return subquery_1.lteSubquery; } });
|
|
78
|
+
// CTE (Common Table Expression) support
|
|
79
|
+
var cte_builder_1 = require("./query/cte-builder");
|
|
80
|
+
Object.defineProperty(exports, "DbCte", { enumerable: true, get: function () { return cte_builder_1.DbCte; } });
|
|
81
|
+
Object.defineProperty(exports, "DbCteBuilder", { enumerable: true, get: function () { return cte_builder_1.DbCteBuilder; } });
|
|
82
|
+
Object.defineProperty(exports, "isCte", { enumerable: true, get: function () { return cte_builder_1.isCte; } });
|
|
83
|
+
var collection_strategy_factory_1 = require("./query/collection-strategy.factory");
|
|
84
|
+
Object.defineProperty(exports, "CollectionStrategyFactory", { enumerable: true, get: function () { return collection_strategy_factory_1.CollectionStrategyFactory; } });
|
|
85
|
+
// New Entity-first API with full typing
|
|
86
|
+
var entity_base_1 = require("./entity/entity-base");
|
|
87
|
+
Object.defineProperty(exports, "DbEntity", { enumerable: true, get: function () { return entity_base_1.DbEntity; } });
|
|
88
|
+
Object.defineProperty(exports, "EntityMetadataStore", { enumerable: true, get: function () { return entity_base_1.EntityMetadataStore; } });
|
|
89
|
+
var db_column_1 = require("./entity/db-column");
|
|
90
|
+
Object.defineProperty(exports, "DbColumn", { enumerable: true, get: function () { return db_column_1.DbColumn; } });
|
|
91
|
+
Object.defineProperty(exports, "isDbColumn", { enumerable: true, get: function () { return db_column_1.isDbColumn; } });
|
|
92
|
+
var entity_builder_1 = require("./entity/entity-builder");
|
|
93
|
+
Object.defineProperty(exports, "EntityConfigBuilder", { enumerable: true, get: function () { return entity_builder_1.EntityConfigBuilder; } });
|
|
94
|
+
Object.defineProperty(exports, "EntityPropertyBuilder", { enumerable: true, get: function () { return entity_builder_1.EntityPropertyBuilder; } });
|
|
95
|
+
Object.defineProperty(exports, "EntityNavigationBuilder", { enumerable: true, get: function () { return entity_builder_1.EntityNavigationBuilder; } });
|
|
96
|
+
Object.defineProperty(exports, "HasManyNavigationBuilder", { enumerable: true, get: function () { return entity_builder_1.HasManyNavigationBuilder; } });
|
|
97
|
+
Object.defineProperty(exports, "HasOneNavigationBuilder", { enumerable: true, get: function () { return entity_builder_1.HasOneNavigationBuilder; } });
|
|
98
|
+
var model_config_1 = require("./entity/model-config");
|
|
99
|
+
Object.defineProperty(exports, "DbModelConfig", { enumerable: true, get: function () { return model_config_1.DbModelConfig; } });
|
|
100
|
+
// Main API - DbContext (Entity-first approach)
|
|
101
|
+
var db_context_1 = require("./entity/db-context");
|
|
102
|
+
Object.defineProperty(exports, "DbContext", { enumerable: true, get: function () { return db_context_1.DatabaseContext; } });
|
|
103
|
+
Object.defineProperty(exports, "DbEntityTable", { enumerable: true, get: function () { return db_context_1.DbEntityTable; } });
|
|
104
|
+
Object.defineProperty(exports, "EntityInsertBuilder", { enumerable: true, get: function () { return db_context_1.EntityInsertBuilder; } });
|
|
105
|
+
// Types
|
|
106
|
+
var column_types_1 = require("./types/column-types");
|
|
107
|
+
Object.defineProperty(exports, "TypeAliases", { enumerable: true, get: function () { return column_types_1.TypeAliases; } });
|
|
108
|
+
// Custom types
|
|
109
|
+
var custom_types_1 = require("./types/custom-types");
|
|
110
|
+
Object.defineProperty(exports, "CustomTypeBuilder", { enumerable: true, get: function () { return custom_types_1.CustomTypeBuilder; } });
|
|
111
|
+
Object.defineProperty(exports, "customType", { enumerable: true, get: function () { return custom_types_1.customType; } });
|
|
112
|
+
Object.defineProperty(exports, "jsonType", { enumerable: true, get: function () { return custom_types_1.json; } });
|
|
113
|
+
Object.defineProperty(exports, "array", { enumerable: true, get: function () { return custom_types_1.array; } });
|
|
114
|
+
Object.defineProperty(exports, "enumType", { enumerable: true, get: function () { return custom_types_1.enumType; } });
|
|
115
|
+
Object.defineProperty(exports, "point", { enumerable: true, get: function () { return custom_types_1.point; } });
|
|
116
|
+
Object.defineProperty(exports, "vector", { enumerable: true, get: function () { return custom_types_1.vector; } });
|
|
117
|
+
Object.defineProperty(exports, "interval", { enumerable: true, get: function () { return custom_types_1.interval; } });
|
|
118
|
+
// Type mappers
|
|
119
|
+
var type_mapper_1 = require("./types/type-mapper");
|
|
120
|
+
Object.defineProperty(exports, "createCustomType", { enumerable: true, get: function () { return type_mapper_1.customType; } });
|
|
121
|
+
Object.defineProperty(exports, "identityMapper", { enumerable: true, get: function () { return type_mapper_1.identityMapper; } });
|
|
122
|
+
Object.defineProperty(exports, "applyToDriver", { enumerable: true, get: function () { return type_mapper_1.applyToDriver; } });
|
|
123
|
+
Object.defineProperty(exports, "applyFromDriver", { enumerable: true, get: function () { return type_mapper_1.applyFromDriver; } });
|
|
124
|
+
Object.defineProperty(exports, "applyFromDriverArray", { enumerable: true, get: function () { return type_mapper_1.applyFromDriverArray; } });
|
|
125
|
+
// Sequences
|
|
126
|
+
var sequence_builder_1 = require("./schema/sequence-builder");
|
|
127
|
+
Object.defineProperty(exports, "DbSequence", { enumerable: true, get: function () { return sequence_builder_1.DbSequence; } });
|
|
128
|
+
Object.defineProperty(exports, "SequenceBuilder", { enumerable: true, get: function () { return sequence_builder_1.SequenceBuilder; } });
|
|
129
|
+
Object.defineProperty(exports, "sequence", { enumerable: true, get: function () { return sequence_builder_1.sequence; } });
|
|
130
|
+
// Migration tools
|
|
131
|
+
var db_schema_manager_1 = require("./migration/db-schema-manager");
|
|
132
|
+
Object.defineProperty(exports, "DbSchemaManager", { enumerable: true, get: function () { return db_schema_manager_1.DbSchemaManager; } });
|
|
133
|
+
var enum_migrator_1 = require("./migration/enum-migrator");
|
|
134
|
+
Object.defineProperty(exports, "EnumMigrator", { enumerable: true, get: function () { return enum_migrator_1.EnumMigrator; } });
|
|
135
|
+
// Database clients
|
|
136
|
+
var database_client_interface_1 = require("./database/database-client.interface");
|
|
137
|
+
Object.defineProperty(exports, "DatabaseClient", { enumerable: true, get: function () { return database_client_interface_1.DatabaseClient; } });
|
|
138
|
+
var postgres_client_1 = require("./database/postgres-client");
|
|
139
|
+
Object.defineProperty(exports, "PostgresClient", { enumerable: true, get: function () { return postgres_client_1.PostgresClient; } });
|
|
140
|
+
var pg_client_1 = require("./database/pg-client");
|
|
141
|
+
Object.defineProperty(exports, "PgClient", { enumerable: true, get: function () { return pg_client_1.PgClient; } });
|
|
142
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import { DatabaseClient } from '../database/database-client.interface';
|
|
2
|
+
import { TableSchema } from '../schema/table-builder';
|
|
3
|
+
import { ColumnConfig } from '../schema/column-builder';
|
|
4
|
+
import { SequenceConfig } from '../schema/sequence-builder';
|
|
5
|
+
/**
|
|
6
|
+
* Database column information from pg
|
|
7
|
+
*/
|
|
8
|
+
interface DbColumnInfo {
|
|
9
|
+
column_name: string;
|
|
10
|
+
data_type: string;
|
|
11
|
+
character_maximum_length: number | null;
|
|
12
|
+
numeric_precision: number | null;
|
|
13
|
+
numeric_scale: number | null;
|
|
14
|
+
is_nullable: 'YES' | 'NO';
|
|
15
|
+
column_default: string | null;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Migration operation types
|
|
19
|
+
*/
|
|
20
|
+
type MigrationOperation = {
|
|
21
|
+
type: 'create_schema';
|
|
22
|
+
schemaName: string;
|
|
23
|
+
} | {
|
|
24
|
+
type: 'create_enum';
|
|
25
|
+
enumName: string;
|
|
26
|
+
values: readonly string[];
|
|
27
|
+
} | {
|
|
28
|
+
type: 'create_table';
|
|
29
|
+
tableName: string;
|
|
30
|
+
schema: TableSchema;
|
|
31
|
+
} | {
|
|
32
|
+
type: 'drop_table';
|
|
33
|
+
tableName: string;
|
|
34
|
+
} | {
|
|
35
|
+
type: 'add_column';
|
|
36
|
+
tableName: string;
|
|
37
|
+
columnName: string;
|
|
38
|
+
config: ColumnConfig;
|
|
39
|
+
} | {
|
|
40
|
+
type: 'drop_column';
|
|
41
|
+
tableName: string;
|
|
42
|
+
columnName: string;
|
|
43
|
+
} | {
|
|
44
|
+
type: 'alter_column';
|
|
45
|
+
tableName: string;
|
|
46
|
+
columnName: string;
|
|
47
|
+
from: DbColumnInfo;
|
|
48
|
+
to: ColumnConfig;
|
|
49
|
+
} | {
|
|
50
|
+
type: 'create_index';
|
|
51
|
+
tableName: string;
|
|
52
|
+
indexName: string;
|
|
53
|
+
columns: string[];
|
|
54
|
+
} | {
|
|
55
|
+
type: 'drop_index';
|
|
56
|
+
tableName: string;
|
|
57
|
+
indexName: string;
|
|
58
|
+
} | {
|
|
59
|
+
type: 'create_foreign_key';
|
|
60
|
+
tableName: string;
|
|
61
|
+
constraint: any;
|
|
62
|
+
} | {
|
|
63
|
+
type: 'drop_foreign_key';
|
|
64
|
+
tableName: string;
|
|
65
|
+
constraintName: string;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Database schema manager - handles schema creation, deletion, and automatic migrations
|
|
69
|
+
*/
|
|
70
|
+
export declare class DbSchemaManager {
|
|
71
|
+
private client;
|
|
72
|
+
private schemaRegistry;
|
|
73
|
+
private logQueries;
|
|
74
|
+
private postMigrationHook?;
|
|
75
|
+
private sequenceRegistry;
|
|
76
|
+
private rl;
|
|
77
|
+
constructor(client: DatabaseClient, schemaRegistry: Map<string, TableSchema>, options?: {
|
|
78
|
+
logQueries?: boolean;
|
|
79
|
+
postMigrationHook?: (client: DatabaseClient) => Promise<void>;
|
|
80
|
+
sequenceRegistry?: Map<string, SequenceConfig>;
|
|
81
|
+
});
|
|
82
|
+
/**
|
|
83
|
+
* Get or create readline interface for interactive prompts
|
|
84
|
+
*/
|
|
85
|
+
private getReadlineInterface;
|
|
86
|
+
/**
|
|
87
|
+
* Close readline interface if it exists
|
|
88
|
+
*/
|
|
89
|
+
private closeReadlineInterface;
|
|
90
|
+
/**
|
|
91
|
+
* Get qualified table name with schema prefix if specified
|
|
92
|
+
*/
|
|
93
|
+
private getQualifiedTableName;
|
|
94
|
+
/**
|
|
95
|
+
* Create all schemas used by tables
|
|
96
|
+
*/
|
|
97
|
+
private createSchemas;
|
|
98
|
+
/**
|
|
99
|
+
* Create all ENUM types used in the schema
|
|
100
|
+
*/
|
|
101
|
+
private createEnumTypes;
|
|
102
|
+
/**
|
|
103
|
+
* Create all sequences registered in the schema
|
|
104
|
+
*/
|
|
105
|
+
private createSequences;
|
|
106
|
+
/**
|
|
107
|
+
* Create a single table
|
|
108
|
+
*/
|
|
109
|
+
private createTable;
|
|
110
|
+
/**
|
|
111
|
+
* Create all tables in the database
|
|
112
|
+
*/
|
|
113
|
+
ensureCreated(): Promise<void>;
|
|
114
|
+
/**
|
|
115
|
+
* Drop all tables
|
|
116
|
+
*/
|
|
117
|
+
ensureDeleted(): Promise<void>;
|
|
118
|
+
/**
|
|
119
|
+
* Analyze differences between current DB and model schema
|
|
120
|
+
*/
|
|
121
|
+
analyze(): Promise<MigrationOperation[]>;
|
|
122
|
+
/**
|
|
123
|
+
* Perform automatic migration - analyze and apply changes
|
|
124
|
+
*/
|
|
125
|
+
migrate(): Promise<void>;
|
|
126
|
+
/**
|
|
127
|
+
* Execute a single migration operation
|
|
128
|
+
*/
|
|
129
|
+
private executeOperation;
|
|
130
|
+
/**
|
|
131
|
+
* Execute create schema
|
|
132
|
+
*/
|
|
133
|
+
private executeCreateSchema;
|
|
134
|
+
/**
|
|
135
|
+
* Execute create enum
|
|
136
|
+
*/
|
|
137
|
+
private executeCreateEnum;
|
|
138
|
+
/**
|
|
139
|
+
* Execute drop table
|
|
140
|
+
*/
|
|
141
|
+
private executeDropTable;
|
|
142
|
+
/**
|
|
143
|
+
* Execute add column
|
|
144
|
+
*/
|
|
145
|
+
private executeAddColumn;
|
|
146
|
+
/**
|
|
147
|
+
* Execute drop column
|
|
148
|
+
*/
|
|
149
|
+
private executeDropColumn;
|
|
150
|
+
/**
|
|
151
|
+
* Execute alter column
|
|
152
|
+
*/
|
|
153
|
+
private executeAlterColumn;
|
|
154
|
+
/**
|
|
155
|
+
* Execute create index
|
|
156
|
+
*/
|
|
157
|
+
private executeCreateIndex;
|
|
158
|
+
/**
|
|
159
|
+
* Execute drop index
|
|
160
|
+
*/
|
|
161
|
+
private executeDropIndex;
|
|
162
|
+
/**
|
|
163
|
+
* Execute create foreign key
|
|
164
|
+
*/
|
|
165
|
+
private executeCreateForeignKey;
|
|
166
|
+
/**
|
|
167
|
+
* Execute drop foreign key
|
|
168
|
+
*/
|
|
169
|
+
private executeDropForeignKey;
|
|
170
|
+
/**
|
|
171
|
+
* Get all existing tables in the database
|
|
172
|
+
*/
|
|
173
|
+
private getExistingTables;
|
|
174
|
+
/**
|
|
175
|
+
* Get all columns for a table
|
|
176
|
+
*/
|
|
177
|
+
private getExistingColumns;
|
|
178
|
+
/**
|
|
179
|
+
* Get all indexes for a table
|
|
180
|
+
*/
|
|
181
|
+
private getExistingIndexes;
|
|
182
|
+
/**
|
|
183
|
+
* Get all foreign key constraints for a table
|
|
184
|
+
*/
|
|
185
|
+
private getExistingForeignKeys;
|
|
186
|
+
/**
|
|
187
|
+
* Check if a column needs to be altered
|
|
188
|
+
*/
|
|
189
|
+
private needsAlter;
|
|
190
|
+
/**
|
|
191
|
+
* Normalize default values for comparison
|
|
192
|
+
*/
|
|
193
|
+
private normalizeDefault;
|
|
194
|
+
/**
|
|
195
|
+
* Normalize PostgreSQL type names for comparison
|
|
196
|
+
*/
|
|
197
|
+
private normalizeType;
|
|
198
|
+
/**
|
|
199
|
+
* Build type definition for ALTER COLUMN TYPE
|
|
200
|
+
*/
|
|
201
|
+
private buildTypeDefinition;
|
|
202
|
+
/**
|
|
203
|
+
* Describe a database column
|
|
204
|
+
*/
|
|
205
|
+
private describeDbColumn;
|
|
206
|
+
/**
|
|
207
|
+
* Describe a model column
|
|
208
|
+
*/
|
|
209
|
+
private describeModelColumn;
|
|
210
|
+
/**
|
|
211
|
+
* Describe a migration operation
|
|
212
|
+
*/
|
|
213
|
+
private describeOperation;
|
|
214
|
+
/**
|
|
215
|
+
* Ask user for confirmation (CLI prompt)
|
|
216
|
+
*/
|
|
217
|
+
private confirm;
|
|
218
|
+
/**
|
|
219
|
+
* Format default value for SQL
|
|
220
|
+
*/
|
|
221
|
+
private formatDefaultValue;
|
|
222
|
+
/**
|
|
223
|
+
* Close the schema manager and any open resources
|
|
224
|
+
*/
|
|
225
|
+
close(): void;
|
|
226
|
+
}
|
|
227
|
+
export {};
|
|
228
|
+
//# sourceMappingURL=db-schema-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db-schema-manager.d.ts","sourceRoot":"","sources":["../../src/migration/db-schema-manager.ts"],"names":[],"mappings":"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"}
|