Files
zipline/tsup.config.ts
dicedtomato ae7b4dacf1 feat: remove next.js in favor of client-side only (#857)
* feat: start removing next.js

* feat: working ssr + dev + prod env

* feat: all functionality added + client/ -> src/client/

* fix: build process

* fix: caching on pnpm action

* fix: ignores + cache action

* fix: docker + exdev error

* fix: generate prisma before types

* fix: remove node@20 from actions

* feat: dynamic import optimizations + titled pages

* fix: removed unused vars

* feat: small ui fixes and improvements

* feat: small ui improvements

* fix: linting error

* fix: regex when adding domains
2025-08-14 12:13:54 -07:00

39 lines
1.1 KiB
TypeScript
Executable File

import glob from 'fast-glob';
import { copyFile, mkdir } from 'fs/promises';
import { replaceTscAliasPaths } from 'tsc-alias';
import { defineConfig } from 'tsup';
export default defineConfig(async (_) => {
return [
{
platform: 'node',
format: 'cjs',
outExtension: () => ({ js: '.js' }),
clean: true,
sourcemap: true,
entry: await glob('./src/**/*.ts', {
ignore: ['./src/components/**/*.ts', './src/client/**/*.(ts|tsx|html)'],
}),
shims: true,
esbuildPlugins: [],
outDir: 'build',
bundle: false,
onSuccess: async () => {
console.log('[ts] replacing ts paths...');
await replaceTscAliasPaths({
configFile: 'tsconfig.json',
outDir: 'build',
});
console.log('[built-ins] copying builtins...');
const builtins = await glob('./src/lib/theme/builtins/*.theme.json');
await mkdir('./build/lib/theme/builtins', { recursive: true });
for (const builtin of builtins) {
await copyFile(builtin, builtin.replace('./src/', './build/'));
}
},
},
];
});