Skip to content

Core component form theme to theme editor theme skill.#1831

Open
sakshi-arora1 wants to merge 2 commits intomasterfrom
themeSkill
Open

Core component form theme to theme editor theme skill.#1831
sakshi-arora1 wants to merge 2 commits intomasterfrom
themeSkill

Conversation

@sakshi-arora1
Copy link
Copy Markdown
Contributor

Description

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • I have signed the Adobe Open Source CLA.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes and the overall coverage did not decrease.
  • All unit tests pass on CircleCi.
  • I ran all tests locally and they pass.

Copy link
Copy Markdown
Collaborator

@rismehta rismehta left a comment

Choose a reason for hiding this comment

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

  1. It should support both Claude and Cursor.
  2. Let’s add a README.md that clearly explains the purpose, details, and usage instructions.
  3. I don’t see any tool currently associated with this skill.

@rismehta
Copy link
Copy Markdown
Collaborator

rismehta commented Feb 24, 2026

Good to have

  1. scripts/css_to_theme_xml.pyRoot vs widget ID mapping: In textinput/v1/textinput/_cq_styleConfig/.content.xml, the node with cssSelector=".cmp-adaptiveform-textinput" has id="af2_textboxwidgetandtext"; the node for __widget has id="af2_textinputwidgetandtext". The script maps both .cmp-adaptiveform-textinput and .cmp-adaptiveform-textinput__widget to af2_textinputwidgetandtext. Same pattern for numberinput (repo: af2_numericboxwidgetandtext vs script: af2_numberinputwidgetandtext) and dropdown (repo: af2_dropdownlistwidgetandtext vs script: af2_dropdownwidgetandtext). Either (a) update the script’s SELECTOR_MAP so root selectors use the same IDs as in the repo (e.g. af2_textboxwidgetandtext for .cmp-adaptiveform-textinput), or (b) document in the skill and script that theme.structure output intentionally uses widget IDs for both root and widget for simplicity.
  2. scripts/css_to_theme_xml.pyFile handling: main() uses open(css_path, "r") without handling FileNotFoundError. Consider catching it and exiting with a clear message and non-zero exit code.
  3. scripts/css_to_theme_xml.pyEncoding: Open the CSS file with encoding="utf-8" for consistent behavior across environments; document in docstring if needed.

Nitpick

  • scripts/css_to_theme_xml.py — Default path a.css in main() is brittle; consider requiring the path as an argument or using a clearer default.
  • .cursor/skills/... — Optional: add one or two minimal example CSS snippets in the skill that the script can parse end-to-end for quick validation.

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