Skip to content

Conversation

@Rel1cx
Copy link
Owner

@Rel1cx Rel1cx commented Sep 6, 2025

What kind of change does this PR introduce?

  • Bugfix
  • Feature
  • Docs
  • Test
  • New Binding issue #___
  • Code style update
  • Refactor
  • Build-related changes
  • Other, please describe:

Does this PR introduce a breaking change?

  • Yes, and the changes were approved in issue #___
  • No

Checklist

  • When resolving issues, they are referenced in the PR's title (e.g fix: remove a typo, closes #___, #___)
  • I have added a convincing reason for adding this feature, if necessary

Other information

@vercel
Copy link

vercel bot commented Sep 6, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
eslint-react Ready Ready Preview Comment Sep 6, 2025 0:36am

@Rel1cx Rel1cx changed the title rework/jsx attribute resolution feat: new jsx element and attribute resolution for dom rules Sep 6, 2025
@Rel1cx Rel1cx requested a review from Copilot September 6, 2025 11:56

This comment was marked as outdated.

Rel1cx and others added 3 commits September 6, 2025 20:00
…arget-blank.spec.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: REL1CX <rel1cx@proton.me>
…element-resolver.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: REL1CX <rel1cx@proton.me>
@Rel1cx Rel1cx requested a review from Copilot September 6, 2025 12:02
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 introduces a new JSX element and attribute resolution system for DOM rules, removing the legacy custom component configuration feature while improving the core attribute resolution functionality.

  • Refactors the JSX attribute resolution system to use a curried function approach for better API design
  • Removes support for custom component configuration (additionalComponents) from settings
  • Introduces new resolveAttributeValue function with improved type safety and static value extraction

Reviewed Changes

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

Show a summary per file
File Description
packages/utilities/ast/src/node-types.ts Adds new type definition for JSX attribute-like nodes
packages/shared/src/settings.ts Removes custom component schema and related functionality
packages/core/src/jsx/jsx-attribute.ts Refactors getAttribute to return a curried function
packages/core/src/jsx/jsx-attribute-value.ts Replaces getAttributeValue with new resolveAttributeValue function
packages/plugins/eslint-plugin-react-dom/src/utils/ Removes custom component utilities and updates element resolver
packages/plugins/eslint-plugin-react-dom/src/rules/ Updates all DOM rules to use new attribute resolution API

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

@Rel1cx Rel1cx marked this pull request as ready for review September 6, 2025 12:29
@Rel1cx Rel1cx merged commit ccd69e1 into 2.0.0 Sep 6, 2025
9 of 10 checks passed
@Rel1cx Rel1cx deleted the rework/jsx-attribute-resolution branch September 6, 2025 12:34
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