UNPKG

@autorest/openapi-to-typespec

Version:

Autorest plugin to scaffold a Typespec definition from an OpenAPI document

40 lines 1.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDefaultValue = exports.transformValue = void 0; const schemas_1 = require("./schemas"); function transformValue(value) { if (typeof value === "string") { return `"${value}"`; } return value; } exports.transformValue = transformValue; function getDefaultValue(type, schema) { if (schema.defaultValue === undefined) { return undefined; } if ((0, schemas_1.isChoiceSchema)(schema) || (0, schemas_1.isSealedChoiceSchema)(schema)) { for (const choice of schema.choices) { if (schema.defaultValue === choice.value.toString()) { return `${type}.\`${choice.language.default.name}\``; } } } else if ((0, schemas_1.isDurationSchema)(schema)) { // TODO: need to add back default value when TypeSpec supports return undefined; } else if ((0, schemas_1.isArraySchema)(schema)) { return `#[${schema.defaultValue .map((v) => { schema.elementType.defaultValue = v; return getDefaultValue(schema.elementType.type, schema.elementType); }) .join(", ")}]`; } else { return transformValue(schema.defaultValue); } } exports.getDefaultValue = getDefaultValue; //# sourceMappingURL=values.js.map