joist-graphql-codegen 1.4.2 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/generateGraphqlCodegen.js +1 -1
- package/build/generateGraphqlCodegen.js.map +1 -1
- package/build/generateObjectResolvers.js +6 -3
- package/build/generateObjectResolvers.js.map +1 -1
- package/build/generateSaveResolvers.js +5 -8
- package/build/generateSaveResolvers.js.map +1 -1
- package/package.json +3 -3
|
@@ -7,7 +7,7 @@ function generateGraphqlCodegen(entities, enums) {
|
|
|
7
7
|
const enumNames = Object.values(enums).map(({ name }) => name);
|
|
8
8
|
// Combine the entity mapped types and enum detail mapped types
|
|
9
9
|
const mappedTypes = sortObject(Object.fromEntries([
|
|
10
|
-
...entities.map(({ entity }) => [entity.name, `src/entities#${entity.
|
|
10
|
+
...entities.map(({ entity }) => [entity.name, `src/entities#${entity.name}`]),
|
|
11
11
|
...enumNames.map((name) => [`${name}Detail`, `src/entities#${name}`]),
|
|
12
12
|
]));
|
|
13
13
|
const contents = (0, ts_poet_1.code) `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateGraphqlCodegen.js","sourceRoot":"","sources":["../src/generateGraphqlCodegen.ts"],"names":[],"mappings":";;;AACA,qCAA+B;AAE/B,sGAAsG;AACtG,SAAgB,sBAAsB,CAAC,QAA4B,EAAE,KAAmB;IACtF,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,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,gBAAgB,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"generateGraphqlCodegen.js","sourceRoot":"","sources":["../src/generateGraphqlCodegen.ts"],"names":[],"mappings":";;;AACA,qCAA+B;AAE/B,sGAAsG;AACtG,SAAgB,sBAAsB,CAAC,QAA4B,EAAE,KAAmB;IACtF,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,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,gBAAgB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7E,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,QAAQ,EAAE,gBAAgB,IAAI,EAAE,CAAC,CAAC;KACtE,CAAC,CACH,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAA,cAAI,EAAA;;QAEf,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,KAAK,IAAI,CAAC;;;;QAIxE,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,mBAAmB,IAAI,IAAI,CAAC;;;;GAIhE,CAAC;IAEF,OAAO,EAAE,IAAI,EAAE,gCAAgC,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC/E,CAAC;AAxBD,wDAwBC;AAED,SAAS,UAAU,CAAmB,GAAM;IAC1C,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;SACpB,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACnB,GAAG,CAAC,GAAc,CAAC,GAAG,GAAG,CAAC,GAAc,CAAC,CAAC;QAC1C,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAc,CAAM,CAAC;AAC5B,CAAC"}
|
|
@@ -6,6 +6,7 @@ const ts_poet_1 = require("ts-poet");
|
|
|
6
6
|
const getMetadata = (0, ts_poet_1.imp)("getMetadata@joist-orm");
|
|
7
7
|
const entityResolver = (0, ts_poet_1.imp)("entityResolver@src/resolvers/entityResolver");
|
|
8
8
|
const makeRunResolverKeys = (0, ts_poet_1.imp)("makeRunResolverKeys@src/resolvers/testUtils");
|
|
9
|
+
const makeRunResolver = (0, ts_poet_1.imp)("makeRunResolver@src/resolvers/testUtils");
|
|
9
10
|
/**
|
|
10
11
|
* Generates a base resolver using the entityResolver utility.
|
|
11
12
|
*
|
|
@@ -36,6 +37,7 @@ function generateObjectResolvers(config, entities) {
|
|
|
36
37
|
const resolverType = (0, ts_poet_1.imp)(`${name}Resolvers@src/generated/graphql-types`);
|
|
37
38
|
const resolverConst = (0, ts_poet_1.imp)(`${camelName}Resolvers@src/resolvers/objects/${camelName}/${camelName}Resolvers`);
|
|
38
39
|
const tagName = config.entities[name].tag || "entity";
|
|
40
|
+
const keys = e.primitives.map((field) => `"${field.fieldName}"`).join(", ");
|
|
39
41
|
const contents = (0, ts_poet_1.code) `
|
|
40
42
|
describe("${camelName}Resolvers", () => {
|
|
41
43
|
it.withCtx("can return", async (ctx) => {
|
|
@@ -43,12 +45,13 @@ function generateObjectResolvers(config, entities) {
|
|
|
43
45
|
// Given a ${(0, change_case_1.sentenceCase)(name)}
|
|
44
46
|
const ${tagName} = ${factory}(em);
|
|
45
47
|
// Then we can query it
|
|
46
|
-
const result = await run${name}(ctx, ${tagName}, []);
|
|
47
|
-
expect(
|
|
48
|
+
const result = await run${name}Keys(ctx, ${tagName}, [${keys}]);
|
|
49
|
+
expect(${tagName}).toMatchObject(result);
|
|
48
50
|
});
|
|
49
51
|
});
|
|
50
52
|
|
|
51
|
-
const run${name} = ${makeRunResolverKeys}
|
|
53
|
+
const run${name}Keys = ${makeRunResolverKeys}(${resolverConst});
|
|
54
|
+
const run${name} = ${makeRunResolver}(${resolverConst});
|
|
52
55
|
`;
|
|
53
56
|
return { name: `resolvers/objects/${camelName}/${camelName}Resolvers.test.ts`, overwrite: false, contents };
|
|
54
57
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateObjectResolvers.js","sourceRoot":"","sources":["../src/generateObjectResolvers.ts"],"names":[],"mappings":";;;AAAA,6CAAsD;AAEtD,qCAAoC;AAEpC,MAAM,WAAW,GAAG,IAAA,aAAG,EAAC,uBAAuB,CAAC,CAAC;AACjD,MAAM,cAAc,GAAG,IAAA,aAAG,EAAC,6CAA6C,CAAC,CAAC;AAC1E,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC,6CAA6C,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"generateObjectResolvers.js","sourceRoot":"","sources":["../src/generateObjectResolvers.ts"],"names":[],"mappings":";;;AAAA,6CAAsD;AAEtD,qCAAoC;AAEpC,MAAM,WAAW,GAAG,IAAA,aAAG,EAAC,uBAAuB,CAAC,CAAC;AACjD,MAAM,cAAc,GAAG,IAAA,aAAG,EAAC,6CAA6C,CAAC,CAAC;AAC1E,MAAM,mBAAmB,GAAG,IAAA,aAAG,EAAC,6CAA6C,CAAC,CAAC;AAC/E,MAAM,eAAe,GAAG,IAAA,aAAG,EAAC,yCAAyC,CAAC,CAAC;AAEvE;;;;;;;;;GASG;AACH,SAAgB,uBAAuB,CAAC,MAAc,EAAE,QAA4B;IAClF,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,MAAM,SAAS,GAAG,IAAA,uBAAS,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,IAAA,aAAG,EAAC,GAAG,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC;QAC3C,MAAM,YAAY,GAAG,IAAA,aAAG,EAAC,GAAG,CAAC,CAAC,IAAI,uCAAuC,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAG,IAAA,cAAI,EAAA;qBACJ,SAAS,cAAc,YAAY;aAC3C,cAAc,IAAI,WAAW,IAAI,IAAI;;KAE7C,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,qBAAqB,SAAS,IAAI,SAAS,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACzG,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACnB,MAAM,SAAS,GAAG,IAAA,uBAAS,EAAC,IAAI,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,MAAM,IAAI,eAAe,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,IAAA,aAAG,EAAC,GAAG,IAAI,iBAAiB,CAAC,CAAC;QAC7C,MAAM,YAAY,GAAG,IAAA,aAAG,EAAC,GAAG,IAAI,uCAAuC,CAAC,CAAC;QACzE,MAAM,aAAa,GAAG,IAAA,aAAG,EAAC,GAAG,SAAS,mCAAmC,SAAS,IAAI,SAAS,WAAW,CAAC,CAAC;QAE5G,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC;QAEtD,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE5E,MAAM,QAAQ,GAAG,IAAA,cAAI,EAAA;kBACP,SAAS;;;uBAGJ,IAAA,0BAAY,EAAC,IAAI,CAAC;kBACvB,OAAO,MAAM,OAAO;;oCAEF,IAAI,aAAa,OAAO,MAAM,IAAI;mBACnD,OAAO;;;;iBAIT,IAAI,UAAU,mBAAmB,IAAI,aAAa;iBAClD,IAAI,MAAM,eAAe,IAAI,aAAa;KACtD,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,qBAAqB,SAAS,IAAI,SAAS,mBAAmB,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC9G,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC;AACtC,CAAC;AA5CD,0DA4CC"}
|
|
@@ -4,7 +4,7 @@ exports.generateSaveResolvers = void 0;
|
|
|
4
4
|
const change_case_1 = require("change-case");
|
|
5
5
|
const ts_poet_1 = require("ts-poet");
|
|
6
6
|
const context = (0, ts_poet_1.imp)("Context@src/context");
|
|
7
|
-
const
|
|
7
|
+
const saveEntity = (0, ts_poet_1.imp)("saveEntity@src/resolvers/mutations/utils");
|
|
8
8
|
const mutationResolvers = (0, ts_poet_1.imp)("MutationResolvers@src/generated/graphql-types");
|
|
9
9
|
const run = (0, ts_poet_1.imp)("run@src/resolvers/testUtils");
|
|
10
10
|
/**
|
|
@@ -25,8 +25,7 @@ function generateSaveResolvers(config, entities) {
|
|
|
25
25
|
const contents = (0, ts_poet_1.code) `
|
|
26
26
|
export const save${name}: Pick<${mutationResolvers}, "save${name}"> = {
|
|
27
27
|
async save${name}(root, args, ctx) {
|
|
28
|
-
|
|
29
|
-
return { ${camelName}: id };
|
|
28
|
+
return { ${camelName}: await ${saveEntity}(ctx, ${type}, args.input) };
|
|
30
29
|
},
|
|
31
30
|
};
|
|
32
31
|
`;
|
|
@@ -46,14 +45,12 @@ function generateSaveResolvers(config, entities) {
|
|
|
46
45
|
it.withCtx("can create", async (ctx) => {
|
|
47
46
|
const { em } = ctx;
|
|
48
47
|
const result = await runSave${name}(ctx, () => ({}));
|
|
49
|
-
|
|
48
|
+
expect(result).toBeDefined()
|
|
50
49
|
});
|
|
51
50
|
});
|
|
52
51
|
|
|
53
|
-
|
|
54
|
-
return
|
|
55
|
-
return ${resolverConst}.save${name}({}, { input: inputFn() }, ctx, undefined!);
|
|
56
|
-
});
|
|
52
|
+
function runSave${name}(ctx: ${context}, inputFn: () => ${inputType}) {
|
|
53
|
+
return ${run}(ctx, (ctx) => ${resolverConst}.save${name}({}, { input: inputFn() }, ctx, undefined!));
|
|
57
54
|
}
|
|
58
55
|
`;
|
|
59
56
|
return { name: `resolvers/mutations/${camelName}/save${name}Resolver.test.ts`, overwrite: false, contents };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateSaveResolvers.js","sourceRoot":"","sources":["../src/generateSaveResolvers.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,qCAAoC;AAEpC,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,qBAAqB,CAAC,CAAC;AAC3C,MAAM,
|
|
1
|
+
{"version":3,"file":"generateSaveResolvers.js","sourceRoot":"","sources":["../src/generateSaveResolvers.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,qCAAoC;AAEpC,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,qBAAqB,CAAC,CAAC;AAC3C,MAAM,UAAU,GAAG,IAAA,aAAG,EAAC,0CAA0C,CAAC,CAAC;AACnE,MAAM,iBAAiB,GAAG,IAAA,aAAG,EAAC,+CAA+C,CAAC,CAAC;AAC/E,MAAM,GAAG,GAAG,IAAA,aAAG,EAAC,6BAA6B,CAAC,CAAC;AAE/C;;;;;;;;;GASG;AACH,SAAgB,qBAAqB,CAAC,MAAc,EAAE,QAA4B;IAChF,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACnB,MAAM,SAAS,GAAG,IAAA,uBAAS,EAAC,IAAI,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,IAAA,aAAG,EAAC,GAAG,IAAI,eAAe,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAA,cAAI,EAAA;yBACA,IAAI,UAAU,iBAAiB,UAAU,IAAI;oBAClD,IAAI;qBACH,SAAS,WAAW,UAAU,SAAS,IAAI;;;KAG3D,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,uBAAuB,SAAS,QAAQ,IAAI,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACzG,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACnB,MAAM,SAAS,GAAG,IAAA,uBAAS,EAAC,IAAI,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,IAAA,aAAG,EAAC,GAAG,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,IAAA,aAAG,EAAC,OAAO,IAAI,mCAAmC,CAAC,CAAC;QACtE,MAAM,aAAa,GAAG,IAAA,aAAG,EAAC,OAAO,IAAI,4BAA4B,SAAS,QAAQ,IAAI,UAAU,CAAC,CAAC;QAClG,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,QAAQ,CAAC;QAEtD,MAAM,QAAQ,GAAG,IAAA,cAAI,EAAA;;;sBAGH,IAAI;;;wCAGc,IAAI;;;;;wBAKpB,IAAI,SAAS,OAAO,oBAAoB,SAAS;iBACxD,GAAG,kBAAkB,aAAa,QAAQ,IAAI;;KAE1D,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,uBAAuB,SAAS,QAAQ,IAAI,kBAAkB,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC9G,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,SAAS,EAAE,GAAG,SAAS,CAAC,CAAC;AACtC,CAAC;AA1CD,sDA0CC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "joist-graphql-codegen",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
"change-case": "^4.1.1",
|
|
20
20
|
"graphql": "^15.3.0",
|
|
21
21
|
"is-plain-object": "^3.0.1",
|
|
22
|
-
"joist-codegen": "1.
|
|
23
|
-
"joist-utils": "1.
|
|
22
|
+
"joist-codegen": "1.6.0",
|
|
23
|
+
"joist-utils": "1.6.0",
|
|
24
24
|
"pluralize": "^8.0.0",
|
|
25
25
|
"ts-poet": "^4.8.0"
|
|
26
26
|
},
|