update renderer to render cards
bantic opened this issue · comments
Update the dom renderer to render cards as described in bustle/mobiledoc-kit#235. Checklist copied from there:
- Change card shape to object with
type
,name
,render
and optionaledit
properties - Card's
type
is validated by renderer (dom renderer cannot render 'text', e.g.) - Change arguments passed by editor to card's
render
(oredit
) method- single argument object with
env
,options
andpayload
properties
- single argument object with
- Return value of card's
render
(oredit
) method is appended/concatenated by renderer - card can register teardown callback by calling
onTeardown(teardownFn)
Change editor-dom renderer to clear child elements from card element on teardown- Renderer
constructor
signature changes to accept options object with: cards, atoms, cardOptions, unknownCardHandler, editor (for editor-dom) - Renderer
render
instance method acceptsmobiledoc
argument, returnsrendered
object with 2 props:-
result
property (which is a dom node or string, depending) -
teardown
method with no args tears down rendered mobiledoc (removing dom when applicable, calling registered card teardown callbacks when applicable)
-
-
unknownCardHandler
method is called whenever a renderer encounters an unknown card - remove rendered sections from dom on teardown