Skip to content

feat(aria/combobox): migrate simple-combobox directly into primary entrypoints#33206

Open
tjshiu wants to merge 4 commits intoangular:mainfrom
tjshiu:deprecate
Open

feat(aria/combobox): migrate simple-combobox directly into primary entrypoints#33206
tjshiu wants to merge 4 commits intoangular:mainfrom
tjshiu:deprecate

Conversation

@tjshiu
Copy link
Copy Markdown
Contributor

@tjshiu tjshiu commented May 5, 2026

Migrate the public src/aria/simple-combobox entrypoint to src/aria/combobox and the private implementation patterns to src/aria/private/combobox to complete the standalone widget migration.

  • Remove the simple- prefix from all public/private component files, classes, selectors, and uppercase injection tokens.
  • Add full parity for documentation generation via the json_api Bazel rule extraction target.
  • Standardize the accompanying toolbar component example showcase into a clean, unified aria-toolbar entrypoint.
  • Bulk update dev-app preview demo routes, sidebar layouts, and public API golden records.

@tjshiu tjshiu added target: major This PR is targeted for the next major release detected: breaking change PR contains a commit with a breaking change area: aria/listbox area: aria/tree dev-app preview When applied, previews of the dev-app are deployed to Firebase labels May 5, 2026
@tjshiu tjshiu marked this pull request as ready for review May 5, 2026 19:01
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 5, 2026

Deployed dev-app for 2367284 to: https://ng-dev-previews-comp--pr-angular-components-33206-dev-fropu17d.web.app

Note: As new commits are pushed to this pull request, this link is updated after the preview is rebuilt.

@tjshiu tjshiu added the action: merge The PR is ready for merge by the caretaker label May 5, 2026
@@ -1,4 +1,4 @@
## API Report File for "@angular/aria_combobox"
## API Report File for "@angular/aria_deprecated_combobox"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Given that Aria isn't stable yet, we can delete this code rather than going through a deprecation process.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We plan to migrate the internal usages later so we need a temporary place for the old combobox. It also provides a fallback if the migrations cause regression.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

In that case maybe we should delete it externally and only leave it inside g3? The problem is that once we stabilize Aria, it'll take much longer to remove this code.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

okay - I removed the old combobox and replaced it with the new combobox. Thanks @crisbeto for the tips!

tjshiu added 3 commits May 5, 2026 15:19
…points

Relocate the public `src/aria/combobox` entrypoint to `src/aria/deprecated/combobox` and the private implementation patterns to `src/aria/private/deprecated/combobox`. This frees up the primary `combobox` namespace for the upcoming standalone combobox widget migration.

- Add JSDoc `@deprecated` and `@breaking-change 22.0.0` markers to legacy classes and primitives.
- Adjust relative imports outwards to accommodate the deeper directory nesting levels.
- Re-wire build dependencies and entrypoint configurations across the framework package graph.
- Bulk update consumer example module targets and prune unused dependencies.
…ementations

Deletes the deprecated legacy combobox and autocomplete codebases, including their core entrypoints, integration layers within listbox and tree components, examples, dev-app pages, and associated API goldens.
…mbobox

- Relocates public, private, and example directories to clean `combobox` entry points.
- Renames internal layout symbols, selectors, and uppercase tokens (`SIMPLE_COMBOBOX_POPUP` -> `COMBOBOX_POPUP`).
- Establishes full documentation extraction parity with the `json_api` Bazel rule target.
- Standardizes the accompanying toolbar component showcase into the clean `aria-toolbar` path.
- Re-routes dev-app navigation links and migrates public API golden records.
@angular-robot angular-robot Bot added the detected: feature PR contains a feature commit label May 5, 2026
@tjshiu tjshiu changed the title refactor(aria/combobox): deprecate and relocate legacy combobox entrypoints feat(aria/combobox): migrate simple-combobox directly into primary entrypoints May 5, 2026
…olbar examples

Relocate the autocomplete examples to `src/components-examples/aria/autocomplete` and toolbar examples to `src/components-examples/aria/toolbar`.
- Restore naming continuity with the historical codebase by stripping redundant prefixes from example filenames and component selectors.
- Sync dev-app preview routing layout paths and strict Bazel target dependency links.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

action: merge The PR is ready for merge by the caretaker area: aria/combobox area: aria/listbox area: aria/tree detected: breaking change PR contains a commit with a breaking change detected: feature PR contains a feature commit dev-app preview When applied, previews of the dev-app are deployed to Firebase target: major This PR is targeted for the next major release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants