1.1.1Updated a month ago
import { Package } from "../../classes/package.ts";
import { Permission } from "../../modules/permissions.ts";
import { Router } from "../router.ts";

const V1PackageRouter = new Router();

V1PackageRouter.any('*', (request, next) => {
  if(!request.permissions.can(Permission.READ_PACKAGES)) return 403;

  return next();
})

V1PackageRouter.get('/:namespace/:name', async (request) => {
  const path = `${request.params.namespace}/${request.params.name}`;

  const _package = await Package.FindByPath(path);

  if(!_package) return null;

  return _package.Clean();
});

export default V1PackageRouter;