UNPKG

@alova/wormhole

Version:

More modern openAPI generating solution for alova.js

41 lines (40 loc) 1.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.defaultValueLoader = exports.DefaultValueLoader = void 0; const utils_1 = require("../../../utils"); const helper_1 = require("./helper"); class DefaultValueLoader { constructor() { this.name = 'defaultValueLoader'; } transform(input, options) { if (options?.format) { return (0, helper_1.generateDefaultValuesFormat)(input); } return Promise.resolve((0, helper_1.generateDefaultValues)(input)); } async transformApi(api) { const configStrArr = []; if (api.pathParametersComment) { configStrArr.push(`pathParams: ${await this.transform(api.pathParametersComment.replace(/\*/g, ''))}`); } if (api.queryParametersComment) { configStrArr.push(`params: ${await this.transform(api.queryParametersComment.replace(/\*/g, ''))}`); } if (api.requestComment) { configStrArr.push(`data: ${await this.transform(api.requestComment.replace(/\*/g, ''))}`); } return (0, utils_1.format)(`${api.global}.${api.pathKey}({${configStrArr.join(',\n')}})`, { printWidth: 40, // Shorten print width to force line breaks tabWidth: 2, semi: false, // Remove the trailing semicolon useTabs: false, trailingComma: 'none', endOfLine: 'lf', bracketSpacing: true, arrowParens: 'always', }); } } exports.DefaultValueLoader = DefaultValueLoader; exports.defaultValueLoader = new DefaultValueLoader();