From 9b22edcff3acd9782dd86257b2744c1ae35a455e Mon Sep 17 00:00:00 2001 From: Eduardo San Martin Morote Date: Wed, 15 Oct 2025 10:25:35 +0200 Subject: [PATCH] build: add deprecated vue-router.esm-bundler export Close #2569 --- packages/router/tsdown.config.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/packages/router/tsdown.config.ts b/packages/router/tsdown.config.ts index 99d4ddf9..ba964155 100644 --- a/packages/router/tsdown.config.ts +++ b/packages/router/tsdown.config.ts @@ -1,5 +1,10 @@ import { type Options } from 'tsdown' import pkg from './package.json' with { type: 'json' } +import fs from 'node:fs/promises' +import { dirname, resolve } from 'node:path' +import { fileURLToPath } from 'node:url' + +const __dirname = dirname(fileURLToPath(import.meta.url)) const banner = ` /*! @@ -34,6 +39,17 @@ const commonOptions = { __FEATURE_PROD_DEVTOOLS__: `__VUE_PROD_DEVTOOLS__`, }, dts: false, + // TODO: remove in v5 + async onSuccess() { + // write a stub file for vue-router.esm-bundler.js + await fs.writeFile( + resolve(__dirname, 'dist/vue-router.esm-bundler.js'), + ` +console.warn("[vue-router]: importing from 'vue-router/dist/vue-router.esm-bundler.js' is deprecated. Use 'vue-router' directly.") +export * from './vue-router.mjs' +`.trimStart() + ) + }, } satisfies Options const esm = { -- 2.47.3