@contember/client-content 2.1.0-alpha.36 → 2.1.0-alpha.39

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 (136) hide show
  1. package/dist/development/index.cjs +13 -0
  2. package/dist/development/index.cjs.map +1 -0
  3. package/dist/development/index.js +13 -0
  4. package/dist/development/index.js.map +1 -0
  5. package/dist/development/src/ContentClient.cjs +39 -0
  6. package/dist/development/src/ContentClient.cjs.map +1 -0
  7. package/dist/development/src/ContentClient.js +39 -0
  8. package/dist/development/src/ContentClient.js.map +1 -0
  9. package/dist/development/src/ContentQueryBuilder.cjs +185 -0
  10. package/dist/development/src/ContentQueryBuilder.cjs.map +1 -0
  11. package/dist/development/src/ContentQueryBuilder.js +185 -0
  12. package/dist/development/src/ContentQueryBuilder.js.map +1 -0
  13. package/dist/development/src/MutationFailedError.cjs +11 -0
  14. package/dist/development/src/MutationFailedError.cjs.map +1 -0
  15. package/dist/development/src/MutationFailedError.js +11 -0
  16. package/dist/development/src/MutationFailedError.js.map +1 -0
  17. package/dist/development/src/nodes/ContentEntitySelection.cjs +223 -0
  18. package/dist/development/src/nodes/ContentEntitySelection.cjs.map +1 -0
  19. package/dist/development/src/nodes/ContentEntitySelection.js +223 -0
  20. package/dist/development/src/nodes/ContentEntitySelection.js.map +1 -0
  21. package/dist/development/src/nodes/ContentOperation.cjs +16 -0
  22. package/dist/development/src/nodes/ContentOperation.cjs.map +1 -0
  23. package/dist/development/src/nodes/ContentOperation.js +16 -0
  24. package/dist/development/src/nodes/ContentOperation.js.map +1 -0
  25. package/dist/development/src/utils/ContentOperationSet.cjs +10 -0
  26. package/dist/development/src/utils/ContentOperationSet.cjs.map +1 -0
  27. package/dist/development/src/utils/ContentOperationSet.js +10 -0
  28. package/dist/development/src/utils/ContentOperationSet.js.map +1 -0
  29. package/dist/development/src/utils/createListArgs.cjs +24 -0
  30. package/dist/development/src/utils/createListArgs.cjs.map +1 -0
  31. package/dist/development/src/utils/createListArgs.js +24 -0
  32. package/dist/development/src/utils/createListArgs.js.map +1 -0
  33. package/dist/development/src/utils/createMutationOperationSet.cjs +39 -0
  34. package/dist/development/src/utils/createMutationOperationSet.cjs.map +1 -0
  35. package/dist/development/src/utils/createMutationOperationSet.js +39 -0
  36. package/dist/development/src/utils/createMutationOperationSet.js.map +1 -0
  37. package/dist/development/src/utils/createQueryOperationSet.cjs +19 -0
  38. package/dist/development/src/utils/createQueryOperationSet.cjs.map +1 -0
  39. package/dist/development/src/utils/createQueryOperationSet.js +19 -0
  40. package/dist/development/src/utils/createQueryOperationSet.js.map +1 -0
  41. package/dist/development/src/utils/createTypedArgs.cjs +17 -0
  42. package/dist/development/src/utils/createTypedArgs.cjs.map +1 -0
  43. package/dist/development/src/utils/createTypedArgs.js +17 -0
  44. package/dist/development/src/utils/createTypedArgs.js.map +1 -0
  45. package/dist/development/src/utils/mutationFragments.cjs +55 -0
  46. package/dist/development/src/utils/mutationFragments.cjs.map +1 -0
  47. package/dist/development/src/utils/mutationFragments.js +55 -0
  48. package/dist/development/src/utils/mutationFragments.js.map +1 -0
  49. package/dist/production/index.cjs +13 -0
  50. package/dist/production/index.cjs.map +1 -0
  51. package/dist/production/index.js +13 -0
  52. package/dist/production/index.js.map +1 -0
  53. package/dist/production/src/ContentClient.cjs +39 -0
  54. package/dist/production/src/ContentClient.cjs.map +1 -0
  55. package/dist/production/src/ContentClient.js +39 -0
  56. package/dist/production/src/ContentClient.js.map +1 -0
  57. package/dist/production/src/ContentQueryBuilder.cjs +185 -0
  58. package/dist/production/src/ContentQueryBuilder.cjs.map +1 -0
  59. package/dist/production/src/ContentQueryBuilder.js +185 -0
  60. package/dist/production/src/ContentQueryBuilder.js.map +1 -0
  61. package/dist/production/src/MutationFailedError.cjs +11 -0
  62. package/dist/production/src/MutationFailedError.cjs.map +1 -0
  63. package/dist/production/src/MutationFailedError.js +11 -0
  64. package/dist/production/src/MutationFailedError.js.map +1 -0
  65. package/dist/production/src/nodes/ContentEntitySelection.cjs +223 -0
  66. package/dist/production/src/nodes/ContentEntitySelection.cjs.map +1 -0
  67. package/dist/production/src/nodes/ContentEntitySelection.js +223 -0
  68. package/dist/production/src/nodes/ContentEntitySelection.js.map +1 -0
  69. package/dist/production/src/nodes/ContentOperation.cjs +16 -0
  70. package/dist/production/src/nodes/ContentOperation.cjs.map +1 -0
  71. package/dist/production/src/nodes/ContentOperation.js +16 -0
  72. package/dist/production/src/nodes/ContentOperation.js.map +1 -0
  73. package/dist/production/src/utils/ContentOperationSet.cjs +10 -0
  74. package/dist/production/src/utils/ContentOperationSet.cjs.map +1 -0
  75. package/dist/production/src/utils/ContentOperationSet.js +10 -0
  76. package/dist/production/src/utils/ContentOperationSet.js.map +1 -0
  77. package/dist/production/src/utils/createListArgs.cjs +24 -0
  78. package/dist/production/src/utils/createListArgs.cjs.map +1 -0
  79. package/dist/production/src/utils/createListArgs.js +24 -0
  80. package/dist/production/src/utils/createListArgs.js.map +1 -0
  81. package/dist/production/src/utils/createMutationOperationSet.cjs +39 -0
  82. package/dist/production/src/utils/createMutationOperationSet.cjs.map +1 -0
  83. package/dist/production/src/utils/createMutationOperationSet.js +39 -0
  84. package/dist/production/src/utils/createMutationOperationSet.js.map +1 -0
  85. package/dist/production/src/utils/createQueryOperationSet.cjs +19 -0
  86. package/dist/production/src/utils/createQueryOperationSet.cjs.map +1 -0
  87. package/dist/production/src/utils/createQueryOperationSet.js +19 -0
  88. package/dist/production/src/utils/createQueryOperationSet.js.map +1 -0
  89. package/dist/production/src/utils/createTypedArgs.cjs +17 -0
  90. package/dist/production/src/utils/createTypedArgs.cjs.map +1 -0
  91. package/dist/production/src/utils/createTypedArgs.js +17 -0
  92. package/dist/production/src/utils/createTypedArgs.js.map +1 -0
  93. package/dist/production/src/utils/mutationFragments.cjs +55 -0
  94. package/dist/production/src/utils/mutationFragments.cjs.map +1 -0
  95. package/dist/production/src/utils/mutationFragments.js +55 -0
  96. package/dist/production/src/utils/mutationFragments.js.map +1 -0
  97. package/dist/types/ContentClient.d.ts +27 -0
  98. package/dist/types/ContentClient.d.ts.map +1 -0
  99. package/dist/types/ContentQueryBuilder.d.ts +27 -0
  100. package/dist/types/ContentQueryBuilder.d.ts.map +1 -0
  101. package/dist/types/MutationFailedError.d.ts +13 -0
  102. package/dist/types/MutationFailedError.d.ts.map +1 -0
  103. package/dist/types/TypedContentQueryBuilder.d.ts +21 -0
  104. package/dist/types/TypedContentQueryBuilder.d.ts.map +1 -0
  105. package/dist/types/index.d.ts +7 -0
  106. package/dist/types/index.d.ts.map +1 -0
  107. package/dist/types/nodes/ContentEntitySelection.d.ts +62 -0
  108. package/dist/types/nodes/ContentEntitySelection.d.ts.map +1 -0
  109. package/dist/types/nodes/ContentOperation.d.ts +30 -0
  110. package/dist/types/nodes/ContentOperation.d.ts.map +1 -0
  111. package/dist/types/nodes/TypedEntitySelection.d.ts +54 -0
  112. package/dist/types/nodes/TypedEntitySelection.d.ts.map +1 -0
  113. package/dist/types/nodes/index.d.ts +4 -0
  114. package/dist/types/nodes/index.d.ts.map +1 -0
  115. package/dist/types/tsconfig.tsbuildinfo +1 -0
  116. package/dist/types/types/Input.d.ts +201 -0
  117. package/dist/types/types/Input.d.ts.map +1 -0
  118. package/dist/types/types/Result.d.ts +60 -0
  119. package/dist/types/types/Result.d.ts.map +1 -0
  120. package/dist/types/types/Schema.d.ts +46 -0
  121. package/dist/types/types/Schema.d.ts.map +1 -0
  122. package/dist/types/types/index.d.ts +4 -0
  123. package/dist/types/types/index.d.ts.map +1 -0
  124. package/dist/types/utils/ContentOperationSet.d.ts +13 -0
  125. package/dist/types/utils/ContentOperationSet.d.ts.map +1 -0
  126. package/dist/types/utils/createListArgs.d.ts +9 -0
  127. package/dist/types/utils/createListArgs.d.ts.map +1 -0
  128. package/dist/types/utils/createMutationOperationSet.d.ts +4 -0
  129. package/dist/types/utils/createMutationOperationSet.d.ts.map +1 -0
  130. package/dist/types/utils/createQueryOperationSet.d.ts +4 -0
  131. package/dist/types/utils/createQueryOperationSet.d.ts.map +1 -0
  132. package/dist/types/utils/createTypedArgs.d.ts +3 -0
  133. package/dist/types/utils/createTypedArgs.d.ts.map +1 -0
  134. package/dist/types/utils/mutationFragments.d.ts +3 -0
  135. package/dist/types/utils/mutationFragments.d.ts.map +1 -0
  136. package/package.json +5 -5
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const ContentClient = require("./src/ContentClient.cjs");
4
+ const ContentQueryBuilder = require("./src/ContentQueryBuilder.cjs");
5
+ const mutationFragments = require("./src/utils/mutationFragments.cjs");
6
+ const ContentEntitySelection = require("./src/nodes/ContentEntitySelection.cjs");
7
+ const ContentOperation = require("./src/nodes/ContentOperation.cjs");
8
+ exports.ContentClient = ContentClient.ContentClient;
9
+ exports.ContentQueryBuilder = ContentQueryBuilder.ContentQueryBuilder;
10
+ exports.mutationFragments = mutationFragments.mutationFragments;
11
+ exports.ContentEntitySelection = ContentEntitySelection.ContentEntitySelection;
12
+ exports.ContentOperation = ContentOperation.ContentOperation;
13
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -0,0 +1,13 @@
1
+ import { ContentClient } from "./src/ContentClient.js";
2
+ import { ContentQueryBuilder } from "./src/ContentQueryBuilder.js";
3
+ import { mutationFragments } from "./src/utils/mutationFragments.js";
4
+ import { ContentEntitySelection } from "./src/nodes/ContentEntitySelection.js";
5
+ import { ContentOperation } from "./src/nodes/ContentOperation.js";
6
+ export {
7
+ ContentClient,
8
+ ContentEntitySelection,
9
+ ContentOperation,
10
+ ContentQueryBuilder,
11
+ mutationFragments
12
+ };
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const mutationFragments = require("./utils/mutationFragments.cjs");
4
+ const graphqlBuilder = require("@contember/graphql-builder");
5
+ const createMutationOperationSet = require("./utils/createMutationOperationSet.cjs");
6
+ const createQueryOperationSet = require("./utils/createQueryOperationSet.cjs");
7
+ const MutationFailedError = require("./MutationFailedError.cjs");
8
+ class ContentClient {
9
+ constructor(client) {
10
+ this.client = client;
11
+ }
12
+ async query(queries, options) {
13
+ const printer = new graphqlBuilder.GraphQlQueryPrinter();
14
+ const operationSet = createQueryOperationSet.createQueryOperationSet(queries);
15
+ const { query, variables } = printer.printDocument("query", operationSet.selection, {});
16
+ const result = await this.client.execute(query, { variables, ...options });
17
+ return operationSet.parse(result);
18
+ }
19
+ async mutate(input, options) {
20
+ const operationSet = createMutationOperationSet.createMutationOperationSet(input);
21
+ const printer = new graphqlBuilder.GraphQlQueryPrinter();
22
+ const { query, variables } = printer.printDocument("mutation", operationSet.selection, mutationFragments.mutationFragments);
23
+ const result = await this.client.execute(query, { variables, ...options });
24
+ return operationSet.parse(result);
25
+ }
26
+ async mutateOrThrow(mutation, options) {
27
+ const result = await this.mutate(mutation, options);
28
+ if (!result.ok) {
29
+ throw new MutationFailedError.MutationFailedError(
30
+ result.errorMessage ?? "Unknown error",
31
+ mutation,
32
+ result
33
+ );
34
+ }
35
+ return result;
36
+ }
37
+ }
38
+ exports.ContentClient = ContentClient;
39
+ //# sourceMappingURL=ContentClient.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentClient.cjs","sources":["../../../../packages/client-content/src/ContentClient.ts"],"sourcesContent":["import { mutationFragments } from './utils/mutationFragments'\nimport { GraphQlClient, GraphQlClientRequestOptions } from '@contember/graphql-client'\nimport { GraphQlQueryPrinter } from '@contember/graphql-builder'\nimport { ContentMutation, ContentQuery } from './nodes'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\nimport { createQueryOperationSet } from './utils/createQueryOperationSet'\nimport { MutationError, ValidationResult } from './types'\nimport { MutationFailedError } from './MutationFailedError'\n\nexport type QueryExecutorOptions = GraphQlClientRequestOptions\n\nexport class ContentClient {\n\tconstructor(\n\t\tprivate readonly client: Pick<GraphQlClient, 'execute'>,\n\t) {\n\t}\n\n\tpublic async query<Value>(query: ContentQuery<Value>, options?: QueryExecutorOptions): Promise<Value>\n\tpublic async query<Values extends Record<string, any>>(\n\t\tqueries: { [K in keyof Values]: ContentQuery<Values[K]> },\n\t\toptions?: QueryExecutorOptions,\n\t): Promise<Values>\n\tpublic async query(queries: Record<string, ContentQuery<any>> | ContentQuery<any>, options?: QueryExecutorOptions): Promise<any> {\n\t\tconst printer = new GraphQlQueryPrinter()\n\t\tconst operationSet = createQueryOperationSet(queries)\n\t\tconst { query, variables } = printer.printDocument('query', operationSet.selection, {})\n\t\tconst result = await this.client.execute(query, { variables, ...options })\n\t\treturn operationSet.parse(result)\n\t}\n\n\tpublic async mutate<Value>(mutation: ContentMutation<Value>, options?: QueryExecutorOptions): Promise<Value>\n\tpublic async mutate<Value>(mutations: ContentMutation<Value>[], options?: QueryExecutorOptions): Promise<Value[]>\n\tpublic async mutate<Values extends Record<string, any>>(\n\t\tmutations: { [K in keyof Values]: ContentMutation<Values[K]> | ContentQuery<Values[K]> },\n\t\toptions?: QueryExecutorOptions,\n\t): Promise<Values>\n\tpublic async mutate(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions?: QueryExecutorOptions,\n\t): Promise<any> {\n\t\tconst operationSet = createMutationOperationSet(input)\n\n\t\tconst printer = new GraphQlQueryPrinter()\n\t\tconst { query, variables } = printer.printDocument('mutation', operationSet.selection, mutationFragments)\n\t\tconst result = await this.client.execute(query, { variables, ...options })\n\n\t\treturn operationSet.parse(result)\n\t}\n\n\tpublic async mutateOrThrow<\n\t\tValue extends {\n\t\t\treadonly ok: boolean\n\t\t\treadonly errorMessage: string | null\n\t\t\treadonly errors: MutationError[]\n\t\t\treadonly validation: ValidationResult\n\t\t},\n\t>(mutation: ContentMutation<Value>, options?: QueryExecutorOptions): Promise<Value & { readonly ok: true; readonly errorMessage: null }> {\n\t\tconst result = await this.mutate(mutation, options)\n\t\tif (!result.ok) {\n\t\t\tthrow new MutationFailedError(\n\t\t\t\tresult.errorMessage ?? 'Unknown error',\n\t\t\t\tmutation as ContentMutation<Value & { readonly ok: false; readonly errorMessage: string }>,\n\t\t\t\tresult as Value & { readonly ok: false; readonly errorMessage: string },\n\t\t\t)\n\t\t}\n\t\treturn result as Value & { readonly ok: true; readonly errorMessage: null }\n\t}\n}\n"],"names":["GraphQlQueryPrinter","createQueryOperationSet","createMutationOperationSet","mutationFragments","MutationFailedError"],"mappings":";;;;;;;AAWO,MAAM,cAAc;AAAA,EAC1B,YACkB,QAChB;AADgB,SAAA,SAAA;AAAA,EAElB;AAAA,EAOA,MAAa,MAAM,SAAgE,SAA8C;AAChI,UAAM,UAAU,IAAIA,mCAAA;AACpB,UAAM,eAAeC,wBAAAA,wBAAwB,OAAO;AACpD,UAAM,EAAE,OAAO,UAAA,IAAc,QAAQ,cAAc,SAAS,aAAa,WAAW,EAAE;AACtF,UAAM,SAAS,MAAM,KAAK,OAAO,QAAQ,OAAO,EAAE,WAAW,GAAG,SAAS;AACzE,WAAO,aAAa,MAAM,MAAM;AAAA,EACjC;AAAA,EAQA,MAAa,OACZ,OACA,SACe;AACf,UAAM,eAAeC,2BAAAA,2BAA2B,KAAK;AAErD,UAAM,UAAU,IAAIF,mCAAA;AACpB,UAAM,EAAE,OAAO,UAAA,IAAc,QAAQ,cAAc,YAAY,aAAa,WAAWG,mCAAiB;AACxG,UAAM,SAAS,MAAM,KAAK,OAAO,QAAQ,OAAO,EAAE,WAAW,GAAG,SAAS;AAEzE,WAAO,aAAa,MAAM,MAAM;AAAA,EACjC;AAAA,EAEA,MAAa,cAOX,UAAkC,SAAqG;AACxI,UAAM,SAAS,MAAM,KAAK,OAAO,UAAU,OAAO;AAClD,QAAI,CAAC,OAAO,IAAI;AACf,YAAM,IAAIC,oBAAAA;AAAAA,QACT,OAAO,gBAAgB;AAAA,QACvB;AAAA,QACA;AAAA,MAAA;AAAA,IAEF;AACA,WAAO;AAAA,EACR;AACD;;"}
@@ -0,0 +1,39 @@
1
+ import { mutationFragments } from "./utils/mutationFragments.js";
2
+ import { GraphQlQueryPrinter } from "@contember/graphql-builder";
3
+ import { createMutationOperationSet } from "./utils/createMutationOperationSet.js";
4
+ import { createQueryOperationSet } from "./utils/createQueryOperationSet.js";
5
+ import { MutationFailedError } from "./MutationFailedError.js";
6
+ class ContentClient {
7
+ constructor(client) {
8
+ this.client = client;
9
+ }
10
+ async query(queries, options) {
11
+ const printer = new GraphQlQueryPrinter();
12
+ const operationSet = createQueryOperationSet(queries);
13
+ const { query, variables } = printer.printDocument("query", operationSet.selection, {});
14
+ const result = await this.client.execute(query, { variables, ...options });
15
+ return operationSet.parse(result);
16
+ }
17
+ async mutate(input, options) {
18
+ const operationSet = createMutationOperationSet(input);
19
+ const printer = new GraphQlQueryPrinter();
20
+ const { query, variables } = printer.printDocument("mutation", operationSet.selection, mutationFragments);
21
+ const result = await this.client.execute(query, { variables, ...options });
22
+ return operationSet.parse(result);
23
+ }
24
+ async mutateOrThrow(mutation, options) {
25
+ const result = await this.mutate(mutation, options);
26
+ if (!result.ok) {
27
+ throw new MutationFailedError(
28
+ result.errorMessage ?? "Unknown error",
29
+ mutation,
30
+ result
31
+ );
32
+ }
33
+ return result;
34
+ }
35
+ }
36
+ export {
37
+ ContentClient
38
+ };
39
+ //# sourceMappingURL=ContentClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentClient.js","sources":["../../../../packages/client-content/src/ContentClient.ts"],"sourcesContent":["import { mutationFragments } from './utils/mutationFragments'\nimport { GraphQlClient, GraphQlClientRequestOptions } from '@contember/graphql-client'\nimport { GraphQlQueryPrinter } from '@contember/graphql-builder'\nimport { ContentMutation, ContentQuery } from './nodes'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\nimport { createQueryOperationSet } from './utils/createQueryOperationSet'\nimport { MutationError, ValidationResult } from './types'\nimport { MutationFailedError } from './MutationFailedError'\n\nexport type QueryExecutorOptions = GraphQlClientRequestOptions\n\nexport class ContentClient {\n\tconstructor(\n\t\tprivate readonly client: Pick<GraphQlClient, 'execute'>,\n\t) {\n\t}\n\n\tpublic async query<Value>(query: ContentQuery<Value>, options?: QueryExecutorOptions): Promise<Value>\n\tpublic async query<Values extends Record<string, any>>(\n\t\tqueries: { [K in keyof Values]: ContentQuery<Values[K]> },\n\t\toptions?: QueryExecutorOptions,\n\t): Promise<Values>\n\tpublic async query(queries: Record<string, ContentQuery<any>> | ContentQuery<any>, options?: QueryExecutorOptions): Promise<any> {\n\t\tconst printer = new GraphQlQueryPrinter()\n\t\tconst operationSet = createQueryOperationSet(queries)\n\t\tconst { query, variables } = printer.printDocument('query', operationSet.selection, {})\n\t\tconst result = await this.client.execute(query, { variables, ...options })\n\t\treturn operationSet.parse(result)\n\t}\n\n\tpublic async mutate<Value>(mutation: ContentMutation<Value>, options?: QueryExecutorOptions): Promise<Value>\n\tpublic async mutate<Value>(mutations: ContentMutation<Value>[], options?: QueryExecutorOptions): Promise<Value[]>\n\tpublic async mutate<Values extends Record<string, any>>(\n\t\tmutations: { [K in keyof Values]: ContentMutation<Values[K]> | ContentQuery<Values[K]> },\n\t\toptions?: QueryExecutorOptions,\n\t): Promise<Values>\n\tpublic async mutate(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions?: QueryExecutorOptions,\n\t): Promise<any> {\n\t\tconst operationSet = createMutationOperationSet(input)\n\n\t\tconst printer = new GraphQlQueryPrinter()\n\t\tconst { query, variables } = printer.printDocument('mutation', operationSet.selection, mutationFragments)\n\t\tconst result = await this.client.execute(query, { variables, ...options })\n\n\t\treturn operationSet.parse(result)\n\t}\n\n\tpublic async mutateOrThrow<\n\t\tValue extends {\n\t\t\treadonly ok: boolean\n\t\t\treadonly errorMessage: string | null\n\t\t\treadonly errors: MutationError[]\n\t\t\treadonly validation: ValidationResult\n\t\t},\n\t>(mutation: ContentMutation<Value>, options?: QueryExecutorOptions): Promise<Value & { readonly ok: true; readonly errorMessage: null }> {\n\t\tconst result = await this.mutate(mutation, options)\n\t\tif (!result.ok) {\n\t\t\tthrow new MutationFailedError(\n\t\t\t\tresult.errorMessage ?? 'Unknown error',\n\t\t\t\tmutation as ContentMutation<Value & { readonly ok: false; readonly errorMessage: string }>,\n\t\t\t\tresult as Value & { readonly ok: false; readonly errorMessage: string },\n\t\t\t)\n\t\t}\n\t\treturn result as Value & { readonly ok: true; readonly errorMessage: null }\n\t}\n}\n"],"names":[],"mappings":";;;;;AAWO,MAAM,cAAc;AAAA,EAC1B,YACkB,QAChB;AADgB,SAAA,SAAA;AAAA,EAElB;AAAA,EAOA,MAAa,MAAM,SAAgE,SAA8C;AAChI,UAAM,UAAU,IAAI,oBAAA;AACpB,UAAM,eAAe,wBAAwB,OAAO;AACpD,UAAM,EAAE,OAAO,UAAA,IAAc,QAAQ,cAAc,SAAS,aAAa,WAAW,EAAE;AACtF,UAAM,SAAS,MAAM,KAAK,OAAO,QAAQ,OAAO,EAAE,WAAW,GAAG,SAAS;AACzE,WAAO,aAAa,MAAM,MAAM;AAAA,EACjC;AAAA,EAQA,MAAa,OACZ,OACA,SACe;AACf,UAAM,eAAe,2BAA2B,KAAK;AAErD,UAAM,UAAU,IAAI,oBAAA;AACpB,UAAM,EAAE,OAAO,UAAA,IAAc,QAAQ,cAAc,YAAY,aAAa,WAAW,iBAAiB;AACxG,UAAM,SAAS,MAAM,KAAK,OAAO,QAAQ,OAAO,EAAE,WAAW,GAAG,SAAS;AAEzE,WAAO,aAAa,MAAM,MAAM;AAAA,EACjC;AAAA,EAEA,MAAa,cAOX,UAAkC,SAAqG;AACxI,UAAM,SAAS,MAAM,KAAK,OAAO,UAAU,OAAO;AAClD,QAAI,CAAC,OAAO,IAAI;AACf,YAAM,IAAI;AAAA,QACT,OAAO,gBAAgB;AAAA,QACvB;AAAA,QACA;AAAA,MAAA;AAAA,IAEF;AACA,WAAO;AAAA,EACR;AACD;"}
@@ -0,0 +1,185 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const createListArgs = require("./utils/createListArgs.cjs");
4
+ const createTypedArgs = require("./utils/createTypedArgs.cjs");
5
+ const graphqlBuilder = require("@contember/graphql-builder");
6
+ const createMutationOperationSet = require("./utils/createMutationOperationSet.cjs");
7
+ const ContentEntitySelection = require("./nodes/ContentEntitySelection.cjs");
8
+ const ContentOperation = require("./nodes/ContentOperation.cjs");
9
+ class ContentQueryBuilder {
10
+ constructor(schema) {
11
+ this.schema = schema;
12
+ }
13
+ fragment(name, fieldsCallback) {
14
+ const context = this.createContext(name);
15
+ const entitySelection = new ContentEntitySelection.ContentEntitySelection(context, []);
16
+ if (!fieldsCallback) {
17
+ return entitySelection;
18
+ }
19
+ return fieldsCallback(entitySelection);
20
+ }
21
+ count(name, args) {
22
+ const context = this.createContext(name);
23
+ const fieldName = `paginate${name}`;
24
+ const typedArgs = createTypedArgs.createTypedArgs(args, {
25
+ filter: `${context.entity.name}Where`
26
+ });
27
+ const selectionSet = [
28
+ new graphqlBuilder.GraphQlField(null, "pageInfo", {}, [
29
+ new graphqlBuilder.GraphQlField(null, "totalCount")
30
+ ])
31
+ ];
32
+ return new ContentOperation.ContentOperation("query", fieldName, typedArgs, selectionSet, (it) => {
33
+ return it.pageInfo.totalCount;
34
+ });
35
+ }
36
+ list(name, args, fields) {
37
+ const context = this.createContext(name);
38
+ const fieldName = `list${name}`;
39
+ const typedArgs = createListArgs.createListArgs(context.entity, args);
40
+ const selection = this.resolveSelection(fields, context);
41
+ return new ContentOperation.ContentOperation("query", fieldName, typedArgs, selection.selectionSet, (it) => {
42
+ const transformFn = selection.transformFn;
43
+ if (transformFn) {
44
+ return it.map(
45
+ (el) => transformFn(el, {
46
+ rootValue: it
47
+ })
48
+ );
49
+ }
50
+ return it;
51
+ });
52
+ }
53
+ get(name, args, fields) {
54
+ const context = this.createContext(name);
55
+ const fieldName = `get${name}`;
56
+ const typedArgs = createTypedArgs.createTypedArgs(args, {
57
+ by: `${context.entity.name}UniqueWhere!`,
58
+ filter: `${context.entity.name}Where`
59
+ });
60
+ const selection = this.resolveSelection(fields, context);
61
+ return new ContentOperation.ContentOperation("query", fieldName, typedArgs, selection.selectionSet, (it) => {
62
+ if (it && selection.transformFn) {
63
+ return selection.transformFn(it, {
64
+ rootValue: it
65
+ });
66
+ }
67
+ return it;
68
+ });
69
+ }
70
+ create(name, args, fields) {
71
+ const entity = this.getEntity(name);
72
+ const typedArgs = createTypedArgs.createTypedArgs(args, {
73
+ data: `${entity.name}CreateInput!`
74
+ });
75
+ return this.createMutationOperation(name, "create", typedArgs, fields);
76
+ }
77
+ update(name, args, fields) {
78
+ const entity = this.getEntity(name);
79
+ const typedArgs = createTypedArgs.createTypedArgs(args, {
80
+ data: `${entity.name}UpdateInput!`,
81
+ by: `${entity.name}UniqueWhere!`,
82
+ filter: `${entity.name}Where`
83
+ });
84
+ return this.createMutationOperation(name, "update", typedArgs, fields);
85
+ }
86
+ upsert(name, args, fields) {
87
+ const entity = this.getEntity(name);
88
+ const typedArgs = createTypedArgs.createTypedArgs(args, {
89
+ update: `${entity.name}UpdateInput!`,
90
+ create: `${entity.name}CreateInput!`,
91
+ by: `${entity.name}UniqueWhere!`,
92
+ filter: `${entity.name}Where`
93
+ });
94
+ return this.createMutationOperation(name, "upsert", typedArgs, fields);
95
+ }
96
+ delete(name, args, fields) {
97
+ const entity = this.getEntity(name);
98
+ const typedArgs = createTypedArgs.createTypedArgs(args, {
99
+ by: `${entity.name}UniqueWhere!`,
100
+ filter: `${entity.name}Where`
101
+ });
102
+ return this.createMutationOperation(name, "delete", typedArgs, fields);
103
+ }
104
+ createMutationOperation(name, operation, args, fields) {
105
+ const context = this.createContext(name);
106
+ const fieldName = `${operation}${name}`;
107
+ const nodeSelection = fields ? this.resolveSelection(fields, context) : void 0;
108
+ const selectionSet = this.createMutationSelection(operation, nodeSelection?.selectionSet);
109
+ return new ContentOperation.ContentOperation("mutation", fieldName, args, selectionSet, (it) => {
110
+ if (!nodeSelection?.transformFn) {
111
+ return it;
112
+ }
113
+ return {
114
+ ...it,
115
+ node: it.node ? nodeSelection.transformFn(it.node, {
116
+ rootValue: it.node
117
+ }) : null
118
+ };
119
+ });
120
+ }
121
+ transaction(input, options = {}) {
122
+ const combined = createMutationOperationSet.createMutationOperationSet(input);
123
+ const transactionArgs = createTypedArgs.createTypedArgs({ options }, {
124
+ options: "MutationTransactionOptions"
125
+ });
126
+ const items = [
127
+ ...this.createMutationSelection("transaction"),
128
+ ...combined.selection
129
+ ];
130
+ return new ContentOperation.ContentOperation(
131
+ "mutation",
132
+ "transaction",
133
+ transactionArgs,
134
+ items,
135
+ ({ ok, errorMessage, errors, validation, ...data }) => {
136
+ return {
137
+ ok,
138
+ errorMessage,
139
+ errors,
140
+ validation,
141
+ data: combined.parse(data)
142
+ };
143
+ }
144
+ );
145
+ }
146
+ createMutationSelection(operation, selection) {
147
+ const items = [
148
+ new graphqlBuilder.GraphQlField(null, "ok"),
149
+ new graphqlBuilder.GraphQlField(null, "errorMessage"),
150
+ new graphqlBuilder.GraphQlField(null, "errors", {}, [
151
+ new graphqlBuilder.GraphQlFragmentSpread("MutationError")
152
+ ])
153
+ ];
154
+ if (operation !== "delete") {
155
+ items.push(
156
+ new graphqlBuilder.GraphQlField(null, "validation", {}, [
157
+ new graphqlBuilder.GraphQlFragmentSpread("ValidationResult")
158
+ ])
159
+ );
160
+ }
161
+ if (selection) {
162
+ items.push(new graphqlBuilder.GraphQlField(null, "node", {}, selection));
163
+ }
164
+ return items;
165
+ }
166
+ resolveSelection(fields, context) {
167
+ return typeof fields === "function" ? fields(new ContentEntitySelection.ContentEntitySelection(context, [])) : fields;
168
+ }
169
+ createContext(name) {
170
+ const entity = this.getEntity(name);
171
+ return {
172
+ entity,
173
+ schema: this.schema
174
+ };
175
+ }
176
+ getEntity(name) {
177
+ const entity = this.schema.entities[name];
178
+ if (!entity) {
179
+ throw new Error(`Entity ${name} not found`);
180
+ }
181
+ return entity;
182
+ }
183
+ }
184
+ exports.ContentQueryBuilder = ContentQueryBuilder;
185
+ //# sourceMappingURL=ContentQueryBuilder.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentQueryBuilder.cjs","sources":["../../../../packages/client-content/src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\ntype MutationOperation = 'create' | 'update' | 'delete' | 'upsert' | 'transaction'\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selection = this.resolveSelection(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selection.selectionSet, it => {\n\t\t\tconst transformFn = selection.transformFn\n\t\t\tif (transformFn) {\n\t\t\t\treturn it.map((el: any) =>\n\t\t\t\t\ttransformFn(el, {\n\t\t\t\t\t\trootValue: it,\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn it\n\t\t})\n\t}\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selection = this.resolveSelection(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selection.selectionSet, it => {\n\t\t\tif (it && selection.transformFn) {\n\t\t\t\treturn selection.transformFn(it, {\n\t\t\t\t\trootValue: it,\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn it\n\t\t})\n\t}\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${entity.name}CreateInput!`,\n\t\t})\n\n\t\treturn this.createMutationOperation(name, 'create', typedArgs, fields)\n\t}\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${entity.name}UpdateInput!`,\n\t\t\tby: `${entity.name}UniqueWhere!`,\n\t\t\tfilter: `${entity.name}Where`,\n\t\t})\n\t\treturn this.createMutationOperation(name, 'update', typedArgs, fields)\n\t}\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${entity.name}UpdateInput!`,\n\t\t\tcreate: `${entity.name}CreateInput!`,\n\t\t\tby: `${entity.name}UniqueWhere!`,\n\t\t\tfilter: `${entity.name}Where`,\n\t\t})\n\t\treturn this.createMutationOperation(name, 'upsert', typedArgs, fields)\n\t}\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${entity.name}UniqueWhere!`,\n\t\t\tfilter: `${entity.name}Where`,\n\t\t})\n\t\treturn this.createMutationOperation(name, 'delete', typedArgs, fields)\n\t}\n\n\tprivate createMutationOperation(\n\t\tname: string,\n\t\toperation: MutationOperation,\n\t\targs: GraphQlFieldTypedArgs,\n\t\tfields?: EntitySelectionOrCallback,\n\t): ContentMutation<MutationResult> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `${operation}${name}`\n\t\tconst nodeSelection = fields ? this.resolveSelection(fields, context) : undefined\n\t\tconst selectionSet = this.createMutationSelection(operation, nodeSelection?.selectionSet)\n\n\t\treturn new ContentOperation('mutation', fieldName, args, selectionSet, it => {\n\t\t\tif (!nodeSelection?.transformFn) {\n\t\t\t\treturn it\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t...it,\n\t\t\t\tnode: it.node\n\t\t\t\t\t? nodeSelection.transformFn(it.node, {\n\t\t\t\t\t\trootValue: it.node,\n\t\t\t\t\t})\n\t\t\t\t\t: null,\n\t\t\t}\n\t\t})\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>(\n\t\t\t'mutation',\n\t\t\t'transaction',\n\t\t\ttransactionArgs,\n\t\t\titems,\n\t\t\t({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\t\treturn {\n\t\t\t\t\tok,\n\t\t\t\t\terrorMessage,\n\t\t\t\t\terrors,\n\t\t\t\t\tvalidation,\n\t\t\t\t\tdata: combined.parse(data),\n\t\t\t\t}\n\t\t\t},\n\t\t)\n\t}\n\n\tprivate createMutationSelection(operation: MutationOperation, selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(\n\t\t\t\tnew GraphQlField(null, 'validation', {}, [\n\t\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t\t]),\n\t\t\t)\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\tprivate resolveSelection(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields)\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.getEntity(name)\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n\n\tprivate getEntity(name: string) {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn entity\n\t}\n}\n"],"names":["ContentEntitySelection","createTypedArgs","GraphQlField","ContentOperation","createListArgs","createMutationOperationSet","GraphQlFragmentSpread"],"mappings":"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"}
@@ -0,0 +1,185 @@
1
+ import { createListArgs } from "./utils/createListArgs.js";
2
+ import { createTypedArgs } from "./utils/createTypedArgs.js";
3
+ import { GraphQlField, GraphQlFragmentSpread } from "@contember/graphql-builder";
4
+ import { createMutationOperationSet } from "./utils/createMutationOperationSet.js";
5
+ import { ContentEntitySelection } from "./nodes/ContentEntitySelection.js";
6
+ import { ContentOperation } from "./nodes/ContentOperation.js";
7
+ class ContentQueryBuilder {
8
+ constructor(schema) {
9
+ this.schema = schema;
10
+ }
11
+ fragment(name, fieldsCallback) {
12
+ const context = this.createContext(name);
13
+ const entitySelection = new ContentEntitySelection(context, []);
14
+ if (!fieldsCallback) {
15
+ return entitySelection;
16
+ }
17
+ return fieldsCallback(entitySelection);
18
+ }
19
+ count(name, args) {
20
+ const context = this.createContext(name);
21
+ const fieldName = `paginate${name}`;
22
+ const typedArgs = createTypedArgs(args, {
23
+ filter: `${context.entity.name}Where`
24
+ });
25
+ const selectionSet = [
26
+ new GraphQlField(null, "pageInfo", {}, [
27
+ new GraphQlField(null, "totalCount")
28
+ ])
29
+ ];
30
+ return new ContentOperation("query", fieldName, typedArgs, selectionSet, (it) => {
31
+ return it.pageInfo.totalCount;
32
+ });
33
+ }
34
+ list(name, args, fields) {
35
+ const context = this.createContext(name);
36
+ const fieldName = `list${name}`;
37
+ const typedArgs = createListArgs(context.entity, args);
38
+ const selection = this.resolveSelection(fields, context);
39
+ return new ContentOperation("query", fieldName, typedArgs, selection.selectionSet, (it) => {
40
+ const transformFn = selection.transformFn;
41
+ if (transformFn) {
42
+ return it.map(
43
+ (el) => transformFn(el, {
44
+ rootValue: it
45
+ })
46
+ );
47
+ }
48
+ return it;
49
+ });
50
+ }
51
+ get(name, args, fields) {
52
+ const context = this.createContext(name);
53
+ const fieldName = `get${name}`;
54
+ const typedArgs = createTypedArgs(args, {
55
+ by: `${context.entity.name}UniqueWhere!`,
56
+ filter: `${context.entity.name}Where`
57
+ });
58
+ const selection = this.resolveSelection(fields, context);
59
+ return new ContentOperation("query", fieldName, typedArgs, selection.selectionSet, (it) => {
60
+ if (it && selection.transformFn) {
61
+ return selection.transformFn(it, {
62
+ rootValue: it
63
+ });
64
+ }
65
+ return it;
66
+ });
67
+ }
68
+ create(name, args, fields) {
69
+ const entity = this.getEntity(name);
70
+ const typedArgs = createTypedArgs(args, {
71
+ data: `${entity.name}CreateInput!`
72
+ });
73
+ return this.createMutationOperation(name, "create", typedArgs, fields);
74
+ }
75
+ update(name, args, fields) {
76
+ const entity = this.getEntity(name);
77
+ const typedArgs = createTypedArgs(args, {
78
+ data: `${entity.name}UpdateInput!`,
79
+ by: `${entity.name}UniqueWhere!`,
80
+ filter: `${entity.name}Where`
81
+ });
82
+ return this.createMutationOperation(name, "update", typedArgs, fields);
83
+ }
84
+ upsert(name, args, fields) {
85
+ const entity = this.getEntity(name);
86
+ const typedArgs = createTypedArgs(args, {
87
+ update: `${entity.name}UpdateInput!`,
88
+ create: `${entity.name}CreateInput!`,
89
+ by: `${entity.name}UniqueWhere!`,
90
+ filter: `${entity.name}Where`
91
+ });
92
+ return this.createMutationOperation(name, "upsert", typedArgs, fields);
93
+ }
94
+ delete(name, args, fields) {
95
+ const entity = this.getEntity(name);
96
+ const typedArgs = createTypedArgs(args, {
97
+ by: `${entity.name}UniqueWhere!`,
98
+ filter: `${entity.name}Where`
99
+ });
100
+ return this.createMutationOperation(name, "delete", typedArgs, fields);
101
+ }
102
+ createMutationOperation(name, operation, args, fields) {
103
+ const context = this.createContext(name);
104
+ const fieldName = `${operation}${name}`;
105
+ const nodeSelection = fields ? this.resolveSelection(fields, context) : void 0;
106
+ const selectionSet = this.createMutationSelection(operation, nodeSelection?.selectionSet);
107
+ return new ContentOperation("mutation", fieldName, args, selectionSet, (it) => {
108
+ if (!nodeSelection?.transformFn) {
109
+ return it;
110
+ }
111
+ return {
112
+ ...it,
113
+ node: it.node ? nodeSelection.transformFn(it.node, {
114
+ rootValue: it.node
115
+ }) : null
116
+ };
117
+ });
118
+ }
119
+ transaction(input, options = {}) {
120
+ const combined = createMutationOperationSet(input);
121
+ const transactionArgs = createTypedArgs({ options }, {
122
+ options: "MutationTransactionOptions"
123
+ });
124
+ const items = [
125
+ ...this.createMutationSelection("transaction"),
126
+ ...combined.selection
127
+ ];
128
+ return new ContentOperation(
129
+ "mutation",
130
+ "transaction",
131
+ transactionArgs,
132
+ items,
133
+ ({ ok, errorMessage, errors, validation, ...data }) => {
134
+ return {
135
+ ok,
136
+ errorMessage,
137
+ errors,
138
+ validation,
139
+ data: combined.parse(data)
140
+ };
141
+ }
142
+ );
143
+ }
144
+ createMutationSelection(operation, selection) {
145
+ const items = [
146
+ new GraphQlField(null, "ok"),
147
+ new GraphQlField(null, "errorMessage"),
148
+ new GraphQlField(null, "errors", {}, [
149
+ new GraphQlFragmentSpread("MutationError")
150
+ ])
151
+ ];
152
+ if (operation !== "delete") {
153
+ items.push(
154
+ new GraphQlField(null, "validation", {}, [
155
+ new GraphQlFragmentSpread("ValidationResult")
156
+ ])
157
+ );
158
+ }
159
+ if (selection) {
160
+ items.push(new GraphQlField(null, "node", {}, selection));
161
+ }
162
+ return items;
163
+ }
164
+ resolveSelection(fields, context) {
165
+ return typeof fields === "function" ? fields(new ContentEntitySelection(context, [])) : fields;
166
+ }
167
+ createContext(name) {
168
+ const entity = this.getEntity(name);
169
+ return {
170
+ entity,
171
+ schema: this.schema
172
+ };
173
+ }
174
+ getEntity(name) {
175
+ const entity = this.schema.entities[name];
176
+ if (!entity) {
177
+ throw new Error(`Entity ${name} not found`);
178
+ }
179
+ return entity;
180
+ }
181
+ }
182
+ export {
183
+ ContentQueryBuilder
184
+ };
185
+ //# sourceMappingURL=ContentQueryBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContentQueryBuilder.js","sources":["../../../../packages/client-content/src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\ntype MutationOperation = 'create' | 'update' | 'delete' | 'upsert' | 'transaction'\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selection = this.resolveSelection(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selection.selectionSet, it => {\n\t\t\tconst transformFn = selection.transformFn\n\t\t\tif (transformFn) {\n\t\t\t\treturn it.map((el: any) =>\n\t\t\t\t\ttransformFn(el, {\n\t\t\t\t\t\trootValue: it,\n\t\t\t\t\t})\n\t\t\t\t)\n\t\t\t}\n\t\t\treturn it\n\t\t})\n\t}\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selection = this.resolveSelection(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selection.selectionSet, it => {\n\t\t\tif (it && selection.transformFn) {\n\t\t\t\treturn selection.transformFn(it, {\n\t\t\t\t\trootValue: it,\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn it\n\t\t})\n\t}\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${entity.name}CreateInput!`,\n\t\t})\n\n\t\treturn this.createMutationOperation(name, 'create', typedArgs, fields)\n\t}\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${entity.name}UpdateInput!`,\n\t\t\tby: `${entity.name}UniqueWhere!`,\n\t\t\tfilter: `${entity.name}Where`,\n\t\t})\n\t\treturn this.createMutationOperation(name, 'update', typedArgs, fields)\n\t}\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${entity.name}UpdateInput!`,\n\t\t\tcreate: `${entity.name}CreateInput!`,\n\t\t\tby: `${entity.name}UniqueWhere!`,\n\t\t\tfilter: `${entity.name}Where`,\n\t\t})\n\t\treturn this.createMutationOperation(name, 'upsert', typedArgs, fields)\n\t}\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\t\tconst entity = this.getEntity(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${entity.name}UniqueWhere!`,\n\t\t\tfilter: `${entity.name}Where`,\n\t\t})\n\t\treturn this.createMutationOperation(name, 'delete', typedArgs, fields)\n\t}\n\n\tprivate createMutationOperation(\n\t\tname: string,\n\t\toperation: MutationOperation,\n\t\targs: GraphQlFieldTypedArgs,\n\t\tfields?: EntitySelectionOrCallback,\n\t): ContentMutation<MutationResult> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `${operation}${name}`\n\t\tconst nodeSelection = fields ? this.resolveSelection(fields, context) : undefined\n\t\tconst selectionSet = this.createMutationSelection(operation, nodeSelection?.selectionSet)\n\n\t\treturn new ContentOperation('mutation', fieldName, args, selectionSet, it => {\n\t\t\tif (!nodeSelection?.transformFn) {\n\t\t\t\treturn it\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t...it,\n\t\t\t\tnode: it.node\n\t\t\t\t\t? nodeSelection.transformFn(it.node, {\n\t\t\t\t\t\trootValue: it.node,\n\t\t\t\t\t})\n\t\t\t\t\t: null,\n\t\t\t}\n\t\t})\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>(\n\t\t\t'mutation',\n\t\t\t'transaction',\n\t\t\ttransactionArgs,\n\t\t\titems,\n\t\t\t({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\t\treturn {\n\t\t\t\t\tok,\n\t\t\t\t\terrorMessage,\n\t\t\t\t\terrors,\n\t\t\t\t\tvalidation,\n\t\t\t\t\tdata: combined.parse(data),\n\t\t\t\t}\n\t\t\t},\n\t\t)\n\t}\n\n\tprivate createMutationSelection(operation: MutationOperation, selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(\n\t\t\t\tnew GraphQlField(null, 'validation', {}, [\n\t\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t\t]),\n\t\t\t)\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\tprivate resolveSelection(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields)\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.getEntity(name)\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n\n\tprivate getEntity(name: string) {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn entity\n\t}\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ class MutationFailedError extends Error {
4
+ constructor(message, request, result) {
5
+ super(message);
6
+ this.request = request;
7
+ this.result = result;
8
+ }
9
+ }
10
+ exports.MutationFailedError = MutationFailedError;
11
+ //# sourceMappingURL=MutationFailedError.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MutationFailedError.cjs","sources":["../../../../packages/client-content/src/MutationFailedError.ts"],"sourcesContent":["import { MutationError, ValidationResult } from './types'\nimport { ContentMutation } from './nodes'\n\nexport class MutationFailedError<\n\tValue extends {\n\t\treadonly ok: false\n\t\treadonly errorMessage: string\n\t\treadonly errors: MutationError[]\n\t\treadonly validation: ValidationResult\n\t},\n> extends Error {\n\tconstructor(\n\t\tmessage: string,\n\t\tpublic readonly request: ContentMutation<Value>,\n\t\tpublic readonly result: Value,\n\t) {\n\t\tsuper(message)\n\t}\n}\n"],"names":[],"mappings":";;AAGO,MAAM,4BAOH,MAAM;AAAA,EACf,YACC,SACgB,SACA,QACf;AACD,UAAM,OAAO;AAHG,SAAA,UAAA;AACA,SAAA,SAAA;AAAA,EAGjB;AACD;;"}
@@ -0,0 +1,11 @@
1
+ class MutationFailedError extends Error {
2
+ constructor(message, request, result) {
3
+ super(message);
4
+ this.request = request;
5
+ this.result = result;
6
+ }
7
+ }
8
+ export {
9
+ MutationFailedError
10
+ };
11
+ //# sourceMappingURL=MutationFailedError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MutationFailedError.js","sources":["../../../../packages/client-content/src/MutationFailedError.ts"],"sourcesContent":["import { MutationError, ValidationResult } from './types'\nimport { ContentMutation } from './nodes'\n\nexport class MutationFailedError<\n\tValue extends {\n\t\treadonly ok: false\n\t\treadonly errorMessage: string\n\t\treadonly errors: MutationError[]\n\t\treadonly validation: ValidationResult\n\t},\n> extends Error {\n\tconstructor(\n\t\tmessage: string,\n\t\tpublic readonly request: ContentMutation<Value>,\n\t\tpublic readonly result: Value,\n\t) {\n\t\tsuper(message)\n\t}\n}\n"],"names":[],"mappings":"AAGO,MAAM,4BAOH,MAAM;AAAA,EACf,YACC,SACgB,SACA,QACf;AACD,UAAM,OAAO;AAHG,SAAA,UAAA;AACA,SAAA,SAAA;AAAA,EAGjB;AACD;"}