Adjusted stepper for shipment tracking
This commit is contained in:
41
frontend/fetch-openapi.js
Normal file
41
frontend/fetch-openapi.js
Normal file
@ -0,0 +1,41 @@
|
||||
// fetch-openapi.js
|
||||
const fs = require('fs');
|
||||
const https = require('https');
|
||||
const { exec } = require('child_process');
|
||||
|
||||
// FastAPI server URL (make sure your server is running locally at this address)
|
||||
const OPENAPI_URL = 'http://127.0.0.1:8000/openapi.json';
|
||||
|
||||
// Path to save the OpenAPI schema file and TypeScript types
|
||||
const SCHEMA_PATH = './src/schema/openapi.json';
|
||||
const TYPES_PATH = './src/types/api-types.ts';
|
||||
|
||||
// Fetch OpenAPI JSON
|
||||
https.get(OPENAPI_URL, (res) => {
|
||||
let data = '';
|
||||
|
||||
res.on('data', chunk => {
|
||||
data += chunk;
|
||||
});
|
||||
|
||||
res.on('end', () => {
|
||||
// Save the fetched OpenAPI JSON to a file
|
||||
fs.writeFileSync(SCHEMA_PATH, data, 'utf8');
|
||||
console.log(`✅ OpenAPI schema saved to ${SCHEMA_PATH}`);
|
||||
|
||||
// Run openapi-typescript to generate TypeScript types
|
||||
exec(`npx openapi-typescript ${SCHEMA_PATH} --output ${TYPES_PATH}`, (error, stdout, stderr) => {
|
||||
if (error) {
|
||||
console.error(`❌ Error generating types: ${error}`);
|
||||
return;
|
||||
}
|
||||
if (stderr) {
|
||||
console.error(`⚠️ stderr: ${stderr}`);
|
||||
return;
|
||||
}
|
||||
console.log(`✅ TypeScript types generated at ${TYPES_PATH}`);
|
||||
});
|
||||
});
|
||||
}).on("error", (err) => {
|
||||
console.error("Error fetching OpenAPI schema: " + err.message);
|
||||
});
|
Reference in New Issue
Block a user