microsoft / microsoft/TypeScript
A new generic type can be used for file path completion(intellisense)
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 111k
- Forks
- 14.3k
- Avg merge
- 2d 4h
- Merged PRs (30d)
- 132
Description
🔍 Search Terms
"path intellisense","path completion","asset path completion"
✅ Viability Checklist
- This wouldn't be a breaking change in existing TypeScript/JavaScript code
- This wouldn't change the runtime behavior of existing JavaScript code
- This could be implemented without emitting different JS based on the types of the expressions
- This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
- This isn't a request to add a new utility type: https://github.com/microsoft/TypeScript/wiki/No-New-Utility-Types
- This feature would agree with the rest of our Design Goals: https://github.com/Microsoft/TypeScript/wiki/TypeScript-Design-Goals
⭐ Suggestion
Add a tool generics so that some function parameters can enable file path type hints
some assets in ../assets
function getImageUrl(name:T<"../assets">) {
...
return ...
}
getImageUrl("// intellisense
📃 Motivating Example
Enable custom file path completion through generics
💻 Use Cases
- What do you want to use this for?
When I used vite static resource introduction, I used a function to wrap it, but the function parameters could not achieve type hints like import.
the function like:
function getImageUrl(name:string) { // lost file intellisense
return new URL(`./dir/${name}.png`, import.meta.url).href
}
- What shortcomings exist with current approaches?
Only import statements support path completion and cannot be customized
- What workarounds are you using in the meantime?
i make a vscode extension
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the requested generic type syntax and compare it with the existing path completion available in import statements. Review the Vite asset-wrapper example and the reported VS Code extension workaround; done would mean custom function parameters provide asset path completion without changing emitted JavaScript or runtime behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- developer-experience
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100