Skip to content

chore: automate component page generation from CEM and samples.json - #13984

Open
nnaydenow wants to merge 5 commits into
mainfrom
website-and-jsdoc
Open

chore: automate component page generation from CEM and samples.json#13984
nnaydenow wants to merge 5 commits into
mainfrom
website-and-jsdoc

Conversation

@nnaydenow

Copy link
Copy Markdown
Contributor

Introduce a @ui5subcomponent JSDoc tag and wire it through the CEM pipeline
to drive automatic MDX generation for the documentation website.

CEM / tooling changes:

  • Add @ui5subcomponent JSDoc tag support to the CEM plugin and internal schema, emitting _ui5subcomponents string[] on parent component declarations
  • Annotate all parent components across main, fiori, compat and ai packages with @ui5subcomponent tags for their child elements
  • Normalise all @since tags across the codebase by stripping -rc suffixes

Website generation changes:

  • Add samples.json to each package folder (main, fiori, compat, ai) describing available samples per component (name, title, description, isBasic flag)
  • Exclude samples.json from gitignore while keeping generated content ignored
  • Extract clean step into build-scripts/clean-components.mjs, preserving samples.json across regeneration cycles
  • Rewrite api-reference-generation/components.mjs to generate MDX directly from the CEM: components with _ui5subcomponents get a folder with category.json and subcomponent files; flat components get a single MDX file
  • Automatically apply newComponentBadge sidebar_class_name to any component whose _ui5since version falls within the last 6 minor releases relative to the current package.json version; deprecated components are excluded
  • Fix sample import path depth for subfolder vs flat files
  • Rename mismatched sample .md wrapper files to match their folder names

TODO

  • Fix component pages slug genaration

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