diff --git a/src/svelte.rs b/src/svelte.rs index 1f75367..f33490e 100644 --- a/src/svelte.rs +++ b/src/svelte.rs @@ -6,6 +6,7 @@ struct SvelteExtension { } const PACKAGE_NAME: &str = "svelte-language-server"; +const TYPESCRIPT_PACKAGE_NAME: &str = "typescript"; const TS_PLUGIN_PACKAGE_NAME: &str = "typescript-svelte-plugin"; fn get_package_path(package_name: &str) -> Result { @@ -73,6 +74,8 @@ impl zed::Extension for SvelteExtension { ) -> Result { self.install_package_if_needed(id, PACKAGE_NAME)?; self.install_package_if_needed(id, TS_PLUGIN_PACKAGE_NAME)?; + // Peer dependency of svelte-language-server. Ensures TypeScript is installed and up to date + self.install_package_if_needed(id, TYPESCRIPT_PACKAGE_NAME)?; let path = get_package_path(PACKAGE_NAME)? .join("bin/server.js")