Skip to content

docs: panels.displayType, package imports, Angular, rich text editors, CSS frameworks, formBuilder migration - #514

Merged
kevinchappell merged 9 commits into
mainfrom
docs/followups
Sep 28, 2026
Merged

kevinchappell merged 9 commits into
mainfrom
docs/followups

Conversation

@kevinchappell

Copy link
Copy Markdown
Collaborator

What

Docs for the remaining low-priority docs issues. The #485 attribution recipe is kept out of this PR for separate review. Everything is plain Markdown under docs/ for now; it moves to Starlight in #494.

  • controls.panels.displayType (docs/options/controls/README.md): 'slider' | 'tabbed' | 'auto', the 390px rule for auto, and the fact that field edit panels always use auto. Refs request: pallete should haev tabs #151
  • Package entry points (docs/renderer/renderer.md, README): ESM, CommonJS (require('formeo'), from 5.9.1) and UMD globals, with a pinned-version SRI note. Refs Is FormRenderer exported in the npm package? #222
  • Angular (docs/angular-integration.md): replaces the old design note with a standalone Angular 17+ component (editor, preview, onSubmit, cleanup, SSR). Removes the empty docs/angular-integration-example/, and the demo's service snippet now calls editor.load(). The planned declare module 'formeo' note was dropped because types ship since 5.13.0 (see docs/typescript.md). Refs Any Examples of using foremo in Angular?  #184
  • Rich text editors (docs/controls/rich-text-editors.md): a CKEditor 5 control recipe covering CDN licensing, waiting for the global (the renderer doesn't await dependencies), syncing back to the textarea, and renderer elements. Refs How to integrate ckeditor in the fomeo #340
  • CSS frameworks (docs/css-frameworks.md): the rendered markup and its classes, how formeo.min.css interacts with a framework, and className on fields and option groups. Refs How to add additional CSS libraries to Formeo #274
  • Migrating from formBuilder (docs/migrating-from-formbuilder.md): a batch script around formBuilder2Formeo's convertData(). It post-processes the output so fields get attrs.type and Formeo's own control ids, and it was run against sample exports and checked in the renderer and the editor. Refs Example for batch-converting formBuilder2Formeo #204

Testing

  • npm run lint: clean, including the docs link guard
  • npm test: passes

…onent

docs/angular-integration.md was an internal design note ("For your use
case, I recommend...") with no component code, dead Angular UMD CDN URLs
(Angular dropped UMD in v13), and an unverified StackBlitz link. Replace
it with a copy-pasteable Angular 17+ standalone component, verified
against 5.13.0: install/styles setup, a component built with
afterNextRender that creates FormeoEditor/FormeoRenderer only in the
browser, a Preview button that renders editor.formData, cleanup via
editor.destroy()/renderer.destroy(), reading submitted answers via
events.onSubmit, an SSR note, and a note that formeo now ships its own
.d.ts/.d.cts (no declare module needed).

docs/angular-integration-example/ held only a README pointing at demo
internals with no runnable project; delete it and fix the stale
references to it in the demo file and README.

Refs #184
…rvice snippet

editor.render() takes no arguments; loading a saved formData into the
editor is editor.load(formData) (src/lib/js/editor.js). The display-only
TypeScript snippet in the Angular demo's FormeoService.loadForm() was
passing formData to render(), which silently ignores it.

Refs #184
…ation and Angular docs

- css-frameworks.md: correct the editor-built vs. hand-written row/column className claim,
  and rewrite the formeo.min.css section (it does load for rendered forms and does affect
  them) with a real specificity example and two concrete style-it-yourself options.
- rich-text-editors.md: CKEditor 5's CDN ClassicEditor ships without built-in plugins, so
  destructure and pass plugins/toolbar explicitly; switch the TinyMCEControl link to GitHub
  blob; drop the internal renderer.js line citation.
- migrating-from-formbuilder.md: drop internal process notes ("exact script used to produce",
  "scratch unit probe") in favor of describing the verified behaviour; simplify the batch
  script's inline comments; re-ran the script to confirm it still works and matches the doc
  verbatim.
- angular-integration.md: bump the verified version to 5.13.1, stop naming TypeScript types
  docs/typescript.md doesn't document, and label the isPlatformBrowser/onSubmit snippets as
  fragments with where HttpClient is injected and the AfterViewInit interface they need.
- Bump the pinned formeo version in the README CDN note and renderer.md's UMD example to
  5.13.1.

Refs #274
Refs #340
Refs #204
Refs #184
Copilot AI lite review requested due to automatic review settings September 28, 2026 20:48

Copilot AI 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.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@kevinchappell
kevinchappell merged commit c758dc9 into main Sep 28, 2026
2 checks passed
@kevinchappell
kevinchappell deleted the docs/followups branch September 28, 2026 20:55
@kevinchappell

Copy link
Copy Markdown
Collaborator Author

🎉 This PR is included in version 5.13.2 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants