@uiw/react-codemirror 4.11.0 → 4.11.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -21
- package/cjs/index.d.ts +2 -2
- package/cjs/index.js +4 -4
- package/cjs/index.js.map +2 -2
- package/cjs/useCodeMirror.js +4 -4
- package/cjs/useCodeMirror.js.map +2 -2
- package/dist/mdeditor.js +104 -25
- package/dist/mdeditor.min.js +1 -1
- package/esm/index.d.ts +2 -2
- package/esm/index.js +1 -1
- package/esm/index.js.map +2 -2
- package/esm/useCodeMirror.js +1 -1
- package/esm/useCodeMirror.js.map +3 -3
- package/package.json +6 -2
- package/src/index.tsx +2 -2
- package/src/useCodeMirror.ts +1 -1
- package/cjs/basicSetup.d.ts +0 -65
- package/cjs/basicSetup.js +0 -119
- package/cjs/basicSetup.js.map +0 -49
- package/esm/basicSetup.d.ts +0 -65
- package/esm/basicSetup.js +0 -103
- package/esm/basicSetup.js.map +0 -49
- package/src/basicSetup.ts +0 -136
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
# react-codemirror
|
|
8
8
|
|
|
9
|
-
[](https://www.jsdelivr.com/package/npm/@uiw/react-codemirror)
|
|
9
|
+
[](https://www.jsdelivr.com/package/npm/@uiw/react-codemirror)
|
|
10
10
|
[](https://www.npmjs.com/package/@uiw/react-codemirror)
|
|
11
11
|
[](https://github.com/uiwjs/react-codemirror/actions)
|
|
12
12
|
[](https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-codemirror/file/README.md)
|
|
@@ -38,6 +38,30 @@ CodeMirror component for React. Demo Preview: [@uiwjs.github.io/react-codemirror
|
|
|
38
38
|
npm install @uiw/react-codemirror --save
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
+
**All Packages**
|
|
42
|
+
|
|
43
|
+
| Name | NPM Version | Website |
|
|
44
|
+
| -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
45
|
+
| `@uiw/react-codemirror` | [](https://www.npmjs.com/package/@uiw/react-codemirror) [](https://www.npmjs.com/package/@uiw/react-codemirror) | [`#preview`](https://uiwjs.github.io/react-codemirror/) |
|
|
46
|
+
| `@uiw/codemirror-extensions-basic-setup` | [](https://www.npmjs.com/package/@uiw/codemirror-extensions-basic-setup) [](https://www.npmjs.com/package/@uiw/codemirror-extensions-basic-setup) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/extensions/basic-setup) |
|
|
47
|
+
| `@uiw/codemirror-extensions-color` | [](https://www.npmjs.com/package/@uiw/codemirror-extensions-color) [](https://www.npmjs.com/package/@uiw/codemirror-extensions-color) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/extensions/color) |
|
|
48
|
+
| `@uiw/codemirror-extensions-events` | [](https://www.npmjs.com/package/@uiw/codemirror-extensions-events) [](https://www.npmjs.com/package/@uiw/codemirror-extensions-events) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/extensions/events) |
|
|
49
|
+
| `@uiw/codemirror-extensions-hyper-link` | [](https://www.npmjs.com/package/@uiw/codemirror-extensions-hyper-link) [](https://www.npmjs.com/package/@uiw/codemirror-extensions-hyper-link) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/extensions/hyper-link) |
|
|
50
|
+
| `@uiw/codemirror-extensions-line-numbers-relative` | [](https://www.npmjs.com/package/@uiw/codemirror-extensions-line-numbers-relative) [](https://www.npmjs.com/package/@uiw/codemirror-extensions-line-numbers-relative) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/extensions/line-numbers-relative) |
|
|
51
|
+
| `@uiw/codemirror-themes` | [](https://www.npmjs.com/package/@uiw/codemirror-themes) [](https://www.npmjs.com/package/@uiw/codemirror-themes) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/doc) |
|
|
52
|
+
| `@uiw/codemirror-theme-abcdef` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-abcdef) [](https://www.npmjs.com/package/@uiw/codemirror-theme-abcdef) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/abcdef) |
|
|
53
|
+
| `@uiw/codemirror-theme-androidstudio` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-androidstudio) [](https://www.npmjs.com/package/@uiw/codemirror-theme-androidstudio) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/androidstudio) |
|
|
54
|
+
| `@uiw/codemirror-theme-bespin` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-bespin) [](https://www.npmjs.com/package/@uiw/codemirror-theme-bespin) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/bespin) |
|
|
55
|
+
| `@uiw/codemirror-theme-duotone` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-duotone) [](https://www.npmjs.com/package/@uiw/codemirror-theme-duotone) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/duotone/light) |
|
|
56
|
+
| `@uiw/codemirror-theme-dracula` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-dracula) [](https://www.npmjs.com/package/@uiw/codemirror-theme-dracula) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/dracula) |
|
|
57
|
+
| `@uiw/codemirror-theme-darcula` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-darcula) [](https://www.npmjs.com/package/@uiw/codemirror-theme-darcula) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/darcula) |
|
|
58
|
+
| `@uiw/codemirror-theme-eclipse` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-eclipse) [](https://www.npmjs.com/package/@uiw/codemirror-theme-eclipse) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/eclipse) |
|
|
59
|
+
| `@uiw/codemirror-theme-github` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-github) [](https://www.npmjs.com/package/@uiw/codemirror-theme-github) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/github) |
|
|
60
|
+
| `@uiw/codemirror-theme-okaidia` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-okaidia) [](https://www.npmjs.com/package/@uiw/codemirror-theme-okaidia) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/okaidia) |
|
|
61
|
+
| `@uiw/codemirror-theme-sublime` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-sublime) [](https://www.npmjs.com/package/@uiw/codemirror-theme-sublime) | [`#preview`](https://uiwjs.github.io/react-codemirror/#/theme/data/sublime) |
|
|
62
|
+
|
|
63
|
+
<!--rehype:style=width: 100%; display: inline-table;-->
|
|
64
|
+
|
|
41
65
|
## Usage
|
|
42
66
|
|
|
43
67
|
[](https://codesandbox.io/embed/react-codemirror-example-codemirror-6-slvju?fontsize=14&hidenavigation=1&theme=dark)
|
|
@@ -400,26 +424,6 @@ export interface Statistics {
|
|
|
400
424
|
export declare const getStatistics: (view: ViewUpdate) => Statistics;
|
|
401
425
|
```
|
|
402
426
|
|
|
403
|
-
## Packages
|
|
404
|
-
|
|
405
|
-
| Name | NPM Version | Website |
|
|
406
|
-
| ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
|
|
407
|
-
| `@uiw/react-codemirror` | [](https://www.npmjs.com/package/@uiw/react-codemirror) [](https://www.npmjs.com/package/@uiw/react-codemirror) | [Preview Website](https://uiwjs.github.io/react-codemirror/) |
|
|
408
|
-
| `@uiw/codemirror-extensions-events` | [](https://www.npmjs.com/package/@uiw/codemirror-extensions-events) [](https://www.npmjs.com/package/@uiw/codemirror-extensions-events) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/extensions/events) |
|
|
409
|
-
| `@uiw/codemirror-themes` | [](https://www.npmjs.com/package/@uiw/codemirror-themes) [](https://www.npmjs.com/package/@uiw/codemirror-themes) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/doc) |
|
|
410
|
-
| `@uiw/codemirror-theme-abcdef` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-abcdef) [](https://www.npmjs.com/package/@uiw/codemirror-theme-abcdef) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/abcdef) |
|
|
411
|
-
| `@uiw/codemirror-theme-androidstudio` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-androidstudio) [](https://www.npmjs.com/package/@uiw/codemirror-theme-androidstudio) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/androidstudio) |
|
|
412
|
-
| `@uiw/codemirror-theme-bespin` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-bespin) [](https://www.npmjs.com/package/@uiw/codemirror-theme-bespin) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/bespin) |
|
|
413
|
-
| `@uiw/codemirror-theme-duotone` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-duotone) [](https://www.npmjs.com/package/@uiw/codemirror-theme-duotone) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/duotone/light) |
|
|
414
|
-
| `@uiw/codemirror-theme-dracula` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-dracula) [](https://www.npmjs.com/package/@uiw/codemirror-theme-dracula) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/dracula) |
|
|
415
|
-
| `@uiw/codemirror-theme-darcula` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-darcula) [](https://www.npmjs.com/package/@uiw/codemirror-theme-darcula) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/darcula) |
|
|
416
|
-
| `@uiw/codemirror-theme-eclipse` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-eclipse) [](https://www.npmjs.com/package/@uiw/codemirror-theme-eclipse) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/eclipse) |
|
|
417
|
-
| `@uiw/codemirror-theme-github` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-github) [](https://www.npmjs.com/package/@uiw/codemirror-theme-github) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/github) |
|
|
418
|
-
| `@uiw/codemirror-theme-okaidia` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-okaidia) [](https://www.npmjs.com/package/@uiw/codemirror-theme-okaidia) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/okaidia) |
|
|
419
|
-
| `@uiw/codemirror-theme-sublime` | [](https://www.npmjs.com/package/@uiw/codemirror-theme-sublime) [](https://www.npmjs.com/package/@uiw/codemirror-theme-sublime) | [Preview Website](https://uiwjs.github.io/react-codemirror/#/theme/data/sublime) |
|
|
420
|
-
|
|
421
|
-
<!--rehype:style=width: 100%; display: inline-table;-->
|
|
422
|
-
|
|
423
427
|
### Related
|
|
424
428
|
|
|
425
429
|
- [@uiw/react-textarea-code-editor](https://github.com/uiwjs/react-textarea-code-editor): A simple code editor with syntax highlighting.
|
package/cjs/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { EditorState, EditorStateConfig, Extension } from '@codemirror/state';
|
|
3
3
|
import { EditorView, ViewUpdate } from '@codemirror/view';
|
|
4
|
+
import { BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
|
|
4
5
|
import { Statistics } from './utils';
|
|
5
|
-
|
|
6
|
-
export * from './basicSetup';
|
|
6
|
+
export * from '@uiw/codemirror-extensions-basic-setup';
|
|
7
7
|
export * from './useCodeMirror';
|
|
8
8
|
export * from './utils';
|
|
9
9
|
export interface ReactCodeMirrorProps extends Omit<EditorStateConfig, 'doc' | 'extensions'>, Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'placeholder'> {
|
package/cjs/index.js
CHANGED
|
@@ -34,16 +34,16 @@ Object.keys(_useCodeMirror2).forEach(function (key) {
|
|
|
34
34
|
|
|
35
35
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
36
36
|
|
|
37
|
-
var
|
|
37
|
+
var _codemirrorExtensionsBasicSetup = require("@uiw/codemirror-extensions-basic-setup");
|
|
38
38
|
|
|
39
|
-
Object.keys(
|
|
39
|
+
Object.keys(_codemirrorExtensionsBasicSetup).forEach(function (key) {
|
|
40
40
|
if (key === "default" || key === "__esModule") return;
|
|
41
41
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
42
|
-
if (key in exports && exports[key] ===
|
|
42
|
+
if (key in exports && exports[key] === _codemirrorExtensionsBasicSetup[key]) return;
|
|
43
43
|
Object.defineProperty(exports, key, {
|
|
44
44
|
enumerable: true,
|
|
45
45
|
get: function get() {
|
|
46
|
-
return
|
|
46
|
+
return _codemirrorExtensionsBasicSetup[key];
|
|
47
47
|
}
|
|
48
48
|
});
|
|
49
49
|
});
|
package/cjs/index.js.map
CHANGED
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"../src/index.tsx"
|
|
46
46
|
],
|
|
47
47
|
"sourcesContent": [
|
|
48
|
-
"import React, { useRef, forwardRef, useImperativeHandle } from 'react';\nimport { EditorState, EditorStateConfig, Extension } from '@codemirror/state';\nimport { EditorView, ViewUpdate } from '@codemirror/view';\nimport {
|
|
48
|
+
"import React, { useRef, forwardRef, useImperativeHandle } from 'react';\nimport { EditorState, EditorStateConfig, Extension } from '@codemirror/state';\nimport { EditorView, ViewUpdate } from '@codemirror/view';\nimport { BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';\nimport { useCodeMirror } from './useCodeMirror';\nimport { Statistics } from './utils';\n\nexport * from '@uiw/codemirror-extensions-basic-setup';\nexport * from './useCodeMirror';\nexport * from './utils';\n\nexport interface ReactCodeMirrorProps\n extends Omit<EditorStateConfig, 'doc' | 'extensions'>,\n Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'placeholder'> {\n /** value of the auto created model in the editor. */\n value?: string;\n height?: string;\n minHeight?: string;\n maxHeight?: string;\n width?: string;\n minWidth?: string;\n maxWidth?: string;\n /** focus on the editor. */\n autoFocus?: boolean;\n /** Enables a placeholder—a piece of example content to show when the editor is empty. */\n placeholder?: string | HTMLElement;\n /**\n * `light` / `dark` / `Extension` Defaults to `light`.\n * @default light\n */\n theme?: 'light' | 'dark' | Extension;\n /**\n * Whether to optional basicSetup by default\n * @default true\n */\n basicSetup?: boolean | BasicSetupOptions;\n /**\n * This disables editing of the editor content by the user.\n * @default true\n */\n editable?: boolean;\n /**\n * This disables editing of the editor content by the user.\n * @default false\n */\n readOnly?: boolean;\n /**\n * Whether to optional basicSetup by default\n * @default true\n */\n indentWithTab?: boolean;\n /** Fired whenever a change occurs to the document. */\n onChange?(value: string, viewUpdate: ViewUpdate): void;\n /** Some data on the statistics editor. */\n onStatistics?(data: Statistics): void;\n /** Fired whenever any state change occurs within the editor, including non-document changes like lint results. */\n onUpdate?(viewUpdate: ViewUpdate): void;\n /** The first time the editor executes the event. */\n onCreateEditor?(view: EditorView, state: EditorState): void;\n /**\n * Extension values can be [provided](https://codemirror.net/6/docs/ref/#state.EditorStateConfig.extensions) when creating a state to attach various kinds of configuration and behavior information.\n * They can either be built-in extension-providing objects,\n * such as [state fields](https://codemirror.net/6/docs/ref/#state.StateField) or [facet providers](https://codemirror.net/6/docs/ref/#state.Facet.of),\n * or objects with an extension in its `extension` property. Extensions can be nested in arrays arbitrarily deep—they will be flattened when processed.\n */\n extensions?: Extension[];\n /**\n * If the view is going to be mounted in a shadow root or document other than the one held by the global variable document (the default), you should pass it here.\n * Originally from the [config of EditorView](https://codemirror.net/6/docs/ref/#view.EditorView.constructor%5Econfig.root)\n */\n root?: ShadowRoot | Document;\n}\n\nexport interface ReactCodeMirrorRef {\n editor?: HTMLDivElement | null;\n state?: EditorState;\n view?: EditorView;\n}\n\nconst ReactCodeMirror = forwardRef<ReactCodeMirrorRef, ReactCodeMirrorProps>((props, ref) => {\n const {\n className,\n value = '',\n selection,\n extensions = [],\n onChange,\n onStatistics,\n onCreateEditor,\n onUpdate,\n autoFocus,\n theme = 'light',\n height,\n minHeight,\n maxHeight,\n width,\n minWidth,\n maxWidth,\n basicSetup,\n placeholder,\n indentWithTab,\n editable,\n readOnly,\n root,\n ...other\n } = props;\n const editor = useRef<HTMLDivElement>(null);\n const { state, view, container, setContainer } = useCodeMirror({\n container: editor.current,\n root,\n value,\n autoFocus,\n theme,\n height,\n minHeight,\n maxHeight,\n width,\n minWidth,\n maxWidth,\n basicSetup,\n placeholder,\n indentWithTab,\n editable,\n readOnly,\n selection,\n onChange,\n onStatistics,\n onCreateEditor,\n onUpdate,\n extensions,\n });\n\n useImperativeHandle(ref, () => ({ editor: editor.current, state: state, view: view }), [\n editor,\n container,\n state,\n view,\n ]);\n\n // check type of value\n if (typeof value !== 'string') {\n throw new Error(`value must be typeof string but got ${typeof value}`);\n }\n\n const defaultClassNames = typeof theme === 'string' ? `cm-theme-${theme}` : 'cm-theme';\n return <div ref={editor} className={`${defaultClassNames}${className ? ` ${className}` : ''}`} {...other}></div>;\n});\n\nReactCodeMirror.displayName = 'CodeMirror';\n\nexport default ReactCodeMirror;\n"
|
|
49
49
|
],
|
|
50
|
-
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;;
|
|
50
|
+
"mappings": "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"
|
|
51
51
|
}
|
package/cjs/useCodeMirror.js
CHANGED
|
@@ -17,9 +17,9 @@ var _commands = require("@codemirror/commands");
|
|
|
17
17
|
|
|
18
18
|
var _view = require("@codemirror/view");
|
|
19
19
|
|
|
20
|
-
var
|
|
20
|
+
var _codemirrorExtensionsBasicSetup = require("@uiw/codemirror-extensions-basic-setup");
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var _themeOneDark = require("@codemirror/theme-one-dark");
|
|
23
23
|
|
|
24
24
|
var _utils = require("./utils");
|
|
25
25
|
|
|
@@ -113,9 +113,9 @@ function useCodeMirror(props) {
|
|
|
113
113
|
|
|
114
114
|
if (defaultBasicSetup) {
|
|
115
115
|
if (typeof defaultBasicSetup === 'boolean') {
|
|
116
|
-
getExtensions.unshift((0,
|
|
116
|
+
getExtensions.unshift((0, _codemirrorExtensionsBasicSetup.basicSetup)());
|
|
117
117
|
} else {
|
|
118
|
-
getExtensions.unshift((0,
|
|
118
|
+
getExtensions.unshift((0, _codemirrorExtensionsBasicSetup.basicSetup)(defaultBasicSetup));
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
121
|
|
package/cjs/useCodeMirror.js.map
CHANGED
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
"../src/useCodeMirror.ts"
|
|
77
77
|
],
|
|
78
78
|
"sourcesContent": [
|
|
79
|
-
"import { useEffect, useState } from 'react';\nimport { EditorState, StateEffect } from '@codemirror/state';\nimport { indentWithTab } from '@codemirror/commands';\nimport { EditorView, keymap, ViewUpdate, placeholder } from '@codemirror/view';\nimport {
|
|
79
|
+
"import { useEffect, useState } from 'react';\nimport { EditorState, StateEffect } from '@codemirror/state';\nimport { indentWithTab } from '@codemirror/commands';\nimport { EditorView, keymap, ViewUpdate, placeholder } from '@codemirror/view';\nimport { basicSetup } from '@uiw/codemirror-extensions-basic-setup';\nimport { oneDark } from '@codemirror/theme-one-dark';\nimport { getStatistics } from './utils';\nimport { ReactCodeMirrorProps } from '.';\n\nexport interface UseCodeMirror extends ReactCodeMirrorProps {\n container?: HTMLDivElement | null;\n}\n\nexport function useCodeMirror(props: UseCodeMirror) {\n const {\n value,\n selection,\n onChange,\n onStatistics,\n onCreateEditor,\n onUpdate,\n extensions = [],\n autoFocus,\n theme = 'light',\n height = '',\n minHeight = '',\n maxHeight = '',\n placeholder: placeholderStr = '',\n width = '',\n minWidth = '',\n maxWidth = '',\n editable = true,\n readOnly = false,\n indentWithTab: defaultIndentWithTab = true,\n basicSetup: defaultBasicSetup = true,\n root,\n } = props;\n const [container, setContainer] = useState<HTMLDivElement>();\n const [view, setView] = useState<EditorView>();\n const [state, setState] = useState<EditorState>();\n const defaultLightThemeOption = EditorView.theme(\n {\n '&': {\n backgroundColor: '#fff',\n },\n },\n {\n dark: false,\n },\n );\n const defaultThemeOption = EditorView.theme({\n '&': {\n height,\n minHeight,\n maxHeight,\n width,\n minWidth,\n maxWidth,\n },\n });\n const updateListener = EditorView.updateListener.of((vu: ViewUpdate) => {\n if (vu.docChanged && typeof onChange === 'function') {\n const doc = vu.state.doc;\n const value = doc.toString();\n onChange(value, vu);\n }\n onStatistics && onStatistics(getStatistics(vu));\n });\n\n let getExtensions = [updateListener, defaultThemeOption];\n if (defaultIndentWithTab) {\n getExtensions.unshift(keymap.of([indentWithTab]));\n }\n if (defaultBasicSetup) {\n if (typeof defaultBasicSetup === 'boolean') {\n getExtensions.unshift(basicSetup());\n } else {\n getExtensions.unshift(basicSetup(defaultBasicSetup));\n }\n }\n\n if (placeholderStr) {\n getExtensions.unshift(placeholder(placeholderStr));\n }\n\n switch (theme) {\n case 'light':\n getExtensions.push(defaultLightThemeOption);\n break;\n case 'dark':\n getExtensions.push(oneDark);\n break;\n default:\n getExtensions.push(theme);\n break;\n }\n\n if (editable === false) {\n getExtensions.push(EditorView.editable.of(false));\n }\n if (readOnly) {\n getExtensions.push(EditorState.readOnly.of(true));\n }\n\n if (onUpdate && typeof onUpdate === 'function') {\n getExtensions.push(EditorView.updateListener.of(onUpdate));\n }\n getExtensions = getExtensions.concat(extensions);\n\n useEffect(() => {\n if (container && !state) {\n const stateCurrent = EditorState.create({\n doc: value,\n selection,\n extensions: getExtensions,\n });\n setState(stateCurrent);\n if (!view) {\n const viewCurrent = new EditorView({\n state: stateCurrent,\n parent: container,\n root,\n });\n setView(viewCurrent);\n onCreateEditor && onCreateEditor(viewCurrent, stateCurrent);\n }\n }\n return () => {\n if (view) {\n setState(undefined);\n setView(undefined);\n }\n };\n }, [container, state]);\n\n useEffect(() => setContainer(props.container!), [props.container]);\n\n useEffect(\n () => () => {\n if (view) {\n view.destroy();\n setView(undefined);\n }\n },\n [view],\n );\n\n useEffect(() => {\n if (autoFocus && view) {\n view.focus();\n }\n }, [autoFocus, view]);\n\n useEffect(() => {\n if (view) {\n view.dispatch({ effects: StateEffect.reconfigure.of(getExtensions) });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n theme,\n extensions,\n height,\n minHeight,\n maxHeight,\n width,\n minWidth,\n maxWidth,\n placeholderStr,\n editable,\n readOnly,\n defaultIndentWithTab,\n defaultBasicSetup,\n onChange,\n onUpdate,\n ]);\n\n useEffect(() => {\n const currentValue = view ? view.state.doc.toString() : '';\n if (view && value !== currentValue) {\n view.dispatch({\n changes: { from: 0, to: currentValue.length, insert: value || '' },\n });\n }\n }, [value, view]);\n\n return { state, setState, view, setView, container, setContainer };\n}\n"
|
|
80
80
|
],
|
|
81
|
-
"mappings": "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
|
|
81
|
+
"mappings": ";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAOO,SAASA,aAAT,CAAuBC,KAAvB,EAA6C;EAClD,IACEC,KADF,GAsBID,KAtBJ,CACEC,KADF;EAAA,IAEEC,SAFF,GAsBIF,KAtBJ,CAEEE,SAFF;EAAA,IAGEC,QAHF,GAsBIH,KAtBJ,CAGEG,QAHF;EAAA,IAIEC,YAJF,GAsBIJ,KAtBJ,CAIEI,YAJF;EAAA,IAKEC,cALF,GAsBIL,KAtBJ,CAKEK,cALF;EAAA,IAMEC,QANF,GAsBIN,KAtBJ,CAMEM,QANF;EAAA,wBAsBIN,KAtBJ,CAOEO,UAPF;EAAA,IAOEA,UAPF,kCAOe,EAPf;EAAA,IAQEC,SARF,GAsBIR,KAtBJ,CAQEQ,SARF;EAAA,mBAsBIR,KAtBJ,CASES,KATF;EAAA,IASEA,KATF,6BASU,OATV;EAAA,oBAsBIT,KAtBJ,CAUEU,MAVF;EAAA,IAUEA,MAVF,8BAUW,EAVX;EAAA,uBAsBIV,KAtBJ,CAWEW,SAXF;EAAA,IAWEA,SAXF,iCAWc,EAXd;EAAA,uBAsBIX,KAtBJ,CAYEY,SAZF;EAAA,IAYEA,SAZF,iCAYc,EAZd;EAAA,yBAsBIZ,KAtBJ,CAaEa,WAbF;EAAA,IAaeC,cAbf,mCAagC,EAbhC;EAAA,mBAsBId,KAtBJ,CAcEe,KAdF;EAAA,IAcEA,KAdF,6BAcU,EAdV;EAAA,sBAsBIf,KAtBJ,CAeEgB,QAfF;EAAA,IAeEA,QAfF,gCAea,EAfb;EAAA,sBAsBIhB,KAtBJ,CAgBEiB,QAhBF;EAAA,IAgBEA,QAhBF,gCAgBa,EAhBb;EAAA,sBAsBIjB,KAtBJ,CAiBEkB,QAjBF;EAAA,IAiBEA,QAjBF,gCAiBa,IAjBb;EAAA,sBAsBIlB,KAtBJ,CAkBEmB,QAlBF;EAAA,IAkBEA,QAlBF,gCAkBa,KAlBb;EAAA,2BAsBInB,KAtBJ,CAmBEoB,aAnBF;EAAA,IAmBiBC,oBAnBjB,qCAmBwC,IAnBxC;EAAA,wBAsBIrB,KAtBJ,CAoBEsB,UApBF;EAAA,IAoBcC,iBApBd,kCAoBkC,IApBlC;EAAA,IAqBEC,IArBF,GAsBIxB,KAtBJ,CAqBEwB,IArBF;;EAuBA,gBAAkC,IAAAC,eAAA,GAAlC;EAAA;EAAA,IAAOC,SAAP;EAAA,IAAkBC,YAAlB;;EACA,iBAAwB,IAAAF,eAAA,GAAxB;EAAA;EAAA,IAAOG,IAAP;EAAA,IAAaC,OAAb;;EACA,iBAA0B,IAAAJ,eAAA,GAA1B;EAAA;EAAA,IAAOK,KAAP;EAAA,IAAcC,QAAd;;EACA,IAAMC,uBAAuB,GAAGC,gBAAA,CAAWxB,KAAX,CAC9B;IACE,KAAK;MACHyB,eAAe,EAAE;IADd;EADP,CAD8B,EAM9B;IACEC,IAAI,EAAE;EADR,CAN8B,CAAhC;;EAUA,IAAMC,kBAAkB,GAAGH,gBAAA,CAAWxB,KAAX,CAAiB;IAC1C,KAAK;MACHC,MAAM,EAANA,MADG;MAEHC,SAAS,EAATA,SAFG;MAGHC,SAAS,EAATA,SAHG;MAIHG,KAAK,EAALA,KAJG;MAKHC,QAAQ,EAARA,QALG;MAMHC,QAAQ,EAARA;IANG;EADqC,CAAjB,CAA3B;;EAUA,IAAMoB,cAAc,GAAGJ,gBAAA,CAAWI,cAAX,CAA0BC,EAA1B,CAA6B,UAACC,EAAD,EAAoB;IACtE,IAAIA,EAAE,CAACC,UAAH,IAAiB,OAAOrC,QAAP,KAAoB,UAAzC,EAAqD;MACnD,IAAMsC,GAAG,GAAGF,EAAE,CAACT,KAAH,CAASW,GAArB;;MACA,IAAMxC,MAAK,GAAGwC,GAAG,CAACC,QAAJ,EAAd;;MACAvC,QAAQ,CAACF,MAAD,EAAQsC,EAAR,CAAR;IACD;;IACDnC,YAAY,IAAIA,YAAY,CAAC,IAAAuC,oBAAA,EAAcJ,EAAd,CAAD,CAA5B;EACD,CAPsB,CAAvB;;EASA,IAAIK,aAAa,GAAG,CAACP,cAAD,EAAiBD,kBAAjB,CAApB;;EACA,IAAIf,oBAAJ,EAA0B;IACxBuB,aAAa,CAACC,OAAd,CAAsBC,YAAA,CAAOR,EAAP,CAAU,CAAClB,uBAAD,CAAV,CAAtB;EACD;;EACD,IAAIG,iBAAJ,EAAuB;IACrB,IAAI,OAAOA,iBAAP,KAA6B,SAAjC,EAA4C;MAC1CqB,aAAa,CAACC,OAAd,CAAsB,IAAAvB,0CAAA,GAAtB;IACD,CAFD,MAEO;MACLsB,aAAa,CAACC,OAAd,CAAsB,IAAAvB,0CAAA,EAAWC,iBAAX,CAAtB;IACD;EACF;;EAED,IAAIT,cAAJ,EAAoB;IAClB8B,aAAa,CAACC,OAAd,CAAsB,IAAAhC,iBAAA,EAAYC,cAAZ,CAAtB;EACD;;EAED,QAAQL,KAAR;IACE,KAAK,OAAL;MACEmC,aAAa,CAACG,IAAd,CAAmBf,uBAAnB;MACA;;IACF,KAAK,MAAL;MACEY,aAAa,CAACG,IAAd,CAAmBC,qBAAnB;MACA;;IACF;MACEJ,aAAa,CAACG,IAAd,CAAmBtC,KAAnB;MACA;EATJ;;EAYA,IAAIS,QAAQ,KAAK,KAAjB,EAAwB;IACtB0B,aAAa,CAACG,IAAd,CAAmBd,gBAAA,CAAWf,QAAX,CAAoBoB,EAApB,CAAuB,KAAvB,CAAnB;EACD;;EACD,IAAInB,QAAJ,EAAc;IACZyB,aAAa,CAACG,IAAd,CAAmBE,kBAAA,CAAY9B,QAAZ,CAAqBmB,EAArB,CAAwB,IAAxB,CAAnB;EACD;;EAED,IAAIhC,QAAQ,IAAI,OAAOA,QAAP,KAAoB,UAApC,EAAgD;IAC9CsC,aAAa,CAACG,IAAd,CAAmBd,gBAAA,CAAWI,cAAX,CAA0BC,EAA1B,CAA6BhC,QAA7B,CAAnB;EACD;;EACDsC,aAAa,GAAGA,aAAa,CAACM,MAAd,CAAqB3C,UAArB,CAAhB;EAEA,IAAA4C,gBAAA,EAAU,YAAM;IACd,IAAIzB,SAAS,IAAI,CAACI,KAAlB,EAAyB;MACvB,IAAMsB,YAAY,GAAGH,kBAAA,CAAYI,MAAZ,CAAmB;QACtCZ,GAAG,EAAExC,KADiC;QAEtCC,SAAS,EAATA,SAFsC;QAGtCK,UAAU,EAAEqC;MAH0B,CAAnB,CAArB;;MAKAb,QAAQ,CAACqB,YAAD,CAAR;;MACA,IAAI,CAACxB,IAAL,EAAW;QACT,IAAM0B,WAAW,GAAG,IAAIrB,gBAAJ,CAAe;UACjCH,KAAK,EAAEsB,YAD0B;UAEjCG,MAAM,EAAE7B,SAFyB;UAGjCF,IAAI,EAAJA;QAHiC,CAAf,CAApB;QAKAK,OAAO,CAACyB,WAAD,CAAP;QACAjD,cAAc,IAAIA,cAAc,CAACiD,WAAD,EAAcF,YAAd,CAAhC;MACD;IACF;;IACD,OAAO,YAAM;MACX,IAAIxB,IAAJ,EAAU;QACRG,QAAQ,CAACyB,SAAD,CAAR;QACA3B,OAAO,CAAC2B,SAAD,CAAP;MACD;IACF,CALD;EAMD,CAxBD,EAwBG,CAAC9B,SAAD,EAAYI,KAAZ,CAxBH;EA0BA,IAAAqB,gBAAA,EAAU;IAAA,OAAMxB,YAAY,CAAC3B,KAAK,CAAC0B,SAAP,CAAlB;EAAA,CAAV,EAAgD,CAAC1B,KAAK,CAAC0B,SAAP,CAAhD;EAEA,IAAAyB,gBAAA,EACE;IAAA,OAAM,YAAM;MACV,IAAIvB,IAAJ,EAAU;QACRA,IAAI,CAAC6B,OAAL;QACA5B,OAAO,CAAC2B,SAAD,CAAP;MACD;IACF,CALD;EAAA,CADF,EAOE,CAAC5B,IAAD,CAPF;EAUA,IAAAuB,gBAAA,EAAU,YAAM;IACd,IAAI3C,SAAS,IAAIoB,IAAjB,EAAuB;MACrBA,IAAI,CAAC8B,KAAL;IACD;EACF,CAJD,EAIG,CAAClD,SAAD,EAAYoB,IAAZ,CAJH;EAMA,IAAAuB,gBAAA,EAAU,YAAM;IACd,IAAIvB,IAAJ,EAAU;MACRA,IAAI,CAAC+B,QAAL,CAAc;QAAEC,OAAO,EAAEC,kBAAA,CAAYC,WAAZ,CAAwBxB,EAAxB,CAA2BM,aAA3B;MAAX,CAAd;IACD,CAHa,CAId;;EACD,CALD,EAKG,CACDnC,KADC,EAEDF,UAFC,EAGDG,MAHC,EAIDC,SAJC,EAKDC,SALC,EAMDG,KANC,EAODC,QAPC,EAQDC,QARC,EASDH,cATC,EAUDI,QAVC,EAWDC,QAXC,EAYDE,oBAZC,EAaDE,iBAbC,EAcDpB,QAdC,EAeDG,QAfC,CALH;EAuBA,IAAA6C,gBAAA,EAAU,YAAM;IACd,IAAMY,YAAY,GAAGnC,IAAI,GAAGA,IAAI,CAACE,KAAL,CAAWW,GAAX,CAAeC,QAAf,EAAH,GAA+B,EAAxD;;IACA,IAAId,IAAI,IAAI3B,KAAK,KAAK8D,YAAtB,EAAoC;MAClCnC,IAAI,CAAC+B,QAAL,CAAc;QACZK,OAAO,EAAE;UAAEC,IAAI,EAAE,CAAR;UAAWC,EAAE,EAAEH,YAAY,CAACI,MAA5B;UAAoCC,MAAM,EAAEnE,KAAK,IAAI;QAArD;MADG,CAAd;IAGD;EACF,CAPD,EAOG,CAACA,KAAD,EAAQ2B,IAAR,CAPH;EASA,OAAO;IAAEE,KAAK,EAALA,KAAF;IAASC,QAAQ,EAARA,QAAT;IAAmBH,IAAI,EAAJA,IAAnB;IAAyBC,OAAO,EAAPA,OAAzB;IAAkCH,SAAS,EAATA,SAAlC;IAA6CC,YAAY,EAAZA;EAA7C,CAAP;AACD"
|
|
82
82
|
}
|
package/dist/mdeditor.js
CHANGED
|
@@ -138,6 +138,7 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
138
138
|
"basicSetup": () => (/* reexport */ basicSetup),
|
|
139
139
|
"default": () => (/* binding */ src),
|
|
140
140
|
"getStatistics": () => (/* reexport */ getStatistics),
|
|
141
|
+
"minimalSetup": () => (/* reexport */ minimalSetup),
|
|
141
142
|
"useCodeMirror": () => (/* reexport */ useCodeMirror)
|
|
142
143
|
});
|
|
143
144
|
|
|
@@ -6827,29 +6828,6 @@ const indentWithTab = { key: "Tab", run: indentMore, shift: indentLess };
|
|
|
6827
6828
|
|
|
6828
6829
|
|
|
6829
6830
|
|
|
6830
|
-
// EXTERNAL MODULE: external {"root":["CM","@codemirror/theme-one-dark"],"commonjs":"@codemirror/theme-one-dark","commonjs2":"@codemirror/theme-one-dark"}
|
|
6831
|
-
var theme_one_dark_ = __webpack_require__(362);
|
|
6832
|
-
;// CONCATENATED MODULE: ../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
|
|
6833
|
-
|
|
6834
|
-
function _arrayWithoutHoles(arr) {
|
|
6835
|
-
if (Array.isArray(arr)) return _arrayLikeToArray(arr);
|
|
6836
|
-
}
|
|
6837
|
-
;// CONCATENATED MODULE: ../node_modules/@babel/runtime/helpers/esm/iterableToArray.js
|
|
6838
|
-
function _iterableToArray(iter) {
|
|
6839
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
6840
|
-
}
|
|
6841
|
-
;// CONCATENATED MODULE: ../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
|
|
6842
|
-
function _nonIterableSpread() {
|
|
6843
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
6844
|
-
}
|
|
6845
|
-
;// CONCATENATED MODULE: ../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
|
|
6846
|
-
|
|
6847
|
-
|
|
6848
|
-
|
|
6849
|
-
|
|
6850
|
-
function _toConsumableArray(arr) {
|
|
6851
|
-
return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
|
|
6852
|
-
}
|
|
6853
6831
|
;// CONCATENATED MODULE: ../node_modules/crelt/index.es.js
|
|
6854
6832
|
function crelt() {
|
|
6855
6833
|
var elt = arguments[0]
|
|
@@ -10506,7 +10484,15 @@ function lintGutter(config = {}) {
|
|
|
10506
10484
|
|
|
10507
10485
|
|
|
10508
10486
|
|
|
10509
|
-
;// CONCATENATED MODULE:
|
|
10487
|
+
;// CONCATENATED MODULE: ../extensions/basic-setup/esm/index.js
|
|
10488
|
+
|
|
10489
|
+
|
|
10490
|
+
|
|
10491
|
+
|
|
10492
|
+
|
|
10493
|
+
|
|
10494
|
+
|
|
10495
|
+
|
|
10510
10496
|
/**
|
|
10511
10497
|
This is an extension value that just pulls together a number of
|
|
10512
10498
|
extensions that you might want in a basic editor. It is meant as a
|
|
@@ -10543,7 +10529,100 @@ once you decide you want to configure your editor more precisely,
|
|
|
10543
10529
|
you take this package's source (which is just a bunch of imports
|
|
10544
10530
|
and an array literal), copy it into your own code, and adjust it
|
|
10545
10531
|
as desired.
|
|
10546
|
-
*/
|
|
10532
|
+
*/
|
|
10533
|
+
var basicSetup = function basicSetup(options) {
|
|
10534
|
+
if (options === void 0) {
|
|
10535
|
+
options = {};
|
|
10536
|
+
}
|
|
10537
|
+
|
|
10538
|
+
var keymaps = [];
|
|
10539
|
+
|
|
10540
|
+
if (options.closeBracketsKeymap !== false) {
|
|
10541
|
+
keymaps = keymaps.concat(closeBracketsKeymap);
|
|
10542
|
+
}
|
|
10543
|
+
|
|
10544
|
+
if (options.defaultKeymap !== false) {
|
|
10545
|
+
keymaps = keymaps.concat(defaultKeymap);
|
|
10546
|
+
}
|
|
10547
|
+
|
|
10548
|
+
if (options.searchKeymap !== false) {
|
|
10549
|
+
keymaps = keymaps.concat(searchKeymap);
|
|
10550
|
+
}
|
|
10551
|
+
|
|
10552
|
+
if (options.historyKeymap !== false) {
|
|
10553
|
+
keymaps = keymaps.concat(historyKeymap);
|
|
10554
|
+
}
|
|
10555
|
+
|
|
10556
|
+
if (options.foldKeymap !== false) {
|
|
10557
|
+
keymaps = keymaps.concat(foldKeymap);
|
|
10558
|
+
}
|
|
10559
|
+
|
|
10560
|
+
if (options.completionKeymap !== false) {
|
|
10561
|
+
keymaps = keymaps.concat(completionKeymap);
|
|
10562
|
+
}
|
|
10563
|
+
|
|
10564
|
+
if (options.lintKeymap !== false) {
|
|
10565
|
+
keymaps = keymaps.concat(lintKeymap);
|
|
10566
|
+
}
|
|
10567
|
+
|
|
10568
|
+
var extensions = [];
|
|
10569
|
+
if (options.lineNumbers !== false) extensions.push((0,view_.lineNumbers)());
|
|
10570
|
+
if (options.highlightActiveLineGutter !== false) extensions.push((0,view_.highlightActiveLineGutter)());
|
|
10571
|
+
if (options.highlightSpecialChars !== false) extensions.push((0,view_.highlightSpecialChars)());
|
|
10572
|
+
if (options.history !== false) extensions.push(dist_history());
|
|
10573
|
+
if (options.foldGutter !== false) extensions.push(foldGutter());
|
|
10574
|
+
if (options.drawSelection !== false) extensions.push((0,view_.drawSelection)());
|
|
10575
|
+
if (options.dropCursor !== false) extensions.push((0,view_.dropCursor)());
|
|
10576
|
+
if (options.allowMultipleSelections !== false) extensions.push(state_.EditorState.allowMultipleSelections.of(true));
|
|
10577
|
+
if (options.indentOnInput !== false) extensions.push(indentOnInput());
|
|
10578
|
+
if (options.syntaxHighlighting !== false) extensions.push(syntaxHighlighting(defaultHighlightStyle, {
|
|
10579
|
+
fallback: true
|
|
10580
|
+
}));
|
|
10581
|
+
if (options.bracketMatching !== false) extensions.push(bracketMatching());
|
|
10582
|
+
if (options.closeBrackets !== false) extensions.push(closeBrackets());
|
|
10583
|
+
if (options.autocompletion !== false) extensions.push(autocompletion());
|
|
10584
|
+
if (options.rectangularSelection !== false) extensions.push((0,view_.rectangularSelection)());
|
|
10585
|
+
if (options.crosshairCursor !== false) extensions.push((0,view_.crosshairCursor)());
|
|
10586
|
+
if (options.highlightActiveLine !== false) extensions.push((0,view_.highlightActiveLine)());
|
|
10587
|
+
if (options.highlightSelectionMatches !== false) extensions.push(highlightSelectionMatches());
|
|
10588
|
+
return extensions.concat([view_.keymap.of(keymaps.flat())]).filter(Boolean);
|
|
10589
|
+
};
|
|
10590
|
+
|
|
10591
|
+
/**
|
|
10592
|
+
A minimal set of extensions to create a functional editor. Only
|
|
10593
|
+
includes [the default keymap](https://codemirror.net/6/docs/ref/#commands.defaultKeymap), [undo
|
|
10594
|
+
history](https://codemirror.net/6/docs/ref/#commands.history), [special character
|
|
10595
|
+
highlighting](https://codemirror.net/6/docs/ref/#view.highlightSpecialChars), [custom selection
|
|
10596
|
+
drawing](https://codemirror.net/6/docs/ref/#view.drawSelection), and [default highlight
|
|
10597
|
+
style](https://codemirror.net/6/docs/ref/#language.defaultHighlightStyle).
|
|
10598
|
+
*/
|
|
10599
|
+
var minimalSetup = function minimalSetup(options) {
|
|
10600
|
+
if (options === void 0) {
|
|
10601
|
+
options = {};
|
|
10602
|
+
}
|
|
10603
|
+
|
|
10604
|
+
var keymaps = [];
|
|
10605
|
+
|
|
10606
|
+
if (options.defaultKeymap !== false) {
|
|
10607
|
+
keymaps = keymaps.concat(defaultKeymap);
|
|
10608
|
+
}
|
|
10609
|
+
|
|
10610
|
+
if (options.historyKeymap !== false) {
|
|
10611
|
+
keymaps = keymaps.concat(historyKeymap);
|
|
10612
|
+
}
|
|
10613
|
+
|
|
10614
|
+
var extensions = [];
|
|
10615
|
+
if (options.highlightSpecialChars !== false) extensions.push((0,view_.highlightSpecialChars)());
|
|
10616
|
+
if (options.history !== false) extensions.push(dist_history());
|
|
10617
|
+
if (options.drawSelection !== false) extensions.push((0,view_.drawSelection)());
|
|
10618
|
+
if (options.syntaxHighlighting !== false) extensions.push(syntaxHighlighting(defaultHighlightStyle, {
|
|
10619
|
+
fallback: true
|
|
10620
|
+
}));
|
|
10621
|
+
return extensions.concat([view_.keymap.of(keymaps.flat())]).filter(Boolean);
|
|
10622
|
+
};
|
|
10623
|
+
|
|
10624
|
+
// EXTERNAL MODULE: external {"root":["CM","@codemirror/theme-one-dark"],"commonjs":"@codemirror/theme-one-dark","commonjs2":"@codemirror/theme-one-dark"}
|
|
10625
|
+
var theme_one_dark_ = __webpack_require__(362);
|
|
10547
10626
|
;// CONCATENATED MODULE: ./src/utils.ts
|
|
10548
10627
|
var getStatistics=function getStatistics(view){return{line:view.state.doc.lineAt(view.state.selection.main.from),lineCount:view.state.doc.lines,lineBreak:view.state.lineBreak,length:view.state.doc.length,readOnly:view.state.readOnly,tabSize:view.state.tabSize,selection:view.state.selection,selectionAsSingle:view.state.selection.asSingle().main,ranges:view.state.selection.ranges,selectionCode:view.state.sliceDoc(view.state.selection.main.from,view.state.selection.main.to),selections:view.state.selection.ranges.map(function(r){return view.state.sliceDoc(r.from,r.to);}),selectedText:view.state.selection.ranges.some(function(r){return!r.empty;})};};
|
|
10549
10628
|
;// CONCATENATED MODULE: ./src/useCodeMirror.ts
|