Skip to content

Commit

Permalink
feat: add onPreviewMode props. (#208)
Browse files Browse the repository at this point in the history
  • Loading branch information
jaywcjlove committed Oct 17, 2023
1 parent 78fb724 commit 45a74a6
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 2 deletions.
3 changes: 3 additions & 0 deletions core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,7 @@ const Demo = () => {
- `toolbarsMode?: ICommand[] | string[]` - Tool display settings.
- `onChange?:function(editor: IInstance, data: CodeMirror.EditorChange, value: string)` - called when a change is made
- `onBlur?: function(editor: IInstance, event: Event)` - event occurs when an object loses focus
- `onPreviewMode?: (isHide: boolean) => void` - Edit mode and preview mode switching event
- `previewProps` - [react-markdown options](https://github.com/uiwjs/react-markdown-preview/tree/v2.1.0#options-props)

```ts
Expand Down Expand Up @@ -293,6 +294,8 @@ export interface IMarkdownEditor extends ReactCodeMirrorProps {
previewProps?: MarkdownPreviewProps;
/** replace the default `extensions` */
reExtensions?: ReactCodeMirrorProps['extensions'];
/** Edit mode and preview mode switching event */
onPreviewMode?: (isHide: boolean) => void;
}
```

Expand Down
8 changes: 6 additions & 2 deletions core/src/commands/preview.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,14 @@ const Preview: React.FC<{ command: ICommand; editorProps: IMarkdownEditor & Tool
}
}
}, [visible, containerEditor, preview, previewWidth]);
if (!enablePreview) return;

if (!enablePreview) return;
const handle = () => {
editorProps.onPreviewMode && editorProps.onPreviewMode(!visible);
setVisible(!visible);
};
return (
<button onClick={() => setVisible(!visible)} type="button" className={visible ? 'active' : ''}>
<button onClick={handle} type="button" className={visible ? 'active' : ''}>
{props.command.icon}
</button>
);
Expand Down
3 changes: 3 additions & 0 deletions core/src/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,8 @@ export interface IMarkdownEditor extends ReactCodeMirrorProps {
previewProps?: MarkdownPreviewProps;
/** replace the default `extensions` */
reExtensions?: ReactCodeMirrorProps['extensions'];
/** Edit mode and preview mode switching event */
onPreviewMode?: (isHide: boolean) => void;
}

export interface ToolBarProps {
Expand Down Expand Up @@ -100,6 +102,7 @@ function MarkdownEditorInternal(
extensions = [],
previewWidth = '50%',
reExtensions,
onPreviewMode,
...codemirrorProps
} = props;
const [value, setValue] = useState(props.value || '');
Expand Down

0 comments on commit 45a74a6

Please sign in to comment.