linkgress-orm 0.4.15 → 0.4.17

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.
Files changed (39) hide show
  1. package/dist/entity/entity-base.d.ts +18 -0
  2. package/dist/entity/entity-base.d.ts.map +1 -1
  3. package/dist/entity/entity-base.js +15 -0
  4. package/dist/entity/entity-base.js.map +1 -1
  5. package/dist/entity/entity-builder.d.ts +27 -1
  6. package/dist/entity/entity-builder.d.ts.map +1 -1
  7. package/dist/entity/entity-builder.js +69 -15
  8. package/dist/entity/entity-builder.js.map +1 -1
  9. package/dist/index.d.ts +4 -3
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +14 -3
  12. package/dist/index.js.map +1 -1
  13. package/dist/migration/db-schema-manager.d.ts +12 -0
  14. package/dist/migration/db-schema-manager.d.ts.map +1 -1
  15. package/dist/migration/db-schema-manager.js +106 -7
  16. package/dist/migration/db-schema-manager.js.map +1 -1
  17. package/dist/migration/migration-scaffold.d.ts.map +1 -1
  18. package/dist/migration/migration-scaffold.js +18 -4
  19. package/dist/migration/migration-scaffold.js.map +1 -1
  20. package/dist/query/conditions.d.ts +20 -0
  21. package/dist/query/conditions.d.ts.map +1 -1
  22. package/dist/query/conditions.js +51 -1
  23. package/dist/query/conditions.js.map +1 -1
  24. package/dist/query/subquery.d.ts +22 -18
  25. package/dist/query/subquery.d.ts.map +1 -1
  26. package/dist/query/subquery.js +36 -32
  27. package/dist/query/subquery.js.map +1 -1
  28. package/dist/schema/column-builder.d.ts +7 -0
  29. package/dist/schema/column-builder.d.ts.map +1 -1
  30. package/dist/schema/column-builder.js +7 -0
  31. package/dist/schema/column-builder.js.map +1 -1
  32. package/dist/schema/table-builder.d.ts +4 -0
  33. package/dist/schema/table-builder.d.ts.map +1 -1
  34. package/dist/schema/table-builder.js.map +1 -1
  35. package/dist/types/collation-builder.d.ts +35 -0
  36. package/dist/types/collation-builder.d.ts.map +1 -0
  37. package/dist/types/collation-builder.js +47 -0
  38. package/dist/types/collation-builder.js.map +1 -0
  39. package/package.json +2 -3
@@ -69,6 +69,20 @@ export interface NavigationMetadata<TTarget extends DbEntity> {
69
69
  isInverseNavigation?: boolean;
70
70
  }
71
71
  export type IndexMethod = 'btree' | 'gin' | 'gist' | 'hash' | 'brin' | 'spgist';
72
+ /**
73
+ * Index expression helpers — wrap entity property references inside hasIndex selectors.
74
+ * Composable: ixLower(ixUnaccent(e.name)) → lower(unaccent("name"))
75
+ *
76
+ * @example
77
+ * entity.hasIndex('idx_name', e => [ixLower(ixUnaccent(e.name))])
78
+ */
79
+ export interface IndexColumnRef {
80
+ __indexColumn: true;
81
+ columnName: string;
82
+ expression?: string;
83
+ }
84
+ export declare function ixLower<T>(ref: T): T;
85
+ export declare function ixUnaccent<T>(ref: T): T;
72
86
  /**
73
87
  * Index metadata
74
88
  */
@@ -78,6 +92,10 @@ export interface IndexMetadata {
78
92
  isUnique?: boolean;
79
93
  using?: IndexMethod;
80
94
  operatorClass?: string;
95
+ /** Raw SQL expressions for expression-based index columns (e.g., 'lower(unaccent(name))') */
96
+ expressions?: string[];
97
+ /** Raw SQL WHERE clause for partial indexes (e.g., 'active = true') */
98
+ where?: string;
81
99
  }
82
100
  /**
83
101
  * Global entity metadata store
@@ -1 +1 @@
1
- {"version":3,"file":"entity-base.d.ts","sourceRoot":"","sources":["../../src/entity/entity-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEzD;;;GAGG;AACH,OAAO,CAAC,MAAM,mBAAmB,EAAE,OAAO,MAAM,CAAC;AAEjD;;GAEG;AACH,8BAAsB,QAAQ;IAC5B,2FAA2F;IAC3F,SAAiB,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC;IAE7C,gBAAgB;IAChB,MAAM,CAAC,QAAQ,CAAC,UAAU,QAAQ;IAElC,gBAAgB;IAChB,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE5B,gBAAgB;IAChB,MAAM,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,IAAI,UAAU,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,QAAQ;IAChD,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC,CAAC;IAC3C,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,OAAO,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,GAAG,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,aAAa,CAAC;IAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,aAAa,CAAC;AAEjG;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,OAAO,SAAS,QAAQ;IAC1D,WAAW,EAAE,MAAM,GAAG,CAAC;IACvB,YAAY,EAAE,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC/C,YAAY,EAAE,KAAK,GAAG,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA0D;IAEjF,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,QAAQ,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS;IAIxG,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,QAAQ,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI;IAI5G,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,QAAQ,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,OAAO;IAIlF,MAAM,CAAC,mBAAmB,CAAC,CAAC,SAAS,QAAQ,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC;CAcrG"}
1
+ {"version":3,"file":"entity-base.d.ts","sourceRoot":"","sources":["../../src/entity/entity-base.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EntityMetadataStore = exports.DbEntity = void 0;
4
+ exports.ixLower = ixLower;
5
+ exports.ixUnaccent = ixUnaccent;
4
6
  /**
5
7
  * Base class for all entities
6
8
  */
@@ -9,6 +11,19 @@ class DbEntity {
9
11
  exports.DbEntity = DbEntity;
10
12
  /** @internal */
11
13
  DbEntity.__isEntity = true;
14
+ function wrapIndexExpression(ref, fn) {
15
+ const r = ref;
16
+ if (r && r.__indexColumn) {
17
+ return { ...r, expression: `${fn}(${r.expression || `"${r.columnName}"`})` };
18
+ }
19
+ return ref;
20
+ }
21
+ function ixLower(ref) {
22
+ return wrapIndexExpression(ref, 'lower');
23
+ }
24
+ function ixUnaccent(ref) {
25
+ return wrapIndexExpression(ref, 'unaccent');
26
+ }
12
27
  /**
13
28
  * Global entity metadata store
14
29
  */
@@ -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;AA6EpC;;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":";;;AAwGA,0BAEC;AAED,gCAEC;AArGD;;GAEG;AACH,MAAsB,QAAQ;;AAA9B,4BAYC;AARC,gBAAgB;AACA,mBAAU,GAAG,IAAI,CAAC;AA+EpC,SAAS,mBAAmB,CAAI,GAAM,EAAE,EAAU;IAChD,MAAM,CAAC,GAAG,GAAU,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;QACzB,OAAO,EAAE,GAAG,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,UAAU,GAAG,GAAG,EAAO,CAAC;IACpF,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,OAAO,CAAI,GAAM;IAC/B,OAAO,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED,SAAgB,UAAU,CAAI,GAAM;IAClC,OAAO,mBAAmB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;AAC9C,CAAC;AAiBD;;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,6 +1,7 @@
1
1
  import { DbEntity, EntityConstructor, ForeignKeyAction, IndexMetadata, IndexMethod } from './entity-base';
2
2
  import { ColumnBuilder, IdentityOptions } from '../schema/column-builder';
3
3
  import { TypeMapper } from '../types/type-mapper';
4
+ import { CollationDefinition } from '../types/collation-builder';
4
5
  import { DbColumn } from './db-column';
5
6
  import { SqlFragment } from '../query/conditions';
6
7
  /**
@@ -35,6 +36,10 @@ export declare class EntityPropertyBuilder<TEntity extends DbEntity, TProperty>
35
36
  * Set custom type mapper for bidirectional transformation
36
37
  */
37
38
  hasCustomMapper<TData = TProperty, TDriver = any>(mapper: TypeMapper<TData, TDriver>): this;
39
+ /**
40
+ * Set the collation for this column
41
+ */
42
+ hasCollation(collation: CollationDefinition): this;
38
43
  /**
39
44
  * Mark column as GENERATED ALWAYS AS IDENTITY (modern PostgreSQL identity columns)
40
45
  * This is the preferred way over serial/bigserial for auto-incrementing primary keys
@@ -180,7 +185,7 @@ export declare class EntityConfigBuilder<TEntity extends DbEntity> {
180
185
  /**
181
186
  * Configure an index
182
187
  */
183
- hasIndex(indexName: string, selector: (entity: TEntity) => Array<TEntity[keyof TEntity]>): IndexBuilder<TEntity>;
188
+ hasIndex(indexName: string, selector?: (entity: TEntity) => Array<TEntity[keyof TEntity]>): IndexBuilder<TEntity>;
184
189
  /**
185
190
  * Extract property name from selector
186
191
  */
@@ -205,6 +210,27 @@ export declare class IndexBuilder<TEntity extends DbEntity> {
205
210
  * Set the operator class for index columns (e.g., 'gin_trgm_ops')
206
211
  */
207
212
  withOperatorClass(opClass: string): this;
213
+ /**
214
+ * Set raw SQL expressions for expression-based index columns.
215
+ * When set, expressions are used instead of column names.
216
+ * Use with helper functions like lower() and unaccent() for composability.
217
+ *
218
+ * @example
219
+ * entity.hasIndex('idx_name_unaccent')
220
+ * .withExpression(lower(unaccent('name')))
221
+ *
222
+ * entity.hasIndex('idx_multi')
223
+ * .withExpression(lower('email'), lower(unaccent('name')))
224
+ */
225
+ withExpression(...expressions: string[]): this;
226
+ /**
227
+ * Add a WHERE clause for a partial index.
228
+ *
229
+ * @example
230
+ * entity.hasIndex('idx_active_users', e => [e.email])
231
+ * .where('active = true')
232
+ */
233
+ where(condition: string): this;
208
234
  }
209
235
  /**
210
236
  * Property configuration builder that requires a column type
@@ -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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"}
@@ -82,6 +82,13 @@ class EntityPropertyBuilder {
82
82
  this.columnBuilder.mapWith(mapper);
83
83
  return this;
84
84
  }
85
+ /**
86
+ * Set the collation for this column
87
+ */
88
+ hasCollation(collation) {
89
+ this.columnBuilder.hasCollation(collation);
90
+ return this;
91
+ }
85
92
  /**
86
93
  * Mark column as GENERATED ALWAYS AS IDENTITY (modern PostgreSQL identity columns)
87
94
  * This is the preferred way over serial/bigserial for auto-incrementing primary keys
@@ -382,29 +389,49 @@ class EntityConfigBuilder {
382
389
  */
383
390
  hasIndex(indexName, selector) {
384
391
  const metadata = entity_base_1.EntityMetadataStore.getOrCreateMetadata(this.entityClass);
385
- // Create a temporary entity to extract column names
386
- const tempEntity = {};
387
392
  const columnNames = [];
388
- // Build a proxy to capture property accesses
389
- const proxy = new Proxy(tempEntity, {
390
- get: (target, prop) => {
391
- if (typeof prop === 'string') {
392
- // Find the column name for this property
393
- const propMetadata = metadata.properties.get(prop);
394
- if (propMetadata) {
395
- columnNames.push(propMetadata.columnName);
393
+ const expressions = [];
394
+ let hasAnyExpression = false;
395
+ if (selector) {
396
+ // Create a temporary entity to extract column names
397
+ const tempEntity = {};
398
+ // Build a proxy that returns IndexColumnRef objects for each property access.
399
+ // These can be used directly (plain columns) or wrapped with ixLower/ixUnaccent.
400
+ const proxy = new Proxy(tempEntity, {
401
+ get: (target, prop) => {
402
+ if (typeof prop === 'string') {
403
+ const propMetadata = metadata.properties.get(prop);
404
+ if (propMetadata) {
405
+ return { __indexColumn: true, columnName: propMetadata.columnName };
406
+ }
407
+ }
408
+ return undefined;
409
+ }
410
+ });
411
+ // Execute the selector and collect returned refs
412
+ const result = selector(proxy);
413
+ for (const item of result) {
414
+ const ref = item;
415
+ if (ref && ref.__indexColumn) {
416
+ columnNames.push(ref.columnName);
417
+ if (ref.expression) {
418
+ hasAnyExpression = true;
419
+ expressions.push(ref.expression);
420
+ }
421
+ else {
422
+ expressions.push(`"${ref.columnName}"`);
396
423
  }
397
424
  }
398
- return proxy;
399
425
  }
400
- });
401
- // Execute the selector to capture property accesses
402
- selector(proxy);
426
+ }
403
427
  // Add the index metadata
404
428
  const indexMetadata = {
405
429
  name: indexName,
406
- columns: columnNames
430
+ columns: columnNames,
407
431
  };
432
+ if (hasAnyExpression) {
433
+ indexMetadata.expressions = expressions;
434
+ }
408
435
  metadata.indexes.push(indexMetadata);
409
436
  return new IndexBuilder(this.entityClass, indexMetadata);
410
437
  }
@@ -453,6 +480,33 @@ class IndexBuilder {
453
480
  this.indexMetadata.operatorClass = opClass;
454
481
  return this;
455
482
  }
483
+ /**
484
+ * Set raw SQL expressions for expression-based index columns.
485
+ * When set, expressions are used instead of column names.
486
+ * Use with helper functions like lower() and unaccent() for composability.
487
+ *
488
+ * @example
489
+ * entity.hasIndex('idx_name_unaccent')
490
+ * .withExpression(lower(unaccent('name')))
491
+ *
492
+ * entity.hasIndex('idx_multi')
493
+ * .withExpression(lower('email'), lower(unaccent('name')))
494
+ */
495
+ withExpression(...expressions) {
496
+ this.indexMetadata.expressions = expressions;
497
+ return this;
498
+ }
499
+ /**
500
+ * Add a WHERE clause for a partial index.
501
+ *
502
+ * @example
503
+ * entity.hasIndex('idx_active_users', e => [e.email])
504
+ * .where('active = true')
505
+ */
506
+ where(condition) {
507
+ this.indexMetadata.where = condition;
508
+ return this;
509
+ }
456
510
  }
457
511
  exports.IndexBuilder = IndexBuilder;
458
512
  /**
@@ -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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"}
package/dist/index.d.ts CHANGED
@@ -1,18 +1,19 @@
1
1
  export { integer, serial, bigint, bigserial, smallint, decimal, numeric, real, doublePrecision, varchar, char, text, boolean, timestamp, timestamptz, date, time, uuid, json, jsonb, bytea, enumColumn, ColumnBuilder, IdentityOptions, } from './schema/column-builder';
2
2
  export { pgEnum, EnumTypeDefinition, EnumTypeRegistry, EnumValues, } from './types/enum-builder';
3
+ export { pgCollation, CollationDefinition, CollationRegistry, } from './types/collation-builder';
3
4
  export { QueryBuilder, SelectQueryBuilder, CollectionQueryBuilder, } from './query/query-builder';
4
5
  export { UnionQueryBuilder, UnionType, isUnionQueryBuilder, } from './query/union-builder';
5
6
  export { FutureQuery, FutureSingleQuery, FutureCountQuery, FutureQueryRunner, AnyFutureQuery, FutureQueryResult, FutureQueryResults, isFutureQuery, isFutureSingleQuery, isFutureCountQuery, } from './query/future-query';
6
7
  export { PreparedQuery, } from './query/prepared-query';
7
8
  export { GroupedQueryBuilder, GroupedSelectQueryBuilder, GroupedJoinedQueryBuilder, GroupedItem, } from './query/grouped-query';
8
9
  export { JoinQueryBuilder, JoinType, JoinDefinition, } from './query/join-builder';
9
- export { Condition, ConditionOperator, ConditionBuilder, SqlFragment, RawSql, FieldRef, Placeholder, eq, ne, gt, gte, lt, lte, like, ilike, inArray, notInArray, isNull, isNotNull, between, and, or, not, sql, coalesce, jsonbSelect, jsonbSelectText, jsonbArraySome, jsonbConditionUnwrap, JsonbElement, flagHas, flagHasAll, flagHasAny, flagHasNone, } from './query/conditions';
10
- export { Subquery, SubqueryFieldRef, isSubquery, exists, notExists, inSubquery, notInSubquery, eqSubquery, neSubquery, gtSubquery, gteSubquery, ltSubquery, lteSubquery, SubqueryResult, SubqueryMode, } from './query/subquery';
10
+ export { Condition, ConditionOperator, ConditionBuilder, SqlFragment, RawSql, FieldRef, Placeholder, eq, ne, gt, gte, lt, lte, like, ilike, startsWith, regexMatches, regexMatchesCaseInsensitive, regexNoMatch, regexNoMatchCaseInsensitive, inArray, notInArray, isNull, isNotNull, between, and, or, not, sql, coalesce, jsonbSelect, jsonbSelectText, jsonbArraySome, jsonbConditionUnwrap, JsonbElement, flagHas, flagHasAll, flagHasAny, flagHasNone, } from './query/conditions';
11
+ export { Subquery, SubqueryFieldRef, isSubquery, exists, notExists, inSubquery, notInSubquery, eqSubquery, neSubquery, gtSubquery, gteSubquery, ltSubquery, lteSubquery, SubqueryResult, SubqueryMode, CollectionSubquerySource, } from './query/subquery';
11
12
  export { DbCte, DbCteBuilder, InferCteColumns, isCte, } from './query/cte-builder';
12
13
  export { QueryOptions, LogLevel, LoggingOptions, CollectionStrategyType, TimeTracer, TimeTraceEntry, QueryTimeTrace, } from './entity/db-context';
13
14
  export { ICollectionStrategy, CollectionStrategyType as CollectionStrategy, CollectionAggregationConfig, CollectionAggregationResult, } from './query/collection-strategy.interface';
14
15
  export { CollectionStrategyFactory, } from './query/collection-strategy.factory';
15
- export { DbEntity, EntityConstructor, EntityMetadataStore, IndexMethod, } from './entity/entity-base';
16
+ export { DbEntity, EntityConstructor, EntityMetadataStore, IndexMethod, ixLower, ixUnaccent, } from './entity/entity-base';
16
17
  export { DbColumn, UnwrapDbColumns, isDbColumn, InsertData, ExtractDbColumns, ExtractDbColumnKeys, } from './entity/db-column';
17
18
  export { EntityConfigBuilder, EntityPropertyBuilder, EntityNavigationBuilder, HasManyNavigationBuilder, HasOneNavigationBuilder, } from './entity/entity-builder';
18
19
  export { DbModelConfig, } from './entity/model-config';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.gte = exports.gt = exports.ne = exports.eq = exports.Placeholder = exports.RawSql = exports.SqlFragment = exports.ConditionBuilder = exports.JoinQueryBuilder = exports.GroupedJoinedQueryBuilder = exports.GroupedSelectQueryBuilder = exports.GroupedQueryBuilder = exports.PreparedQuery = exports.isFutureCountQuery = exports.isFutureSingleQuery = exports.isFutureQuery = exports.FutureQueryRunner = exports.FutureCountQuery = exports.FutureSingleQuery = exports.FutureQuery = exports.isUnionQueryBuilder = exports.UnionQueryBuilder = exports.CollectionQueryBuilder = exports.SelectQueryBuilder = exports.QueryBuilder = exports.EnumTypeRegistry = exports.pgEnum = exports.ColumnBuilder = 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.DbContext = exports.DbModelConfig = exports.HasOneNavigationBuilder = exports.HasManyNavigationBuilder = exports.EntityNavigationBuilder = exports.EntityPropertyBuilder = exports.EntityConfigBuilder = exports.isDbColumn = exports.DbColumn = exports.EntityMetadataStore = exports.DbEntity = exports.CollectionStrategyFactory = exports.TimeTracer = 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 = exports.Subquery = exports.flagHasNone = exports.flagHasAny = exports.flagHasAll = exports.flagHas = exports.jsonbConditionUnwrap = exports.jsonbArraySome = exports.jsonbSelectText = exports.jsonbSelect = exports.coalesce = 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 = void 0;
5
- exports.BunClient = exports.PgClient = exports.PostgresClient = exports.DatabaseClient = exports.MigrationScaffold = exports.MigrationLoader = exports.MigrationJournal = exports.MigrationRunner = 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 = void 0;
3
+ exports.ne = exports.eq = exports.Placeholder = exports.RawSql = exports.SqlFragment = exports.ConditionBuilder = exports.JoinQueryBuilder = exports.GroupedJoinedQueryBuilder = exports.GroupedSelectQueryBuilder = exports.GroupedQueryBuilder = exports.PreparedQuery = exports.isFutureCountQuery = exports.isFutureSingleQuery = exports.isFutureQuery = exports.FutureQueryRunner = exports.FutureCountQuery = exports.FutureSingleQuery = exports.FutureQuery = exports.isUnionQueryBuilder = exports.UnionQueryBuilder = exports.CollectionQueryBuilder = exports.SelectQueryBuilder = exports.QueryBuilder = exports.CollationRegistry = exports.pgCollation = exports.EnumTypeRegistry = exports.pgEnum = exports.ColumnBuilder = 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.ixUnaccent = exports.ixLower = exports.EntityMetadataStore = exports.DbEntity = exports.CollectionStrategyFactory = exports.TimeTracer = 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 = exports.Subquery = exports.flagHasNone = exports.flagHasAny = exports.flagHasAll = exports.flagHas = exports.jsonbConditionUnwrap = exports.jsonbArraySome = exports.jsonbSelectText = exports.jsonbSelect = exports.coalesce = exports.sql = exports.not = exports.or = exports.and = exports.between = exports.isNotNull = exports.isNull = exports.notInArray = exports.inArray = exports.regexNoMatchCaseInsensitive = exports.regexNoMatch = exports.regexMatchesCaseInsensitive = exports.regexMatches = exports.startsWith = exports.ilike = exports.like = exports.lte = exports.lt = exports.gte = exports.gt = void 0;
5
+ exports.BunClient = exports.PgClient = exports.PostgresClient = exports.DatabaseClient = exports.MigrationScaffold = exports.MigrationLoader = exports.MigrationJournal = exports.MigrationRunner = 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 = void 0;
6
6
  // Internal schema builders (exported for DbContext use only)
7
7
  var column_builder_1 = require("./schema/column-builder");
8
8
  Object.defineProperty(exports, "integer", { enumerable: true, get: function () { return column_builder_1.integer; } });
@@ -32,6 +32,10 @@ Object.defineProperty(exports, "ColumnBuilder", { enumerable: true, get: functio
32
32
  var enum_builder_1 = require("./types/enum-builder");
33
33
  Object.defineProperty(exports, "pgEnum", { enumerable: true, get: function () { return enum_builder_1.pgEnum; } });
34
34
  Object.defineProperty(exports, "EnumTypeRegistry", { enumerable: true, get: function () { return enum_builder_1.EnumTypeRegistry; } });
35
+ // Collation types
36
+ var collation_builder_1 = require("./types/collation-builder");
37
+ Object.defineProperty(exports, "pgCollation", { enumerable: true, get: function () { return collation_builder_1.pgCollation; } });
38
+ Object.defineProperty(exports, "CollationRegistry", { enumerable: true, get: function () { return collation_builder_1.CollationRegistry; } });
35
39
  // Query builders
36
40
  var query_builder_1 = require("./query/query-builder");
37
41
  Object.defineProperty(exports, "QueryBuilder", { enumerable: true, get: function () { return query_builder_1.QueryBuilder; } });
@@ -73,6 +77,11 @@ Object.defineProperty(exports, "lt", { enumerable: true, get: function () { retu
73
77
  Object.defineProperty(exports, "lte", { enumerable: true, get: function () { return conditions_1.lte; } });
74
78
  Object.defineProperty(exports, "like", { enumerable: true, get: function () { return conditions_1.like; } });
75
79
  Object.defineProperty(exports, "ilike", { enumerable: true, get: function () { return conditions_1.ilike; } });
80
+ Object.defineProperty(exports, "startsWith", { enumerable: true, get: function () { return conditions_1.startsWith; } });
81
+ Object.defineProperty(exports, "regexMatches", { enumerable: true, get: function () { return conditions_1.regexMatches; } });
82
+ Object.defineProperty(exports, "regexMatchesCaseInsensitive", { enumerable: true, get: function () { return conditions_1.regexMatchesCaseInsensitive; } });
83
+ Object.defineProperty(exports, "regexNoMatch", { enumerable: true, get: function () { return conditions_1.regexNoMatch; } });
84
+ Object.defineProperty(exports, "regexNoMatchCaseInsensitive", { enumerable: true, get: function () { return conditions_1.regexNoMatchCaseInsensitive; } });
76
85
  Object.defineProperty(exports, "inArray", { enumerable: true, get: function () { return conditions_1.inArray; } });
77
86
  Object.defineProperty(exports, "notInArray", { enumerable: true, get: function () { return conditions_1.notInArray; } });
78
87
  Object.defineProperty(exports, "isNull", { enumerable: true, get: function () { return conditions_1.isNull; } });
@@ -119,6 +128,8 @@ Object.defineProperty(exports, "CollectionStrategyFactory", { enumerable: true,
119
128
  var entity_base_1 = require("./entity/entity-base");
120
129
  Object.defineProperty(exports, "DbEntity", { enumerable: true, get: function () { return entity_base_1.DbEntity; } });
121
130
  Object.defineProperty(exports, "EntityMetadataStore", { enumerable: true, get: function () { return entity_base_1.EntityMetadataStore; } });
131
+ Object.defineProperty(exports, "ixLower", { enumerable: true, get: function () { return entity_base_1.ixLower; } });
132
+ Object.defineProperty(exports, "ixUnaccent", { enumerable: true, get: function () { return entity_base_1.ixUnaccent; } });
122
133
  var db_column_1 = require("./entity/db-column");
123
134
  Object.defineProperty(exports, "DbColumn", { enumerable: true, get: function () { return db_column_1.DbColumn; } });
124
135
  Object.defineProperty(exports, "isDbColumn", { enumerable: true, get: function () { return db_column_1.isDbColumn; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { DatabaseClient } from '../database/database-client.interface';
2
2
  import { LogLevel } from '../entity/db-context';
3
3
  import { TableSchema, IndexMethod } from '../schema/table-builder';
4
4
  import { ColumnConfig } from '../schema/column-builder';
5
+ import { CollationDefinition } from '../types/collation-builder';
5
6
  import { SequenceConfig } from '../schema/sequence-builder';
6
7
  /**
7
8
  * Database column information from pg
@@ -15,6 +16,7 @@ interface DbColumnInfo {
15
16
  numeric_scale: number | null;
16
17
  is_nullable: 'YES' | 'NO';
17
18
  column_default: string | null;
19
+ collation_name: string | null;
18
20
  }
19
21
  /**
20
22
  * Migration operation types - describes schema changes to be applied
@@ -22,6 +24,9 @@ interface DbColumnInfo {
22
24
  export type MigrationOperation = {
23
25
  type: 'create_schema';
24
26
  schemaName: string;
27
+ } | {
28
+ type: 'create_collation';
29
+ collation: CollationDefinition;
25
30
  } | {
26
31
  type: 'create_enum';
27
32
  enumName: string;
@@ -63,6 +68,8 @@ export type MigrationOperation = {
63
68
  isUnique?: boolean;
64
69
  using?: IndexMethod;
65
70
  operatorClass?: string;
71
+ expressions?: string[];
72
+ where?: string;
66
73
  } | {
67
74
  type: 'drop_index';
68
75
  tableName: string;
@@ -116,6 +123,10 @@ export declare class DbSchemaManager {
116
123
  * Create all ENUM types used in the schema
117
124
  */
118
125
  private createEnumTypes;
126
+ /**
127
+ * Create all COLLATION types used in the schema
128
+ */
129
+ private createCollations;
119
130
  /**
120
131
  * Create all sequences registered in the schema
121
132
  */
@@ -172,6 +183,7 @@ export declare class DbSchemaManager {
172
183
  /**
173
184
  * Execute create enum
174
185
  */
186
+ private executeCreateCollation;
175
187
  private executeCreateEnum;
176
188
  /**
177
189
  * Execute create sequence
@@ -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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"}