@eccenca/gui-elements 24.0.1 → 24.1.0-rc.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.
Files changed (53) hide show
  1. package/CHANGELOG.md +7 -5
  2. package/dist/cjs/cmem/react-flow/StickyNoteModal/StickyNoteModal.js +3 -3
  3. package/dist/cjs/cmem/react-flow/StickyNoteModal/StickyNoteModal.js.map +1 -1
  4. package/dist/cjs/components/AutoSuggestion/ExtendedCodeEditor.js +3 -3
  5. package/dist/cjs/components/AutoSuggestion/ExtendedCodeEditor.js.map +1 -1
  6. package/dist/cjs/extensions/codemirror/CodeMirror.js +58 -6
  7. package/dist/cjs/extensions/codemirror/CodeMirror.js.map +1 -1
  8. package/dist/cjs/extensions/codemirror/debouncedLinter.js +18 -0
  9. package/dist/cjs/extensions/codemirror/debouncedLinter.js.map +1 -0
  10. package/dist/cjs/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js +9 -18
  11. package/dist/cjs/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js.map +1 -1
  12. package/dist/cjs/extensions/codemirror/linters/jsLinter.js +36 -0
  13. package/dist/cjs/extensions/codemirror/linters/jsLinter.js.map +1 -0
  14. package/dist/cjs/extensions/codemirror/linters/turtleLinter.js +81 -0
  15. package/dist/cjs/extensions/codemirror/linters/turtleLinter.js.map +1 -0
  16. package/dist/cjs/extensions/codemirror/types.js +3 -0
  17. package/dist/cjs/extensions/codemirror/types.js.map +1 -0
  18. package/dist/esm/cmem/react-flow/StickyNoteModal/StickyNoteModal.js +4 -4
  19. package/dist/esm/cmem/react-flow/StickyNoteModal/StickyNoteModal.js.map +1 -1
  20. package/dist/esm/components/AutoSuggestion/ExtendedCodeEditor.js +14 -3
  21. package/dist/esm/components/AutoSuggestion/ExtendedCodeEditor.js.map +1 -1
  22. package/dist/esm/extensions/codemirror/CodeMirror.js +58 -7
  23. package/dist/esm/extensions/codemirror/CodeMirror.js.map +1 -1
  24. package/dist/esm/extensions/codemirror/debouncedLinter.js +15 -0
  25. package/dist/esm/extensions/codemirror/debouncedLinter.js.map +1 -0
  26. package/dist/esm/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js +6 -15
  27. package/dist/esm/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.js.map +1 -1
  28. package/dist/esm/extensions/codemirror/linters/jsLinter.js +32 -0
  29. package/dist/esm/extensions/codemirror/linters/jsLinter.js.map +1 -0
  30. package/dist/esm/extensions/codemirror/linters/turtleLinter.js +77 -0
  31. package/dist/esm/extensions/codemirror/linters/turtleLinter.js.map +1 -0
  32. package/dist/esm/extensions/codemirror/types.js +2 -0
  33. package/dist/esm/extensions/codemirror/types.js.map +1 -0
  34. package/dist/types/cmem/react-flow/StickyNoteModal/StickyNoteModal.d.ts +5 -1
  35. package/dist/types/components/AutoSuggestion/ExtendedCodeEditor.d.ts +11 -6
  36. package/dist/types/extensions/codemirror/CodeMirror.d.ts +23 -5
  37. package/dist/types/extensions/codemirror/debouncedLinter.d.ts +4 -0
  38. package/dist/types/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.d.ts +3 -5
  39. package/dist/types/extensions/codemirror/linters/jsLinter.d.ts +5 -0
  40. package/dist/types/extensions/codemirror/linters/turtleLinter.d.ts +5 -0
  41. package/dist/types/extensions/codemirror/types.d.ts +5 -0
  42. package/package.json +6 -5
  43. package/src/cmem/react-flow/StickyNoteModal/StickyNoteModal.tsx +16 -2
  44. package/src/components/AutoSuggestion/ExtendedCodeEditor.tsx +29 -6
  45. package/src/components/TextField/stories/TextField.stories.tsx +2 -1
  46. package/src/extensions/codemirror/CodeMirror.stories.tsx +30 -0
  47. package/src/extensions/codemirror/CodeMirror.tsx +86 -9
  48. package/src/extensions/codemirror/_codemirror.scss +96 -0
  49. package/src/extensions/codemirror/debouncedLinter.ts +26 -0
  50. package/src/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.ts +6 -16
  51. package/src/extensions/codemirror/linters/jsLinter.ts +38 -0
  52. package/src/extensions/codemirror/linters/turtleLinter.ts +102 -0
  53. package/src/extensions/codemirror/types.ts +7 -0
package/CHANGELOG.md CHANGED
@@ -6,8 +6,6 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
- ## [24.0.1] - 2025-02-06
10
-
11
9
  ### Changed
12
10
 
13
11
  - `eslint` libraries were upgraded to v9, so `node` v18.18 or higher is required
@@ -15,9 +13,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this p
15
13
  ### Fixed
16
14
 
17
15
  - `MultiSelect`:
18
- - Old suggestions might be shown for a very short time when typing in a new search query.
19
- - `CodeEditor`:
20
- - Broken highlighting for editor modes that leveraged adapted legacy modes.
16
+ - Old suggestions might be shown for a very short time when typing in a new search query.
21
17
 
22
18
  ## [24.0.0] - 2024-12-17
23
19
 
@@ -68,6 +64,12 @@ This is a major release, and it might be not compatible with your current usage
68
64
  - `htmlContentBlockProps` can now be used to configure the wrapper around the Markdown content
69
65
  - `$eccgui-selector-text-spot-highlight` SCSS config variable to specify selector that is used to create shortly highlighted spots
70
66
  - it is highlighted when the selector is also active local anchor target or if it has the `.eccgui-typography--spothighlight` class attached to it
67
+ - `<CodeEditor />`
68
+ - implemented support for linting which is enabled via `useLinting` prop
69
+ - `turtle` and `javascript` are currently supported languages for linting
70
+ - editor is focused on load if `autoFocus` prop is set to `true`
71
+ - implemented support for `disabled` state in code editor
72
+ - implemented support for `intent` states in code editor
71
73
 
72
74
  ### Fixed
73
75
 
@@ -9,7 +9,7 @@ const getColorConfiguration_1 = __importDefault(require("../../../common/utils/g
9
9
  const extensions_1 = require("../../../extensions");
10
10
  const ReactFlowHotkeyContext_1 = require("../extensions/ReactFlowHotkeyContext");
11
11
  const index_1 = require("./../../../index");
12
- exports.StickyNoteModal = react_1.default.memo(({ metaData, onClose, onSubmit, translate, simpleDialogProps }) => {
12
+ exports.StickyNoteModal = react_1.default.memo(({ metaData, onClose, onSubmit, translate, simpleDialogProps, codeEditorProps }) => {
13
13
  var _a, _b, _c;
14
14
  const refNote = react_1.default.useRef((_a = metaData === null || metaData === void 0 ? void 0 : metaData.note) !== null && _a !== void 0 ? _a : "");
15
15
  const [color, setSelectedColor] = react_1.default.useState((_b = metaData === null || metaData === void 0 ? void 0 : metaData.color) !== null && _b !== void 0 ? _b : "");
@@ -47,9 +47,9 @@ exports.StickyNoteModal = react_1.default.memo(({ metaData, onClose, onSubmit, t
47
47
  htmlFor: "noteinput",
48
48
  text: translate("noteLabel"),
49
49
  } },
50
- react_1.default.createElement(extensions_1.CodeEditor, { name: translate("noteLabel"), id: "sticky-note-input", mode: "markdown", preventLineNumbers: true, onChange: (value) => {
50
+ react_1.default.createElement(extensions_1.CodeEditor, Object.assign({ name: translate("noteLabel"), id: "sticky-note-input", mode: "markdown", preventLineNumbers: true, onChange: (value) => {
51
51
  refNote.current = value;
52
- }, defaultValue: refNote.current })),
52
+ }, defaultValue: refNote.current }, codeEditorProps))),
53
53
  react_1.default.createElement(index_1.FieldItem, { key: "color", labelProps: {
54
54
  htmlFor: "colorinput",
55
55
  text: translate("colorLabel"),
@@ -1 +1 @@
1
- {"version":3,"file":"StickyNoteModal.js","sourceRoot":"","sources":["../../../../../src/cmem/react-flow/StickyNoteModal/StickyNoteModal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StickyNoteModal.js","sourceRoot":"","sources":["../../../../../src/cmem/react-flow/StickyNoteModal/StickyNoteModal.tsx"],"names":[],"mappings":"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"}
@@ -11,16 +11,16 @@ const view_1 = require("@codemirror/view");
11
11
  const constants_1 = require("../../configuration/constants");
12
12
  const CodeMirror_1 = require("../../extensions/codemirror/CodeMirror");
13
13
  /** Supports single-line and multiline editing. */
14
- const ExtendedCodeEditor = ({ multiline = false, initialValue = "", onKeyDown, enableTab = false, mode, setCM, onFocusChange, onMouseDown, onChange, placeholder, onCursorChange, onSelection, }) => {
14
+ const ExtendedCodeEditor = ({ multiline = false, initialValue = "", onKeyDown, enableTab = false, mode, setCM, onFocusChange, onMouseDown, onChange, placeholder, onCursorChange, onSelection, codeEditorProps, }) => {
15
15
  const initialContent = react_1.default.useRef(multiline ? initialValue : initialValue.replace(/[\r\n]/g, " "));
16
16
  const multilineExtensions = multiline
17
17
  ? [(0, view_1.lineNumbers)(), view_1.EditorView.lineWrapping]
18
18
  : [
19
19
  state_1.EditorState === null || state_1.EditorState === void 0 ? void 0 : state_1.EditorState.transactionFilter.of((tr) => (tr.newDoc.lines > 1 ? [] : tr)),
20
20
  ];
21
- return (react_1.default.createElement(CodeMirror_1.CodeEditor, { defaultValue: initialContent.current, setEditorView: setCM, onSelection: onSelection, onMouseDown: onMouseDown, onChange: onChange, placeholder: placeholder, onCursorChange: onCursorChange, onFocusChange: onFocusChange, onKeyDown: onKeyDown, shouldHaveMinimalSetup: false, preventLineNumbers: !multiline, mode: mode, name: "", enableTab: enableTab, additionalExtensions: [...multilineExtensions], outerDivAttributes: {
21
+ return (react_1.default.createElement(CodeMirror_1.CodeEditor, Object.assign({ defaultValue: initialContent.current, setEditorView: setCM, onSelection: onSelection, onMouseDown: onMouseDown, onChange: onChange, placeholder: placeholder, onCursorChange: onCursorChange, onFocusChange: onFocusChange, onKeyDown: onKeyDown, shouldHaveMinimalSetup: false, preventLineNumbers: !multiline, mode: mode, name: "", enableTab: enableTab, additionalExtensions: [...multilineExtensions], outerDivAttributes: {
22
22
  className: `${constants_1.CLASSPREFIX}-${multiline ? "codeeditor" : `singlelinecodeeditor ${core_1.Classes.INPUT}`}`,
23
- } }));
23
+ } }, codeEditorProps)));
24
24
  };
25
25
  exports.ExtendedCodeEditor = ExtendedCodeEditor;
26
26
  exports.default = exports.ExtendedCodeEditor;
@@ -1 +1 @@
1
- {"version":3,"file":"ExtendedCodeEditor.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/ExtendedCodeEditor.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,4CAAmE;AACnE,6CAAgD;AAChD,2CAAiE;AAEjE,6DAAsE;AACtE,uEAAoE;AAwCpE,kDAAkD;AAC3C,MAAM,kBAAkB,GAAG,CAAC,EAC/B,SAAS,GAAG,KAAK,EACjB,YAAY,GAAG,EAAE,EACjB,SAAS,EACT,SAAS,GAAG,KAAK,EACjB,IAAI,EACJ,KAAK,EACL,aAAa,EACb,WAAW,EACX,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,GACW,EAAE,EAAE;IAC1B,MAAM,cAAc,GAAG,eAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IACrG,MAAM,mBAAmB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,kBAAW,GAAE,EAAE,iBAAU,CAAC,YAAY,CAAC;QAC1C,CAAC,CAAC;YACI,mBAAW,aAAX,mBAAW,uBAAX,mBAAW,CAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC7E,CAAC;IAER,OAAO,CACH,8BAAC,uBAAU,IACP,YAAY,EAAE,cAAc,CAAC,OAAO,EACpC,aAAa,EAAE,KAAK,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,KAAK,EAC7B,kBAAkB,EAAE,CAAC,SAAS,EAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,EAAE,EACP,SAAS,EAAE,SAAS,EACpB,oBAAoB,EAAE,CAAC,GAAG,mBAAmB,CAAC,EAC9C,kBAAkB,EAAE;YAChB,SAAS,EAAE,GAAG,uBAAM,IAChB,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,wBAAwB,cAAmB,CAAC,KAAK,EAChF,EAAE;SACL,GACH,CACL,CAAC;AACN,CAAC,CAAC;AA7CW,QAAA,kBAAkB,sBA6C7B;AAEF,kBAAe,0BAAkB,CAAC"}
1
+ {"version":3,"file":"ExtendedCodeEditor.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/ExtendedCodeEditor.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,4CAAmE;AACnE,6CAAgD;AAChD,2CAAiE;AAEjE,6DAAsE;AACtE,uEAAqF;AA6DrF,kDAAkD;AAC3C,MAAM,kBAAkB,GAAG,CAAC,EAC/B,SAAS,GAAG,KAAK,EACjB,YAAY,GAAG,EAAE,EACjB,SAAS,EACT,SAAS,GAAG,KAAK,EACjB,IAAI,EACJ,KAAK,EACL,aAAa,EACb,WAAW,EACX,QAAQ,EACR,WAAW,EACX,cAAc,EACd,WAAW,EACX,eAAe,GACO,EAAE,EAAE;IAC1B,MAAM,cAAc,GAAG,eAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IACrG,MAAM,mBAAmB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,IAAA,kBAAW,GAAE,EAAE,iBAAU,CAAC,YAAY,CAAC;QAC1C,CAAC,CAAC;YACI,mBAAW,aAAX,mBAAW,uBAAX,mBAAW,CAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC7E,CAAC;IAER,OAAO,CACH,8BAAC,uBAAU,kBACP,YAAY,EAAE,cAAc,CAAC,OAAO,EACpC,aAAa,EAAE,KAAK,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,KAAK,EAC7B,kBAAkB,EAAE,CAAC,SAAS,EAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,EAAE,EACP,SAAS,EAAE,SAAS,EACpB,oBAAoB,EAAE,CAAC,GAAG,mBAAmB,CAAC,EAC9C,kBAAkB,EAAE;YAChB,SAAS,EAAE,GAAG,uBAAM,IAChB,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,wBAAwB,cAAmB,CAAC,KAAK,EAChF,EAAE;SACL,IACG,eAAe,EACrB,CACL,CAAC;AACN,CAAC,CAAC;AA/CW,QAAA,kBAAkB,sBA+C7B;AAEF,kBAAe,0BAAkB,CAAC"}
@@ -22,11 +22,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
+ var __rest = (this && this.__rest) || function (s, e) {
26
+ var t = {};
27
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
28
+ t[p] = s[p];
29
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
30
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
31
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
32
+ t[p[i]] = s[p[i]];
33
+ }
34
+ return t;
35
+ };
25
36
  Object.defineProperty(exports, "__esModule", { value: true });
26
37
  exports.CodeEditor = void 0;
27
38
  const react_1 = __importStar(require("react"));
28
39
  const commands_1 = require("@codemirror/commands");
29
40
  const language_1 = require("@codemirror/language");
41
+ const lint_1 = require("@codemirror/lint");
30
42
  const state_1 = require("@codemirror/state");
31
43
  const view_1 = require("@codemirror/view");
32
44
  const codemirror_1 = require("codemirror");
@@ -34,16 +46,34 @@ const markText_1 = require("../../components/AutoSuggestion/extensions/markText"
34
46
  const constants_1 = require("../../configuration/constants");
35
47
  //hooks
36
48
  const useCodemirrorModeExtension_hooks_1 = require("./hooks/useCodemirrorModeExtension.hooks");
49
+ const jsLinter_1 = require("./linters/jsLinter");
50
+ const turtleLinter_1 = require("./linters/turtleLinter");
37
51
  //adaptations
38
52
  const codemirrorTestHelper_1 = require("./tests/codemirrorTestHelper");
39
53
  const addExtensionsFor = (flag, ...extensions) => (flag ? [...extensions] : []);
40
54
  const addToKeyMapConfigFor = (flag, ...keys) => (flag ? [...keys] : []);
41
55
  const addHandlersFor = (flag, handlerName, handler) => flag ? { [handlerName]: handler } : {};
56
+ const ModeLinterMap = new Map([
57
+ ["turtle", [turtleLinter_1.turtleLinter]],
58
+ ["javascript", [jsLinter_1.jsLinter]],
59
+ ]);
42
60
  /**
43
61
  * Includes a code editor, currently we use CodeMirror library as base.
44
62
  */
45
- const CodeEditor = ({ onChange, onSelection, onMouseDown, onFocusChange, onKeyDown, onCursorChange, name, id, mode, preventLineNumbers = false, defaultValue = "", readOnly = false, shouldHaveMinimalSetup = true, wrapLines = false, onScroll, setEditorView, supportCodeFolding = false, shouldHighlightActiveLine = false, outerDivAttributes, tabIntentSize = 2, tabIntentStyle = "tab", placeholder, additionalExtensions = [], tabForceSpaceForModes = ["python", "yaml"], enableTab = false, height, }) => {
63
+ const CodeEditor = (_a) => {
64
+ var { onChange, onSelection, onMouseDown, onFocusChange, onKeyDown, onCursorChange, name, id, mode, preventLineNumbers = false, defaultValue = "", readOnly = false, shouldHaveMinimalSetup = true, wrapLines = false, onScroll, setEditorView, supportCodeFolding = false, shouldHighlightActiveLine = false, outerDivAttributes, tabIntentSize = 2, tabIntentStyle = "tab", placeholder, additionalExtensions = [], tabForceSpaceForModes = ["python", "yaml"], enableTab = false, height, useLinting = false, "data-test-id": dataTestId, autoFocus = false, disabled = false, intent } = _a, otherCodeEditorProps = __rest(_a, ["onChange", "onSelection", "onMouseDown", "onFocusChange", "onKeyDown", "onCursorChange", "name", "id", "mode", "preventLineNumbers", "defaultValue", "readOnly", "shouldHaveMinimalSetup", "wrapLines", "onScroll", "setEditorView", "supportCodeFolding", "shouldHighlightActiveLine", "outerDivAttributes", "tabIntentSize", "tabIntentStyle", "placeholder", "additionalExtensions", "tabForceSpaceForModes", "enableTab", "height", "useLinting", "data-test-id", "autoFocus", "disabled", "intent"]);
46
65
  const parent = (0, react_1.useRef)(undefined);
66
+ const linters = (0, react_1.useMemo)(() => {
67
+ if (!mode) {
68
+ return [];
69
+ }
70
+ const values = [(0, lint_1.lintGutter)()];
71
+ const linters = ModeLinterMap.get(mode);
72
+ if (linters) {
73
+ values.push(...linters.map((linter) => linter()));
74
+ }
75
+ return values;
76
+ }, [mode]);
47
77
  const onKeyDownHandler = (event, view) => {
48
78
  if (onKeyDown && !onKeyDown(event)) {
49
79
  if (event.key === "Enter") {
@@ -78,12 +108,20 @@ const CodeEditor = ({ onChange, onSelection, onMouseDown, onFocusChange, onKeyDo
78
108
  view_1.keymap === null || view_1.keymap === void 0 ? void 0 : view_1.keymap.of(keyMapConfigs),
79
109
  state_1.EditorState === null || state_1.EditorState === void 0 ? void 0 : state_1.EditorState.tabSize.of(tabIntentSize),
80
110
  state_1.EditorState === null || state_1.EditorState === void 0 ? void 0 : state_1.EditorState.readOnly.of(readOnly),
111
+ view_1.EditorView === null || view_1.EditorView === void 0 ? void 0 : view_1.EditorView.editable.of(!disabled),
81
112
  (0, codemirrorTestHelper_1.AdaptedEditorViewDomEventHandlers)(domEventHandlers),
82
113
  view_1.EditorView === null || view_1.EditorView === void 0 ? void 0 : view_1.EditorView.updateListener.of((v) => {
83
114
  var _a;
84
- onChange && onChange(v.state.doc.toString());
115
+ if (disabled)
116
+ return;
117
+ if (onChange) {
118
+ onChange(v.state.doc.toString());
119
+ }
85
120
  if (onSelection)
86
121
  onSelection(v.state.selection.ranges.filter((r) => !r.empty).map(({ from, to }) => ({ from, to })));
122
+ if (onFocusChange) {
123
+ v.view.dom.className += ` ${constants_1.CLASSPREFIX}-intent--${intent}`;
124
+ }
87
125
  if (onCursorChange) {
88
126
  const cursorPosition = (_a = v.state.selection.main.head) !== null && _a !== void 0 ? _a : 0;
89
127
  const editorRect = v.view.dom.getBoundingClientRect();
@@ -101,6 +139,7 @@ const CodeEditor = ({ onChange, onSelection, onMouseDown, onFocusChange, onKeyDo
101
139
  addExtensionsFor(shouldHighlightActiveLine, (0, codemirrorTestHelper_1.adaptedHighlightActiveLine)()),
102
140
  addExtensionsFor(wrapLines, view_1.EditorView === null || view_1.EditorView === void 0 ? void 0 : view_1.EditorView.lineWrapping),
103
141
  addExtensionsFor(supportCodeFolding, (0, codemirrorTestHelper_1.adaptedFoldGutter)(), (0, codemirrorTestHelper_1.adaptedCodeFolding)()),
142
+ addExtensionsFor(useLinting, ...linters),
104
143
  additionalExtensions,
105
144
  ];
106
145
  const view = new codemirrorTestHelper_1.AdaptedEditorView({
@@ -113,16 +152,29 @@ const CodeEditor = ({ onChange, onSelection, onMouseDown, onFocusChange, onKeyDo
113
152
  if (height) {
114
153
  view.dom.style.height = typeof height === "string" ? height : `${height}px`;
115
154
  }
116
- setEditorView && setEditorView(view);
155
+ if (disabled) {
156
+ view.dom.className += ` ${constants_1.CLASSPREFIX}-disabled`;
157
+ }
158
+ if (intent) {
159
+ view.dom.className += ` ${constants_1.CLASSPREFIX}-intent--${intent}`;
160
+ }
161
+ if (autoFocus) {
162
+ view.focus();
163
+ }
164
+ if (setEditorView) {
165
+ setEditorView(view);
166
+ }
117
167
  return () => {
118
168
  view.destroy();
119
- setEditorView && setEditorView(undefined);
169
+ if (setEditorView) {
170
+ setEditorView(undefined);
171
+ }
120
172
  };
121
173
  }, [parent.current, mode, preventLineNumbers]);
122
174
  return (react_1.default.createElement("div", Object.assign({}, outerDivAttributes, {
123
175
  // overwrite/extend some attributes
124
- id: id ? id : name ? `codemirror-${name}` : undefined, ref: parent, "data-test-id": "codemirror-wrapper", className: `${constants_1.CLASSPREFIX}-codeeditor ${constants_1.CLASSPREFIX}-codeeditor--mode-${mode}` +
125
- ((outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className) ? ` ${outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className}` : "") })));
176
+ id: id ? id : name ? `codemirror-${name}` : undefined, ref: parent, "data-test-id": dataTestId ? dataTestId : "codemirror-wrapper", className: `${constants_1.CLASSPREFIX}-codeeditor ${constants_1.CLASSPREFIX}-codeeditor--mode-${mode}` +
177
+ ((outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className) ? ` ${outerDivAttributes === null || outerDivAttributes === void 0 ? void 0 : outerDivAttributes.className}` : "") }, otherCodeEditorProps)));
126
178
  };
127
179
  exports.CodeEditor = CodeEditor;
128
180
  exports.CodeEditor.supportedModes = useCodemirrorModeExtension_hooks_1.supportedCodeEditorModes;
@@ -1 +1 @@
1
- {"version":3,"file":"CodeMirror.js","sourceRoot":"","sources":["../../../../src/extensions/codemirror/CodeMirror.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CodeMirror.js","sourceRoot":"","sources":["../../../../src/extensions/codemirror/CodeMirror.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.debouncedLinter = void 0;
4
+ const lodash_1 = require("lodash");
5
+ const DEBOUNCE_TIME = 500;
6
+ const debouncedLinter = (lintFunction, time = DEBOUNCE_TIME) => {
7
+ const debouncedFn = (0, lodash_1.debounce)((view, resolve) => {
8
+ const diagnostics = lintFunction(view);
9
+ resolve(diagnostics);
10
+ }, time);
11
+ return (view) => {
12
+ return new Promise((resolve) => {
13
+ debouncedFn(view, resolve);
14
+ });
15
+ };
16
+ };
17
+ exports.debouncedLinter = debouncedLinter;
18
+ //# sourceMappingURL=debouncedLinter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debouncedLinter.js","sourceRoot":"","sources":["../../../../src/extensions/codemirror/debouncedLinter.ts"],"names":[],"mappings":";;;AAEA,mCAAkC;AAIlC,MAAM,aAAa,GAAG,GAAG,CAAC;AAEnB,MAAM,eAAe,GAAG,CAAC,YAAoB,EAAE,IAAI,GAAG,aAAa,EAAE,EAAE;IAC1E,MAAM,WAAW,GAAG,IAAA,iBAAQ,EACxB,CACI,IAAgB,EAChB,OAA8F,EAChG,EAAE;QACA,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC,EACD,IAAI,CACP,CAAC;IAEF,OAAO,CAAC,IAAgB,EAAE,EAAE;QACxB,OAAO,IAAI,OAAO,CAA4B,CAAC,OAAO,EAAE,EAAE;YACtD,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC,CAAC;AAjBW,QAAA,eAAe,mBAiB1B"}
@@ -1,21 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useCodeMirrorModeExtension = exports.supportedCodeEditorModes = void 0;
4
- //adapted v6 modes imports
5
- const lang_javascript_1 = require("@codemirror/lang-javascript");
6
4
  const lang_json_1 = require("@codemirror/lang-json");
5
+ //modes imports
7
6
  const lang_markdown_1 = require("@codemirror/lang-markdown");
8
- const lang_sql_1 = require("@codemirror/lang-sql");
9
7
  const lang_xml_1 = require("@codemirror/lang-xml");
10
- const lang_yaml_1 = require("@codemirror/lang-yaml");
11
8
  const language_1 = require("@codemirror/language");
12
- //legacy mode imports
9
+ const javascript_1 = require("@codemirror/legacy-modes/mode/javascript");
13
10
  const jinja2_1 = require("@codemirror/legacy-modes/mode/jinja2");
14
11
  const mathematica_1 = require("@codemirror/legacy-modes/mode/mathematica");
15
12
  const ntriples_1 = require("@codemirror/legacy-modes/mode/ntriples");
16
13
  const python_1 = require("@codemirror/legacy-modes/mode/python");
17
14
  const sparql_1 = require("@codemirror/legacy-modes/mode/sparql");
15
+ const sql_1 = require("@codemirror/legacy-modes/mode/sql");
18
16
  const turtle_1 = require("@codemirror/legacy-modes/mode/turtle");
17
+ const yaml_1 = require("@codemirror/legacy-modes/mode/yaml");
19
18
  //adaptations
20
19
  const codemirrorTestHelper_1 = require("../tests/codemirrorTestHelper");
21
20
  const supportedModes = {
@@ -24,28 +23,20 @@ const supportedModes = {
24
23
  sparql: sparql_1.sparql,
25
24
  turtle: turtle_1.turtle,
26
25
  xml: lang_xml_1.xml,
27
- yaml: lang_yaml_1.yaml,
26
+ yaml: yaml_1.yaml,
28
27
  jinja2: jinja2_1.jinja2,
29
28
  json: lang_json_1.json,
30
29
  ntriples: ntriples_1.ntriples,
31
30
  mathematica: mathematica_1.mathematica,
32
- sql: lang_sql_1.sql,
33
- javascript: lang_javascript_1.javascript,
31
+ sql: sql_1.sql,
32
+ javascript: javascript_1.javascript,
34
33
  };
35
34
  exports.supportedCodeEditorModes = Object.keys(supportedModes);
36
- const v6AdaptedModes = new Map([
37
- ["json", true],
38
- ["markdown", true],
39
- ["xml", true],
40
- ["sql", true],
41
- ["yaml", true],
42
- ["javascript", true],
43
- ]);
44
35
  const useCodeMirrorModeExtension = (mode) => {
45
36
  return !mode
46
37
  ? (0, codemirrorTestHelper_1.adaptedSyntaxHighlighting)(language_1.defaultHighlightStyle)
47
- : v6AdaptedModes.has(mode)
48
- ? (typeof supportedModes[mode] === "function" ? supportedModes[mode] : () => { })()
38
+ : ["json", "markdown", "xml"].includes(mode)
39
+ ? (typeof supportedModes[mode] === "function" ? supportedModes[mode] : () => null)()
49
40
  : language_1.StreamLanguage === null || language_1.StreamLanguage === void 0 ? void 0 : language_1.StreamLanguage.define(supportedModes[mode]);
50
41
  };
51
42
  exports.useCodeMirrorModeExtension = useCodeMirrorModeExtension;
@@ -1 +1 @@
1
- {"version":3,"file":"useCodemirrorModeExtension.hooks.js","sourceRoot":"","sources":["../../../../../src/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.ts"],"names":[],"mappings":";;;AAAA,0BAA0B;AAC1B,iEAAyD;AACzD,qDAA6C;AAC7C,6DAAqD;AACrD,mDAA2C;AAC3C,mDAA2C;AAC3C,qDAA6C;AAC7C,mDAA4G;AAC5G,qBAAqB;AACrB,iEAA8D;AAC9D,2EAAwE;AACxE,qEAAkE;AAClE,iEAA8D;AAC9D,iEAA8D;AAC9D,iEAA8D;AAE9D,aAAa;AACb,wEAA0E;AAE1E,MAAM,cAAc,GAAG;IACnB,QAAQ,EAAR,wBAAQ;IACR,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,GAAG,EAAH,cAAG;IACH,IAAI,EAAJ,gBAAI;IACJ,MAAM,EAAN,eAAM;IACN,IAAI,EAAJ,gBAAI;IACJ,QAAQ,EAAR,mBAAQ;IACR,WAAW,EAAX,yBAAW;IACX,GAAG,EAAH,cAAG;IACH,UAAU,EAAV,4BAAU;CACJ,CAAC;AAEE,QAAA,wBAAwB,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAuC,CAAC;AAG1G,MAAM,cAAc,GAAmD,IAAI,GAAG,CAAC;IAC3E,CAAC,MAAM,EAAE,IAAI,CAAC;IACd,CAAC,UAAU,EAAE,IAAI,CAAC;IAClB,CAAC,KAAK,EAAE,IAAI,CAAC;IACb,CAAC,KAAK,EAAE,IAAI,CAAC;IACb,CAAC,MAAM,EAAE,IAAI,CAAC;IACd,CAAC,YAAY,EAAE,IAAI,CAAC;CACvB,CAAC,CAAC;AAEI,MAAM,0BAA0B,GAAG,CAAC,IAA+B,EAAE,EAAE;IAC1E,OAAO,CAAC,IAAI;QACR,CAAC,CAAC,IAAA,gDAAyB,EAAC,gCAAqB,CAAC;QAClD,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;YAC1B,CAAC,CAAE,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAE,CAAC,CAA2B,EAAE;YAC7G,CAAC,CAAC,yBAAc,aAAd,yBAAc,uBAAd,yBAAc,CAAE,MAAM,CAAC,cAAc,CAAC,IAAI,CAA0B,CAAC,CAAC;AAChF,CAAC,CAAC;AANW,QAAA,0BAA0B,8BAMrC"}
1
+ {"version":3,"file":"useCodemirrorModeExtension.hooks.js","sourceRoot":"","sources":["../../../../../src/extensions/codemirror/hooks/useCodemirrorModeExtension.hooks.ts"],"names":[],"mappings":";;;AAAA,qDAA6C;AAC7C,eAAe;AACf,6DAAqD;AACrD,mDAA2C;AAC3C,mDAA4G;AAC5G,yEAAsE;AACtE,iEAA8D;AAC9D,2EAAwE;AACxE,qEAAkE;AAClE,iEAA8D;AAC9D,iEAA8D;AAC9D,2DAAwD;AACxD,iEAA8D;AAC9D,6DAA0D;AAE1D,aAAa;AACb,wEAA0E;AAE1E,MAAM,cAAc,GAAG;IACnB,QAAQ,EAAR,wBAAQ;IACR,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,GAAG,EAAH,cAAG;IACH,IAAI,EAAJ,WAAI;IACJ,MAAM,EAAN,eAAM;IACN,IAAI,EAAJ,gBAAI;IACJ,QAAQ,EAAR,mBAAQ;IACR,WAAW,EAAX,yBAAW;IACX,GAAG,EAAH,SAAG;IACH,UAAU,EAAV,uBAAU;CACJ,CAAC;AAEE,QAAA,wBAAwB,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAuC,CAAC;AAGnG,MAAM,0BAA0B,GAAG,CAAC,IAA+B,EAAE,EAAE;IAC1E,OAAO,CAAC,IAAI;QACR,CAAC,CAAC,IAAA,gDAAyB,EAAC,gCAAqB,CAAC;QAClD,CAAC,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC5C,CAAC,CAAE,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAA2B,EAAE;YAC/G,CAAC,CAAC,yBAAc,aAAd,yBAAc,uBAAd,yBAAc,CAAE,MAAM,CAAC,cAAc,CAAC,IAAI,CAA0B,CAAC,CAAC;AAChF,CAAC,CAAC;AANW,QAAA,0BAA0B,8BAMrC"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.jsLinter = void 0;
4
+ const lint_1 = require("@codemirror/lint");
5
+ const jshint_1 = require("jshint");
6
+ const lintOptions = {
7
+ esversion: 11,
8
+ browser: true,
9
+ };
10
+ /**
11
+ * Sets up the javascript linter. Documentation: https://codemirror.net/examples/lint/
12
+ */
13
+ const jsLinter = () => {
14
+ return (0, lint_1.linter)((view) => {
15
+ var _a;
16
+ const diagnostics = [];
17
+ const codeText = view.state.doc.toJSON();
18
+ (0, jshint_1.JSHINT)(codeText, lintOptions);
19
+ const errors = (_a = jshint_1.JSHINT === null || jshint_1.JSHINT === void 0 ? void 0 : jshint_1.JSHINT.data()) === null || _a === void 0 ? void 0 : _a.errors;
20
+ if (errors && errors.length > 0) {
21
+ errors.forEach((error) => {
22
+ const selectedLine = view.state.doc.line(error.line);
23
+ const diagnostic = {
24
+ from: selectedLine.from,
25
+ to: selectedLine.to,
26
+ severity: "error",
27
+ message: error.reason,
28
+ };
29
+ diagnostics.push(diagnostic);
30
+ });
31
+ }
32
+ return diagnostics;
33
+ });
34
+ };
35
+ exports.jsLinter = jsLinter;
36
+ //# sourceMappingURL=jsLinter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsLinter.js","sourceRoot":"","sources":["../../../../../src/extensions/codemirror/linters/jsLinter.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AACtD,mCAA0C;AAI1C,MAAM,WAAW,GAAG;IAChB,SAAS,EAAE,EAAE;IACb,OAAO,EAAE,IAAI;CAChB,CAAC;AAEF;;GAEG;AACI,MAAM,QAAQ,GAAqB,GAAG,EAAE;IAC3C,OAAO,IAAA,aAAM,EAAC,CAAC,IAAI,EAAE,EAAE;;QACnB,MAAM,WAAW,GAAsB,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACzC,IAAA,eAAM,EAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAA,eAAM,aAAN,eAAM,uBAAN,eAAM,CAAE,IAAI,EAAE,0CAAE,MAAM,CAAC;QAEtC,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACrB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAErD,MAAM,UAAU,GAAe;oBAC3B,IAAI,EAAE,YAAY,CAAC,IAAI;oBACvB,EAAE,EAAE,YAAY,CAAC,EAAE;oBACnB,QAAQ,EAAE,OAAO;oBACjB,OAAO,EAAE,KAAK,CAAC,MAAM;iBACxB,CAAC;gBAEF,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,WAAW,CAAC;IACvB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAxBW,QAAA,QAAQ,YAwBnB"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.turtleLinter = void 0;
4
+ const lint_1 = require("@codemirror/lint");
5
+ const n3_1 = require("n3");
6
+ const debouncedLinter_1 = require("../debouncedLinter");
7
+ const parser = new n3_1.Parser();
8
+ const EMPTY_RESOURCE = "<>";
9
+ const getError = (message, view) => {
10
+ const lineMatch = message.match(/(?<=line )\d{1,}/);
11
+ const valueMatch = message.match(/"([^"]*)"/);
12
+ const lineNumber = lineMatch ? Number(lineMatch[0]) : 1;
13
+ // the [1] index is used to get the caputre group
14
+ const errorContent = valueMatch && valueMatch[1];
15
+ const line = view.state.doc.line(lineNumber);
16
+ const position = line.text.search(errorContent !== null && errorContent !== void 0 ? errorContent : /\S/);
17
+ const from = line.from + position;
18
+ const errorLength = errorContent === null || errorContent === void 0 ? void 0 : errorContent.length;
19
+ return { from, to: errorLength ? from + errorLength : line.to };
20
+ };
21
+ const getQuadError = (view) => {
22
+ const lines = view.state.doc.toJSON();
23
+ for (let i = 0; i < lines.length; i += 1) {
24
+ const input = lines[i].trim();
25
+ if (!input) {
26
+ continue;
27
+ }
28
+ if (input.includes(EMPTY_RESOURCE)) {
29
+ // i + 1 is used here because the codemirror uses 1-indexes
30
+ const line = view.state.doc.line(i + 1);
31
+ const position = line.text.search(EMPTY_RESOURCE);
32
+ const from = line.from + position;
33
+ return {
34
+ from,
35
+ to: from + EMPTY_RESOURCE.length,
36
+ };
37
+ }
38
+ }
39
+ return { from: 0, to: view.state.doc.length };
40
+ };
41
+ const n3Linter = (view) => {
42
+ const diagnostics = [];
43
+ const value = view.state.doc.toString();
44
+ try {
45
+ const quads = parser.parse(value);
46
+ quads.forEach((quad) => {
47
+ if (!quad.subject || !quad.predicate || !quad.object) {
48
+ const { from, to } = getQuadError(view);
49
+ view.dispatch({
50
+ scrollIntoView: true,
51
+ });
52
+ diagnostics.push({
53
+ from,
54
+ to,
55
+ severity: "error",
56
+ message: `Invalid RDF quad:\n\nsubject: ${quad.subject}\npredicate: ${quad.predicate}\nobject: ${quad.object}`,
57
+ });
58
+ }
59
+ });
60
+ }
61
+ catch (error) {
62
+ const { message } = error;
63
+ const { from, to } = getError(message, view);
64
+ view.dispatch({
65
+ scrollIntoView: true,
66
+ });
67
+ diagnostics.push({
68
+ from,
69
+ to,
70
+ severity: "error",
71
+ message: error.message,
72
+ });
73
+ }
74
+ return diagnostics;
75
+ };
76
+ /**
77
+ * Sets up the turtle linter. Documentation: https://codemirror.net/examples/lint/
78
+ */
79
+ const turtleLinter = () => (0, lint_1.linter)((0, debouncedLinter_1.debouncedLinter)(n3Linter));
80
+ exports.turtleLinter = turtleLinter;
81
+ //# sourceMappingURL=turtleLinter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turtleLinter.js","sourceRoot":"","sources":["../../../../../src/extensions/codemirror/linters/turtleLinter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/extensions/codemirror/types.ts"],"names":[],"mappings":""}
@@ -29,10 +29,10 @@ import React from "react";
29
29
  import getColorConfiguration from "../../../common/utils/getColorConfiguration.js";
30
30
  import { CodeEditor } from "../../../extensions/index.js";
31
31
  import { ReactFlowHotkeyContext } from "../extensions/ReactFlowHotkeyContext.js";
32
- import { Button, FieldItem, Icon, SimpleDialog, Tag, TagList } from "./../../../index.js";
32
+ import { Button, FieldItem, Icon, SimpleDialog, Tag, TagList, } from "./../../../index.js";
33
33
  export var StickyNoteModal = React.memo(function (_a) {
34
34
  var _b, _c, _d;
35
- var metaData = _a.metaData, onClose = _a.onClose, onSubmit = _a.onSubmit, translate = _a.translate, simpleDialogProps = _a.simpleDialogProps;
35
+ var metaData = _a.metaData, onClose = _a.onClose, onSubmit = _a.onSubmit, translate = _a.translate, simpleDialogProps = _a.simpleDialogProps, codeEditorProps = _a.codeEditorProps;
36
36
  var refNote = React.useRef((_b = metaData === null || metaData === void 0 ? void 0 : metaData.note) !== null && _b !== void 0 ? _b : "");
37
37
  var _e = __read(React.useState((_c = metaData === null || metaData === void 0 ? void 0 : metaData.color) !== null && _c !== void 0 ? _c : ""), 2), color = _e[0], setSelectedColor = _e[1];
38
38
  var noteColors = Object.entries(getColorConfiguration("stickynotes")).map(function (_a) {
@@ -73,9 +73,9 @@ export var StickyNoteModal = React.memo(function (_a) {
73
73
  htmlFor: "noteinput",
74
74
  text: translate("noteLabel"),
75
75
  } },
76
- React.createElement(CodeEditor, { name: translate("noteLabel"), id: "sticky-note-input", mode: "markdown", preventLineNumbers: true, onChange: function (value) {
76
+ React.createElement(CodeEditor, __assign({ name: translate("noteLabel"), id: "sticky-note-input", mode: "markdown", preventLineNumbers: true, onChange: function (value) {
77
77
  refNote.current = value;
78
- }, defaultValue: refNote.current })),
78
+ }, defaultValue: refNote.current }, codeEditorProps))),
79
79
  React.createElement(FieldItem, { key: "color", labelProps: {
80
80
  htmlFor: "colorinput",
81
81
  text: translate("colorLabel"),
@@ -1 +1 @@
1
- {"version":3,"file":"StickyNoteModal.js","sourceRoot":"","sources":["../../../../../src/cmem/react-flow/StickyNoteModal/StickyNoteModal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StickyNoteModal.js","sourceRoot":"","sources":["../../../../../src/cmem/react-flow/StickyNoteModal/StickyNoteModal.tsx"],"names":[],"mappings":"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"}
@@ -1,3 +1,14 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
1
12
  var __read = (this && this.__read) || function (o, n) {
2
13
  var m = typeof Symbol === "function" && o[Symbol.iterator];
3
14
  if (!m) return o;
@@ -31,16 +42,16 @@ import { CLASSPREFIX as eccgui } from "../../configuration/constants.js";
31
42
  import { CodeEditor } from "../../extensions/codemirror/CodeMirror.js";
32
43
  /** Supports single-line and multiline editing. */
33
44
  export var ExtendedCodeEditor = function (_a) {
34
- var _b = _a.multiline, multiline = _b === void 0 ? false : _b, _c = _a.initialValue, initialValue = _c === void 0 ? "" : _c, onKeyDown = _a.onKeyDown, _d = _a.enableTab, enableTab = _d === void 0 ? false : _d, mode = _a.mode, setCM = _a.setCM, onFocusChange = _a.onFocusChange, onMouseDown = _a.onMouseDown, onChange = _a.onChange, placeholder = _a.placeholder, onCursorChange = _a.onCursorChange, onSelection = _a.onSelection;
45
+ var _b = _a.multiline, multiline = _b === void 0 ? false : _b, _c = _a.initialValue, initialValue = _c === void 0 ? "" : _c, onKeyDown = _a.onKeyDown, _d = _a.enableTab, enableTab = _d === void 0 ? false : _d, mode = _a.mode, setCM = _a.setCM, onFocusChange = _a.onFocusChange, onMouseDown = _a.onMouseDown, onChange = _a.onChange, placeholder = _a.placeholder, onCursorChange = _a.onCursorChange, onSelection = _a.onSelection, codeEditorProps = _a.codeEditorProps;
35
46
  var initialContent = React.useRef(multiline ? initialValue : initialValue.replace(/[\r\n]/g, " "));
36
47
  var multilineExtensions = multiline
37
48
  ? [lineNumbers(), EditorView.lineWrapping]
38
49
  : [
39
50
  EditorState === null || EditorState === void 0 ? void 0 : EditorState.transactionFilter.of(function (tr) { return (tr.newDoc.lines > 1 ? [] : tr); }),
40
51
  ];
41
- return (React.createElement(CodeEditor, { defaultValue: initialContent.current, setEditorView: setCM, onSelection: onSelection, onMouseDown: onMouseDown, onChange: onChange, placeholder: placeholder, onCursorChange: onCursorChange, onFocusChange: onFocusChange, onKeyDown: onKeyDown, shouldHaveMinimalSetup: false, preventLineNumbers: !multiline, mode: mode, name: "", enableTab: enableTab, additionalExtensions: __spreadArray([], __read(multilineExtensions), false), outerDivAttributes: {
52
+ return (React.createElement(CodeEditor, __assign({ defaultValue: initialContent.current, setEditorView: setCM, onSelection: onSelection, onMouseDown: onMouseDown, onChange: onChange, placeholder: placeholder, onCursorChange: onCursorChange, onFocusChange: onFocusChange, onKeyDown: onKeyDown, shouldHaveMinimalSetup: false, preventLineNumbers: !multiline, mode: mode, name: "", enableTab: enableTab, additionalExtensions: __spreadArray([], __read(multilineExtensions), false), outerDivAttributes: {
42
53
  className: "".concat(eccgui, "-").concat(multiline ? "codeeditor" : "singlelinecodeeditor ".concat(BlueprintClassNames.INPUT)),
43
- } }));
54
+ } }, codeEditorProps)));
44
55
  };
45
56
  export default ExtendedCodeEditor;
46
57
  //# sourceMappingURL=ExtendedCodeEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExtendedCodeEditor.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/ExtendedCodeEditor.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAQ,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AAwCpE,kDAAkD;AAClD,MAAM,CAAC,IAAM,kBAAkB,GAAG,UAAC,EAaT;QAZtB,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,oBAAiB,EAAjB,YAAY,mBAAG,EAAE,KAAA,EACjB,SAAS,eAAA,EACT,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,aAAa,mBAAA,EACb,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,cAAc,oBAAA,EACd,WAAW,iBAAA;IAEX,IAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IACrG,IAAM,mBAAmB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,YAAY,CAAC;QAC1C,CAAC,CAAC;YACI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,iBAAiB,CAAC,EAAE,CAAC,UAAC,EAAE,IAAK,OAAA,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAA/B,CAA+B,CAAC;SAC7E,CAAC;IAER,OAAO,CACH,oBAAC,UAAU,IACP,YAAY,EAAE,cAAc,CAAC,OAAO,EACpC,aAAa,EAAE,KAAK,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,KAAK,EAC7B,kBAAkB,EAAE,CAAC,SAAS,EAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,EAAE,EACP,SAAS,EAAE,SAAS,EACpB,oBAAoB,2BAAM,mBAAmB,WAC7C,kBAAkB,EAAE;YAChB,SAAS,EAAE,UAAG,MAAM,cAChB,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,+BAAwB,mBAAmB,CAAC,KAAK,CAAE,CAChF;SACL,GACH,CACL,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"ExtendedCodeEditor.js","sourceRoot":"","sources":["../../../../src/components/AutoSuggestion/ExtendedCodeEditor.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAQ,MAAM,kBAAkB,CAAC;AAEjE,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,UAAU,EAAmB,MAAM,wCAAwC,CAAC;AA6DrF,kDAAkD;AAClD,MAAM,CAAC,IAAM,kBAAkB,GAAG,UAAC,EAcT;QAbtB,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,oBAAiB,EAAjB,YAAY,mBAAG,EAAE,KAAA,EACjB,SAAS,eAAA,EACT,iBAAiB,EAAjB,SAAS,mBAAG,KAAK,KAAA,EACjB,IAAI,UAAA,EACJ,KAAK,WAAA,EACL,aAAa,mBAAA,EACb,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,WAAW,iBAAA,EACX,cAAc,oBAAA,EACd,WAAW,iBAAA,EACX,eAAe,qBAAA;IAEf,IAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;IACrG,IAAM,mBAAmB,GAAG,SAAS;QACjC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,UAAU,CAAC,YAAY,CAAC;QAC1C,CAAC,CAAC;YACI,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,iBAAiB,CAAC,EAAE,CAAC,UAAC,EAAE,IAAK,OAAA,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAA/B,CAA+B,CAAC;SAC7E,CAAC;IAER,OAAO,CACH,oBAAC,UAAU,aACP,YAAY,EAAE,cAAc,CAAC,OAAO,EACpC,aAAa,EAAE,KAAK,EACpB,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,cAAc,EAC9B,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,KAAK,EAC7B,kBAAkB,EAAE,CAAC,SAAS,EAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAC,EAAE,EACP,SAAS,EAAE,SAAS,EACpB,oBAAoB,2BAAM,mBAAmB,WAC7C,kBAAkB,EAAE;YAChB,SAAS,EAAE,UAAG,MAAM,cAChB,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,+BAAwB,mBAAmB,CAAC,KAAK,CAAE,CAChF;SACL,IACG,eAAe,EACrB,CACL,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}