export function parseAPIMetaDescription()

in media/src/utils/parseAPIMetaDescription.ts [72:102]


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);
}