Skip to content

Commit 4564256

Browse files
saxumcordisViktor Fedoseev
andauthored
feat: support YfmLangOptions drilling to markup editor (#303)
* feat: add YfmLangOptions prop to markup editor --------- Co-authored-by: Viktor Fedoseev <[email protected]>
1 parent 48803eb commit 4564256

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

src/bundle/Editor.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import {ReactRenderStorage, RenderStorage} from '../extensions';
1010
import {i18n} from '../i18n/bundle';
1111
import {logger} from '../logger';
1212
import {createCodemirror} from '../markup/codemirror';
13+
import type {YfmLangOptions} from '../markup/codemirror/yfm';
1314
import {CodeEditor, Editor as MarkupEditor} from '../markup/editor';
1415
import {Emitter, Receiver, SafeEventEmitter} from '../utils/event-emitter';
1516
import type {FileUploadHandler} from '../utils/upload';
@@ -137,6 +138,7 @@ export type EditorOptions = Pick<
137138
renderPreview?: RenderPreview;
138139
preset: EditorPreset;
139140
extraMarkupExtensions?: CodemirrorExtension[];
141+
yfmLangOptions?: YfmLangOptions;
140142
};
141143

142144
/** @internal */
@@ -150,6 +152,7 @@ export class EditorImpl extends SafeEventEmitter<EventMapInt> implements EditorI
150152
#wysiwygEditor?: WysiwygEditor;
151153
#markupEditor?: MarkupEditor;
152154
#extraMarkupExtensions?: CodemirrorExtension[];
155+
#yfmLangOptions?: YfmLangOptions;
153156

154157
readonly #preset: EditorPreset;
155158
#allowHTML?: boolean;
@@ -273,6 +276,7 @@ export class EditorImpl extends SafeEventEmitter<EventMapInt> implements EditorI
273276
uploadHandler: this.fileUploadHandler,
274277
needImgDimms: this.needToSetDimensionsForUploadedImages,
275278
extraMarkupExtensions: this.#extraMarkupExtensions,
279+
yfmLangOptions: this.#yfmLangOptions,
276280
receiver: this,
277281
}),
278282
);
@@ -308,6 +312,7 @@ export class EditorImpl extends SafeEventEmitter<EventMapInt> implements EditorI
308312
this.#allowHTML = opts.allowHTML;
309313
this.#extensions = opts.extensions;
310314
this.#extraMarkupExtensions = opts.extraMarkupExtensions;
315+
this.#yfmLangOptions = opts.yfmLangOptions;
311316

312317
this.#renderStorage = opts.renderStorage;
313318
this.#fileUploadHandler = opts.fileUploadHandler;

src/markup/codemirror/create.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ import {gravityHighlightStyle, gravityTheme} from './gravity';
3939
import {PairingCharactersExtension} from './pairing-chars';
4040
import {ReactRendererFacet} from './react-facet';
4141
import {SearchPanelPlugin} from './search-plugin/plugin';
42-
import {yfmLang} from './yfm';
42+
import {type YfmLangOptions, yfmLang} from './yfm';
4343

4444
export type CreateCodemirrorParams = {
4545
doc: EditorViewConfig['doc'];
@@ -54,6 +54,7 @@ export type CreateCodemirrorParams = {
5454
needImgDimms?: boolean;
5555
extraMarkupExtensions?: Extension[];
5656
receiver?: Receiver<EventMap>;
57+
yfmLangOptions?: YfmLangOptions;
5758
};
5859

5960
export function createCodemirror(params: CreateCodemirrorParams) {
@@ -68,6 +69,7 @@ export function createCodemirror(params: CreateCodemirrorParams) {
6869
onDocChange,
6970
extraMarkupExtensions,
7071
receiver,
72+
yfmLangOptions,
7173
} = params;
7274

7375
const extensions: Extension[] = [
@@ -113,7 +115,7 @@ export function createCodemirror(params: CreateCodemirrorParams) {
113115
...historyKeymap,
114116
]),
115117
autocompletion(),
116-
yfmLang(),
118+
yfmLang(yfmLangOptions),
117119
ReactRendererFacet.of(reactRenderer),
118120
PairingCharactersExtension,
119121
EditorView.lineWrapping,

0 commit comments

Comments
 (0)