diff --git a/lib/index.js b/lib/index.js index 7cf8dce..b2c8540 100644 --- a/lib/index.js +++ b/lib/index.js @@ -27,7 +27,8 @@ class ComposerMiddleware { // Extract bearer token from Authorization header const authHeader = req.headers.authorization; if (!authHeader || !authHeader.startsWith('Bearer ')) { - return res.status(401).json({ error: 'Unauthorized' }); + // return res.status(401).json({ error: 'Unauthorized' }); + return res.json({ packages: {} }); } const token = authHeader.slice(7); // Authenticate with the API using the bearer token @@ -38,11 +39,13 @@ class ComposerMiddleware { catch (authError) { if (axios_1.default.isAxiosError(authError) && authError.response) { this.logger.error({ error: authError.response.data }, 'Authentication failed: @{error}'); - return res.status(authError.response.status ?? 401).json(authError.response.data); + // return res.status(authError.response.status ?? 401).json(authError.response.data); + return res.json({ packages: {} }); } else if (authError instanceof Error) { this.logger.error({ error: authError.message }, 'Authentication failed: @{error}'); - return res.status(500).json({ error: 'Internal Server Error' }); + // return res.status(500).json({ error: 'Internal Server Error' }); + return res.json({ packages: {} }); } } // Extract the list of unauthorized packages from the API response @@ -52,7 +55,8 @@ class ComposerMiddleware { // Ensure allPackages.packages is an object if (typeof allPackages.packages !== 'object') { this.logger.error({ error: 'Invalid package format' }, 'Error fetching composer.json files'); - return res.status(500).send('Internal Server Error'); + // return res.status(500).send('Internal Server Error'); + return res.json({ packages: {} }); } // Filter out unauthorized packages const filteredPackages = Object.keys(allPackages.packages) diff --git a/package-lock.json b/package-lock.json index 3b0e554..7747559 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@fleetbase/verdaccio-composer-middleware", - "version": "0.0.4", + "version": "0.0.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@fleetbase/verdaccio-composer-middleware", - "version": "0.0.4", + "version": "0.0.5", "license": "AGPL-3.0-or-later", "dependencies": { "@fleetbase/verdaccio-fleetbase-s3-storage": "0.0.2", diff --git a/package.json b/package.json index a5de364..792b0a3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@fleetbase/verdaccio-composer-middleware", - "version": "0.0.4", + "version": "0.0.5", "description": "Middleware to handle composer dependency request.", "keywords": [ "verdaccio", diff --git a/src/index.ts b/src/index.ts index ce5fbbb..1a54c4f 100644 --- a/src/index.ts +++ b/src/index.ts @@ -29,7 +29,8 @@ export default class ComposerMiddleware implements IPluginMiddleware