editable.ts 367 B

12345678910111213
  1. import { Compartment, EditorState, TransactionSpec } from '@codemirror/state'
  2. const readOnlyConf = new Compartment()
  3. export const editable = () => {
  4. return [readOnlyConf.of(EditorState.readOnly.of(true))]
  5. }
  6. export const setEditable = (value = true): TransactionSpec => {
  7. return {
  8. effects: [readOnlyConf.reconfigure(EditorState.readOnly.of(!value))],
  9. }
  10. }