@supermodeltools/sdk 0.9.2 → 0.9.4
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/apis/DefaultApi.d.ts +60 -2
- package/dist/apis/DefaultApi.js +241 -1
- package/dist/esm/apis/DefaultApi.d.ts +60 -2
- package/dist/esm/apis/DefaultApi.js +242 -2
- package/dist/esm/models/AffectedEntryPoint.d.ts +53 -0
- package/dist/esm/models/AffectedEntryPoint.js +57 -0
- package/dist/esm/models/AffectedFile.d.ts +43 -0
- package/dist/esm/models/AffectedFile.js +48 -0
- package/dist/esm/models/AffectedFunction.d.ts +78 -0
- package/dist/esm/models/AffectedFunction.js +73 -0
- package/dist/esm/models/AliveCodeItem.d.ts +68 -0
- package/dist/esm/models/AliveCodeItem.js +68 -0
- package/dist/esm/models/BlastRadius.d.ts +71 -0
- package/dist/esm/models/BlastRadius.js +65 -0
- package/dist/esm/models/CircularDependencyCycle.d.ts +65 -0
- package/dist/esm/models/CircularDependencyCycle.js +63 -0
- package/dist/esm/models/CircularDependencyMetadata.d.ts +61 -0
- package/dist/esm/models/CircularDependencyMetadata.js +56 -0
- package/dist/esm/models/CircularDependencyResponse.d.ts +46 -0
- package/dist/esm/models/CircularDependencyResponse.js +51 -0
- package/dist/esm/models/CircularDependencyResponseAsync.d.ts +66 -0
- package/dist/esm/models/CircularDependencyResponseAsync.js +60 -0
- package/dist/esm/models/CircularDependencySummary.d.ts +55 -0
- package/dist/esm/models/CircularDependencySummary.js +56 -0
- package/dist/esm/models/ClassificationStats.d.ts +1 -1
- package/dist/esm/models/ClassificationStats.js +1 -1
- package/dist/esm/models/CodeGraphEnvelope.d.ts +1 -1
- package/dist/esm/models/CodeGraphEnvelope.js +1 -1
- package/dist/esm/models/CodeGraphEnvelopeAsync.d.ts +1 -1
- package/dist/esm/models/CodeGraphEnvelopeAsync.js +1 -1
- package/dist/esm/models/CodeGraphEnvelopeGraph.d.ts +1 -1
- package/dist/esm/models/CodeGraphEnvelopeGraph.js +1 -1
- package/dist/esm/models/CodeGraphEnvelopeMetadata.d.ts +1 -1
- package/dist/esm/models/CodeGraphEnvelopeMetadata.js +1 -1
- package/dist/esm/models/CodeGraphNode.d.ts +1 -1
- package/dist/esm/models/CodeGraphNode.js +1 -1
- package/dist/esm/models/CodeGraphRelationship.d.ts +1 -1
- package/dist/esm/models/CodeGraphRelationship.js +1 -1
- package/dist/esm/models/CodeGraphStats.d.ts +1 -1
- package/dist/esm/models/CodeGraphStats.js +1 -1
- package/dist/esm/models/CoverageByDomain.d.ts +49 -0
- package/dist/esm/models/CoverageByDomain.js +52 -0
- package/dist/esm/models/CoverageByFile.d.ts +55 -0
- package/dist/esm/models/CoverageByFile.js +56 -0
- package/dist/esm/models/CriticalFile.d.ts +53 -0
- package/dist/esm/models/CriticalFile.js +57 -0
- package/dist/esm/models/CrossDomainDependency.d.ts +43 -0
- package/dist/esm/models/CrossDomainDependency.js +48 -0
- package/dist/esm/models/CycleEdge.d.ts +43 -0
- package/dist/esm/models/CycleEdge.js +48 -0
- package/dist/esm/models/DeadCodeAnalysisMetadata.d.ts +79 -0
- package/dist/esm/models/DeadCodeAnalysisMetadata.js +62 -0
- package/dist/esm/models/DeadCodeAnalysisResponse.d.ts +53 -0
- package/dist/esm/models/DeadCodeAnalysisResponse.js +56 -0
- package/dist/esm/models/DeadCodeAnalysisResponseAsync.d.ts +66 -0
- package/dist/esm/models/DeadCodeAnalysisResponseAsync.js +60 -0
- package/dist/esm/models/DeadCodeCandidate.d.ts +83 -0
- package/dist/esm/models/DeadCodeCandidate.js +80 -0
- package/dist/esm/models/DomainClassAssignment.d.ts +1 -1
- package/dist/esm/models/DomainClassAssignment.js +1 -1
- package/dist/esm/models/DomainClassificationResponse.d.ts +1 -1
- package/dist/esm/models/DomainClassificationResponse.js +1 -1
- package/dist/esm/models/DomainClassificationResponseAsync.d.ts +1 -1
- package/dist/esm/models/DomainClassificationResponseAsync.js +1 -1
- package/dist/esm/models/DomainClassificationResponseGraph.d.ts +1 -1
- package/dist/esm/models/DomainClassificationResponseGraph.js +1 -1
- package/dist/esm/models/DomainFileAssignment.d.ts +1 -1
- package/dist/esm/models/DomainFileAssignment.js +1 -1
- package/dist/esm/models/DomainFunctionAssignment.d.ts +1 -1
- package/dist/esm/models/DomainFunctionAssignment.js +1 -1
- package/dist/esm/models/DomainRelationship.d.ts +1 -1
- package/dist/esm/models/DomainRelationship.js +1 -1
- package/dist/esm/models/DomainSummary.d.ts +1 -1
- package/dist/esm/models/DomainSummary.js +1 -1
- package/dist/esm/models/EntryPoint.d.ts +68 -0
- package/dist/esm/models/EntryPoint.js +68 -0
- package/dist/esm/models/ErrorDetailsInner.d.ts +1 -1
- package/dist/esm/models/ErrorDetailsInner.js +1 -1
- package/dist/esm/models/FunctionDescription.d.ts +1 -1
- package/dist/esm/models/FunctionDescription.js +1 -1
- package/dist/esm/models/ImpactAnalysisMetadata.d.ts +61 -0
- package/dist/esm/models/ImpactAnalysisMetadata.js +56 -0
- package/dist/esm/models/ImpactAnalysisResponse.d.ts +46 -0
- package/dist/esm/models/ImpactAnalysisResponse.js +51 -0
- package/dist/esm/models/ImpactAnalysisResponseAsync.d.ts +66 -0
- package/dist/esm/models/ImpactAnalysisResponseAsync.js +60 -0
- package/dist/esm/models/ImpactGlobalMetrics.d.ts +39 -0
- package/dist/esm/models/ImpactGlobalMetrics.js +42 -0
- package/dist/esm/models/ImpactResult.d.ts +60 -0
- package/dist/esm/models/ImpactResult.js +61 -0
- package/dist/esm/models/ImpactTarget.d.ts +59 -0
- package/dist/esm/models/ImpactTarget.js +57 -0
- package/dist/esm/models/JobStatus.d.ts +1 -1
- package/dist/esm/models/JobStatus.js +1 -1
- package/dist/esm/models/ModelError.d.ts +1 -1
- package/dist/esm/models/ModelError.js +1 -1
- package/dist/esm/models/NearestTestedCaller.d.ts +43 -0
- package/dist/esm/models/NearestTestedCaller.js +48 -0
- package/dist/esm/models/SubdomainSummary.d.ts +1 -1
- package/dist/esm/models/SubdomainSummary.js +1 -1
- package/dist/esm/models/SupermodelArtifact.d.ts +1 -1
- package/dist/esm/models/SupermodelArtifact.js +1 -1
- package/dist/esm/models/SupermodelIR.d.ts +1 -1
- package/dist/esm/models/SupermodelIR.js +1 -1
- package/dist/esm/models/SupermodelIRAsync.d.ts +1 -1
- package/dist/esm/models/SupermodelIRAsync.js +1 -1
- package/dist/esm/models/SupermodelIRGraph.d.ts +1 -1
- package/dist/esm/models/SupermodelIRGraph.js +1 -1
- package/dist/esm/models/SupermodelIRStats.d.ts +1 -1
- package/dist/esm/models/SupermodelIRStats.js +1 -1
- package/dist/esm/models/TestCoverageMapMetadata.d.ts +85 -0
- package/dist/esm/models/TestCoverageMapMetadata.js +72 -0
- package/dist/esm/models/TestCoverageMapResponse.d.ts +67 -0
- package/dist/esm/models/TestCoverageMapResponse.js +64 -0
- package/dist/esm/models/TestCoverageMapResponseAsync.d.ts +66 -0
- package/dist/esm/models/TestCoverageMapResponseAsync.js +60 -0
- package/dist/esm/models/TestFileInfo.d.ts +49 -0
- package/dist/esm/models/TestFileInfo.js +52 -0
- package/dist/esm/models/TestedFunction.d.ts +80 -0
- package/dist/esm/models/TestedFunction.js +76 -0
- package/dist/esm/models/TestedSibling.d.ts +43 -0
- package/dist/esm/models/TestedSibling.js +48 -0
- package/dist/esm/models/UnassignedFunction.d.ts +1 -1
- package/dist/esm/models/UnassignedFunction.js +1 -1
- package/dist/esm/models/UntestedFunction.d.ts +103 -0
- package/dist/esm/models/UntestedFunction.js +88 -0
- package/dist/esm/models/index.d.ts +34 -0
- package/dist/esm/models/index.js +34 -0
- package/dist/esm/runtime.d.ts +1 -1
- package/dist/esm/runtime.js +1 -1
- package/dist/models/AffectedEntryPoint.d.ts +53 -0
- package/dist/models/AffectedEntryPoint.js +64 -0
- package/dist/models/AffectedFile.d.ts +43 -0
- package/dist/models/AffectedFile.js +54 -0
- package/dist/models/AffectedFunction.d.ts +78 -0
- package/dist/models/AffectedFunction.js +80 -0
- package/dist/models/AliveCodeItem.d.ts +68 -0
- package/dist/models/AliveCodeItem.js +75 -0
- package/dist/models/BlastRadius.d.ts +71 -0
- package/dist/models/BlastRadius.js +72 -0
- package/dist/models/CircularDependencyCycle.d.ts +65 -0
- package/dist/models/CircularDependencyCycle.js +70 -0
- package/dist/models/CircularDependencyMetadata.d.ts +61 -0
- package/dist/models/CircularDependencyMetadata.js +62 -0
- package/dist/models/CircularDependencyResponse.d.ts +46 -0
- package/dist/models/CircularDependencyResponse.js +57 -0
- package/dist/models/CircularDependencyResponseAsync.d.ts +66 -0
- package/dist/models/CircularDependencyResponseAsync.js +67 -0
- package/dist/models/CircularDependencySummary.d.ts +55 -0
- package/dist/models/CircularDependencySummary.js +62 -0
- package/dist/models/ClassificationStats.d.ts +1 -1
- package/dist/models/ClassificationStats.js +1 -1
- package/dist/models/CodeGraphEnvelope.d.ts +1 -1
- package/dist/models/CodeGraphEnvelope.js +1 -1
- package/dist/models/CodeGraphEnvelopeAsync.d.ts +1 -1
- package/dist/models/CodeGraphEnvelopeAsync.js +1 -1
- package/dist/models/CodeGraphEnvelopeGraph.d.ts +1 -1
- package/dist/models/CodeGraphEnvelopeGraph.js +1 -1
- package/dist/models/CodeGraphEnvelopeMetadata.d.ts +1 -1
- package/dist/models/CodeGraphEnvelopeMetadata.js +1 -1
- package/dist/models/CodeGraphNode.d.ts +1 -1
- package/dist/models/CodeGraphNode.js +1 -1
- package/dist/models/CodeGraphRelationship.d.ts +1 -1
- package/dist/models/CodeGraphRelationship.js +1 -1
- package/dist/models/CodeGraphStats.d.ts +1 -1
- package/dist/models/CodeGraphStats.js +1 -1
- package/dist/models/CoverageByDomain.d.ts +49 -0
- package/dist/models/CoverageByDomain.js +58 -0
- package/dist/models/CoverageByFile.d.ts +55 -0
- package/dist/models/CoverageByFile.js +62 -0
- package/dist/models/CriticalFile.d.ts +53 -0
- package/dist/models/CriticalFile.js +64 -0
- package/dist/models/CrossDomainDependency.d.ts +43 -0
- package/dist/models/CrossDomainDependency.js +54 -0
- package/dist/models/CycleEdge.d.ts +43 -0
- package/dist/models/CycleEdge.js +54 -0
- package/dist/models/DeadCodeAnalysisMetadata.d.ts +79 -0
- package/dist/models/DeadCodeAnalysisMetadata.js +68 -0
- package/dist/models/DeadCodeAnalysisResponse.d.ts +53 -0
- package/dist/models/DeadCodeAnalysisResponse.js +62 -0
- package/dist/models/DeadCodeAnalysisResponseAsync.d.ts +66 -0
- package/dist/models/DeadCodeAnalysisResponseAsync.js +67 -0
- package/dist/models/DeadCodeCandidate.d.ts +83 -0
- package/dist/models/DeadCodeCandidate.js +87 -0
- package/dist/models/DomainClassAssignment.d.ts +1 -1
- package/dist/models/DomainClassAssignment.js +1 -1
- package/dist/models/DomainClassificationResponse.d.ts +1 -1
- package/dist/models/DomainClassificationResponse.js +1 -1
- package/dist/models/DomainClassificationResponseAsync.d.ts +1 -1
- package/dist/models/DomainClassificationResponseAsync.js +1 -1
- package/dist/models/DomainClassificationResponseGraph.d.ts +1 -1
- package/dist/models/DomainClassificationResponseGraph.js +1 -1
- package/dist/models/DomainFileAssignment.d.ts +1 -1
- package/dist/models/DomainFileAssignment.js +1 -1
- package/dist/models/DomainFunctionAssignment.d.ts +1 -1
- package/dist/models/DomainFunctionAssignment.js +1 -1
- package/dist/models/DomainRelationship.d.ts +1 -1
- package/dist/models/DomainRelationship.js +1 -1
- package/dist/models/DomainSummary.d.ts +1 -1
- package/dist/models/DomainSummary.js +1 -1
- package/dist/models/EntryPoint.d.ts +68 -0
- package/dist/models/EntryPoint.js +75 -0
- package/dist/models/ErrorDetailsInner.d.ts +1 -1
- package/dist/models/ErrorDetailsInner.js +1 -1
- package/dist/models/FunctionDescription.d.ts +1 -1
- package/dist/models/FunctionDescription.js +1 -1
- package/dist/models/ImpactAnalysisMetadata.d.ts +61 -0
- package/dist/models/ImpactAnalysisMetadata.js +62 -0
- package/dist/models/ImpactAnalysisResponse.d.ts +46 -0
- package/dist/models/ImpactAnalysisResponse.js +57 -0
- package/dist/models/ImpactAnalysisResponseAsync.d.ts +66 -0
- package/dist/models/ImpactAnalysisResponseAsync.js +67 -0
- package/dist/models/ImpactGlobalMetrics.d.ts +39 -0
- package/dist/models/ImpactGlobalMetrics.js +48 -0
- package/dist/models/ImpactResult.d.ts +60 -0
- package/dist/models/ImpactResult.js +67 -0
- package/dist/models/ImpactTarget.d.ts +59 -0
- package/dist/models/ImpactTarget.js +64 -0
- package/dist/models/JobStatus.d.ts +1 -1
- package/dist/models/JobStatus.js +1 -1
- package/dist/models/ModelError.d.ts +1 -1
- package/dist/models/ModelError.js +1 -1
- package/dist/models/NearestTestedCaller.d.ts +43 -0
- package/dist/models/NearestTestedCaller.js +54 -0
- package/dist/models/SubdomainSummary.d.ts +1 -1
- package/dist/models/SubdomainSummary.js +1 -1
- package/dist/models/SupermodelArtifact.d.ts +1 -1
- package/dist/models/SupermodelArtifact.js +1 -1
- package/dist/models/SupermodelIR.d.ts +1 -1
- package/dist/models/SupermodelIR.js +1 -1
- package/dist/models/SupermodelIRAsync.d.ts +1 -1
- package/dist/models/SupermodelIRAsync.js +1 -1
- package/dist/models/SupermodelIRGraph.d.ts +1 -1
- package/dist/models/SupermodelIRGraph.js +1 -1
- package/dist/models/SupermodelIRStats.d.ts +1 -1
- package/dist/models/SupermodelIRStats.js +1 -1
- package/dist/models/TestCoverageMapMetadata.d.ts +85 -0
- package/dist/models/TestCoverageMapMetadata.js +78 -0
- package/dist/models/TestCoverageMapResponse.d.ts +67 -0
- package/dist/models/TestCoverageMapResponse.js +70 -0
- package/dist/models/TestCoverageMapResponseAsync.d.ts +66 -0
- package/dist/models/TestCoverageMapResponseAsync.js +67 -0
- package/dist/models/TestFileInfo.d.ts +49 -0
- package/dist/models/TestFileInfo.js +58 -0
- package/dist/models/TestedFunction.d.ts +80 -0
- package/dist/models/TestedFunction.js +83 -0
- package/dist/models/TestedSibling.d.ts +43 -0
- package/dist/models/TestedSibling.js +54 -0
- package/dist/models/UnassignedFunction.d.ts +1 -1
- package/dist/models/UnassignedFunction.js +1 -1
- package/dist/models/UntestedFunction.d.ts +103 -0
- package/dist/models/UntestedFunction.js +95 -0
- package/dist/models/index.d.ts +34 -0
- package/dist/models/index.js +34 -0
- package/dist/runtime.d.ts +1 -1
- package/dist/runtime.js +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Supermodel
|
|
5
5
|
* Code Graphing & Analysis API
|
|
6
6
|
*
|
|
7
|
-
* The version of the OpenAPI document: 0.9.
|
|
7
|
+
* The version of the OpenAPI document: 0.9.4
|
|
8
8
|
*
|
|
9
9
|
*
|
|
10
10
|
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
@@ -21,7 +21,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
21
21
|
});
|
|
22
22
|
};
|
|
23
23
|
import * as runtime from '../runtime';
|
|
24
|
-
import { CodeGraphEnvelopeAsyncFromJSON, DomainClassificationResponseAsyncFromJSON, SupermodelIRAsyncFromJSON, } from '../models/index';
|
|
24
|
+
import { CircularDependencyResponseAsyncFromJSON, CodeGraphEnvelopeAsyncFromJSON, DeadCodeAnalysisResponseAsyncFromJSON, DomainClassificationResponseAsyncFromJSON, ImpactAnalysisResponseAsyncFromJSON, SupermodelIRAsyncFromJSON, TestCoverageMapResponseAsyncFromJSON, } from '../models/index';
|
|
25
25
|
/**
|
|
26
26
|
*
|
|
27
27
|
*/
|
|
@@ -84,6 +84,122 @@ export class DefaultApi extends runtime.BaseAPI {
|
|
|
84
84
|
return yield response.value();
|
|
85
85
|
});
|
|
86
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* Upload a zipped repository snapshot to detect circular dependencies (dependency cycles) at the file level using Tarjan\'s strongly connected components algorithm.
|
|
89
|
+
* Circular dependency detection
|
|
90
|
+
*/
|
|
91
|
+
generateCircularDependencyAnalysisRaw(requestParameters, initOverrides) {
|
|
92
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
93
|
+
if (requestParameters['idempotencyKey'] == null) {
|
|
94
|
+
throw new runtime.RequiredError('idempotencyKey', 'Required parameter "idempotencyKey" was null or undefined when calling generateCircularDependencyAnalysis().');
|
|
95
|
+
}
|
|
96
|
+
if (requestParameters['file'] == null) {
|
|
97
|
+
throw new runtime.RequiredError('file', 'Required parameter "file" was null or undefined when calling generateCircularDependencyAnalysis().');
|
|
98
|
+
}
|
|
99
|
+
const queryParameters = {};
|
|
100
|
+
const headerParameters = {};
|
|
101
|
+
if (requestParameters['idempotencyKey'] != null) {
|
|
102
|
+
headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
|
|
103
|
+
}
|
|
104
|
+
if (this.configuration && this.configuration.apiKey) {
|
|
105
|
+
headerParameters["X-Api-Key"] = yield this.configuration.apiKey("X-Api-Key"); // ApiKeyAuth authentication
|
|
106
|
+
}
|
|
107
|
+
const consumes = [
|
|
108
|
+
{ contentType: 'multipart/form-data' },
|
|
109
|
+
];
|
|
110
|
+
// @ts-ignore: canConsumeForm may be unused
|
|
111
|
+
const canConsumeForm = runtime.canConsumeForm(consumes);
|
|
112
|
+
let formParams;
|
|
113
|
+
let useForm = false;
|
|
114
|
+
// use FormData to transmit files using content-type "multipart/form-data"
|
|
115
|
+
useForm = canConsumeForm;
|
|
116
|
+
if (useForm) {
|
|
117
|
+
formParams = new FormData();
|
|
118
|
+
}
|
|
119
|
+
else {
|
|
120
|
+
formParams = new URLSearchParams();
|
|
121
|
+
}
|
|
122
|
+
if (requestParameters['file'] != null) {
|
|
123
|
+
formParams.append('file', requestParameters['file']);
|
|
124
|
+
}
|
|
125
|
+
const response = yield this.request({
|
|
126
|
+
path: `/v1/analysis/circular-dependencies`,
|
|
127
|
+
method: 'POST',
|
|
128
|
+
headers: headerParameters,
|
|
129
|
+
query: queryParameters,
|
|
130
|
+
body: formParams,
|
|
131
|
+
}, initOverrides);
|
|
132
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => CircularDependencyResponseAsyncFromJSON(jsonValue));
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Upload a zipped repository snapshot to detect circular dependencies (dependency cycles) at the file level using Tarjan\'s strongly connected components algorithm.
|
|
137
|
+
* Circular dependency detection
|
|
138
|
+
*/
|
|
139
|
+
generateCircularDependencyAnalysis(requestParameters, initOverrides) {
|
|
140
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
141
|
+
const response = yield this.generateCircularDependencyAnalysisRaw(requestParameters, initOverrides);
|
|
142
|
+
return yield response.value();
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Upload a zipped repository snapshot to identify dead (unreachable) code candidates by combining parse graph declarations with call graph relationships.
|
|
147
|
+
* Dead code analysis
|
|
148
|
+
*/
|
|
149
|
+
generateDeadCodeAnalysisRaw(requestParameters, initOverrides) {
|
|
150
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
151
|
+
if (requestParameters['idempotencyKey'] == null) {
|
|
152
|
+
throw new runtime.RequiredError('idempotencyKey', 'Required parameter "idempotencyKey" was null or undefined when calling generateDeadCodeAnalysis().');
|
|
153
|
+
}
|
|
154
|
+
if (requestParameters['file'] == null) {
|
|
155
|
+
throw new runtime.RequiredError('file', 'Required parameter "file" was null or undefined when calling generateDeadCodeAnalysis().');
|
|
156
|
+
}
|
|
157
|
+
const queryParameters = {};
|
|
158
|
+
const headerParameters = {};
|
|
159
|
+
if (requestParameters['idempotencyKey'] != null) {
|
|
160
|
+
headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
|
|
161
|
+
}
|
|
162
|
+
if (this.configuration && this.configuration.apiKey) {
|
|
163
|
+
headerParameters["X-Api-Key"] = yield this.configuration.apiKey("X-Api-Key"); // ApiKeyAuth authentication
|
|
164
|
+
}
|
|
165
|
+
const consumes = [
|
|
166
|
+
{ contentType: 'multipart/form-data' },
|
|
167
|
+
];
|
|
168
|
+
// @ts-ignore: canConsumeForm may be unused
|
|
169
|
+
const canConsumeForm = runtime.canConsumeForm(consumes);
|
|
170
|
+
let formParams;
|
|
171
|
+
let useForm = false;
|
|
172
|
+
// use FormData to transmit files using content-type "multipart/form-data"
|
|
173
|
+
useForm = canConsumeForm;
|
|
174
|
+
if (useForm) {
|
|
175
|
+
formParams = new FormData();
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
formParams = new URLSearchParams();
|
|
179
|
+
}
|
|
180
|
+
if (requestParameters['file'] != null) {
|
|
181
|
+
formParams.append('file', requestParameters['file']);
|
|
182
|
+
}
|
|
183
|
+
const response = yield this.request({
|
|
184
|
+
path: `/v1/analysis/dead-code`,
|
|
185
|
+
method: 'POST',
|
|
186
|
+
headers: headerParameters,
|
|
187
|
+
query: queryParameters,
|
|
188
|
+
body: formParams,
|
|
189
|
+
}, initOverrides);
|
|
190
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => DeadCodeAnalysisResponseAsyncFromJSON(jsonValue));
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Upload a zipped repository snapshot to identify dead (unreachable) code candidates by combining parse graph declarations with call graph relationships.
|
|
195
|
+
* Dead code analysis
|
|
196
|
+
*/
|
|
197
|
+
generateDeadCodeAnalysis(requestParameters, initOverrides) {
|
|
198
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
199
|
+
const response = yield this.generateDeadCodeAnalysisRaw(requestParameters, initOverrides);
|
|
200
|
+
return yield response.value();
|
|
201
|
+
});
|
|
202
|
+
}
|
|
87
203
|
/**
|
|
88
204
|
* Upload a zipped repository snapshot to generate the dependency graph.
|
|
89
205
|
* Dependency graph
|
|
@@ -200,6 +316,72 @@ export class DefaultApi extends runtime.BaseAPI {
|
|
|
200
316
|
return yield response.value();
|
|
201
317
|
});
|
|
202
318
|
}
|
|
319
|
+
/**
|
|
320
|
+
* Compute blast radius — what breaks if a given file or function changes. Uses reverse-reachability BFS on call graph and dependency graph, enriched with LLM-powered domain classification to detect cross-domain impact. **Three usage modes:** 1. **With diff** — upload a unified diff (`git diff` output) alongside the repo zip. Changed files are automatically extracted as targets. Best for CI/CD pipelines. 2. **With targets** — specify files or file:function pairs via query parameter. Best for ad-hoc analysis of specific functions. 3. **Neither** — analyzes the entire codebase and returns a global coupling/risk map with the most critical files ranked by dependent count. **CI Integration (GitHub Actions):** ```yaml - name: Impact Analysis run: | git diff origin/main...HEAD > changes.diff git archive --format=zip HEAD -o repo.zip curl -s -X POST \"$SUPERMODEL_API_URL/v1/analysis/impact\" \\ -H \"Idempotency-Key: ${{ github.run_id }}-impact\" \\ -H \"X-Api-Key: ${{ secrets.SUPERMODEL_API_KEY }}\" \\ -F \"file=@repo.zip;type=application/zip\" \\ -F \"diff=@changes.diff;type=text/plain\" \\ -o impact.json ``` **CI Integration (GitLab CI):** ```yaml impact_analysis: script: - git diff origin/main...HEAD > changes.diff - git archive --format=zip HEAD -o repo.zip - >- curl -s -X POST \"$SUPERMODEL_API_URL/v1/analysis/impact\" -H \"Idempotency-Key: $CI_PIPELINE_IID-impact\" -H \"X-Api-Key: $SUPERMODEL_API_KEY\" -F \"file=@repo.zip;type=application/zip\" -F \"diff=@changes.diff;type=text/plain\" -o impact.json ``` **Standalone usage (no CI):** ```bash # Analyze specific targets curl -X POST \'.../v1/analysis/impact?targets=src/services/billing.ts:calculateTotal\' \\ -H \'Idempotency-Key: my-key\' -H \'X-Api-Key: ...\' \\ -F \'file=@repo.zip;type=application/zip\' # Analyze from a diff git diff main > changes.diff && git archive --format=zip HEAD -o repo.zip curl -X POST \'.../v1/analysis/impact\' \\ -H \'Idempotency-Key: my-key\' -H \'X-Api-Key: ...\' \\ -F \'file=@repo.zip;type=application/zip\' \\ -F \'diff=@changes.diff;type=text/plain\' # Global coupling map (no targets, no diff) curl -X POST \'.../v1/analysis/impact\' \\ -H \'Idempotency-Key: my-key\' -H \'X-Api-Key: ...\' \\ -F \'file=@repo.zip;type=application/zip\' ```
|
|
321
|
+
* Impact analysis
|
|
322
|
+
*/
|
|
323
|
+
generateImpactAnalysisRaw(requestParameters, initOverrides) {
|
|
324
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
325
|
+
if (requestParameters['idempotencyKey'] == null) {
|
|
326
|
+
throw new runtime.RequiredError('idempotencyKey', 'Required parameter "idempotencyKey" was null or undefined when calling generateImpactAnalysis().');
|
|
327
|
+
}
|
|
328
|
+
if (requestParameters['file'] == null) {
|
|
329
|
+
throw new runtime.RequiredError('file', 'Required parameter "file" was null or undefined when calling generateImpactAnalysis().');
|
|
330
|
+
}
|
|
331
|
+
const queryParameters = {};
|
|
332
|
+
if (requestParameters['targets'] != null) {
|
|
333
|
+
queryParameters['targets'] = requestParameters['targets'];
|
|
334
|
+
}
|
|
335
|
+
const headerParameters = {};
|
|
336
|
+
if (requestParameters['idempotencyKey'] != null) {
|
|
337
|
+
headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
|
|
338
|
+
}
|
|
339
|
+
if (this.configuration && this.configuration.apiKey) {
|
|
340
|
+
headerParameters["X-Api-Key"] = yield this.configuration.apiKey("X-Api-Key"); // ApiKeyAuth authentication
|
|
341
|
+
}
|
|
342
|
+
const consumes = [
|
|
343
|
+
{ contentType: 'multipart/form-data' },
|
|
344
|
+
];
|
|
345
|
+
// @ts-ignore: canConsumeForm may be unused
|
|
346
|
+
const canConsumeForm = runtime.canConsumeForm(consumes);
|
|
347
|
+
let formParams;
|
|
348
|
+
let useForm = false;
|
|
349
|
+
// use FormData to transmit files using content-type "multipart/form-data"
|
|
350
|
+
useForm = canConsumeForm;
|
|
351
|
+
// use FormData to transmit files using content-type "multipart/form-data"
|
|
352
|
+
useForm = canConsumeForm;
|
|
353
|
+
if (useForm) {
|
|
354
|
+
formParams = new FormData();
|
|
355
|
+
}
|
|
356
|
+
else {
|
|
357
|
+
formParams = new URLSearchParams();
|
|
358
|
+
}
|
|
359
|
+
if (requestParameters['file'] != null) {
|
|
360
|
+
formParams.append('file', requestParameters['file']);
|
|
361
|
+
}
|
|
362
|
+
if (requestParameters['diff'] != null) {
|
|
363
|
+
formParams.append('diff', requestParameters['diff']);
|
|
364
|
+
}
|
|
365
|
+
const response = yield this.request({
|
|
366
|
+
path: `/v1/analysis/impact`,
|
|
367
|
+
method: 'POST',
|
|
368
|
+
headers: headerParameters,
|
|
369
|
+
query: queryParameters,
|
|
370
|
+
body: formParams,
|
|
371
|
+
}, initOverrides);
|
|
372
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => ImpactAnalysisResponseAsyncFromJSON(jsonValue));
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
/**
|
|
376
|
+
* Compute blast radius — what breaks if a given file or function changes. Uses reverse-reachability BFS on call graph and dependency graph, enriched with LLM-powered domain classification to detect cross-domain impact. **Three usage modes:** 1. **With diff** — upload a unified diff (`git diff` output) alongside the repo zip. Changed files are automatically extracted as targets. Best for CI/CD pipelines. 2. **With targets** — specify files or file:function pairs via query parameter. Best for ad-hoc analysis of specific functions. 3. **Neither** — analyzes the entire codebase and returns a global coupling/risk map with the most critical files ranked by dependent count. **CI Integration (GitHub Actions):** ```yaml - name: Impact Analysis run: | git diff origin/main...HEAD > changes.diff git archive --format=zip HEAD -o repo.zip curl -s -X POST \"$SUPERMODEL_API_URL/v1/analysis/impact\" \\ -H \"Idempotency-Key: ${{ github.run_id }}-impact\" \\ -H \"X-Api-Key: ${{ secrets.SUPERMODEL_API_KEY }}\" \\ -F \"file=@repo.zip;type=application/zip\" \\ -F \"diff=@changes.diff;type=text/plain\" \\ -o impact.json ``` **CI Integration (GitLab CI):** ```yaml impact_analysis: script: - git diff origin/main...HEAD > changes.diff - git archive --format=zip HEAD -o repo.zip - >- curl -s -X POST \"$SUPERMODEL_API_URL/v1/analysis/impact\" -H \"Idempotency-Key: $CI_PIPELINE_IID-impact\" -H \"X-Api-Key: $SUPERMODEL_API_KEY\" -F \"file=@repo.zip;type=application/zip\" -F \"diff=@changes.diff;type=text/plain\" -o impact.json ``` **Standalone usage (no CI):** ```bash # Analyze specific targets curl -X POST \'.../v1/analysis/impact?targets=src/services/billing.ts:calculateTotal\' \\ -H \'Idempotency-Key: my-key\' -H \'X-Api-Key: ...\' \\ -F \'file=@repo.zip;type=application/zip\' # Analyze from a diff git diff main > changes.diff && git archive --format=zip HEAD -o repo.zip curl -X POST \'.../v1/analysis/impact\' \\ -H \'Idempotency-Key: my-key\' -H \'X-Api-Key: ...\' \\ -F \'file=@repo.zip;type=application/zip\' \\ -F \'diff=@changes.diff;type=text/plain\' # Global coupling map (no targets, no diff) curl -X POST \'.../v1/analysis/impact\' \\ -H \'Idempotency-Key: my-key\' -H \'X-Api-Key: ...\' \\ -F \'file=@repo.zip;type=application/zip\' ```
|
|
377
|
+
* Impact analysis
|
|
378
|
+
*/
|
|
379
|
+
generateImpactAnalysis(requestParameters, initOverrides) {
|
|
380
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
381
|
+
const response = yield this.generateImpactAnalysisRaw(requestParameters, initOverrides);
|
|
382
|
+
return yield response.value();
|
|
383
|
+
});
|
|
384
|
+
}
|
|
203
385
|
/**
|
|
204
386
|
* Upload a zipped repository snapshot to generate parse tree relationships.
|
|
205
387
|
* Parse graph
|
|
@@ -316,4 +498,62 @@ export class DefaultApi extends runtime.BaseAPI {
|
|
|
316
498
|
return yield response.value();
|
|
317
499
|
});
|
|
318
500
|
}
|
|
501
|
+
/**
|
|
502
|
+
* Upload a zipped repository snapshot to identify functions with zero test coverage by tracing call graph reachability from test files to production code. This is static analysis — no test execution or instrumentation required.
|
|
503
|
+
* Test coverage map
|
|
504
|
+
*/
|
|
505
|
+
generateTestCoverageMapRaw(requestParameters, initOverrides) {
|
|
506
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
507
|
+
if (requestParameters['idempotencyKey'] == null) {
|
|
508
|
+
throw new runtime.RequiredError('idempotencyKey', 'Required parameter "idempotencyKey" was null or undefined when calling generateTestCoverageMap().');
|
|
509
|
+
}
|
|
510
|
+
if (requestParameters['file'] == null) {
|
|
511
|
+
throw new runtime.RequiredError('file', 'Required parameter "file" was null or undefined when calling generateTestCoverageMap().');
|
|
512
|
+
}
|
|
513
|
+
const queryParameters = {};
|
|
514
|
+
const headerParameters = {};
|
|
515
|
+
if (requestParameters['idempotencyKey'] != null) {
|
|
516
|
+
headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
|
|
517
|
+
}
|
|
518
|
+
if (this.configuration && this.configuration.apiKey) {
|
|
519
|
+
headerParameters["X-Api-Key"] = yield this.configuration.apiKey("X-Api-Key"); // ApiKeyAuth authentication
|
|
520
|
+
}
|
|
521
|
+
const consumes = [
|
|
522
|
+
{ contentType: 'multipart/form-data' },
|
|
523
|
+
];
|
|
524
|
+
// @ts-ignore: canConsumeForm may be unused
|
|
525
|
+
const canConsumeForm = runtime.canConsumeForm(consumes);
|
|
526
|
+
let formParams;
|
|
527
|
+
let useForm = false;
|
|
528
|
+
// use FormData to transmit files using content-type "multipart/form-data"
|
|
529
|
+
useForm = canConsumeForm;
|
|
530
|
+
if (useForm) {
|
|
531
|
+
formParams = new FormData();
|
|
532
|
+
}
|
|
533
|
+
else {
|
|
534
|
+
formParams = new URLSearchParams();
|
|
535
|
+
}
|
|
536
|
+
if (requestParameters['file'] != null) {
|
|
537
|
+
formParams.append('file', requestParameters['file']);
|
|
538
|
+
}
|
|
539
|
+
const response = yield this.request({
|
|
540
|
+
path: `/v1/analysis/test-coverage-map`,
|
|
541
|
+
method: 'POST',
|
|
542
|
+
headers: headerParameters,
|
|
543
|
+
query: queryParameters,
|
|
544
|
+
body: formParams,
|
|
545
|
+
}, initOverrides);
|
|
546
|
+
return new runtime.JSONApiResponse(response, (jsonValue) => TestCoverageMapResponseAsyncFromJSON(jsonValue));
|
|
547
|
+
});
|
|
548
|
+
}
|
|
549
|
+
/**
|
|
550
|
+
* Upload a zipped repository snapshot to identify functions with zero test coverage by tracing call graph reachability from test files to production code. This is static analysis — no test execution or instrumentation required.
|
|
551
|
+
* Test coverage map
|
|
552
|
+
*/
|
|
553
|
+
generateTestCoverageMap(requestParameters, initOverrides) {
|
|
554
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
555
|
+
const response = yield this.generateTestCoverageMapRaw(requestParameters, initOverrides);
|
|
556
|
+
return yield response.value();
|
|
557
|
+
});
|
|
558
|
+
}
|
|
319
559
|
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supermodel
|
|
3
|
+
* Code Graphing & Analysis API
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 0.9.4
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* An entry point affected by changes to the target.
|
|
14
|
+
* @export
|
|
15
|
+
* @interface AffectedEntryPoint
|
|
16
|
+
*/
|
|
17
|
+
export interface AffectedEntryPoint {
|
|
18
|
+
/**
|
|
19
|
+
* File path relative to repository root.
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof AffectedEntryPoint
|
|
22
|
+
*/
|
|
23
|
+
file: string;
|
|
24
|
+
/**
|
|
25
|
+
* Name or route of the entry point.
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof AffectedEntryPoint
|
|
28
|
+
*/
|
|
29
|
+
name: string;
|
|
30
|
+
/**
|
|
31
|
+
* Type of entry point.
|
|
32
|
+
* @type {string}
|
|
33
|
+
* @memberof AffectedEntryPoint
|
|
34
|
+
*/
|
|
35
|
+
type: AffectedEntryPointTypeEnum;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* @export
|
|
39
|
+
*/
|
|
40
|
+
export declare const AffectedEntryPointTypeEnum: {
|
|
41
|
+
readonly RouteHandler: "route_handler";
|
|
42
|
+
readonly ModuleExport: "module_export";
|
|
43
|
+
readonly MainFunction: "main_function";
|
|
44
|
+
readonly EventHandler: "event_handler";
|
|
45
|
+
};
|
|
46
|
+
export type AffectedEntryPointTypeEnum = typeof AffectedEntryPointTypeEnum[keyof typeof AffectedEntryPointTypeEnum];
|
|
47
|
+
/**
|
|
48
|
+
* Check if a given object implements the AffectedEntryPoint interface.
|
|
49
|
+
*/
|
|
50
|
+
export declare function instanceOfAffectedEntryPoint(value: object): value is AffectedEntryPoint;
|
|
51
|
+
export declare function AffectedEntryPointFromJSON(json: any): AffectedEntryPoint;
|
|
52
|
+
export declare function AffectedEntryPointFromJSONTyped(json: any, ignoreDiscriminator: boolean): AffectedEntryPoint;
|
|
53
|
+
export declare function AffectedEntryPointToJSON(value?: AffectedEntryPoint | null): any;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Supermodel
|
|
5
|
+
* Code Graphing & Analysis API
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 0.9.4
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* @export
|
|
16
|
+
*/
|
|
17
|
+
export const AffectedEntryPointTypeEnum = {
|
|
18
|
+
RouteHandler: 'route_handler',
|
|
19
|
+
ModuleExport: 'module_export',
|
|
20
|
+
MainFunction: 'main_function',
|
|
21
|
+
EventHandler: 'event_handler'
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Check if a given object implements the AffectedEntryPoint interface.
|
|
25
|
+
*/
|
|
26
|
+
export function instanceOfAffectedEntryPoint(value) {
|
|
27
|
+
if (!('file' in value) || value['file'] === undefined)
|
|
28
|
+
return false;
|
|
29
|
+
if (!('name' in value) || value['name'] === undefined)
|
|
30
|
+
return false;
|
|
31
|
+
if (!('type' in value) || value['type'] === undefined)
|
|
32
|
+
return false;
|
|
33
|
+
return true;
|
|
34
|
+
}
|
|
35
|
+
export function AffectedEntryPointFromJSON(json) {
|
|
36
|
+
return AffectedEntryPointFromJSONTyped(json, false);
|
|
37
|
+
}
|
|
38
|
+
export function AffectedEntryPointFromJSONTyped(json, ignoreDiscriminator) {
|
|
39
|
+
if (json == null) {
|
|
40
|
+
return json;
|
|
41
|
+
}
|
|
42
|
+
return {
|
|
43
|
+
'file': json['file'],
|
|
44
|
+
'name': json['name'],
|
|
45
|
+
'type': json['type'],
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
export function AffectedEntryPointToJSON(value) {
|
|
49
|
+
if (value == null) {
|
|
50
|
+
return value;
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
'file': value['file'],
|
|
54
|
+
'name': value['name'],
|
|
55
|
+
'type': value['type'],
|
|
56
|
+
};
|
|
57
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supermodel
|
|
3
|
+
* Code Graphing & Analysis API
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 0.9.4
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* A file affected by changes to the target.
|
|
14
|
+
* @export
|
|
15
|
+
* @interface AffectedFile
|
|
16
|
+
*/
|
|
17
|
+
export interface AffectedFile {
|
|
18
|
+
/**
|
|
19
|
+
* File path relative to repository root.
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof AffectedFile
|
|
22
|
+
*/
|
|
23
|
+
file: string;
|
|
24
|
+
/**
|
|
25
|
+
* Number of direct dependencies in this file.
|
|
26
|
+
* @type {number}
|
|
27
|
+
* @memberof AffectedFile
|
|
28
|
+
*/
|
|
29
|
+
directDependencies: number;
|
|
30
|
+
/**
|
|
31
|
+
* Number of transitive dependencies in this file.
|
|
32
|
+
* @type {number}
|
|
33
|
+
* @memberof AffectedFile
|
|
34
|
+
*/
|
|
35
|
+
transitiveDependencies: number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Check if a given object implements the AffectedFile interface.
|
|
39
|
+
*/
|
|
40
|
+
export declare function instanceOfAffectedFile(value: object): value is AffectedFile;
|
|
41
|
+
export declare function AffectedFileFromJSON(json: any): AffectedFile;
|
|
42
|
+
export declare function AffectedFileFromJSONTyped(json: any, ignoreDiscriminator: boolean): AffectedFile;
|
|
43
|
+
export declare function AffectedFileToJSON(value?: AffectedFile | null): any;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Supermodel
|
|
5
|
+
* Code Graphing & Analysis API
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 0.9.4
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Check if a given object implements the AffectedFile interface.
|
|
16
|
+
*/
|
|
17
|
+
export function instanceOfAffectedFile(value) {
|
|
18
|
+
if (!('file' in value) || value['file'] === undefined)
|
|
19
|
+
return false;
|
|
20
|
+
if (!('directDependencies' in value) || value['directDependencies'] === undefined)
|
|
21
|
+
return false;
|
|
22
|
+
if (!('transitiveDependencies' in value) || value['transitiveDependencies'] === undefined)
|
|
23
|
+
return false;
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
export function AffectedFileFromJSON(json) {
|
|
27
|
+
return AffectedFileFromJSONTyped(json, false);
|
|
28
|
+
}
|
|
29
|
+
export function AffectedFileFromJSONTyped(json, ignoreDiscriminator) {
|
|
30
|
+
if (json == null) {
|
|
31
|
+
return json;
|
|
32
|
+
}
|
|
33
|
+
return {
|
|
34
|
+
'file': json['file'],
|
|
35
|
+
'directDependencies': json['directDependencies'],
|
|
36
|
+
'transitiveDependencies': json['transitiveDependencies'],
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
export function AffectedFileToJSON(value) {
|
|
40
|
+
if (value == null) {
|
|
41
|
+
return value;
|
|
42
|
+
}
|
|
43
|
+
return {
|
|
44
|
+
'file': value['file'],
|
|
45
|
+
'directDependencies': value['directDependencies'],
|
|
46
|
+
'transitiveDependencies': value['transitiveDependencies'],
|
|
47
|
+
};
|
|
48
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supermodel
|
|
3
|
+
* Code Graphing & Analysis API
|
|
4
|
+
*
|
|
5
|
+
* The version of the OpenAPI document: 0.9.4
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
9
|
+
* https://openapi-generator.tech
|
|
10
|
+
* Do not edit the class manually.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* A function affected by changes to the target.
|
|
14
|
+
* @export
|
|
15
|
+
* @interface AffectedFunction
|
|
16
|
+
*/
|
|
17
|
+
export interface AffectedFunction {
|
|
18
|
+
/**
|
|
19
|
+
* File path relative to repository root.
|
|
20
|
+
* @type {string}
|
|
21
|
+
* @memberof AffectedFunction
|
|
22
|
+
*/
|
|
23
|
+
file: string;
|
|
24
|
+
/**
|
|
25
|
+
* Name of the affected function.
|
|
26
|
+
* @type {string}
|
|
27
|
+
* @memberof AffectedFunction
|
|
28
|
+
*/
|
|
29
|
+
name: string;
|
|
30
|
+
/**
|
|
31
|
+
* Line number of the function declaration.
|
|
32
|
+
* @type {number}
|
|
33
|
+
* @memberof AffectedFunction
|
|
34
|
+
*/
|
|
35
|
+
line?: number;
|
|
36
|
+
/**
|
|
37
|
+
* Type of code element.
|
|
38
|
+
* @type {string}
|
|
39
|
+
* @memberof AffectedFunction
|
|
40
|
+
*/
|
|
41
|
+
type: AffectedFunctionTypeEnum;
|
|
42
|
+
/**
|
|
43
|
+
* Number of hops from the target in the call graph.
|
|
44
|
+
* @type {number}
|
|
45
|
+
* @memberof AffectedFunction
|
|
46
|
+
*/
|
|
47
|
+
distance: number;
|
|
48
|
+
/**
|
|
49
|
+
* Relationship type to the target.
|
|
50
|
+
* @type {string}
|
|
51
|
+
* @memberof AffectedFunction
|
|
52
|
+
*/
|
|
53
|
+
relationship: AffectedFunctionRelationshipEnum;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* @export
|
|
57
|
+
*/
|
|
58
|
+
export declare const AffectedFunctionTypeEnum: {
|
|
59
|
+
readonly Function: "function";
|
|
60
|
+
readonly Method: "method";
|
|
61
|
+
readonly Class: "class";
|
|
62
|
+
};
|
|
63
|
+
export type AffectedFunctionTypeEnum = typeof AffectedFunctionTypeEnum[keyof typeof AffectedFunctionTypeEnum];
|
|
64
|
+
/**
|
|
65
|
+
* @export
|
|
66
|
+
*/
|
|
67
|
+
export declare const AffectedFunctionRelationshipEnum: {
|
|
68
|
+
readonly DirectCaller: "direct_caller";
|
|
69
|
+
readonly TransitiveCaller: "transitive_caller";
|
|
70
|
+
};
|
|
71
|
+
export type AffectedFunctionRelationshipEnum = typeof AffectedFunctionRelationshipEnum[keyof typeof AffectedFunctionRelationshipEnum];
|
|
72
|
+
/**
|
|
73
|
+
* Check if a given object implements the AffectedFunction interface.
|
|
74
|
+
*/
|
|
75
|
+
export declare function instanceOfAffectedFunction(value: object): value is AffectedFunction;
|
|
76
|
+
export declare function AffectedFunctionFromJSON(json: any): AffectedFunction;
|
|
77
|
+
export declare function AffectedFunctionFromJSONTyped(json: any, ignoreDiscriminator: boolean): AffectedFunction;
|
|
78
|
+
export declare function AffectedFunctionToJSON(value?: AffectedFunction | null): any;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* Supermodel
|
|
5
|
+
* Code Graphing & Analysis API
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 0.9.4
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* @export
|
|
16
|
+
*/
|
|
17
|
+
export const AffectedFunctionTypeEnum = {
|
|
18
|
+
Function: 'function',
|
|
19
|
+
Method: 'method',
|
|
20
|
+
Class: 'class'
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* @export
|
|
24
|
+
*/
|
|
25
|
+
export const AffectedFunctionRelationshipEnum = {
|
|
26
|
+
DirectCaller: 'direct_caller',
|
|
27
|
+
TransitiveCaller: 'transitive_caller'
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Check if a given object implements the AffectedFunction interface.
|
|
31
|
+
*/
|
|
32
|
+
export function instanceOfAffectedFunction(value) {
|
|
33
|
+
if (!('file' in value) || value['file'] === undefined)
|
|
34
|
+
return false;
|
|
35
|
+
if (!('name' in value) || value['name'] === undefined)
|
|
36
|
+
return false;
|
|
37
|
+
if (!('type' in value) || value['type'] === undefined)
|
|
38
|
+
return false;
|
|
39
|
+
if (!('distance' in value) || value['distance'] === undefined)
|
|
40
|
+
return false;
|
|
41
|
+
if (!('relationship' in value) || value['relationship'] === undefined)
|
|
42
|
+
return false;
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
export function AffectedFunctionFromJSON(json) {
|
|
46
|
+
return AffectedFunctionFromJSONTyped(json, false);
|
|
47
|
+
}
|
|
48
|
+
export function AffectedFunctionFromJSONTyped(json, ignoreDiscriminator) {
|
|
49
|
+
if (json == null) {
|
|
50
|
+
return json;
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
'file': json['file'],
|
|
54
|
+
'name': json['name'],
|
|
55
|
+
'line': json['line'] == null ? undefined : json['line'],
|
|
56
|
+
'type': json['type'],
|
|
57
|
+
'distance': json['distance'],
|
|
58
|
+
'relationship': json['relationship'],
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
export function AffectedFunctionToJSON(value) {
|
|
62
|
+
if (value == null) {
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
return {
|
|
66
|
+
'file': value['file'],
|
|
67
|
+
'name': value['name'],
|
|
68
|
+
'line': value['line'],
|
|
69
|
+
'type': value['type'],
|
|
70
|
+
'distance': value['distance'],
|
|
71
|
+
'relationship': value['relationship'],
|
|
72
|
+
};
|
|
73
|
+
}
|