@luvio/compiler 0.104.0 → 0.106.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.
Files changed (40) hide show
  1. package/dist/codegen/adapter/adapter-network.d.ts +1 -1
  2. package/dist/codegen/adapter/adapter-network.js +2 -5
  3. package/dist/codegen/adapter/adapter-network.js.map +1 -1
  4. package/dist/codegen/adapter/graphql/adapter-network.d.ts +5 -0
  5. package/dist/codegen/adapter/graphql/adapter-network.js +72 -0
  6. package/dist/codegen/adapter/graphql/adapter-network.js.map +1 -0
  7. package/dist/codegen/adapter/graphql/index.js +2 -5
  8. package/dist/codegen/adapter/graphql/index.js.map +1 -1
  9. package/dist/codegen/graphql/type/constants.d.ts +4 -0
  10. package/dist/codegen/graphql/type/constants.js +5 -1
  11. package/dist/codegen/graphql/type/constants.js.map +1 -1
  12. package/dist/codegen/graphql/type/convert.js +2 -1
  13. package/dist/codegen/graphql/type/convert.js.map +1 -1
  14. package/dist/codegen/graphql/type/generateTypeUtil.js +23 -2
  15. package/dist/codegen/graphql/type/generateTypeUtil.js.map +1 -1
  16. package/dist/codegen/graphql/type/ingest.js +118 -24
  17. package/dist/codegen/graphql/type/ingest.js.map +1 -1
  18. package/dist/codegen/graphql/type/select.js +2 -1
  19. package/dist/codegen/graphql/type/select.js.map +1 -1
  20. package/dist/codegen/graphql/type/type-cache-keys.js +2 -1
  21. package/dist/codegen/graphql/type/type-cache-keys.js.map +1 -1
  22. package/dist/codegen/pagination-utils/constants.d.ts +5 -0
  23. package/dist/codegen/pagination-utils/constants.js +6 -1
  24. package/dist/codegen/pagination-utils/constants.js.map +1 -1
  25. package/dist/codegen/pagination-utils/cursor-based.d.ts +0 -1
  26. package/dist/codegen/pagination-utils/cursor-based.js +42 -9
  27. package/dist/codegen/pagination-utils/cursor-based.js.map +1 -1
  28. package/dist/codegen/pagination-utils/synthetic-cursor.js +8 -7
  29. package/dist/codegen/pagination-utils/synthetic-cursor.js.map +1 -1
  30. package/dist/codegen/shape/constants.d.ts +3 -0
  31. package/dist/codegen/shape/constants.js +4 -1
  32. package/dist/codegen/shape/constants.js.map +1 -1
  33. package/dist/codegen/shape/graphql/shape-select.js +0 -3
  34. package/dist/codegen/shape/graphql/shape-select.js.map +1 -1
  35. package/dist/codegen/shape/shape-ingest-paginated.d.ts +5 -0
  36. package/dist/codegen/shape/shape-ingest-paginated.js +54 -54
  37. package/dist/codegen/shape/shape-ingest-paginated.js.map +1 -1
  38. package/dist/codegen/shape/shape-utils.js +3 -2
  39. package/dist/codegen/shape/shape-utils.js.map +1 -1
  40. package/package.json +4 -4
@@ -2,4 +2,4 @@ import type { AdapterAnnotation } from '../../intermediate/adapter-annotation';
2
2
  import type { ModelInfo } from '../../intermediate/model-info';
3
3
  import type { Resource } from '../../intermediate/resource';
4
4
  import type { ImportContext } from '../../utils/imports';
5
- export declare function generateNetworkFunction(context: ImportContext, adapterAnnotation: AdapterAnnotation, resource: Resource, modelInfo: ModelInfo, transformConfigurationIdentifier?: string): string;
5
+ export declare function generateNetworkFunction(context: ImportContext, adapterAnnotation: AdapterAnnotation, resource: Resource, modelInfo: ModelInfo): string;
@@ -12,7 +12,7 @@ const constants_2 = require("../shared/constants");
12
12
  const util_1 = require("./util");
13
13
  const adapter_prepare_request_1 = require("./adapter-prepare-request");
14
14
  const shape_1 = require("../../utils/shape");
15
- function generateNetworkFunction(context, adapterAnnotation, resource, modelInfo, transformConfigurationIdentifier) {
15
+ function generateNetworkFunction(context, adapterAnnotation, resource, modelInfo) {
16
16
  const { id: resourceId, returnShape } = resource;
17
17
  const { name: adapterName, id: adapterId } = adapterAnnotation;
18
18
  const { importRamlArtifact } = context;
@@ -36,14 +36,11 @@ function generateNetworkFunction(context, adapterAnnotation, resource, modelInfo
36
36
  const buildRequestStatement = usePrepareRequest(resource, modelInfo) === true
37
37
  ? `const ${constants_1.ADAPTER_REQUEST_IDENTIFIER} = ${adapter_prepare_request_1.PREPARE_REQUEST_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_CACHE_SNAPSHOT_IDENTIFIER});`
38
38
  : `const ${constants_1.ADAPTER_REQUEST_IDENTIFIER} = ${createResourceRequestIdentifier}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER});`;
39
- const buildResourceParamsStatement = transformConfigurationIdentifier
40
- ? `const ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER} = ${createResourceParamsIdentifier}(${transformConfigurationIdentifier}(${constants_1.ADAPTER_CONFIG_IDENTIFIER}));`
41
- : `const ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER} = ${createResourceParamsIdentifier}(${constants_1.ADAPTER_CONFIG_IDENTIFIER});`;
42
39
  return (0, deindent_1.default) `
43
40
  export function ${constants_1.ADAPTER_BUILD_NETWORK_SNAPSHOT}(
44
41
  ${buildNetworkSnapshotParams.join(',\n')}
45
42
  ) : Promise<${snapshotTypeDefinition}> {
46
- ${buildResourceParamsStatement}
43
+ const ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER} = ${createResourceParamsIdentifier}(${constants_1.ADAPTER_CONFIG_IDENTIFIER});
47
44
  ${buildRequestStatement}
48
45
  return ${constants_2.LUVIO_IDENTIFIER}.dispatchResourceRequest<${resourceTypeIdentifier}>(${constants_1.ADAPTER_REQUEST_IDENTIFIER}, ${constants_1.ADAPTER_DISPATCH_OPTIONS_IDENTIFIER})
49
46
  .then((${constants_1.ADAPTER_RESPONSE_IDENTIFIER}) => {
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-network.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter-network.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-network.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { AdapterAnnotation } from '../../../intermediate/adapter-annotation';
2
+ import type { ModelInfo } from '../../../intermediate/model-info';
3
+ import type { Resource } from '../../../intermediate/resource';
4
+ import type { ImportContext } from '../../../utils/imports';
5
+ export declare function generateNetworkFunction(context: ImportContext, adapterAnnotation: AdapterAnnotation, resource: Resource, modelInfo: ModelInfo): string;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateNetworkFunction = void 0;
7
+ const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
+ const create_resource_request_1 = require("../../resource/create-resource-request");
9
+ const response_cache_keys_1 = require("../../resource/response-cache-keys");
10
+ const constants_1 = require("../constants");
11
+ const constants_2 = require("../../shared/constants");
12
+ const util_1 = require("../util");
13
+ const adapter_prepare_request_1 = require("../adapter-prepare-request");
14
+ const shape_1 = require("../../../utils/shape");
15
+ function generateNetworkFunction(context, adapterAnnotation, resource, modelInfo) {
16
+ const { id: resourceId, returnShape } = resource;
17
+ const { name: adapterName, id: adapterId } = adapterAnnotation;
18
+ const { importRamlArtifact } = context;
19
+ const returnShapeName = returnShape.name;
20
+ const resourceTypeIdentifier = importRamlArtifact(returnShape.id, returnShapeName);
21
+ const configInterfaceIdentifier = importRamlArtifact(adapterId, (0, util_1.buildConfigInterfaceName)(adapterName));
22
+ const snapshotTypeDefinition = `${constants_1.ADAPTER_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any>`;
23
+ const createResourceRequestIdentifier = importRamlArtifact(resourceId, create_resource_request_1.CREATE_RESOURCE_REQUEST_IDENTIFIER);
24
+ const createResourceParamsIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_CREATE_RESOURCE_PARAMS_IDENTIFIER);
25
+ const requestResponseSuccessIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_ON_FETCH_RESPONSE_SUCCESS);
26
+ const requestResponseErrorIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_ON_FETCH_RESPONSE_ERROR);
27
+ const resourceCacheKeysIdentifier = importRamlArtifact(resourceId, response_cache_keys_1.GET_RESPONSE_CACHE_KEYS_IDENTIFIER);
28
+ const buildNetworkSnapshotParams = [
29
+ `${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}`,
30
+ `${constants_1.ADAPTER_CONFIG_IDENTIFIER}: ${configInterfaceIdentifier}`,
31
+ `${constants_1.ADAPTER_DISPATCH_OPTIONS_IDENTIFIER}?: ${constants_1.ADAPTER_DISPATCH_RESOURCE_REQUEST_CONTEXT_IMPORT}`,
32
+ ];
33
+ if ((0, util_1.isPaginatedResource)(resource)) {
34
+ buildNetworkSnapshotParams.push(`${constants_1.ADAPTER_CACHE_SNAPSHOT_IDENTIFIER}?: ${constants_1.ADAPTER_UNFULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}>`);
35
+ }
36
+ const buildRequestStatement = usePrepareRequest(resource, modelInfo) === true
37
+ ? `const ${constants_1.ADAPTER_REQUEST_IDENTIFIER} = ${adapter_prepare_request_1.PREPARE_REQUEST_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_CACHE_SNAPSHOT_IDENTIFIER});`
38
+ : `const ${constants_1.ADAPTER_REQUEST_IDENTIFIER} = ${createResourceRequestIdentifier}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER});`;
39
+ const transformConfigurationIdentifier = context.importRamlArtifact(adapterId, constants_1.ADAPTER_TRASNFORM_CONFIGURATION_IDENTIFIER);
40
+ return (0, deindent_1.default) `
41
+ export function ${constants_1.ADAPTER_BUILD_NETWORK_SNAPSHOT}(
42
+ ${buildNetworkSnapshotParams.join(',\n')}
43
+ ) : Promise<${snapshotTypeDefinition}> {
44
+ const ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER} = ${createResourceParamsIdentifier}(${transformConfigurationIdentifier}(${constants_1.ADAPTER_CONFIG_IDENTIFIER}));
45
+ ${buildRequestStatement}
46
+ return ${constants_2.LUVIO_IDENTIFIER}.dispatchResourceRequest<${resourceTypeIdentifier}>(${constants_1.ADAPTER_REQUEST_IDENTIFIER}, ${constants_1.ADAPTER_DISPATCH_OPTIONS_IDENTIFIER})
47
+ .then((${constants_1.ADAPTER_RESPONSE_IDENTIFIER}) => {
48
+ const graphqlErrors = ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}?.body?.errors;
49
+ if((graphqlErrors || []).length === 0){
50
+ return ${constants_1.ADAPTER_RESPONSE_IDENTIFIER};
51
+ }
52
+
53
+ return Promise.reject({ errorType: 'adapterError', error: ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}?.body?.errors })
54
+ })
55
+ .then((${constants_1.ADAPTER_RESPONSE_IDENTIFIER}) => {
56
+ return ${constants_2.LUVIO_IDENTIFIER}.${constants_1.ADAPTER_HANDLE_SUCCESS_RESPONSE}(() => ${requestResponseSuccessIdentifier}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}), () => ${resourceCacheKeysIdentifier}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}.body));
57
+ })
58
+ .catch((${constants_1.ADAPTER_RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_ERROR_RESPONSE_INTERFACE_IDENTIFIER}) => {
59
+ return ${constants_2.LUVIO_IDENTIFIER}.${constants_1.ADAPTER_HANDLE_ERROR_RESPONSE}(() => ${requestResponseErrorIdentifier}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}));
60
+ });
61
+ }
62
+ `;
63
+ }
64
+ exports.generateNetworkFunction = generateNetworkFunction;
65
+ function usePrepareRequest(resource, modelInfo) {
66
+ if ((0, util_1.isPaginatedResource)(resource) === false) {
67
+ return false;
68
+ }
69
+ // prepareRequest is only generated when the root type is paginated
70
+ return (0, shape_1.isPaginated)(resource.returnShape.id, modelInfo);
71
+ }
72
+ //# sourceMappingURL=adapter-network.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-network.js","sourceRoot":"","sources":["../../../../src/codegen/adapter/graphql/adapter-network.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ const adapter_fragment_1 = require("./adapter-fragment");
10
10
  const adapter_key_builder_1 = require("../adapter-key-builder");
11
11
  const adapter_memory_cache_policy_1 = require("../adapter-memory-cache-policy");
12
12
  const adapter_name_1 = require("../adapter-name");
13
- const adapter_network_1 = require("../adapter-network");
13
+ const adapter_network_1 = require("./adapter-network");
14
14
  const adapter_network_cache_policy_1 = require("../adapter-network-cache-policy");
15
15
  const adapter_notify_change_1 = require("../adapter-notify-change");
16
16
  const adapter_one_of_params_1 = require("../adapter-one-of-params");
@@ -22,13 +22,10 @@ const adapter_prepare_request_1 = require("../adapter-prepare-request");
22
22
  const adapter_config_interface_1 = require("./adapter-config-interface");
23
23
  const adapter_config_transformer_1 = require("./adapter-config-transformer");
24
24
  const index_1 = require("../index");
25
- const constants_1 = require("../constants");
26
25
  const adapter_type_check_1 = require("./adapter-type-check");
27
26
  function generateGraphQLAdapter(resource, typescriptFilePath, compilerBaseOutputDir, adapterAnnotation, modelInfo, plugin) {
28
27
  const configParamInfos = (0, index_1.buildConfigParamInfos)(resource);
29
28
  const importContext = (0, imports_1.createImportContext)(typescriptFilePath, compilerBaseOutputDir, plugin);
30
- const { id: adapterId } = adapterAnnotation;
31
- const transformConfigurationIdentifier = importContext.importRamlArtifact(adapterId, constants_1.ADAPTER_TRASNFORM_CONFIGURATION_IDENTIFIER);
32
29
  const code = [
33
30
  (0, adapter_name_1.generateAdapterNameExport)(adapterAnnotation.name),
34
31
  (0, adapter_one_of_params_1.generateAdapterOneOfParams)(adapterAnnotation),
@@ -44,7 +41,7 @@ function generateGraphQLAdapter(resource, typescriptFilePath, compilerBaseOutput
44
41
  (0, adapter_resource_success_1.generateResourceSuccess)(importContext, adapterAnnotation, resource),
45
42
  (0, adapter_resource_error_1.generateResourceError)(importContext, adapterAnnotation, resource),
46
43
  (0, adapter_prepare_request_1.generatePrepareRequest)(importContext, adapterAnnotation, resource, modelInfo),
47
- (0, adapter_network_1.generateNetworkFunction)(importContext, adapterAnnotation, resource, modelInfo, transformConfigurationIdentifier),
44
+ (0, adapter_network_1.generateNetworkFunction)(importContext, adapterAnnotation, resource, modelInfo),
48
45
  (0, adapter_build_snapshot_context_1.generateBuildSnapshotContext)(importContext, adapterAnnotation, resource),
49
46
  (0, adapter_network_cache_policy_1.generateNetworkSnapshotFunctionCachePolicy)(importContext, adapterAnnotation, resource),
50
47
  (0, adapter_memory_cache_policy_1.generateMemorySnapshotFunctionCachePolicy)(importContext, adapterAnnotation, resource),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/adapter/graphql/index.ts"],"names":[],"mappings":";;;AAGA,oDAA6E;AAC7E,wEAAoE;AACpE,sFAAiF;AACjF,oDAAyD;AACzD,4EAAwE;AACxE,yDAAqE;AACrE,gEAA4D;AAC5D,gFAA2F;AAC3F,kDAA4D;AAC5D,wDAA6D;AAC7D,kFAA6F;AAC7F,oEAAgE;AAChE,oEAAsE;AACtE,qEAAiE;AACjE,yEAAqE;AACrE,0FAA4F;AAC5F,sEAAyE;AACzE,wEAAoE;AAGpE,yEAAmF;AACnF,6EAAiF;AACjF,oCAAiD;AACjD,4CAA0E;AAC1E,6DAAuE;AAEvE,SAAgB,sBAAsB,CAClC,QAAyB,EACzB,kBAAmC,EACnC,qBAAsC,EACtC,iBAAoC,EACpC,SAAoB,EACpB,MAAuB;IAEvB,MAAM,gBAAgB,GAAG,IAAA,6BAAqB,EAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,IAAA,6BAAmB,EAAC,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC7F,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC;IAC5C,MAAM,gCAAgC,GAAG,aAAa,CAAC,kBAAkB,CACrE,SAAS,EACT,sDAA0C,CAC7C,CAAC;IACF,MAAM,IAAI,GAAG;QACT,IAAA,wCAAyB,EAAC,iBAAiB,CAAC,IAAI,CAAC;QACjD,IAAA,kDAA0B,EAAC,iBAAiB,CAAC;QAC7C,IAAA,wEAAqC,EAAC,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;QACzF,IAAA,gEAAqC,EAAC,aAAa,EAAE,iBAAiB,CAAC;QACvE,IAAA,qDAA4B,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,gBAAgB,CAAC;QAC1F,IAAA,wCAAkB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QAC9D,IAAA,oDAA+B,EAC3B,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,CACZ;QACD,IAAA,oDAAwB,EAAC,aAAa,EAAE,iBAAiB,CAAC;QAC1D,IAAA,8DAAiC,EAAC,aAAa,EAAE,iBAAiB,CAAC;QACnE,IAAA,kDAA+B,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QAC3E,IAAA,qCAAqB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACjE,IAAA,kDAAuB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACnE,IAAA,8CAAqB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACjE,IAAA,gDAAsB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC7E,IAAA,yCAAuB,EACnB,aAAa,EACb,iBAAiB,EACjB,QAAQ,EACR,SAAS,EACT,gCAAgC,CACnC;QACD,IAAA,6DAA4B,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACxE,IAAA,yEAA0C,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACtF,IAAA,uEAAyC,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACrF,IAAA,gDAAsB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC7E,IAAA,4CAAoB,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;KAC3D;SACI,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,OAAO,IAAA,wBAAc,EAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AApDD,wDAoDC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/adapter/graphql/index.ts"],"names":[],"mappings":";;;AAGA,oDAA6E;AAC7E,wEAAoE;AACpE,sFAAiF;AACjF,oDAAyD;AACzD,4EAAwE;AACxE,yDAAqE;AACrE,gEAA4D;AAC5D,gFAA2F;AAC3F,kDAA4D;AAC5D,uDAA4D;AAC5D,kFAA6F;AAC7F,oEAAgE;AAChE,oEAAsE;AACtE,qEAAiE;AACjE,yEAAqE;AACrE,0FAA4F;AAC5F,sEAAyE;AACzE,wEAAoE;AAGpE,yEAAmF;AACnF,6EAAiF;AACjF,oCAAiD;AACjD,6DAAuE;AAEvE,SAAgB,sBAAsB,CAClC,QAAyB,EACzB,kBAAmC,EACnC,qBAAsC,EACtC,iBAAoC,EACpC,SAAoB,EACpB,MAAuB;IAEvB,MAAM,gBAAgB,GAAG,IAAA,6BAAqB,EAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,IAAA,6BAAmB,EAAC,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC7F,MAAM,IAAI,GAAG;QACT,IAAA,wCAAyB,EAAC,iBAAiB,CAAC,IAAI,CAAC;QACjD,IAAA,kDAA0B,EAAC,iBAAiB,CAAC;QAC7C,IAAA,wEAAqC,EAAC,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;QACzF,IAAA,gEAAqC,EAAC,aAAa,EAAE,iBAAiB,CAAC;QACvE,IAAA,qDAA4B,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,gBAAgB,CAAC;QAC1F,IAAA,wCAAkB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QAC9D,IAAA,oDAA+B,EAC3B,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,SAAS,CACZ;QACD,IAAA,oDAAwB,EAAC,aAAa,EAAE,iBAAiB,CAAC;QAC1D,IAAA,8DAAiC,EAAC,aAAa,EAAE,iBAAiB,CAAC;QACnE,IAAA,kDAA+B,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QAC3E,IAAA,qCAAqB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACjE,IAAA,kDAAuB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACnE,IAAA,8CAAqB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACjE,IAAA,gDAAsB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC7E,IAAA,yCAAuB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC9E,IAAA,6DAA4B,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACxE,IAAA,yEAA0C,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACtF,IAAA,uEAAyC,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,CAAC;QACrF,IAAA,gDAAsB,EAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC7E,IAAA,4CAAoB,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;KAC3D;SACI,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,OAAO,IAAA,wBAAc,EAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAzCD,wDAyCC"}
@@ -2,6 +2,7 @@ export declare const GRAPHQL_VARIABLES_IDENTIFIER = "GraphQLVariables";
2
2
  export declare const GRAPHQL_FRAGMENT_MAP_IDENTIFIER = "GraphQLFragmentMap";
3
3
  export declare const GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER = "GraphQLIngestState";
4
4
  export declare const GRAPHQL_STATE_INTERFACE_IDENTIFIER = "GraphQLState";
5
+ export declare const GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER = "GraphQLTypeDetails";
5
6
  export declare const TIMESTAMP_IDENTIFIER = "timestamp";
6
7
  export declare const CREATE_LINK_IDENTIFIER = "createLink";
7
8
  export declare const TYPE_UTIL_IDENTIFIER = "type-util";
@@ -16,6 +17,7 @@ export declare const GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = "getSerializedKey
16
17
  export declare const FIELD_KEY_IDENTIFIER = "fieldKey";
17
18
  export declare const FIELD_DATA_IDENTIFIER = "fieldData";
18
19
  export declare const FIELD_DATA_KEY_IDENTIFIER = "fieldDataKey";
20
+ export declare const FIELD_TYPE_IDENTIFIER = "fieldType";
19
21
  export declare const REQUESTED_FIELD_IDENTIFIER = "requestedField";
20
22
  export declare const REQUESTED_FIELD_NAME_IDENTIFIER = "requestedFieldName";
21
23
  export declare const SINK_IDENTIFIER = "sink";
@@ -36,3 +38,5 @@ export declare const END_CURSOR_IDENTIFIER = "endCursor";
36
38
  export declare const START_CURSOR_IDENTIFIER = "startCursor";
37
39
  export declare const IS_FRAGMENT_APPLICABLE_IDENTIFIER = "isFragmentApplicable";
38
40
  export declare const REQUESTED_FIELDS_IDENTIFIER = "requestedFields";
41
+ export declare const FIRST_IDENTIFIER = "first";
42
+ export declare const AFTER_IDENTIFIER = "after";
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.REQUESTED_FIELDS_IDENTIFIER = exports.IS_FRAGMENT_APPLICABLE_IDENTIFIER = exports.START_CURSOR_IDENTIFIER = exports.END_CURSOR_IDENTIFIER = exports.HAS_NEXT_PAGE_IDENTIFIER = exports.CURSOR_IDENTIFIER = exports.NODE_IDENTIFIER = exports.EDGES_IDENTIFIER = exports.PAGE_INFO_IDENTIFIER = exports.IS_MAPPED_FIELD_IDENTIFIER = exports.INGEST_FIELD_BY_TYPE_IDENTIFIER = exports.GET_FIELD_TYPE_IDENTIFIER = exports.QUERY_TRANSFORM_HELPER_IDENTIFIER = exports.GET_MINIMUM_FIELDS_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_TYPE_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER = exports.APPLY_MINIMUM_FIELDS_TO_QUERY_IDENTIFIER = exports.SINK_IDENTIFIER = exports.REQUESTED_FIELD_NAME_IDENTIFIER = exports.REQUESTED_FIELD_IDENTIFIER = exports.FIELD_DATA_KEY_IDENTIFIER = exports.FIELD_DATA_IDENTIFIER = exports.FIELD_KEY_IDENTIFIER = exports.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = exports.GET_REQUESTED_FIELDS_FOR_TYPE_IDENTIFIER = exports.GET_REQUESTED_FIELD_IDENTIFIER = exports.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER = exports.KEY_BUILDER_IDENTIFIER = exports.TYPE_CACHE_KEYS_IDENTIFIER = exports.TYPE_CONVERT_IDENTIFIER = exports.TYPE_INGEST_IDENTIFIER = exports.TYPE_UTIL_IDENTIFIER = exports.CREATE_LINK_IDENTIFIER = exports.TIMESTAMP_IDENTIFIER = exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_FRAGMENT_MAP_IDENTIFIER = exports.GRAPHQL_VARIABLES_IDENTIFIER = void 0;
3
+ exports.AFTER_IDENTIFIER = exports.FIRST_IDENTIFIER = exports.REQUESTED_FIELDS_IDENTIFIER = exports.IS_FRAGMENT_APPLICABLE_IDENTIFIER = exports.START_CURSOR_IDENTIFIER = exports.END_CURSOR_IDENTIFIER = exports.HAS_NEXT_PAGE_IDENTIFIER = exports.CURSOR_IDENTIFIER = exports.NODE_IDENTIFIER = exports.EDGES_IDENTIFIER = exports.PAGE_INFO_IDENTIFIER = exports.IS_MAPPED_FIELD_IDENTIFIER = exports.INGEST_FIELD_BY_TYPE_IDENTIFIER = exports.GET_FIELD_TYPE_IDENTIFIER = exports.QUERY_TRANSFORM_HELPER_IDENTIFIER = exports.GET_MINIMUM_FIELDS_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_TYPE_IDENTIFIER = exports.GET_QUERY_TRANSFORM_HELPER_FOR_FIELD_IDENTIFIER = exports.APPLY_MINIMUM_FIELDS_TO_QUERY_IDENTIFIER = exports.SINK_IDENTIFIER = exports.REQUESTED_FIELD_NAME_IDENTIFIER = exports.REQUESTED_FIELD_IDENTIFIER = exports.FIELD_TYPE_IDENTIFIER = exports.FIELD_DATA_KEY_IDENTIFIER = exports.FIELD_DATA_IDENTIFIER = exports.FIELD_KEY_IDENTIFIER = exports.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = exports.GET_REQUESTED_FIELDS_FOR_TYPE_IDENTIFIER = exports.GET_REQUESTED_FIELD_IDENTIFIER = exports.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER = exports.KEY_BUILDER_IDENTIFIER = exports.TYPE_CACHE_KEYS_IDENTIFIER = exports.TYPE_CONVERT_IDENTIFIER = exports.TYPE_INGEST_IDENTIFIER = exports.TYPE_UTIL_IDENTIFIER = exports.CREATE_LINK_IDENTIFIER = exports.TIMESTAMP_IDENTIFIER = exports.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER = exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER = exports.GRAPHQL_FRAGMENT_MAP_IDENTIFIER = exports.GRAPHQL_VARIABLES_IDENTIFIER = void 0;
4
4
  exports.GRAPHQL_VARIABLES_IDENTIFIER = 'GraphQLVariables';
5
5
  exports.GRAPHQL_FRAGMENT_MAP_IDENTIFIER = 'GraphQLFragmentMap';
6
6
  exports.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER = 'GraphQLIngestState';
7
7
  exports.GRAPHQL_STATE_INTERFACE_IDENTIFIER = 'GraphQLState';
8
+ exports.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER = 'GraphQLTypeDetails';
8
9
  exports.TIMESTAMP_IDENTIFIER = 'timestamp';
9
10
  exports.CREATE_LINK_IDENTIFIER = 'createLink';
10
11
  exports.TYPE_UTIL_IDENTIFIER = 'type-util';
@@ -19,6 +20,7 @@ exports.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER = 'getSerializedKeyForField';
19
20
  exports.FIELD_KEY_IDENTIFIER = 'fieldKey';
20
21
  exports.FIELD_DATA_IDENTIFIER = 'fieldData';
21
22
  exports.FIELD_DATA_KEY_IDENTIFIER = 'fieldDataKey';
23
+ exports.FIELD_TYPE_IDENTIFIER = 'fieldType';
22
24
  exports.REQUESTED_FIELD_IDENTIFIER = 'requestedField';
23
25
  exports.REQUESTED_FIELD_NAME_IDENTIFIER = 'requestedFieldName';
24
26
  exports.SINK_IDENTIFIER = 'sink';
@@ -39,4 +41,6 @@ exports.END_CURSOR_IDENTIFIER = 'endCursor';
39
41
  exports.START_CURSOR_IDENTIFIER = 'startCursor';
40
42
  exports.IS_FRAGMENT_APPLICABLE_IDENTIFIER = 'isFragmentApplicable';
41
43
  exports.REQUESTED_FIELDS_IDENTIFIER = 'requestedFields';
44
+ exports.FIRST_IDENTIFIER = 'first';
45
+ exports.AFTER_IDENTIFIER = 'after';
42
46
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG,kBAAkB,CAAC;AAClD,QAAA,+BAA+B,GAAG,oBAAoB,CAAC;AACvD,QAAA,yCAAyC,GAAG,oBAAoB,CAAC;AACjE,QAAA,kCAAkC,GAAG,cAAc,CAAC;AACpD,QAAA,oBAAoB,GAAG,WAAW,CAAC;AACnC,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,oBAAoB,GAAG,WAAW,CAAC;AACnC,QAAA,sBAAsB,GAAG,QAAQ,CAAC;AAClC,QAAA,uBAAuB,GAAG,sBAAsB,CAAC;AACjD,QAAA,0BAA0B,GAAG,kBAAkB,CAAC;AAChD,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,oCAAoC,GAAG,yBAAyB,CAAC;AACjE,QAAA,8BAA8B,GAAG,mBAAmB,CAAC;AACrD,QAAA,wCAAwC,GAAG,2BAA2B,CAAC;AACvE,QAAA,uCAAuC,GAAG,0BAA0B,CAAC;AACrE,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAClC,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,0BAA0B,GAAG,gBAAgB,CAAC;AAC9C,QAAA,+BAA+B,GAAG,oBAAoB,CAAC;AACvD,QAAA,eAAe,GAAG,MAAM,CAAC;AACzB,QAAA,wCAAwC,GAAG,2BAA2B,CAAC;AACvE,QAAA,+CAA+C,GAAG,iCAAiC,CAAC;AACpF,QAAA,8CAA8C,GAAG,gCAAgC,CAAC;AAClF,QAAA,6BAA6B,GAAG,kBAAkB,CAAC;AACnD,QAAA,iCAAiC,GAAG,sBAAsB,CAAC;AAC3D,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,+BAA+B,GAAG,mBAAmB,CAAC;AACtD,QAAA,0BAA0B,GAAG,eAAe,CAAC;AAC7C,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAClC,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,eAAe,GAAG,MAAM,CAAC;AACzB,QAAA,iBAAiB,GAAG,QAAQ,CAAC;AAC7B,QAAA,wBAAwB,GAAG,aAAa,CAAC;AACzC,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,uBAAuB,GAAG,aAAa,CAAC;AACxC,QAAA,iCAAiC,GAAG,sBAAsB,CAAC;AAC3D,QAAA,2BAA2B,GAAG,iBAAiB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,4BAA4B,GAAG,kBAAkB,CAAC;AAClD,QAAA,+BAA+B,GAAG,oBAAoB,CAAC;AACvD,QAAA,yCAAyC,GAAG,oBAAoB,CAAC;AACjE,QAAA,kCAAkC,GAAG,cAAc,CAAC;AACpD,QAAA,yCAAyC,GAAG,oBAAoB,CAAC;AACjE,QAAA,oBAAoB,GAAG,WAAW,CAAC;AACnC,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,oBAAoB,GAAG,WAAW,CAAC;AACnC,QAAA,sBAAsB,GAAG,QAAQ,CAAC;AAClC,QAAA,uBAAuB,GAAG,sBAAsB,CAAC;AACjD,QAAA,0BAA0B,GAAG,kBAAkB,CAAC;AAChD,QAAA,sBAAsB,GAAG,YAAY,CAAC;AACtC,QAAA,oCAAoC,GAAG,yBAAyB,CAAC;AACjE,QAAA,8BAA8B,GAAG,mBAAmB,CAAC;AACrD,QAAA,wCAAwC,GAAG,2BAA2B,CAAC;AACvE,QAAA,uCAAuC,GAAG,0BAA0B,CAAC;AACrE,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAClC,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,0BAA0B,GAAG,gBAAgB,CAAC;AAC9C,QAAA,+BAA+B,GAAG,oBAAoB,CAAC;AACvD,QAAA,eAAe,GAAG,MAAM,CAAC;AACzB,QAAA,wCAAwC,GAAG,2BAA2B,CAAC;AACvE,QAAA,+CAA+C,GAAG,iCAAiC,CAAC;AACpF,QAAA,8CAA8C,GAAG,gCAAgC,CAAC;AAClF,QAAA,6BAA6B,GAAG,kBAAkB,CAAC;AACnD,QAAA,iCAAiC,GAAG,sBAAsB,CAAC;AAC3D,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,+BAA+B,GAAG,mBAAmB,CAAC;AACtD,QAAA,0BAA0B,GAAG,eAAe,CAAC;AAC7C,QAAA,oBAAoB,GAAG,UAAU,CAAC;AAClC,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,eAAe,GAAG,MAAM,CAAC;AACzB,QAAA,iBAAiB,GAAG,QAAQ,CAAC;AAC7B,QAAA,wBAAwB,GAAG,aAAa,CAAC;AACzC,QAAA,qBAAqB,GAAG,WAAW,CAAC;AACpC,QAAA,uBAAuB,GAAG,aAAa,CAAC;AACxC,QAAA,iCAAiC,GAAG,sBAAsB,CAAC;AAC3D,QAAA,2BAA2B,GAAG,iBAAiB,CAAC;AAChD,QAAA,gBAAgB,GAAG,OAAO,CAAC;AAC3B,QAAA,gBAAgB,GAAG,OAAO,CAAC"}
@@ -157,7 +157,8 @@ function generateRamlConversion(graphqlDsl, graphqlTypeName, importContext, def,
157
157
  if(${constants_2.REQUESTED_FIELD_IDENTIFIER} === undefined) {
158
158
  break; // TODO: (W-11132802) We got a field back we didn't ask for. Call handleUnknownField.
159
159
  }
160
- const ${constants_2.FIELD_KEY_IDENTIFIER} = ${getFieldKeyImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER}, state.variables);
160
+ const ${constants_2.FIELD_TYPE_IDENTIFIER} = ${constants_2.GET_FIELD_TYPE_IDENTIFIER}(${constants_2.REQUESTED_FIELD_IDENTIFIER});
161
+ const ${constants_2.FIELD_KEY_IDENTIFIER} = ${getFieldKeyImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER}, state.variables, ${constants_2.FIELD_TYPE_IDENTIFIER});
161
162
  switch(${constants_2.REQUESTED_FIELD_IDENTIFIER}.name.value) {
162
163
  ${ramlIngestStatements.join('\n')}
163
164
  }
@@ -1 +1 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/convert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/convert.ts"],"names":[],"mappings":"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"}
@@ -20,9 +20,12 @@ function generateTypeUtil(graphqlResource, metadata, importContext) {
20
20
  const queryTypeName = queryType.name;
21
21
  const getQueryTransformHelperForFieldImport = importContext.importGraphQLArtifact('types', queryTypeName, 'getQueryTransformHelperForField');
22
22
  const getQueryTransformHelperForTypeImport = importContext.importGraphQLArtifact('types', queryTypeName, 'getQueryTransformHelperForType');
23
+ const cursorConnectionTypes = graphqlResource.graphqlDSL.cursorConnectionTypes;
23
24
  return (0, imports_1.resolveImports)((0, deindent_1.default) `
24
25
  export type ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER} = Record<string, any>;
25
26
  export type ${constants_3.GRAPHQL_FRAGMENT_MAP_IDENTIFIER} = Record<string, ${constants_2.LUVIO_GRAPHQL_FRAGMENT_DEFINITION_NODE_IMPORT}>;
27
+ export type ${constants_3.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER} = { isArray: boolean, typename: string };
28
+
26
29
  export interface ${constants_3.GRAPHQL_STATE_INTERFACE_IDENTIFIER}<D = unknown> {
27
30
  data: D,
28
31
  path: ${constants_1.ADAPTER_INGEST_PATH_INTERFACE_IDENTIFIER},
@@ -187,9 +190,27 @@ function generateTypeUtil(graphqlResource, metadata, importContext) {
187
190
  return requestedFields.find(fieldNode => (fieldNode.alias && fieldNode.alias.value === responseDataFieldName) || (!fieldNode.alias && fieldNode.name.value === responseDataFieldName));
188
191
  }
189
192
 
190
- export function ${constants_3.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER}(field: ${constants_2.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}, variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER}): string {
193
+ const CURSOR_CONNECTION_TYPES: string[] = [
194
+ ${cursorConnectionTypes.map((type) => {
195
+ return `'${type}',`;
196
+ })}
197
+ ];
198
+ export function isCursorConnectionType (fieldType: ${constants_3.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER}|undefined): boolean {
199
+ return fieldType !== undefined && CURSOR_CONNECTION_TYPES.includes(fieldType.typename);
200
+ }
201
+
202
+ export function ${constants_3.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER}(field: ${constants_2.LUVIO_GRAPHQL_FIELD_NODE_IMPORT}, variables: ${constants_3.GRAPHQL_VARIABLES_IDENTIFIER}, fieldType: ${constants_3.GRAPHQL_TYPE_DETAILS_INTERFACE_IDENTIFIER} | undefined): string {
203
+ let mutableArgumentNodes = Object.assign([] as ${constants_2.LUVIO_GRAPHQL_ARGUMENT_NODE_IMPORT}[], field.arguments);
204
+
205
+ // Paginated types are stored as a consolidated collection. Their keys should not include
206
+ // the "first" and "after" pagination parameters.
207
+ if (isCursorConnectionType(fieldType)) {
208
+ mutableArgumentNodes = mutableArgumentNodes.filter(node => {
209
+ return node.name.value !== '${constants_3.FIRST_IDENTIFIER}' && node.name.value !== '${constants_3.AFTER_IDENTIFIER}';
210
+ });
211
+ }
191
212
  // Serialize the arguments given to this field. Luvio can't "eval" these arguments atm
192
- const argumentString : string = field.arguments && field.arguments.length > 0 ? '__' + ${constants_3.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER}(field.arguments, variables) : '';
213
+ const argumentString : string = mutableArgumentNodes.length > 0 ? '__' + ${constants_3.SERIALIZE_FIELD_ARGUMENTS_IDENTIFIER}(mutableArgumentNodes, variables) : '';
193
214
  return field.name.value + argumentString; // It should be safe to always use the fieldName - If an alias is meaningful, there will be arguments on the key also.
194
215
  }
195
216
 
@@ -1 +1 @@
1
- {"version":3,"file":"generateTypeUtil.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/generateTypeUtil.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,oDAAwD;AAExD,oCAAuC;AAGvC,uDAAmF;AACnF,sDAcgC;AAChC,2CAeqB;AAErB,SAAgB,gBAAgB,CAC5B,eAAgC,EAChC,QAAgC,EAChC,aAA4B;;IAE5B,kHAAkH;IAClH,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACnE,IAAI,CAAC,SAAS,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;KAC7E;IACD,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC;IACrC,MAAM,qCAAqC,GAAG,aAAa,CAAC,qBAAqB,CAC7E,OAAO,EACP,aAAa,EACb,iCAAiC,CACpC,CAAC;IACF,MAAM,oCAAoC,GAAG,aAAa,CAAC,qBAAqB,CAC5E,OAAO,EACP,aAAa,EACb,gCAAgC,CACnC,CAAC;IAEF,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;sBACZ,wCAA4B;sBAC5B,2CAA+B,qBAAqB,yDAA6C;2BAC5F,8CAAkC;;oBAEzC,oDAAwC;yBACnC,wCAA4B;yBAC5B,2CAA+B;;;2BAG7B,qDAAyC,eAAe,8CAAkC;cACvG,4BAAgB,KAAK,wBAAY;cACjC,kCAAsB,KAAK,8BAAkB;cAC7C,gCAAoB;;;;sBAIZ,2CAA+B,MAAM,6CAAiC;;;;kBAI1E,2CAA+B;;;2BAGtB,6CAAiC;cAC9C,2DAA+C;cAC/C,yCAA6B;;;0BAGjB,kCAAsB;;;;;;0BAMtB,gDAAoC,4BAA4B,8CAAkC,mBAAmB,wCAA4B;+DAC5G,8CAAkC;;;;;;;;;kDAS/C,8CAAkC,gBAAgB,wCAA4B;;;;;iDAK/E,2CAA+B,gBAAgB,wCAA4B;;;;;;;;;;uEAUrD,2CAA+B;;;;;;;;;;;;uEAY/B,kDAAsC;;;;;;;;;;6BAUhF,IAAA,mBAAW,EAC5B,QAAQ,CAAC,OAAO,EAChB,MAAA,eAAe,CAAC,WAAW,0CAAE,EAAE,EAC/B,QAAQ,CAAC,SAAS,CACrB;;0BAEiB,oDAAwC,YAAY,8CAAkC,MAAM,8CAAkC;;;;0BAI9H,2DAA+C,KAAK,qCAAqC;0BACzF,yCAA6B;;;;;;;gEAOS,mDAAuC,qCAAqC,6CAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDA4C1H,oCAAoC;;;;yDAI9B,2CAA+B;;;;;;;;;;;;;;;;;;;0BAmB9D,0CAA8B,oDAAoD,2CAA+B,QAAQ,2CAA+B;;;;0BAIxJ,mDAAuC,WAAW,2CAA+B,gBAAgB,wCAA4B;;qGAElD,gDAAoC;;;;0BAI/G,oDAAwC,gBAAgB,2CAA+B,MAAM,0DAA8C,mBAAmB,mDAAuC,wBAAwB,2CAA+B,wCAAwC,2CAA+B,MAAM,0DAA8C,eAAe,yDAA6C,MAAM,qDAAyC,kBAAkB,2CAA+B;gCAC7gB,2CAA+B;;;;;;sBAMzC,oDAAwC;;;;;;0BAMpC,oDAAwC;;;;;;;KAO7D,CAAC,CAAC;AACP,CAAC;AA5ND,4CA4NC"}
1
+ {"version":3,"file":"generateTypeUtil.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/generateTypeUtil.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAC/C,oDAAwD;AAExD,oCAAuC;AAGvC,uDAAmF;AACnF,sDAcgC;AAChC,2CAkBqB;AAErB,SAAgB,gBAAgB,CAC5B,eAAgC,EAChC,QAAgC,EAChC,aAA4B;;IAE5B,kHAAkH;IAClH,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;IACnE,IAAI,CAAC,SAAS,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;KAC7E;IACD,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC;IACrC,MAAM,qCAAqC,GAAG,aAAa,CAAC,qBAAqB,CAC7E,OAAO,EACP,aAAa,EACb,iCAAiC,CACpC,CAAC;IACF,MAAM,oCAAoC,GAAG,aAAa,CAAC,qBAAqB,CAC5E,OAAO,EACP,aAAa,EACb,gCAAgC,CACnC,CAAC;IACF,MAAM,qBAAqB,GAAG,eAAe,CAAC,UAAU,CAAC,qBAAqB,CAAC;IAE/E,OAAO,IAAA,wBAAc,EAAC,IAAA,kBAAQ,EAAA;sBACZ,wCAA4B;sBAC5B,2CAA+B,qBAAqB,yDAA6C;sBACjG,qDAAyC;;2BAEpC,8CAAkC;;oBAEzC,oDAAwC;yBACnC,wCAA4B;yBAC5B,2CAA+B;;;2BAG7B,qDAAyC,eAAe,8CAAkC;cACvG,4BAAgB,KAAK,wBAAY;cACjC,kCAAsB,KAAK,8BAAkB;cAC7C,gCAAoB;;;;sBAIZ,2CAA+B,MAAM,6CAAiC;;;;kBAI1E,2CAA+B;;;2BAGtB,6CAAiC;cAC9C,2DAA+C;cAC/C,yCAA6B;;;0BAGjB,kCAAsB;;;;;;0BAMtB,gDAAoC,4BAA4B,8CAAkC,mBAAmB,wCAA4B;+DAC5G,8CAAkC;;;;;;;;;kDAS/C,8CAAkC,gBAAgB,wCAA4B;;;;;iDAK/E,2CAA+B,gBAAgB,wCAA4B;;;;;;;;;;uEAUrD,2CAA+B;;;;;;;;;;;;uEAY/B,kDAAsC;;;;;;;;;;6BAUhF,IAAA,mBAAW,EAC5B,QAAQ,CAAC,OAAO,EAChB,MAAA,eAAe,CAAC,WAAW,0CAAE,EAAE,EAC/B,QAAQ,CAAC,SAAS,CACrB;;0BAEiB,oDAAwC,YAAY,8CAAkC,MAAM,8CAAkC;;;;0BAI9H,2DAA+C,KAAK,qCAAqC;0BACzF,yCAA6B;;;;;;;gEAOS,mDAAuC,qCAAqC,6CAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mDA4C1H,oCAAoC;;;;yDAI9B,2CAA+B;;;;;;;;;;;;;;;;;;;0BAmB9D,0CAA8B,oDAAoD,2CAA+B,QAAQ,2CAA+B;;;;;cAKpK,qBAAqB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACjC,OAAO,IAAI,IAAI,IAAI,CAAC;IACxB,CAAC,CAAC;;6DAE+C,qDAAyC;;;;0BAI5E,mDAAuC,WAAW,2CAA+B,gBAAgB,wCAA4B,gBAAgB,qDAAyC;6DACnJ,8CAAkC;;;;;;kDAM7C,4BAAgB,6BAA6B,4BAAgB;;;;uFAIxB,gDAAoC;;;;0BAIjG,oDAAwC,gBAAgB,2CAA+B,MAAM,0DAA8C,mBAAmB,mDAAuC,wBAAwB,2CAA+B,wCAAwC,2CAA+B,MAAM,0DAA8C,eAAe,yDAA6C,MAAM,qDAAyC,kBAAkB,2CAA+B;gCAC7gB,2CAA+B;;;;;;sBAMzC,oDAAwC;;;;;;0BAMpC,oDAAwC;;;;;;;KAO7D,CAAC,CAAC;AACP,CAAC;AAjPD,4CAiPC"}
@@ -11,15 +11,100 @@ const utils_2 = require("./utils");
11
11
  const convert_1 = require("./convert");
12
12
  const constants_2 = require("./constants");
13
13
  const interface_1 = require("./interface");
14
- const FIELD_TYPE_IDENTIFIER = 'fieldType';
15
- function generateObjectTypeIngest(importContext, graphqlTypeName) {
14
+ const constants_3 = require("../../pagination-utils/constants");
15
+ const pagination_1 = require("../../../intermediate/pagination");
16
+ const constants_4 = require("../../shape/constants");
17
+ const constants_5 = require("../../pagination-utils/constants");
18
+ const shape_ingest_paginated_1 = require("../../shape/shape-ingest-paginated");
19
+ const constants_6 = require("../../shape/constants");
20
+ const INGEST_PAGINATED_METDATA = 'ingestPaginationMetadata';
21
+ function generateObjectTypeIngest(importContext, graphqlTypeName, isCursorConnectionType) {
16
22
  const ingestStatements = [
17
23
  (0, utils_2.getRequestedFieldsStatement)(importContext, graphqlTypeName),
18
- iterateThroughResponseKeys(importContext, graphqlTypeName),
24
+ iterateThroughResponseKeys(importContext, graphqlTypeName, isCursorConnectionType),
19
25
  ];
20
26
  return ingestStatements.join('\n');
21
27
  }
22
- function iterateThroughResponseKeys(importContext, graphqlTypeName) {
28
+ function generatePaginationFunction(importContext, astNodeParamType) {
29
+ const paginationMetadataType = importContext.importPaginationUtil(pagination_1.Strategy.Cursor, constants_3.PAGINATION_METADATA_TYPE_IDENTIFIER);
30
+ const graphqlStateInterface = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER);
31
+ const assignMetadataLink = importContext.importTypeUtil(constants_6.ASSIGN_METADATA_IDENTIFIER);
32
+ const equalsObject = importContext.importTypeUtil(constants_6.EQUALS_OBJECT_IDENTIFIER);
33
+ const offsetFromToken = importContext.importPaginationUtil(pagination_1.Strategy.Cursor, constants_5.OFFSET_FROM_TOKEN_IDENTIFIER);
34
+ const mergeMetadata = importContext.importPaginationUtil(pagination_1.Strategy.Cursor, constants_5.MERGE_METADATA_IDENTIFIER);
35
+ const hasGraphQLPaginationFields = importContext.importPaginationUtil(pagination_1.Strategy.Cursor, constants_5.HAS_GRAPHQL_PAGINATION_FIELDS_IDENTIFIER);
36
+ const createPaginationMetadata = importContext.importPaginationUtil(pagination_1.Strategy.Cursor, constants_5.CREATE_PAGINATION_METADATA_IDENTIFIER);
37
+ return (0, deindent_1.default) `
38
+ export function ${INGEST_PAGINATED_METDATA}(
39
+ astNode: ${astNodeParamType},
40
+ state: ${graphqlStateInterface}<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>,
41
+ key: string,
42
+ sink: ${interface_1.PARTIAL_INTERFACE_IDENTIFIER},
43
+ existingData: ${interface_1.PARTIAL_INTERFACE_IDENTIFIER},
44
+ ) {
45
+ const { data, luvio, store } = state;
46
+ const { pageInfo, edges } = data;
47
+
48
+ if (!${hasGraphQLPaginationFields}(data)) return;
49
+
50
+ const ${shape_ingest_paginated_1.PAGINATION_KEY_IDENTIFIER} = ${constants_4.KEY_IDENTIFIER} + '${constants_1.PAGINATION_KEY_SUFFIX}';
51
+ const ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER} = store.readEntry(paginationKey) as ${paginationMetadataType} | undefined;
52
+
53
+ const afterArg = astNode.arguments?.find(argument => { return argument.name.value === 'after'});
54
+ const afterArgVal = afterArg?.value.kind === 'StringValue' ? afterArg?.value.value : undefined;
55
+
56
+ if (
57
+ afterArgVal !== undefined &&
58
+ ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER} !== undefined &&
59
+ ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER}[afterArgVal] !== undefined &&
60
+ ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER}[pageInfo.startCursor] === undefined
61
+ ) {
62
+ const previousPageOffset = ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER}[afterArgVal] as number;
63
+ ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER}[pageInfo.startCursor] = previousPageOffset + 1;
64
+ }
65
+
66
+ const ${shape_ingest_paginated_1.START_OFFSET_IDENTIFIER} = ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER} === undefined
67
+ ? 0
68
+ : ${offsetFromToken}(${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER}, pageInfo.startCursor);
69
+
70
+ if (process.env.NODE_ENV !== 'production') {
71
+ if (${shape_ingest_paginated_1.START_OFFSET_IDENTIFIER} < 0) {
72
+ throw new RangeError('Cursor value ' + pageInfo.startCursor + ' is not recognized');
73
+ }
74
+ }
75
+
76
+ const ${shape_ingest_paginated_1.NEXT_OFFSET_IDENTIFIER} = ${shape_ingest_paginated_1.START_OFFSET_IDENTIFIER} + edges.length;
77
+ const ${shape_ingest_paginated_1.INCOMING_PAGINATION_METADATA_IDENTIFIER}: ${paginationMetadataType} = ${createPaginationMetadata}(${shape_ingest_paginated_1.START_OFFSET_IDENTIFIER}, edges);
78
+
79
+ if (!pageInfo.hasNextPage) {
80
+ ${shape_ingest_paginated_1.INCOMING_PAGINATION_METADATA_IDENTIFIER}.${constants_5.LIST_END_IDENTIFIER} = ${shape_ingest_paginated_1.NEXT_OFFSET_IDENTIFIER};
81
+ }
82
+
83
+ // store the updated pagination metadata
84
+ const mergedPaginationMetadata = ${mergeMetadata}(${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER}, ${shape_ingest_paginated_1.INCOMING_PAGINATION_METADATA_IDENTIFIER});
85
+ if (
86
+ ${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER} === undefined ||
87
+ ${equalsObject}(${shape_ingest_paginated_1.EXISTING_PAGINATION_METADATA_IDENTIFIER}, mergedPaginationMetadata, (existingProp, incomingProp) => {
88
+ return existingProp === incomingProp;
89
+ }) === false
90
+ ) {
91
+ luvio.storePublish(${shape_ingest_paginated_1.PAGINATION_KEY_IDENTIFIER}, mergedPaginationMetadata);
92
+ }
93
+
94
+ // merge the edges
95
+ ${assignMetadataLink}(${constants_2.SINK_IDENTIFIER}, ${shape_ingest_paginated_1.PAGINATION_KEY_IDENTIFIER});
96
+ const ${constants_4.EXISTING_RECORD_IDENTIFIER} = existingData ? existingData.data : undefined;
97
+ if (${constants_4.EXISTING_RECORD_IDENTIFIER} !== undefined && ${constants_4.EXISTING_RECORD_IDENTIFIER}.edges !== undefined) {
98
+ ${constants_2.SINK_IDENTIFIER}.edges = [
99
+ ...${constants_4.EXISTING_RECORD_IDENTIFIER}.edges.slice(0, ${shape_ingest_paginated_1.START_OFFSET_IDENTIFIER}),
100
+ ...${constants_2.SINK_IDENTIFIER}.edges,
101
+ ...${constants_4.EXISTING_RECORD_IDENTIFIER}.edges.slice(${shape_ingest_paginated_1.NEXT_OFFSET_IDENTIFIER}),
102
+ ];
103
+ }
104
+ }
105
+ `;
106
+ }
107
+ function iterateThroughResponseKeys(importContext, graphqlTypeName, isCursorConnectionType) {
23
108
  const getRequestedFieldImport = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GET_REQUESTED_FIELD_IDENTIFIER);
24
109
  const getFieldKeyImport = importContext.importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GET_SERIALIZED_KEY_FOR_FIELD_IDENTIFIER);
25
110
  const getFieldTypeImport = importContext.importGraphQLArtifact('types', graphqlTypeName, constants_2.GET_FIELD_TYPE_IDENTIFIER);
@@ -33,39 +118,44 @@ function iterateThroughResponseKeys(importContext, graphqlTypeName) {
33
118
  if(${constants_2.IS_MAPPED_FIELD_IDENTIFIER}(${constants_2.REQUESTED_FIELD_IDENTIFIER})) {
34
119
  continue; // Skips scalar fields that are mapped to RAML.
35
120
  }
36
- const ${constants_2.FIELD_KEY_IDENTIFIER} = ${getFieldKeyImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER}, state.variables);
37
- const ${FIELD_TYPE_IDENTIFIER} = ${getFieldTypeImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER});
121
+ const ${constants_2.FIELD_TYPE_IDENTIFIER} = ${getFieldTypeImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER});
122
+ const ${constants_2.FIELD_KEY_IDENTIFIER} = ${getFieldKeyImport}(${constants_2.REQUESTED_FIELD_IDENTIFIER}, state.variables, ${constants_2.FIELD_TYPE_IDENTIFIER});
38
123
  if(fieldType === undefined) {
39
124
  // This field's type is unknown to us. This breaks normalization.
40
125
  console.warn(\`Unknown Field: ${constants_2.REQUESTED_FIELD_IDENTIFIER}. This field or nested fields cannot participate in normalization\`);
41
126
  ${constants_2.SINK_IDENTIFIER}[${constants_2.FIELD_KEY_IDENTIFIER}] = ${constants_2.FIELD_DATA_IDENTIFIER};
42
127
  continue;
43
128
  }
129
+ ${isCursorConnectionType
130
+ ? `if (${constants_2.FIELD_KEY_IDENTIFIER} === '${constants_2.PAGE_INFO_IDENTIFIER}') continue; // pageInfo is always synthesized from pagination metadata`
131
+ : ''}
44
132
  if (${constants_2.FIELD_DATA_IDENTIFIER} === null) {
45
133
  ${constants_2.SINK_IDENTIFIER}[${constants_2.FIELD_KEY_IDENTIFIER}] = ${constants_2.FIELD_DATA_IDENTIFIER};
46
134
  continue; // Don't delegate null to type ingest.
47
135
  }
48
- if(${FIELD_TYPE_IDENTIFIER}.isArray && ${constants_2.FIELD_DATA_IDENTIFIER}.length !== undefined) {
136
+ if(${constants_2.FIELD_TYPE_IDENTIFIER}.isArray && ${constants_2.FIELD_DATA_IDENTIFIER}.length !== undefined) {
49
137
  const arrayLength = ${constants_2.FIELD_DATA_IDENTIFIER}.length;
50
138
  const arraySink: any[] = new Array(arrayLength);
51
139
  for(let i = 0, len = arrayLength; i < len; i += 1) {
52
140
  const arrayFullPathKey = key + '__' + ${constants_2.FIELD_KEY_IDENTIFIER};
53
- ${constants_2.INGEST_FIELD_BY_TYPE_IDENTIFIER}(${FIELD_TYPE_IDENTIFIER}.typename, arrayFullPathKey, ${constants_2.REQUESTED_FIELD_IDENTIFIER}, arraySink, i, ${constants_2.FIELD_DATA_IDENTIFIER}[i], state);
141
+ ${constants_2.INGEST_FIELD_BY_TYPE_IDENTIFIER}(${constants_2.FIELD_TYPE_IDENTIFIER}.typename, arrayFullPathKey, ${constants_2.REQUESTED_FIELD_IDENTIFIER}, arraySink, i, ${constants_2.FIELD_DATA_IDENTIFIER}[i], state);
54
142
  }
55
143
  ${constants_2.SINK_IDENTIFIER}[${constants_2.FIELD_KEY_IDENTIFIER}] = arraySink;
56
144
  } else {
57
- ${constants_2.INGEST_FIELD_BY_TYPE_IDENTIFIER}(${FIELD_TYPE_IDENTIFIER}.typename, key, ${constants_2.REQUESTED_FIELD_IDENTIFIER}, ${constants_2.SINK_IDENTIFIER}, ${constants_2.FIELD_KEY_IDENTIFIER}, ${constants_2.FIELD_DATA_IDENTIFIER}, state);
145
+ ${constants_2.INGEST_FIELD_BY_TYPE_IDENTIFIER}(${constants_2.FIELD_TYPE_IDENTIFIER}.typename, key, ${constants_2.REQUESTED_FIELD_IDENTIFIER}, ${constants_2.SINK_IDENTIFIER}, ${constants_2.FIELD_KEY_IDENTIFIER}, ${constants_2.FIELD_DATA_IDENTIFIER}, state);
58
146
  }
59
147
  }
60
148
  `;
61
149
  }
62
150
  function generateIngest(graphqlDsl, graphqlTypeName, def, importContext, _metadata, modelInfo) {
63
151
  var _a;
64
- const { schema, typeNameToExtensions } = graphqlDsl;
65
- const { importGraphQLArtifact, importAdapterUtil, importRamlArtifact } = importContext;
152
+ const { schema, typeNameToExtensions, cursorConnectionTypes } = graphqlDsl;
153
+ const { importGraphQLArtifact, importAdapterUtil, importRamlArtifact, importTypeUtil } = importContext;
66
154
  const normalizableTypeMap = (0, utils_1.getNormalizableTypeMap)(schema);
67
155
  const createLink = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.CREATE_LINK_IDENTIFIER);
68
156
  const graphqlStateInterface = importGraphQLArtifact('types', constants_2.TYPE_UTIL_IDENTIFIER, constants_2.GRAPHQL_INGEST_STATE_INTERFACE_IDENTIFIER);
157
+ const equalsObjectImport = importTypeUtil('equalsObject');
158
+ const STABLE_JSON_STRINGIFY = importAdapterUtil('stableJSONStringify');
69
159
  const keyPrefix = importAdapterUtil('keyPrefix');
70
160
  const ttl = (0, utils_2.isTypeExtensionDefined)(typeNameToExtensions, graphqlTypeName, 'ttl')
71
161
  ? 'TTL'
@@ -82,28 +172,23 @@ function generateIngest(graphqlDsl, graphqlTypeName, def, importContext, _metada
82
172
  ramlIngest = importRamlArtifact(ramlTypeId, constants_2.TYPE_INGEST_IDENTIFIER);
83
173
  }
84
174
  }
175
+ const isCursorConnectionType = cursorConnectionTypes.includes(graphqlTypeName);
85
176
  return (0, deindent_1.default) `
86
177
 
87
178
  ${convertToRaml}
88
179
 
180
+ ${isCursorConnectionType ? generatePaginationFunction(importContext, astNodeParamType) : ''}
181
+
89
182
  export function ingest(astNode: ${astNodeParamType}, state: ${graphqlStateInterface}<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>) {
90
183
  const { path, data, ${constants_1.LUVIO_IDENTIFIER}, ${constants_1.LUVIO_STORE_IDENTIFIER}, ${constants_2.TIMESTAMP_IDENTIFIER} } = state;
91
184
  const key = ${constants_2.KEY_BUILDER_IDENTIFIER}(${constants_1.LUVIO_IDENTIFIER}, path, data);
92
185
  const ${constants_2.SINK_IDENTIFIER}: Record<string,any> = {};
93
186
 
94
187
  // ingest field data
95
- ${generateObjectTypeIngest(importContext, graphqlTypeName)}
188
+ ${generateObjectTypeIngest(importContext, graphqlTypeName, isCursorConnectionType)}
96
189
 
97
190
  // merge existing cache data and new request response data
98
- let mergedData: Record<string,any>;
99
- const existingData = ${constants_1.LUVIO_STORE_IDENTIFIER}.readEntry<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>(key);
100
- if (existingData !== undefined && existingData !== null && existingData.__type !== "error") {
101
- mergedData = mergeData(existingData as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER}, ${constants_2.SINK_IDENTIFIER} as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER});
102
- }
103
- else {
104
- mergedData = {data: ${constants_2.SINK_IDENTIFIER}};
105
- }
106
-
191
+ let mergedData: Record<string,any> = {data: ${constants_2.SINK_IDENTIFIER}};
107
192
  ${convertToRaml === ''
108
193
  ? ''
109
194
  : (0, deindent_1.default) `
@@ -115,9 +200,18 @@ function generateIngest(graphqlDsl, graphqlTypeName, def, importContext, _metada
115
200
  const ramlTypeRef = ${ramlIngest}(ramlSink, path, ${constants_1.LUVIO_IDENTIFIER}, ${constants_1.LUVIO_STORE_IDENTIFIER}, ${constants_2.TIMESTAMP_IDENTIFIER});
116
201
  mergedData["__link"] = ramlTypeRef;
117
202
  }`}
118
-
119
- // publish
120
- ${constants_1.LUVIO_IDENTIFIER}.storePublish(key, mergedData);
203
+ const existingData = ${constants_1.LUVIO_STORE_IDENTIFIER}.readEntry<${interface_1.PARTIAL_INTERFACE_IDENTIFIER}>(key);
204
+ ${isCursorConnectionType
205
+ ? `${INGEST_PAGINATED_METDATA}(astNode, state, key, ${constants_2.SINK_IDENTIFIER} as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER}, existingData as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER});`
206
+ : ''}
207
+ if (existingData !== undefined && existingData !== null && existingData.__type !== "error") {
208
+ mergedData = mergeData(existingData as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER}, ${constants_2.SINK_IDENTIFIER} as ${interface_1.PARTIAL_INTERFACE_IDENTIFIER});
209
+ if(!${equalsObjectImport}(existingData, mergedData, (propA, propB) => ${STABLE_JSON_STRINGIFY}(propA) === ${STABLE_JSON_STRINGIFY}(propB))) { // naive impl
210
+ ${constants_1.LUVIO_IDENTIFIER}.storePublish(key, mergedData);
211
+ }
212
+ } else {
213
+ ${constants_1.LUVIO_IDENTIFIER}.storePublish(key, mergedData);
214
+ }
121
215
 
122
216
  const storeMetadataParams = {
123
217
  ttl: ${ttl},
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ingest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingest.js","sourceRoot":"","sources":["../../../../src/codegen/graphql/type/ingest.ts"],"names":[],"mappings":"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"}
@@ -134,7 +134,8 @@ function generateSelect(graphqlDsl, graphqlTypeName, def, importContext, _metada
134
134
  switch(sel.name.value){
135
135
  ${generateDataMapping(graphqlDsl, graphqlTypeName, def, normalizableTypeMap)}
136
136
  default: {
137
- const ${constants_3.FIELD_KEY_IDENTIFIER} = ${`${getFieldKeyImport}(sel, variables)`};
137
+ const ${constants_3.FIELD_TYPE_IDENTIFIER} = ${constants_3.GET_FIELD_TYPE_IDENTIFIER}(sel);
138
+ const ${constants_3.FIELD_KEY_IDENTIFIER} = ${`${getFieldKeyImport}(sel, variables, ${constants_3.FIELD_TYPE_IDENTIFIER})`};
138
139
  return source.data[${constants_3.FIELD_KEY_IDENTIFIER}];
139
140
  }
140
141
  }