Skip to content

Conversation

@iobuhov
Copy link
Collaborator

@iobuhov iobuhov commented Oct 28, 2025

Pull request type

Dependency changes (any modification to dependencies in package.json)

Refactoring (e.g. file rename, variable rename, etc.)

New feature (non-breaking change which adds functionality)

Breaking change (fix or feature that would cause existing functionality to change)


Description

@iobuhov iobuhov requested a review from a team as a code owner October 28, 2025 20:15
@iobuhov iobuhov force-pushed the wc-3027_dg2_selectall-part-2 branch from e83be09 to 6df26e3 Compare October 29, 2025 09:55
@iobuhov iobuhov changed the base branch from wc-3027_dg2_selectall-part-1 to main October 29, 2025 09:56
@iobuhov iobuhov changed the title [WC-3027] dg2 selectall part 2 [WC-3027] dg2 selectall Oct 29, 2025
Copilot AI review requested due to automatic review settings October 29, 2025 11:26
Copy link
Contributor

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 refactors the widget plugin infrastructure with a significant architectural change from a "reactive controller" pattern to a "setup component" pattern. It introduces dependency injection using the Brandi library and adds "select all pages" functionality to the Data Grid 2 widget.

  • Renamed reactive controller interfaces (ReactiveControllerSetupComponent, ReactiveControllerHostSetupComponentHost, BaseControllerHostSetupHost)
  • Introduced Brandi DI container for the datagrid widget to manage dependencies
  • Added select all pages feature with progress dialog
  • Reorganized internal structure with services, view models, and better separation of concerns
  • Fixed multiple issues including test expectations and component naming

Reviewed Changes

Copilot reviewed 86 out of 89 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
pnpm-lock.yaml Added brandi and brandi-react dependencies for DI
packages/shared/widget-plugin-mobx-kit/ Refactored interfaces: SetupComponent, SetupComponentHost, DerivedPropsGate
packages/shared/widget-plugin-grid/ Added SelectAllService, ProgressService, SelectionCounterViewModel
packages/pluggableWidgets/datagrid-web/ Major refactor using DI container, added select all functionality
packages/pluggableWidgets/gallery-web/ Updated to use renamed interfaces
packages/shared/widget-plugin-filtering/ Updated to use SetupComponent interface
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (2)

packages/shared/widget-plugin-grid/src/view-models/tests/SelectionCounterViewModel.spec.ts:40

  • Test description is misleading. It says 'should return 0 when one item is selected' but the test verifies that single selection always returns 0 (by design). The description should clarify this is expected behavior for single selection mode, e.g., 'should return 0 for single selection even when an item is selected (counter only shows multi-selection)'.
    packages/shared/widget-plugin-grid/src/services/DatasourceService.ts:126
  • This expression has no effect.

}

/**
* This method is a hack to reload selection. To work it requires at leas one object.
Copy link

Copilot AI Oct 29, 2025

Choose a reason for hiding this comment

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

Corrected spelling of 'at leas' to 'at least'.

Copilot uses AI. Check for mistakes.
@iobuhov iobuhov force-pushed the wc-3027_dg2_selectall-part-2 branch from f9850a6 to 87c7f43 Compare October 29, 2025 16:00
@iobuhov iobuhov force-pushed the wc-3027_dg2_selectall-part-2 branch from 19b61e3 to cafaaf9 Compare October 29, 2025 18:08
@iobuhov iobuhov force-pushed the wc-3027_dg2_selectall-part-2 branch from 022693e to 45e15f9 Compare October 29, 2025 18:41
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