Skip to content

Project solar/phase 1/forms controls#3911

Draft
KristinLBradley wants to merge 60 commits into
project-solar/phase-1-main-feature-branchfrom
project-solar/phase-1/forms-controls
Draft

Project solar/phase 1/forms controls#3911
KristinLBradley wants to merge 60 commits into
project-solar/phase-1-main-feature-branchfrom
project-solar/phase-1/forms-controls

Conversation

@KristinLBradley

@KristinLBradley KristinLBradley commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

WIP

TODO: Go through and create new shared tokens as necessary for Carbon themes to replace hard-coded values. (in progress)


📌 Summary

If merged, this PR adds carbonized Form control components to the carbonization branch.

Previews:

🛠️ Detailed description

Related:


👀 Component checklist

💬 Please consider using conventional comments when reviewing this PR.

📋 PCI review checklist
  • If applicable, I've documented a plan to revert these changes if they require more than reverting the pull request.
  • If applicable, I've worked with GRC to document the impact of any changes to security controls.
    Examples of changes to controls include access controls, encryption, logging, etc.
  • If applicable, I've worked with GRC to ensure compliance due to a significant change to the in-scope PCI environment.
    Examples include changes to operating systems, ports, protocols, services, cryptography-related components, PII processing code, etc.

@vercel

vercel Bot commented Jun 5, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
hds-showcase Ready Ready Preview Jul 18, 2026 2:37am
hds-website Ready Ready Preview Jul 18, 2026 2:37am

Request Review

@didoo
didoo changed the base branch from main to project-solar/phase-1-main-feature-branch June 5, 2026 17:13
@didoo
didoo force-pushed the project-solar/phase-1-main-feature-branch branch from b0faa01 to 0f7c918 Compare June 5, 2026 17:17
@didoo
didoo force-pushed the project-solar/phase-1/forms-controls branch from a00c188 to da9e8f6 Compare June 5, 2026 17:25
@hashibot-hds hashibot-hds removed the docs-website Updates to the documentation website label Jun 5, 2026
@KristinLBradley
KristinLBradley force-pushed the project-solar/phase-1/forms-controls branch from da9e8f6 to 3fb02ec Compare June 5, 2026 18:05
@KristinLBradley
KristinLBradley force-pushed the project-solar/phase-1/forms-controls branch from 3fb02ec to 13a1c66 Compare June 5, 2026 20:58
@KristinLBradley
KristinLBradley force-pushed the project-solar/phase-1/forms-controls branch from 13a1c66 to 6810bba Compare June 5, 2026 22:50
@KristinLBradley
KristinLBradley force-pushed the project-solar/phase-1/forms-controls branch from 6810bba to a00b351 Compare June 12, 2026 17:55
@KristinLBradley

This comment was marked as duplicate.

@didoo

This comment was marked as duplicate.

…content examples

Update focus outline offset for Select carbon themes and consolidate content examples
…me styles, fix mis-matched values in generic control color tokens
…ols, add token for textarea vertical padding

@dchyun dchyun left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Sorry for the pile of comments on showcase pages 😅. A lot of them are small and repetitive. A lot of them are related to the two overarching things I saw

  • The examples used for the "field" and "group" controls vary across a lot of the pages. some show some example and some show others. We should align on what examples we're showing. Or maybe are these even needed? Since they are mainly layout related and only showing base elements which have their own carbonization page?
  • In a few pages the disabled/hover state is not shown, and only the default disabled state is shown

Comment thread showcase/app/components/page-carbonization/components/form/text-input/index.gts Outdated
<CodeFragmentWithCharacterCount
@maxLength={{20}}
@value="Lorem ipsum dolor sit amet"
@hasValidation={{true}}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
@hasValidation={{false}}

[Issue?] This example has the label "Label + Helper Text + Character count". It doesn't mention anything about the error state, but the examples have the error state. Can this be set to false?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[Question] Should we show an example for required/optional fields or is that captured enough in the base form elements?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[Question] Are we missing an example here for the indicator?

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.

There's already examples of "required" & "optional" indicators for the Label and Legend, is that what you mean?


<ShwDivider />

<ShwTextH2>“Field” control</ShwTextH2>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[Suggestion] I've made a few comments around examples to include in the "field layout" sections. I don't have strong opinions on what examples to show but maybe we could have some consistency across the different form elements. It seems right now some show some example and some show others. Idk if it's needed to show all of the ones present in the main showcase pages but maybe we can agree on a standard set to show across all the form pages.

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.

Thanks, we can discuss. I think some of the examples may be excessive/redundant so we could possibly stream-line these.

Comment thread showcase/app/components/page-carbonization/components/form/toggle/index.gts Outdated
Comment thread showcase/app/components/page-carbonization/components/form/toggle/index.gts Outdated

<ShwDivider />

<ShwTextH2>“Group” control</ShwTextH2>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

[Suggestion] Should we show a required / optional example?

Refactor and improve styling for TextInput search cancel button
Fix TextInput invalid focus border color style

@jorytindall jorytindall left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@KristinLBradley found a few small things, there's a lot here to go through, so I'm still kind of working on the review. Everything is looking really solid though!

"unit": "px",
"$modes": {
"default": "{border.radius.x-small}",
"cds-g0": "2",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This is tricky, The Figma component uses an icon/SVG as visual representation of the checkbox control (different ones for the different states). I thought this border radius should have be 1px (the icon is kind of between 1px and 2px). However, looking at the component in code, 2px is more logical. Just noting here for the record.

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.

I could add a comment in the JSON. Do you think that would be helpful?

"unit": "px",
"$modes": {
"default": "{typography.body-200.font-size}",
"cds-g0": "{carbon.typography.label01.font-size}",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Is this for the label? The font-size in the showcase is 12px, but from what I'm seeing in the Carbon component should be 14px.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

The vertical alignment of the caret icon here looks slightly off (slightly more space on the bottom), is this something that can be cleaned up?

Image

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.

6 participants