@microsoft.azure/autorest.incubator
Version:
AutoRest incubator project
113 lines • 3.86 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const components_1 = require("../common/code-model/components");
const common_1 = require("./common");
const components_2 = require("../common/code-model/components");
function getName(defaultValue, original) {
return typeof (original["x-ms-client-name"]) === "string" ? original["x-ms-client-name"] : defaultValue;
}
exports.getName = getName;
function getDescription(defaultValue, original) {
if (original) {
return original.description || original.title || original.summary || defaultValue;
}
return defaultValue;
}
exports.getDescription = getDescription;
function getParameterImplementationLocation(defaultValue, original) {
const xloc = original["x-ms-parameter-location"];
if (typeof (xloc) === "string") {
switch (xloc.toLowerCase()) {
case "method":
return components_2.ImplementationLocation.Method;
case "client":
return components_2.ImplementationLocation.Client;
}
}
return defaultValue;
}
exports.getParameterImplementationLocation = getParameterImplementationLocation;
function getEnumDefinition(original) {
const xmse = original["x-ms-enum"];
if (xmse && original.enum) {
return {
name: xmse.name,
values: xmse.values ?
xmse.values.map((each) => {
return {
description: each.description || '',
name: each.name || `${each.value}`,
value: each.value
};
}) :
original.enum.map(each => {
return {
description: '',
name: each,
value: each
};
}),
modelAsString: xmse.modelAsString ? true : false
};
}
return undefined;
}
exports.getEnumDefinition = getEnumDefinition;
function getKnownFormatType() {
}
exports.getKnownFormatType = getKnownFormatType;
function getDeprecationMessage(original) {
// TODO: extract deprecation message
return undefined;
}
exports.getDeprecationMessage = getDeprecationMessage;
function getConstantValue() {
}
exports.getConstantValue = getConstantValue;
let counter = 1;
function getOperationId(method, path, original) {
if (original.operationId) {
return original.operationId;
}
// synthesize from tags.
if (original.tags && original.tags.length > 0) {
switch (original.tags.length) {
case 0:
break;
case 1:
return `${original.tags[0]}`;
}
return `${original.tags[0]}_${original.tags[2]}`;
}
return `${method}_method${counter}`;
}
exports.getOperationId = getOperationId;
function copyServer(server) {
return new components_1.Server(server.url, {
description: server.description,
extensions: common_1.getExtensionProperties(server),
variables: common_1.clone(server.variables)
});
}
exports.copyServer = copyServer;
function getServers(method, path, model) {
if (method && method.length > 0) {
return method.map(copyServer);
}
if (path && path.length > 0) {
return path.map(copyServer);
}
if (model && model.length > 0) {
return model.map(copyServer);
}
return [];
}
exports.getServers = getServers;
function getExternalDocs(externalDocs) {
return externalDocs && externalDocs.url ? new components_2.ExternalDocumentation(externalDocs.url, {
extensions: common_1.getExtensionProperties(externalDocs),
description: externalDocs.description || ''
}) : undefined;
}
exports.getExternalDocs = getExternalDocs;
//# sourceMappingURL=interpretations.js.map