Skip to content

Angular 21: merge angular19 into master - #1525

Merged
renemadsen merged 5 commits into
masterfrom
angular19
Oct 19, 2026
Merged

renemadsen merged 5 commits into
masterfrom
angular19

Conversation

@renemadsen

Copy link
Copy Markdown
Member

Summary

Moves this plugin's Angular 21 line (angular19) into master. master has not moved since angular19 was created from it.

  • Standalone components, Vitest specs, and CI that tests against the matching frontend branch, with Corepack enabled for Yarn 4.
  • On angular19 this was reviewed, merged and verified green against the frontend's angular19.
  • The frontend's master is now on Angular 21 as well (Angular 21: merge angular19 into master eform-angular-frontend#8161), so this PR's CI runs against it.

🤖 Generated with Claude Code

renemadsen and others added 5 commits October 18, 2026 08:00
PR CI checks out the frontend (and sibling plugins) at the branch the PR
targets instead of always stable. Corepack is enabled before every yarn
install, since the frontend's angular19 branch pins yarn@4; the Docker
build uses yarn for the frontend build as well. Dead WDIO config copies
are dropped (the frontend no longer has WDIO).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ngular 21

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… editing the next item

The add/copy buttons sit in the item's expansion panel header, so clicking
them also toggles that panel. ng-select 21 keeps a body-appended dropdown
glued to its select on scroll, so a dropdown opened on the next item while
the panel animates follows the select out of view and can't be clicked.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Angular 21: standalone components, Vitest and angular19 CI
Copilot AI balanced review requested due to automatic review settings October 19, 2026 06:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔵 Needs a closer look

The broad Angular migration needs human integration validation, and the retained test-teardown issue remains unresolved.

1 open issue
What changed in this PR

Aligns the Insight Dashboard plugin with the Angular 21 frontend by merging the angular19 line into master.

Changes:

  • Converts components to standalone imports.
  • Migrates specs to Vitest and adds shared testing helpers.
  • Updates element selectors, adds unit-test CI jobs, and enables Corepack.
File Description
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​testing/​common-providers.ts Adds shared test providers.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​testing/​capture-downloads.ts Captures downloads in Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​layouts/​insight-dashboard-pn-layout.component.ts Imports standalone router outlet.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​insight-dashboard-pn.module.ts Imports standalone components.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​helpers/​tsv-export.helper.spec.ts Imports Vitest test functions.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configurations-page/​survey-configurations-page.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configurations-page/​survey-configurations-page.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configurations-page/​survey-configurations-page.component.html Makes action IDs row-specific.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-new/​survey-configuration-new.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-new/​survey-configuration-new.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-edit/​survey-configuration-edit.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-edit/​survey-configuration-edit.component.spec.ts Migrates spec and dialog mocks.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-delete/​survey-configuration-delete.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-delete/​survey-configuration-delete.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-activate/​survey-configuration-status.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​surveys/​survey-configuration-activate/​survey-configuration-status.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​insight-dashboard-settings/​insight-dashboard-settings.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-view/​dashboard-view.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-view/​dashboard-view.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-view/​dashboard-view.component.html Makes block IDs unique.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-raw-data-view/​dashboard-raw-data-view.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-raw-data-view/​dashboard-raw-data-view.component.spec.ts Migrates export tests and mocks.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-interviews-view/​dashboard-interviews-view.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-interviews-view/​dashboard-interviews-view.component.spec.ts Migrates export tests and mocks.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-chart-view/​dashboard-chart-view.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-chart-view/​dashboard-chart-view.component.spec.ts Migrates chart test setup.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-chart-data-view/​dashboard-chart-data-view.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-chart-data-view/​dashboard-chart-data-view.component.spec.ts Migrates export tests and mocks.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-block-view/​dashboard-block-view.component.ts Imports standalone child views.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​view/​dashboard-block-view/​dashboard-block-view.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-item-edit/​dashboard-item-edit.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-item-edit/​dashboard-item-edit.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-interviews-edit/​dashboard-interviews-edit.component.ts Imports standalone grid.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-interviews-edit/​dashboard-interviews-edit.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-edit/​dashboard-edit.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-edit/​dashboard-edit.component.spec.ts Migrates editor test setup.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-edit/​dashboard-edit.component.html Makes item IDs unique.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-edit-header/​dashboard-edit-header.component.ts Adds standalone form dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-edit-header/​dashboard-edit-header.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-delete/​dashboard-delete.component.ts Adds standalone dialog dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-delete/​dashboard-delete.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-copy/​dashboard-copy.component.ts Adds standalone dialog dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-copy/​dashboard-copy.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-chart-edit/​dashboard-chart-edit.component.ts Adds standalone chart dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-chart-edit/​dashboard-chart-edit.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-chart-data-edit/​dashboard-chart-data-edit.component.ts Enables standalone component.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​edit/​dashboard-chart-data-edit/​dashboard-chart-data-edit.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​dashboards-page/​dashboards-page.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​dashboards-page/​dashboards-page.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​dashboards-page/​dashboards-page.component.html Makes action IDs row-specific.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​dashboard-new/​dashboard-new.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​dashboards/​dashboard-new/​dashboard-new.component.spec.ts Migrates spec to Vitest.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​answers/​answer-values-table/​answer-values-table.component.ts Imports standalone grid.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​answers/​answer-page/​answer-page.component.ts Adds standalone dependencies.
eform-client/​src/​app/​plugins/​modules/​insight-dashboard-pn/​components/​answers/​answer-delete-modal/​answer-delete-modal.component.ts Adds standalone dialog dependencies.
eform-client/​playwright/​e2e/​plugins/​insight-dashboard-pn/​InsightDashboard-SurveysConfigs.page.ts Updates action selectors.
eform-client/​playwright/​e2e/​plugins/​insight-dashboard-pn/​InsightDashboard-DashboardView.page.ts Updates block selector.
eform-client/​playwright/​e2e/​plugins/​insight-dashboard-pn/​InsightDashboard-Dashboards.page.ts Updates action selector.
eform-client/​playwright/​e2e/​plugins/​insight-dashboard-pn/​InsightDashboard-DashboardEdit.page.ts Updates selectors and animation waits.
eform-client/​e2e/​Page objects/​InsightDashboard/​InsightDashboard-SurveysConfigs.page.ts Updates legacy action selectors.
eform-client/​e2e/​Page objects/​InsightDashboard/​InsightDashboard-DashboardView.page.ts Updates legacy block selector.
eform-client/​e2e/​Page objects/​InsightDashboard/​InsightDashboard-Dashboards.page.ts Updates legacy action selector.
eform-client/​e2e/​Page objects/​InsightDashboard/​InsightDashboard-DashboardEdit.page.ts Updates legacy item selector.
Dockerfile Enables Corepack before installation.
.github/​workflows/​dotnet-core-pr.yml Matches frontend branch and adds unit tests.
.github/​workflows/​dotnet-core-master.yml Adds unit tests and Corepack setup.

Review effort: Balanced

providers: commonProviders([
{ provide: InsightDashboardPnDashboardsService, useValue: {} },
{ provide: InsightDashboardPnDashboardDictionariesService, useValue: {} },
{ provide: DragulaService, useValue: {} },
@renemadsen
renemadsen merged commit 28b1eed into master Oct 19, 2026
16 checks passed
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.

2 participants