const { build, context } = require("esbuild"); const { solidPlugin } = require("esbuild-plugin-solid"); const path = require("path"); const fs = require("fs"); const { glob } = require("glob"); /** * Compile JSX files */ (async() => { const files = await glob("dist/**/*.jsx"); console.log(files); const ctx = await context({ platform: "node", entryPoints: files, bundle: false, minify: false, logLevel: "info", plugins: [solidPlugin({ solid: { generate: "ssr", hydratable: true, }, })], outdir: "dist", outbase: "dist", format: "cjs", }); await ctx.watch(); console.log("Watching Solid JSX..."); })(); /** * Generate hydration script */ (async () => { const ctx = await context({ platform: "browser", entryPoints: [ "src/views/hydration.ts", ], bundle: true, minify: false, logLevel: "info", plugins: [ solidPlugin({ solid: { generate: "dom", hydratable: true, }, }) ], outdir: "static", format: "cjs", }); await ctx.watch(); console.log("Watching hydration script..."); })(); (async () => { const ctx = await context({ platform: "browser", entryPoints: [ "src/views/hydration/hydration_aulavirtual.ts", ], bundle: true, minify: false, logLevel: "info", plugins: [ solidPlugin({ solid: { generate: "dom", hydratable: true, }, }) ], outdir: "static", format: "cjs", }); await ctx.watch(); console.log("Watching hydration script..."); })();