changemaker.lite/api/dist/modules/influence/campaigns/campaigns-public.routes.js

29 lines
1000 B
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.campaignPublicRouter = void 0;
const express_1 = require("express");
const campaigns_service_1 = require("./campaigns.service");
const router = (0, express_1.Router)();
exports.campaignPublicRouter = router;
// GET /api/campaigns/public — list all active campaigns (public)
router.get('/public', async (_req, res, next) => {
try {
const campaigns = await campaigns_service_1.campaignsService.findActiveCampaigns();
res.json(campaigns);
}
catch (err) {
next(err);
}
});
// GET /api/campaigns/:slug/details — public campaign data (ACTIVE only)
router.get('/:slug/details', async (req, res, next) => {
try {
const slug = req.params.slug;
const campaign = await campaigns_service_1.campaignsService.findBySlugPublic(slug);
res.json(campaign);
}
catch (err) {
next(err);
}
});
//# sourceMappingURL=campaigns-public.routes.js.map