fix: fix TypeScript default export for Monaco/ATA compatibility

tsdown generates "export { X as default }" which doesn't work properly
with Monaco's TypeScript type acquisition. This post-processes the .d.ts
files to use "export default X" instead.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Ruben Fiszel
2026-01-28 15:58:14 +00:00
parent 1914a8bc4d
commit eef945c700

View File

@@ -12,6 +12,18 @@ rm "${script_dirpath}/s3Types.ts"
rm "${script_dirpath}/sqlUtils.ts"
npm install
npx tsdown --format esm --format cjs --dts
# Fix default export for TypeScript/Monaco compatibility
# tsdown generates "export { ..., client_d_exports as default, ... }" which doesn't work properly
# We need to replace it with a proper "export default" statement
for dts in "${script_dirpath}/dist/index.d.ts" "${script_dirpath}/dist/index.d.mts"; do
# Remove "client_d_exports as default, " from the export statement
sed -i 's/client_d_exports as default, //g' "$dts"
# Add proper default export at the end
echo "" >> "$dts"
echo "export default client_d_exports;" >> "$dts"
done
cp "${script_dirpath}/src/client.ts" ${script_dirpath}
cp "${script_dirpath}/src/s3Types.ts" ${script_dirpath}
cp "${script_dirpath}/src/sqlUtils.ts" ${script_dirpath}