mirror of
https://github.com/ianstormtaylor/slate.git
synced 2025-02-13 11:44:55 +01:00
* split rendering out of schema * remove default components * first stab at new schema * make default normalizations smarter * revert to forcing defaults to be verbose? * refactor reason constants * split nodes into blocks/inlines * get tests passing * restructure schema tests * add parent test * cleanup * remove defaults from schema * refactor schema rule.nodes validation, update example * embed schema in state objects * fixes * update examples, and fixes * update walkthroughs * update docs * remove old schemas doc page * add more tests * update benchmarks
65 lines
951 B
JavaScript
65 lines
951 B
JavaScript
/** @jsx h */
|
|
|
|
import React from 'react'
|
|
import h from '../../helpers/h'
|
|
|
|
function Code(props) {
|
|
return (
|
|
React.createElement('pre', props.attributes,
|
|
React.createElement('code', {}, props.children)
|
|
)
|
|
)
|
|
}
|
|
|
|
function renderNode(props) {
|
|
switch (props.node.type) {
|
|
case 'code': return Code(props)
|
|
}
|
|
}
|
|
|
|
export const props = {
|
|
renderNode,
|
|
}
|
|
|
|
export const state = (
|
|
<state>
|
|
<document>
|
|
<code>
|
|
word
|
|
</code>
|
|
<code>
|
|
word
|
|
</code>
|
|
<code>
|
|
word
|
|
</code>
|
|
</document>
|
|
</state>
|
|
)
|
|
|
|
export const output = `
|
|
<div data-slate-editor="true" contenteditable="true" role="textbox">
|
|
<pre>
|
|
<code>
|
|
<span>
|
|
<span>word</span>
|
|
</span>
|
|
</code>
|
|
</pre>
|
|
<pre>
|
|
<code>
|
|
<span>
|
|
<span>word</span>
|
|
</span>
|
|
</code>
|
|
</pre>
|
|
<pre>
|
|
<code>
|
|
<span>
|
|
<span>word</span>
|
|
</span>
|
|
</code>
|
|
</pre>
|
|
</div>
|
|
`.trim()
|