From ac3626d743345bf23b96bac0e343b3981ed89ca2 Mon Sep 17 00:00:00 2001 From: Claude Code Date: Thu, 19 Mar 2026 04:35:23 -0700 Subject: [PATCH] =?UTF-8?q?chore(config):=20=F0=9F=94=A7=20Update=20TypeSc?= =?UTF-8?q?ript=20bundling=20config=20for=20optimized=20build=20settings?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- tsup.config.ts | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/tsup.config.ts b/tsup.config.ts index 3bf41e0..b7fbc27 100644 --- a/tsup.config.ts +++ b/tsup.config.ts @@ -1,3 +1,17 @@ import { createLibraryConfig } from '@lilith/configs/tsup/library'; -export default createLibraryConfig(); +// Override to produce a browser-safe bundle. +// NodeDictionaryLoader and DictionaryPersistence import fs/path/fs/promises. +// These are dead code in browser consumers, but esbuild keeps the import +// statements for externalized modules. Use esbuildOptions.alias to redirect +// those imports to an empty browser stub so the dist has no Node.js imports. +export default createLibraryConfig({ + esbuildOptions(options) { + options.alias = { + ...options.alias, + fs: './src/browser-stubs/node-modules.ts', + path: './src/browser-stubs/node-modules.ts', + 'fs/promises': './src/browser-stubs/node-modules.ts', + }; + }, +});