Skip to content

feat(select): introduce menu-container slot for better flexibility over menu behavior #272

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

Draft
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

TotomInc
Copy link
Owner

@TotomInc TotomInc commented May 13, 2025

Summary

This PR reimplements the Menu component using JSX for greater flexibility and adds a new menu-container slot to allow wrapping the entire menu content with custom containers.

Major features

  • Converted Menu.vue to Menu.tsx for better composability and JSX support
  • Added a new menu-container slot for advanced customization of the menu wrapper
  • Updated documentation with examples for the new slot
  • Created playground demos showcasing the new functionality

Technical improvements

  • Added Vue JSX plugin for proper TypeScript support
  • Separated CSS into a module file for better organization
  • Fixed slot prop types for taggable-no-options (from option to value)
  • Updated tests to accommodate the new structure

UI/UX improvements

  • Replaced "ExtraOptionProperties" demo with more focused examples:
    • "CustomMenuContainer" to demonstrate the new slot
    • "CustomMenuOption" to show how to customize individual options

Breaking changes

  • The taggable-no-options slot now receives value instead of option as props
  • Any custom styling targeting the Menu component may need adjustments due to the move to CSS modules

Linked issues

TODO

  • Add tests to ensure custom menu container is rendered
  • Fix warn issue with custom computed get/set: Set operation on key "value" failed: target is readonly
  • Add virtual-scroll demo with vue-virtual-scroller
  • Add infinite-scroll demo

Copy link

vercel bot commented May 13, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
vue3-select-component ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 13, 2025 10:37am

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant