@opengis/fastify-table
Version:
core-plugins
23 lines (22 loc) • 1.25 kB
JavaScript
import files from "./controllers/files.js";
import resize from "./controllers/resize.js";
import resizeAll from "./controllers/resizeAll.js";
import upload from "./controllers/upload.js";
import download from "./controllers/download.js";
import exportTable from "./controllers/export.js";
import uploadImage from "./controllers/uploadImage.js";
import deleteFileAPI from "./controllers/delete.js";
import { resizeSchema } from "./schema.js";
function plugin(app, opt = {}) {
app.get("/files/*", { config: { policy: ["public"] } }, files);
if (!app.hasRoute({ method: 'GET', url: '/file/resize', })) {
app.get("/file/resize", { config: { policy: ["public"] }, schema: resizeSchema }, resize);
}
app.get("/api/resize-all", { config: { policy: ["admin", "site"] }, schema: resizeSchema }, resizeAll);
app.post("/file/upload/*", { config: { policy: ["public"] } }, upload);
app.post("/file/upload-image/*", { config: { policy: ["public"] } }, uploadImage);
app.get("/file/download/*", { config: { policy: ["public"] } }, download);
app.get("/file/delete/*", { config: { policy: ["public"] } }, deleteFileAPI);
app.get(`/api/export`, { config: { policy: ["public"] } }, exportTable);
}
export default plugin;