@luvio/compiler 0.83.0 → 0.84.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/codegen/adapter/graphql/adapter-config-interface.d.ts +3 -0
- package/dist/codegen/adapter/graphql/adapter-config-interface.js +24 -0
- package/dist/codegen/adapter/graphql/adapter-config-interface.js.map +1 -0
- package/dist/codegen/adapter/graphql/index.d.ts +7 -0
- package/dist/codegen/adapter/graphql/index.js +54 -0
- package/dist/codegen/adapter/graphql/index.js.map +1 -0
- package/dist/codegen/adapter/index.d.ts +6 -6
- package/dist/codegen/adapter/index.js +2 -22
- package/dist/codegen/adapter/index.js.map +1 -1
- package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.d.ts +3 -2
- package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.js +5 -5
- package/dist/codegen/graphql/source-printer/graphql-adapter-source-printer.js.map +1 -1
- package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.js +2 -2
- package/dist/codegen/graphql/source-printer/graphql-resource-source-printer.js.map +1 -1
- package/dist/codegen/graphql/source-printer/graphql-source-printer.d.ts +3 -1
- package/dist/codegen/graphql/source-printer/graphql-source-printer.js +4 -3
- package/dist/codegen/graphql/source-printer/graphql-source-printer.js.map +1 -1
- package/dist/codegen/graphql/source-printer/graphql-type-source-printer.d.ts +4 -1
- package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js +24 -1
- package/dist/codegen/graphql/source-printer/graphql-type-source-printer.js.map +1 -1
- package/dist/codegen/graphql/type/ingest.js +41 -15
- package/dist/codegen/graphql/type/ingest.js.map +1 -1
- package/dist/codegen/resource/create-resource-request.d.ts +6 -3
- package/dist/codegen/resource/create-resource-request.js +11 -16
- package/dist/codegen/resource/create-resource-request.js.map +1 -1
- package/dist/codegen/resource/graphql/create-resource-request.d.ts +4 -0
- package/dist/codegen/resource/graphql/create-resource-request.js +30 -0
- package/dist/codegen/resource/graphql/create-resource-request.js.map +1 -0
- package/dist/codegen/resource/graphql/index.d.ts +6 -0
- package/dist/codegen/resource/graphql/index.js +30 -0
- package/dist/codegen/resource/graphql/index.js.map +1 -0
- package/dist/codegen/resource/graphql/ingest-error.d.ts +5 -0
- package/dist/codegen/resource/graphql/ingest-error.js +63 -0
- package/dist/codegen/resource/graphql/ingest-error.js.map +1 -0
- package/dist/codegen/resource/graphql/ingest-success.d.ts +4 -0
- package/dist/codegen/resource/graphql/ingest-success.js +56 -0
- package/dist/codegen/resource/graphql/ingest-success.js.map +1 -0
- package/dist/codegen/resource/graphql/key-builder.d.ts +3 -0
- package/dist/codegen/resource/graphql/key-builder.js +25 -0
- package/dist/codegen/resource/graphql/key-builder.js.map +1 -0
- package/dist/codegen/resource/graphql/resource-params.d.ts +4 -0
- package/dist/codegen/resource/graphql/resource-params.js +25 -0
- package/dist/codegen/resource/graphql/resource-params.js.map +1 -0
- package/dist/codegen/resource/graphql/response-cache-keys.d.ts +4 -0
- package/dist/codegen/resource/graphql/response-cache-keys.js +33 -0
- package/dist/codegen/resource/graphql/response-cache-keys.js.map +1 -0
- package/dist/codegen/resource/index.d.ts +2 -2
- package/dist/codegen/resource/index.js +4 -4
- package/dist/codegen/resource/index.js.map +1 -1
- package/dist/codegen/resource/ingest-error.d.ts +2 -2
- package/dist/codegen/resource/ingest-error.js.map +1 -1
- package/dist/codegen/resource/ingest-success.js +5 -3
- package/dist/codegen/resource/ingest-success.js.map +1 -1
- package/dist/codegen/resource/key-builder.d.ts +1 -0
- package/dist/codegen/resource/key-builder.js +2 -1
- package/dist/codegen/resource/key-builder.js.map +1 -1
- package/dist/codegen/resource/resource-params.d.ts +2 -2
- package/dist/codegen/resource/resource-params.js.map +1 -1
- package/dist/codegen/rest/source-printer/rest-source-printer.js +2 -2
- package/dist/codegen/rest/source-printer/rest-source-printer.js.map +1 -1
- package/dist/codegen/shape/graphql/index.d.ts +3 -0
- package/dist/codegen/shape/graphql/index.js +29 -0
- package/dist/codegen/shape/graphql/index.js.map +1 -0
- package/dist/codegen/shape/graphql/key-builder.d.ts +5 -0
- package/dist/codegen/shape/graphql/key-builder.js +26 -0
- package/dist/codegen/shape/graphql/key-builder.js.map +1 -0
- package/dist/codegen/shape/graphql/shape-ingest.d.ts +3 -0
- package/dist/codegen/shape/graphql/shape-ingest.js +67 -0
- package/dist/codegen/shape/graphql/shape-ingest.js.map +1 -0
- package/dist/codegen/shape/graphql/shape-type-definition.d.ts +3 -0
- package/dist/codegen/shape/graphql/shape-type-definition.js +28 -0
- package/dist/codegen/shape/graphql/shape-type-definition.js.map +1 -0
- package/dist/codegen/shape/shape-utils-ingest.js +22 -0
- package/dist/codegen/shape/shape-utils-ingest.js.map +1 -1
- package/dist/codegen/shared/constants.d.ts +4 -0
- package/dist/codegen/shared/constants.js +7 -2
- package/dist/codegen/shared/constants.js.map +1 -1
- package/dist/interfaces/source-printers/graphql/graphql-adapter-printer.d.ts +2 -1
- package/dist/interfaces/source-printers/graphql/graphql-type-printer.d.ts +3 -1
- package/dist/intermediate/graphql.d.ts +3 -0
- package/dist/intermediate/model-info.d.ts +2 -0
- package/dist/intermediate/resource.d.ts +0 -2
- package/dist/intermediate/resource.js.map +1 -1
- package/dist/parser/annotation-adapter.d.ts +2 -1
- package/dist/parser/annotation-adapter.js +30 -28
- package/dist/parser/annotation-adapter.js.map +1 -1
- package/dist/parser/annotation-graphql.js +1 -0
- package/dist/parser/annotation-graphql.js.map +1 -1
- package/dist/parser/main.js +9 -3
- package/dist/parser/main.js.map +1 -1
- package/dist/parser/resource.js +3 -4
- package/dist/parser/resource.js.map +1 -1
- package/dist/utils/aml.js +5 -1
- package/dist/utils/aml.js.map +1 -1
- package/package.json +4 -4
|
@@ -3,8 +3,7 @@ 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.generateCreateResourceRequest = exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = void 0;
|
|
7
|
-
const path_1 = __importDefault(require("path"));
|
|
6
|
+
exports.generateCreateResourceRequestWrapper = exports.generateCreateResourceRequest = exports.generateHeaders = exports.generateBody = exports.generateUrlParams = exports.generateQueryParams = exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = void 0;
|
|
8
7
|
const resource_1 = require("../../intermediate/resource");
|
|
9
8
|
const constants_1 = require("../adapter/constants");
|
|
10
9
|
const utils_1 = require("../../intermediate/utils");
|
|
@@ -63,16 +62,19 @@ function generateQueryParams(resource) {
|
|
|
63
62
|
? '{}'
|
|
64
63
|
: `${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_QUERY_PARAMS}`;
|
|
65
64
|
}
|
|
65
|
+
exports.generateQueryParams = generateQueryParams;
|
|
66
66
|
function generateUrlParams(resource) {
|
|
67
67
|
return resource.urlParameters.length === 0
|
|
68
68
|
? '{}'
|
|
69
69
|
: `${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_URL_PARAMS}`;
|
|
70
70
|
}
|
|
71
|
+
exports.generateUrlParams = generateUrlParams;
|
|
71
72
|
function generateBody(resource) {
|
|
72
73
|
return resource.bodyShape === undefined
|
|
73
74
|
? 'null'
|
|
74
75
|
: `${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_BODY}`;
|
|
75
76
|
}
|
|
77
|
+
exports.generateBody = generateBody;
|
|
76
78
|
function generateHeaders(resource) {
|
|
77
79
|
const properties = resource.headers
|
|
78
80
|
.map((header) => {
|
|
@@ -98,23 +100,17 @@ function generateHeaders(resource) {
|
|
|
98
100
|
${properties}
|
|
99
101
|
`;
|
|
100
102
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
if (fulfill === undefined) {
|
|
104
|
-
return '';
|
|
105
|
-
}
|
|
106
|
-
const { importAbsolutePath } = importContext;
|
|
107
|
-
const absResourceLocation = path_1.default.resolve(path_1.default.format(compilerBaseOutputDir), path_1.default.dirname(relPath));
|
|
108
|
-
return importAbsolutePath(absResourceLocation, 'default');
|
|
109
|
-
}
|
|
110
|
-
function generateCreateResourceRequest(importContext, resource, compilerBaseOutputDir, relPath) {
|
|
103
|
+
exports.generateHeaders = generateHeaders;
|
|
104
|
+
function generateCreateResourceRequest(importContext, resource) {
|
|
111
105
|
const { id, method } = resource;
|
|
112
106
|
const headers = generateHeaders(resource);
|
|
113
107
|
const urlParams = generateUrlParams(resource);
|
|
114
108
|
const queryParams = generateQueryParams(resource);
|
|
115
109
|
const body = generateBody(resource);
|
|
116
|
-
|
|
117
|
-
|
|
110
|
+
return generateCreateResourceRequestWrapper(importContext, id, headers, resource, method, body, urlParams, queryParams);
|
|
111
|
+
}
|
|
112
|
+
exports.generateCreateResourceRequest = generateCreateResourceRequest;
|
|
113
|
+
function generateCreateResourceRequestWrapper(importContext, id, headers, resource, method, body, urlParams, queryParams) {
|
|
118
114
|
const resourceRequestConfig = importContext.importRamlArtifact(id, resource_params_1.RESOURCE_PARAMS_INTERFACE);
|
|
119
115
|
return (0, deindent_1.default) `
|
|
120
116
|
export function ${exports.CREATE_RESOURCE_REQUEST_IDENTIFIER}(${CONFIG_IDENTIFIER}: ${resourceRequestConfig}): ${constants_1.ADAPTER_RESOURCE_REQUEST_IDENTIFIER} {
|
|
@@ -129,12 +125,11 @@ function generateCreateResourceRequest(importContext, resource, compilerBaseOutp
|
|
|
129
125
|
queryParams: ${queryParams},
|
|
130
126
|
headers,
|
|
131
127
|
priority: 'normal',
|
|
132
|
-
${fulfillProperty}
|
|
133
128
|
}
|
|
134
129
|
}
|
|
135
130
|
|
|
136
131
|
export default ${exports.CREATE_RESOURCE_REQUEST_IDENTIFIER};
|
|
137
132
|
`;
|
|
138
133
|
}
|
|
139
|
-
exports.
|
|
134
|
+
exports.generateCreateResourceRequestWrapper = generateCreateResourceRequestWrapper;
|
|
140
135
|
//# sourceMappingURL=create-resource-request.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-resource-request.js","sourceRoot":"","sources":["../../../src/codegen/resource/create-resource-request.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"create-resource-request.js","sourceRoot":"","sources":["../../../src/codegen/resource/create-resource-request.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { GraphQLResource } from '../../../intermediate/resource';
|
|
2
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
3
|
+
export declare const CREATE_RESOURCE_REQUEST_IDENTIFIER = "createResourceRequest";
|
|
4
|
+
export declare function generateGraphQLCreateResourceRequest(importContext: ImportContext, resource: GraphQLResource): string;
|
|
@@ -0,0 +1,30 @@
|
|
|
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.generateGraphQLCreateResourceRequest = exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = void 0;
|
|
7
|
+
const resource_1 = require("../../../intermediate/resource");
|
|
8
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
9
|
+
const constants_1 = require("../../shared/constants");
|
|
10
|
+
const create_resource_request_1 = require("../create-resource-request");
|
|
11
|
+
const CONFIG_IDENTIFIER = 'config';
|
|
12
|
+
exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = 'createResourceRequest';
|
|
13
|
+
// Resource param will likely be used in the future w/ applyMinimumFields and supporting get instead of post
|
|
14
|
+
function generateGraphQLBody(_resource, _importContext) {
|
|
15
|
+
// TODO: W-10942024 - should also call applyMinimumFields on the query here, just before stringification
|
|
16
|
+
return (0, deindent_1.default) `{
|
|
17
|
+
...${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_BODY},
|
|
18
|
+
query: ${constants_1.LUVIO_GRAPHQL_PRINT_IMPORT}(${CONFIG_IDENTIFIER}.${resource_1.CONFIG_PROPERTY_BODY}.query)
|
|
19
|
+
}`;
|
|
20
|
+
}
|
|
21
|
+
function generateGraphQLCreateResourceRequest(importContext, resource) {
|
|
22
|
+
const { id, method } = resource;
|
|
23
|
+
const headers = (0, create_resource_request_1.generateHeaders)(resource);
|
|
24
|
+
const urlParams = (0, create_resource_request_1.generateUrlParams)(resource);
|
|
25
|
+
const queryParams = (0, create_resource_request_1.generateQueryParams)(resource);
|
|
26
|
+
const body = generateGraphQLBody(resource, importContext);
|
|
27
|
+
return (0, create_resource_request_1.generateCreateResourceRequestWrapper)(importContext, id, headers, resource, method, body, urlParams, queryParams);
|
|
28
|
+
}
|
|
29
|
+
exports.generateGraphQLCreateResourceRequest = generateGraphQLCreateResourceRequest;
|
|
30
|
+
//# sourceMappingURL=create-resource-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-resource-request.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/create-resource-request.ts"],"names":[],"mappings":";;;;;;AACA,6DAAsE;AACtE,uEAA+C;AAE/C,sDAAoE;AACpE,wEAKoC;AAEpC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAEtB,QAAA,kCAAkC,GAAG,uBAAuB,CAAC;AAE1E,4GAA4G;AAC5G,SAAS,mBAAmB,CAAC,SAA0B,EAAE,cAA6B;IAClF,wGAAwG;IACxG,OAAO,IAAA,kBAAQ,EAAA;qBACE,iBAAiB,IAAI,+BAAoB;yBACrC,sCAA0B,IAAI,iBAAiB,IAAI,+BAAoB;cAClF,CAAC;AACf,CAAC;AAED,SAAgB,oCAAoC,CAChD,aAA4B,EAC5B,QAAyB;IAEzB,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;IAEhC,MAAM,OAAO,GAAG,IAAA,yCAAe,EAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAA,2CAAiB,EAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,IAAA,6CAAmB,EAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAE1D,OAAO,IAAA,8DAAoC,EACvC,aAAa,EACb,EAAE,EACF,OAAO,EACP,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,SAAS,EACT,WAAW,CACd,CAAC;AACN,CAAC;AArBD,oFAqBC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import type { ModelInfo } from '../../../intermediate/model-info';
|
|
3
|
+
import type path from 'path';
|
|
4
|
+
import type { CompilerPlugin } from '../../../plugin';
|
|
5
|
+
import type { GraphQLResource } from '../../../intermediate/resource';
|
|
6
|
+
export declare function generateGraphQLResource(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, resource: GraphQLResource, modelInfo: ModelInfo, plugin?: CompilerPlugin): string;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateGraphQLResource = void 0;
|
|
4
|
+
const imports_1 = require("../../../utils/imports");
|
|
5
|
+
const evict_success_1 = require("../evict-success");
|
|
6
|
+
const select_1 = require("../select");
|
|
7
|
+
const resource_params_1 = require("./resource-params");
|
|
8
|
+
const ingest_error_1 = require("./ingest-error");
|
|
9
|
+
const ingest_success_1 = require("./ingest-success");
|
|
10
|
+
const key_builder_1 = require("./key-builder");
|
|
11
|
+
const response_cache_keys_1 = require("./response-cache-keys");
|
|
12
|
+
const create_resource_request_1 = require("./create-resource-request");
|
|
13
|
+
function generateGraphQLResource(typescriptFilePath, compilerBaseOutputDir, resource, modelInfo, plugin) {
|
|
14
|
+
const importContext = (0, imports_1.createImportContext)(typescriptFilePath, compilerBaseOutputDir, plugin);
|
|
15
|
+
const code = [
|
|
16
|
+
(0, resource_params_1.generateGraphQLResourceParams)(importContext),
|
|
17
|
+
(0, select_1.generateSelect)(importContext, resource, modelInfo),
|
|
18
|
+
(0, key_builder_1.generateGraphQLKeyBuilder)(importContext, resource),
|
|
19
|
+
(0, response_cache_keys_1.generateGraphQLGetResponseCacheKeys)(importContext, resource),
|
|
20
|
+
(0, ingest_success_1.generateGraphQLIngestSuccess)(importContext, resource),
|
|
21
|
+
(0, ingest_error_1.generateGraphQLIngestError)(importContext, resource, modelInfo),
|
|
22
|
+
(0, evict_success_1.generateEvictSuccess)(importContext, resource),
|
|
23
|
+
(0, create_resource_request_1.generateGraphQLCreateResourceRequest)(importContext, resource),
|
|
24
|
+
]
|
|
25
|
+
.filter(Boolean)
|
|
26
|
+
.join('\n\n');
|
|
27
|
+
return (0, imports_1.resolveImports)(code);
|
|
28
|
+
}
|
|
29
|
+
exports.generateGraphQLResource = generateGraphQLResource;
|
|
30
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/index.ts"],"names":[],"mappings":";;;AACA,oDAA6E;AAC7E,oDAAwD;AACxD,sCAA2C;AAI3C,uDAAkE;AAClE,iDAA4D;AAC5D,qDAAgE;AAChE,+CAA0D;AAC1D,+DAA4E;AAC5E,uEAAiF;AAEjF,SAAgB,uBAAuB,CACnC,kBAAmC,EACnC,qBAAsC,EACtC,QAAyB,EACzB,SAAoB,EACpB,MAAuB;IAEvB,MAAM,aAAa,GAAG,IAAA,6BAAmB,EAAC,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAE7F,MAAM,IAAI,GAAG;QACT,IAAA,+CAA6B,EAAC,aAAa,CAAC;QAC5C,IAAA,uBAAc,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAClD,IAAA,uCAAyB,EAAC,aAAa,EAAE,QAAQ,CAAC;QAClD,IAAA,yDAAmC,EAAC,aAAa,EAAE,QAAQ,CAAC;QAC5D,IAAA,6CAA4B,EAAC,aAAa,EAAE,QAAQ,CAAC;QACrD,IAAA,yCAA0B,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC9D,IAAA,oCAAoB,EAAC,aAAa,EAAE,QAAQ,CAAC;QAC7C,IAAA,8DAAoC,EAAC,aAAa,EAAE,QAAQ,CAAC;KAChE;SACI,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,OAAO,IAAA,wBAAc,EAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AAvBD,0DAuBC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ModelInfo } from '../../../intermediate/model-info';
|
|
2
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
3
|
+
import type { GraphQLResource } from '../../../intermediate/resource';
|
|
4
|
+
export declare const RESOURCE_INGEST_ERROR_IDENTIFIER = "ingestError";
|
|
5
|
+
export declare function generateGraphQLIngestError(importContext: ImportContext, resource: GraphQLResource, modelInfo: ModelInfo): string;
|
|
@@ -0,0 +1,63 @@
|
|
|
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.generateGraphQLIngestError = exports.RESOURCE_INGEST_ERROR_IDENTIFIER = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const constants_1 = require("../../adapter/constants");
|
|
9
|
+
const constants_2 = require("../../shared/constants");
|
|
10
|
+
const key_builder_1 = require("../key-builder");
|
|
11
|
+
const resource_params_1 = require("./resource-params");
|
|
12
|
+
const RESOURCE_PARAMS_IDENTIFIER = 'params';
|
|
13
|
+
const SNAPSHOT_REFRESH_IDENTIFIER = 'snapshotRefresh';
|
|
14
|
+
const KEY_IDENTIFIER = 'key';
|
|
15
|
+
const ERROR_SNAPSHOT_IDENTIFIER = 'errorSnapshot';
|
|
16
|
+
const RESPONSE_IDENTIFIER = 'error';
|
|
17
|
+
exports.RESOURCE_INGEST_ERROR_IDENTIFIER = 'ingestError';
|
|
18
|
+
function getIngestCode(importContext, shapeId, modelInfo) {
|
|
19
|
+
const shapeTTL = modelInfo.shapeTtls[shapeId];
|
|
20
|
+
if (shapeTTL) {
|
|
21
|
+
const { importAdapterUtil, importRamlArtifact } = importContext;
|
|
22
|
+
const ttlIdentifier = importRamlArtifact(shapeId, 'TTL');
|
|
23
|
+
const KEY_PREFIX = importAdapterUtil('keyPrefix');
|
|
24
|
+
const REPRESENTATION_NAME = importRamlArtifact(shapeId, 'RepresentationType');
|
|
25
|
+
return (0, deindent_1.default) `
|
|
26
|
+
const storeMetadataParams = {
|
|
27
|
+
ttl: ${ttlIdentifier},
|
|
28
|
+
namespace: ${KEY_PREFIX},
|
|
29
|
+
representationName: ${REPRESENTATION_NAME}
|
|
30
|
+
};
|
|
31
|
+
${constants_2.LUVIO_IDENTIFIER}.storeIngestError(${KEY_IDENTIFIER}, ${ERROR_SNAPSHOT_IDENTIFIER}, storeMetadataParams);
|
|
32
|
+
`;
|
|
33
|
+
}
|
|
34
|
+
return (0, deindent_1.default) `
|
|
35
|
+
${constants_2.LUVIO_IDENTIFIER}.storeIngestError(${KEY_IDENTIFIER}, ${ERROR_SNAPSHOT_IDENTIFIER});
|
|
36
|
+
`;
|
|
37
|
+
}
|
|
38
|
+
// Basically a copy of the rest code minus the part where we check the HTTP verb.
|
|
39
|
+
// Seems like we may want to do something different, because GraphQL endpoints should always
|
|
40
|
+
// return 200s, even when returning errors. https://spec.graphql.org/June2018/#sec-Errors
|
|
41
|
+
function generateGraphQLIngestError(importContext, resource, modelInfo) {
|
|
42
|
+
const { importRamlArtifact } = importContext;
|
|
43
|
+
const { id, returnShape } = resource;
|
|
44
|
+
if (returnShape === undefined) {
|
|
45
|
+
//TODO: cleanup in W-11069204
|
|
46
|
+
return '';
|
|
47
|
+
}
|
|
48
|
+
const returnShapeId = returnShape.id;
|
|
49
|
+
const returnShapeName = returnShape.name;
|
|
50
|
+
const resourceTypeIdentifier = importRamlArtifact(returnShapeId, returnShapeName);
|
|
51
|
+
const resourceRequestConfig = importRamlArtifact(id, resource_params_1.RESOURCE_PARAMS_INTERFACE);
|
|
52
|
+
const keyBuilder = importRamlArtifact(id, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER);
|
|
53
|
+
return (0, deindent_1.default) `
|
|
54
|
+
export function ${exports.RESOURCE_INGEST_ERROR_IDENTIFIER}(${constants_2.LUVIO_IDENTIFIER}: ${constants_2.LUVIO_IMPORT}, ${RESOURCE_PARAMS_IDENTIFIER}: ${resourceRequestConfig}, ${RESPONSE_IDENTIFIER}: ${constants_1.ADAPTER_FETCH_RESPONSE_INTERFACE_IDENTIFIER}<unknown>, ${SNAPSHOT_REFRESH_IDENTIFIER}?: ${constants_1.ADAPTER_SNAPSHOT_REFRESH_INTERFACE}<${resourceTypeIdentifier}>): ${constants_1.ADAPTER_ERROR_SNAPSHOT_IMPORT} {
|
|
55
|
+
const ${KEY_IDENTIFIER} = ${keyBuilder}(${RESOURCE_PARAMS_IDENTIFIER});
|
|
56
|
+
const ${ERROR_SNAPSHOT_IDENTIFIER} = ${constants_2.LUVIO_IDENTIFIER}.errorSnapshot(${RESPONSE_IDENTIFIER}, ${SNAPSHOT_REFRESH_IDENTIFIER});
|
|
57
|
+
${getIngestCode(importContext, returnShapeId, modelInfo)}
|
|
58
|
+
return ${ERROR_SNAPSHOT_IDENTIFIER};
|
|
59
|
+
}
|
|
60
|
+
`;
|
|
61
|
+
}
|
|
62
|
+
exports.generateGraphQLIngestError = generateGraphQLIngestError;
|
|
63
|
+
//# sourceMappingURL=ingest-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ingest-error.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/ingest-error.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAC/C,uDAIiC;AACjC,sDAAwE;AACxE,gDAAiE;AACjE,uDAA8D;AAI9D,MAAM,0BAA0B,GAAG,QAAQ,CAAC;AAC5C,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;AACtD,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,yBAAyB,GAAG,eAAe,CAAC;AAClD,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAEvB,QAAA,gCAAgC,GAAG,aAAa,CAAC;AAE9D,SAAS,aAAa,CAAC,aAA4B,EAAE,OAAe,EAAE,SAAoB;IACtF,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,QAAQ,EAAE;QACV,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;QAChE,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAE9E,OAAO,IAAA,kBAAQ,EAAA;;uBAEA,aAAa;6BACP,UAAU;sCACD,mBAAmB;;cAE3C,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;SACtF,CAAC;KACL;IAED,OAAO,IAAA,kBAAQ,EAAA;UACT,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;KACtF,CAAC;AACN,CAAC;AAED,iFAAiF;AACjF,4FAA4F;AAC5F,yFAAyF;AACzF,SAAgB,0BAA0B,CACtC,aAA4B,EAC5B,QAAyB,EACzB,SAAoB;IAEpB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAErC,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,6BAA6B;QAC7B,OAAO,EAAE,CAAC;KACb;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,EAAE,CAAC;IACrC,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC;IACzC,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAClF,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,EAAE,EAAE,2CAAyB,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,kBAAkB,CAAC,EAAE,EAAE,6CAA+B,CAAC,CAAC;IAE3E,OAAO,IAAA,kBAAQ,EAAA;0BACO,wCAAgC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,0BAA0B,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,uDAA2C,cAAc,2BAA2B,MAAM,8CAAkC,IAAI,sBAAsB,OAAO,yCAA6B;oBAC3V,cAAc,MAAM,UAAU,IAAI,0BAA0B;oBAC5D,yBAAyB,MAAM,4BAAgB,kBAAkB,mBAAmB,KAAK,2BAA2B;cAC1H,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,SAAS,CAAC;qBAC/C,yBAAyB;;KAEzC,CAAC;AACN,CAAC;AA3BD,gEA2BC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { GraphQLResource } from '../../../intermediate/resource';
|
|
2
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
3
|
+
export declare const RESOURCE_INGEST_SUCCESS_IDENTIFIER = "ingestSuccess";
|
|
4
|
+
export declare function generateGraphQLIngestSuccess(importContext: ImportContext, resource: GraphQLResource): string;
|
|
@@ -0,0 +1,56 @@
|
|
|
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.generateGraphQLIngestSuccess = exports.RESOURCE_INGEST_SUCCESS_IDENTIFIER = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const constants_1 = require("../../adapter/constants");
|
|
9
|
+
const constants_2 = require("../../shared/constants");
|
|
10
|
+
const shape_ingest_1 = require("../../shape/shape-ingest");
|
|
11
|
+
const key_builder_1 = require("../key-builder");
|
|
12
|
+
const resource_params_1 = require("./resource-params");
|
|
13
|
+
const constants_3 = require("../constants");
|
|
14
|
+
exports.RESOURCE_INGEST_SUCCESS_IDENTIFIER = 'ingestSuccess';
|
|
15
|
+
const RESPONSE_IDENTIFIER = 'response';
|
|
16
|
+
const KEY_IDENTIFIER = 'key';
|
|
17
|
+
const SNAPSHOT_IDENTIFIER = 'snapshot';
|
|
18
|
+
function generateGraphQLIngestSuccess(importContext, resource) {
|
|
19
|
+
const { importRamlArtifact } = importContext;
|
|
20
|
+
const { id: resourceId, returnShape } = resource;
|
|
21
|
+
if (returnShape === undefined) {
|
|
22
|
+
//TODO: cleanup in W-11069204
|
|
23
|
+
return '';
|
|
24
|
+
}
|
|
25
|
+
const { name: returnShapeName, id: returnShapeId } = returnShape;
|
|
26
|
+
const ingestIdentifier = importRamlArtifact(returnShapeId, shape_ingest_1.SHAPE_INGEST_IDENTIFIER);
|
|
27
|
+
const keyStatement = `${importRamlArtifact(resourceId, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER)}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER})`;
|
|
28
|
+
const resourceTypeIdentifier = importRamlArtifact(returnShapeId, returnShapeName);
|
|
29
|
+
const snapshotRefreshArgument = `, ${constants_1.ADAPTER_SNAPSHOT_REFRESH_IDENTIFIER}?: ${constants_1.ADAPTER_SNAPSHOT_REFRESH_INTERFACE}<${resourceTypeIdentifier}>`;
|
|
30
|
+
const snapshotRefreshIdentifier = ', ' + constants_1.ADAPTER_SNAPSHOT_REFRESH_IDENTIFIER;
|
|
31
|
+
const resourceRequestConfig = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
|
|
32
|
+
const select = importRamlArtifact(resourceId, constants_3.RESOURCE_SELECT_IDENTIFIER);
|
|
33
|
+
return (0, deindent_1.default) `
|
|
34
|
+
export function ${exports.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}>${snapshotRefreshArgument}): ${constants_1.ADAPTER_FULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}> | ${constants_1.ADAPTER_STALE_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}> | ${constants_1.ADAPTER_PENDING_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, any> {
|
|
35
|
+
const { ${constants_1.ADAPTER_RESPONSE_BODY_IDENTIFIER} } = ${RESPONSE_IDENTIFIER};
|
|
36
|
+
const ${KEY_IDENTIFIER} = ${keyStatement};
|
|
37
|
+
const { query, variables } = ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}.body;
|
|
38
|
+
${constants_2.LUVIO_IDENTIFIER}.storeIngest<${resourceTypeIdentifier}>(${KEY_IDENTIFIER}, ${ingestIdentifier}(query, variables), ${constants_1.ADAPTER_RESPONSE_BODY_IDENTIFIER});
|
|
39
|
+
const ${SNAPSHOT_IDENTIFIER} = ${constants_2.LUVIO_IDENTIFIER}.storeLookup<${resourceTypeIdentifier}>({
|
|
40
|
+
recordId: ${KEY_IDENTIFIER},
|
|
41
|
+
node: ${select}(${constants_2.LUVIO_IDENTIFIER}, ${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER}),
|
|
42
|
+
variables: {},
|
|
43
|
+
}${snapshotRefreshIdentifier});
|
|
44
|
+
|
|
45
|
+
if (process.env.NODE_ENV !== 'production') {
|
|
46
|
+
if(${SNAPSHOT_IDENTIFIER}.state !== 'Fulfilled') {
|
|
47
|
+
throw new Error('Invalid network response. Expected resource response to result in Fulfilled snapshot');
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
return ${SNAPSHOT_IDENTIFIER} as (${constants_1.ADAPTER_FULFILLED_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}> | ${constants_1.ADAPTER_STALE_SNAPSHOT_IMPORT}<${resourceTypeIdentifier}, {}>);
|
|
52
|
+
}
|
|
53
|
+
`;
|
|
54
|
+
}
|
|
55
|
+
exports.generateGraphQLIngestSuccess = generateGraphQLIngestSuccess;
|
|
56
|
+
//# sourceMappingURL=ingest-success.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ingest-success.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/ingest-success.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAE/C,uDASiC;AACjC,sDAAwE;AACxE,2DAAmE;AACnE,gDAAiE;AACjE,uDAA8D;AAC9D,4CAA0D;AAE7C,QAAA,kCAAkC,GAAG,eAAe,CAAC;AAClE,MAAM,mBAAmB,GAAG,UAAU,CAAC;AACvC,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,SAAgB,4BAA4B,CACxC,aAA4B,EAC5B,QAAyB;IAEzB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IACjD,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,6BAA6B;QAC7B,OAAO,EAAE,CAAC;KACb;IAED,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;IACjE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,aAAa,EAAE,sCAAuB,CAAC,CAAC;IAEpF,MAAM,YAAY,GAAG,GAAG,kBAAkB,CACtC,UAAU,EACV,6CAA+B,CAClC,IAAI,8CAAkC,GAAG,CAAC;IAE3C,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAElF,MAAM,uBAAuB,GAAG,KAAK,+CAAmC,MAAM,8CAAkC,IAAI,sBAAsB,GAAG,CAAC;IAC9I,MAAM,yBAAyB,GAAG,IAAI,GAAG,+CAAmC,CAAC;IAC7E,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,UAAU,EAAE,2CAAyB,CAAC,CAAC;IACxF,MAAM,MAAM,GAAG,kBAAkB,CAAC,UAAU,EAAE,sCAA0B,CAAC,CAAC;IAE1E,OAAO,IAAA,kBAAQ,EAAA;0BACO,0CAAkC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,8CAAkC,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,0DAA8C,IAAI,sBAAsB,IAAI,uBAAuB,MAAM,6CAAiC,IAAI,sBAAsB,WAAW,yCAA6B,IAAI,sBAAsB,WAAW,2CAA+B,IAAI,sBAAsB;sBACnd,4CAAgC,QAAQ,mBAAmB;oBAC7D,cAAc,MAAM,YAAY;2CACT,8CAAkC;cAC/D,4BAAgB,gBAAgB,sBAAsB,KAAK,cAAc,KAAK,gBAAgB,uBAAuB,4CAAgC;oBAC/I,mBAAmB,MAAM,4BAAgB,gBAAgB,sBAAsB;4BACvE,cAAc;wBAClB,MAAM,IAAI,4BAAgB,KAAK,8CAAkC;;eAE1E,yBAAyB;;;qBAGnB,mBAAmB;;;;;qBAKnB,mBAAmB,QAAQ,6CAAiC,IAAI,sBAAsB,WAAW,yCAA6B,IAAI,sBAAsB;;KAExK,CAAC;AACN,CAAC;AA/CD,oEA+CC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
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.generateGraphQLKeyBuilder = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const resource_params_1 = require("./resource-params");
|
|
9
|
+
const key_builder_1 = require("../key-builder");
|
|
10
|
+
function generateGraphQLKeyBuilder(importContext, resource) {
|
|
11
|
+
let code;
|
|
12
|
+
const { id: resourceId, returnShape } = resource;
|
|
13
|
+
const resourceRequestConfig = importContext.importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
|
|
14
|
+
code =
|
|
15
|
+
returnShape !== undefined //TODO: cleanup in W-11069204
|
|
16
|
+
? (0, key_builder_1.generateKeyFallback)(importContext, returnShape === null || returnShape === void 0 ? void 0 : returnShape.name, resource)
|
|
17
|
+
: '';
|
|
18
|
+
return (0, deindent_1.default) `
|
|
19
|
+
export function ${key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER}(params: ${resourceRequestConfig}): string {
|
|
20
|
+
return ${code}
|
|
21
|
+
}
|
|
22
|
+
`;
|
|
23
|
+
}
|
|
24
|
+
exports.generateGraphQLKeyBuilder = generateGraphQLKeyBuilder;
|
|
25
|
+
//# sourceMappingURL=key-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key-builder.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/key-builder.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAE/C,uDAA8D;AAC9D,gDAAsF;AAGtF,SAAgB,yBAAyB,CACrC,aAA4B,EAC5B,QAAyB;IAEzB,IAAI,IAAI,CAAC;IACT,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAEjD,MAAM,qBAAqB,GAAG,aAAa,CAAC,kBAAkB,CAC1D,UAAU,EACV,2CAAyB,CAC5B,CAAC;IAEF,IAAI;QACA,WAAW,KAAK,SAAS,CAAC,6BAA6B;YACnD,CAAC,CAAC,IAAA,iCAAmB,EAAC,aAAa,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,EAAE,QAAQ,CAAC;YACjE,CAAC,CAAC,EAAE,CAAC;IAEb,OAAO,IAAA,kBAAQ,EAAA;8BACW,6CAA+B,YAAY,qBAAqB;yBACrE,IAAI;;SAEpB,CAAC;AACV,CAAC;AAtBD,8DAsBC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
2
|
+
export declare const RESOURCE_PARAMS_INTERFACE = "ResourceRequestConfig";
|
|
3
|
+
export declare const CREATE_RESOURCE_REQUEST_IDENTIFIER = "createResourceRequest";
|
|
4
|
+
export declare function generateGraphQLResourceParams(importContext: ImportContext): string;
|
|
@@ -0,0 +1,25 @@
|
|
|
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.generateGraphQLResourceParams = exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = exports.RESOURCE_PARAMS_INTERFACE = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const constants_1 = require("../../graphql/type/constants");
|
|
9
|
+
const constants_2 = require("../../shared/constants");
|
|
10
|
+
exports.RESOURCE_PARAMS_INTERFACE = 'ResourceRequestConfig';
|
|
11
|
+
exports.CREATE_RESOURCE_REQUEST_IDENTIFIER = 'createResourceRequest';
|
|
12
|
+
function generateGraphQLResourceParams(importContext) {
|
|
13
|
+
const graphQLVariablesInterfaceImport = importContext.importGraphQLArtifact(constants_1.TYPE_UTIL_IDENTIFIER, constants_1.GRAPHQL_VARIABLES_IDENTIFIER);
|
|
14
|
+
return (0, deindent_1.default) `
|
|
15
|
+
export interface ${exports.RESOURCE_PARAMS_INTERFACE} {
|
|
16
|
+
body: {
|
|
17
|
+
operationName?: string;
|
|
18
|
+
query: ${constants_2.LUVIO_GRAPHQL_DOCUMENT_NODE_IMPORT};
|
|
19
|
+
variables?: ${graphQLVariablesInterfaceImport};
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
`;
|
|
23
|
+
}
|
|
24
|
+
exports.generateGraphQLResourceParams = generateGraphQLResourceParams;
|
|
25
|
+
//# sourceMappingURL=resource-params.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-params.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/resource-params.ts"],"names":[],"mappings":";;;;;;AAAA,uEAA+C;AAE/C,4DAAkG;AAClG,sDAA4E;AAE/D,QAAA,yBAAyB,GAAG,uBAAuB,CAAC;AAEpD,QAAA,kCAAkC,GAAG,uBAAuB,CAAC;AAE1E,SAAgB,6BAA6B,CAAC,aAA4B;IACtE,MAAM,+BAA+B,GAAG,aAAa,CAAC,qBAAqB,CACvE,gCAAoB,EACpB,wCAA4B,CAC/B,CAAC;IACF,OAAO,IAAA,kBAAQ,EAAA;+BACY,iCAAyB;;;6BAG3B,8CAAkC;kCAC7B,+BAA+B;;;SAGxD,CAAC;AACV,CAAC;AAdD,sEAcC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { GraphQLResource } from '../../../intermediate/resource';
|
|
2
|
+
import type { ImportContext } from '../../../utils/imports';
|
|
3
|
+
export declare const GET_RESPONSE_CACHE_KEYS_IDENTIFIER = "getResponseCacheKeys";
|
|
4
|
+
export declare function generateGraphQLGetResponseCacheKeys(importContext: ImportContext, resource: GraphQLResource): string;
|
|
@@ -0,0 +1,33 @@
|
|
|
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.generateGraphQLGetResponseCacheKeys = exports.GET_RESPONSE_CACHE_KEYS_IDENTIFIER = void 0;
|
|
7
|
+
const deindent_1 = __importDefault(require("../../../utils/deindent"));
|
|
8
|
+
const constants_1 = require("../../adapter/constants");
|
|
9
|
+
const constants_2 = require("../../shared/constants");
|
|
10
|
+
const resource_params_1 = require("./resource-params");
|
|
11
|
+
const shape_cache_keys_1 = require("../../shape/shape-cache-keys");
|
|
12
|
+
exports.GET_RESPONSE_CACHE_KEYS_IDENTIFIER = 'getResponseCacheKeys';
|
|
13
|
+
const RESPONSE_IDENTIFIER = 'response';
|
|
14
|
+
function generateGraphQLGetResponseCacheKeys(importContext, resource) {
|
|
15
|
+
const { importRamlArtifact } = importContext;
|
|
16
|
+
const { id: resourceId, returnShape } = resource;
|
|
17
|
+
if (returnShape === undefined) {
|
|
18
|
+
//TODO: cleanup in W-11069204
|
|
19
|
+
return '';
|
|
20
|
+
}
|
|
21
|
+
const { name: returnShapeName, id: returnShapeId } = returnShape;
|
|
22
|
+
const resourceTypeIdentifier = importRamlArtifact(returnShapeId, returnShapeName);
|
|
23
|
+
const resourceRequestConfig = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
|
|
24
|
+
const shapeCacheKeysIdentifier = importRamlArtifact(returnShapeId, shape_cache_keys_1.GET_SHAPE_CACHE_KEYS_IDENTIFIER);
|
|
25
|
+
// TODO(W-10767117): actually return response cache keys.
|
|
26
|
+
return (0, deindent_1.default) `
|
|
27
|
+
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} {
|
|
28
|
+
return ${shapeCacheKeysIdentifier}(${RESPONSE_IDENTIFIER}, () => '')
|
|
29
|
+
}
|
|
30
|
+
`;
|
|
31
|
+
}
|
|
32
|
+
exports.generateGraphQLGetResponseCacheKeys = generateGraphQLGetResponseCacheKeys;
|
|
33
|
+
//# sourceMappingURL=response-cache-keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response-cache-keys.js","sourceRoot":"","sources":["../../../../src/codegen/resource/graphql/response-cache-keys.ts"],"names":[],"mappings":";;;;;;AACA,uEAA+C;AAE/C,uDAA6E;AAC7E,sDAA+E;AAC/E,uDAA8D;AAC9D,mEAA+E;AAElE,QAAA,kCAAkC,GAAG,sBAAsB,CAAC;AACzE,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,SAAgB,mCAAmC,CAC/C,aAA4B,EAC5B,QAAyB;IAEzB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAEjD,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,6BAA6B;QAC7B,OAAO,EAAE,CAAC;KACb;IAED,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;IAEjE,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,yDAAyD;IACzD,OAAO,IAAA,kBAAQ,EAAA;0BACO,0CAAkC,IAAI,8CAAkC,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,sBAAsB,MAAM,iDAAqC;qBACrM,wBAAwB,IAAI,mBAAmB;;KAE/D,CAAC;AACN,CAAC;AA7BD,kFA6BC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import type { ModelInfo } from '../../intermediate/model-info';
|
|
3
|
-
import type {
|
|
3
|
+
import type { RestResource } from '../../intermediate/resource';
|
|
4
4
|
import type path from 'path';
|
|
5
5
|
import type { CompilerPlugin } from '../../plugin';
|
|
6
|
-
export declare function
|
|
6
|
+
export declare function generateRestResource(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, resource: RestResource, modelInfo: ModelInfo, plugin?: CompilerPlugin): string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.generateRestResource = void 0;
|
|
4
4
|
const imports_1 = require("../../utils/imports");
|
|
5
5
|
const create_resource_request_1 = require("./create-resource-request");
|
|
6
6
|
const ingest_error_1 = require("./ingest-error");
|
|
@@ -14,7 +14,7 @@ const ingest_success_child_resource_params_1 = require("./composite/ingest-succe
|
|
|
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
16
|
const response_cache_keys_1 = require("./response-cache-keys");
|
|
17
|
-
function
|
|
17
|
+
function generateRestResource(typescriptFilePath, compilerBaseOutputDir, resource, modelInfo, plugin) {
|
|
18
18
|
const importContext = (0, imports_1.createImportContext)(typescriptFilePath, compilerBaseOutputDir, plugin);
|
|
19
19
|
const { endPointId } = resource;
|
|
20
20
|
const isComposite = modelInfo.compositeResources[endPointId];
|
|
@@ -29,12 +29,12 @@ function generateResource(typescriptFilePath, compilerBaseOutputDir, resource, m
|
|
|
29
29
|
(0, ingest_success_1.generateIngestSuccess)(importContext, resource, modelInfo),
|
|
30
30
|
(0, ingest_error_1.generateIngestError)(importContext, resource, modelInfo),
|
|
31
31
|
(0, evict_success_1.generateEvictSuccess)(importContext, resource),
|
|
32
|
-
(0, create_resource_request_1.generateCreateResourceRequest)(importContext, resource
|
|
32
|
+
(0, create_resource_request_1.generateCreateResourceRequest)(importContext, resource),
|
|
33
33
|
(0, create_resource_request_from_representation_1.generateCreateResourceRequestFromRepresentation)(importContext, resource, modelInfo),
|
|
34
34
|
]
|
|
35
35
|
.filter(Boolean)
|
|
36
36
|
.join('\n\n');
|
|
37
37
|
return (0, imports_1.resolveImports)(code);
|
|
38
38
|
}
|
|
39
|
-
exports.
|
|
39
|
+
exports.generateRestResource = generateRestResource;
|
|
40
40
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/resource/index.ts"],"names":[],"mappings":";;;AAEA,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;AAIrE,SAAgB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/codegen/resource/index.ts"],"names":[],"mappings":";;;AAEA,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;AAIrE,SAAgB,oBAAoB,CAChC,kBAAmC,EACnC,qBAAsC,EACtC,QAAsB,EACtB,SAAoB,EACpB,MAAuB;IAEvB,MAAM,aAAa,GAAG,IAAA,6BAAmB,EAAC,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;IAC7F,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,IAAA,wDAA6B,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;QACpF,IAAA,gEAAiC,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACrE,IAAA,wCAAsB,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC1D,IAAA,uBAAc,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAClD,IAAA,gCAAkB,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACtD,IAAA,kDAA4B,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAChE,IAAA,+EAAwC,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QAC5E,IAAA,sCAAqB,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACzD,IAAA,kCAAmB,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;QACvD,IAAA,oCAAoB,EAAC,aAAa,EAAE,QAAQ,CAAC;QAC7C,IAAA,uDAA6B,EAAC,aAAa,EAAE,QAAQ,CAAC;QACtD,IAAA,6FAA+C,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC;KACtF;SACI,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,MAAM,CAAC,CAAC;IAElB,OAAO,IAAA,wBAAc,EAAC,IAAI,CAAC,CAAC;AAChC,CAAC;AA7BD,oDA6BC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ModelInfo } from '../../intermediate/model-info';
|
|
2
|
-
import type {
|
|
2
|
+
import type { RestResource } from '../../intermediate/resource';
|
|
3
3
|
import type { ImportContext } from '../../utils/imports';
|
|
4
4
|
export declare const RESOURCE_INGEST_ERROR_IDENTIFIER = "ingestError";
|
|
5
|
-
export declare function generateIngestError(importContext: ImportContext, resource:
|
|
5
|
+
export declare function generateIngestError(importContext: ImportContext, resource: RestResource, modelInfo: ModelInfo): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingest-error.js","sourceRoot":"","sources":["../../../src/codegen/resource/ingest-error.ts"],"names":[],"mappings":";;;;;;AAEA,0DAAyD;AACzD,oEAA4C;AAC5C,oDAI8B;AAC9B,mDAAqE;AACrE,+CAAgE;AAChE,uDAA8D;AAG9D,MAAM,0BAA0B,GAAG,QAAQ,CAAC;AAC5C,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;AACtD,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,yBAAyB,GAAG,eAAe,CAAC;AAClD,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAEvB,QAAA,gCAAgC,GAAG,aAAa,CAAC;AAE9D,SAAS,aAAa,CAAC,aAA4B,EAAE,OAAe,EAAE,SAAoB;IACtF,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,QAAQ,EAAE;QACV,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;QAChE,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAE9E,OAAO,IAAA,kBAAQ,EAAA;;uBAEA,aAAa;6BACP,UAAU;sCACD,mBAAmB;;cAE3C,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;SACtF,CAAC;KACL;IAED,OAAO,IAAA,kBAAQ,EAAA;UACT,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;KACtF,CAAC;AACN,CAAC;AAED,SAAgB,mBAAmB,CAC/B,aAA4B,EAC5B,
|
|
1
|
+
{"version":3,"file":"ingest-error.js","sourceRoot":"","sources":["../../../src/codegen/resource/ingest-error.ts"],"names":[],"mappings":";;;;;;AAEA,0DAAyD;AACzD,oEAA4C;AAC5C,oDAI8B;AAC9B,mDAAqE;AACrE,+CAAgE;AAChE,uDAA8D;AAG9D,MAAM,0BAA0B,GAAG,QAAQ,CAAC;AAC5C,MAAM,2BAA2B,GAAG,iBAAiB,CAAC;AACtD,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,yBAAyB,GAAG,eAAe,CAAC;AAClD,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAEvB,QAAA,gCAAgC,GAAG,aAAa,CAAC;AAE9D,SAAS,aAAa,CAAC,aAA4B,EAAE,OAAe,EAAE,SAAoB;IACtF,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,QAAQ,EAAE;QACV,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;QAChE,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzD,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAClD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;QAE9E,OAAO,IAAA,kBAAQ,EAAA;;uBAEA,aAAa;6BACP,UAAU;sCACD,mBAAmB;;cAE3C,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;SACtF,CAAC;KACL;IAED,OAAO,IAAA,kBAAQ,EAAA;UACT,4BAAgB,qBAAqB,cAAc,KAAK,yBAAyB;KACtF,CAAC;AACN,CAAC;AAED,SAAgB,mBAAmB,CAC/B,aAA4B,EAC5B,QAAsB,EACtB,SAAoB;IAEpB,MAAM,EAAE,kBAAkB,EAAE,GAAG,aAAa,CAAC;IAC7C,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAE7C,kBAAkB;IAClB,IAAI,WAAW,KAAK,SAAS,EAAE;QAC3B,OAAO,EAAE,CAAC;KACb;IAED,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,KAAK,IAAI,IAAA,qBAAU,EAAC,QAAQ,CAAC,EAAE;QAChE,OAAO,EAAE,CAAC;KACb;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,EAAE,CAAC;IACrC,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC;IACzC,MAAM,sBAAsB,GAAG,kBAAkB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;IAClF,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,EAAE,EAAE,2CAAyB,CAAC,CAAC;IAChF,MAAM,UAAU,GAAG,kBAAkB,CAAC,EAAE,EAAE,6CAA+B,CAAC,CAAC;IAE3E,OAAO,IAAA,kBAAQ,EAAA;0BACO,wCAAgC,IAAI,4BAAgB,KAAK,wBAAY,KAAK,0BAA0B,KAAK,qBAAqB,KAAK,mBAAmB,KAAK,uDAA2C,cAAc,2BAA2B,MAAM,8CAAkC,IAAI,sBAAsB,OAAO,yCAA6B;oBAC3V,cAAc,MAAM,UAAU,IAAI,0BAA0B;oBAC5D,yBAAyB,MAAM,4BAAgB,kBAAkB,mBAAmB,KAAK,2BAA2B;cAC1H,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,SAAS,CAAC;qBAC/C,yBAAyB;;KAEzC,CAAC;AACN,CAAC;AA/BD,kDA+BC"}
|
|
@@ -37,11 +37,13 @@ function generateIngestSuccess(importContext, resource, modelInfo) {
|
|
|
37
37
|
? `${importRamlArtifact(returnShapeId, 'keyBuilderFromType')}(${constants_1.ADAPTER_RESPONSE_BODY_IDENTIFIER})`
|
|
38
38
|
: `${importRamlArtifact(resourceId, key_builder_1.RESOURCE_KEY_BUILDER_IDENTIFIER)}(${constants_1.ADAPTER_RESOURCE_PARAMS_IDENTIFIER})`;
|
|
39
39
|
const resourceTypeIdentifier = importRamlArtifact(returnShapeId, returnShapeName);
|
|
40
|
-
const
|
|
41
|
-
const snapshotRefreshArgument =
|
|
40
|
+
const isGetOrGraphQL = method === 'get' || alternativeMethod === 'get' || resource.resourceType === 'GraphQL';
|
|
41
|
+
const snapshotRefreshArgument = isGetOrGraphQL
|
|
42
42
|
? `, ${constants_1.ADAPTER_SNAPSHOT_REFRESH_IDENTIFIER}?: ${constants_1.ADAPTER_SNAPSHOT_REFRESH_INTERFACE}<${resourceTypeIdentifier}>`
|
|
43
43
|
: '';
|
|
44
|
-
const snapshotRefreshIdentifier =
|
|
44
|
+
const snapshotRefreshIdentifier = isGetOrGraphQL
|
|
45
|
+
? ', ' + constants_1.ADAPTER_SNAPSHOT_REFRESH_IDENTIFIER
|
|
46
|
+
: '';
|
|
45
47
|
const resourceRequestConfig = importRamlArtifact(resourceId, resource_params_1.RESOURCE_PARAMS_INTERFACE);
|
|
46
48
|
const select = importRamlArtifact(resourceId, constants_3.RESOURCE_SELECT_IDENTIFIER);
|
|
47
49
|
return (0, deindent_1.default) `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ingest-success.js","sourceRoot":"","sources":["../../../src/codegen/resource/ingest-success.ts"],"names":[],"mappings":";;;;;;AAEA,0DAAyD;AACzD,oEAA4C;AAE5C,oDAS8B;AAC9B,mDAAqE;AACrE,wDAAgE;AAChE,+DAA6G;AAC7G,+CAAgE;AAChE,uDAA8D;AAC9D,2CAAyD;AAE5C,QAAA,kCAAkC,GAAG,eAAe,CAAC;AAClE,MAAM,mBAAmB,GAAG,UAAU,CAAC;AACvC,MAAM,cAAc,GAAG,KAAK,CAAC;AAC7B,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAEvC,SAAgB,qBAAqB,CACjC,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,iBAAiB,EAAE,GAAG,QAAQ,CAAC;IACxF,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,IAAA,sCAAsC,EAAC,aAAa,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;KACrF;IAED,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,WAAW,CAAC;IACjE,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,aAAa,EAAE,sCAAuB,CAAC,CAAC;IACpF,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,IAAA,qBAAU,EAAC,QAAQ,CAAC,CAAC;IAChG,MAAM,YAAY,GAAG,wBAAwB;QACzC,CAAC,CAAC,GAAG,kBAAkB,CACjB,aAAa,EACb,oBAAoB,CACvB,IAAI,4CAAgC,GAAG;QAC1C,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,
|
|
1
|
+
{"version":3,"file":"ingest-success.js","sourceRoot":"","sources":["../../../src/codegen/resource/ingest-success.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,4 +2,5 @@ import type { ModelInfo } from '../../intermediate/model-info';
|
|
|
2
2
|
import type { Resource } from '../../intermediate/resource';
|
|
3
3
|
import type { ImportContext } from '../../utils/imports';
|
|
4
4
|
export declare const RESOURCE_KEY_BUILDER_IDENTIFIER = "keyBuilder";
|
|
5
|
+
export declare function generateKeyFallback(importContext: ImportContext, returnShapeName: string, resource: Resource): string;
|
|
5
6
|
export declare function generateKeyBuilder(importContext: ImportContext, resource: Resource, modelInfo: ModelInfo): string;
|
|
@@ -3,7 +3,7 @@ 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.generateKeyBuilder = exports.RESOURCE_KEY_BUILDER_IDENTIFIER = void 0;
|
|
6
|
+
exports.generateKeyBuilder = exports.generateKeyFallback = exports.RESOURCE_KEY_BUILDER_IDENTIFIER = void 0;
|
|
7
7
|
const resource_1 = require("../../intermediate/resource");
|
|
8
8
|
const utils_1 = require("../../intermediate/utils");
|
|
9
9
|
const deindent_1 = __importDefault(require("../../utils/deindent"));
|
|
@@ -86,6 +86,7 @@ function generateKeyFallback(importContext, returnShapeName, resource) {
|
|
|
86
86
|
const propsExpression = props.join(` + ',' + `);
|
|
87
87
|
return `${KEY_PREFIX} + '${constants_1.CACHE_KEY_NAMESPACE_DELIMITER}${returnShapeName}${constants_1.CACHE_KEY_FIELD_DELIMITER}(' + ${propsExpression.length > 0 ? propsExpression + " + ')';" : "')';"}`;
|
|
88
88
|
}
|
|
89
|
+
exports.generateKeyFallback = generateKeyFallback;
|
|
89
90
|
function generateKey(importContext, returnShapeId, keys) {
|
|
90
91
|
const keyBuilderIdentifier = importContext.importRamlArtifact(returnShapeId, 'keyBuilder');
|
|
91
92
|
const keyBuilderConfigProperties = Object.keys(keys).map((name) => {
|