@luvio/compiler 0.58.1 → 0.61.0-236.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 (34) hide show
  1. package/dist/codegen/adapter/adapter-network-cache-policy.js +1 -1
  2. package/dist/codegen/adapter/adapter-network-cache-policy.js.map +1 -1
  3. package/dist/codegen/adapter/adapter-network.js +3 -2
  4. package/dist/codegen/adapter/adapter-network.js.map +1 -1
  5. package/dist/codegen/adapter/adapter-resolve-unfulfilled.d.ts +4 -0
  6. package/dist/codegen/adapter/adapter-resolve-unfulfilled.js +39 -0
  7. package/dist/codegen/adapter/adapter-resolve-unfulfilled.js.map +1 -0
  8. package/dist/codegen/adapter/index.js +0 -2
  9. package/dist/codegen/adapter/index.js.map +1 -1
  10. package/dist/codegen/resource/composite/child-envelopes.d.ts +6 -0
  11. package/dist/codegen/resource/composite/child-envelopes.js +31 -0
  12. package/dist/codegen/resource/composite/child-envelopes.js.map +1 -0
  13. package/dist/codegen/resource/composite/ingest-success-child-resource-params.js +3 -3
  14. package/dist/codegen/resource/composite/ingest-success-child-resource-params.js.map +1 -1
  15. package/dist/codegen/resource/composite/ingest-success.d.ts +0 -1
  16. package/dist/codegen/resource/composite/ingest-success.js +5 -16
  17. package/dist/codegen/resource/composite/ingest-success.js.map +1 -1
  18. package/dist/codegen/resource/composite/response-child-cache-keys.d.ts +6 -0
  19. package/dist/codegen/resource/composite/response-child-cache-keys.js +77 -0
  20. package/dist/codegen/resource/composite/response-child-cache-keys.js.map +1 -0
  21. package/dist/codegen/resource/index.js +2 -0
  22. package/dist/codegen/resource/index.js.map +1 -1
  23. package/dist/codegen/resource/response-cache-keys.d.ts +5 -0
  24. package/dist/codegen/resource/response-cache-keys.js +45 -0
  25. package/dist/codegen/resource/response-cache-keys.js.map +1 -0
  26. package/dist/codegen/shape/index.js +2 -0
  27. package/dist/codegen/shape/index.js.map +1 -1
  28. package/dist/codegen/shape/shape-cache-keys.d.ts +7 -0
  29. package/dist/codegen/shape/shape-cache-keys.js +289 -0
  30. package/dist/codegen/shape/shape-cache-keys.js.map +1 -0
  31. package/package.json +5 -4
  32. package/dist/codegen/adapter/adapter-response-keys.d.ts +0 -4
  33. package/dist/codegen/adapter/adapter-response-keys.js +0 -44
  34. package/dist/codegen/adapter/adapter-response-keys.js.map +0 -1
@@ -18,7 +18,7 @@ function generateNetworkSnapshotFunctionCachePolicy(context, adapterAnnotation,
18
18
  const snapshotTypeDefinition = `${constants_2.ADAPTER_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any>`;
19
19
  const buildNetworkSnapshotIdentifier = importRamlArtifact(adapterId, constants_2.ADAPTER_BUILD_NETWORK_SNAPSHOT);
20
20
  return deindent_1.default `
21
- export function ${constants_2.ADAPTER_BUILD_NETWORK_SNAPSHOT_FOR_CACHE_POLICY}(${constants_2.ADAPTER_BUILD_SNAPSHOT_CONTEXT_IDENTIFIER}: ${constants_2.ADAPTER_BUILD_SNAPSHOT_CONTEXT_TYPE_IDENTIFIER}, _${dispatchResourceRequestIdentifier}: ${constants_2.DISPATCH_RESOURCE_REQUEST_IMPORT_IDENTIFIER}<${resourceTypeIdentifier}>) : Promise<${snapshotTypeDefinition}> {
21
+ export function ${constants_2.ADAPTER_BUILD_NETWORK_SNAPSHOT_FOR_CACHE_POLICY}(${constants_2.ADAPTER_BUILD_SNAPSHOT_CONTEXT_IDENTIFIER}: ${constants_2.ADAPTER_BUILD_SNAPSHOT_CONTEXT_TYPE_IDENTIFIER}, _${dispatchResourceRequestIdentifier}?: ${constants_2.DISPATCH_RESOURCE_REQUEST_IMPORT_IDENTIFIER}<${resourceTypeIdentifier}>) : Promise<${snapshotTypeDefinition}> {
22
22
  ${adapter_build_snapshot_context_1.generateSnapshotContextDestructuring()}
23
23
  return ${buildNetworkSnapshotIdentifier}(${constants_1.LUVIO_IDENTIFIER}, ${constants_2.ADAPTER_CONFIG_IDENTIFIER});
24
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-network-cache-policy.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-network-cache-policy.ts"],"names":[],"mappings":";;;;;;AAEA,mDAAuD;AACvD,oEAA4C;AAC5C,2CAQqB;AAErB,qFAAwF;AAExF,MAAM,iCAAiC,GAAG,yBAAyB,CAAC;AAEpE,SAAgB,0CAA0C,CACtD,OAAsB,EACtB,iBAAoC,EACpC,QAAkB;IAElB,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjC,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC;IAC5C,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;IAEvC,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAC1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,sBAAsB,GAAG,GAAG,mCAAuB,IAAI,sBAAsB,QAAQ,CAAC;IAE5F,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,0CAA8B,CACjC,CAAC;IAEF,OAAO,kBAAQ,CAAA;0BACO,2DAA+C,IAAI,qDAAyC,KAAK,0DAA8C,MAAM,iCAAiC,KAAK,uDAA2C,IAAI,sBAAsB,gBAAgB,sBAAsB;cAClT,qEAAoC,EAAE;qBAC/B,8BAA8B,IAAI,4BAAgB,KAAK,qCAAyB;;KAEhG,CAAC;AACN,CAAC;AAxBD,gGAwBC"}
1
+ {"version":3,"file":"adapter-network-cache-policy.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-network-cache-policy.ts"],"names":[],"mappings":";;;;;;AAEA,mDAAuD;AACvD,oEAA4C;AAC5C,2CAQqB;AAErB,qFAAwF;AAExF,MAAM,iCAAiC,GAAG,yBAAyB,CAAC;AAEpE,SAAgB,0CAA0C,CACtD,OAAsB,EACtB,iBAAoC,EACpC,QAAkB;IAElB,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjC,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC;IAC5C,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;IAEvC,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAC1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,sBAAsB,GAAG,GAAG,mCAAuB,IAAI,sBAAsB,QAAQ,CAAC;IAE5F,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,0CAA8B,CACjC,CAAC;IAEF,OAAO,kBAAQ,CAAA;0BACO,2DAA+C,IAAI,qDAAyC,KAAK,0DAA8C,MAAM,iCAAiC,MAAM,uDAA2C,IAAI,sBAAsB,gBAAgB,sBAAsB;cACnT,qEAAoC,EAAE;qBAC/B,8BAA8B,IAAI,4BAAgB,KAAK,qCAAyB;;KAEhG,CAAC;AACN,CAAC;AAxBD,gGAwBC"}
@@ -6,10 +6,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.generateNetworkFunction = void 0;
7
7
  const deindent_1 = __importDefault(require("../../utils/deindent"));
8
8
  const create_resource_request_1 = require("../resource/create-resource-request");
9
+ const response_cache_keys_1 = require("../resource/response-cache-keys");
9
10
  const constants_1 = require("./constants");
10
11
  const constants_2 = require("../shared/constants");
11
12
  const util_1 = require("./util");
12
- const adapter_response_keys_1 = require("./adapter-response-keys");
13
13
  function generateNetworkFunction(context, adapterAnnotation, resource) {
14
14
  const { id: resourceId, returnShape } = resource;
15
15
  const { name: adapterName, id: adapterId } = adapterAnnotation;
@@ -22,13 +22,14 @@ function generateNetworkFunction(context, adapterAnnotation, resource) {
22
22
  const createResourceParamsIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_CREATE_RESOURCE_PARAMS_IDENTIFIER);
23
23
  const requestResponseSuccessIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_ON_RESOURCE_RESPONSE_SUCCESS);
24
24
  const requestResponseErrorIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_ON_RESOURCE_RESPONSE_ERROR);
25
+ const resourceCacheKeysIdentifier = importRamlArtifact(resourceId, response_cache_keys_1.GET_RESPONSE_CACHE_KEYS_IDENTIFIER);
25
26
  return deindent_1.default `
26
27
  export function ${constants_1.ADAPTER_BUILD_NETWORK_SNAPSHOT}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}: ${configInterfaceIdentifier}, ${constants_1.ADAPTER_OVERRIDE_IDENTIFIER}?: ${constants_1.ADAPTER_RESOURCE_REQUEST_OVERRIDE_IMPORT}) : Promise<${snapshotTypeDefinition}> {
27
28
  const ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER} = ${createResourceParamsIdentifier}(${constants_1.ADAPTER_CONFIG_IDENTIFIER});
28
29
  const ${constants_1.ADAPTER_REQUEST_IDENTIFIER} = ${resourceIdentifier}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER});
29
30
  return ${constants_2.LUVIO_IDENTIFIER}.dispatchResourceRequest<${resourceTypeIdentifier}>(${constants_1.ADAPTER_REQUEST_IDENTIFIER}, ${constants_1.ADAPTER_OVERRIDE_IDENTIFIER})
30
31
  .then((${constants_1.ADAPTER_RESPONSE_IDENTIFIER}) => {
31
- return ${constants_2.LUVIO_IDENTIFIER}.handleSuccessResponse(() => ${requestResponseSuccessIdentifier}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}), () => ${adapter_response_keys_1.ADAPTER_RESPONSE_KEYS_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}));
32
+ return ${constants_2.LUVIO_IDENTIFIER}.handleSuccessResponse(() => ${requestResponseSuccessIdentifier}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}), () => ${resourceCacheKeysIdentifier}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}.body));
32
33
  }, (${constants_1.ADAPTER_RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_FETCH_RESPONSE_INTERFACE_IDENTIFIER}<unknown>) => {
33
34
  return ${requestResponseErrorIdentifier}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER});
34
35
  });
@@ -1 +1 @@
1
- {"version":3,"file":"adapter-network.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-network.ts"],"names":[],"mappings":";;;;;;AAEA,oEAA4C;AAC5C,iFAAyF;AACzF,2CAaqB;AACrB,mDAAqE;AACrE,iCAAkD;AAElD,mEAA2E;AAE3E,SAAgB,uBAAuB,CACnC,OAAsB,EACtB,iBAAoC,EACpC,QAAkB;IAElB,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC;IAC/D,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;IAEvC,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAC1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,yBAAyB,GAAG,kBAAkB,CAChD,SAAS,EACT,+BAAwB,CAAC,WAAW,CAAC,CACxC,CAAC;IACF,MAAM,sBAAsB,GAAG,GAAG,mCAAuB,IAAI,sBAAsB,QAAQ,CAAC;IAE5F,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,UAAU,EAAE,4DAAkC,CAAC,CAAC;IAC9F,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,qDAAyC,CAC5C,CAAC;IACF,MAAM,gCAAgC,GAAG,kBAAkB,CACvD,SAAS,EACT,gDAAoC,CACvC,CAAC;IACF,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,8CAAkC,CACrC,CAAC;IAEF,OAAO,kBAAQ,CAAA;0BACO,0CAA8B,IAAI,4BAAgB,KAAK,wBAAY,KAAK,qCAAyB,KAAK,yBAAyB,KAAK,uCAA2B,MAAM,oDAAwC,eAAe,sBAAsB;oBACxP,8CAAkC,MAAM,8BAA8B,IAAI,qCAAyB;oBACnG,sCAA0B,MAAM,kBAAkB,IAAI,8CAAkC;qBACvF,4BAAgB,4BAA4B,sBAAsB,KAAK,sCAA0B,KAAK,uCAA2B;yBAC7H,uCAA2B;6BACvB,4BAAgB,gCAAgC,gCAAgC,IAAI,4BAAgB,KAAK,qCAAyB,KAAK,8CAAkC,KAAK,uCAA2B,YAAY,wDAAgC,IAAI,4BAAgB,KAAK,8CAAkC,KAAK,uCAA2B;sBACvV,uCAA2B,KAAK,uDAA2C;6BACpE,8BAA8B,IAAI,4BAAgB,KAAK,qCAAyB,KAAK,8CAAkC,KAAK,uCAA2B;;;KAG/K,CAAC;AACN,CAAC;AA3CD,0DA2CC"}
1
+ {"version":3,"file":"adapter-network.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-network.ts"],"names":[],"mappings":";;;;;;AAEA,oEAA4C;AAC5C,iFAAyF;AACzF,yEAAqF;AACrF,2CAaqB;AACrB,mDAAqE;AACrE,iCAAkD;AAGlD,SAAgB,uBAAuB,CACnC,OAAsB,EACtB,iBAAoC,EACpC,QAAkB;IAElB,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC;IAC/D,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;IAEvC,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAC1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,yBAAyB,GAAG,kBAAkB,CAChD,SAAS,EACT,+BAAwB,CAAC,WAAW,CAAC,CACxC,CAAC;IACF,MAAM,sBAAsB,GAAG,GAAG,mCAAuB,IAAI,sBAAsB,QAAQ,CAAC;IAE5F,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,UAAU,EAAE,4DAAkC,CAAC,CAAC;IAC9F,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,qDAAyC,CAC5C,CAAC;IACF,MAAM,gCAAgC,GAAG,kBAAkB,CACvD,SAAS,EACT,gDAAoC,CACvC,CAAC;IACF,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,8CAAkC,CACrC,CAAC;IAEF,MAAM,2BAA2B,GAAG,kBAAkB,CAClD,UAAU,EACV,wDAAkC,CACrC,CAAC;IAEF,OAAO,kBAAQ,CAAA;0BACO,0CAA8B,IAAI,4BAAgB,KAAK,wBAAY,KAAK,qCAAyB,KAAK,yBAAyB,KAAK,uCAA2B,MAAM,oDAAwC,eAAe,sBAAsB;oBACxP,8CAAkC,MAAM,8BAA8B,IAAI,qCAAyB;oBACnG,sCAA0B,MAAM,kBAAkB,IAAI,8CAAkC;qBACvF,4BAAgB,4BAA4B,sBAAsB,KAAK,sCAA0B,KAAK,uCAA2B;yBAC7H,uCAA2B;6BACvB,4BAAgB,gCAAgC,gCAAgC,IAAI,4BAAgB,KAAK,qCAAyB,KAAK,8CAAkC,KAAK,uCAA2B,YAAY,2BAA2B,IAAI,8CAAkC,KAAK,uCAA2B;sBAC7T,uCAA2B,KAAK,uDAA2C;6BACpE,8BAA8B,IAAI,4BAAgB,KAAK,qCAAyB,KAAK,8CAAkC,KAAK,uCAA2B;;;KAG/K,CAAC;AACN,CAAC;AAhDD,0DAgDC"}
@@ -0,0 +1,4 @@
1
+ import { AdapterAnnotation } from '../../intermediate/adapter-annotation';
2
+ import { Resource } from '../../intermediate/resource';
3
+ import { ImportContext } from '../../utils/imports';
4
+ export declare function generateResolveUnfulfilledSnapshotFunction(context: ImportContext, adapterAnnotation: AdapterAnnotation, resource: Resource): string;
@@ -0,0 +1,39 @@
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.generateResolveUnfulfilledSnapshotFunction = void 0;
7
+ const deindent_1 = __importDefault(require("../../utils/deindent"));
8
+ const create_resource_request_1 = require("../resource/create-resource-request");
9
+ const constants_1 = require("./constants");
10
+ const util_1 = require("./util");
11
+ function generateResolveUnfulfilledSnapshotFunction(context, adapterAnnotation, resource) {
12
+ const { returnShape } = resource;
13
+ const { name: adapterName, id: adapterId } = adapterAnnotation;
14
+ const { importRamlArtifact } = context;
15
+ const returnShapeName = returnShape.name;
16
+ const resourceTypeIdentifier = importRamlArtifact(returnShape.id, returnShapeName);
17
+ const configInterfaceIdentifier = importRamlArtifact(adapterId, util_1.buildConfigInterfaceName(adapterName));
18
+ const snapshotTypeDefinition = `${constants_1.ADAPTER_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any>`;
19
+ const unfulfilledSnapshotTypeDefinition = `${constants_1.ADAPTER_UNFULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any>`;
20
+ const requestIdentifier = 'request';
21
+ const resourceIdentifier = importRamlArtifact(resource.id, create_resource_request_1.CREATE_RESOURCE_REQUEST_IDENTIFIER);
22
+ const createResourceParamsIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_CREATE_RESOURCE_PARAMS_IDENTIFIER);
23
+ const requestResponseSuccessIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_ON_RESOURCE_RESPONSE_SUCCESS);
24
+ const requestResponseErrorIdentifier = importRamlArtifact(adapterId, constants_1.ADAPTER_ON_RESOURCE_RESPONSE_ERROR);
25
+ return deindent_1.default `
26
+ export function ${constants_1.ADAPTER_RESOLVE_UNFULFILLED_SNAPSHOT}(${constants_1.ADAPTER_LUVIO_IDENTIFIER}: ${constants_1.ADAPTER_LUVIO_IMPORT}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}: ${configInterfaceIdentifier}, ${constants_1.ADAPTER_SNAPSHOT_IDENTIFIER}: ${unfulfilledSnapshotTypeDefinition}) : Promise<${snapshotTypeDefinition}> {
27
+ const ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER} = ${createResourceParamsIdentifier}(${constants_1.ADAPTER_CONFIG_IDENTIFIER});
28
+ const ${requestIdentifier} = ${resourceIdentifier}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER});
29
+ return ${constants_1.ADAPTER_LUVIO_IDENTIFIER}.resolveUnfulfilledSnapshot<${resourceTypeIdentifier}>(${requestIdentifier}, ${constants_1.ADAPTER_SNAPSHOT_IDENTIFIER})
30
+ .then((${constants_1.ADAPTER_RESPONSE_IDENTIFIER}) => {
31
+ return ${requestResponseSuccessIdentifier}(${constants_1.ADAPTER_LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER});
32
+ }, (${constants_1.ADAPTER_RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_FETCH_RESPONSE_INTERFACE_IDENTIFIER}<unknown>) => {
33
+ return ${requestResponseErrorIdentifier}(${constants_1.ADAPTER_LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_CONFIG_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER});
34
+ });
35
+ }
36
+ `;
37
+ }
38
+ exports.generateResolveUnfulfilledSnapshotFunction = generateResolveUnfulfilledSnapshotFunction;
39
+ //# sourceMappingURL=adapter-resolve-unfulfilled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-resolve-unfulfilled.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-resolve-unfulfilled.ts"],"names":[],"mappings":";;;;;;AAIA,oEAA4C;AAC5C,iFAAyF;AACzF,2CAcqB;AACrB,iCAAkD;AAGlD,SAAgB,0CAA0C,CACtD,OAAsB,EACtB,iBAAoC,EACpC,QAAkB;IAElB,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC;IAC/D,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC;IAEvC,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAC1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,yBAAyB,GAAG,kBAAkB,CAChD,SAAS,EACT,+BAAwB,CAAC,WAAW,CAAC,CACxC,CAAC;IACF,MAAM,sBAAsB,GAAG,GAAG,mCAAuB,IAAI,sBAAsB,QAAQ,CAAC;IAC5F,MAAM,iCAAiC,GAAG,GAAG,+CAAmC,IAAI,sBAAsB,QAAQ,CAAC;IAEnH,MAAM,iBAAiB,GAAG,SAAS,CAAC;IAEpC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,4DAAkC,CAAC,CAAC;IAC/F,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,qDAAyC,CAC5C,CAAC;IACF,MAAM,gCAAgC,GAAG,kBAAkB,CACvD,SAAS,EACT,gDAAoC,CACvC,CAAC;IACF,MAAM,8BAA8B,GAAG,kBAAkB,CACrD,SAAS,EACT,8CAAkC,CACrC,CAAC;IAEF,OAAO,kBAAQ,CAAA;0BACO,gDAAoC,IAAI,oCAAwB,KAAK,gCAAoB,KAAK,qCAAyB,KAAK,yBAAyB,KAAK,uCAA2B,KAAK,iCAAiC,eAAe,sBAAsB;oBACtQ,8CAAkC,MAAM,8BAA8B,IAAI,qCAAyB;oBACnG,iBAAiB,MAAM,kBAAkB,IAAI,8CAAkC;qBAC9E,oCAAwB,+BAA+B,sBAAsB,KAAK,iBAAiB,KAAK,uCAA2B;yBAC/H,uCAA2B;6BACvB,gCAAgC,IAAI,oCAAwB,KAAK,qCAAyB,KAAK,8CAAkC,KAAK,uCAA2B;sBACxK,uCAA2B,KAAK,uDAA2C;6BACpE,8BAA8B,IAAI,oCAAwB,KAAK,qCAAyB,KAAK,8CAAkC,KAAK,uCAA2B;;;KAGvL,CAAC;AACN,CAAC;AA9CD,gGA8CC"}
@@ -19,7 +19,6 @@ const adapter_notify_change_1 = require("./adapter-notify-change");
19
19
  const adapter_one_of_params_1 = require("./adapter-one-of-params");
20
20
  const adapter_resource_error_1 = require("./adapter-resource-error");
21
21
  const adapter_resource_success_1 = require("./adapter-resource-success");
22
- const adapter_response_keys_1 = require("./adapter-response-keys");
23
22
  const adapter_shape_key_param_coercion_1 = require("./adapter-shape-key-param-coercion");
24
23
  const adapter_type_check_1 = require("./adapter-type-check");
25
24
  const adapter_validation_config_object_1 = require("./adapter-validation-config-object");
@@ -84,7 +83,6 @@ function generateGetAdapter(env, adapterAnnotation, resource, modelInfo) {
84
83
  adapter_shape_key_param_coercion_1.generateKeyParamCoercionFunction(importContext, adapterAnnotation, resource, modelInfo),
85
84
  adapter_config_coercion_1.generateConfigCoercionFunction(importContext, adapterAnnotation, modelInfo, configParamInfos),
86
85
  adapter_key_builder_1.generateKeyBuilder(importContext, adapterAnnotation, resource),
87
- adapter_response_keys_1.generateAdapterResponseKeys(importContext, resource),
88
86
  adapter_type_check_1.generateTypeCheckFunction(importContext, adapterAnnotation, configParamInfos, modelInfo),
89
87
  adapter_config_validation_1.generateConfigValidation(importContext, adapterAnnotation),
90
88
  adapter_fragment_1.generateAdapterFragmentFunction(importContext, adapterAnnotation, resource),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/adapter/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/adapter/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { ModelInfo } from '../../../intermediate/model-info';
2
+ import { Resource } from '../../../intermediate/resource';
3
+ import { ImportContext } from '../../../utils/imports';
4
+ export declare const CHILD_ENVELOPES_IDENTIFIER = "childEnvelopes";
5
+ export declare const CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER = "childResourceParamsArray";
6
+ export declare function generateChildEnvelopesAndResourceParamsCode(importContext: ImportContext, resource: Resource, modelInfo: ModelInfo, responseBodyIdentifier: string): string;
@@ -0,0 +1,31 @@
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.generateChildEnvelopesAndResourceParamsCode = exports.CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER = exports.CHILD_ENVELOPES_IDENTIFIER = void 0;
7
+ const deindent_1 = __importDefault(require("../../../utils/deindent"));
8
+ const constants_1 = require("../../adapter/constants");
9
+ const create_child_resource_params_1 = require("./create-child-resource-params");
10
+ exports.CHILD_ENVELOPES_IDENTIFIER = 'childEnvelopes';
11
+ exports.CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER = 'childResourceParamsArray';
12
+ // this code is shared by both ingest and cache-key code
13
+ function generateChildEnvelopesAndResourceParamsCode(importContext, resource, modelInfo, responseBodyIdentifier) {
14
+ const { importRamlArtifact } = importContext;
15
+ const composite = modelInfo.compositeResources[resource.endPointId];
16
+ const { id: resourceId } = resource;
17
+ const { envelope } = composite;
18
+ const { path: envelopePath } = envelope;
19
+ const createChildResourceParams = importRamlArtifact(resourceId, create_child_resource_params_1.CREATE_CHILD_RESOURCE_PARAMS_IDENTIFIER);
20
+ return deindent_1.default `
21
+ const ${exports.CHILD_ENVELOPES_IDENTIFIER} = ${responseBodyIdentifier}.${envelopePath};
22
+ const ${exports.CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER} = ${createChildResourceParams}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER});
23
+ if (process.env.NODE_ENV !== 'production') {
24
+ if (${exports.CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}.length !== ${exports.CHILD_ENVELOPES_IDENTIFIER}.length) {
25
+ throw new Error('Invalid composite resource response. Expected ' + ${exports.CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}.length + ' items, received ' + ${exports.CHILD_ENVELOPES_IDENTIFIER}.length);
26
+ }
27
+ }
28
+ `;
29
+ }
30
+ exports.generateChildEnvelopesAndResourceParamsCode = generateChildEnvelopesAndResourceParamsCode;
31
+ //# sourceMappingURL=child-envelopes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"child-envelopes.js","sourceRoot":"","sources":["../../../../src/codegen/resource/composite/child-envelopes.ts"],"names":[],"mappings":";;;;;;AAEA,uEAA+C;AAE/C,uDAA6E;AAC7E,iFAAyF;AAE5E,QAAA,0BAA0B,GAAG,gBAAgB,CAAC;AAC9C,QAAA,sCAAsC,GAAG,0BAA0B,CAAC;AAEjF,wDAAwD;AACxD,SAAgB,2CAA2C,CACvD,aAA4B,EAC5B,QAAkB,EAClB,SAAoB,EACpB,sBAA8B;IAE9B,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,SAAS,GAAG,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACpE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;IAEpC,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAC/B,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAExC,MAAM,yBAAyB,GAAG,kBAAkB,CAChD,UAAU,EACV,sEAAuC,CAC1C,CAAC;IAEF,OAAO,kBAAQ,CAAA;gBACH,kCAA0B,MAAM,sBAAsB,IAAI,YAAY;gBACtE,8CAAsC,MAAM,yBAAyB,IAAI,8CAAkC;;kBAEzG,8CAAsC,eAAe,kCAA0B;qFACZ,8CAAsC,mCAAmC,kCAA0B;;;KAGnL,CAAC;AACN,CAAC;AA3BD,kGA2BC"}
@@ -14,7 +14,7 @@ const ingest_error_1 = require("../ingest-error");
14
14
  const ingest_success_1 = require("../ingest-success");
15
15
  const key_builder_1 = require("../key-builder");
16
16
  const resource_params_1 = require("../resource-params");
17
- const ingest_success_2 = require("./ingest-success");
17
+ const child_envelopes_1 = require("./child-envelopes");
18
18
  const non_cached_errors_object_1 = require("./non-cached-errors-object");
19
19
  const ITERATOR_INDEX_IDENTIFIER = 'index';
20
20
  const CHILD_ENVELOPE_IDENTIFIER = 'result';
@@ -61,7 +61,7 @@ function generateIngestSuccessChildResourceParams(importContext, resource, model
61
61
  const getFetchResponseStatusTextIdentifier = importAdapterUtil('getFetchResponseStatusText');
62
62
  const objectFreezeIdentifier = importAdapterUtil('ObjectFreeze');
63
63
  return deindent_1.default `
64
- export function ${exports.INGEST_CHILD_RESOURCE_PARAMS}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}: ${childResourceParamsIdentifier}[], ${ingest_success_2.CHILD_ENVELOPES_IDENTIFIER}: Array<any>): {${exports.CHILD_SNAPSHOT_DATA_IDENTIFIER}: ${resourceTypeIdentifier}, ${exports.SEEN_RECORDS_IDENTIFIER}: {[key: string]: boolean}, ${exports.SNAPSHOT_STATE_IDENTIFIER}: string} {
64
+ export function ${exports.INGEST_CHILD_RESOURCE_PARAMS}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}: ${childResourceParamsIdentifier}[], ${child_envelopes_1.CHILD_ENVELOPES_IDENTIFIER}: Array<any>): {${exports.CHILD_SNAPSHOT_DATA_IDENTIFIER}: ${resourceTypeIdentifier}, ${exports.SEEN_RECORDS_IDENTIFIER}: {[key: string]: boolean}, ${exports.SNAPSHOT_STATE_IDENTIFIER}: string} {
65
65
  const ${CHILD_SNAPSHOT_RESPONSES_IDENTIFIER}: ${resourceTypeIdentifier}['${envelopePath}'] = [];
66
66
  let ${exports.SEEN_RECORDS_IDENTIFIER}: ${constants_1.ADAPTER_FULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}>['${exports.SEEN_RECORDS_IDENTIFIER}'] = {};
67
67
  let ${exports.SNAPSHOT_STATE_IDENTIFIER} = 'Fulfilled';
@@ -69,7 +69,7 @@ function generateIngestSuccessChildResourceParams(importContext, resource, model
69
69
  for (let ${ITERATOR_INDEX_IDENTIFIER} = 0, len = ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}.length; ${ITERATOR_INDEX_IDENTIFIER} < len; ${ITERATOR_INDEX_IDENTIFIER} += 1) {
70
70
  const ${CHILD_RESOURCE_PARAMS_IDENTIFIER} = ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}[${ITERATOR_INDEX_IDENTIFIER}];
71
71
  const ${CHILD_KEY_IDENTIFIER} = ${childKeyBuilder}(${CHILD_RESOURCE_PARAMS_IDENTIFIER})
72
- const ${CHILD_ENVELOPE_IDENTIFIER} = ${ingest_success_2.CHILD_ENVELOPES_IDENTIFIER}[${ITERATOR_INDEX_IDENTIFIER}];
72
+ const ${CHILD_ENVELOPE_IDENTIFIER} = ${child_envelopes_1.CHILD_ENVELOPES_IDENTIFIER}[${ITERATOR_INDEX_IDENTIFIER}];
73
73
  const { ${envelopeStatusCode}: ${CHILD_STATUS_CODE_IDENTIFIER}, ${envelopeBody}: ${CHILD_BODY_IDENTIFIER} } = ${CHILD_ENVELOPE_IDENTIFIER};
74
74
  if (${CHILD_STATUS_CODE_IDENTIFIER} === ${engine_1.HttpStatusCode.Ok}) {
75
75
  const ${CHILD_RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_RESOURCE_RESPONSE_INTERFACE_IDENTIFIER}<${childResourceOkResponseShapeInterfaceImport}> = {
@@ -1 +1 @@
1
- {"version":3,"file":"ingest-success-child-resource-params.js","sourceRoot":"","sources":["../../../../src/codegen/resource/composite/ingest-success-child-resource-params.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ingest-success-child-resource-params.js","sourceRoot":"","sources":["../../../../src/codegen/resource/composite/ingest-success-child-resource-params.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { Resource } from '../../../intermediate/resource';
2
2
  import { ModelInfo } from '../../../intermediate/model-info';
3
3
  import { ImportContext } from '../../../utils/imports';
4
- export declare const CHILD_ENVELOPES_IDENTIFIER = "childEnvelopes";
5
4
  export declare const SYNTHETIC_SNAPSHOT_IDENTIFIER = "syntheticSnapshot";
6
5
  export declare function generateIngestSuccess(importContext: ImportContext, resource: Resource, modelInfo: ModelInfo): string;
@@ -3,45 +3,34 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generateIngestSuccess = exports.SYNTHETIC_SNAPSHOT_IDENTIFIER = exports.CHILD_ENVELOPES_IDENTIFIER = void 0;
6
+ exports.generateIngestSuccess = exports.SYNTHETIC_SNAPSHOT_IDENTIFIER = void 0;
7
7
  const resource_params_1 = require("./../resource-params");
8
8
  const deindent_1 = __importDefault(require("../../../utils/deindent"));
9
9
  const constants_1 = require("../../adapter/constants");
10
10
  const constants_2 = require("../../shared/constants");
11
11
  const key_builder_1 = require("./../key-builder");
12
12
  const constants_3 = require("./../constants");
13
- const create_child_resource_params_1 = require("./create-child-resource-params");
14
13
  const ingest_success_1 = require("../ingest-success");
15
14
  const ingest_success_child_resource_params_1 = require("./ingest-success-child-resource-params");
15
+ const child_envelopes_1 = require("./child-envelopes");
16
16
  const RESPONSE_IDENTIFIER = 'response';
17
- const CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER = 'childResourceParamsArray';
18
17
  const KEY_IDENTIFIER = 'key';
19
- exports.CHILD_ENVELOPES_IDENTIFIER = 'childEnvelopes';
20
18
  exports.SYNTHETIC_SNAPSHOT_IDENTIFIER = 'syntheticSnapshot';
21
19
  function generateIngestSuccess(importContext, resource, modelInfo) {
22
20
  const { importRamlArtifact } = importContext;
23
- const composite = modelInfo.compositeResources[resource.endPointId];
24
21
  const { id: resourceId, returnShape } = resource;
25
22
  const returnShapeName = returnShape.name;
26
23
  const resourceTypeIdentifier = importRamlArtifact(returnShape.id, returnShapeName);
27
- const { envelope } = composite;
28
- const { path: envelopePath } = envelope;
29
24
  const resourceRequestConfig = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
30
- const createChildResourceParams = importRamlArtifact(resourceId, create_child_resource_params_1.CREATE_CHILD_RESOURCE_PARAMS_IDENTIFIER);
31
25
  const keyBuilder = importRamlArtifact(resourceId, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER);
32
26
  const ingestSuccessChildResourceParams = importRamlArtifact(resourceId, ingest_success_child_resource_params_1.INGEST_CHILD_RESOURCE_PARAMS);
33
27
  const select = importRamlArtifact(resourceId, constants_3.RESOURCE_SELECT_IDENTIFIER);
34
28
  return deindent_1.default `
35
29
  export function ${ingest_success_1.RESOURCE_INGEST_SUCCESS_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}: ${resourceRequestConfig}, ${RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_RESOURCE_RESPONSE_INTERFACE_IDENTIFIER}<${resourceTypeIdentifier}>, ${constants_1.ADAPTER_SNAPSHOT_REFRESH_IDENTIFIER}?: ${constants_1.ADAPTER_SNAPSHOT_REFRESH_INTERFACE}<${resourceTypeIdentifier}>): ${constants_1.ADAPTER_FULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any> | ${constants_1.ADAPTER_STALE_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any> | ${constants_1.ADAPTER_PENDING_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any> {
36
- const ${exports.CHILD_ENVELOPES_IDENTIFIER} = ${RESPONSE_IDENTIFIER}.body.${envelopePath};
37
- const ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER} = ${createChildResourceParams}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER});
38
- if (process.env.NODE_ENV !== 'production') {
39
- if (${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}.length !== ${exports.CHILD_ENVELOPES_IDENTIFIER}.length) {
40
- throw new Error('Invalid composite resource response. Expected ' + ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}.length + ' items, received ' + ${exports.CHILD_ENVELOPES_IDENTIFIER}.length);
41
- }
42
- }
30
+ ${child_envelopes_1.generateChildEnvelopesAndResourceParamsCode(importContext, resource, modelInfo, `${RESPONSE_IDENTIFIER}.body`)}
31
+
43
32
  const ${KEY_IDENTIFIER} = ${keyBuilder}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER});
44
- const {${ingest_success_child_resource_params_1.CHILD_SNAPSHOT_DATA_IDENTIFIER}, ${ingest_success_child_resource_params_1.SEEN_RECORDS_IDENTIFIER}, ${ingest_success_child_resource_params_1.SNAPSHOT_STATE_IDENTIFIER}} = ${ingestSuccessChildResourceParams}(${constants_2.LUVIO_IDENTIFIER}, ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}, ${exports.CHILD_ENVELOPES_IDENTIFIER});
33
+ const {${ingest_success_child_resource_params_1.CHILD_SNAPSHOT_DATA_IDENTIFIER}, ${ingest_success_child_resource_params_1.SEEN_RECORDS_IDENTIFIER}, ${ingest_success_child_resource_params_1.SNAPSHOT_STATE_IDENTIFIER}} = ${ingestSuccessChildResourceParams}(${constants_2.LUVIO_IDENTIFIER}, ${child_envelopes_1.CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}, ${child_envelopes_1.CHILD_ENVELOPES_IDENTIFIER});
45
34
  const ${exports.SYNTHETIC_SNAPSHOT_IDENTIFIER} = {
46
35
  recordId: ${KEY_IDENTIFIER},
47
36
  data: ${ingest_success_child_resource_params_1.CHILD_SNAPSHOT_DATA_IDENTIFIER},
@@ -1 +1 @@
1
- {"version":3,"file":"ingest-success.js","sourceRoot":"","sources":["../../../../src/codegen/resource/composite/ingest-success.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAiE;AAEjE,uEAA+C;AAC/C,uDAQiC;AACjC,sDAAwE;AACxE,kDAAmE;AACnE,8CAA4D;AAE5D,iFAAyF;AACzF,sDAAuE;AAEvE,iGAKgD;AAEhD,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,MAAM,sCAAsC,GAAG,0BAA0B,CAAC;AAC1E,MAAM,cAAc,GAAG,KAAK,CAAC;AAEhB,QAAA,0BAA0B,GAAG,gBAAgB,CAAC;AAC9C,QAAA,6BAA6B,GAAG,mBAAmB,CAAC;AAEjE,SAAgB,qBAAqB,CACjC,aAA4B,EAC5B,QAAkB,EAClB,SAAoB;IAEpB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,SAAS,GAAG,SAAS,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACpE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjD,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAE1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAC/B,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAExC,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,UAAU,EAAE,2CAAyB,CAAC,CAAC;IAExF,MAAM,yBAAyB,GAAG,kBAAkB,CAChD,UAAU,EACV,sEAAuC,CAC1C,CAAC;IAEF,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,EAAE,6CAA+B,CAAC,CAAC;IAEnF,MAAM,gCAAgC,GAAG,kBAAkB,CACvD,UAAU,EACV,mEAA4B,CAC/B,CAAC;IAEF,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,EAAE,sCAA0B,CAAC,CAAC;IAE1E,OAAO,kBAAQ,CAAA;0BACO,mDAAkC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,8CAAkC,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,0DAA8C,IAAI,sBAAsB,MAAM,+CAAmC,MAAM,8CAAkC,IAAI,sBAAsB,OAAO,6CAAiC,IAAI,sBAAsB,YAAY,yCAA6B,IAAI,sBAAsB,YAAY,2CAA+B,IAAI,sBAAsB;oBACxiB,kCAA0B,MAAM,mBAAmB,SAAS,YAAY;oBACxE,sCAAsC,MAAM,yBAAyB,IAAI,8CAAkC;;sBAEzG,sCAAsC,eAAe,kCAA0B;yFACZ,sCAAsC,mCAAmC,kCAA0B;;;oBAGxK,cAAc,MAAM,UAAU,IAAI,8CAAkC;qBACnE,qEAA8B,KAAK,8DAAuB,KAAK,gEAAyB,OAAO,gCAAgC,IAAI,4BAAgB,KAAK,sCAAsC,KAAK,kCAA0B;oBAC9N,qCAA6B;4BACrB,cAAc;wBAClB,qEAA8B;yBAC7B,gEAAyB;+BACnB,8DAAuB;;gCAEtB,cAAc;4BAClB,MAAM,IAAI,4BAAgB,KAAK,8CAAkC;;;2BAGlE,+CAAmC;;mBAE3C,6CAAiC,IAAI,sBAAsB,YAAY,yCAA6B,IAAI,sBAAsB,YAAY,2CAA+B,IAAI,sBAAsB;;iBAErM,gEAAyB;kBACxB,4BAAgB,2BAA2B,qCAA6B,OAAO,2CAA+B,IAAI,sBAAsB;sBACpI,mDAAkC,IAAI,4BAAgB,KAAK,8CAAkC,KAAK,mBAAmB,KAAK,+CAAmC;;;;cAIrK,4BAAgB,eAAe,cAAc;qBACtC,qCAA6B;;KAE7C,CAAC;AACN,CAAC;AAjED,sDAiEC"}
1
+ {"version":3,"file":"ingest-success.js","sourceRoot":"","sources":["../../../../src/codegen/resource/composite/ingest-success.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAiE;AAEjE,uEAA+C;AAC/C,uDAQiC;AACjC,sDAAwE;AACxE,kDAAmE;AACnE,8CAA4D;AAE5D,sDAAuE;AAEvE,iGAKgD;AAChD,uDAI2B;AAE3B,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,MAAM,cAAc,GAAG,KAAK,CAAC;AAEhB,QAAA,6BAA6B,GAAG,mBAAmB,CAAC;AAEjE,SAAgB,qBAAqB,CACjC,aAA4B,EAC5B,QAAkB,EAClB,SAAoB;IAEpB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjD,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAE1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IAEpF,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,UAAU,EAAE,2CAAyB,CAAC,CAAC;IAExF,MAAM,UAAU,GAAG,kBAAkB,CAAC,UAAU,EAAE,6CAA+B,CAAC,CAAC;IAEnF,MAAM,gCAAgC,GAAG,kBAAkB,CACvD,UAAU,EACV,mEAA4B,CAC/B,CAAC;IAEF,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,EAAE,sCAA0B,CAAC,CAAC;IAE1E,OAAO,kBAAQ,CAAA;0BACO,mDAAkC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,8CAAkC,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,0DAA8C,IAAI,sBAAsB,MAAM,+CAAmC,MAAM,8CAAkC,IAAI,sBAAsB,OAAO,6CAAiC,IAAI,sBAAsB,YAAY,yCAA6B,IAAI,sBAAsB,YAAY,2CAA+B,IAAI,sBAAsB;cAC9iB,6DAA2C,CACzC,aAAa,EACb,QAAQ,EACR,SAAS,EACT,GAAG,mBAAmB,OAAO,CAChC;;oBAEO,cAAc,MAAM,UAAU,IAAI,8CAAkC;qBACnE,qEAA8B,KAAK,8DAAuB,KAAK,gEAAyB,OAAO,gCAAgC,IAAI,4BAAgB,KAAK,wDAAsC,KAAK,4CAA0B;oBAC9N,qCAA6B;4BACrB,cAAc;wBAClB,qEAA8B;yBAC7B,gEAAyB;+BACnB,8DAAuB;;gCAEtB,cAAc;4BAClB,MAAM,IAAI,4BAAgB,KAAK,8CAAkC;;;2BAGlE,+CAAmC;;mBAE3C,6CAAiC,IAAI,sBAAsB,YAAY,yCAA6B,IAAI,sBAAsB,YAAY,2CAA+B,IAAI,sBAAsB;;iBAErM,gEAAyB;kBACxB,4BAAgB,2BAA2B,qCAA6B,OAAO,2CAA+B,IAAI,sBAAsB;sBACpI,mDAAkC,IAAI,4BAAgB,KAAK,8CAAkC,KAAK,mBAAmB,KAAK,+CAAmC;;;;cAIrK,4BAAgB,eAAe,cAAc;qBACtC,qCAA6B;;KAE7C,CAAC;AACN,CAAC;AAzDD,sDAyDC"}
@@ -0,0 +1,6 @@
1
+ import { Resource } from '../../../intermediate/resource';
2
+ import { ModelInfo } from '../../../intermediate/model-info';
3
+ import { ImportContext } from '../../../utils/imports';
4
+ export declare const CHILD_ENVELOPES_IDENTIFIER = "childEnvelopes";
5
+ export declare const SYNTHETIC_SNAPSHOT_IDENTIFIER = "syntheticSnapshot";
6
+ export declare function generateCompositeGetResponseCacheKeys(getResponseCacheKeysFunctionIdentifier: string, importContext: ImportContext, resource: Resource, modelInfo: ModelInfo): string;
@@ -0,0 +1,77 @@
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.generateCompositeGetResponseCacheKeys = exports.SYNTHETIC_SNAPSHOT_IDENTIFIER = exports.CHILD_ENVELOPES_IDENTIFIER = void 0;
7
+ const resource_params_1 = require("./../resource-params");
8
+ const deindent_1 = __importDefault(require("../../../utils/deindent"));
9
+ const constants_1 = require("../../adapter/constants");
10
+ const key_builder_1 = require("./../key-builder");
11
+ const child_envelopes_1 = require("./child-envelopes");
12
+ const shape_cache_keys_1 = require("../../shape/shape-cache-keys");
13
+ const http_1 = require("../../../utils/http");
14
+ const constants_2 = require("../../shared/constants");
15
+ const KEYS_IDENTIFIER = 'keys';
16
+ const RESPONSE_IDENTIFIER = 'response';
17
+ const ITERATOR_INDEX_IDENTIFIER = 'index';
18
+ const CHILD_RESULT_IDENTIFIER = 'childResult';
19
+ const CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER = 'childResourceParamsArray';
20
+ const CHILD_KEY_IDENTIFIER = 'childKey';
21
+ const CHILD_KEYS_IDENTIFIER = 'childKeys';
22
+ const CHILD_RESOURCE_PARAMS_IDENTIFIER = 'childResourceParams';
23
+ const CHILD_BODY_IDENTIFIER = 'childBody';
24
+ const CHILD_STATUS_CODE_IDENTIFIER = 'childStatusCode';
25
+ exports.CHILD_ENVELOPES_IDENTIFIER = 'childEnvelopes';
26
+ exports.SYNTHETIC_SNAPSHOT_IDENTIFIER = 'syntheticSnapshot';
27
+ function generateCompositeGetResponseCacheKeys(getResponseCacheKeysFunctionIdentifier, importContext, resource, modelInfo) {
28
+ const composite = modelInfo.compositeResources[resource.endPointId];
29
+ if (composite === undefined) {
30
+ return '';
31
+ }
32
+ const { importRamlArtifact } = importContext;
33
+ const { id: resourceId, returnShape } = resource;
34
+ const { name: returnShapeName } = returnShape;
35
+ const resourceTypeIdentifier = importRamlArtifact(returnShape.id, returnShapeName);
36
+ const resourceRequestConfig = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
37
+ const { childEndpoint, envelope } = composite;
38
+ const { responses: envelopeResponses, body: envelopeBody, statusCode: envelopeStatusCode, } = envelope;
39
+ const { id: childEndpointId } = childEndpoint;
40
+ const childResourceOkResponse = envelopeResponses.find((resp) => resp.statusCode === http_1.HTTPStatusCodes.Ok);
41
+ const childResourceOkResponseShapeName = childResourceOkResponse.shapeName;
42
+ const childResourceOkResponseShapeId = childResourceOkResponse.shapeId;
43
+ const childResourceOkResponseShapeInterfaceImport = importContext.importRamlArtifact(childResourceOkResponseShapeId, childResourceOkResponseShapeName);
44
+ const childResponseCacheKeys = importRamlArtifact(childEndpointId, getResponseCacheKeysFunctionIdentifier);
45
+ const childKeyBuilder = importRamlArtifact(childEndpointId, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER);
46
+ // NOTE: top-level composite success responses do not cache top-level key so
47
+ // we don't include it in this generated code
48
+ return deindent_1.default `
49
+
50
+ export function ${getResponseCacheKeysFunctionIdentifier}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}: ${resourceRequestConfig}, ${RESPONSE_IDENTIFIER}: ${resourceTypeIdentifier}): ${constants_2.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} {
51
+ let ${KEYS_IDENTIFIER}: ${constants_2.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} = {}
52
+
53
+ ${child_envelopes_1.generateChildEnvelopesAndResourceParamsCode(importContext, resource, modelInfo, RESPONSE_IDENTIFIER)}
54
+
55
+ // get children keys
56
+ for (let ${ITERATOR_INDEX_IDENTIFIER} = 0, len = ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}.length; ${ITERATOR_INDEX_IDENTIFIER} < len; ${ITERATOR_INDEX_IDENTIFIER}++) {
57
+ const ${CHILD_RESOURCE_PARAMS_IDENTIFIER} = ${CHILD_RESOURCE_PARAMS_ARRAY_IDENTIFIER}[${ITERATOR_INDEX_IDENTIFIER}];
58
+ const ${CHILD_RESULT_IDENTIFIER} = ${exports.CHILD_ENVELOPES_IDENTIFIER}[${ITERATOR_INDEX_IDENTIFIER}];
59
+ const { ${envelopeStatusCode}: ${CHILD_STATUS_CODE_IDENTIFIER}, ${envelopeBody}: ${CHILD_BODY_IDENTIFIER} } = ${CHILD_RESULT_IDENTIFIER};
60
+ if(${CHILD_STATUS_CODE_IDENTIFIER} === 200){
61
+ const ${CHILD_KEYS_IDENTIFIER} = ${childResponseCacheKeys}(${CHILD_RESOURCE_PARAMS_IDENTIFIER}, ${CHILD_BODY_IDENTIFIER} as ${childResourceOkResponseShapeInterfaceImport});
62
+ ${KEYS_IDENTIFIER} = {...${KEYS_IDENTIFIER}, ...${CHILD_KEYS_IDENTIFIER}};
63
+ } else if(${CHILD_STATUS_CODE_IDENTIFIER} === 404){
64
+ const ${CHILD_KEY_IDENTIFIER} = ${childKeyBuilder}(${CHILD_RESOURCE_PARAMS_IDENTIFIER});
65
+ ${KEYS_IDENTIFIER}[${CHILD_KEY_IDENTIFIER}] = {
66
+ namespace: ${shape_cache_keys_1.generateNamespaceValue(importContext, modelInfo)},
67
+ representationName: ${shape_cache_keys_1.generateRepresentationNameRuntimeValue(CHILD_KEY_IDENTIFIER)}
68
+ };
69
+ }
70
+ }
71
+
72
+ return ${KEYS_IDENTIFIER};
73
+ }
74
+ `;
75
+ }
76
+ exports.generateCompositeGetResponseCacheKeys = generateCompositeGetResponseCacheKeys;
77
+ //# sourceMappingURL=response-child-cache-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-child-cache-keys.js","sourceRoot":"","sources":["../../../../src/codegen/resource/composite/response-child-cache-keys.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ const create_child_resource_params_1 = require("./composite/create-child-resourc
13
13
  const ingest_success_child_resource_params_1 = require("./composite/ingest-success-child-resource-params");
14
14
  const create_resource_request_from_representation_1 = require("./create-resource-request-from-representation");
15
15
  const non_cached_errors_object_1 = require("./composite/non-cached-errors-object");
16
+ const response_cache_keys_1 = require("./response-cache-keys");
16
17
  function generateResource(env, resource, modelInfo, relPath) {
17
18
  const importContext = imports_1.createImportContext(env);
18
19
  const { endPointId } = resource;
@@ -23,6 +24,7 @@ function generateResource(env, resource, modelInfo, relPath) {
23
24
  resource_params_1.generateResourceParams(importContext, resource, modelInfo),
24
25
  select_1.generateSelect(importContext, resource, modelInfo),
25
26
  key_builder_1.generateKeyBuilder(importContext, resource, modelInfo),
27
+ response_cache_keys_1.generateGetResponseCacheKeys(importContext, resource, modelInfo),
26
28
  ingest_success_child_resource_params_1.generateIngestSuccessChildResourceParams(importContext, resource, modelInfo),
27
29
  ingest_success_1.generateIngestSuccess(importContext, resource, modelInfo),
28
30
  ingest_error_1.generateIngestError(importContext, resource, modelInfo),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/resource/index.ts"],"names":[],"mappings":";;;AAGA,iDAA0E;AAC1E,uEAA0E;AAC1E,iDAAqD;AACrD,qDAAyD;AACzD,mDAAuD;AACvD,+CAAmD;AACnD,uDAA2D;AAC3D,qCAA0C;AAC1C,2FAA6F;AAC7F,2GAA4G;AAC5G,+GAAgH;AAChH,mFAAqF;AAErF,SAAgB,gBAAgB,CAC5B,GAA8B,EAC9B,QAAkB,EAClB,SAAoB,EACpB,OAAe;IAEf,MAAM,aAAa,GAAG,6BAAmB,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;IAChC,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAE7D,MAAM,IAAI,GAAG;QACT,WAAW,CAAC,CAAC,CAAC,wDAA6B,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;QACpF,gEAAiC,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACrE,wCAAsB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC1D,uBAAc,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAClD,gCAAkB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACtD,+EAAwC,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC5E,sCAAqB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACzD,kCAAmB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACvD,oCAAoB,CAAC,aAAa,EAAE,QAAQ,CAAC;QAC7C,uDAA6B,CAAC,aAAa,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACpF,6FAA+C,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;KACtF;SACI,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,OAAO,wBAAc,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AA3BD,4CA2BC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/resource/index.ts"],"names":[],"mappings":";;;AAGA,iDAA0E;AAC1E,uEAA0E;AAC1E,iDAAqD;AACrD,qDAAyD;AACzD,mDAAuD;AACvD,+CAAmD;AACnD,uDAA2D;AAC3D,qCAA0C;AAC1C,2FAA6F;AAC7F,2GAA4G;AAC5G,+GAAgH;AAChH,mFAAqF;AACrF,+DAAqE;AAErE,SAAgB,gBAAgB,CAC5B,GAA8B,EAC9B,QAAkB,EAClB,SAAoB,EACpB,OAAe;IAEf,MAAM,aAAa,GAAG,6BAAmB,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;IAChC,MAAM,WAAW,GAAG,SAAS,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAE7D,MAAM,IAAI,GAAG;QACT,WAAW,CAAC,CAAC,CAAC,wDAA6B,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;QACpF,gEAAiC,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACrE,wCAAsB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC1D,uBAAc,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAClD,gCAAkB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACtD,kDAA4B,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAChE,+EAAwC,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC5E,sCAAqB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACzD,kCAAmB,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACvD,oCAAoB,CAAC,aAAa,EAAE,QAAQ,CAAC;QAC7C,uDAA6B,CAAC,aAAa,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACpF,6FAA+C,CAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;KACtF;SACI,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,OAAO,wBAAc,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AA5BD,4CA4BC"}
@@ -0,0 +1,5 @@
1
+ import { ModelInfo } from '../../intermediate/model-info';
2
+ import { Resource } from '../../intermediate/resource';
3
+ import { ImportContext } from '../../utils/imports';
4
+ export declare const GET_RESPONSE_CACHE_KEYS_IDENTIFIER = "getResponseCacheKeys";
5
+ export declare function generateGetResponseCacheKeys(importContext: ImportContext, resource: Resource, modelInfo: ModelInfo): string;
@@ -0,0 +1,45 @@
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.generateGetResponseCacheKeys = exports.GET_RESPONSE_CACHE_KEYS_IDENTIFIER = void 0;
7
+ const resource_1 = require("../../intermediate/resource");
8
+ const deindent_1 = __importDefault(require("../../utils/deindent"));
9
+ const constants_1 = require("../adapter/constants");
10
+ const constants_2 = require("../shared/constants");
11
+ const key_builder_1 = require("./key-builder");
12
+ const resource_params_1 = require("./resource-params");
13
+ const shape_cache_keys_1 = require("../shape/shape-cache-keys");
14
+ const response_child_cache_keys_1 = require("./composite/response-child-cache-keys");
15
+ exports.GET_RESPONSE_CACHE_KEYS_IDENTIFIER = 'getResponseCacheKeys';
16
+ const RESPONSE_IDENTIFIER = 'response';
17
+ function generateGetResponseCacheKeys(importContext, resource, modelInfo) {
18
+ const { importRamlArtifact } = importContext;
19
+ const { id: resourceId, method, returnShape, endPointId } = resource;
20
+ if (method === 'delete' || returnShape === undefined) {
21
+ return '';
22
+ }
23
+ if (modelInfo.compositeResources[endPointId]) {
24
+ return response_child_cache_keys_1.generateCompositeGetResponseCacheKeys(exports.GET_RESPONSE_CACHE_KEYS_IDENTIFIER, importContext, resource, modelInfo);
25
+ }
26
+ const { name: returnShapeName, id: returnShapeId } = returnShape;
27
+ const returnShapeKey = modelInfo.shapeKeysDefinition[returnShapeId];
28
+ if (returnShapeKey === undefined && (method === 'patch' || method === 'put')) {
29
+ return '';
30
+ }
31
+ const isPatchPutOrPostResource = method === 'patch' || method === 'put' || resource_1.isPurePost(resource);
32
+ const keyStatement = isPatchPutOrPostResource
33
+ ? `${importRamlArtifact(returnShapeId, 'keyBuilderFromType')}(${RESPONSE_IDENTIFIER})`
34
+ : `${importRamlArtifact(resourceId, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER)}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER})`;
35
+ const resourceTypeIdentifier = importRamlArtifact(returnShapeId, returnShapeName);
36
+ const resourceRequestConfig = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
37
+ const shapeCacheKeysIdentifier = importRamlArtifact(returnShapeId, shape_cache_keys_1.GET_SHAPE_CACHE_KEYS_IDENTIFIER);
38
+ return deindent_1.default `
39
+ export function ${exports.GET_RESPONSE_CACHE_KEYS_IDENTIFIER}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}: ${resourceRequestConfig}, ${RESPONSE_IDENTIFIER}: ${resourceTypeIdentifier}): ${constants_2.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} {
40
+ return ${shapeCacheKeysIdentifier}(${RESPONSE_IDENTIFIER}, () => ${keyStatement})
41
+ }
42
+ `;
43
+ }
44
+ exports.generateGetResponseCacheKeys = generateGetResponseCacheKeys;
45
+ //# sourceMappingURL=response-cache-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-cache-keys.js","sourceRoot":"","sources":["../../../src/codegen/resource/response-cache-keys.ts"],"names":[],"mappings":";;;;;;AACA,0DAAmE;AACnE,oEAA4C;AAE5C,oDAA0E;AAC1E,mDAA4E;AAC5E,+CAAgE;AAChE,uDAA8D;AAC9D,gEAA4E;AAC5E,qFAA8F;AAEjF,QAAA,kCAAkC,GAAG,sBAAsB,CAAC;AACzE,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,SAAgB,4BAA4B,CACxC,aAA4B,EAC5B,QAAkB,EAClB,SAAoB;IAEpB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;IACrE,IAAI,MAAM,KAAK,QAAQ,IAAI,WAAW,KAAK,SAAS,EAAE;QAClD,OAAO,EAAE,CAAC;KACb;IAED,IAAI,SAAS,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE;QAC1C,OAAO,iEAAqC,CACxC,0CAAkC,EAClC,aAAa,EACb,QAAQ,EACR,SAAS,CACZ,CAAC;KACL;IAED,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;IACjE,MAAM,cAAc,GAAG,SAAS,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAEpE,IAAI,cAAc,KAAK,SAAS,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,KAAK,CAAC,EAAE;QAC1E,OAAO,EAAE,CAAC;KACb;IAED,MAAM,wBAAwB,GAAG,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,KAAK,IAAI,qBAAU,CAAC,QAAQ,CAAC,CAAC;IAChG,MAAM,YAAY,GAAG,wBAAwB;QACzC,CAAC,CAAC,GAAG,kBAAkB,CAAC,aAAa,EAAE,oBAAoB,CAAC,IAAI,mBAAmB,GAAG;QACtF,CAAC,CAAC,GAAG,kBAAkB,CACjB,UAAU,EACV,6CAA+B,CAClC,IAAI,8CAAkC,GAAG,CAAC;IAEjD,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAElF,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,UAAU,EAAE,2CAAyB,CAAC,CAAC;IAExF,MAAM,wBAAwB,GAAG,kBAAkB,CAC/C,aAAa,EACb,kDAA+B,CAClC,CAAC;IAEF,OAAO,kBAAQ,CAAA;0BACO,0CAAkC,IAAI,8CAAkC,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,sBAAsB,MAAM,iDAAqC;qBACrM,wBAAwB,IAAI,mBAAmB,WAAW,YAAY;;KAEtF,CAAC;AACN,CAAC;AAjDD,oEAiDC"}
@@ -23,6 +23,7 @@ const shape_dynamic_ingest_params_1 = require("./shape-dynamic-ingest-params");
23
23
  const shape_dynamic_select_params_1 = require("./shape-dynamic-select-params");
24
24
  const shape_dynamic_select_1 = require("./shape-dynamic-select");
25
25
  const shape_representation_type_1 = require("./shape-representation-type");
26
+ const shape_cache_keys_1 = require("./shape-cache-keys");
26
27
  function generateModule(shapeConfig) {
27
28
  let code = [
28
29
  shape_discriminator_values_enum_1.generateDiscriminatorValuesEnum(shapeConfig),
@@ -42,6 +43,7 @@ function generateModule(shapeConfig) {
42
43
  shape_deep_freeze_1.generateDeepFreeze(shapeConfig),
43
44
  shape_ingest_1.generateIngest(shapeConfig),
44
45
  shape_ingest_discriminator_1.generateIngestDiscriminator(shapeConfig),
46
+ shape_cache_keys_1.generateGetShapeCacheKeys(shapeConfig),
45
47
  shape_dynamic_ingest_1.generateDynamicIngest(shapeConfig),
46
48
  shape_normalized_interface_1.generateNormalizedInterface(shapeConfig),
47
49
  shape_type_definition_1.generateTypeDefinition(shapeConfig),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/shape/index.ts"],"names":[],"mappings":";;;AAEA,iDAAoE;AACpE,2DAAyD;AACzD,uFAAoF;AACpF,iDAAgD;AAChD,iDAAgD;AAChD,6EAA2E;AAC3E,iEAA+D;AAC/D,+DAAkE;AAClE,yDAAwD;AACxD,uDAA0D;AAC1D,uEAAqE;AACrE,6EAA2E;AAC3E,iDAAgD;AAChD,6EAA2E;AAC3E,2CAA0C;AAC1C,mEAAiE;AACjE,+CAAmD;AACnD,yDAAwD;AACxD,+EAA4E;AAC5E,+EAA4E;AAC5E,iEAAoE;AACpE,2EAAyE;AAQzE,SAAgB,cAAc,CAAC,WAA+B;IAC1D,IAAI,IAAI,GAAG;QACP,iEAA+B,CAAC,WAAW,CAAC;QAC5C,uBAAW,CAAC,WAAW,CAAC;QACxB,qCAAkB,CAAC,WAAW,CAAC;QAC/B,sDAA0B,CAAC,WAAW,CAAC;QACvC,+CAAyB,CAAC,WAAW,CAAC;QACtC,qCAAkB,CAAC,WAAW,CAAC;QAC/B,uCAAqB,CAAC,WAAW,CAAC;QAClC,yDAA2B,CAAC,WAAW,CAAC;QACxC,kDAAwB,CAAC,WAAW,CAAC;QACrC,wDAA2B,CAAC,WAAW,CAAC;QACxC,6BAAc,CAAC,WAAW,CAAC;QAC3B,yDAA2B,CAAC,WAAW,CAAC;QACxC,iDAA0B,CAAC,WAAW,CAAC;QACvC,6BAAc,CAAC,WAAW,CAAC;QAC3B,sCAAkB,CAAC,WAAW,CAAC;QAC/B,6BAAc,CAAC,WAAW,CAAC;QAC3B,wDAA2B,CAAC,WAAW,CAAC;QACxC,4CAAqB,CAAC,WAAW,CAAC;QAClC,wDAA2B,CAAC,WAAW,CAAC;QACxC,8CAAsB,CAAC,WAAW,CAAC;KACtC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEf,OAAO,wBAAc,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAzBD,wCAyBC;AAED,SAAgB,iBAAiB;IAC7B,OAAO,gCAAkB,EAAE,CAAC;AAChC,CAAC;AAFD,8CAEC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/shape/index.ts"],"names":[],"mappings":";;;AAEA,iDAAoE;AACpE,2DAAyD;AACzD,uFAAoF;AACpF,iDAAgD;AAChD,iDAAgD;AAChD,6EAA2E;AAC3E,iEAA+D;AAC/D,+DAAkE;AAClE,yDAAwD;AACxD,uDAA0D;AAC1D,uEAAqE;AACrE,6EAA2E;AAC3E,iDAAgD;AAChD,6EAA2E;AAC3E,2CAA0C;AAC1C,mEAAiE;AACjE,+CAAmD;AACnD,yDAAwD;AACxD,+EAA4E;AAC5E,+EAA4E;AAC5E,iEAAoE;AACpE,2EAAyE;AACzE,yDAA+D;AAQ/D,SAAgB,cAAc,CAAC,WAA+B;IAC1D,IAAI,IAAI,GAAG;QACP,iEAA+B,CAAC,WAAW,CAAC;QAC5C,uBAAW,CAAC,WAAW,CAAC;QACxB,qCAAkB,CAAC,WAAW,CAAC;QAC/B,sDAA0B,CAAC,WAAW,CAAC;QACvC,+CAAyB,CAAC,WAAW,CAAC;QACtC,qCAAkB,CAAC,WAAW,CAAC;QAC/B,uCAAqB,CAAC,WAAW,CAAC;QAClC,yDAA2B,CAAC,WAAW,CAAC;QACxC,kDAAwB,CAAC,WAAW,CAAC;QACrC,wDAA2B,CAAC,WAAW,CAAC;QACxC,6BAAc,CAAC,WAAW,CAAC;QAC3B,yDAA2B,CAAC,WAAW,CAAC;QACxC,iDAA0B,CAAC,WAAW,CAAC;QACvC,6BAAc,CAAC,WAAW,CAAC;QAC3B,sCAAkB,CAAC,WAAW,CAAC;QAC/B,6BAAc,CAAC,WAAW,CAAC;QAC3B,wDAA2B,CAAC,WAAW,CAAC;QACxC,4CAAyB,CAAC,WAAW,CAAC;QACtC,4CAAqB,CAAC,WAAW,CAAC;QAClC,wDAA2B,CAAC,WAAW,CAAC;QACxC,8CAAsB,CAAC,WAAW,CAAC;KACtC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEf,OAAO,wBAAc,CAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AA1BD,wCA0BC;AAED,SAAgB,iBAAiB;IAC7B,OAAO,gCAAkB,EAAE,CAAC;AAChC,CAAC;AAFD,8CAEC"}
@@ -0,0 +1,7 @@
1
+ import { CodegenShapeConfig } from './index';
2
+ import { ImportContext } from '../../utils/imports';
3
+ import { ModelInfo } from '../../intermediate/model-info';
4
+ export declare const GET_SHAPE_CACHE_KEYS_IDENTIFIER = "getTypeCacheKeys";
5
+ export declare function generateNamespaceValue(importContext: ImportContext, modelInfo: ModelInfo): string;
6
+ export declare function generateRepresentationNameRuntimeValue(cacheKeyVariableName: string): string;
7
+ export declare function generateGetShapeCacheKeys(shapeConfig: CodegenShapeConfig): string;
@@ -0,0 +1,289 @@
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.generateGetShapeCacheKeys = exports.generateRepresentationNameRuntimeValue = exports.generateNamespaceValue = exports.GET_SHAPE_CACHE_KEYS_IDENTIFIER = void 0;
7
+ const deindent_1 = __importDefault(require("../../utils/deindent"));
8
+ const constants_1 = require("../shared/constants");
9
+ const shape_representation_type_1 = require("./shape-representation-type");
10
+ const shape_keybuilder_1 = require("./shape-keybuilder");
11
+ const inheritance_1 = require("../../intermediate/inheritance");
12
+ const shape_1 = require("../../utils/shape");
13
+ const utils_1 = require("../../intermediate/utils");
14
+ const constants_2 = require("../shared/constants");
15
+ exports.GET_SHAPE_CACHE_KEYS_IDENTIFIER = 'getTypeCacheKeys';
16
+ const INPUT_IDENTIFIER = 'input';
17
+ const FULL_PATH_FACTORY_IDENTIFIER = 'fullPathFactory';
18
+ const ROOT_KEY_IDENTIFIER = 'rootKey';
19
+ const ROOT_KEY_SET_IDENTIFIER = 'rootKeySet';
20
+ const loopIteratorVar = 'i';
21
+ function generateNamespaceValue(importContext, modelInfo) {
22
+ const { importAdapterUtil } = importContext;
23
+ return modelInfo.keyPrefix ? importAdapterUtil('keyPrefix') : `''`;
24
+ }
25
+ exports.generateNamespaceValue = generateNamespaceValue;
26
+ function generateRepresentationNameRuntimeValue(cacheKeyVariableName) {
27
+ return `${cacheKeyVariableName}.split('${constants_2.CACHE_KEY_NAMESPACE_DELIMITER}')[1].split('${constants_2.CACHE_KEY_FIELD_DELIMITER}')[0]`;
28
+ }
29
+ exports.generateRepresentationNameRuntimeValue = generateRepresentationNameRuntimeValue;
30
+ function shapeHasParentWithKeyBuilder(shape, modelInfo) {
31
+ if (inheritance_1.hasInheritance(shape, modelInfo)) {
32
+ const { shapeKeysDefinition } = modelInfo;
33
+ const parent = inheritance_1.getParentShape(shape, modelInfo);
34
+ const keys = shapeKeysDefinition[parent.shapeId];
35
+ return keys !== undefined;
36
+ }
37
+ return false;
38
+ }
39
+ function shapeHasKeyBuilder(shape, modelInfo) {
40
+ const { shapeKeysDefinition } = modelInfo;
41
+ if (inheritance_1.hasInheritance(shape, modelInfo)) {
42
+ return shapeHasParentWithKeyBuilder(shape, modelInfo);
43
+ }
44
+ const keys = shapeKeysDefinition[shape.id];
45
+ return keys !== undefined;
46
+ }
47
+ function generateRepresentationName(shape, modelInfo, importContext, hasKeyBuilder) {
48
+ const { importRamlArtifact } = importContext;
49
+ // if this Type inherits from a parent and uses its keybuilder then use the
50
+ // parents representation name
51
+ if (hasKeyBuilder && shapeHasParentWithKeyBuilder(shape, modelInfo)) {
52
+ const parent = inheritance_1.getParentShape(shape, modelInfo);
53
+ return importRamlArtifact(parent.shapeId, shape_representation_type_1.REPRESENTATION_TYPE_IDENTIFIER);
54
+ }
55
+ // if we don't have a keyBuilder function then we are relying on the fallback
56
+ // key function and we won't know the representation name until runtime so
57
+ // we need code to calculate it at runtime
58
+ if (hasKeyBuilder === false) {
59
+ return generateRepresentationNameRuntimeValue(ROOT_KEY_IDENTIFIER);
60
+ }
61
+ // default case - we use this Type's representation name
62
+ return shape_representation_type_1.REPRESENTATION_TYPE_IDENTIFIER;
63
+ }
64
+ function generateSelfCacheKey(shape, modelInfo, importContext) {
65
+ const { importRamlArtifact } = importContext;
66
+ const hasKeyBuilder = shapeHasKeyBuilder(shape, modelInfo);
67
+ const keyBuilderFromType = importRamlArtifact(shape.id, shape_keybuilder_1.SHAPE_KEY_BUILDER_FROM_TYPE_IDENTIFIER);
68
+ const rootKeyCode = hasKeyBuilder
69
+ ? `${keyBuilderFromType}(${INPUT_IDENTIFIER})`
70
+ : `${FULL_PATH_FACTORY_IDENTIFIER}()`;
71
+ return deindent_1.default `
72
+ // root cache key (uses ${FULL_PATH_FACTORY_IDENTIFIER} if ${shape_keybuilder_1.SHAPE_KEY_BUILDER_FROM_TYPE_IDENTIFIER} isn't defined)
73
+ const ${ROOT_KEY_IDENTIFIER} = ${rootKeyCode};
74
+ ${ROOT_KEY_SET_IDENTIFIER}[${ROOT_KEY_IDENTIFIER}] = {
75
+ namespace: ${generateNamespaceValue(importContext, modelInfo)},
76
+ representationName: ${generateRepresentationName(shape, modelInfo, importContext, hasKeyBuilder)}
77
+ };
78
+ `;
79
+ }
80
+ function buildVarNameFromPropertyName(propertyName) {
81
+ if (propertyName === INPUT_IDENTIFIER) {
82
+ return `${propertyName}__root`;
83
+ }
84
+ return `${INPUT_IDENTIFIER}_${propertyName}`;
85
+ }
86
+ function buildPathFromPropertyName(propertyName) {
87
+ if (propertyName === INPUT_IDENTIFIER) {
88
+ return INPUT_IDENTIFIER;
89
+ }
90
+ return `${INPUT_IDENTIFIER}.${propertyName}`;
91
+ }
92
+ function generateObject(shape, modelInfo, importContext, propertyName) {
93
+ const lines = [];
94
+ const { importTypeUtil } = importContext;
95
+ const OBJECT_CREATE = importTypeUtil('ObjectCreate');
96
+ const OBJECT_KEYS = importTypeUtil('ObjectKeys');
97
+ shape.properties
98
+ .filter((propertyShape) => {
99
+ // filter out non-normalizable properties
100
+ const propertyValueShape = propertyShape.range;
101
+ return shape_1.isNormalizable(propertyValueShape.id, modelInfo);
102
+ })
103
+ .forEach((propertyShape) => {
104
+ const shapeName = propertyShape.name;
105
+ const patternName = propertyShape.patternName;
106
+ if (patternName !== null) {
107
+ // if this isn't a link then nothing to do here
108
+ if (propertyShape.range.isLink === false) {
109
+ return;
110
+ }
111
+ // have to see if the pattern response is normalizable
112
+ const responseCacheKeyLines = generateShape(propertyShape.range, modelInfo, importContext, propertyName);
113
+ const fallbackPrefix = responseCacheKeyLines.length > 0
114
+ ? `${ROOT_KEY_IDENTIFIER} + "__${propertyName}"`
115
+ : ROOT_KEY_IDENTIFIER;
116
+ // have to iterate over the keys and get cache keys for each
117
+ const propertyIdentifier = buildVarNameFromPropertyName(propertyName);
118
+ const varName = `${propertyIdentifier}_cacheKeys`;
119
+ const { name: linkName, id: linkId } = propertyShape.range
120
+ .linkTarget;
121
+ const cacheKeysIdentifier = importContext.importRamlArtifact(linkId, exports.GET_SHAPE_CACHE_KEYS_IDENTIFIER);
122
+ const inputTypeIdentifier = importContext.importRamlArtifact(linkId, linkName);
123
+ const code = deindent_1.default `
124
+ const ${propertyIdentifier} = ${buildPathFromPropertyName(propertyName)};
125
+ const ${propertyIdentifier}_keys = ${OBJECT_KEYS}(${propertyIdentifier});
126
+ const ${propertyIdentifier}_length = ${propertyIdentifier}_keys.length;
127
+ let ${varName} = ${OBJECT_CREATE}(null);
128
+ for (let ${loopIteratorVar} = 0; ${loopIteratorVar} < ${propertyIdentifier}_length; ${loopIteratorVar}++) {
129
+ const key = ${propertyIdentifier}_keys[i];
130
+ const cacheKeys = ${cacheKeysIdentifier}(${propertyIdentifier}[key] as ${inputTypeIdentifier}, () => ${fallbackPrefix} + "__" + key);
131
+ ${varName} = {...${varName}, ...cacheKeys};
132
+ }
133
+ `;
134
+ lines.push({ varName, code });
135
+ return;
136
+ }
137
+ const nestedProps = generateShape(propertyShape.range, modelInfo, importContext, shapeName);
138
+ for (const nestedProp of nestedProps) {
139
+ lines.push(nestedProp);
140
+ }
141
+ });
142
+ return lines;
143
+ }
144
+ function generateArray(shape, importContext, propertyName) {
145
+ // if this isn't a link then nothing to do here
146
+ if (shape.items.isLink === false) {
147
+ return [];
148
+ }
149
+ const { importTypeUtil } = importContext;
150
+ const OBJECT_CREATE = importTypeUtil('ObjectCreate');
151
+ const cacheKeysIdentifier = importContext.importRamlArtifact(shape.items.linkTarget.id, exports.GET_SHAPE_CACHE_KEYS_IDENTIFIER);
152
+ const propertyIdentifier = buildVarNameFromPropertyName(propertyName);
153
+ const propertyPath = buildPathFromPropertyName(propertyName);
154
+ // note we pass a no-op path factory because if we got here then the shape
155
+ // is normalizable and the array items will have a key builder
156
+ const fallbackKeyBuilder = `() => ''`;
157
+ const code = deindent_1.default `
158
+ const ${propertyIdentifier}_length = ${propertyPath}.length;
159
+ let ${propertyIdentifier} = ${OBJECT_CREATE}(null);
160
+ for (let ${loopIteratorVar} = 0; ${loopIteratorVar} < ${propertyIdentifier}_length; ${loopIteratorVar}++) {
161
+ ${propertyIdentifier} = {...${propertyIdentifier}, ...${cacheKeysIdentifier}(${propertyPath}[i], ${fallbackKeyBuilder})};
162
+ }
163
+ `;
164
+ return [{ varName: propertyIdentifier, code }];
165
+ }
166
+ function generateUnion(valueShape, modelInfo, importContext, propertyName) {
167
+ const nonScalarShapes = valueShape.anyOf.filter((shape) => !utils_1.isScalarShape(shape) && !utils_1.isNilShape(shape));
168
+ // If union is only between simple type, no normalization is needed.
169
+ if (nonScalarShapes.length === 0) {
170
+ return [];
171
+ }
172
+ // the union is composed of a single non scalar shape with n scalar shapes.
173
+ const nonScalarShape = nonScalarShapes[0];
174
+ const nonScalarCacheKeyLine = generateShape(nonScalarShape, modelInfo, importContext, propertyName)[0];
175
+ if (nonScalarCacheKeyLine === undefined) {
176
+ return [];
177
+ }
178
+ const propertyPath = buildPathFromPropertyName(propertyName);
179
+ const outerVarName = `${buildVarNameFromPropertyName(propertyName)}__outer`;
180
+ const inScalarShapeShape = [
181
+ `${propertyPath} !== null`,
182
+ `typeof ${propertyPath} === 'object'`,
183
+ ].join(' && ');
184
+ const code = deindent_1.default `
185
+ let ${outerVarName} = {};
186
+ if (${inScalarShapeShape}) {
187
+ ${nonScalarCacheKeyLine.code}
188
+ ${outerVarName} = ${nonScalarCacheKeyLine.varName}
189
+ }
190
+ `;
191
+ return [{ varName: outerVarName, code }];
192
+ }
193
+ function generateLink(linkShape, importContext, propertyName) {
194
+ const linkTarget = linkShape.linkTarget;
195
+ const { id: linkId, name: linkName } = linkTarget;
196
+ const { importRamlArtifact } = importContext;
197
+ const cacheKeysIdentifier = importRamlArtifact(linkId, exports.GET_SHAPE_CACHE_KEYS_IDENTIFIER);
198
+ const inputTypeIdentifier = importRamlArtifact(linkId, linkName);
199
+ const varName = buildVarNameFromPropertyName(propertyName);
200
+ const code = deindent_1.default `
201
+ const ${varName} = ${cacheKeysIdentifier}(${buildPathFromPropertyName(propertyName)} as ${inputTypeIdentifier}, () => ${ROOT_KEY_IDENTIFIER} + "__" + "${propertyName}")
202
+ `;
203
+ return {
204
+ varName,
205
+ code,
206
+ };
207
+ }
208
+ function generateShape(shape, modelInfo, importContext, propertyName) {
209
+ // non-normalized types don't have any nested keys
210
+ if (!shape_1.isNormalizable(shape.id, modelInfo) || shape_1.isOpaque(shape.id, modelInfo)) {
211
+ return [];
212
+ }
213
+ // only use the link's cache key function if this shape is not inherited from it
214
+ if (shape.isLink && !inheritance_1.isDiscriminatorShape(shape.linkTarget, modelInfo)) {
215
+ return [generateLink(shape, importContext, propertyName)];
216
+ }
217
+ // Recursively normalize inline shape definitions
218
+ if (utils_1.isNodeShape(shape)) {
219
+ return generateObject(shape, modelInfo, importContext, propertyName);
220
+ }
221
+ else if (utils_1.isArrayShape(shape)) {
222
+ return generateArray(shape, importContext, propertyName);
223
+ }
224
+ else if (utils_1.isUnionShape(shape)) {
225
+ return generateUnion(shape, modelInfo, importContext, propertyName);
226
+ }
227
+ return [];
228
+ }
229
+ function generateRoot(shape, modelInfo, importContext) {
230
+ const { importTypeUtil } = importContext;
231
+ const OBJECT_CREATE = importTypeUtil('ObjectCreate');
232
+ const nested = generateShape(shape, modelInfo, importContext, INPUT_IDENTIFIER);
233
+ const nestedCode = nested.map((line) => line.code).join('\n\n');
234
+ let returnLine = `${ROOT_KEY_SET_IDENTIFIER}`;
235
+ if (nested.length > 0) {
236
+ returnLine = `{...${returnLine}`;
237
+ for (const line of nested) {
238
+ returnLine += `, ...${line.varName}`;
239
+ }
240
+ returnLine += '}';
241
+ }
242
+ return deindent_1.default `
243
+ const ${ROOT_KEY_SET_IDENTIFIER}: ${constants_1.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} = ${OBJECT_CREATE}(null);
244
+
245
+ ${generateSelfCacheKey(shape, modelInfo, importContext)}
246
+
247
+ ${nestedCode}
248
+
249
+ return ${returnLine};
250
+ `;
251
+ }
252
+ function generateDiscriminatorShape(shape, modelInfo, importContext) {
253
+ const { references, discriminatorPropertyName, type: discriminatorType, } = inheritance_1.getDiscriminatorShape(shape, modelInfo);
254
+ const propertyAccessor = 'discriminatorValue';
255
+ const referenceKeys = Object.keys(references);
256
+ const cases = referenceKeys.map((key) => {
257
+ const childShape = references[key];
258
+ const cacheKeysIdentifier = importContext.importRamlArtifact(childShape.id, exports.GET_SHAPE_CACHE_KEYS_IDENTIFIER);
259
+ const inputTypeIdentifier = importContext.importRamlArtifact(childShape.id, childShape.name);
260
+ const formattedKey = discriminatorType === 'string' ? `'${key}'` : key;
261
+ return deindent_1.default `
262
+ if (${propertyAccessor} === ${formattedKey}) {
263
+ return ${cacheKeysIdentifier}(${INPUT_IDENTIFIER} as ${inputTypeIdentifier}, ${FULL_PATH_FACTORY_IDENTIFIER})
264
+ }
265
+ `;
266
+ });
267
+ const referenceKeyStrings = referenceKeys.map((key) => `"${key}"`).join(',');
268
+ return deindent_1.default `
269
+ const ${propertyAccessor} = ${INPUT_IDENTIFIER}.${discriminatorPropertyName};
270
+
271
+ ${cases.join('\n')}
272
+
273
+ throw new Error(\`Invalid discriminatorValue "\${${propertyAccessor}\}". Expected one of ${referenceKeyStrings}\`);
274
+ `;
275
+ }
276
+ function generateGetShapeCacheKeys(shapeConfig) {
277
+ const { shape, importContext, modelInfo } = shapeConfig;
278
+ const generateDiscriminatorCacheKeyCode = inheritance_1.isDiscriminatorShape(shape, modelInfo);
279
+ const code = generateDiscriminatorCacheKeyCode
280
+ ? generateDiscriminatorShape(shape, modelInfo, importContext)
281
+ : generateRoot(shape, modelInfo, importContext);
282
+ return deindent_1.default `
283
+ export function ${exports.GET_SHAPE_CACHE_KEYS_IDENTIFIER}(${INPUT_IDENTIFIER}: ${shape.name}, ${FULL_PATH_FACTORY_IDENTIFIER}: () => string): ${constants_1.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} {
284
+ ${code}
285
+ }
286
+ `;
287
+ }
288
+ exports.generateGetShapeCacheKeys = generateGetShapeCacheKeys;
289
+ //# sourceMappingURL=shape-cache-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shape-cache-keys.js","sourceRoot":"","sources":["../../../src/codegen/shape/shape-cache-keys.ts"],"names":[],"mappings":";;;;;;AACA,oEAA4C;AAC5C,mDAA4E;AAC5E,2EAA6E;AAC7E,yDAA4E;AAO5E,gEAKwC;AAGxC,6CAA6D;AAC7D,oDAMkC;AAClC,mDAA+F;AAElF,QAAA,+BAA+B,GAAG,kBAAkB,CAAC;AAElE,MAAM,gBAAgB,GAAG,OAAO,CAAC;AACjC,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;AACvD,MAAM,mBAAmB,GAAG,SAAS,CAAC;AACtC,MAAM,uBAAuB,GAAG,YAAY,CAAC;AAC7C,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B,SAAgB,sBAAsB,CAAC,aAA4B,EAAE,SAAoB;IACrF,MAAM,EAAE,iBAAiB,EAAE,GAAG,aAAa,CAAC;IAC5C,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvE,CAAC;AAHD,wDAGC;AAED,SAAgB,sCAAsC,CAAC,oBAA4B;IAC/E,OAAO,GAAG,oBAAoB,WAAW,yCAA6B,gBAAgB,qCAAyB,OAAO,CAAC;AAC3H,CAAC;AAFD,wFAEC;AAED,SAAS,4BAA4B,CAAC,KAAsB,EAAE,SAAoB;IAC9E,IAAI,4BAAc,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;QAClC,MAAM,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC;QAC1C,MAAM,MAAM,GAAG,4BAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjD,OAAO,IAAI,KAAK,SAAS,CAAC;KAC7B;IAED,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAsB,EAAE,SAAoB;IACpE,MAAM,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC;IAE1C,IAAI,4BAAc,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;QAClC,OAAO,4BAA4B,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;KACzD;IAED,MAAM,IAAI,GAAG,mBAAmB,CAAE,KAA6B,CAAC,EAAE,CAAC,CAAC;IACpE,OAAO,IAAI,KAAK,SAAS,CAAC;AAC9B,CAAC;AAED,SAAS,0BAA0B,CAC/B,KAAsB,EACtB,SAAoB,EACpB,aAA4B,EAC5B,aAAsB;IAEtB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAE7C,2EAA2E;IAC3E,8BAA8B;IAC9B,IAAI,aAAa,IAAI,4BAA4B,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE;QACjE,MAAM,MAAM,GAAG,4BAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAChD,OAAO,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,0DAA8B,CAAC,CAAC;KAC7E;IAED,6EAA6E;IAC7E,0EAA0E;IAC1E,0CAA0C;IAC1C,IAAI,aAAa,KAAK,KAAK,EAAE;QACzB,OAAO,sCAAsC,CAAC,mBAAmB,CAAC,CAAC;KACtE;IAED,wDAAwD;IACxD,OAAO,0DAA8B,CAAC;AAC1C,CAAC;AAED,SAAS,oBAAoB,CACzB,KAAsB,EACtB,SAAoB,EACpB,aAA4B;IAE5B,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAE7C,MAAM,aAAa,GAAG,kBAAkB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAE3D,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,yDAAsC,CAAC,CAAC;IAEhG,MAAM,WAAW,GAAG,aAAa;QAC7B,CAAC,CAAC,GAAG,kBAAkB,IAAI,gBAAgB,GAAG;QAC9C,CAAC,CAAC,GAAG,4BAA4B,IAAI,CAAC;IAE1C,OAAO,kBAAQ,CAAA;kCACe,4BAA4B,OAAO,yDAAsC;gBAC3F,mBAAmB,MAAM,WAAW;UAC1C,uBAAuB,IAAI,mBAAmB;yBAC/B,sBAAsB,CAAC,aAAa,EAAE,SAAS,CAAC;kCACvC,0BAA0B,CAC5C,KAAK,EACL,SAAS,EACT,aAAa,EACb,aAAa,CAChB;;KAER,CAAC;AACN,CAAC;AAYD,SAAS,4BAA4B,CAAC,YAAoB;IACtD,IAAI,YAAY,KAAK,gBAAgB,EAAE;QACnC,OAAO,GAAG,YAAY,QAAQ,CAAC;KAClC;IACD,OAAO,GAAG,gBAAgB,IAAI,YAAY,EAAE,CAAC;AACjD,CAAC;AAED,SAAS,yBAAyB,CAAC,YAAoB;IACnD,IAAI,YAAY,KAAK,gBAAgB,EAAE;QACnC,OAAO,gBAAgB,CAAC;KAC3B;IACD,OAAO,GAAG,gBAAgB,IAAI,YAAY,EAAE,CAAC;AACjD,CAAC;AAED,SAAS,cAAc,CACnB,KAA0B,EAC1B,SAAoB,EACpB,aAA4B,EAC5B,YAAoB;IAEpB,MAAM,KAAK,GAAiB,EAAE,CAAC;IAE/B,MAAM,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC;IACzC,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;IAEjD,KAAK,CAAC,UAAU;SACX,MAAM,CAAC,CAAC,aAAa,EAAE,EAAE;QACtB,yCAAyC;QACzC,MAAM,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC;QAC/C,OAAO,sBAAc,CAAC,kBAAkB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC,CAAC;SACD,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;QACvB,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC;QACrC,MAAM,WAAW,GAAG,aAAa,CAAC,WAAW,CAAC;QAC9C,IAAI,WAAW,KAAK,IAAI,EAAE;YACtB,+CAA+C;YAC/C,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;gBACtC,OAAO;aACV;YAED,sDAAsD;YACtD,MAAM,qBAAqB,GAAG,aAAa,CACvC,aAAa,CAAC,KAAK,EACnB,SAAS,EACT,aAAa,EACb,YAAY,CACf,CAAC;YACF,MAAM,cAAc,GAChB,qBAAqB,CAAC,MAAM,GAAG,CAAC;gBAC5B,CAAC,CAAC,GAAG,mBAAmB,SAAS,YAAY,GAAG;gBAChD,CAAC,CAAC,mBAAmB,CAAC;YAE9B,4DAA4D;YAC5D,MAAM,kBAAkB,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,GAAG,kBAAkB,YAAY,CAAC;YAClD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC,KAAK;iBACrD,UAA6B,CAAC;YACnC,MAAM,mBAAmB,GAAG,aAAa,CAAC,kBAAkB,CACxD,MAAM,EACN,uCAA+B,CAClC,CAAC;YACF,MAAM,mBAAmB,GAAG,aAAa,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAE/E,MAAM,IAAI,GAAG,kBAAQ,CAAA;4BACT,kBAAkB,MAAM,yBAAyB,CAAC,YAAY,CAAC;4BAC/D,kBAAkB,WAAW,WAAW,IAAI,kBAAkB;4BAC9D,kBAAkB,aAAa,kBAAkB;0BACnD,OAAO,MAAM,aAAa;+BACrB,eAAe,SAAS,eAAe,MAAM,kBAAkB,YAAY,eAAe;sCACnF,kBAAkB;4CACZ,mBAAmB,IAAI,kBAAkB,YAAY,mBAAmB,WAAW,cAAc;0BACnH,OAAO,UAAU,OAAO;;iBAEjC,CAAC;YACF,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9B,OAAO;SACV;QAED,MAAM,WAAW,GAAG,aAAa,CAC7B,aAAa,CAAC,KAAK,EACnB,SAAS,EACT,aAAa,EACb,SAAS,CACZ,CAAC;QACF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YAClC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC1B;IACL,CAAC,CAAC,CAAC;IACP,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CAClB,KAA2B,EAC3B,aAA4B,EAC5B,YAAoB;IAEpB,+CAA+C;IAC/C,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,EAAE;QAC9B,OAAO,EAAE,CAAC;KACb;IAED,MAAM,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC;IACzC,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAErD,MAAM,mBAAmB,GAAG,aAAa,CAAC,kBAAkB,CACxD,KAAK,CAAC,KAAK,CAAC,UAAW,CAAC,EAAE,EAC1B,uCAA+B,CAClC,CAAC;IAEF,MAAM,kBAAkB,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;IACtE,MAAM,YAAY,GAAG,yBAAyB,CAAC,YAAY,CAAC,CAAC;IAE7D,0EAA0E;IAC1E,8DAA8D;IAC9D,MAAM,kBAAkB,GAAG,UAAU,CAAC;IAEtC,MAAM,IAAI,GAAG,kBAAQ,CAAA;gBACT,kBAAkB,aAAa,YAAY;cAC7C,kBAAkB,MAAM,aAAa;mBAChC,eAAe,SAAS,eAAe,MAAM,kBAAkB,YAAY,eAAe;cAC/F,kBAAkB,UAAU,kBAAkB,QAAQ,mBAAmB,IAAI,YAAY,QAAQ,kBAAkB;;KAE5H,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,aAAa,CAClB,UAAgC,EAChC,SAAoB,EACpB,aAA4B,EAC5B,YAAoB;IAEpB,MAAM,eAAe,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAC3C,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,qBAAa,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAU,CAAC,KAAK,CAAC,CACzD,CAAC;IAEF,oEAAoE;IACpE,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,OAAO,EAAE,CAAC;KACb;IAED,2EAA2E;IAC3E,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,qBAAqB,GAAG,aAAa,CACvC,cAAc,EACd,SAAS,EACT,aAAa,EACb,YAAY,CACf,CAAC,CAAC,CAAC,CAAC;IAEL,IAAI,qBAAqB,KAAK,SAAS,EAAE;QACrC,OAAO,EAAE,CAAC;KACb;IAED,MAAM,YAAY,GAAG,yBAAyB,CAAC,YAAY,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,GAAG,4BAA4B,CAAC,YAAY,CAAC,SAAS,CAAC;IAE5E,MAAM,kBAAkB,GAAG;QACvB,GAAG,YAAY,WAAW;QAC1B,UAAU,YAAY,eAAe;KACxC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEf,MAAM,IAAI,GAAG,kBAAQ,CAAA;cACX,YAAY;cACZ,kBAAkB;cAClB,qBAAqB,CAAC,IAAI;cAC1B,YAAY,MAAM,qBAAqB,CAAC,OAAO;;KAExD,CAAC;IAEF,OAAO,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,YAAY,CACjB,SAA0B,EAC1B,aAA4B,EAC5B,YAAoB;IAEpB,MAAM,UAAU,GAAG,SAAS,CAAC,UAA8B,CAAC;IAC5D,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC;IAElD,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAE7C,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,MAAM,EAAE,uCAA+B,CAAC,CAAC;IACxF,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEjE,MAAM,OAAO,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,kBAAQ,CAAA;gBACT,OAAO,MAAM,mBAAmB,IAAI,yBAAyB,CACrE,YAAY,CACf,OAAO,mBAAmB,WAAW,mBAAmB,cAAc,YAAY;KAClF,CAAC;IACF,OAAO;QACH,OAAO;QACP,IAAI;KACP,CAAC;AACN,CAAC;AAED,SAAS,aAAa,CAClB,KAAsB,EACtB,SAAoB,EACpB,aAA4B,EAC5B,YAAoB;IAEpB,kDAAkD;IAClD,IAAI,CAAC,sBAAc,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,gBAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE;QACvE,OAAO,EAAE,CAAC;KACb;IAED,gFAAgF;IAChF,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,kCAAoB,CAAC,KAAK,CAAC,UAA6B,EAAE,SAAS,CAAC,EAAE;QACvF,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;KAC7D;IAED,iDAAiD;IACjD,IAAI,mBAAW,CAAC,KAAK,CAAC,EAAE;QACpB,OAAO,cAAc,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;KACxE;SAAM,IAAI,oBAAY,CAAC,KAAK,CAAC,EAAE;QAC5B,OAAO,aAAa,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;KAC5D;SAAM,IAAI,oBAAY,CAAC,KAAK,CAAC,EAAE;QAC5B,OAAO,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;KACvE;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,KAAsB,EAAE,SAAoB,EAAE,aAA4B;IAC5F,MAAM,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC;IAEzC,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAErD,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhE,IAAI,UAAU,GAAG,GAAG,uBAAuB,EAAE,CAAC;IAC9C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,UAAU,GAAG,OAAO,UAAU,EAAE,CAAC;QACjC,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE;YACvB,UAAU,IAAI,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;SACxC;QACD,UAAU,IAAI,GAAG,CAAC;KACrB;IAED,OAAO,kBAAQ,CAAA;gBACH,uBAAuB,KAAK,iDAAqC,MAAM,aAAa;;UAE1F,oBAAoB,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC;;UAErD,UAAU;;iBAEH,UAAU;KACtB,CAAC;AACN,CAAC;AAED,SAAS,0BAA0B,CAC/B,KAAsB,EACtB,SAAoB,EACpB,aAA4B;IAE5B,MAAM,EACF,UAAU,EACV,yBAAyB,EACzB,IAAI,EAAE,iBAAiB,GAC1B,GAAG,mCAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC5C,MAAM,gBAAgB,GAAG,oBAAoB,CAAC;IAE9C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACpC,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,mBAAmB,GAAG,aAAa,CAAC,kBAAkB,CACxD,UAAU,CAAC,EAAE,EACb,uCAA+B,CAClC,CAAC;QACF,MAAM,mBAAmB,GAAG,aAAa,CAAC,kBAAkB,CACxD,UAAU,CAAC,EAAE,EACb,UAAU,CAAC,IAAI,CAClB,CAAC;QACF,MAAM,YAAY,GAAG,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACvE,OAAO,kBAAQ,CAAA;kBACL,gBAAgB,QAAQ,YAAY;yBAC7B,mBAAmB,IAAI,gBAAgB,OAAO,mBAAmB,KAAK,4BAA4B;;SAElH,CAAC;IACN,CAAC,CAAC,CAAC;IACH,MAAM,mBAAmB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE7E,OAAO,kBAAQ,CAAA;gBACH,gBAAgB,MAAM,gBAAgB,IAAI,yBAAyB;;UAEzE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;;2DAEiC,gBAAgB,wBAAwB,mBAAmB;KACjH,CAAC;AACN,CAAC;AAED,SAAgB,yBAAyB,CAAC,WAA+B;IACrE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,WAAW,CAAC;IAExD,MAAM,iCAAiC,GAAG,kCAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAEjF,MAAM,IAAI,GAAG,iCAAiC;QAC1C,CAAC,CAAC,0BAA0B,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC;QAC7D,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAEpD,OAAO,kBAAQ,CAAA;0BACO,uCAA+B,IAAI,gBAAgB,KAAK,KAAK,CAAC,IAAI,KAAK,4BAA4B,oBAAoB,iDAAqC;cACxK,IAAI;;KAEb,CAAC;AACN,CAAC;AAdD,8DAcC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luvio/compiler",
3
- "version": "0.58.1",
3
+ "version": "0.61.0-236.0",
4
4
  "description": "Luvio Compiler",
5
5
  "main": "dist/main.js",
6
6
  "types": "dist/main.d.ts",
@@ -20,7 +20,8 @@
20
20
  "amf-client-js": "4.2.0"
21
21
  },
22
22
  "devDependencies": {
23
- "@luvio/adapter-test-library": "0.58.1",
24
- "@luvio/engine": "0.58.1"
25
- }
23
+ "@luvio/adapter-test-library": "0.61.0-236.0",
24
+ "@luvio/engine": "0.61.0-236.0"
25
+ },
26
+ "gitHead": "4b95b09a954e65b46e5c5e004717349a046113de"
26
27
  }
@@ -1,4 +0,0 @@
1
- import { Resource } from '../../intermediate/resource';
2
- import { ImportContext } from '../../utils/imports';
3
- export declare const ADAPTER_RESPONSE_KEYS_IDENTIFIER = "naiveGetResponseCacheKeys";
4
- export declare function generateAdapterResponseKeys(context: ImportContext, resource: Resource): string;
@@ -1,44 +0,0 @@
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.generateAdapterResponseKeys = exports.ADAPTER_RESPONSE_KEYS_IDENTIFIER = void 0;
7
- const deindent_1 = __importDefault(require("../../utils/deindent"));
8
- const ingest_success_1 = require("../resource/ingest-success");
9
- const constants_1 = require("./constants");
10
- const constants_2 = require("../shared/constants");
11
- const resource_params_1 = require("../resource/resource-params");
12
- exports.ADAPTER_RESPONSE_KEYS_IDENTIFIER = 'naiveGetResponseCacheKeys';
13
- function generateAdapterResponseKeys(context, resource) {
14
- const { returnShape, id: resourceId } = resource;
15
- const { importRamlArtifact, importAdapterUtil } = context;
16
- const returnShapeName = returnShape.name;
17
- const resourceTypeIdentifier = importRamlArtifact(returnShape.id, returnShapeName);
18
- const resourceParamsIdentifier = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
19
- const resourceIngestSuccess = importRamlArtifact(resourceId, ingest_success_1.RESOURCE_INGEST_SUCCESS_IDENTIFIER);
20
- const OBJECT_KEYS = importAdapterUtil('ObjectKeys');
21
- const OBJECT_CREATE = importAdapterUtil('ObjectCreate');
22
- return deindent_1.default `
23
- // naive way to get a response's cache keys: ingest it and look at seenRecords
24
- export function ${exports.ADAPTER_RESPONSE_KEYS_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}: ${resourceParamsIdentifier}, ${constants_1.ADAPTER_RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_RESOURCE_RESPONSE_INTERFACE_IDENTIFIER}<${resourceTypeIdentifier}>): ${constants_2.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} {
25
- // must clone response since ingestion is destructive
26
- const responseCopy = JSON.parse(JSON.stringify(${constants_1.ADAPTER_RESPONSE_IDENTIFIER}))
27
- const ${constants_1.ADAPTER_SNAPSHOT_IDENTIFIER} = ${resourceIngestSuccess}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}, responseCopy);
28
- const keys = [...${OBJECT_KEYS}(snapshot.seenRecords), snapshot.recordId]
29
- const keySet: ${constants_2.ADAPTER_CACHE_KEY_SET_TYPE_IDENTIFIER} = ${OBJECT_CREATE}(null);
30
- for (let i = 0, len = keys.length; i < len; i++) {
31
- const key = keys[i];
32
- const namespace = key.split('${constants_2.CACHE_KEY_NAMESPACE_DELIMITER}')[0];
33
- const representationName = key.split('${constants_2.CACHE_KEY_NAMESPACE_DELIMITER}')[1].split('${constants_2.CACHE_KEY_FIELD_DELIMITER}')[0];
34
- keySet[key] = {
35
- namespace,
36
- representationName,
37
- };
38
- }
39
- return keySet;
40
- }
41
- `;
42
- }
43
- exports.generateAdapterResponseKeys = generateAdapterResponseKeys;
44
- //# sourceMappingURL=adapter-response-keys.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapter-response-keys.js","sourceRoot":"","sources":["../../../src/codegen/adapter/adapter-response-keys.ts"],"names":[],"mappings":";;;;;;AAGA,oEAA4C;AAC5C,+DAAgF;AAChF,2CAKqB;AACrB,mDAM6B;AAC7B,iEAAwE;AAG3D,QAAA,gCAAgC,GAAG,2BAA2B,CAAC;AAE5E,SAAgB,2BAA2B,CAAC,OAAsB,EAAE,QAAkB;IAClF,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;IACjD,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IAC1D,MAAM,eAAe,GAAG,WAAY,CAAC,IAAI,CAAC;IAC1C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,WAAY,CAAC,EAAE,EAAE,eAAe,CAAC,CAAC;IACpF,MAAM,wBAAwB,GAAG,kBAAkB,CAAC,UAAU,EAAE,2CAAyB,CAAC,CAAC;IAE3F,MAAM,qBAAqB,GAAG,kBAAkB,CAC5C,UAAU,EACV,mDAAkC,CACrC,CAAC;IAEF,MAAM,WAAW,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAExD,OAAO,kBAAQ,CAAA;;0BAEO,wCAAgC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,8CAAkC,KAAK,wBAAwB,KAAK,uCAA2B,KAAK,0DAA8C,IAAI,sBAAsB,OAAO,iDAAqC;;6DAE/P,uCAA2B;oBACpE,uCAA2B,MAAM,qBAAqB,IAAI,4BAAgB,KAAK,8CAAkC;+BACtG,WAAW;4BACd,iDAAqC,MAAM,aAAa;;;+CAGrC,yCAA6B;wDACpB,yCAA6B,gBAAgB,qCAAyB;;;;;;;;KAQzH,CAAC;AACN,CAAC;AAnCD,kEAmCC"}