-
-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: augment vue
rather than @vue/runtime-core
#11
Conversation
WalkthroughThe recent changes streamline the TypeScript module declarations for Vue.js components, improving how components like Changes
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (1)
test/__snapshots__/dts.test.ts.snap
is excluded by!**/*.snap
Files selected for processing (3)
- README.md (1 hunks)
- playground/components.d.ts (1 hunks)
- test/dts.test.ts (4 hunks)
Additional comments not posted (3)
playground/components.d.ts (1)
10-10
: Correct module augmentation for Vue.Changing the module declaration from
'@vue/runtime-core'
to'vue'
aligns with Vue's recommended practices. This change should help maintain type integrity and improve compatibility across different libraries.README.md (1)
Line range hint
10-14
: Ensure correct usage of default exports.Updating the import statements to use the default export for
AButton
andUniCalendar
aligns with best practices for module imports in TypeScript. This change should improve compatibility and resolve potential issues with component rendering.test/dts.test.ts (1)
55-55
: Correct module augmentation for Vue in tests.Changing the module declaration from
'@vue/runtime-core'
to'vue'
in the test files aligns with Vue's recommended practices. This change should help maintain type integrity and improve compatibility across different libraries.Also applies to: 135-135, 158-158, 181-181
Thank you. I Will release it later. |
Description 描述
For a while, in the Vue ecosystem we've been augmenting
@vue/runtime-core
to add custom properties and more tovue
. However, this inadvertently breaks the types for projects that augmentvue
- which is (now?) the officially recommended in the docs way to augment these interfaces (for example, ComponentCustomProperties, GlobalComponents and so on).This means all libraries must update their code (or it will break the types of the libraries that augment
vue
instead).Here's an example of how the augmented types end up broken.
This PR is a small effort to ensure the ecosystem is consistent. For context, you can see that
vue-router
has moved to do this, as well as Nuxt.Linked Issues 关联的 Issues
Additional context 额外上下文
Summary by CodeRabbit
New Features
AButton
component to improve compatibility within the Vue.js environment.'@vue/runtime-core'
to'vue'
across the codebase, enhancing module import management.Bug Fixes
Documentation