You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adds JSDoc to checkout component property descriptions whose documentation was moved out of ## Limitations sections in shopify-dev. Pairs with the .mdx cleanup in shopify/world#669910 and the multi-agent plan in shopify/world#660052.
References shopify/issues-learn#1612.
Properties touched (Agent D scope, D.* checkout components)
All edits to packages/ui-extensions/src/surfaces/checkout/components/components-shared.d.ts.
D.2 ClickableChipProps$1.hidden — sync-with-app-state guidance for the removable variant.
D.4 InteractionProps.commandFor — precedence note when both commandFor and href are set (used by the link component).
D.6 BadgeProps$1.icon — icon position is fixed relative to text content.
D.8 ChoiceListProps$1.variant — selected content slot supported in the default (stacked) variant only.
D.8 MultipleInputProps.values — form data captures selected value strings only.
D.9 ConsentCheckboxProps$1.policy — only sms-marketing is supported.
D.10 PhoneFieldProps$1.type — styling hint, doesn't validate phone format (used by consent-phone-field).
D.10 ConsentPhoneFieldProps$1.policy — only sms-marketing is supported.
D.11 DatePickerProps$1.allow — comma-separated list in YYYY-MM-DD (used by date-field via Pick<>).
D.11 DatePickerProps$1.disallow — comma-separated list in YYYY-MM-DD (used by date-field via Pick<>).
D.12 DatePickerProps$1.value — ISO 8601 format (also covers D.11 date-field value via Pick<>).
D.13 EmailFieldProps$1 interface description — doesn't perform automatic format validation.
Notes / deviations from the plan
D.4 commandFor: Per the plan, edited at the base interface (InteractionProps). The note is conditional on href being set, so it's accurate for both link (which has href) and button (vacuously true).
D.11 / D.12 value: Both date-field and date-picker share the value prop via Pick<DatePickerProps$1, "value" | ...>. The D.12 text (which covers ranges) supersedes the D.11 text (single dates only) since it's broader and accurate for both. Added once on DatePickerProps$1.value.
D.13 email-field component-level: EmailFieldProps$1 had no leading description. Added a JSDoc block above the interface declaration.
Style: Removed em dashes from the plan text (replaced with periods or commas) per the agreed style rules. Kept "only" next to what it modifies.
Test plan
CI passes on this PR
Sibling PRs land for 2026-01, 2026-04, 2026-07-rc with byte-identical JSDoc
We are actively migrating UI extension reference docs to MDX in the areas/platforms/shopify-dev zone of the monorepo. This impacts docs for the following surfaces:
During this migration, please be aware of the following:
.doc.ts files are being deprecated. Changes to .doc.ts files in this repo will not be reflected in the new MDX-based docs. If you need to update docs for a reference that has already been migrated, make your changes directly in the areas/platforms/shopify-dev zone of the monorepo instead.
Doc comments in .ts source files (the comment blocks above types and functions) are also affected. Generating docs from these comments currently requires a newer version of the @shopify/generate-docs library that isn't yet available. Updates to doc comments may not produce the expected output until the migration is complete.
Examples that previously lived in this repo are being moved to the areas/platforms/shopify-dev zone of the monorepo and should be authored there going forward.
What should I do?
If your PR includes changes to .doc.ts files, doc comments, or examples, please reach out to us in #devtools-proj-templated-refs so we can help ensure your updates are captured correctly.
If your PR is limited to source code changes (non-docs), you can ignore this notice.
Thanks for your patience while we complete the migration! 🙏
We detected some changes in packages/*/package.json or packages/*/src, and there are no updates in the .changeset directory. If the changes are user-facing and should cause a version bump, run yarn changeset to track your changes and include them in the next release CHANGELOG. If you are making simple updates to repo configuration, examples, or documentation, you do not need to add a changeset.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds JSDoc to checkout component property descriptions whose documentation was moved out of
## Limitationssections in shopify-dev. Pairs with the .mdx cleanup in shopify/world#669910 and the multi-agent plan in shopify/world#660052.References shopify/issues-learn#1612.
Properties touched (Agent D scope, D.* checkout components)
All edits to
packages/ui-extensions/src/surfaces/checkout/components/components-shared.d.ts.ClickableChipProps$1.hidden— sync-with-app-state guidance for theremovablevariant.InteractionProps.commandFor— precedence note when bothcommandForandhrefare set (used by the link component).BadgeProps$1.icon— icon position is fixed relative to text content.CheckboxProps$1.required—requiredadds semantic meaning, doesn't auto-validate.ChoiceListProps$1.variant— selected content slot supported in the default (stacked) variant only.MultipleInputProps.values— form data captures selected value strings only.ConsentCheckboxProps$1.policy— onlysms-marketingis supported.PhoneFieldProps$1.type— styling hint, doesn't validate phone format (used by consent-phone-field).ConsentPhoneFieldProps$1.policy— onlysms-marketingis supported.DatePickerProps$1.allow— comma-separated list inYYYY-MM-DD(used by date-field viaPick<>).DatePickerProps$1.disallow— comma-separated list inYYYY-MM-DD(used by date-field viaPick<>).DatePickerProps$1.value— ISO 8601 format (also covers D.11 date-fieldvalueviaPick<>).EmailFieldProps$1interface description — doesn't perform automatic format validation.Notes / deviations from the plan
commandFor: Per the plan, edited at the base interface (InteractionProps). The note is conditional onhrefbeing set, so it's accurate for both link (which hashref) and button (vacuously true).value: Both date-field and date-picker share thevalueprop viaPick<DatePickerProps$1, "value" | ...>. The D.12 text (which covers ranges) supersedes the D.11 text (single dates only) since it's broader and accurate for both. Added once onDatePickerProps$1.value.EmailFieldProps$1had no leading description. Added a JSDoc block above the interface declaration.Test plan
2026-01,2026-04,2026-07-rcwith byte-identical JSDocGenerated with Claude Code