Remove unused pagespeed modules

This commit is contained in:
Alex Holliday committed 2024-09-25 11:52:39 +08:00
1 parent 4ed7d426e8
commit f2407ac5fa
3 files changed
-176

No files matched your search

@@ -1,129 +0,0 @@
const PageSpeedService = require("../service/pageSpeedService");
const { successMessages } = require("../utils/messages");
const pageSpeedService = new PageSpeedService();
const SERVICE_NAME = "pagespeedCheckController";
const {
getPageSpeedCheckParamValidation,
createPageSpeedCheckParamValidation,
createPageSpeedCheckBodyValidation,
deletePageSpeedCheckParamValidation,
} = require("../validation/joi");
/**
* Gets all PageSpeedChecks for a monitor
* @async
* @param {Express.Request} req - The request object
* @param {Express.Response} res - The response object
* @param {Function} next - The next middleware function
* @returns {Promise<Express.Response>}
*/
const getPageSpeedChecks = async (req, res, next) => {
try {
// Validate monitorId parameter
await getPageSpeedCheckParamValidation.validateAsync(req.params);
} catch (error) {
error.status = 422;
error.service = SERVICE_NAME;
error.message =
error.details?.[0]?.message || error.message || "Validation Error";
next(error);
return;
}
try {
return res.status(200).json({ msg: "Hit getPageSpeedChecks" });
} catch (error) {
error.service === undefined ? (error.service = SERVICE_NAME) : null;
error.method === undefined ? (error.method = "getPageSpeedChecks") : null;
next(error);
}
};
/**
* Creates a new PageSpeedCheck for a monitor
* @async
* @param {Express.Request} req - The request object
* @param {Express.Response} res - The response object
* @param {Function} next - The next middleware function
* @returns {Promise<Express.Response>}
*/
const createPageSpeedCheck = async (req, res, next) => {
try {
await createPageSpeedCheckParamValidation.validateAsync(req.params);
await createPageSpeedCheckBodyValidation.validateAsync(req.body);
} catch (error) {
error.status = 422;
error.service = SERVICE_NAME;
error.message =
error.details?.[0]?.message || error.message || "Validation Error";
next(error);
return;
}
try {
const { monitorId } = req.params;
const { url } = req.body;
// Run the PageSpeed check
const pageSpeedResults = await pageSpeedService.runPageSpeedCheck(url);
// Extract categories scores
const categories = pageSpeedResults.lighthouseResult?.categories;
if (!categories) {
throw new Error("Categories not found in PageSpeed results");
}
const newPageSpeedCheck = await pageSpeedService.createPageSpeedCheck({
monitorId,
accessibility: (categories.accessibility?.score || 0) * 100,
bestPractices: (categories["best-practices"]?.score || 0) * 100,
seo: (categories.seo?.score || 0) * 100,
performance: (categories.performance?.score || 0) * 100,
});
return res.status(201).json({
msg: successMessages.CREATED,
data: newPageSpeedCheck,
});
} catch (error) {
error.service === undefined ? (error.service = SERVICE_NAME) : null;
error.method === undefined ? (error.method = "createPageSpeedCheck") : null;
next(error);
}
};
/**
* Deletes all PageSpeedChecks for a monitor
* @async
* @param {Express.Request} req - The request object
* @param {Express.Response} res - The response object
* @param {Function} next - The next middleware function
* @returns {Promise<Express.Response>}
*/
const deletePageSpeedCheck = async (req, res, next) => {
try {
// Validate monitorId parameter
await deletePageSpeedCheckParamValidation.validateAsync(req.params);
} catch (error) {
error.status = 422;
error.service = SERVICE_NAME;
error.message =
error.details?.[0]?.message || error.message || "Validation Error";
next(error);
return;
}
try {
return res.status(200).json({ msg: "Hit deletePageSpeedCheck" });
} catch (error) {
error.service === undefined ? (error.service = SERVICE_NAME) : null;
error.method === undefined ? (error.method = "deletePageSpeedCheck") : null;
next(error);
}
};
module.exports = {
getPageSpeedChecks,
createPageSpeedCheck,
deletePageSpeedCheck,
};
-2
View File
@@ -14,7 +14,6 @@ const authRouter = require("./routes/authRoute");
const inviteRouter = require("./routes/inviteRoute");
const monitorRouter = require("./routes/monitorRoute");
const checkRouter = require("./routes/checkRoute");
const pageSpeedCheckRouter = require("./routes/pageSpeedCheckRoute");
const maintenanceWindowRouter = require("./routes/maintenanceWindowRoute");
const { connectDbAndRunServer } = require("./configs/db");
@@ -84,7 +83,6 @@ const startApp = async () => {
app.use("/api/v1/invite", inviteRouter);
app.use("/api/v1/monitors", verifyJWT, monitorRouter);
app.use("/api/v1/checks", verifyJWT, checkRouter);
app.use("/api/v1/pagespeed", verifyJWT, pageSpeedCheckRouter);
app.use("/api/v1/maintenance-window", verifyJWT, maintenanceWindowRouter);
//Temporary route for testing, remove later
app.use("/api/v1/job", queueRouter);
-45
View File
@@ -1,45 +0,0 @@
const router = require("express").Router();
const { verifyOwnership } = require("../middleware/verifyOwnership");
const Monitor = require("../models/Monitor");
const pageSpeedCheckController = require("../controllers/pageSpeedCheckController");
/**
* @route POST /:monitorId
* @description Create a new PageSpeedCheck for a monitor
* @access Private
* @param {string} monitorId - The ID of the monitor
* @middleware verifyOwnership - Ensures the user owns the monitor
*/
router.post(
"/:monitorId",
verifyOwnership(Monitor, "monitorId"),
pageSpeedCheckController.createPageSpeedCheck
);
/**
* @route GET /:monitorId
* @description Get all PageSpeedChecks for a monitor
* @access Private
* @param {string} monitorId - The ID of the monitor
* @middleware verifyOwnership - Ensures the user owns the monitor
*/
router.get(
"/:monitorId",
verifyOwnership(Monitor, "monitorId"),
pageSpeedCheckController.getPageSpeedChecks
);
/**
* @route DELETE /:monitorId
* @description Delete all PageSpeedChecks for a monitor
* @access Private
* @param {string} monitorId - The ID of the monitor
* @middleware verifyOwnership - Ensures the user owns the monitor
*/
router.delete(
"/:monitorId",
verifyOwnership(Monitor, "monitorId"),
pageSpeedCheckController.deletePageSpeedCheck
);
module.exports = router;