joist-graphql-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 (47) hide show
  1. package/build/generateGraphqlCodegen.d.ts.map +1 -1
  2. package/build/generateGraphqlCodegen.js +8 -0
  3. package/build/generateGraphqlCodegen.js.map +1 -1
  4. package/build/generateGraphqlCodegen.test.js +20 -7
  5. package/build/generateGraphqlCodegen.test.js.map +1 -1
  6. package/build/generateGraphqlSchemaFiles.d.ts +2 -2
  7. package/build/generateGraphqlSchemaFiles.d.ts.map +1 -1
  8. package/build/generateGraphqlSchemaFiles.js +115 -17
  9. package/build/generateGraphqlSchemaFiles.js.map +1 -1
  10. package/build/generateGraphqlSchemaFiles.test.js +705 -196
  11. package/build/generateGraphqlSchemaFiles.test.js.map +1 -1
  12. package/build/generateQueryPageResolvers.d.ts +5 -0
  13. package/build/generateQueryPageResolvers.d.ts.map +1 -0
  14. package/build/generateQueryPageResolvers.js +52 -0
  15. package/build/generateQueryPageResolvers.js.map +1 -0
  16. package/build/generateQueryPageResolvers.test.d.ts +2 -0
  17. package/build/generateQueryPageResolvers.test.d.ts.map +1 -0
  18. package/build/generateQueryPageResolvers.test.js +46 -0
  19. package/build/generateQueryPageResolvers.test.js.map +1 -0
  20. package/build/generateQueryResolvers.d.ts.map +1 -1
  21. package/build/generateQueryResolvers.js +5 -4
  22. package/build/generateQueryResolvers.js.map +1 -1
  23. package/build/generateQueryResolvers.test.js +6 -2
  24. package/build/generateQueryResolvers.test.js.map +1 -1
  25. package/build/generateResolverUtils.d.ts +5 -0
  26. package/build/generateResolverUtils.d.ts.map +1 -0
  27. package/build/generateResolverUtils.js +36 -0
  28. package/build/generateResolverUtils.js.map +1 -0
  29. package/build/generateResolverUtils.test.d.ts +2 -0
  30. package/build/generateResolverUtils.test.d.ts.map +1 -0
  31. package/build/generateResolverUtils.test.js +53 -0
  32. package/build/generateResolverUtils.test.js.map +1 -0
  33. package/build/graphqlUtils.d.ts +1 -1
  34. package/build/graphqlUtils.d.ts.map +1 -1
  35. package/build/graphqlUtils.js +39 -16
  36. package/build/graphqlUtils.js.map +1 -1
  37. package/build/history.d.ts.map +1 -1
  38. package/build/history.js +3 -2
  39. package/build/history.js.map +1 -1
  40. package/build/index.d.ts.map +1 -1
  41. package/build/index.js +7 -3
  42. package/build/index.js.map +1 -1
  43. package/build/testUtils.d.ts +11 -1
  44. package/build/testUtils.d.ts.map +1 -1
  45. package/build/testUtils.js +21 -0
  46. package/build/testUtils.js.map +1 -1
  47. package/package.json +10 -10
@@ -1 +1 @@
1
- {"version":3,"file":"generateGraphqlCodegen.d.ts","sourceRoot":"","sources":["../src/generateGraphqlCodegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,WAAW,EAAQ,MAAM,SAAS,CAAC;AAG5C,wHAAwH;AACxH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,YAAY,GAAG,WAAW,CAoCrH"}
1
+ {"version":3,"file":"generateGraphqlCodegen.d.ts","sourceRoot":"","sources":["../src/generateGraphqlCodegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,WAAW,EAAQ,MAAM,SAAS,CAAC;AAG5C,wHAAwH;AACxH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,YAAY,GAAG,WAAW,CA6CrH"}
@@ -6,11 +6,17 @@ const utils_1 = require("./utils");
6
6
  /** Generates a `graphql-codegen-joist.js` (or .mjs for ESM) with the auto-generated mapped type/enum value settings. */
7
7
  function generateGraphqlCodegen(config, entities, enums) {
8
8
  const enumNames = Object.values(enums).map(({ name }) => name);
9
+ const pgEnumNames = Array.from(new Set(entities.flatMap(({ pgEnums }) => pgEnums.map(({ enumName }) => enumName))));
9
10
  // Combine the entity mapped types and enum detail mapped types
10
11
  const entitiesMapperImportPath = (0, utils_1.getEntitiesImportPath)(config).replace(/\.ts$/, ""); // Keep compatibility with the expected mapper format (no file extension)
12
+ const pageInfoMapperPath = config.esm ? "joist-graphql-resolver-utils/index" : "joist-graphql-resolver-utils";
13
+ const pageInfoMapper = (config.paginationStyle ?? "cursor") === "limit"
14
+ ? `${pageInfoMapperPath}#LimitPageInfo`
15
+ : `${pageInfoMapperPath}#CursorPageInfo`;
11
16
  const mappedTypes = sortObject(Object.fromEntries([
12
17
  ...entities.map(({ entity }) => [entity.name, `${entitiesMapperImportPath}#${entity.name}`]),
13
18
  ...enumNames.map((name) => [`${name}Detail`, `${entitiesMapperImportPath}#${name}`]),
19
+ ["PageInfo", pageInfoMapper],
14
20
  ]));
15
21
  const contents = config.esm
16
22
  ? (0, ts_poet_1.code) `
@@ -20,6 +26,7 @@ function generateGraphqlCodegen(config, entities, enums) {
20
26
 
21
27
  export const enumValues = {
22
28
  ${enumNames.map((name) => `${name}: "${entitiesMapperImportPath}#${name}",`)}
29
+ ${pgEnumNames.map((name) => `${name}: "${entitiesMapperImportPath}#${name}",`)}
23
30
  };
24
31
  `
25
32
  : (0, ts_poet_1.code) `
@@ -29,6 +36,7 @@ function generateGraphqlCodegen(config, entities, enums) {
29
36
 
30
37
  const enumValues = {
31
38
  ${enumNames.map((name) => `${name}: "${entitiesMapperImportPath}#${name}",`)}
39
+ ${pgEnumNames.map((name) => `${name}: "${entitiesMapperImportPath}#${name}",`)}
32
40
  };
33
41
 
34
42
  module.exports = { mappers, enumValues };
@@ -1 +1 @@
1
- {"version":3,"file":"generateGraphqlCodegen.js","sourceRoot":"","sources":["../src/generateGraphqlCodegen.ts"],"names":[],"mappings":";;AAKA,wDAoCC;AAxCD,qCAA4C;AAC5C,mCAAgD;AAEhD,wHAAwH;AACxH,SAAgB,sBAAsB,CAAC,MAAc,EAAE,QAA4B,EAAE,KAAmB;IACtG,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAE/D,+DAA+D;IAC/D,MAAM,wBAAwB,GAAG,IAAA,6BAAqB,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,yEAAyE;IAC9J,MAAM,WAAW,GAAG,UAAU,CAC5B,MAAM,CAAC,WAAW,CAAC;QACjB,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,wBAAwB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5F,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,QAAQ,EAAE,GAAG,wBAAwB,IAAI,IAAI,EAAE,CAAC,CAAC;KACrF,CAAC,CACH,CAAC;IAEF,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG;QACzB,CAAC,CAAC,IAAA,cAAI,EAAA;;YAEE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,KAAK,IAAI,CAAC;;;;YAIxE,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,MAAM,wBAAwB,IAAI,IAAI,IAAI,CAAC;;OAE/E;QACH,CAAC,CAAC,IAAA,cAAI,EAAA;;YAEE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,KAAK,IAAI,CAAC;;;;YAIxE,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,MAAM,wBAAwB,IAAI,IAAI,IAAI,CAAC;;;;OAI/E,CAAC;IAEN,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IACtC,OAAO,EAAE,IAAI,EAAE,+BAA+B,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACnF,CAAC;AAED,SAAS,UAAU,CAAmB,GAAM;IAC1C,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SACpB,IAAI,EAAE;SACN,MAAM,CACL,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACX,GAAG,CAAC,GAAc,CAAC,GAAG,GAAG,CAAC,GAAc,CAAC,CAAC;QAC1C,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAc,CACV,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"generateGraphqlCodegen.js","sourceRoot":"","sources":["../src/generateGraphqlCodegen.ts"],"names":[],"mappings":"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"}
@@ -7,12 +7,25 @@ describe("generateGraphqlCodegen", () => {
7
7
  const enums = {};
8
8
  const file = (0, generateGraphqlCodegen_1.generateGraphqlCodegen)({}, entities, enums);
9
9
  expect(file.contents.toString()).toMatchInlineSnapshot(`
10
- "const mappers = {};
10
+ "const mappers = { PageInfo: "joist-graphql-resolver-utils#CursorPageInfo" };
11
11
 
12
- const enumValues = {};
12
+ const enumValues = {};
13
13
 
14
- module.exports = { mappers, enumValues };
15
- "
14
+ module.exports = { mappers, enumValues };
15
+ "
16
+ `);
17
+ });
18
+ it("maps postgres enums to entity enums", async () => {
19
+ const entities = [{ entity: { name: "Author" }, pgEnums: [{ enumName: "FavoriteShape" }] }];
20
+ const enums = {};
21
+ const file = (0, generateGraphqlCodegen_1.generateGraphqlCodegen)({}, entities, enums);
22
+ expect(file.contents.toString()).toMatchInlineSnapshot(`
23
+ "const mappers = { Author: "src/entities#Author", PageInfo: "joist-graphql-resolver-utils#CursorPageInfo" };
24
+
25
+ const enumValues = { FavoriteShape: "src/entities#FavoriteShape" };
26
+
27
+ module.exports = { mappers, enumValues };
28
+ "
16
29
  `);
17
30
  });
18
31
  it("creates an mjs file when esm is true", async () => {
@@ -21,10 +34,10 @@ describe("generateGraphqlCodegen", () => {
21
34
  const file = (0, generateGraphqlCodegen_1.generateGraphqlCodegen)({ esm: true }, entities, enums);
22
35
  expect(file.name).toBe("../../graphql-codegen-joist.mjs");
23
36
  expect(file.contents.toString()).toMatchInlineSnapshot(`
24
- "export const mappers = {};
37
+ "export const mappers = { PageInfo: "joist-graphql-resolver-utils/index#CursorPageInfo" };
25
38
 
26
- export const enumValues = {};
27
- "
39
+ export const enumValues = {};
40
+ "
28
41
  `);
29
42
  });
30
43
  });
@@ -1 +1 @@
1
- {"version":3,"file":"generateGraphqlCodegen.test.js","sourceRoot":"","sources":["../src/generateGraphqlCodegen.test.ts"],"names":[],"mappings":";;AAEA,qEAAkE;AAElE,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,QAAQ,GAAuB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,EAAY,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnE,MAAM,CAAE,IAAI,CAAC,QAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;;;KAOhE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,QAAQ,GAAuB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAY,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC1D,MAAM,CAAE,IAAI,CAAC,QAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;KAKhE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"generateGraphqlCodegen.test.js","sourceRoot":"","sources":["../src/generateGraphqlCodegen.test.ts"],"names":[],"mappings":";;AAEA,qEAAkE;AAElE,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACtC,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC7C,MAAM,QAAQ,GAAuB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,EAAY,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnE,MAAM,CAAE,IAAI,CAAC,QAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;;;KAOhE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,QAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,EAAE,CAAuB,CAAC;QAClH,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,EAAY,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnE,MAAM,CAAE,IAAI,CAAC,QAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;;;KAOhE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,QAAQ,GAAuB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAA,+CAAsB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAY,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC1D,MAAM,CAAE,IAAI,CAAC,QAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,qBAAqB,CAAC;;;;;KAKhE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { DbMetadata } from "joist-codegen";
1
+ import { Config, DbMetadata } from "joist-codegen";
2
2
  import { Fs } from "./utils";
3
3
  /**
4
4
  * Generates `*.graphql` files based on the database schema.
@@ -8,5 +8,5 @@ import { Fs } from "./utils";
8
8
  * and will only do them once, which allows programmers to manually add/edit/remove fields
9
9
  * without this stomping over their changes.
10
10
  */
11
- export declare function generateGraphqlSchemaFiles(fs: Fs, dbMeta: DbMetadata): Promise<void>;
11
+ export declare function generateGraphqlSchemaFiles(config: Config, fs: Fs, dbMeta: DbMetadata): Promise<void>;
12
12
  //# sourceMappingURL=generateGraphqlSchemaFiles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateGraphqlSchemaFiles.d.ts","sourceRoot":"","sources":["../src/generateGraphqlSchemaFiles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAoB,MAAM,eAAe,CAAC;AAK7D,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE7B;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAgD1F"}
1
+ {"version":3,"file":"generateGraphqlSchemaFiles.d.ts","sourceRoot":"","sources":["../src/generateGraphqlSchemaFiles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAoB,MAAM,eAAe,CAAC;AAKrE,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE7B;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAiD1G"}
@@ -17,14 +17,15 @@ const history_1 = require("./history");
17
17
  * and will only do them once, which allows programmers to manually add/edit/remove fields
18
18
  * without this stomping over their changes.
19
19
  */
20
- async function generateGraphqlSchemaFiles(fs, dbMeta) {
20
+ async function generateGraphqlSchemaFiles(config, fs, dbMeta) {
21
21
  const { entities } = dbMeta;
22
22
  // Generate the "ideal" fields based solely on the domain model
23
23
  const fields = [
24
- // Going to roll this out in a follow up PR...
25
- // ...createQueryFields(entities),
24
+ ...createPageInfoFields(config),
25
+ ...createQueryFields(config, entities),
26
26
  ...createSaveMutation(entities),
27
27
  ...createEntityFields(dbMeta),
28
+ ...createFilterFields(dbMeta),
28
29
  ...createSaveEntityInputFields(dbMeta),
29
30
  ...createSaveEntityResultFields(entities),
30
31
  ];
@@ -61,6 +62,29 @@ async function generateGraphqlSchemaFiles(fs, dbMeta) {
61
62
  });
62
63
  await (0, history_1.writeHistory)(fs, history);
63
64
  }
65
+ /** Makes the project's pagination metadata type. */
66
+ function createPageInfoFields(config) {
67
+ const common = { file: "pageInfo.graphql", objectType: "output", objectName: "PageInfo" };
68
+ const shared = [
69
+ { ...common, fieldName: "hasNextPage", fieldType: "Boolean!" },
70
+ { ...common, fieldName: "hasPreviousPage", fieldType: "Boolean!" },
71
+ { ...common, fieldName: "totalCount", fieldType: "Int!" },
72
+ ];
73
+ // Joist assumes each project uses either cursor or limit pagination, so the public GraphQL type is
74
+ // always named `PageInfo` but contains the fields for the configured pagination style.
75
+ if ((config.paginationStyle ?? "cursor") === "limit") {
76
+ return [
77
+ ...shared,
78
+ { ...common, fieldName: "nextPage", fieldType: "Int" },
79
+ { ...common, fieldName: "currentPage", fieldType: "Int" },
80
+ ];
81
+ }
82
+ return [
83
+ ...shared,
84
+ { ...common, fieldName: "startCursor", fieldType: "String" },
85
+ { ...common, fieldName: "endCursor", fieldType: "String" },
86
+ ];
87
+ }
64
88
  /** Make all the fields for `type Author`, `type Book`, etc. */
65
89
  function createPolymorphicUnions(entities) {
66
90
  return entities.flatMap((e) => {
@@ -79,11 +103,10 @@ function createEntityFields(dbMeta) {
79
103
  const objectName = e.entity.name;
80
104
  const common = { file, objectType, objectName };
81
105
  const id = { ...common, fieldName: "id", fieldType: "ID!" };
82
- const primitives = e.primitives.flatMap(({ fieldName, fieldType: tsType, notNull }) => {
83
- const gqlType = (0, graphqlUtils_1.mapTypescriptTypeToGraphQLType)(fieldName, tsType);
84
- if (!gqlType)
106
+ const primitives = e.primitives.flatMap(({ fieldName, fieldType: tsType, isArray, notNull }) => {
107
+ const fieldType = primitiveFieldType(fieldName, tsType, isArray, notNull);
108
+ if (!fieldType)
85
109
  return [];
86
- const fieldType = `${gqlType}${maybeRequired(notNull)}`;
87
110
  return [{ ...common, fieldName, fieldType }];
88
111
  });
89
112
  const enums = e.enums.map(({ fieldName, enumType, notNull, isArray }) => {
@@ -141,16 +164,24 @@ function createSaveMutation(entities) {
141
164
  });
142
165
  }
143
166
  /** Makes the `Query.${entity}` and `Query.${entity}s` placeholders. */
144
- function createQueryFields(entities) {
167
+ function createQueryFields(config, entities) {
145
168
  return entities.flatMap((e) => {
146
169
  const file = fileName(e);
170
+ const { name } = e.entity;
171
+ const pluralName = (0, pluralize_1.default)(name);
172
+ const camelName = (0, change_case_1.camelCase)(name);
173
+ const pluralCamelName = (0, pluralize_1.default)(camelName);
174
+ const collectionType = (config.paginationStyle ?? "cursor") === "limit" ? `${pluralName}Page!` : `${pluralName}Connection!`;
175
+ const collectionArgs = (config.paginationStyle ?? "cursor") === "limit"
176
+ ? `filter: ${name}Filter, limit: Int, offset: Int`
177
+ : `filter: ${name}Filter, first: Int, after: String, last: Int, before: String`;
147
178
  return [
148
179
  {
149
180
  file,
150
181
  objectType: "output",
151
182
  objectName: "Query",
152
- fieldName: (0, change_case_1.camelCase)(e.entity.name),
153
- fieldType: `${e.entity.name}!`,
183
+ fieldName: camelName,
184
+ fieldType: `${name}!`,
154
185
  argsString: `id: ID!`,
155
186
  extends: true,
156
187
  },
@@ -158,14 +189,70 @@ function createQueryFields(entities) {
158
189
  file,
159
190
  objectType: "output",
160
191
  objectName: "Query",
161
- fieldName: (0, pluralize_1.default)((0, change_case_1.camelCase)(e.entity.name)),
162
- fieldType: `[${e.entity.name}!]!`,
163
- argsString: `filter: ${e.entity.name}Filter!`,
192
+ fieldName: pluralCamelName,
193
+ fieldType: collectionType,
194
+ argsString: collectionArgs,
164
195
  extends: true,
165
196
  },
197
+ ...createPaginationTypes(config, file, e),
166
198
  ];
167
199
  });
168
200
  }
201
+ /** Makes the `AuthorFilter`, `BookFilter`, etc. input types. */
202
+ function createFilterFields(dbMeta) {
203
+ const { entities } = dbMeta;
204
+ return entities.flatMap((e) => {
205
+ const file = fileName(e);
206
+ const objectType = "input";
207
+ const objectName = `${e.entity.name}Filter`;
208
+ const common = { file, objectType, objectName };
209
+ const id = { ...common, fieldName: "id", fieldType: filterListType("ID") };
210
+ const primitives = e.primitives.flatMap(({ fieldName, fieldType: tsType, isArray }) => {
211
+ const fieldType = primitiveFieldType(fieldName, tsType, isArray);
212
+ if (!fieldType)
213
+ return [];
214
+ return [{ ...common, fieldName, fieldType: filterListType(fieldType) }];
215
+ });
216
+ const enums = e.enums.map(({ fieldName, enumType, isArray }) => {
217
+ const fieldType = isArray ? `[${enumType.symbol}!]` : enumType.symbol;
218
+ return { ...common, fieldName, fieldType: filterListType(fieldType) };
219
+ });
220
+ const pgEnums = e.pgEnums.map(({ fieldName, enumType }) => {
221
+ return { ...common, fieldName, fieldType: filterListType(enumType.symbol) };
222
+ });
223
+ const m2os = e.manyToOnes.map(({ fieldName }) => {
224
+ return { ...common, fieldName: `${fieldName}Id`, fieldType: filterListType("ID") };
225
+ });
226
+ const polys = e.polymorphics.map(({ fieldName }) => {
227
+ return { ...common, fieldName: `${fieldName}Id`, fieldType: filterListType("ID") };
228
+ });
229
+ const inherited = e.baseClassName
230
+ ? createFilterFields(findBaseEntity(dbMeta, e.baseClassName))
231
+ .map((f) => ({ ...f, ...common }))
232
+ .filter((f) => f.fieldName !== "id")
233
+ : [];
234
+ return [id, ...inherited, ...primitives, ...enums, ...pgEnums, ...m2os, ...polys];
235
+ });
236
+ }
237
+ /** Makes the page/connection types for `Query.authors`. */
238
+ function createPaginationTypes(config, file, e) {
239
+ const { name } = e.entity;
240
+ const pluralName = (0, pluralize_1.default)(name);
241
+ const objectType = "output";
242
+ if ((config.paginationStyle ?? "cursor") === "limit") {
243
+ return [
244
+ { file, objectType, objectName: `${pluralName}Page`, fieldName: "entities", fieldType: `[${name}!]!` },
245
+ { file, objectType, objectName: `${pluralName}Page`, fieldName: "pageInfo", fieldType: "PageInfo!" },
246
+ ];
247
+ }
248
+ return [
249
+ { file, objectType, objectName: `${pluralName}Connection`, fieldName: "edges", fieldType: `[${pluralName}Edge!]!` },
250
+ { file, objectType, objectName: `${pluralName}Connection`, fieldName: "nodes", fieldType: `[${name}!]!` },
251
+ { file, objectType, objectName: `${pluralName}Connection`, fieldName: "pageInfo", fieldType: "PageInfo!" },
252
+ { file, objectType, objectName: `${pluralName}Edge`, fieldName: "node", fieldType: `${name}!` },
253
+ { file, objectType, objectName: `${pluralName}Edge`, fieldName: "cursor", fieldType: "String!" },
254
+ ];
255
+ }
169
256
  /** Make all the fields for `type SaveAuthorInput`, `type SaveBookBook`, etc. */
170
257
  function createSaveEntityInputFields(dbMeta) {
171
258
  const { entities } = dbMeta;
@@ -177,11 +264,10 @@ function createSaveEntityInputFields(dbMeta) {
177
264
  const id = { ...common, fieldName: "id", fieldType: "ID" };
178
265
  const primitives = e.primitives
179
266
  .filter((f) => f.derived === false)
180
- .flatMap(({ fieldName, fieldType: tsType }) => {
181
- const gqlType = (0, graphqlUtils_1.mapTypescriptTypeToGraphQLType)(fieldName, tsType);
182
- if (!gqlType)
267
+ .flatMap(({ fieldName, fieldType: tsType, isArray }) => {
268
+ const fieldType = primitiveFieldType(fieldName, tsType, isArray);
269
+ if (!fieldType)
183
270
  return [];
184
- const fieldType = `${gqlType}`;
185
271
  return [{ ...common, fieldName, fieldType }];
186
272
  });
187
273
  const enums = e.enums.map(({ fieldName, enumType, isArray }) => {
@@ -219,6 +305,18 @@ function createSaveEntityResultFields(entities) {
219
305
  function maybeRequired(notNull) {
220
306
  return notNull ? "!" : "";
221
307
  }
308
+ /** Returns the GraphQL type for primitive fields, including primitive arrays. */
309
+ function primitiveFieldType(fieldName, tsType, isArray, notNull = false) {
310
+ const gqlType = (0, graphqlUtils_1.mapTypescriptTypeToGraphQLType)(fieldName, tsType);
311
+ if (!gqlType)
312
+ return undefined;
313
+ const fieldType = isArray ? `[${gqlType}!]` : gqlType;
314
+ return `${fieldType}${maybeRequired(notNull)}`;
315
+ }
316
+ /** Wraps filter fields in lists so GraphQL callers can pass one value or OR several values. */
317
+ function filterListType(fieldType) {
318
+ return `[${fieldType}!]`;
319
+ }
222
320
  /** I.e. `Book` --> `books.graphql`. */
223
321
  function fileName(e) {
224
322
  return `${(0, change_case_1.camelCase)(e.entity.name)}.graphql`;
@@ -1 +1 @@
1
- {"version":3,"file":"generateGraphqlSchemaFiles.js","sourceRoot":"","sources":["../src/generateGraphqlSchemaFiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateGraphqlSchemaFiles.js","sourceRoot":"","sources":["../src/generateGraphqlSchemaFiles.ts"],"names":[],"mappings":"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"}