@uiw/react-codemirror 3.2.6 → 3.2.9

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 CHANGED
@@ -29,7 +29,7 @@ npm install @uiw/react-codemirror --save
29
29
 
30
30
  ## Usage
31
31
 
32
- [![Open in CodeSandbox](https://img.shields.io/badge/Open%20in-CodeSandbox-blue?logo=codesandbox)](https://codesandbox.io/embed/react-codemirror-example-vgr4n?fontsize=14&hidenavigation=1&theme=dark)
32
+ [![Open in CodeSandbox](https://img.shields.io/badge/Open%20in-CodeSandbox-blue?logo=codesandbox)](https://codesandbox.io/embed/react-codemirror-v3-vgr4n?fontsize=14&hidenavigation=1&theme=dark)
33
33
 
34
34
  ```jsx
35
35
  import CodeMirror from '@uiw/react-codemirror';
@@ -763,6 +763,15 @@ state: any;
763
763
  - [@uiw/react-markdown-editor](https://github.com/uiwjs/react-markdown-editor): A markdown editor with preview, implemented with React.js and TypeScript.
764
764
  - [@uiw/react-markdown-preview](https://github.com/jaywcjlove/react-monacoeditor): React component preview markdown text in web browser.
765
765
 
766
+
767
+ ## Contributors
768
+
769
+ As always, thanks to our amazing contributors!
770
+
771
+ <a href="https://github.com/uiwjs/react-codemirror/graphs/contributors">
772
+ <img src="https://uiwjs.github.io/react-codemirror/CONTRIBUTORS.svg" />
773
+ </a>
774
+
766
775
  ## License
767
776
 
768
777
  Licensed under the MIT License.
@@ -32,6 +32,7 @@
32
32
  border-right: 1px solid #ddd;
33
33
  background-color: #f7f7f7;
34
34
  white-space: nowrap;
35
+ height: initial !important;
35
36
  }
36
37
  .CodeMirror-linenumber {
37
38
  padding: 0 3px 0 5px;
@@ -158,15 +159,19 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
158
159
  background: white;
159
160
  }
160
161
 
162
+ .CodeMirror-scroll, .CodeMirror-sizer, .CodeMirror-gutter, .CodeMirror-gutters, .CodeMirror-linenumber {
163
+ box-sizing: content-box;
164
+ }
165
+
161
166
  .CodeMirror-scroll {
162
- overflow: scroll !important; /* Things will break if this is overridden */
163
- /* 30px is the magic margin used to hide the element's real scrollbars */
164
- /* See overflow: hidden in .CodeMirror */
165
- margin-bottom: -30px; margin-right: -30px;
166
- padding-bottom: 30px;
167
+ overflow: scroll !important;
168
+ margin-bottom: -50px;
169
+ margin-right: -50px;
170
+ padding-bottom: 50px;
167
171
  height: 100%;
168
- outline: none; /* Prevent dragging from highlighting the element */
172
+ outline: none;
169
173
  position: relative;
174
+ z-index: 0;
170
175
  }
171
176
  .CodeMirror-sizer {
172
177
  position: relative;
@@ -272,7 +277,7 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
272
277
  padding: 0.1px; /* Force widget margins to stay inside of the container */
273
278
  }
274
279
 
275
- .CodeMirror-widget {}
280
+ /* .CodeMirror-widget {} */
276
281
 
277
282
  .CodeMirror-rtl pre { direction: rtl; }
278
283
 
package/esm/index.js.map CHANGED
@@ -1,8 +1,5 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [
4
- "../src/index.js"
5
- ],
6
3
  "names": [
7
4
  "React",
8
5
  "useRef",
@@ -68,8 +65,11 @@
68
65
  "getValue",
69
66
  "forwardRef"
70
67
  ],
71
- "mappings": "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",
68
+ "sources": [
69
+ "../src/index.js"
70
+ ],
72
71
  "sourcesContent": [
73
72
  "import React, { useRef, useEffect, useImperativeHandle, useState, useMemo } from 'react';\nimport CodeMirror from 'codemirror';\nimport 'codemirror/mode/meta';\nimport './codemirror.css';\n\nconst defaultOptions = {\n tabSize: 2,\n autoCloseBrackets: true,\n matchBrackets: true,\n showCursorWhenSelecting: true,\n // 显示行号\n lineNumbers: true,\n fullScreen: true,\n}\n\nfunction ReactCodeMirror(props = {}, ref) {\n const { options = {}, value = '', width = '100%', height = '100%', lazyLoadMode = true } = props;\n const [editor, setEditor] = useState();\n const textareaRef = useRef();\n const lastestProps = useRef(props);\n\n useImperativeHandle(ref, () => ({ editor, textarea: textareaRef.current }), [editor, textareaRef]);\n lastestProps.current = props;\n \n // 将props中所有的事件处理函数映射并保存\n function getEventHandleFromProps() {\n const propNames = Object.keys(props);\n const eventHandle = propNames.filter((keyName) => {\n return /^on+/.test(keyName);\n });\n\n const eventDict = {};\n eventHandle.forEach((ele) => {\n const name = ele.slice(2);\n if (name && name[0]) {\n eventDict[ele] = name.replace(name[0], name[0].toLowerCase());\n }\n });\n\n return eventDict;\n }\n\n // http://codemirror.net/doc/manual.html#config\n async function setOptions(instance, opt = {}) {\n if (typeof opt === 'object' && window) {\n const mode = CodeMirror.findModeByName(opt.mode || '');\n if (lazyLoadMode && mode && mode.mode) {\n await import(`codemirror/mode/${mode.mode}/${mode.mode}.js`);\n }\n if (mode) {\n opt.mode = mode.mime;\n }\n Object.keys(opt).forEach((name) => {\n if ((opt[name] || opt[name] === false) && JSON.stringify(opt[name])) {\n instance.setOption(name, opt[name]);\n }\n });\n }\n }\n\n useEffect(() => {\n if (!editor && window) {\n // 生成codemirror实例\n const instance = CodeMirror.fromTextArea(textareaRef.current, {...defaultOptions, ...options});\n const eventDict = getEventHandleFromProps();\n Object.keys(eventDict).forEach((event) => {\n instance.on(eventDict[event], (...params) => lastestProps.current[event](...params));\n });\n instance.setValue(value || '');\n\n if (width || height) {\n // 设置尺寸\n instance.setSize(width, height);\n }\n setEditor(instance);\n setOptions(instance, {...defaultOptions, ...options});\n }\n return () => {\n if (editor && window) {\n editor.toTextArea();\n setEditor(undefined);\n }\n }\n }, []);\n\n useMemo(() => {\n if (!editor || !window) return;\n const val = editor.getValue();\n if (value !== undefined && value !== val) {\n editor.setValue(value);\n }\n }, [value]);\n\n useMemo(() => {\n if (!editor || !window) return;\n editor.setSize(width, height);\n }, [width, height]);\n\n\n useMemo(() => {\n if (!editor || !window) return;\n setOptions(editor, {...defaultOptions, ...options});\n }, [editor, options]);\n \n return (\n <textarea ref={textareaRef} />\n );\n}\n\nexport default React.forwardRef(ReactCodeMirror);\n"
74
- ]
73
+ ],
74
+ "mappings": "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"
75
75
  }
@@ -32,6 +32,7 @@
32
32
  border-right: 1px solid #ddd;
33
33
  background-color: #f7f7f7;
34
34
  white-space: nowrap;
35
+ height: initial !important;
35
36
  }
36
37
  .CodeMirror-linenumber {
37
38
  padding: 0 3px 0 5px;
@@ -158,15 +159,19 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
158
159
  background: white;
159
160
  }
160
161
 
162
+ .CodeMirror-scroll, .CodeMirror-sizer, .CodeMirror-gutter, .CodeMirror-gutters, .CodeMirror-linenumber {
163
+ box-sizing: content-box;
164
+ }
165
+
161
166
  .CodeMirror-scroll {
162
- overflow: scroll !important; /* Things will break if this is overridden */
163
- /* 30px is the magic margin used to hide the element's real scrollbars */
164
- /* See overflow: hidden in .CodeMirror */
165
- margin-bottom: -30px; margin-right: -30px;
166
- padding-bottom: 30px;
167
+ overflow: scroll !important;
168
+ margin-bottom: -50px;
169
+ margin-right: -50px;
170
+ padding-bottom: 50px;
167
171
  height: 100%;
168
- outline: none; /* Prevent dragging from highlighting the element */
172
+ outline: none;
169
173
  position: relative;
174
+ z-index: 0;
170
175
  }
171
176
  .CodeMirror-sizer {
172
177
  position: relative;
@@ -272,7 +277,7 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
272
277
  padding: 0.1px; /* Force widget margins to stay inside of the container */
273
278
  }
274
279
 
275
- .CodeMirror-widget {}
280
+ /* .CodeMirror-widget {} */
276
281
 
277
282
  .CodeMirror-rtl pre { direction: rtl; }
278
283
 
package/lib/index.js CHANGED
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports.default = void 0;
11
11
 
12
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
12
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
13
13
 
14
14
  var _interopRequireWildcard2 = _interopRequireDefault(require("@babel/runtime/helpers/interopRequireWildcard"));
15
15
 
@@ -90,11 +90,11 @@ function ReactCodeMirror() {
90
90
  }
91
91
 
92
92
  function _setOptions() {
93
- _setOptions = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(instance) {
93
+ _setOptions = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(instance) {
94
94
  var opt,
95
95
  mode,
96
96
  _args = arguments;
97
- return _regenerator.default.wrap(function _callee$(_context) {
97
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
98
98
  while (1) {
99
99
  switch (_context.prev = _context.next) {
100
100
  case 0:
package/lib/index.js.map CHANGED
@@ -1,8 +1,5 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [
4
- "../src/index.js"
5
- ],
6
3
  "names": [
7
4
  "defaultOptions",
8
5
  "tabSize",
@@ -19,10 +16,13 @@
19
16
  "width",
20
17
  "height",
21
18
  "lazyLoadMode",
19
+ "useState",
22
20
  "editor",
23
21
  "setEditor",
24
22
  "textareaRef",
23
+ "useRef",
25
24
  "lastestProps",
25
+ "useImperativeHandle",
26
26
  "textarea",
27
27
  "current",
28
28
  "getEventHandleFromProps",
@@ -51,6 +51,7 @@
51
51
  "JSON",
52
52
  "stringify",
53
53
  "setOption",
54
+ "useEffect",
54
55
  "fromTextArea",
55
56
  "event",
56
57
  "on",
@@ -58,13 +59,17 @@
58
59
  "setSize",
59
60
  "toTextArea",
60
61
  "undefined",
62
+ "useMemo",
61
63
  "val",
62
64
  "getValue",
63
65
  "React",
64
66
  "forwardRef"
65
67
  ],
66
- "mappings": "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",
68
+ "sources": [
69
+ "../src/index.js"
70
+ ],
67
71
  "sourcesContent": [
68
72
  "import React, { useRef, useEffect, useImperativeHandle, useState, useMemo } from 'react';\nimport CodeMirror from 'codemirror';\nimport 'codemirror/mode/meta';\nimport './codemirror.css';\n\nconst defaultOptions = {\n tabSize: 2,\n autoCloseBrackets: true,\n matchBrackets: true,\n showCursorWhenSelecting: true,\n // 显示行号\n lineNumbers: true,\n fullScreen: true,\n}\n\nfunction ReactCodeMirror(props = {}, ref) {\n const { options = {}, value = '', width = '100%', height = '100%', lazyLoadMode = true } = props;\n const [editor, setEditor] = useState();\n const textareaRef = useRef();\n const lastestProps = useRef(props);\n\n useImperativeHandle(ref, () => ({ editor, textarea: textareaRef.current }), [editor, textareaRef]);\n lastestProps.current = props;\n \n // 将props中所有的事件处理函数映射并保存\n function getEventHandleFromProps() {\n const propNames = Object.keys(props);\n const eventHandle = propNames.filter((keyName) => {\n return /^on+/.test(keyName);\n });\n\n const eventDict = {};\n eventHandle.forEach((ele) => {\n const name = ele.slice(2);\n if (name && name[0]) {\n eventDict[ele] = name.replace(name[0], name[0].toLowerCase());\n }\n });\n\n return eventDict;\n }\n\n // http://codemirror.net/doc/manual.html#config\n async function setOptions(instance, opt = {}) {\n if (typeof opt === 'object' && window) {\n const mode = CodeMirror.findModeByName(opt.mode || '');\n if (lazyLoadMode && mode && mode.mode) {\n await import(`codemirror/mode/${mode.mode}/${mode.mode}.js`);\n }\n if (mode) {\n opt.mode = mode.mime;\n }\n Object.keys(opt).forEach((name) => {\n if ((opt[name] || opt[name] === false) && JSON.stringify(opt[name])) {\n instance.setOption(name, opt[name]);\n }\n });\n }\n }\n\n useEffect(() => {\n if (!editor && window) {\n // 生成codemirror实例\n const instance = CodeMirror.fromTextArea(textareaRef.current, {...defaultOptions, ...options});\n const eventDict = getEventHandleFromProps();\n Object.keys(eventDict).forEach((event) => {\n instance.on(eventDict[event], (...params) => lastestProps.current[event](...params));\n });\n instance.setValue(value || '');\n\n if (width || height) {\n // 设置尺寸\n instance.setSize(width, height);\n }\n setEditor(instance);\n setOptions(instance, {...defaultOptions, ...options});\n }\n return () => {\n if (editor && window) {\n editor.toTextArea();\n setEditor(undefined);\n }\n }\n }, []);\n\n useMemo(() => {\n if (!editor || !window) return;\n const val = editor.getValue();\n if (value !== undefined && value !== val) {\n editor.setValue(value);\n }\n }, [value]);\n\n useMemo(() => {\n if (!editor || !window) return;\n editor.setSize(width, height);\n }, [width, height]);\n\n\n useMemo(() => {\n if (!editor || !window) return;\n setOptions(editor, {...defaultOptions, ...options});\n }, [editor, options]);\n \n return (\n <textarea ref={textareaRef} />\n );\n}\n\nexport default React.forwardRef(ReactCodeMirror);\n"
69
- ]
73
+ ],
74
+ "mappings": "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"
70
75
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uiw/react-codemirror",
3
- "version": "3.2.6",
3
+ "version": "3.2.9",
4
4
  "description": "CodeMirror component for React.",
5
5
  "homepage": "https://uiwjs.github.io/react-codemirror",
6
6
  "main": "lib/index.js",
@@ -41,8 +41,8 @@
41
41
  "codemirror": ">=5.49.2"
42
42
  },
43
43
  "dependencies": {
44
- "@babel/runtime": "7.15.3",
45
- "codemirror": "5.62.3"
44
+ "@babel/runtime": "^7.18.9",
45
+ "codemirror": "^5.65.8"
46
46
  },
47
47
  "eslintConfig": {
48
48
  "extends": [
@@ -51,19 +51,19 @@
51
51
  ]
52
52
  },
53
53
  "devDependencies": {
54
- "@kkt/less-modules": "6.11.0",
55
- "@kkt/raw-modules": "6.11.0",
56
- "@kkt/scope-plugin-options": "6.11.0",
57
- "@types/codemirror": "5.60.2",
58
- "@uiw/react-github-corners": "1.4.0",
59
- "@uiw/react-markdown-preview": "3.3.0",
60
- "@uiw/react-shields": "1.1.1",
54
+ "@kkt/less-modules": "^7.2.0",
55
+ "@kkt/raw-modules": "^7.2.0",
56
+ "@kkt/scope-plugin-options": "^7.2.0",
57
+ "@types/codemirror": "5.60.3",
58
+ "@uiw/react-github-corners": "1.5.3",
59
+ "@uiw/react-markdown-preview": "3.3.3",
60
+ "@uiw/react-shields": "1.1.2",
61
61
  "@uiw/reset.css": "1.0.5",
62
- "code-example": "3.0.6",
63
- "kkt": "6.11.0",
62
+ "code-example": "^3.3.6",
63
+ "kkt": "^7.2.0",
64
64
  "react": "17.0.2",
65
65
  "react-dom": "17.0.2",
66
- "tsbb": "3.3.7"
66
+ "tsbb": "^3.7.7"
67
67
  },
68
68
  "browserslist": {
69
69
  "production": [
@@ -32,6 +32,7 @@
32
32
  border-right: 1px solid #ddd;
33
33
  background-color: #f7f7f7;
34
34
  white-space: nowrap;
35
+ height: initial !important;
35
36
  }
36
37
  .CodeMirror-linenumber {
37
38
  padding: 0 3px 0 5px;
@@ -158,15 +159,19 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
158
159
  background: white;
159
160
  }
160
161
 
162
+ .CodeMirror-scroll, .CodeMirror-sizer, .CodeMirror-gutter, .CodeMirror-gutters, .CodeMirror-linenumber {
163
+ box-sizing: content-box;
164
+ }
165
+
161
166
  .CodeMirror-scroll {
162
- overflow: scroll !important; /* Things will break if this is overridden */
163
- /* 30px is the magic margin used to hide the element's real scrollbars */
164
- /* See overflow: hidden in .CodeMirror */
165
- margin-bottom: -30px; margin-right: -30px;
166
- padding-bottom: 30px;
167
+ overflow: scroll !important;
168
+ margin-bottom: -50px;
169
+ margin-right: -50px;
170
+ padding-bottom: 50px;
167
171
  height: 100%;
168
- outline: none; /* Prevent dragging from highlighting the element */
172
+ outline: none;
169
173
  position: relative;
174
+ z-index: 0;
170
175
  }
171
176
  .CodeMirror-sizer {
172
177
  position: relative;
@@ -272,7 +277,7 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #a22;}
272
277
  padding: 0.1px; /* Force widget margins to stay inside of the container */
273
278
  }
274
279
 
275
- .CodeMirror-widget {}
280
+ /* .CodeMirror-widget {} */
276
281
 
277
282
  .CodeMirror-rtl pre { direction: rtl; }
278
283