Composition / foldkit-builder

As a form key

PageBuilder.input is an Input.bundle control:

  • the key's value is the Document, so the key's schema validates it, such as Composition.Document.check(Composition.valid(Site)), and the form submits it;
  • a Message that changes the Document is an edit, and one that does not, such as a selection, is not, so a CMS autosaves only real changes;
  • filling the key with a stored page replaces the Document and starts undo over, and a stored form shown again is settled: no hover, no undo, no refusal.

PageBuilder.inputWith(view) is the same control drawn by another view, with whatever inputs that view takes, given through the form view's controls.

Placed alone, with Bundle.withChild, the same Bundle is a page editor whose parent owns the Model.