joist-codegen 2.2.0 → 2.3.0-next.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.
Files changed (64) hide show
  1. package/build/EntityDbMetadata.d.ts +60 -0
  2. package/build/EntityDbMetadata.d.ts.map +1 -1
  3. package/build/EntityDbMetadata.js +125 -3
  4. package/build/EntityDbMetadata.js.map +1 -1
  5. package/build/EntityDbMetadata.test.js +94 -0
  6. package/build/EntityDbMetadata.test.js.map +1 -1
  7. package/build/codemods/__tests__/codemod_0003-rename_find_paginated.test.d.ts +2 -0
  8. package/build/codemods/__tests__/codemod_0003-rename_find_paginated.test.d.ts.map +1 -0
  9. package/build/codemods/__tests__/codemod_0003-rename_find_paginated.test.js +9 -0
  10. package/build/codemods/__tests__/codemod_0003-rename_find_paginated.test.js.map +1 -0
  11. package/build/codemods/codemod_0003-rename_find_paginated.d.ts +7 -0
  12. package/build/codemods/codemod_0003-rename_find_paginated.d.ts.map +1 -0
  13. package/build/codemods/codemod_0003-rename_find_paginated.js +29 -0
  14. package/build/codemods/codemod_0003-rename_find_paginated.js.map +1 -0
  15. package/build/codemods/index.d.ts.map +1 -1
  16. package/build/codemods/index.js +6 -1
  17. package/build/codemods/index.js.map +1 -1
  18. package/build/codemods/index.test.js +7 -2
  19. package/build/codemods/index.test.js.map +1 -1
  20. package/build/config.d.ts +36 -535
  21. package/build/config.d.ts.map +1 -1
  22. package/build/config.js +13 -7
  23. package/build/config.js.map +1 -1
  24. package/build/config.test.js +15 -0
  25. package/build/config.test.js.map +1 -1
  26. package/build/docs/index.js +1 -1
  27. package/build/docs/index.js.map +1 -1
  28. package/build/docs/index.test.js +11 -0
  29. package/build/docs/index.test.js.map +1 -1
  30. package/build/findEntityScopes.d.ts +11 -0
  31. package/build/findEntityScopes.d.ts.map +1 -0
  32. package/build/findEntityScopes.js +144 -0
  33. package/build/findEntityScopes.js.map +1 -0
  34. package/build/generate.d.ts.map +1 -1
  35. package/build/generate.js +4 -2
  36. package/build/generate.js.map +1 -1
  37. package/build/generateEntitiesFile.d.ts +1 -1
  38. package/build/generateEntitiesFile.d.ts.map +1 -1
  39. package/build/generateEntityCodegenFile.d.ts +4 -3
  40. package/build/generateEntityCodegenFile.d.ts.map +1 -1
  41. package/build/generateEntityCodegenFile.js +94 -34
  42. package/build/generateEntityCodegenFile.js.map +1 -1
  43. package/build/generateMetadataFile.js +19 -0
  44. package/build/generateMetadataFile.js.map +1 -1
  45. package/build/index.d.ts +1 -1
  46. package/build/index.d.ts.map +1 -1
  47. package/build/index.js +2 -0
  48. package/build/index.js.map +1 -1
  49. package/build/inheritance.d.ts.map +1 -1
  50. package/build/inheritance.js +4 -0
  51. package/build/inheritance.js.map +1 -1
  52. package/build/logger.d.ts +2 -2
  53. package/build/logger.d.ts.map +1 -1
  54. package/build/symbols.d.ts +4 -0
  55. package/build/symbols.d.ts.map +1 -1
  56. package/build/symbols.js +7 -3
  57. package/build/symbols.js.map +1 -1
  58. package/build/utils.d.ts +2 -0
  59. package/build/utils.d.ts.map +1 -1
  60. package/build/utils.js +22 -9
  61. package/build/utils.js.map +1 -1
  62. package/build/write-json-schema.js +6 -4
  63. package/build/write-json-schema.js.map +1 -1
  64. package/package.json +11 -12
@@ -34,6 +34,26 @@ export type Entity = {
34
34
  /** The symbol pointing to the entity's config const. */
35
35
  configConst: Import;
36
36
  optsType: Import;
37
+ /** i.e. `AuthorId` (or `Author_Id` on conflict). */
38
+ idName: string;
39
+ /** i.e. `AuthorFields`. */
40
+ fieldsName: string;
41
+ /** i.e. `AuthorOpts`. */
42
+ optsName: string;
43
+ /** i.e. `AuthorIdsOpts`. */
44
+ idsOptsName: string;
45
+ /** i.e. `AuthorFilter`. */
46
+ filterName: string;
47
+ /** i.e. `AuthorGraphQLFilter`. */
48
+ graphqlFilterName: string;
49
+ /** i.e. `AuthorOrder`. */
50
+ orderName: string;
51
+ /** i.e. `AuthorFactoryExtras`. */
52
+ factoryExtrasName: string;
53
+ /** i.e. `AuthorScope`. */
54
+ scopeName: string;
55
+ /** i.e. `AuthorScopes`. */
56
+ scopesName: string;
37
57
  };
38
58
  export type DatabaseColumnType = "boolean" | "int" | "uuid" | "numeric" | "smallint" | "integer" | "bigint" | "decimal" | "real" | "smallserial" | "serial" | "bigserial" | "double precision" | "text" | "citext" | "character varying" | "varchar" | "time without time zone" | "timestamp with time zone" | "timestamp without time zone" | "date" | "jsonb" | "bytea" | "tsvector" | "tstzrange";
39
59
  /**
@@ -138,6 +158,24 @@ export type ManyToManyField = Field & {
138
158
  isLargeCollection: boolean;
139
159
  isDeferredAndDeferrable: boolean;
140
160
  derived: "async" | "otherSide" | false;
161
+ /** Whether the join table has a surrogate `id` PK; if false the FK pair is the composite PK. */
162
+ hasJoinTableId: boolean;
163
+ };
164
+ /** I.e. a `Publisher.logoColors` m2m to the `color` enum table, backed by `publisher_logo_colors`. */
165
+ export type ManyToManyEnumField = Field & {
166
+ kind: "m2mEnum";
167
+ joinTableName: string;
168
+ /** The entity's FK column, e.g. `publisher_id`. */
169
+ columnName: string;
170
+ /** The enum's FK column, e.g. `logo_color_id`. */
171
+ otherColumnName: string;
172
+ enumName: string;
173
+ enumType: Import;
174
+ enumDetailType: Import;
175
+ enumDetailsType: Import;
176
+ enumRows: EnumRow[];
177
+ /** Whether the join table has a surrogate `id` PK; if false the FK pair is the composite PK. */
178
+ hasJoinTableId: boolean;
141
179
  };
142
180
  /** I.e. a `Comment.parent` reference that groups `comments.parent_book_id` and `comments.parent_book_review_id`. */
143
181
  export type PolymorphicField = Field & {
@@ -172,6 +210,7 @@ export declare class EntityDbMetadata {
172
210
  oneToOnes: OneToOneField[];
173
211
  manyToManys: ManyToManyField[];
174
212
  largeManyToManys: ManyToManyField[];
213
+ manyToManyEnums: ManyToManyEnumField[];
175
214
  polymorphics: PolymorphicField[];
176
215
  tableName: string;
177
216
  tagName: string;
@@ -205,5 +244,26 @@ export declare function collectionName(config: Config, singleEntity: Entity, col
205
244
  };
206
245
  export declare function failIfOverlappingFieldNames(entity: EntityDbMetadata): void;
207
246
  export declare function makeEntity(entityName: string): Entity;
247
+ /**
248
+ * Collapses the per-relation `otherEntity` copies down to the one primary `Entity` per name.
249
+ *
250
+ * `makeEntity` mints a fresh `Entity` for every relation's `otherEntity`, so each entity ends up with
251
+ * many duplicate objects floating around. Pointing them all at the single `entitiesByName[name].entity`
252
+ * instance means later passes (i.e. `resolveNameConflicts`) only have to update one object per name.
253
+ *
254
+ * Must run after inheritance, since STI/CTI specialization both adds and re-points `otherEntity`s.
255
+ */
256
+ export declare function canonicalizeOtherEntities(db: DbMetadata): void;
257
+ /**
258
+ * Rewrites codegen'd type names that collide with another exported type name.
259
+ *
260
+ * `makeEntity` defaults each name to the conventional `${name}<Suffix>`, but if a separate entity or
261
+ * enum is literally named e.g. `AuthorScope` or `AuthorOrder`, our generated type of the same name
262
+ * would collide with it, so we fall back to `Author_Scope` / `Author_Order`.
263
+ *
264
+ * Relies on `canonicalizeOtherEntities` having run, so mutating each primary `meta.entity` also updates
265
+ * the `otherEntity` references that point at it (e.g. `Book.author: AuthorId` follows `Author`'s rename).
266
+ */
267
+ export declare function resolveNameConflicts(config: Config, db: DbMetadata): void;
208
268
  export {};
209
269
  //# sourceMappingURL=EntityDbMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDbMetadata.d.ts","sourceRoot":"","sources":["../src/EntityDbMetadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityDbMetadata.d.ts","sourceRoot":"","sources":["../src/EntityDbMetadata.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ exports.manyToManyName = manyToManyName;
7
7
  exports.collectionName = collectionName;
8
8
  exports.failIfOverlappingFieldNames = failIfOverlappingFieldNames;
9
9
  exports.makeEntity = makeEntity;
10
+ exports.canonicalizeOtherEntities = canonicalizeOtherEntities;
11
+ exports.resolveNameConflicts = resolveNameConflicts;
10
12
  const change_case_1 = require("change-case");
11
13
  const joist_utils_1 = require("joist-utils");
12
14
  const pg_structure_1 = require("pg-structure");
@@ -28,6 +30,7 @@ class EntityDbMetadata {
28
30
  oneToOnes;
29
31
  manyToManys;
30
32
  largeManyToManys;
33
+ manyToManyEnums;
31
34
  polymorphics;
32
35
  tableName;
33
36
  tagName;
@@ -112,10 +115,19 @@ class EntityDbMetadata {
112
115
  // by looking for only true join tables, i.e. tables with only id, fk1, and fk2.
113
116
  .filter((r) => (0, utils_1.isJoinTable)(config, r.joinTable))
114
117
  .filter((r) => !isMultiColumnForeignKey(r))
118
+ // Join tables whose "other" side is an enum table become EnumCollections instead.
119
+ .filter((r) => !(0, utils_1.isEnumTable)(config, r.targetTable))
115
120
  .map((r) => newManyToManyField(config, this.entity, r))
116
121
  .filter((f) => !f.ignore);
117
122
  this.manyToManys = allManyToManys.filter((f) => !f.isLargeCollection);
118
123
  this.largeManyToManys = allManyToManys.filter((f) => f.isLargeCollection);
124
+ // A join table between us and an enum table, i.e. `Publisher.logoColors`.
125
+ this.manyToManyEnums = table.m2mRelations
126
+ .filter((r) => (0, utils_1.isJoinTable)(config, r.joinTable))
127
+ .filter((r) => !isMultiColumnForeignKey(r))
128
+ .filter((r) => (0, utils_1.isEnumTable)(config, r.targetTable))
129
+ .map((r) => newManyToManyEnumField(config, this.entity, r, enums))
130
+ .filter((f) => !f.ignore);
119
131
  this.polymorphics = polymorphicRelations(config, table).map((rc) => newPolymorphicField(config, table, this.entity, rc));
120
132
  this.tableName = table.name;
121
133
  this.tagName = config.entities[this.entity.name]?.tag;
@@ -437,6 +449,27 @@ function newManyToManyField(config, entity, r) {
437
449
  isLargeCollection: (0, config_1.isLargeCollection)(config, entity, fieldName),
438
450
  isDeferredAndDeferrable,
439
451
  derived,
452
+ hasJoinTableId: (0, utils_1.joinTableHasId)(r.joinTable),
453
+ };
454
+ }
455
+ function newManyToManyEnumField(config, entity, r, enums) {
456
+ const { foreignKey, targetForeignKey, targetTable } = r;
457
+ // For publisher_logo_colors.logo_color_id use the `logo_color_id` column i.e. `logoColors`
458
+ const fieldName = manyToManyName(targetForeignKey.columns[0]);
459
+ const enumName = (0, utils_1.tableToEntityName)(config, targetTable);
460
+ return {
461
+ kind: "m2mEnum",
462
+ joinTableName: r.joinTable.name,
463
+ fieldName,
464
+ columnName: foreignKey.columns[0].name,
465
+ otherColumnName: targetForeignKey.columns[0].name,
466
+ enumName,
467
+ enumType: (0, ts_poet_1.imp)(`${enumName}@./entities.ts`),
468
+ enumDetailType: (0, ts_poet_1.imp)(`${(0, pluralize_1.plural)(enumName)}@./entities.ts`),
469
+ enumDetailsType: (0, ts_poet_1.imp)(`${enumName}Details@./entities.ts`),
470
+ enumRows: enums[targetTable.name].rows,
471
+ ignore: (0, config_1.isFieldIgnored)(config, entity, fieldName),
472
+ hasJoinTableId: (0, utils_1.joinTableHasId)(r.joinTable),
440
473
  };
441
474
  }
442
475
  function newPolymorphicField(config, table, entity, pr) {
@@ -582,6 +615,7 @@ function failIfOverlappingFieldNames(entity) {
582
615
  ...entity.oneToOnes,
583
616
  ...entity.manyToManys,
584
617
  ...entity.largeManyToManys,
618
+ ...entity.manyToManyEnums,
585
619
  ...entity.polymorphics,
586
620
  ];
587
621
  Object.entries((0, joist_utils_1.groupBy)(allFields, (f) => f.fieldName)).forEach(([fieldName, fields]) => {
@@ -591,6 +625,8 @@ function failIfOverlappingFieldNames(entity) {
591
625
  });
592
626
  }
593
627
  function makeEntity(entityName) {
628
+ // Default to the conventional names; `resolveNameConflicts` rewrites them if they collide.
629
+ const names = entitySymbolNames(entityName);
594
630
  return {
595
631
  name: entityName,
596
632
  type: entityType(entityName),
@@ -598,14 +634,100 @@ function makeEntity(entityName) {
598
634
  typeForMetadataFile: entityTypeForMetadataFile(entityName),
599
635
  metaName: metaName(entityName),
600
636
  metaType: metaType(entityName),
601
- idType: (0, ts_poet_1.imp)(`t:${entityName}Id@./entities.ts`, { definedIn: `./codegen/${entityName}Codegen.ts` }),
602
- orderType: (0, ts_poet_1.imp)(`t:${entityName}Order@./entities.ts`, { definedIn: `./codegen/${entityName}Codegen.ts` }),
603
- optsType: (0, ts_poet_1.imp)(`t:${entityName}Opts@./entities.ts`, { definedIn: `./codegen/${entityName}Codegen.ts` }),
637
+ idType: entityTypeImport(entityName, names.idName),
638
+ orderType: entityTypeImport(entityName, names.orderName),
639
+ optsType: entityTypeImport(entityName, names.optsName),
604
640
  configConst: (0, ts_poet_1.imp)(`${(0, change_case_1.camelCase)(entityName)}Config@./entities.ts`, {
605
641
  definedIn: `./codegen/${entityName}Codegen.ts`,
606
642
  }),
643
+ ...names,
607
644
  };
608
645
  }
646
+ /**
647
+ * Collapses the per-relation `otherEntity` copies down to the one primary `Entity` per name.
648
+ *
649
+ * `makeEntity` mints a fresh `Entity` for every relation's `otherEntity`, so each entity ends up with
650
+ * many duplicate objects floating around. Pointing them all at the single `entitiesByName[name].entity`
651
+ * instance means later passes (i.e. `resolveNameConflicts`) only have to update one object per name.
652
+ *
653
+ * Must run after inheritance, since STI/CTI specialization both adds and re-points `otherEntity`s.
654
+ */
655
+ function canonicalizeOtherEntities(db) {
656
+ const canonical = (other) => db.entitiesByName[other.name]?.entity ?? other;
657
+ for (const meta of db.entities) {
658
+ for (const field of [
659
+ ...meta.manyToOnes,
660
+ ...meta.oneToManys,
661
+ ...meta.largeOneToManys,
662
+ ...meta.oneToOnes,
663
+ ...meta.manyToManys,
664
+ ...meta.largeManyToManys,
665
+ ]) {
666
+ field.otherEntity = canonical(field.otherEntity);
667
+ }
668
+ for (const poly of meta.polymorphics) {
669
+ for (const comp of poly.components)
670
+ comp.otherEntity = canonical(comp.otherEntity);
671
+ }
672
+ }
673
+ }
674
+ /**
675
+ * Rewrites codegen'd type names that collide with another exported type name.
676
+ *
677
+ * `makeEntity` defaults each name to the conventional `${name}<Suffix>`, but if a separate entity or
678
+ * enum is literally named e.g. `AuthorScope` or `AuthorOrder`, our generated type of the same name
679
+ * would collide with it, so we fall back to `Author_Scope` / `Author_Order`.
680
+ *
681
+ * Relies on `canonicalizeOtherEntities` having run, so mutating each primary `meta.entity` also updates
682
+ * the `otherEntity` references that point at it (e.g. `Book.author: AuthorId` follows `Author`'s rename).
683
+ */
684
+ function resolveNameConflicts(config, db) {
685
+ // The names exported into `entities.ts` that a codegen'd type could shadow.
686
+ const reserved = new Set(db.entities.map((meta) => meta.name));
687
+ for (const enumData of Object.values(db.enums)) {
688
+ // An enum table exports its (singularized) type, its `Details` type/const, and its pluralized const,
689
+ // i.e. `ChangeRequestAssetScope`, `ChangeRequestAssetScopeDetails`, and `ChangeRequestAssetScopes`.
690
+ const enumName = (0, utils_1.tableToEntityName)(config, enumData.table);
691
+ reserved.add(enumName).add(`${enumName}Details`).add((0, pluralize_1.plural)(enumName));
692
+ }
693
+ for (const pgEnum of Object.values(db.pgEnums))
694
+ reserved.add(pgEnum.name);
695
+ for (const meta of db.entities) {
696
+ if (hasNameConflict(meta.name, reserved))
697
+ applyEntityNames(meta.entity, reserved);
698
+ }
699
+ }
700
+ /** Computes the codegen'd type names for an entity, underscoring any that `reserved` already contains. */
701
+ function entitySymbolNames(name, reserved) {
702
+ const pick = (suffix) => (reserved?.has(`${name}${suffix}`) ? `${name}_${suffix}` : `${name}${suffix}`);
703
+ return {
704
+ idName: pick("Id"),
705
+ fieldsName: pick("Fields"),
706
+ optsName: pick("Opts"),
707
+ idsOptsName: pick("IdsOpts"),
708
+ filterName: pick("Filter"),
709
+ graphqlFilterName: pick("GraphQLFilter"),
710
+ orderName: pick("Order"),
711
+ factoryExtrasName: pick("FactoryExtras"),
712
+ scopeName: pick("Scope"),
713
+ scopesName: pick("Scopes"),
714
+ };
715
+ }
716
+ /** Returns true if any of the entity's conventional type names is already taken. */
717
+ function hasNameConflict(name, reserved) {
718
+ return Object.values(entitySymbolNames(name)).some((conventional) => reserved.has(conventional));
719
+ }
720
+ /** Rewrites an entity's type names (and the `Import`s built from them) to their de-conflicted form. */
721
+ function applyEntityNames(entity, reserved) {
722
+ const names = entitySymbolNames(entity.name, reserved);
723
+ Object.assign(entity, names);
724
+ entity.idType = entityTypeImport(entity.name, names.idName);
725
+ entity.orderType = entityTypeImport(entity.name, names.orderName);
726
+ entity.optsType = entityTypeImport(entity.name, names.optsName);
727
+ }
728
+ function entityTypeImport(entityName, symbolName) {
729
+ return (0, ts_poet_1.imp)(`t:${symbolName}@./entities.ts`, { definedIn: `./codegen/${entityName}Codegen.ts` });
730
+ }
609
731
  function metaName(entityName) {
610
732
  return `${(0, change_case_1.camelCase)(entityName)}Meta`;
611
733
  }
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDbMetadata.js","sourceRoot":"","sources":["../src/EntityDbMetadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityDbMetadata.js","sourceRoot":"","sources":["../src/EntityDbMetadata.ts"],"names":[],"mappings":"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"}
@@ -83,6 +83,79 @@ describe("EntityDbMetadata", () => {
83
83
  expect((0, EntityDbMetadata_1.oneToOneName)(configDummy, book, author, relation)).toEqual("renamedImage");
84
84
  });
85
85
  });
86
+ describe("canonicalizeOtherEntities", () => {
87
+ it("points relation otherEntitys at the single primary instance", () => {
88
+ const author = fakeMeta("Author");
89
+ const book = fakeMeta("Book");
90
+ // A fresh, duplicate `Author` object, as `makeEntity` produces for each relation
91
+ book.manyToOnes = [{ otherEntity: (0, EntityDbMetadata_1.makeEntity)("Author") }];
92
+ const db = asDb([author, book]);
93
+ (0, EntityDbMetadata_1.canonicalizeOtherEntities)(db);
94
+ expect(book.manyToOnes[0].otherEntity).toBe(author.entity);
95
+ });
96
+ });
97
+ describe("resolveNameConflicts", () => {
98
+ it("defaults to conventional names", () => {
99
+ expect((0, EntityDbMetadata_1.makeEntity)("Author")).toMatchObject({
100
+ idName: "AuthorId",
101
+ fieldsName: "AuthorFields",
102
+ optsName: "AuthorOpts",
103
+ idsOptsName: "AuthorIdsOpts",
104
+ filterName: "AuthorFilter",
105
+ graphqlFilterName: "AuthorGraphQLFilter",
106
+ orderName: "AuthorOrder",
107
+ factoryExtrasName: "AuthorFactoryExtras",
108
+ scopeName: "AuthorScope",
109
+ scopesName: "AuthorScopes",
110
+ });
111
+ });
112
+ it("leaves names alone when there is no conflict", () => {
113
+ const entities = [fakeMeta("Author"), fakeMeta("Book")];
114
+ (0, EntityDbMetadata_1.resolveNameConflicts)(defaultConfig, asDb(entities));
115
+ expect(entities[0].entity).toMatchObject({ scopeName: "AuthorScope", orderName: "AuthorOrder" });
116
+ });
117
+ it("falls back to underscore names when an entity is named EntityScope", () => {
118
+ const entities = [fakeMeta("Author"), fakeMeta("AuthorScope")];
119
+ (0, EntityDbMetadata_1.resolveNameConflicts)(defaultConfig, asDb(entities));
120
+ // Only the colliding symbol is underscored; the rest stay conventional
121
+ expect(entities[0].entity).toMatchObject({ scopeName: "Author_Scope", orderName: "AuthorOrder" });
122
+ });
123
+ it("falls back to underscore names for any colliding codegen'd type", () => {
124
+ const entities = [fakeMeta("Author"), fakeMeta("AuthorOrder"), fakeMeta("AuthorFilter")];
125
+ (0, EntityDbMetadata_1.resolveNameConflicts)(defaultConfig, asDb(entities));
126
+ expect(entities[0].entity).toMatchObject({
127
+ orderName: "Author_Order",
128
+ filterName: "Author_Filter",
129
+ optsName: "AuthorOpts",
130
+ });
131
+ });
132
+ it("rewrites cross-entity references to stay in sync", () => {
133
+ const author = fakeMeta("Author");
134
+ const book = fakeMeta("Book");
135
+ book.manyToOnes = [{ otherEntity: (0, EntityDbMetadata_1.makeEntity)("Author") }];
136
+ // An entity named `AuthorId` collides with Author's own `AuthorId` type
137
+ const db = asDb([author, book, fakeMeta("AuthorId")]);
138
+ (0, EntityDbMetadata_1.canonicalizeOtherEntities)(db);
139
+ (0, EntityDbMetadata_1.resolveNameConflicts)(defaultConfig, db);
140
+ expect(author.entity.idName).toEqual("Author_Id");
141
+ // Book's m2o points at Author's single primary instance, so it follows the rename
142
+ expect(book.manyToOnes[0].otherEntity.idName).toEqual("Author_Id");
143
+ });
144
+ it("falls back when an enum is named EntityScope", () => {
145
+ const entities = [fakeMeta("Author")];
146
+ // The `author_scopes` enum table is exported as the singularized `AuthorScope`, and its pluralized
147
+ // metadata const `AuthorScopes` collides with the entity's `Scopes` type, so both are underscored.
148
+ const enums = [{ table: { name: "author_scopes" } }];
149
+ (0, EntityDbMetadata_1.resolveNameConflicts)(defaultConfig, asDb(entities, enums));
150
+ expect(entities[0].entity).toMatchObject({ scopeName: "Author_Scope", scopesName: "Author_Scopes" });
151
+ });
152
+ it("falls back when a pg enum is named EntityOrder", () => {
153
+ const entities = [fakeMeta("Author")];
154
+ const pgEnums = [{ name: "AuthorOrder" }];
155
+ (0, EntityDbMetadata_1.resolveNameConflicts)(defaultConfig, asDb(entities, [], pgEnums));
156
+ expect(entities[0].entity).toMatchObject({ orderName: "Author_Order" });
157
+ });
158
+ });
86
159
  describe("referenceName", () => {
87
160
  it("returns the camel case of the column name without an id prefix", () => {
88
161
  // For `image.book_id` create `Image.book`
@@ -114,4 +187,25 @@ describe("EntityDbMetadata", () => {
114
187
  });
115
188
  });
116
189
  });
190
+ function fakeMeta(name) {
191
+ return {
192
+ name,
193
+ entity: (0, EntityDbMetadata_1.makeEntity)(name),
194
+ manyToOnes: [],
195
+ oneToManys: [],
196
+ largeOneToManys: [],
197
+ oneToOnes: [],
198
+ manyToManys: [],
199
+ largeManyToManys: [],
200
+ polymorphics: [],
201
+ };
202
+ }
203
+ function asDb(entities, enums = [], pgEnums = []) {
204
+ return {
205
+ entities,
206
+ entitiesByName: Object.fromEntries(entities.map((e) => [e.name, e])),
207
+ enums: Object.fromEntries(enums.map((e) => [e.table.name, e])),
208
+ pgEnums: Object.fromEntries(pgEnums.map((e) => [e.name, e])),
209
+ };
210
+ }
117
211
  //# sourceMappingURL=EntityDbMetadata.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntityDbMetadata.test.js","sourceRoot":"","sources":["../src/EntityDbMetadata.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntityDbMetadata.test.js","sourceRoot":"","sources":["../src/EntityDbMetadata.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=codemod_0003-rename_find_paginated.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codemod_0003-rename_find_paginated.test.d.ts","sourceRoot":"","sources":["../../../src/codemods/__tests__/codemod_0003-rename_find_paginated.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const testUtils_1 = require("jscodeshift/src/testUtils");
4
+ describe("codemod_0003-rename_find_paginated", () => {
5
+ (0, testUtils_1.defineTest)(__dirname, "codemod_0003-rename_find_paginated", null, "codemod_0003-rename_find_paginated", {
6
+ parser: "ts",
7
+ });
8
+ });
9
+ //# sourceMappingURL=codemod_0003-rename_find_paginated.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codemod_0003-rename_find_paginated.test.js","sourceRoot":"","sources":["../../../src/codemods/__tests__/codemod_0003-rename_find_paginated.test.ts"],"names":[],"mappings":";;AAAA,yDAAuD;AAEvD,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAClD,IAAA,sBAAU,EAAC,SAAS,EAAE,oCAAoC,EAAE,IAAI,EAAE,oCAAoC,EAAE;QACtG,MAAM,EAAE,IAAI;KACb,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type Transform } from "jscodeshift";
2
+ import { JscodeshiftMod } from "./JscodeshiftMod";
3
+ export declare const codemod_0003_rename_find_paginated: JscodeshiftMod;
4
+ /** Rewrites EntityManager paginated find method calls to the now-paginated find APIs. */
5
+ declare const transform: Transform;
6
+ export default transform;
7
+ //# sourceMappingURL=codemod_0003-rename_find_paginated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codemod_0003-rename_find_paginated.d.ts","sourceRoot":"","sources":["../../src/codemods/codemod_0003-rename_find_paginated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,eAAO,MAAM,kCAAkC,gBAI9C,CAAC;AAOF,yFAAyF;AACzF,QAAA,MAAM,SAAS,EAAE,SAgBhB,CAAC;AAEF,eAAe,SAAS,CAAC"}