description: parseDescription()

in media/src/utils/parseAPIMetaDescription.ts [63:123]


        description: parseDescription(schema.description, popcode, version),
      };
    }
    return schema;
  });

  return newSchema;
}

export function parseAPIMetaDescription (
  apiMeta: any,
  popcode: string,
  version: string,
) {
  const result = { ...(apiMeta || {}) };
  const mdFields = ['description', 'extraInfo', 'requestParamsDescription', 'responseParamsDescription'];
  mdFields.forEach((field) => {
    if (apiMeta[field]) {
      result[field] = parseDescription(apiMeta[field], popcode, version);
    }
  });

  result.parameters = (apiMeta.parameters || []).map((param) => {
    if (!param?.schema) {
      return param;
    }
    return {
      ...param,
      schema: parseSchemaDescription(param.schema as any as SemixJsonSchema, popcode, version),
    };
  }) as any[];

  const newResponseSchema = parseSchemaDescription(
    apiMeta.responses?.['200']?.schema as any as SemixJsonSchema,
    popcode,
    version,
  );

  return fp.set('responses.200.schema', newResponseSchema, result);
}

export const parseExample = (example: string) => {
  if (!example) {
    return example;
  }
  const replacements = [
    (str: string) => str?.replace(/<props="china">([\s\S]+?)<\/props>/g, isAlibabaCloud ? '' : '$1'),
    (str: string) => str?.replace(/<props="intl">([\s\S]+?)<\/props>/g, isAlibabaCloud ? '$1' : ''),
  ];
  return replacements.reduce((str, replacement) => {
    return replacement(str);
  }, example);
};

export function parseSchemaExample(schema: SemixJsonSchema) {
  if (!schema) {
    return schema;
  }
  const newSchema = SemixJsonSchema.mapSchema(schema as any, (schema) => {
    if (schema.example) {
      return {