linkgress-orm 0.1.9 → 0.1.11

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.
@@ -62,6 +62,11 @@ export interface NavigationMetadata<TTarget extends DbEntity> {
62
62
  onDelete?: ForeignKeyAction;
63
63
  onUpdate?: ForeignKeyAction;
64
64
  constraintName?: string;
65
+ /**
66
+ * If true, this is an inverse navigation (the FK constraint is defined on the other side).
67
+ * No FK constraint will be created for this navigation.
68
+ */
69
+ isInverseNavigation?: boolean;
65
70
  }
66
71
  /**
67
72
  * Index metadata
@@ -1 +1 @@
1
- {"version":3,"file":"entity-base.d.ts","sourceRoot":"","sources":["../../src/entity/entity-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-base.d.ts","sourceRoot":"","sources":["../../src/entity/entity-base.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"entity-base.js","sourceRoot":"","sources":["../../src/entity/entity-base.ts"],"names":[],"mappings":";;;AASA;;GAEG;AACH,MAAsB,QAAQ;;AAA9B,4BAYC;AARC,gBAAgB;AACA,mBAAU,GAAG,IAAI,CAAC;AAmEpC;;GAEG;AACH,MAAa,mBAAmB;IAG9B,MAAM,CAAC,WAAW,CAAqB,WAAiC;QACtE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,WAAW,CAAqB,WAAiC,EAAE,QAA2B;QACnG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,WAAW,CAAqB,WAAiC;QACtE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAqB,WAAiC;QAC9E,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG;gBACT,WAAW;gBACX,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE;gBACzC,UAAU,EAAE,IAAI,GAAG,EAAE;gBACrB,WAAW,EAAE,IAAI,GAAG,EAAE;gBACtB,OAAO,EAAE,EAAE;aACZ,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;;AA5BH,kDA6BC;AA5BgB,4BAAQ,GAAG,IAAI,GAAG,EAA+C,CAAC"}
1
+ {"version":3,"file":"entity-base.js","sourceRoot":"","sources":["../../src/entity/entity-base.ts"],"names":[],"mappings":";;;AASA;;GAEG;AACH,MAAsB,QAAQ;;AAA9B,4BAYC;AARC,gBAAgB;AACA,mBAAU,GAAG,IAAI,CAAC;AAwEpC;;GAEG;AACH,MAAa,mBAAmB;IAG9B,MAAM,CAAC,WAAW,CAAqB,WAAiC;QACtE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,WAAW,CAAqB,WAAiC,EAAE,QAA2B;QACnG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,WAAW,CAAqB,WAAiC;QACtE,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,mBAAmB,CAAqB,WAAiC;QAC9E,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG;gBACT,WAAW;gBACX,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE;gBACzC,UAAU,EAAE,IAAI,GAAG,EAAE;gBACrB,WAAW,EAAE,IAAI,GAAG,EAAE;gBACtB,OAAO,EAAE,EAAE;aACZ,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;;AA5BH,kDA6BC;AA5BgB,4BAAQ,GAAG,IAAI,GAAG,EAA+C,CAAC"}
@@ -72,6 +72,31 @@ declare abstract class BaseNavigationBuilder<TEntity extends DbEntity, TTarget e
72
72
  * Specify a custom name for the foreign key constraint
73
73
  */
74
74
  hasDbName(name: string): this;
75
+ /**
76
+ * Mark this as an inverse navigation (no FK constraint will be created).
77
+ *
78
+ * Use this when the FK constraint is defined on the OTHER entity.
79
+ * This is useful for 1-to-1 relationships where you want navigation
80
+ * from both sides but the FK only exists on one side.
81
+ *
82
+ * @example
83
+ * // UserEshopVerification has the FK to UserEshop
84
+ * model.entity(UserEshopVerification, entity => {
85
+ * entity.hasOne(e => e.userEshop, () => UserEshop)
86
+ * .withForeignKey(e => e.userEshopId)
87
+ * .withPrincipalKey(e => e.id)
88
+ * .onDelete('cascade');
89
+ * });
90
+ *
91
+ * // UserEshop has inverse navigation (no FK created)
92
+ * model.entity(UserEshop, entity => {
93
+ * entity.hasOne(e => e.userEshopVerification, () => UserEshopVerification)
94
+ * .withForeignKey(e => e.id)
95
+ * .withPrincipalKey(e => e.userEshopId)
96
+ * .isInverseNavigation(); // <-- No FK constraint created
97
+ * });
98
+ */
99
+ isInverseNavigation(): this;
75
100
  }
76
101
  /**
77
102
  * Navigation builder for hasMany relationships (one-to-many)
@@ -1 +1 @@
1
- {"version":3,"file":"entity-builder.d.ts","sourceRoot":"","sources":["../../src/entity/entity-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-builder.d.ts","sourceRoot":"","sources":["../../src/entity/entity-builder.ts"],"names":[],"mappings":"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"}
@@ -192,6 +192,37 @@ class BaseNavigationBuilder {
192
192
  metadata.navigations.set(this.propertyKey, navMetadata);
193
193
  return this;
194
194
  }
195
+ /**
196
+ * Mark this as an inverse navigation (no FK constraint will be created).
197
+ *
198
+ * Use this when the FK constraint is defined on the OTHER entity.
199
+ * This is useful for 1-to-1 relationships where you want navigation
200
+ * from both sides but the FK only exists on one side.
201
+ *
202
+ * @example
203
+ * // UserEshopVerification has the FK to UserEshop
204
+ * model.entity(UserEshopVerification, entity => {
205
+ * entity.hasOne(e => e.userEshop, () => UserEshop)
206
+ * .withForeignKey(e => e.userEshopId)
207
+ * .withPrincipalKey(e => e.id)
208
+ * .onDelete('cascade');
209
+ * });
210
+ *
211
+ * // UserEshop has inverse navigation (no FK created)
212
+ * model.entity(UserEshop, entity => {
213
+ * entity.hasOne(e => e.userEshopVerification, () => UserEshopVerification)
214
+ * .withForeignKey(e => e.id)
215
+ * .withPrincipalKey(e => e.userEshopId)
216
+ * .isInverseNavigation(); // <-- No FK constraint created
217
+ * });
218
+ */
219
+ isInverseNavigation() {
220
+ const metadata = entity_base_1.EntityMetadataStore.getOrCreateMetadata(this.entityClass);
221
+ const navMetadata = metadata.navigations.get(this.propertyKey);
222
+ navMetadata.isInverseNavigation = true;
223
+ metadata.navigations.set(this.propertyKey, navMetadata);
224
+ return this;
225
+ }
195
226
  }
196
227
  /**
197
228
  * Navigation builder for hasMany relationships (one-to-many)
@@ -1 +1 @@
1
- {"version":3,"file":"entity-builder.js","sourceRoot":"","sources":["../../src/entity/entity-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-builder.js","sourceRoot":"","sources":["../../src/entity/entity-builder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"model-config.d.ts","sourceRoot":"","sources":["../../src/entity/model-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAuB,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAwB,MAAM,yBAAyB,CAAC;AAG7E;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,OAAO,SAAS,QAAQ,EAC7B,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,EACvC,SAAS,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,GACzD,IAAI;IAKP;;;OAGG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;CAuJ9C"}
1
+ {"version":3,"file":"model-config.d.ts","sourceRoot":"","sources":["../../src/entity/model-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAuB,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAwB,MAAM,yBAAyB,CAAC;AAG7E;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,OAAO,SAAS,QAAQ,EAC7B,WAAW,EAAE,iBAAiB,CAAC,OAAO,CAAC,EACvC,SAAS,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,GACzD,IAAI;IAKP;;;OAGG;IACH,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;CAwJ9C"}
@@ -111,7 +111,8 @@ class DbModelConfig {
111
111
  if (!targetMetadata)
112
112
  continue;
113
113
  // Only create FK constraint if this table contains the foreign key
114
- if (navMetadata.relationType === 'one') {
114
+ // Skip if this is an inverse navigation (FK is defined on the other side)
115
+ if (navMetadata.relationType === 'one' && !navMetadata.isInverseNavigation) {
115
116
  // For hasOne: FK is on current table
116
117
  const foreignKeyProp = navMetadata.foreignKey;
117
118
  const principalKeyProp = navMetadata.principalKey;
@@ -1 +1 @@
1
- {"version":3,"file":"model-config.js","sourceRoot":"","sources":["../../src/entity/model-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-config.js","sourceRoot":"","sources":["../../src/entity/model-config.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,9 @@ type MigrationOperation = {
24
24
  type: 'create_enum';
25
25
  enumName: string;
26
26
  values: readonly string[];
27
+ } | {
28
+ type: 'create_sequence';
29
+ config: SequenceConfig;
27
30
  } | {
28
31
  type: 'create_table';
29
32
  tableName: string;
@@ -105,8 +108,16 @@ export declare class DbSchemaManager {
105
108
  private createSequences;
106
109
  /**
107
110
  * Create a single table
111
+ * @param tableName - The table name
112
+ * @param tableSchema - The table schema
113
+ * @param options - Options for table creation
114
+ * @param options.skipForeignKeys - If true, foreign keys will not be added (useful for deferred FK creation)
108
115
  */
109
116
  private createTable;
117
+ /**
118
+ * Add foreign key constraints to a table (used after all tables are created)
119
+ */
120
+ private addForeignKeysToTable;
110
121
  /**
111
122
  * Sort tables in dependency order (topological sort)
112
123
  * Tables with no foreign key dependencies come first
@@ -126,6 +137,10 @@ export declare class DbSchemaManager {
126
137
  analyze(): Promise<MigrationOperation[]>;
127
138
  /**
128
139
  * Perform automatic migration - analyze and apply changes
140
+ *
141
+ * Tables are created first without foreign keys, then foreign keys are added
142
+ * in a second pass. This ensures all referenced tables exist before FK constraints
143
+ * are created.
129
144
  */
130
145
  migrate(): Promise<void>;
131
146
  /**
@@ -140,6 +155,10 @@ export declare class DbSchemaManager {
140
155
  * Execute create enum
141
156
  */
142
157
  private executeCreateEnum;
158
+ /**
159
+ * Execute create sequence
160
+ */
161
+ private executeCreateSequence;
143
162
  /**
144
163
  * Execute drop table
145
164
  */
@@ -222,6 +241,7 @@ export declare class DbSchemaManager {
222
241
  private confirm;
223
242
  /**
224
243
  * Format default value for SQL
244
+ * Accepts RawSql to pass through raw SQL without formatting
225
245
  */
226
246
  private formatDefaultValue;
227
247
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"db-schema-manager.d.ts","sourceRoot":"","sources":["../../src/migration/db-schema-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db-schema-manager.d.ts","sourceRoot":"","sources":["../../src/migration/db-schema-manager.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.DbSchemaManager = void 0;
37
37
  const readline = __importStar(require("readline"));
38
38
  const enum_builder_1 = require("../types/enum-builder");
39
+ const conditions_1 = require("../query/conditions");
39
40
  /**
40
41
  * Database schema manager - handles schema creation, deletion, and automatic migrations
41
42
  */
@@ -203,10 +204,15 @@ class DbSchemaManager {
203
204
  }
204
205
  /**
205
206
  * Create a single table
207
+ * @param tableName - The table name
208
+ * @param tableSchema - The table schema
209
+ * @param options - Options for table creation
210
+ * @param options.skipForeignKeys - If true, foreign keys will not be added (useful for deferred FK creation)
206
211
  */
207
- async createTable(tableName, tableSchema) {
212
+ async createTable(tableName, tableSchema, options) {
208
213
  const columnDefs = [];
209
214
  const primaryKeys = [];
215
+ const skipForeignKeys = options?.skipForeignKeys ?? false;
210
216
  for (const [colKey, colBuilder] of Object.entries(tableSchema.columns)) {
211
217
  const config = colBuilder.build();
212
218
  let def = `"${config.name}" ${config.type}`;
@@ -252,7 +258,55 @@ class DbSchemaManager {
252
258
  if (primaryKeys.length > 0) {
253
259
  columnDefs.push(`PRIMARY KEY (${primaryKeys.join(', ')})`);
254
260
  }
255
- // Add foreign key constraints from schema.foreignKeys (includes ON DELETE/ON UPDATE actions)
261
+ // Add foreign key constraints only if not skipped
262
+ if (!skipForeignKeys) {
263
+ // Add foreign key constraints from schema.foreignKeys (includes ON DELETE/ON UPDATE actions)
264
+ const foreignKeys = tableSchema.foreignKeys || [];
265
+ for (const fk of foreignKeys) {
266
+ const columnList = fk.columns.map(c => `"${c}"`).join(', ');
267
+ const refColumnList = fk.referencedColumns.map(c => `"${c}"`).join(', ');
268
+ // Find the referenced table's schema
269
+ const referencedTableSchema = this.schemaRegistry.get(fk.referencedTable);
270
+ const qualifiedReferencedTable = this.getQualifiedTableName(fk.referencedTable, referencedTableSchema?.schema);
271
+ let fkDef = `CONSTRAINT "${fk.name}" FOREIGN KEY (${columnList}) REFERENCES ${qualifiedReferencedTable}(${refColumnList})`;
272
+ if (fk.onDelete) {
273
+ fkDef += ` ON DELETE ${fk.onDelete.toUpperCase()}`;
274
+ }
275
+ if (fk.onUpdate) {
276
+ fkDef += ` ON UPDATE ${fk.onUpdate.toUpperCase()}`;
277
+ }
278
+ columnDefs.push(fkDef);
279
+ }
280
+ // Fallback: Add foreign key constraints from column references (for backward compatibility)
281
+ // Only add if not already added via foreignKeys array
282
+ const addedFkColumns = new Set(foreignKeys.flatMap(fk => fk.columns));
283
+ for (const [colKey, colBuilder] of Object.entries(tableSchema.columns)) {
284
+ const config = colBuilder.build();
285
+ if (config.references && !addedFkColumns.has(config.name)) {
286
+ columnDefs.push(`FOREIGN KEY ("${config.name}") REFERENCES "${config.references.table}"("${config.references.column}")`);
287
+ }
288
+ }
289
+ }
290
+ const qualifiedTableName = this.getQualifiedTableName(tableName, tableSchema.schema);
291
+ const createTableSQL = `
292
+ CREATE TABLE IF NOT EXISTS ${qualifiedTableName} (
293
+ ${columnDefs.join(',\n ')}
294
+ )
295
+ `;
296
+ if (this.logQueries) {
297
+ console.log(` Creating table ${qualifiedTableName}...`);
298
+ }
299
+ await this.client.query(createTableSQL);
300
+ if (this.logQueries) {
301
+ console.log(` ✓ Table ${qualifiedTableName} created\n`);
302
+ }
303
+ }
304
+ /**
305
+ * Add foreign key constraints to a table (used after all tables are created)
306
+ */
307
+ async addForeignKeysToTable(tableName, tableSchema) {
308
+ const qualifiedTableName = this.getQualifiedTableName(tableName, tableSchema.schema);
309
+ // Add foreign key constraints from schema.foreignKeys
256
310
  const foreignKeys = tableSchema.foreignKeys || [];
257
311
  for (const fk of foreignKeys) {
258
312
  const columnList = fk.columns.map(c => `"${c}"`).join(', ');
@@ -260,37 +314,37 @@ class DbSchemaManager {
260
314
  // Find the referenced table's schema
261
315
  const referencedTableSchema = this.schemaRegistry.get(fk.referencedTable);
262
316
  const qualifiedReferencedTable = this.getQualifiedTableName(fk.referencedTable, referencedTableSchema?.schema);
263
- let fkDef = `CONSTRAINT "${fk.name}" FOREIGN KEY (${columnList}) REFERENCES ${qualifiedReferencedTable}(${refColumnList})`;
317
+ let alterSQL = `ALTER TABLE ${qualifiedTableName} ADD CONSTRAINT "${fk.name}" FOREIGN KEY (${columnList}) REFERENCES ${qualifiedReferencedTable}(${refColumnList})`;
264
318
  if (fk.onDelete) {
265
- fkDef += ` ON DELETE ${fk.onDelete.toUpperCase()}`;
319
+ alterSQL += ` ON DELETE ${fk.onDelete.toUpperCase()}`;
266
320
  }
267
321
  if (fk.onUpdate) {
268
- fkDef += ` ON UPDATE ${fk.onUpdate.toUpperCase()}`;
322
+ alterSQL += ` ON UPDATE ${fk.onUpdate.toUpperCase()}`;
323
+ }
324
+ if (this.logQueries) {
325
+ console.log(` Adding foreign key ${fk.name} to ${qualifiedTableName}...`);
326
+ }
327
+ await this.client.query(alterSQL);
328
+ if (this.logQueries) {
329
+ console.log(` ✓ Foreign key ${fk.name} added\n`);
269
330
  }
270
- columnDefs.push(fkDef);
271
331
  }
272
332
  // Fallback: Add foreign key constraints from column references (for backward compatibility)
273
- // Only add if not already added via foreignKeys array
274
333
  const addedFkColumns = new Set(foreignKeys.flatMap(fk => fk.columns));
275
334
  for (const [colKey, colBuilder] of Object.entries(tableSchema.columns)) {
276
335
  const config = colBuilder.build();
277
336
  if (config.references && !addedFkColumns.has(config.name)) {
278
- columnDefs.push(`FOREIGN KEY ("${config.name}") REFERENCES "${config.references.table}"("${config.references.column}")`);
337
+ const fkName = `fk_${tableName}_${config.name}`;
338
+ const alterSQL = `ALTER TABLE ${qualifiedTableName} ADD CONSTRAINT "${fkName}" FOREIGN KEY ("${config.name}") REFERENCES "${config.references.table}"("${config.references.column}")`;
339
+ if (this.logQueries) {
340
+ console.log(` Adding foreign key ${fkName} to ${qualifiedTableName}...`);
341
+ }
342
+ await this.client.query(alterSQL);
343
+ if (this.logQueries) {
344
+ console.log(` ✓ Foreign key ${fkName} added\n`);
345
+ }
279
346
  }
280
347
  }
281
- const qualifiedTableName = this.getQualifiedTableName(tableName, tableSchema.schema);
282
- const createTableSQL = `
283
- CREATE TABLE IF NOT EXISTS ${qualifiedTableName} (
284
- ${columnDefs.join(',\n ')}
285
- )
286
- `;
287
- if (this.logQueries) {
288
- console.log(` Creating table ${qualifiedTableName}...`);
289
- }
290
- await this.client.query(createTableSQL);
291
- if (this.logQueries) {
292
- console.log(` ✓ Table ${qualifiedTableName} created\n`);
293
- }
294
348
  }
295
349
  /**
296
350
  * Sort tables in dependency order (topological sort)
@@ -497,6 +551,23 @@ class DbSchemaManager {
497
551
  operations.push({ type: 'create_enum', enumName, values: enumDef.values });
498
552
  }
499
553
  }
554
+ // Check sequences
555
+ for (const [_, config] of this.sequenceRegistry.entries()) {
556
+ const checkSQL = config.schema
557
+ ? `SELECT EXISTS (
558
+ SELECT 1 FROM information_schema.sequences
559
+ WHERE sequence_schema = $1 AND sequence_name = $2
560
+ ) as exists`
561
+ : `SELECT EXISTS (
562
+ SELECT 1 FROM information_schema.sequences
563
+ WHERE sequence_name = $1 AND sequence_schema = 'public'
564
+ ) as exists`;
565
+ const checkParams = config.schema ? [config.schema, config.name] : [config.name];
566
+ const result = await this.client.query(checkSQL, checkParams);
567
+ if (!result.rows[0]?.exists) {
568
+ operations.push({ type: 'create_sequence', config });
569
+ }
570
+ }
500
571
  // Get all existing tables
501
572
  const existingTables = await this.getExistingTables();
502
573
  const modelTables = new Set(this.schemaRegistry.keys());
@@ -564,6 +635,10 @@ class DbSchemaManager {
564
635
  }
565
636
  /**
566
637
  * Perform automatic migration - analyze and apply changes
638
+ *
639
+ * Tables are created first without foreign keys, then foreign keys are added
640
+ * in a second pass. This ensures all referenced tables exist before FK constraints
641
+ * are created.
567
642
  */
568
643
  async migrate() {
569
644
  try {
@@ -572,15 +647,97 @@ class DbSchemaManager {
572
647
  console.log('✓ Database schema is already in sync with model\n');
573
648
  return;
574
649
  }
575
- console.log(`📋 Found ${operations.length} operations to perform:\n`);
650
+ // Separate operations into phases:
651
+ // Phase 1: Schema, enum, table creation (without FKs), column additions
652
+ // Phase 2: Foreign key constraints
653
+ // Phase 3: Indexes and other operations
654
+ const phase1Ops = [];
655
+ const phase2Ops = [];
656
+ const phase3Ops = [];
657
+ // Track which tables are being created so we can add their FKs later
658
+ const tablesToCreate = new Set();
659
+ for (const op of operations) {
660
+ if (op.type === 'create_schema' || op.type === 'create_enum' || op.type === 'create_sequence') {
661
+ phase1Ops.push(op);
662
+ }
663
+ else if (op.type === 'create_table') {
664
+ phase1Ops.push(op);
665
+ tablesToCreate.add(op.tableName);
666
+ }
667
+ else if (op.type === 'add_column' || op.type === 'drop_column' || op.type === 'alter_column') {
668
+ phase1Ops.push(op);
669
+ }
670
+ else if (op.type === 'create_foreign_key') {
671
+ phase2Ops.push(op);
672
+ }
673
+ else if (op.type === 'drop_table' || op.type === 'drop_foreign_key') {
674
+ // Destructive operations go first (before creating new things that might conflict)
675
+ phase1Ops.unshift(op);
676
+ }
677
+ else {
678
+ phase3Ops.push(op);
679
+ }
680
+ }
681
+ // For newly created tables, we need to add their FK constraints in phase 2
682
+ // Extract FK operations from create_table schemas
683
+ for (const tableName of tablesToCreate) {
684
+ const schema = this.schemaRegistry.get(tableName);
685
+ if (schema) {
686
+ const foreignKeys = schema.foreignKeys || [];
687
+ for (const fk of foreignKeys) {
688
+ phase2Ops.push({
689
+ type: 'create_foreign_key',
690
+ tableName,
691
+ constraint: fk
692
+ });
693
+ }
694
+ // Also check column-level references
695
+ const addedFkColumns = new Set(foreignKeys.flatMap(fk => fk.columns));
696
+ for (const [_, colBuilder] of Object.entries(schema.columns)) {
697
+ const config = colBuilder.build();
698
+ if (config.references && !addedFkColumns.has(config.name)) {
699
+ phase2Ops.push({
700
+ type: 'create_foreign_key',
701
+ tableName,
702
+ constraint: {
703
+ name: `fk_${tableName}_${config.name}`,
704
+ columns: [config.name],
705
+ referencedTable: config.references.table,
706
+ referencedColumns: [config.references.column]
707
+ }
708
+ });
709
+ }
710
+ }
711
+ }
712
+ }
713
+ const totalOps = phase1Ops.length + phase2Ops.length + phase3Ops.length;
714
+ console.log(`📋 Found ${totalOps} operations to perform:\n`);
576
715
  // Show all operations
577
- for (let i = 0; i < operations.length; i++) {
578
- console.log(`${i + 1}. ${this.describeOperation(operations[i])}`);
716
+ let opNum = 1;
717
+ for (const op of [...phase1Ops, ...phase2Ops, ...phase3Ops]) {
718
+ console.log(`${opNum++}. ${this.describeOperation(op)}`);
579
719
  }
580
720
  console.log('');
581
- // Execute operations with confirmations for destructive ones
582
- for (const operation of operations) {
583
- await this.executeOperation(operation);
721
+ // Phase 1: Create schemas, enums, tables (without FKs), column changes
722
+ if (phase1Ops.length > 0) {
723
+ console.log('📦 Phase 1: Creating schemas, enums, and tables...\n');
724
+ for (const operation of phase1Ops) {
725
+ await this.executeOperation(operation, { skipForeignKeys: tablesToCreate.has(operation.tableName) });
726
+ }
727
+ }
728
+ // Phase 2: Add foreign key constraints
729
+ if (phase2Ops.length > 0) {
730
+ console.log('🔗 Phase 2: Adding foreign key constraints...\n');
731
+ for (const operation of phase2Ops) {
732
+ await this.executeOperation(operation);
733
+ }
734
+ }
735
+ // Phase 3: Create indexes and other operations
736
+ if (phase3Ops.length > 0) {
737
+ console.log('📇 Phase 3: Creating indexes...\n');
738
+ for (const operation of phase3Ops) {
739
+ await this.executeOperation(operation);
740
+ }
584
741
  }
585
742
  console.log('\n✓ Migration completed successfully\n');
586
743
  // Execute post-migration hook if provided
@@ -601,7 +758,7 @@ class DbSchemaManager {
601
758
  /**
602
759
  * Execute a single migration operation
603
760
  */
604
- async executeOperation(operation) {
761
+ async executeOperation(operation, options) {
605
762
  switch (operation.type) {
606
763
  case 'create_schema':
607
764
  await this.executeCreateSchema(operation.schemaName);
@@ -609,8 +766,11 @@ class DbSchemaManager {
609
766
  case 'create_enum':
610
767
  await this.executeCreateEnum(operation.enumName, operation.values);
611
768
  break;
769
+ case 'create_sequence':
770
+ await this.executeCreateSequence(operation.config);
771
+ break;
612
772
  case 'create_table':
613
- await this.createTable(operation.tableName, operation.schema);
773
+ await this.createTable(operation.tableName, operation.schema, { skipForeignKeys: options?.skipForeignKeys });
614
774
  break;
615
775
  case 'drop_table':
616
776
  if (await this.confirm(`Drop table "${operation.tableName}"? This will DELETE ALL DATA in the table.`)) {
@@ -675,6 +835,41 @@ class DbSchemaManager {
675
835
  await this.client.query(`CREATE TYPE "${enumName}" AS ENUM (${valueList})`);
676
836
  console.log(` ✓ ENUM type "${enumName}" created\n`);
677
837
  }
838
+ /**
839
+ * Execute create sequence
840
+ */
841
+ async executeCreateSequence(config) {
842
+ const qualifiedName = config.schema
843
+ ? `"${config.schema}"."${config.name}"`
844
+ : `"${config.name}"`;
845
+ console.log(` Creating sequence ${qualifiedName}...`);
846
+ // Build CREATE SEQUENCE statement
847
+ let createSQL = `CREATE SEQUENCE ${qualifiedName}`;
848
+ const options = [];
849
+ if (config.startWith !== undefined) {
850
+ options.push(`START WITH ${config.startWith}`);
851
+ }
852
+ if (config.incrementBy !== undefined) {
853
+ options.push(`INCREMENT BY ${config.incrementBy}`);
854
+ }
855
+ if (config.minValue !== undefined) {
856
+ options.push(`MINVALUE ${config.minValue}`);
857
+ }
858
+ if (config.maxValue !== undefined) {
859
+ options.push(`MAXVALUE ${config.maxValue}`);
860
+ }
861
+ if (config.cache !== undefined) {
862
+ options.push(`CACHE ${config.cache}`);
863
+ }
864
+ if (config.cycle) {
865
+ options.push(`CYCLE`);
866
+ }
867
+ if (options.length > 0) {
868
+ createSQL += ` ${options.join(' ')}`;
869
+ }
870
+ await this.client.query(createSQL);
871
+ console.log(` ✓ Sequence ${qualifiedName} created\n`);
872
+ }
678
873
  /**
679
874
  * Execute drop table
680
875
  */
@@ -1045,6 +1240,11 @@ class DbSchemaManager {
1045
1240
  return `Create schema "${operation.schemaName}"`;
1046
1241
  case 'create_enum':
1047
1242
  return `Create ENUM type "${operation.enumName}" (${operation.values.join(', ')})`;
1243
+ case 'create_sequence':
1244
+ const seqName = operation.config.schema
1245
+ ? `"${operation.config.schema}"."${operation.config.name}"`
1246
+ : `"${operation.config.name}"`;
1247
+ return `Create sequence ${seqName}`;
1048
1248
  case 'create_table':
1049
1249
  return `Create table "${operation.tableName}"`;
1050
1250
  case 'drop_table':
@@ -1093,16 +1293,16 @@ class DbSchemaManager {
1093
1293
  }
1094
1294
  /**
1095
1295
  * Format default value for SQL
1296
+ * Accepts RawSql to pass through raw SQL without formatting
1096
1297
  */
1097
1298
  formatDefaultValue(value) {
1098
1299
  if (value === null)
1099
1300
  return 'NULL';
1301
+ // RawSql passes through without any formatting
1302
+ if (value instanceof conditions_1.RawSql)
1303
+ return value.value;
1100
1304
  if (typeof value === 'string') {
1101
- // Check if it's a SQL function
1102
- if (value.toUpperCase().includes('NOW()') || value.toUpperCase().includes('CURRENT_')) {
1103
- return value;
1104
- }
1105
- return `'${value}'`;
1305
+ return value;
1106
1306
  }
1107
1307
  if (typeof value === 'boolean')
1108
1308
  return value ? 'TRUE' : 'FALSE';
@@ -1 +1 @@
1
- {"version":3,"file":"db-schema-manager.js","sourceRoot":"","sources":["../../src/migration/db-schema-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db-schema-manager.js","sourceRoot":"","sources":["../../src/migration/db-schema-manager.ts"],"names":[],"mappings":"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"}
@@ -267,7 +267,7 @@ export declare class GroupedSelectQueryBuilder<TSelection, TOriginalRow, TGroupi
267
267
  *
268
268
  * Optimization: When grouping by SqlFragment expressions, we wrap the base query
269
269
  * in a subquery to avoid repeating complex expressions in both SELECT and GROUP BY.
270
- * This matches the pattern used by Drizzle and improves query performance.
270
+ * This improves query performance by computing expressions only once.
271
271
  *
272
272
  * Without optimization:
273
273
  * SELECT complex_expr as "alias" FROM table GROUP BY complex_expr
@@ -572,7 +572,7 @@ class GroupedSelectQueryBuilder {
572
572
  *
573
573
  * Optimization: When grouping by SqlFragment expressions, we wrap the base query
574
574
  * in a subquery to avoid repeating complex expressions in both SELECT and GROUP BY.
575
- * This matches the pattern used by Drizzle and improves query performance.
575
+ * This improves query performance by computing expressions only once.
576
576
  *
577
577
  * Without optimization:
578
578
  * SELECT complex_expr as "alias" FROM table GROUP BY complex_expr
@@ -82,6 +82,25 @@ export declare class ColumnBuilder<TType = any> {
82
82
  * Set custom type mapper for bidirectional transformation
83
83
  */
84
84
  mapWith<TData = TType, TDriver = any>(mapper: TypeMapper<TData, TDriver>): ColumnBuilder<TData>;
85
+ /**
86
+ * Convert this column to a PostgreSQL array type
87
+ *
88
+ * @example
89
+ * // integer[] column
90
+ * entity.property(e => e.permissions).hasType(integer('permissions').array<ADMIN_PERMISSION[]>());
91
+ *
92
+ * // text[] column
93
+ * entity.property(e => e.tags).hasType(text('tags').array<string[]>());
94
+ */
95
+ array<TArray extends TType[] = TType[]>(): ColumnBuilder<TArray>;
96
+ /**
97
+ * Override the TypeScript type for this column
98
+ *
99
+ * @example
100
+ * // integer column typed as ADMIN_PERMISSION[]
101
+ * entity.property(e => e.permissions).hasType(integer('permissions').array().hasTypescriptType<ADMIN_PERMISSION[]>());
102
+ */
103
+ hasTypescriptType<TNewType>(): ColumnBuilder<TNewType>;
85
104
  /**
86
105
  * Get the final column configuration
87
106
  */
@@ -1 +1 @@
1
- {"version":3,"file":"column-builder.d.ts","sourceRoot":"","sources":["../../src/schema/column-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"column-builder.d.ts","sourceRoot":"","sources":["../../src/schema/column-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9B,iDAAiD;IACjD,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,aAAa,CAAC,KAAK,GAAG,GAAG;IACpC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;gBAE5B,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU;IAW1C;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,UAAU,IAAI,IAAI;IAMlB;;OAEG;IACH,aAAa,IAAI,IAAI;IAKrB;;;OAGG;IACH,yBAAyB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI;IAM1D;;OAEG;IACH,MAAM,IAAI,IAAI;IAKd;;OAEG;IACH,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAKzB;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAMlD;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,MAAa,GAAG,IAAI;IAKtD;;OAEG;IACH,OAAO,CAAC,KAAK,GAAG,KAAK,EAAE,OAAO,GAAG,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC;IAW/F;;;;;;;;;OASG;IACH,KAAK,CAAC,MAAM,SAAS,KAAK,EAAE,GAAG,KAAK,EAAE,KAAK,aAAa,CAAC,MAAM,CAAC;IAKhE;;;;;;OAMG;IACH,iBAAiB,CAAC,QAAQ,KAAK,aAAa,CAAC,QAAQ,CAAC;IAItD;;OAEG;IACH,KAAK,IAAI,YAAY;CAGtB;AAED;;GAEG;AAEH,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,0BAA+C,CAAC;AACpF,eAAO,MAAM,MAAM,GAAI,MAAM,MAAM,0BAA8D,CAAC;AAClG,eAAO,MAAM,MAAM,GAAI,MAAM,MAAM,0BAA8C,CAAC;AAClF,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,0BAAiE,CAAC;AACxG,eAAO,MAAM,QAAQ,GAAI,MAAM,MAAM,0BAAgD,CAAC;AAEtF,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,EAAE,YAAY,MAAM,EAAE,QAAQ,MAAM,0BAIvE,CAAC;AAEF,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,EAAE,YAAY,MAAM,EAAE,QAAQ,MAAM,0BAIvE,CAAC;AAEF,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,0BAA4C,CAAC;AAC9E,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,0BAAwD,CAAC;AAErG,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,0BAIpD,CAAC;AAEF,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,0BAIjD,CAAC;AAEF,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,0BAA4C,CAAC;AAE9E,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,2BAAgD,CAAC;AAErF,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,wBAA+C,CAAC;AACtF,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,wBAAiD,CAAC;AAC1F,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,wBAA0C,CAAC;AAC5E,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,0BAA4C,CAAC;AAE9E,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,0BAA4C,CAAC;AAE9E,eAAO,MAAM,IAAI,GAAI,MAAM,MAAM,uBAAyC,CAAC;AAC3E,eAAO,MAAM,KAAK,GAAI,MAAM,MAAM,uBAA0C,CAAC;AAE7E,eAAO,MAAM,KAAK,GAAI,MAAM,MAAM,2CAA6C,CAAC;AAEhF;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,EAC9E,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,CAAC,GACT,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAIpC"}
@@ -94,6 +94,30 @@ class ColumnBuilder {
94
94
  }
95
95
  return this;
96
96
  }
97
+ /**
98
+ * Convert this column to a PostgreSQL array type
99
+ *
100
+ * @example
101
+ * // integer[] column
102
+ * entity.property(e => e.permissions).hasType(integer('permissions').array<ADMIN_PERMISSION[]>());
103
+ *
104
+ * // text[] column
105
+ * entity.property(e => e.tags).hasType(text('tags').array<string[]>());
106
+ */
107
+ array() {
108
+ this.config.type = `${this.config.type}[]`;
109
+ return this;
110
+ }
111
+ /**
112
+ * Override the TypeScript type for this column
113
+ *
114
+ * @example
115
+ * // integer column typed as ADMIN_PERMISSION[]
116
+ * entity.property(e => e.permissions).hasType(integer('permissions').array().hasTypescriptType<ADMIN_PERMISSION[]>());
117
+ */
118
+ hasTypescriptType() {
119
+ return this;
120
+ }
97
121
  /**
98
122
  * Get the final column configuration
99
123
  */
@@ -1 +1 @@
1
- {"version":3,"file":"column-builder.js","sourceRoot":"","sources":["../../src/schema/column-builder.ts"],"names":[],"mappings":";;;AAyNA,gCAOC;AAxLD;;GAEG;AACH,MAAa,aAAa;IAGxB,YAAY,IAAY,EAAE,IAAgB;QACxC,IAAI,CAAC,MAAM,GAAG;YACZ,IAAI;YACJ,IAAI;YACJ,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,KAAK;YACjB,aAAa,EAAE,KAAK;YACpB,MAAM,EAAE,KAAK;SACd,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,aAAa;QACX,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,yBAAyB,CAAC,OAAyB;QACjD,IAAI,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,OAAO,IAAI,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,KAAU;QAChB,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAa;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,SAAiB,EAAE,KAAc;QACzC,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,KAAa,EAAE,SAAiB,IAAI;QAC7C,IAAI,CAAC,MAAM,CAAC,UAAU,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,OAAO,CAA+B,MAAkC;QACtE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QAE5B,sDAAsD;QACtD,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAgB,CAAC;QACrD,CAAC;QAED,OAAO,IAAW,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,IAAI,CAAC,MAAsB,CAAC;IACrC,CAAC;CACF;AA9GD,sCA8GC;AAED;;GAEG;AAEI,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,SAAS,CAAC,CAAC;AAAvE,QAAA,OAAO,WAAgE;AAC7E,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAC;AAArF,QAAA,MAAM,UAA+E;AAC3F,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,QAAQ,CAAC,CAAC;AAArE,QAAA,MAAM,UAA+D;AAC3E,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;AAA3F,QAAA,SAAS,aAAkF;AACjG,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,UAAU,CAAC,CAAC;AAAzE,QAAA,QAAQ,YAAiE;AAE/E,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,SAAkB,EAAE,KAAc,EAAE,EAAE;IAC1E,MAAM,OAAO,GAAG,IAAI,aAAa,CAAS,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3D,IAAI,SAAS;QAAE,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACnD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAJW,QAAA,OAAO,WAIlB;AAEK,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,SAAkB,EAAE,KAAc,EAAE,EAAE;IAC1E,MAAM,OAAO,GAAG,IAAI,aAAa,CAAS,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3D,IAAI,SAAS;QAAE,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACnD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAJW,QAAA,OAAO,WAIlB;AAEK,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,MAAM,CAAC,CAAC;AAAjE,QAAA,IAAI,QAA6D;AACvE,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,kBAAkB,CAAC,CAAC;AAAxF,QAAA,eAAe,mBAAyE;AAE9F,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,MAAe,EAAE,EAAE;IACvD,MAAM,OAAO,GAAG,IAAI,aAAa,CAAS,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3D,IAAI,MAAM;QAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAJW,QAAA,OAAO,WAIlB;AAEK,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,MAAe,EAAE,EAAE;IACpD,MAAM,OAAO,GAAG,IAAI,aAAa,CAAS,IAAI,EAAE,MAAM,CAAC,CAAC;IACxD,IAAI,MAAM;QAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAJW,QAAA,IAAI,QAIf;AAEK,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,MAAM,CAAC,CAAC;AAAjE,QAAA,IAAI,QAA6D;AAEvE,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAU,IAAI,EAAE,SAAS,CAAC,CAAC;AAAxE,QAAA,OAAO,WAAiE;AAE9E,MAAM,SAAS,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAO,IAAI,EAAE,WAAW,CAAC,CAAC;AAAzE,QAAA,SAAS,aAAgE;AAC/E,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAO,IAAI,EAAE,aAAa,CAAC,CAAC;AAA7E,QAAA,WAAW,eAAkE;AACnF,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAO,IAAI,EAAE,MAAM,CAAC,CAAC;AAA/D,QAAA,IAAI,QAA2D;AACrE,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,MAAM,CAAC,CAAC;AAAjE,QAAA,IAAI,QAA6D;AAEvE,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,MAAM,CAAC,CAAC;AAAjE,QAAA,IAAI,QAA6D;AAEvE,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAM,IAAI,EAAE,MAAM,CAAC,CAAC;AAA9D,QAAA,IAAI,QAA0D;AACpE,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAM,IAAI,EAAE,OAAO,CAAC,CAAC;AAAhE,QAAA,KAAK,SAA2D;AAEtE,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,aAAa,CAAS,IAAI,EAAE,OAAO,CAAC,CAAC;AAAnE,QAAA,KAAK,SAA8D;AAEhF;;;;;;;;GAQG;AACH,SAAgB,UAAU,CACxB,UAAkB,EAClB,OAAU;IAEV,MAAM,OAAO,GAAG,IAAI,aAAa,CAAsB,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,OAAe,CAAC,MAAM,CAAC,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IACpD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"column-builder.js","sourceRoot":"","sources":["../../src/schema/column-builder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linkgress-orm",
3
- "version": "0.1.9",
3
+ "version": "0.1.11",
4
4
  "description": "A lightweight, type-safe ORM for PostgreSQL with LINQ-style queries and automatic type inference",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",