1
0
mirror of https://github.com/ianstormtaylor/slate.git synced 2025-03-06 13:59:47 +01:00

58 lines
954 B
JavaScript
Raw Normal View History

import Plain from 'slate-plain-serializer'
import { Editor } from 'slate-react'
2016-07-17 15:57:27 -07:00
import React from 'react'
/**
* The read-only example.
*
* @type {Component}
*/
class ReadOnly extends React.Component {
/**
* Deserialize the initial editor value.
2016-07-17 15:57:27 -07:00
*
* @type {Object}
*/
state = {
value: Plain.deserialize(
'This is read-only text. You should not be able to edit it, which is useful for scenarios where you want to render via Slate, without giving the user editing permissions.'
),
start removing raw serializer (#1098) * start removing raw serializer * convert first tests to use jsx * simplify jsx tests for raw serializer * allow for options in raw serializer tests * add more preserve option tests * convert plain serializer tests * convert html serialize * start converting html deserialize * add hyperscript util * remove slate-sugar copy-pasted * finish converting html deserialize * convert plugins tests * update rendering tests * convert schemas tests * convert core plugin tests * update hyperscript utl * refactor changes test directory structure * fix changes before migration * add migrated changes test files * remove <x- prefixes from migration * get addMark at-current-range tests passing * get delete at-current-range tests passing * remove old tests * convert deleteForward and deleteBackward * convert insertBlock, insertInline, insertFragment, insertText * convert removeMark, setBlock, setInline, splitBlock, splitInline * add unstaged tests * convert toggleMark, unwrapBlock, unwrapInline, wrapBlock, wrapInline, wrapText * convert call, setData * convert on-selection tests * remove old on-selection tests * convert history tests * convert insertFragmentByKey, insertNodeByKey, insertTextByKey, mergeNodeByKey, moveNodeByKey * convert removeNodeByKey, removeTextByKey, setMarkByKey, setNodeByKey * convert splitDescendantsByKey, splitNodeByKey, unwrapBlockByKey, unwrapInlineByKey, unwrapNodeByKey, wrapBlockByKey * fix tests * port missing at-range tests to at-current-range * remove at-range tests * fix raw serializer tests * fix linter * fix to prefer toJSON as the canonical method name * fix todos * remove internal references to Raw * add deprecation helper to Text.fromJSON * convert examples to not use Raw, and not rely on terse * remove focus-blur example, rename large document example * refactor Raw serialize to deprecate, not remove, terse * deprecate defaultBlockType, toRaw, cleanup serializers
2017-09-10 14:56:03 -07:00
}
2016-07-17 15:57:27 -07:00
/**
* Render the editor.
2016-07-17 15:57:27 -07:00
*
* @return {Component} component
2016-07-17 15:57:27 -07:00
*/
render() {
return (
<Editor
readOnly
placeholder="Enter some text..."
value={this.state.value}
onChange={this.onChange}
/>
)
2016-07-17 15:57:27 -07:00
}
/**
* On change.
2016-07-17 15:57:27 -07:00
*
* @param {Change} change
2016-07-17 15:57:27 -07:00
*/
onChange = ({ value }) => {
this.setState({ value })
2016-07-17 15:57:27 -07:00
}
}
/**
* Export.
*/
export default ReadOnly