🛠️ Improve modify-openapi-operationids.js (#720)
This commit is contained in:
@@ -1,29 +1,36 @@
|
||||
import * as fs from "fs";
|
||||
import * as fs from 'fs'
|
||||
|
||||
const filePath = "./openapi.json";
|
||||
async function modifyOpenAPIFile(filePath) {
|
||||
try {
|
||||
const data = await fs.promises.readFile(filePath)
|
||||
const openapiContent = JSON.parse(data)
|
||||
|
||||
fs.readFile(filePath, (err, data) => {
|
||||
const openapiContent = JSON.parse(data);
|
||||
if (err) throw err;
|
||||
|
||||
const paths = openapiContent.paths;
|
||||
|
||||
Object.keys(paths).forEach((pathKey) => {
|
||||
const pathData = paths[pathKey];
|
||||
Object.keys(pathData).forEach((method) => {
|
||||
const operation = pathData[method];
|
||||
if (operation.tags && operation.tags.length > 0) {
|
||||
const tag = operation.tags[0];
|
||||
const operationId = operation.operationId;
|
||||
const toRemove = `${tag}-`;
|
||||
if (operationId.startsWith(toRemove)) {
|
||||
const newOperationId = operationId.substring(toRemove.length);
|
||||
operation.operationId = newOperationId;
|
||||
const paths = openapiContent.paths
|
||||
for (const pathKey of Object.keys(paths)) {
|
||||
const pathData = paths[pathKey]
|
||||
for (const method of Object.keys(pathData)) {
|
||||
const operation = pathData[method]
|
||||
if (operation.tags && operation.tags.length > 0) {
|
||||
const tag = operation.tags[0]
|
||||
const operationId = operation.operationId
|
||||
const toRemove = `${tag}-`
|
||||
if (operationId.startsWith(toRemove)) {
|
||||
const newOperationId = operationId.substring(toRemove.length)
|
||||
operation.operationId = newOperationId
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
fs.writeFile(filePath, JSON.stringify(openapiContent, null, 2), (err) => {
|
||||
if (err) throw err;
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
await fs.promises.writeFile(
|
||||
filePath,
|
||||
JSON.stringify(openapiContent, null, 2),
|
||||
)
|
||||
console.log('File successfully modified')
|
||||
} catch (err) {
|
||||
console.error('Error:', err)
|
||||
}
|
||||
}
|
||||
|
||||
const filePath = './openapi.json'
|
||||
modifyOpenAPIFile(filePath)
|
||||
|
Reference in New Issue
Block a user