All files / src/dev-server spa.ts

90.9% Statements 10/11
57.14% Branches 4/7
100% Functions 2/2
100% Lines 9/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 171x 1x   1x         8x 3x 3x 3x 3x 3x      
import fp from "fastify-plugin";
import { logSpa } from "./logger.js";
 
export default fp(
  async (
    server: any,
    { spa, silent = false }: { spa: boolean | string; silent?: boolean },
  ) => {
    if (!spa) return;
    const fallbackFile = typeof spa === "boolean" ? "index.html" : spa;
    Iif (!silent) logSpa(fallbackFile);
    const spaHandler = async (_: any, reply: any) =>
      reply.sendFile(fallbackFile);
    server.setNotFoundHandler(spaHandler);
  },
);