Setting the file. One moment.
Subchapter 8.6
references/advanced-rolldown-options.mdMarkdown2 KBView on GitHub
tsdown uses Rolldown (opens in a new tab) as its core bundling engine. You can override Rolldown’s input and output options directly for fine-grained control.
Warning: You should be familiar with Rolldown’s behavior before overriding options. Refer to the Rolldown Config Options (opens in a new tab) documentation.
export default defineConfig({
inputOptions: {
cwd: './custom-directory',
},
})Dynamically modify options based on the output format:
export default defineConfig({
inputOptions(inputOptions, format) {
inputOptions.cwd = './custom-directory'
return inputOptions
},
})export default defineConfig({
outputOptions: {
legalComments: 'inline',
},
})export default defineConfig({
outputOptions(outputOptions, format) {
if (format === 'esm') {
outputOptions.legalComments = 'inline'
}
return outputOptions
},
})export default defineConfig({
entry: ['src/index.ts'],
outputOptions: {
legalComments: 'inline',
},
})export default defineConfig({
entry: ['src/index.ts'],
inputOptions: {
cwd: './packages/my-lib',
},
})export default defineConfig({
entry: ['src/index.ts'],
format: ['esm', 'cjs'],
outputOptions(outputOptions, format) {
if (format === 'esm') {
outputOptions.legalComments = 'inline'
}
return outputOptions
},
})minify instead of setting it via outputOptions)