Skip to content

Conversation

@silviuaavram
Copy link
Collaborator

@silviuaavram silviuaavram commented Dec 5, 2025

What:

Creates the useTagGroup hook and exports it.

Why:

Better DX for building multi selection combobox and select components. Also useful as a standalone component.

How:

  • Add component.
  • Refactor affected utils from JS to TS.
  • Add unit and cypress tests.
  • Documentation.
  • Migration guide.
  • Update docsite repo.
  • Update downshift examples repo.

Checklist:

  • Documentation
  • Tests
  • TypeScript Types
  • Flow Types
  • Ready to be merged

Copilot AI review requested due to automatic review settings January 15, 2026 17:13
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request introduces a new useTagGroup hook to the Downshift library for building accessible tag group components. The PR includes comprehensive implementation, TypeScript type definitions, testing, documentation, and a major refactoring to convert several utility functions from JavaScript to TypeScript.

Changes:

  • Created new useTagGroup hook with full implementation, types, tests, and documentation
  • Refactored utility functions from JavaScript to TypeScript in src/utils-ts/
  • Updated TypeScript configuration to emit declaration files
  • Added Cypress end-to-end tests and Docusaurus example pages for the new hook

Reviewed changes

Copilot reviewed 118 out of 123 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/hooks/useTagGroup/index.ts Main hook implementation providing tag group functionality
src/hooks/useTagGroup/index.types.ts TypeScript type definitions for the hook API
src/hooks/useTagGroup/reducer.ts State reducer handling tag group actions
src/utils-ts/* Refactored utility functions from JS to TS
typings/index.d.ts Updated type declarations to export useTagGroup types
src/hooks/useTagGroup/tests/* Comprehensive test suite for the new hook
docusaurus/pages/useTagGroup.tsx Documentation example page
cypress/e2e/useTagGroup.cy.js End-to-end tests
tsconfig.json Updated to emit TypeScript declarations
src/hooks/useTagGroup/README.md Detailed documentation for the hook
Comments suppressed due to low confidence (1)

docusaurus/utils.ts:38

  • Corrected typo in variable name from 'tagGroupSyles' to 'tagGroupStyles'. Note: This change should be propagated to all usage sites in docusaurus/pages/useMultipleSelect.js and docusaurus/pages/useMultipleCombobox.js.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 121 out of 126 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 122 out of 127 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@silviuaavram silviuaavram merged commit fea4ac0 into master Jan 30, 2026
3 checks passed
@silviuaavram silviuaavram deleted the feat/use-tag-list branch January 30, 2026 08:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants