Skip to content

Conversation

GrabowskiM
Copy link
Contributor

🎫 Issue IBX-10621

Related PRs:

Description:

For QA:

Documentation:

@GrabowskiM GrabowskiM requested review from a team and Copilot October 9, 2025 12:06
Copy link

@Copilot 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 PR implements a Checkboxes List component as part of IBX-10621, introducing reusable components for handling lists of checkboxes and radio buttons. The implementation creates a new trait to share common functionality between radio button and checkbox list fields, along with corresponding TypeScript components for client-side interaction.

Key changes:

  • Extracted common list field functionality into a reusable ListFieldTrait
  • Added a new Checkbox\ListField component for handling checkbox lists
  • Refactored existing RadioButton\ListField to use the shared trait
  • Created TypeScript components for checkbox list field interactions

Reviewed Changes

Copilot reviewed 13 out of 13 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/lib/Twig/Components/ListFieldTrait.php New trait providing shared functionality for list-based form fields
src/lib/Twig/Components/Checkbox/ListField.php New checkbox list field component implementation
src/lib/Twig/Components/RadioButton/ListField.php Refactored to use the new ListFieldTrait
src/lib/Twig/Components/AbstractField.php Removed generic value property to allow component-specific implementations
src/bundle/Resources/public/ts/components/checkbox/checkboxes_list_field.ts New TypeScript component for checkbox list field interactions
eslint.config.mjs Updated ESLint configuration with syntax fix

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

{
files: ['**/*.ts'],
rules: {
'@typescript-eslint/unbound-method': 'off',
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I've switched it off because it returns false-positive on https://github.com/ibexa/design-system-twig/pull/49/files#diff-914f9d057f37b814c2bb03196746b89ce20143f6ece03374618eb28d2472d225R76
Basically linter for TS is not able to recognize if method was bound in constructor (typescript-eslint/typescript-eslint#636), as it's our common way for binding I think switching it off globally is better than leave it globally and switching it off per usecase

@mikadamczyk mikadamczyk force-pushed the IBX-10621-checkboxes-list branch from f3e4bb4 to 0f6c28a Compare October 14, 2025 13:23
@adamwojs adamwojs requested a review from a team October 15, 2025 15:14
Copy link
Member

@adamwojs adamwojs left a comment

Choose a reason for hiding this comment

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

@GrabowskiM / @dew326 Could you also please involve PHP Team into review process ?

@GrabowskiM GrabowskiM mentioned this pull request Oct 15, 2025
@mikadamczyk mikadamczyk requested a review from a team October 16, 2025 11:32
@mikadamczyk mikadamczyk force-pushed the IBX-10621-checkboxes-list branch from 635895c to 9135ce4 Compare October 16, 2025 11:50
@GrabowskiM GrabowskiM force-pushed the IBX-10621-checkboxes-list branch 2 times, most recently from a4547ec to 83b8615 Compare October 21, 2025 12:58
@GrabowskiM GrabowskiM force-pushed the IBX-10621-checkboxes-list branch from 83b8615 to a75bbb3 Compare October 21, 2025 13:08
@konradoboza konradoboza requested a review from a team October 22, 2025 07:27
@dew326 dew326 merged commit d2fd965 into main Oct 22, 2025
5 checks passed
@dew326 dew326 deleted the IBX-10621-checkboxes-list branch October 22, 2025 08:29
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.

8 participants