Allow internal types to be invoked by JavaScript interop
Open
affected-few
area-blazor
copilot-candidate
enhancement
feature-blazor-jsinterop
Needs: Design
severity-minor
- Dominant language
- C#
- Stars
- 38.4k
- Forks
- 10.9k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 281
Description
We should be able to mark `public` methods on `internal` types as `[JSInvokable]` since most of the lib developer, like myself, don't want to expose internal types to the end user.
I know that there is the idea that `JSInvokable` is inherently `public` and that mislead the idea that the types using it should be as well. I also know that you can hide a member with `EditorBrowseableAttribute(false)`, but that is just an IDE thing and not truly protecting internal APIs from misuse.
So, please consider change the scan logic to also look into `internal` types.
Thanks!
Contributor guide
Assessment
This issue has not been assessed yet.