@uiw/react-codemirror 4.7.0 → 4.9.0

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.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -11,8 +11,6 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
11
11
 
12
12
  var _react = require("react");
13
13
 
14
- var _basicSetup = require("@codemirror/basic-setup");
15
-
16
14
  var _state = require("@codemirror/state");
17
15
 
18
16
  var _commands = require("@codemirror/commands");
@@ -21,7 +19,7 @@ var _view = require("@codemirror/view");
21
19
 
22
20
  var _themeOneDark = require("@codemirror/theme-one-dark");
23
21
 
24
- var _light = require("./theme/light");
22
+ var _basicSetup = require("./basicSetup");
25
23
 
26
24
  function useCodeMirror(props) {
27
25
  var value = props.value,
@@ -58,20 +56,28 @@ function useCodeMirror(props) {
58
56
  root = props.root;
59
57
 
60
58
  var _useState = (0, _react.useState)(props.container),
61
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
59
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
62
60
  container = _useState2[0],
63
61
  setContainer = _useState2[1];
64
62
 
65
63
  var _useState3 = (0, _react.useState)(),
66
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
64
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
67
65
  view = _useState4[0],
68
66
  setView = _useState4[1];
69
67
 
70
68
  var _useState5 = (0, _react.useState)(),
71
- _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
69
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
72
70
  state = _useState6[0],
73
71
  setState = _useState6[1];
74
72
 
73
+ var defaultLightThemeOption = _view.EditorView.theme({
74
+ '&': {
75
+ backgroundColor: '#fff'
76
+ }
77
+ }, {
78
+ dark: false
79
+ });
80
+
75
81
  var defaultThemeOption = _view.EditorView.theme({
76
82
  '&': {
77
83
  height: height,
@@ -100,7 +106,11 @@ function useCodeMirror(props) {
100
106
  }
101
107
 
102
108
  if (defaultBasicSetup) {
103
- getExtensions.unshift(_basicSetup.basicSetup);
109
+ if (typeof defaultBasicSetup === 'boolean') {
110
+ getExtensions.unshift((0, _basicSetup.basicSetup)());
111
+ } else {
112
+ getExtensions.unshift((0, _basicSetup.basicSetup)(defaultBasicSetup));
113
+ }
104
114
  }
105
115
 
106
116
  if (placeholderStr) {
@@ -109,7 +119,7 @@ function useCodeMirror(props) {
109
119
 
110
120
  switch (theme) {
111
121
  case 'light':
112
- getExtensions.push(_light.defaultLightThemeOption);
122
+ getExtensions.push(defaultLightThemeOption);
113
123
  break;
114
124
 
115
125
  case 'dark':
@@ -1,8 +1,5 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": [
4
- "../src/useCodeMirror.ts"
5
- ],
6
3
  "names": [
7
4
  "useCodeMirror",
8
5
  "props",
@@ -28,14 +25,18 @@
28
25
  "basicSetup",
29
26
  "defaultBasicSetup",
30
27
  "root",
28
+ "useState",
31
29
  "container",
32
30
  "setContainer",
33
31
  "view",
34
32
  "setView",
35
33
  "state",
36
34
  "setState",
37
- "defaultThemeOption",
35
+ "defaultLightThemeOption",
38
36
  "EditorView",
37
+ "backgroundColor",
38
+ "dark",
39
+ "defaultThemeOption",
39
40
  "updateListener",
40
41
  "of",
41
42
  "vu",
@@ -46,10 +47,10 @@
46
47
  "unshift",
47
48
  "keymap",
48
49
  "push",
49
- "defaultLightThemeOption",
50
50
  "oneDark",
51
51
  "EditorState",
52
52
  "concat",
53
+ "useEffect",
53
54
  "stateCurrent",
54
55
  "create",
55
56
  "viewCurrent",
@@ -68,8 +69,11 @@
68
69
  "StateEffect",
69
70
  "reconfigure"
70
71
  ],
71
- "mappings": ";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAMO,SAASA,aAAT,CAAuBC,KAAvB,EAA6C;AAClD,MACEC,KADF,GAoBID,KApBJ,CACEC,KADF;AAAA,MAEEC,SAFF,GAoBIF,KApBJ,CAEEE,SAFF;AAAA,MAGEC,QAHF,GAoBIH,KApBJ,CAGEG,QAHF;AAAA,MAIEC,QAJF,GAoBIJ,KApBJ,CAIEI,QAJF;AAAA,0BAoBIJ,KApBJ,CAKEK,UALF;AAAA,MAKEA,UALF,kCAKe,EALf;AAAA,MAMEC,SANF,GAoBIN,KApBJ,CAMEM,SANF;AAAA,qBAoBIN,KApBJ,CAOEO,KAPF;AAAA,MAOEA,KAPF,6BAOU,OAPV;AAAA,sBAoBIP,KApBJ,CAQEQ,MARF;AAAA,MAQEA,MARF,8BAQW,EARX;AAAA,yBAoBIR,KApBJ,CASES,SATF;AAAA,MASEA,SATF,iCASc,EATd;AAAA,yBAoBIT,KApBJ,CAUEU,SAVF;AAAA,MAUEA,SAVF,iCAUc,EAVd;AAAA,2BAoBIV,KApBJ,CAWEW,WAXF;AAAA,MAWeC,cAXf,mCAWgC,EAXhC;AAAA,qBAoBIZ,KApBJ,CAYEa,KAZF;AAAA,MAYEA,KAZF,6BAYU,EAZV;AAAA,wBAoBIb,KApBJ,CAaEc,QAbF;AAAA,MAaEA,QAbF,gCAaa,EAbb;AAAA,wBAoBId,KApBJ,CAcEe,QAdF;AAAA,MAcEA,QAdF,gCAca,EAdb;AAAA,wBAoBIf,KApBJ,CAeEgB,QAfF;AAAA,MAeEA,QAfF,gCAea,IAfb;AAAA,wBAoBIhB,KApBJ,CAgBEiB,QAhBF;AAAA,MAgBEA,QAhBF,gCAgBa,KAhBb;AAAA,6BAoBIjB,KApBJ,CAiBEkB,aAjBF;AAAA,MAiBiBC,oBAjBjB,qCAiBwC,IAjBxC;AAAA,0BAoBInB,KApBJ,CAkBEoB,UAlBF;AAAA,MAkBcC,iBAlBd,kCAkBkC,IAlBlC;AAAA,MAmBEC,IAnBF,GAoBItB,KApBJ,CAmBEsB,IAnBF;;AAqBA,kBAAkC,qBAAStB,KAAK,CAACuB,SAAf,CAAlC;AAAA;AAAA,MAAOA,SAAP;AAAA,MAAkBC,YAAlB;;AACA,mBAAwB,sBAAxB;AAAA;AAAA,MAAOC,IAAP;AAAA,MAAaC,OAAb;;AACA,mBAA0B,sBAA1B;AAAA;AAAA,MAAOC,KAAP;AAAA,MAAcC,QAAd;;AACA,MAAMC,kBAAkB,GAAGC,iBAAWvB,KAAX,CAAiB;AAC1C,SAAK;AACHC,MAAAA,MAAM,EAANA,MADG;AAEHC,MAAAA,SAAS,EAATA,SAFG;AAGHC,MAAAA,SAAS,EAATA,SAHG;AAIHG,MAAAA,KAAK,EAALA,KAJG;AAKHC,MAAAA,QAAQ,EAARA,QALG;AAMHC,MAAAA,QAAQ,EAARA;AANG;AADqC,GAAjB,CAA3B;;AAUA,MAAMgB,cAAc,GAAGD,iBAAWC,cAAX,CAA0BC,EAA1B,CAA6B,UAACC,EAAD,EAAoB;AACtE,QAAIA,EAAE,CAACC,UAAH,IAAiB,OAAO/B,QAAP,KAAoB,UAAzC,EAAqD;AACnD,UAAMgC,GAAG,GAAGF,EAAE,CAACN,KAAH,CAASQ,GAArB;;AACA,UAAMlC,MAAK,GAAGkC,GAAG,CAACC,QAAJ,EAAd;;AACAjC,MAAAA,QAAQ,CAACF,MAAD,EAAQgC,EAAR,CAAR;AACD;AACF,GANsB,CAAvB;;AAOA,MAAII,aAAa,GAAG,CAACN,cAAD,EAAiBF,kBAAjB,CAApB;;AACA,MAAIV,oBAAJ,EAA0B;AACxBkB,IAAAA,aAAa,CAACC,OAAd,CAAsBC,aAAOP,EAAP,CAAU,CAACd,uBAAD,CAAV,CAAtB;AACD;;AACD,MAAIG,iBAAJ,EAAuB;AACrBgB,IAAAA,aAAa,CAACC,OAAd,CAAsBlB,sBAAtB;AACD;;AAED,MAAIR,cAAJ,EAAoB;AAClByB,IAAAA,aAAa,CAACC,OAAd,CAAsB,uBAAY1B,cAAZ,CAAtB;AACD;;AAED,UAAQL,KAAR;AACE,SAAK,OAAL;AACE8B,MAAAA,aAAa,CAACG,IAAd,CAAmBC,8BAAnB;AACA;;AACF,SAAK,MAAL;AACEJ,MAAAA,aAAa,CAACG,IAAd,CAAmBE,qBAAnB;AACA;;AACF;AACEL,MAAAA,aAAa,CAACG,IAAd,CAAmBjC,KAAnB;AACA;AATJ;;AAYA,MAAIS,QAAQ,KAAK,KAAjB,EAAwB;AACtBqB,IAAAA,aAAa,CAACG,IAAd,CAAmBV,iBAAWd,QAAX,CAAoBgB,EAApB,CAAuB,KAAvB,CAAnB;AACD;;AACD,MAAIf,QAAJ,EAAc;AACZoB,IAAAA,aAAa,CAACG,IAAd,CAAmBG,mBAAY1B,QAAZ,CAAqBe,EAArB,CAAwB,IAAxB,CAAnB;AACD;;AAED,MAAI5B,QAAQ,IAAI,OAAOA,QAAP,KAAoB,UAApC,EAAgD;AAC9CiC,IAAAA,aAAa,CAACG,IAAd,CAAmBV,iBAAWC,cAAX,CAA0BC,EAA1B,CAA6B5B,QAA7B,CAAnB;AACD;;AACDiC,EAAAA,aAAa,GAAGA,aAAa,CAACO,MAAd,CAAqBvC,UAArB,CAAhB;AAEA,wBAAU,YAAM;AACd,QAAIkB,SAAS,IAAI,CAACI,KAAlB,EAAyB;AACvB,UAAMkB,YAAY,GAAGF,mBAAYG,MAAZ,CAAmB;AACtCX,QAAAA,GAAG,EAAElC,KADiC;AAEtCC,QAAAA,SAAS,EAATA,SAFsC;AAGtCG,QAAAA,UAAU,EAAEgC;AAH0B,OAAnB,CAArB;;AAKAT,MAAAA,QAAQ,CAACiB,YAAD,CAAR;;AACA,UAAI,CAACpB,IAAL,EAAW;AACT,YAAMsB,WAAW,GAAG,IAAIjB,gBAAJ,CAAe;AACjCH,UAAAA,KAAK,EAAEkB,YAD0B;AAEjCG,UAAAA,MAAM,EAAEzB,SAFyB;AAGjCD,UAAAA,IAAI,EAAJA;AAHiC,SAAf,CAApB;AAKAI,QAAAA,OAAO,CAACqB,WAAD,CAAP;AACD;AACF;;AACD,WAAO,YAAM;AACX,UAAItB,IAAJ,EAAU;AACRC,QAAAA,OAAO,CAACuB,SAAD,CAAP;AACD;AACF,KAJD,CAjBc,CAsBd;AACD,GAvBD,EAuBG,CAAC1B,SAAD,EAAYI,KAAZ,CAvBH;AAyBA,wBACE;AAAA,WAAM,YAAM;AACV,UAAIF,IAAJ,EAAU;AACRA,QAAAA,IAAI,CAACyB,OAAL;AACAxB,QAAAA,OAAO,CAACuB,SAAD,CAAP;AACD;AACF,KALD;AAAA,GADF,EAOE,CAACxB,IAAD,CAPF;AAUA,wBAAU,YAAM;AACd,QAAInB,SAAS,IAAImB,IAAjB,EAAuB;AACrBA,MAAAA,IAAI,CAAC0B,KAAL;AACD;AACF,GAJD,EAIG,CAAC7C,SAAD,EAAYmB,IAAZ,CAJH;AAMA,wBAAU,YAAM;AACd,QAAM2B,YAAY,GAAG3B,IAAI,GAAGA,IAAI,CAACE,KAAL,CAAWQ,GAAX,CAAeC,QAAf,EAAH,GAA+B,EAAxD;;AACA,QAAIX,IAAI,IAAIxB,KAAK,KAAKmD,YAAtB,EAAoC;AAClC3B,MAAAA,IAAI,CAAC4B,QAAL,CAAc;AACZC,QAAAA,OAAO,EAAE;AAAEC,UAAAA,IAAI,EAAE,CAAR;AAAWC,UAAAA,EAAE,EAAEJ,YAAY,CAACK,MAA5B;AAAoCC,UAAAA,MAAM,EAAEzD,KAAK,IAAI;AAArD;AADG,OAAd;AAGD;AACF,GAPD,EAOG,CAACA,KAAD,EAAQwB,IAAR,CAPH;AASA,wBAAU,YAAM;AACd,QAAIA,IAAJ,EAAU;AACRA,MAAAA,IAAI,CAAC4B,QAAL,CAAc;AAAEM,QAAAA,OAAO,EAAEC,mBAAYC,WAAZ,CAAwB7B,EAAxB,CAA2BK,aAA3B;AAAX,OAAd;AACD,KAHa,CAId;;AACD,GALD,EAKG,CACD9B,KADC,EAEDF,UAFC,EAGDG,MAHC,EAIDC,SAJC,EAKDC,SALC,EAMDG,KANC,EAODD,cAPC,EAQDE,QARC,EASDC,QATC,EAUDC,QAVC,EAWDG,oBAXC,EAYDE,iBAZC,CALH;AAoBA,SAAO;AAAEM,IAAAA,KAAK,EAALA,KAAF;AAASC,IAAAA,QAAQ,EAARA,QAAT;AAAmBH,IAAAA,IAAI,EAAJA,IAAnB;AAAyBC,IAAAA,OAAO,EAAPA,OAAzB;AAAkCH,IAAAA,SAAS,EAATA,SAAlC;AAA6CC,IAAAA,YAAY,EAAZA;AAA7C,GAAP;AACD",
72
+ "sources": [
73
+ "../src/useCodeMirror.ts"
74
+ ],
72
75
  "sourcesContent": [
73
- "import { useEffect, useState } from 'react';\nimport { basicSetup } from '@codemirror/basic-setup';\nimport { EditorState, StateEffect } from '@codemirror/state';\nimport { indentWithTab } from '@codemirror/commands';\nimport { EditorView, keymap, ViewUpdate, placeholder } from '@codemirror/view';\nimport { oneDark } from '@codemirror/theme-one-dark';\nimport { ReactCodeMirrorProps } from './';\nimport { defaultLightThemeOption } from './theme/light';\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 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(props.container);\n const [view, setView] = useState<EditorView>();\n const [state, setState] = useState<EditorState>();\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 });\n let getExtensions = [updateListener, defaultThemeOption];\n if (defaultIndentWithTab) {\n getExtensions.unshift(keymap.of([indentWithTab]));\n }\n if (defaultBasicSetup) {\n getExtensions.unshift(basicSetup);\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 }\n }\n return () => {\n if (view) {\n setView(undefined);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [container, state]);\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 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 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 placeholderStr,\n minWidth,\n maxWidth,\n editable,\n defaultIndentWithTab,\n defaultBasicSetup,\n ]);\n\n return { state, setState, view, setView, container, setContainer };\n}\n"
74
- ]
76
+ "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 { oneDark } from '@codemirror/theme-one-dark';\nimport { basicSetup } from './basicSetup';\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 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(props.container);\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 });\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 }\n }\n return () => {\n if (view) {\n setView(undefined);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [container, state]);\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 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 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 placeholderStr,\n minWidth,\n maxWidth,\n editable,\n defaultIndentWithTab,\n defaultBasicSetup,\n ]);\n\n return { state, setState, view, setView, container, setContainer };\n}\n"
77
+ ],
78
+ "mappings": "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"
75
79
  }