@deephaven/console 0.22.3-beta.15 → 0.22.3-beta.21
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/dist/Console.d.ts +3 -3
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +9 -114
- package/dist/Console.js.map +1 -1
- package/dist/ConsoleInput.js +14 -90
- package/dist/ConsoleInput.js.map +1 -1
- package/dist/ConsoleMenu.js +6 -25
- package/dist/ConsoleMenu.js.map +1 -1
- package/dist/ConsolePropTypes.js.map +1 -1
- package/dist/ConsoleShortcuts.js +1 -1
- package/dist/ConsoleShortcuts.js.map +1 -1
- package/dist/ConsoleStatusBar.js +0 -16
- package/dist/ConsoleStatusBar.js.map +1 -1
- package/dist/HeapUsage.d.ts +1 -1
- package/dist/HeapUsage.d.ts.map +1 -1
- package/dist/HeapUsage.js +2 -18
- package/dist/HeapUsage.js.map +1 -1
- package/dist/StoragePropTypes.js.map +1 -1
- package/dist/command-history/CommandHistory.js +1 -49
- package/dist/command-history/CommandHistory.js.map +1 -1
- package/dist/command-history/CommandHistoryActions.js +0 -6
- package/dist/command-history/CommandHistoryActions.js.map +1 -1
- package/dist/command-history/CommandHistoryItem.d.ts +4 -4
- package/dist/command-history/CommandHistoryItem.d.ts.map +1 -1
- package/dist/command-history/CommandHistoryItem.js +3 -6
- package/dist/command-history/CommandHistoryItem.js.map +1 -1
- package/dist/command-history/CommandHistoryItemTooltip.d.ts +1 -1
- package/dist/command-history/CommandHistoryItemTooltip.d.ts.map +1 -1
- package/dist/command-history/CommandHistoryItemTooltip.js +3 -28
- package/dist/command-history/CommandHistoryItemTooltip.js.map +1 -1
- package/dist/command-history/CommandHistoryViewportUpdater.js +0 -3
- package/dist/command-history/CommandHistoryViewportUpdater.js.map +1 -1
- package/dist/command-history/index.js.map +1 -1
- package/dist/common/Code.js +2 -11
- package/dist/common/Code.js.map +1 -1
- package/dist/common/ConsoleConstants.js +0 -2
- package/dist/common/ConsoleConstants.js.map +1 -1
- package/dist/common/ConsoleUtils.js +4 -19
- package/dist/common/ConsoleUtils.js.map +1 -1
- package/dist/common/ObjectIcon.d.ts +1 -1
- package/dist/common/ObjectIcon.d.ts.map +1 -1
- package/dist/common/ObjectIcon.js +2 -8
- package/dist/common/ObjectIcon.js.map +1 -1
- package/dist/common/index.js.map +1 -1
- package/dist/console-history/ConsoleHistory.js +0 -8
- package/dist/console-history/ConsoleHistory.js.map +1 -1
- package/dist/console-history/ConsoleHistoryItem.js +2 -25
- package/dist/console-history/ConsoleHistoryItem.js.map +1 -1
- package/dist/console-history/ConsoleHistoryItemResult.d.ts +6 -6
- package/dist/console-history/ConsoleHistoryItemResult.d.ts.map +1 -1
- package/dist/console-history/ConsoleHistoryItemResult.js +2 -4
- package/dist/console-history/ConsoleHistoryItemResult.js.map +1 -1
- package/dist/console-history/ConsoleHistoryResultErrorMessage.js +0 -22
- package/dist/console-history/ConsoleHistoryResultErrorMessage.js.map +1 -1
- package/dist/console-history/ConsoleHistoryResultInProgress.js +0 -13
- package/dist/console-history/ConsoleHistoryResultInProgress.js.map +1 -1
- package/dist/console-history/index.js.map +1 -1
- package/dist/csv/CsvFormats.js +0 -9
- package/dist/csv/CsvFormats.js.map +1 -1
- package/dist/csv/CsvInputBar.js +18 -51
- package/dist/csv/CsvInputBar.js.map +1 -1
- package/dist/csv/CsvOverlay.d.ts +2 -2
- package/dist/csv/CsvOverlay.d.ts.map +1 -1
- package/dist/csv/CsvOverlay.js +1 -41
- package/dist/csv/CsvOverlay.js.map +1 -1
- package/dist/csv/CsvParser.js +10 -73
- package/dist/csv/CsvParser.js.map +1 -1
- package/dist/csv/CsvTypeParser.js +15 -85
- package/dist/csv/CsvTypeParser.js.map +1 -1
- package/dist/csv/NewTableColumnTypes.js +0 -9
- package/dist/csv/NewTableColumnTypes.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/log/LogLevel.js.map +1 -1
- package/dist/log/LogLevelMenuItem.js +0 -5
- package/dist/log/LogLevelMenuItem.js.map +1 -1
- package/dist/log/LogView.js +16 -106
- package/dist/log/LogView.js.map +1 -1
- package/dist/monaco/MonacoCompletionProvider.js +2 -14
- package/dist/monaco/MonacoCompletionProvider.js.map +1 -1
- package/dist/monaco/MonacoUtils.d.ts.map +1 -1
- package/dist/monaco/MonacoUtils.js +21 -49
- package/dist/monaco/MonacoUtils.js.map +1 -1
- package/dist/monaco/index.js.map +1 -1
- package/dist/monaco/lang/db.d.ts.map +1 -1
- package/dist/monaco/lang/db.js +22 -13
- package/dist/monaco/lang/db.js.map +1 -1
- package/dist/monaco/lang/groovy.d.ts.map +1 -1
- package/dist/monaco/lang/groovy.js +28 -15
- package/dist/monaco/lang/groovy.js.map +1 -1
- package/dist/monaco/lang/log.js +1 -0
- package/dist/monaco/lang/log.js.map +1 -1
- package/dist/monaco/lang/python.d.ts.map +1 -1
- package/dist/monaco/lang/python.js +30 -16
- package/dist/monaco/lang/python.js.map +1 -1
- package/dist/monaco/lang/scala.js +26 -13
- package/dist/monaco/lang/scala.js.map +1 -1
- package/dist/notebook/Editor.js +2 -21
- package/dist/notebook/Editor.js.map +1 -1
- package/dist/notebook/ScriptEditor.d.ts +1 -1
- package/dist/notebook/ScriptEditor.d.ts.map +1 -1
- package/dist/notebook/ScriptEditor.js +0 -57
- package/dist/notebook/ScriptEditor.js.map +1 -1
- package/dist/notebook/ScriptEditorUtils.js +1 -7
- package/dist/notebook/ScriptEditorUtils.js.map +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scala.js","names":["id","conf","wordPattern","comments","lineComment","blockComment","brackets","autoClosingPairs","open","close","surroundingPairs","folding","markers","start","RegExp","end","language","keywords","softKeywords","constants","modifiers","softModifiers","name","type","symbols","digits","hexdigits","escapes","fstring_conv","tokenizer","root","token","bracket","next","cases","include","import","allowMethod","comment","case","vardef","string","switchTo","stringt","fstring","fstringt","sstring","sstringt","interp","rawstring","rawstringt","whitespace","lang"],"sources":["../../../src/monaco/lang/scala.ts"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * The MIT License (MIT)\n *\n * Copyright (c) Microsoft Corporation\n *\n * Permission is hereby granted, free of charge, to any person obtaining a\n * copy of this software and associated documentation files (the \"Software\"),\n * to deal in the Software without restriction, including without limitation\n * the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the\n * Software is furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included\n * in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\n * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\n * DEALINGS IN THE SOFTWARE.\n *\n * The base version of this file is licensed under the MIT License (as above)\n * and was sourced from microsoft's monaco languages repository:\n * - https://github.com/microsoft/monaco-languages/blob/main/src/scala/scala.ts\n *--------------------------------------------------------------------------------------------*/\n\nimport * as monaco from 'monaco-editor';\nimport { Language } from './Language';\n\nconst id = 'scala';\n\nconst conf: monaco.languages.LanguageConfiguration = {\n /*\n * `...` is allowed as an identifier.\n * $ is allowed in identifiers.\n * unary_<op> is allowed as an identifier.\n * <name>_= is allowed as an identifier.\n */\n wordPattern: /(unary_[@~!#%^&*()\\-=+\\\\|:<>/?]+)|([a-zA-Z_$][\\w$]*?_=)|(`[^`]+`)|([a-zA-Z_$][\\w$]*)/g,\n comments: {\n lineComment: '//',\n blockComment: ['/*', '*/'],\n },\n brackets: [\n ['{', '}'],\n ['[', ']'],\n ['(', ')'],\n ],\n autoClosingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n surroundingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n folding: {\n markers: {\n start: new RegExp('^\\\\s*//\\\\s*(?:(?:#?region\\\\b)|(?:<editor-fold\\\\b))'),\n end: new RegExp('^\\\\s*//\\\\s*(?:(?:#?endregion\\\\b)|(?:</editor-fold>))'),\n },\n },\n};\n\nconst language: monaco.languages.IMonarchLanguage = {\n // tokenPostfix: '.scala',\n\n // We can't easily add everything from Dotty, but we can at least add some of its keywords\n keywords: [\n 'asInstanceOf',\n 'catch',\n 'class',\n 'classOf',\n 'def',\n 'do',\n 'else',\n 'extends',\n 'finally',\n 'for',\n 'foreach',\n 'forSome',\n 'if',\n 'import',\n 'isInstanceOf',\n 'macro',\n 'match',\n 'new',\n 'object',\n 'package',\n 'return',\n 'throw',\n 'trait',\n 'try',\n 'type',\n 'until',\n 'val',\n 'var',\n 'while',\n 'with',\n 'yield',\n\n // Dotty-specific:\n 'given',\n 'enum',\n 'then',\n ],\n\n // Dotty-specific:\n softKeywords: ['as', 'export', 'extension', 'end', 'derives', 'on'],\n\n constants: ['true', 'false', 'null', 'this', 'super'],\n\n modifiers: [\n 'abstract',\n 'final',\n 'implicit',\n 'lazy',\n 'override',\n 'private',\n 'protected',\n 'sealed',\n ],\n\n // Dotty-specific:\n softModifiers: ['inline', 'opaque', 'open', 'transparent', 'using'],\n\n name: /(?:[a-z_$][\\w$]*|`[^`]+`)/,\n type: /(?:[A-Z][\\w$]*)/,\n\n // we include these common regular expressions\n symbols: /[=><!~?:&|+\\-*/^\\\\%@#]+/,\n digits: /\\d+(_+\\d+)*/,\n hexdigits: /[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,\n\n // C# style strings\n escapes: /\\\\(?:[btnfr\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\n\n fstring_conv: /[bBhHsScCdoxXeEfgGaAt]|[Tn](?:[HIklMSLNpzZsQ]|[BbhAaCYyjmde]|[RTrDFC])/,\n\n // The main tokenizer for our languages\n tokenizer: {\n root: [\n // strings\n [\n /\\braw\"\"\"/,\n { token: 'string.quote', bracket: '@open', next: '@rawstringt' },\n ],\n [\n /\\braw\"/,\n { token: 'string.quote', bracket: '@open', next: '@rawstring' },\n ],\n\n [\n /\\bs\"\"\"/,\n { token: 'string.quote', bracket: '@open', next: '@sstringt' },\n ],\n [/\\bs\"/, { token: 'string.quote', bracket: '@open', next: '@sstring' }],\n [\n /\\bf\"\"\"\"/,\n { token: 'string.quote', bracket: '@open', next: '@fstringt' },\n ],\n [/\\bf\"/, { token: 'string.quote', bracket: '@open', next: '@fstring' }],\n [/\"\"\"/, { token: 'string.quote', bracket: '@open', next: '@stringt' }],\n [/\"/, { token: 'string.quote', bracket: '@open', next: '@string' }],\n\n // numbers\n [/(@digits)[eE]([-+]?(@digits))?[fFdD]?/, 'number.float', '@allowMethod'],\n [\n /(@digits)\\.(@digits)([eE][-+]?(@digits))?[fFdD]?/,\n 'number.float',\n '@allowMethod',\n ],\n [/0[xX](@hexdigits)[Ll]?/, 'number.hex', '@allowMethod'],\n [/(@digits)[fFdD]/, 'number.float', '@allowMethod'],\n [/(@digits)[lL]?/, 'number', '@allowMethod'],\n [/\\b_\\*/, 'key'],\n [/\\b(_)\\b/, 'keyword', '@allowMethod'],\n\n // identifiers and keywords\n [/\\bimport\\b/, 'keyword', '@import'],\n [/\\b(case)([ \\t]+)(class)\\b/, ['keyword.modifier', 'white', 'keyword']],\n [/\\bcase\\b/, 'keyword', '@case'],\n [/\\bva[lr]\\b/, 'keyword', '@vardef'],\n [\n /\\b(def)([ \\t]+)((?:unary_)?@symbols|@name(?:_=)|@name)/,\n ['keyword', 'white', 'identifier'],\n ],\n [/@name(?=[ \\t]*:(?!:))/, 'variable'],\n [\n /(\\.)(@name|@symbols)/,\n [\n { token: 'operator' },\n {\n token: '@rematch',\n next: '@allowMethod',\n },\n ],\n ],\n [/([{(])(\\s*)(@name(?=\\s*=>))/, ['@brackets', 'white', 'variable']],\n [\n /@name/,\n {\n cases: {\n '@keywords': 'keyword',\n '@softKeywords': 'keyword',\n '@modifiers': 'keyword.modifier',\n '@softModifiers': 'keyword.modifier',\n '@constants': {\n token: 'constant',\n next: '@allowMethod',\n },\n '@default': {\n token: 'identifier',\n next: '@allowMethod',\n },\n },\n },\n ],\n [/@type/, 'type', '@allowMethod'],\n\n // whitespace\n { include: '@whitespace' },\n\n // @ annotations.\n [/@[a-zA-Z_$][\\w$]*(?:\\.[a-zA-Z_$][\\w$]*)*/, 'annotation'],\n\n // delimiters and operators\n [/[{(]/, '@brackets'],\n [/[})]/, '@brackets', '@allowMethod'],\n [/\\[/, 'operator.square'],\n [/](?!\\s*(?:va[rl]|def|type)\\b)/, 'operator.square', '@allowMethod'],\n [/]/, 'operator.square'],\n [/([=-]>|<-|>:|<:|:>|<%)(?=[\\s\\w()[\\]{},.\"'`])/, 'keyword'],\n [/@symbols/, 'operator'],\n\n // delimiter: after number because of .\\d floats\n [/[;,.]/, 'delimiter'],\n\n // symbols\n [/'[a-zA-Z$][\\w$]*(?!')/, 'attribute.name'],\n\n // characters\n [/'[^\\\\']'/, 'string', '@allowMethod'],\n [\n /(')(@escapes)(')/,\n [\n { token: 'string' },\n { token: 'string.escape' },\n {\n token: 'string',\n next: '@allowMethod',\n },\n ],\n ],\n [/'/, 'string.invalid'],\n ],\n\n import: [\n [/;/, 'delimiter', '@pop'],\n [/^|$/, '', '@pop'],\n [/[ \\t]+/, 'white'],\n [/[\\n\\r]+/, 'white', '@pop'],\n [/\\/\\*/, 'comment', '@comment'],\n [/@name|@type/, 'type'],\n [/[(){}]/, '@brackets'],\n [/[[\\]]/, 'operator.square'],\n [/[.,]/, 'delimiter'],\n ],\n\n allowMethod: [\n [/^|$/, '', '@pop'],\n [/[ \\t]+/, 'white'],\n [/[\\n\\r]+/, 'white', '@pop'],\n [/\\/\\*/, 'comment', '@comment'],\n [/(?==>[\\s\\w([{])/, 'keyword', '@pop'],\n [\n /(@name|@symbols)(?=[ \\t]*[[({\"'`]|[ \\t]+(?:[+-]?\\.?\\d|\\w))/,\n {\n cases: {\n '@keywords': { token: 'keyword', next: '@pop' },\n '->|<-|>:|<:|<%': { token: 'keyword', next: '@pop' },\n '@default': { token: '@rematch', next: '@pop' },\n },\n },\n ],\n ['', '', '@pop'],\n ],\n\n comment: [\n [/[^/*]+/, 'comment'],\n [/\\/\\*/, 'comment', '@push'], // nested comment\n [/\\*\\//, 'comment', '@pop'],\n [/[/*]/, 'comment'],\n ],\n\n case: [\n [/\\b_\\*/, 'key'],\n [/\\b(_|true|false|null|this|super)\\b/, 'keyword', '@allowMethod'],\n [/\\bif\\b|=>/, 'keyword', '@pop'],\n [/`[^`]+`/, 'identifier', '@allowMethod'],\n [/@name/, 'variable', '@allowMethod'],\n [/:::?|\\||@(?![a-z_$])/, 'keyword'],\n { include: '@root' },\n ],\n\n vardef: [\n [/\\b_\\*/, 'key'],\n [/\\b(_|true|false|null|this|super)\\b/, 'keyword'],\n [/@name/, 'variable'],\n [/:::?|\\||@(?![a-z_$])/, 'keyword'],\n [/=|:(?!:)/, 'operator', '@pop'],\n [/$/, 'white', '@pop'],\n { include: '@root' },\n ],\n\n string: [\n [/[^\\\\\"\\n\\r]+/, 'string'],\n [/@escapes/, 'string.escape'],\n [/\\\\./, 'string.escape.invalid'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n ],\n\n stringt: [\n [/[^\\\\\"\\n\\r]+/, 'string'],\n [/@escapes/, 'string.escape'],\n [/\\\\./, 'string.escape.invalid'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\"/, 'string'],\n ],\n\n fstring: [\n [/@escapes/, 'string.escape'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/%%/, 'string'],\n [\n /(%)([-#+ 0,(])(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'number', 'metatag'],\n ],\n [\n /(%)(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'number', 'metatag'],\n ],\n [\n /(%)([-#+ 0,(])(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'metatag'],\n ],\n [/(%)(@fstring_conv)/, ['metatag', 'metatag']],\n [/./, 'string'],\n ],\n\n fstringt: [\n [/@escapes/, 'string.escape'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/%%/, 'string'],\n [\n /(%)([-#+ 0,(])(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'number', 'metatag'],\n ],\n [\n /(%)(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'number', 'metatag'],\n ],\n [\n /(%)([-#+ 0,(])(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'metatag'],\n ],\n [/(%)(@fstring_conv)/, ['metatag', 'metatag']],\n [/./, 'string'],\n ],\n\n sstring: [\n [/@escapes/, 'string.escape'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/./, 'string'],\n ],\n\n sstringt: [\n [/@escapes/, 'string.escape'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/./, 'string'],\n ],\n\n interp: [\n [/{/, 'operator', '@push'],\n [/}/, 'operator', '@pop'],\n { include: '@root' },\n ],\n\n rawstring: [\n [/[^\"]/, 'string'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n ],\n\n rawstringt: [\n [/[^\"]/, 'string'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\"/, 'string'],\n ],\n\n whitespace: [\n [/[ \\t\\r\\n]+/, 'white'],\n [/\\/\\*/, 'comment', '@comment'],\n [/\\/\\/.*$/, 'comment'],\n ],\n },\n};\n\nconst lang: Language = { id, conf, language };\nexport default lang;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scala.js","names":["id","conf","wordPattern","comments","lineComment","blockComment","brackets","autoClosingPairs","open","close","surroundingPairs","folding","markers","start","end","language","keywords","softKeywords","constants","modifiers","softModifiers","name","type","symbols","digits","hexdigits","escapes","fstring_conv","tokenizer","root","token","bracket","next","cases","include","import","allowMethod","comment","case","vardef","string","switchTo","stringt","fstring","fstringt","sstring","sstringt","interp","rawstring","rawstringt","whitespace","lang"],"sources":["../../../src/monaco/lang/scala.ts"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * The MIT License (MIT)\n *\n * Copyright (c) Microsoft Corporation\n *\n * Permission is hereby granted, free of charge, to any person obtaining a\n * copy of this software and associated documentation files (the \"Software\"),\n * to deal in the Software without restriction, including without limitation\n * the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the\n * Software is furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included\n * in all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\n * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\n * DEALINGS IN THE SOFTWARE.\n *\n * The base version of this file is licensed under the MIT License (as above)\n * and was sourced from microsoft's monaco languages repository:\n * - https://github.com/microsoft/monaco-languages/blob/main/src/scala/scala.ts\n *--------------------------------------------------------------------------------------------*/\n\nimport * as monaco from 'monaco-editor';\nimport { Language } from './Language';\n\nconst id = 'scala';\n\nconst conf: monaco.languages.LanguageConfiguration = {\n /*\n * `...` is allowed as an identifier.\n * $ is allowed in identifiers.\n * unary_<op> is allowed as an identifier.\n * <name>_= is allowed as an identifier.\n */\n wordPattern: /(unary_[@~!#%^&*()\\-=+\\\\|:<>/?]+)|([a-zA-Z_$][\\w$]*?_=)|(`[^`]+`)|([a-zA-Z_$][\\w$]*)/g,\n comments: {\n lineComment: '//',\n blockComment: ['/*', '*/'],\n },\n brackets: [\n ['{', '}'],\n ['[', ']'],\n ['(', ')'],\n ],\n autoClosingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n surroundingPairs: [\n { open: '{', close: '}' },\n { open: '[', close: ']' },\n { open: '(', close: ')' },\n { open: '\"', close: '\"' },\n { open: \"'\", close: \"'\" },\n ],\n folding: {\n markers: {\n start: /^\\s*\\/\\/\\s*(?:(?:#?region\\b)|(?:<editor-fold\\b))/,\n end: /^\\s*\\/\\/\\s*(?:(?:#?endregion\\b)|(?:<\\/editor-fold>))/,\n },\n },\n};\n\nconst language: monaco.languages.IMonarchLanguage = {\n // tokenPostfix: '.scala',\n\n // We can't easily add everything from Dotty, but we can at least add some of its keywords\n keywords: [\n 'asInstanceOf',\n 'catch',\n 'class',\n 'classOf',\n 'def',\n 'do',\n 'else',\n 'extends',\n 'finally',\n 'for',\n 'foreach',\n 'forSome',\n 'if',\n 'import',\n 'isInstanceOf',\n 'macro',\n 'match',\n 'new',\n 'object',\n 'package',\n 'return',\n 'throw',\n 'trait',\n 'try',\n 'type',\n 'until',\n 'val',\n 'var',\n 'while',\n 'with',\n 'yield',\n\n // Dotty-specific:\n 'given',\n 'enum',\n 'then',\n ],\n\n // Dotty-specific:\n softKeywords: ['as', 'export', 'extension', 'end', 'derives', 'on'],\n\n constants: ['true', 'false', 'null', 'this', 'super'],\n\n modifiers: [\n 'abstract',\n 'final',\n 'implicit',\n 'lazy',\n 'override',\n 'private',\n 'protected',\n 'sealed',\n ],\n\n // Dotty-specific:\n softModifiers: ['inline', 'opaque', 'open', 'transparent', 'using'],\n\n name: /(?:[a-z_$][\\w$]*|`[^`]+`)/,\n type: /(?:[A-Z][\\w$]*)/,\n\n // we include these common regular expressions\n symbols: /[=><!~?:&|+\\-*/^\\\\%@#]+/,\n digits: /\\d+(_+\\d+)*/,\n hexdigits: /[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,\n\n // C# style strings\n escapes: /\\\\(?:[btnfr\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\n\n fstring_conv: /[bBhHsScCdoxXeEfgGaAt]|[Tn](?:[HIklMSLNpzZsQ]|[BbhAaCYyjmde]|[RTrDFC])/,\n\n // The main tokenizer for our languages\n tokenizer: {\n root: [\n // strings\n [\n /\\braw\"\"\"/,\n { token: 'string.quote', bracket: '@open', next: '@rawstringt' },\n ],\n [\n /\\braw\"/,\n { token: 'string.quote', bracket: '@open', next: '@rawstring' },\n ],\n\n [\n /\\bs\"\"\"/,\n { token: 'string.quote', bracket: '@open', next: '@sstringt' },\n ],\n [/\\bs\"/, { token: 'string.quote', bracket: '@open', next: '@sstring' }],\n [\n /\\bf\"\"\"\"/,\n { token: 'string.quote', bracket: '@open', next: '@fstringt' },\n ],\n [/\\bf\"/, { token: 'string.quote', bracket: '@open', next: '@fstring' }],\n [/\"\"\"/, { token: 'string.quote', bracket: '@open', next: '@stringt' }],\n [/\"/, { token: 'string.quote', bracket: '@open', next: '@string' }],\n\n // numbers\n [/(@digits)[eE]([-+]?(@digits))?[fFdD]?/, 'number.float', '@allowMethod'],\n [\n /(@digits)\\.(@digits)([eE][-+]?(@digits))?[fFdD]?/,\n 'number.float',\n '@allowMethod',\n ],\n [/0[xX](@hexdigits)[Ll]?/, 'number.hex', '@allowMethod'],\n [/(@digits)[fFdD]/, 'number.float', '@allowMethod'],\n [/(@digits)[lL]?/, 'number', '@allowMethod'],\n [/\\b_\\*/, 'key'],\n [/\\b(_)\\b/, 'keyword', '@allowMethod'],\n\n // identifiers and keywords\n [/\\bimport\\b/, 'keyword', '@import'],\n [/\\b(case)([ \\t]+)(class)\\b/, ['keyword.modifier', 'white', 'keyword']],\n [/\\bcase\\b/, 'keyword', '@case'],\n [/\\bva[lr]\\b/, 'keyword', '@vardef'],\n [\n /\\b(def)([ \\t]+)((?:unary_)?@symbols|@name(?:_=)|@name)/,\n ['keyword', 'white', 'identifier'],\n ],\n [/@name(?=[ \\t]*:(?!:))/, 'variable'],\n [\n /(\\.)(@name|@symbols)/,\n [\n { token: 'operator' },\n {\n token: '@rematch',\n next: '@allowMethod',\n },\n ],\n ],\n [/([{(])(\\s*)(@name(?=\\s*=>))/, ['@brackets', 'white', 'variable']],\n [\n /@name/,\n {\n cases: {\n '@keywords': 'keyword',\n '@softKeywords': 'keyword',\n '@modifiers': 'keyword.modifier',\n '@softModifiers': 'keyword.modifier',\n '@constants': {\n token: 'constant',\n next: '@allowMethod',\n },\n '@default': {\n token: 'identifier',\n next: '@allowMethod',\n },\n },\n },\n ],\n [/@type/, 'type', '@allowMethod'],\n\n // whitespace\n { include: '@whitespace' },\n\n // @ annotations.\n [/@[a-zA-Z_$][\\w$]*(?:\\.[a-zA-Z_$][\\w$]*)*/, 'annotation'],\n\n // delimiters and operators\n [/[{(]/, '@brackets'],\n [/[})]/, '@brackets', '@allowMethod'],\n [/\\[/, 'operator.square'],\n [/](?!\\s*(?:va[rl]|def|type)\\b)/, 'operator.square', '@allowMethod'],\n [/]/, 'operator.square'],\n [/([=-]>|<-|>:|<:|:>|<%)(?=[\\s\\w()[\\]{},.\"'`])/, 'keyword'],\n [/@symbols/, 'operator'],\n\n // delimiter: after number because of .\\d floats\n [/[;,.]/, 'delimiter'],\n\n // symbols\n [/'[a-zA-Z$][\\w$]*(?!')/, 'attribute.name'],\n\n // characters\n [/'[^\\\\']'/, 'string', '@allowMethod'],\n [\n /(')(@escapes)(')/,\n [\n { token: 'string' },\n { token: 'string.escape' },\n {\n token: 'string',\n next: '@allowMethod',\n },\n ],\n ],\n [/'/, 'string.invalid'],\n ],\n\n import: [\n [/;/, 'delimiter', '@pop'],\n [/^|$/, '', '@pop'],\n [/[ \\t]+/, 'white'],\n [/[\\n\\r]+/, 'white', '@pop'],\n [/\\/\\*/, 'comment', '@comment'],\n [/@name|@type/, 'type'],\n [/[(){}]/, '@brackets'],\n [/[[\\]]/, 'operator.square'],\n [/[.,]/, 'delimiter'],\n ],\n\n allowMethod: [\n [/^|$/, '', '@pop'],\n [/[ \\t]+/, 'white'],\n [/[\\n\\r]+/, 'white', '@pop'],\n [/\\/\\*/, 'comment', '@comment'],\n [/(?==>[\\s\\w([{])/, 'keyword', '@pop'],\n [\n /(@name|@symbols)(?=[ \\t]*[[({\"'`]|[ \\t]+(?:[+-]?\\.?\\d|\\w))/,\n {\n cases: {\n '@keywords': { token: 'keyword', next: '@pop' },\n '->|<-|>:|<:|<%': { token: 'keyword', next: '@pop' },\n '@default': { token: '@rematch', next: '@pop' },\n },\n },\n ],\n ['', '', '@pop'],\n ],\n\n comment: [\n [/[^/*]+/, 'comment'],\n [/\\/\\*/, 'comment', '@push'], // nested comment\n [/\\*\\//, 'comment', '@pop'],\n [/[/*]/, 'comment'],\n ],\n\n case: [\n [/\\b_\\*/, 'key'],\n [/\\b(_|true|false|null|this|super)\\b/, 'keyword', '@allowMethod'],\n [/\\bif\\b|=>/, 'keyword', '@pop'],\n [/`[^`]+`/, 'identifier', '@allowMethod'],\n [/@name/, 'variable', '@allowMethod'],\n [/:::?|\\||@(?![a-z_$])/, 'keyword'],\n { include: '@root' },\n ],\n\n vardef: [\n [/\\b_\\*/, 'key'],\n [/\\b(_|true|false|null|this|super)\\b/, 'keyword'],\n [/@name/, 'variable'],\n [/:::?|\\||@(?![a-z_$])/, 'keyword'],\n [/=|:(?!:)/, 'operator', '@pop'],\n [/$/, 'white', '@pop'],\n { include: '@root' },\n ],\n\n string: [\n [/[^\\\\\"\\n\\r]+/, 'string'],\n [/@escapes/, 'string.escape'],\n [/\\\\./, 'string.escape.invalid'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n ],\n\n stringt: [\n [/[^\\\\\"\\n\\r]+/, 'string'],\n [/@escapes/, 'string.escape'],\n [/\\\\./, 'string.escape.invalid'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\"/, 'string'],\n ],\n\n fstring: [\n [/@escapes/, 'string.escape'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/%%/, 'string'],\n [\n /(%)([-#+ 0,(])(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'number', 'metatag'],\n ],\n [\n /(%)(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'number', 'metatag'],\n ],\n [\n /(%)([-#+ 0,(])(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'metatag'],\n ],\n [/(%)(@fstring_conv)/, ['metatag', 'metatag']],\n [/./, 'string'],\n ],\n\n fstringt: [\n [/@escapes/, 'string.escape'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/%%/, 'string'],\n [\n /(%)([-#+ 0,(])(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'number', 'metatag'],\n ],\n [\n /(%)(\\d+|\\.\\d+|\\d+\\.\\d+)(@fstring_conv)/,\n ['metatag', 'number', 'metatag'],\n ],\n [\n /(%)([-#+ 0,(])(@fstring_conv)/,\n ['metatag', 'keyword.modifier', 'metatag'],\n ],\n [/(%)(@fstring_conv)/, ['metatag', 'metatag']],\n [/./, 'string'],\n ],\n\n sstring: [\n [/@escapes/, 'string.escape'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/./, 'string'],\n ],\n\n sstringt: [\n [/@escapes/, 'string.escape'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\\$\\$/, 'string'],\n [/(\\$)([a-z_]\\w*)/, ['operator', 'identifier']],\n [/\\$\\{/, 'operator', '@interp'],\n [/./, 'string'],\n ],\n\n interp: [\n [/{/, 'operator', '@push'],\n [/}/, 'operator', '@pop'],\n { include: '@root' },\n ],\n\n rawstring: [\n [/[^\"]/, 'string'],\n [\n /\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n ],\n\n rawstringt: [\n [/[^\"]/, 'string'],\n [/\"(?=\"\"\")/, 'string'],\n [\n /\"\"\"/,\n {\n token: 'string.quote',\n bracket: '@close',\n switchTo: '@allowMethod',\n },\n ],\n [/\"/, 'string'],\n ],\n\n whitespace: [\n [/[ \\t\\r\\n]+/, 'white'],\n [/\\/\\*/, 'comment', '@comment'],\n [/\\/\\/.*$/, 'comment'],\n ],\n },\n};\n\nconst lang: Language = { id, conf, language };\nexport default lang;\n"],"mappings":"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"}
|
package/dist/notebook/Editor.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2
|
-
|
|
3
2
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4
|
-
|
|
5
3
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
-
|
|
7
4
|
/**
|
|
8
5
|
* Editor editor for large blocks of code
|
|
9
6
|
*/
|
|
@@ -12,30 +9,23 @@ import classNames from 'classnames';
|
|
|
12
9
|
import * as monaco from 'monaco-editor';
|
|
13
10
|
import { assertNotNull } from '@deephaven/utils';
|
|
14
11
|
import MonacoUtils from "../monaco/MonacoUtils.js";
|
|
15
|
-
|
|
16
12
|
class Editor extends Component {
|
|
17
13
|
constructor(props) {
|
|
18
14
|
super(props);
|
|
19
|
-
|
|
20
15
|
_defineProperty(this, "container", void 0);
|
|
21
|
-
|
|
22
16
|
_defineProperty(this, "editor", void 0);
|
|
23
|
-
|
|
24
17
|
this.handleResize = this.handleResize.bind(this);
|
|
25
18
|
this.container = null;
|
|
26
19
|
this.state = {};
|
|
27
20
|
}
|
|
28
|
-
|
|
29
21
|
componentDidMount() {
|
|
30
22
|
this.initEditor();
|
|
31
23
|
window.addEventListener('resize', this.handleResize);
|
|
32
24
|
}
|
|
33
|
-
|
|
34
25
|
componentWillUnmount() {
|
|
35
26
|
window.removeEventListener('resize', this.handleResize);
|
|
36
27
|
this.destroyEditor();
|
|
37
28
|
}
|
|
38
|
-
|
|
39
29
|
setLanguage(language) {
|
|
40
30
|
if (this.editor) {
|
|
41
31
|
var model = this.editor.getModel();
|
|
@@ -43,11 +33,9 @@ class Editor extends Component {
|
|
|
43
33
|
monaco.editor.setModelLanguage(model, language);
|
|
44
34
|
}
|
|
45
35
|
}
|
|
46
|
-
|
|
47
36
|
handleResize() {
|
|
48
37
|
this.updateDimensions();
|
|
49
38
|
}
|
|
50
|
-
|
|
51
39
|
toggleFind() {
|
|
52
40
|
if (this.editor) {
|
|
53
41
|
// The actions.find action can no longer be triggered when the editor is not in focus, with monaco 0.22.x.
|
|
@@ -57,13 +45,10 @@ class Editor extends Component {
|
|
|
57
45
|
this.editor.trigger('toggleFind', 'actions.find', undefined);
|
|
58
46
|
}
|
|
59
47
|
}
|
|
60
|
-
|
|
61
48
|
updateDimensions() {
|
|
62
49
|
var _this$editor;
|
|
63
|
-
|
|
64
50
|
(_this$editor = this.editor) === null || _this$editor === void 0 ? void 0 : _this$editor.layout();
|
|
65
51
|
}
|
|
66
|
-
|
|
67
52
|
initEditor() {
|
|
68
53
|
var {
|
|
69
54
|
onEditorInitialized
|
|
@@ -92,7 +77,8 @@ class Editor extends Component {
|
|
|
92
77
|
this.editor.addAction({
|
|
93
78
|
id: 'find',
|
|
94
79
|
label: 'Find',
|
|
95
|
-
keybindings: [
|
|
80
|
+
keybindings: [
|
|
81
|
+
// eslint-disable-next-line no-bitwise
|
|
96
82
|
monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyF],
|
|
97
83
|
precondition: undefined,
|
|
98
84
|
keybindingContext: undefined,
|
|
@@ -106,7 +92,6 @@ class Editor extends Component {
|
|
|
106
92
|
MonacoUtils.removeConflictingKeybindings(this.editor);
|
|
107
93
|
onEditorInitialized(this.editor);
|
|
108
94
|
}
|
|
109
|
-
|
|
110
95
|
destroyEditor() {
|
|
111
96
|
var {
|
|
112
97
|
onEditorWillDestroy
|
|
@@ -116,7 +101,6 @@ class Editor extends Component {
|
|
|
116
101
|
this.editor.dispose();
|
|
117
102
|
this.editor = undefined;
|
|
118
103
|
}
|
|
119
|
-
|
|
120
104
|
render() {
|
|
121
105
|
var {
|
|
122
106
|
className
|
|
@@ -128,15 +112,12 @@ class Editor extends Component {
|
|
|
128
112
|
}
|
|
129
113
|
});
|
|
130
114
|
}
|
|
131
|
-
|
|
132
115
|
}
|
|
133
|
-
|
|
134
116
|
_defineProperty(Editor, "defaultProps", {
|
|
135
117
|
className: 'fill-parent-absolute',
|
|
136
118
|
onEditorInitialized: () => undefined,
|
|
137
119
|
onEditorWillDestroy: () => undefined,
|
|
138
120
|
settings: {}
|
|
139
121
|
});
|
|
140
|
-
|
|
141
122
|
export default Editor;
|
|
142
123
|
//# sourceMappingURL=Editor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Editor.js","names":["React","Component","classNames","monaco","assertNotNull","MonacoUtils","Editor","constructor","props","handleResize","bind","container","state","componentDidMount","initEditor","window","addEventListener","componentWillUnmount","removeEventListener","destroyEditor","setLanguage","language","editor","model","getModel","setModelLanguage","updateDimensions","toggleFind","focus","trigger","undefined","layout","onEditorInitialized","settings","copyWithSyntaxHighlighting","fixedOverflowWidgets","folding","fontFamily","glyphMargin","lineNumbersMinChars","minimap","enabled","scrollBeyondLastLine","tabCompletion","value","wordWrap","create","addAction","id","label","keybindings","KeyMod","CtrlCmd","KeyCode","KeyF","precondition","keybindingContext","contextMenuGroupId","contextMenuOrder","run","removeConflictingKeybindings","onEditorWillDestroy","dispose","render","className"],"sources":["../../src/notebook/Editor.tsx"],"sourcesContent":["/**\n * Editor editor for large blocks of code\n */\nimport React, { Component, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport * as monaco from 'monaco-editor';\nimport { assertNotNull } from '@deephaven/utils';\nimport MonacoUtils from '../monaco/MonacoUtils';\n\ninterface EditorProps {\n className: string;\n onEditorInitialized: (editor: monaco.editor.IStandaloneCodeEditor) => void;\n onEditorWillDestroy: (editor: monaco.editor.IStandaloneCodeEditor) => void;\n settings: monaco.editor.IStandaloneEditorConstructionOptions;\n}\n\nclass Editor extends Component<EditorProps, Record<string, never>> {\n static defaultProps = {\n className: 'fill-parent-absolute',\n onEditorInitialized: (): void => undefined,\n onEditorWillDestroy: (): void => undefined,\n settings: {},\n };\n\n constructor(props: EditorProps) {\n super(props);\n\n this.handleResize = this.handleResize.bind(this);\n\n this.container = null;\n this.state = {};\n }\n\n componentDidMount(): void {\n this.initEditor();\n\n window.addEventListener('resize', this.handleResize);\n }\n\n componentWillUnmount(): void {\n window.removeEventListener('resize', this.handleResize);\n\n this.destroyEditor();\n }\n\n container: HTMLDivElement | null;\n\n editor?: monaco.editor.IStandaloneCodeEditor;\n\n setLanguage(language: string): void {\n if (this.editor) {\n const model = this.editor.getModel();\n assertNotNull(model);\n monaco.editor.setModelLanguage(model, language);\n }\n }\n\n handleResize(): void {\n this.updateDimensions();\n }\n\n toggleFind(): void {\n if (this.editor) {\n // The actions.find action can no longer be triggered when the editor is not in focus, with monaco 0.22.x.\n // As a workaround, just focus the editor before triggering the action\n // https://github.com/microsoft/monaco-editor/issues/2355\n this.editor.focus();\n this.editor.trigger('toggleFind', 'actions.find', undefined);\n }\n }\n\n updateDimensions(): void {\n this.editor?.layout();\n }\n\n initEditor(): void {\n const { onEditorInitialized } = this.props;\n let { settings } = this.props;\n settings = {\n copyWithSyntaxHighlighting: false,\n fixedOverflowWidgets: true,\n folding: false,\n fontFamily: 'Fira Mono',\n glyphMargin: false,\n language: `python`,\n lineNumbersMinChars: 3,\n minimap: { enabled: false },\n scrollBeyondLastLine: false,\n tabCompletion: 'on',\n value: '',\n wordWrap: 'off',\n ...settings,\n };\n assertNotNull(this.container);\n this.editor = monaco.editor.create(this.container, settings);\n this.editor.addAction({\n id: 'find',\n label: 'Find',\n keybindings: [\n // eslint-disable-next-line no-bitwise\n monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyF,\n ],\n precondition: undefined,\n keybindingContext: undefined,\n contextMenuGroupId: 'navigation',\n contextMenuOrder: 1.0,\n\n run: () => {\n this.toggleFind();\n },\n });\n this.editor.layout();\n MonacoUtils.removeConflictingKeybindings(this.editor);\n\n onEditorInitialized(this.editor);\n }\n\n destroyEditor(): void {\n const { onEditorWillDestroy } = this.props;\n assertNotNull(this.editor);\n onEditorWillDestroy(this.editor);\n this.editor.dispose();\n this.editor = undefined;\n }\n\n render(): ReactElement {\n const { className } = this.props;\n return (\n <div\n className={classNames('editor-container', className)}\n ref={container => {\n this.container = container;\n }}\n />\n );\n }\n}\n\nexport default Editor;\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"Editor.js","names":["React","Component","classNames","monaco","assertNotNull","MonacoUtils","Editor","constructor","props","handleResize","bind","container","state","componentDidMount","initEditor","window","addEventListener","componentWillUnmount","removeEventListener","destroyEditor","setLanguage","language","editor","model","getModel","setModelLanguage","updateDimensions","toggleFind","focus","trigger","undefined","layout","onEditorInitialized","settings","copyWithSyntaxHighlighting","fixedOverflowWidgets","folding","fontFamily","glyphMargin","lineNumbersMinChars","minimap","enabled","scrollBeyondLastLine","tabCompletion","value","wordWrap","create","addAction","id","label","keybindings","KeyMod","CtrlCmd","KeyCode","KeyF","precondition","keybindingContext","contextMenuGroupId","contextMenuOrder","run","removeConflictingKeybindings","onEditorWillDestroy","dispose","render","className"],"sources":["../../src/notebook/Editor.tsx"],"sourcesContent":["/**\n * Editor editor for large blocks of code\n */\nimport React, { Component, ReactElement } from 'react';\nimport classNames from 'classnames';\nimport * as monaco from 'monaco-editor';\nimport { assertNotNull } from '@deephaven/utils';\nimport MonacoUtils from '../monaco/MonacoUtils';\n\ninterface EditorProps {\n className: string;\n onEditorInitialized: (editor: monaco.editor.IStandaloneCodeEditor) => void;\n onEditorWillDestroy: (editor: monaco.editor.IStandaloneCodeEditor) => void;\n settings: monaco.editor.IStandaloneEditorConstructionOptions;\n}\n\nclass Editor extends Component<EditorProps, Record<string, never>> {\n static defaultProps = {\n className: 'fill-parent-absolute',\n onEditorInitialized: (): void => undefined,\n onEditorWillDestroy: (): void => undefined,\n settings: {},\n };\n\n constructor(props: EditorProps) {\n super(props);\n\n this.handleResize = this.handleResize.bind(this);\n\n this.container = null;\n this.state = {};\n }\n\n componentDidMount(): void {\n this.initEditor();\n\n window.addEventListener('resize', this.handleResize);\n }\n\n componentWillUnmount(): void {\n window.removeEventListener('resize', this.handleResize);\n\n this.destroyEditor();\n }\n\n container: HTMLDivElement | null;\n\n editor?: monaco.editor.IStandaloneCodeEditor;\n\n setLanguage(language: string): void {\n if (this.editor) {\n const model = this.editor.getModel();\n assertNotNull(model);\n monaco.editor.setModelLanguage(model, language);\n }\n }\n\n handleResize(): void {\n this.updateDimensions();\n }\n\n toggleFind(): void {\n if (this.editor) {\n // The actions.find action can no longer be triggered when the editor is not in focus, with monaco 0.22.x.\n // As a workaround, just focus the editor before triggering the action\n // https://github.com/microsoft/monaco-editor/issues/2355\n this.editor.focus();\n this.editor.trigger('toggleFind', 'actions.find', undefined);\n }\n }\n\n updateDimensions(): void {\n this.editor?.layout();\n }\n\n initEditor(): void {\n const { onEditorInitialized } = this.props;\n let { settings } = this.props;\n settings = {\n copyWithSyntaxHighlighting: false,\n fixedOverflowWidgets: true,\n folding: false,\n fontFamily: 'Fira Mono',\n glyphMargin: false,\n language: `python`,\n lineNumbersMinChars: 3,\n minimap: { enabled: false },\n scrollBeyondLastLine: false,\n tabCompletion: 'on',\n value: '',\n wordWrap: 'off',\n ...settings,\n };\n assertNotNull(this.container);\n this.editor = monaco.editor.create(this.container, settings);\n this.editor.addAction({\n id: 'find',\n label: 'Find',\n keybindings: [\n // eslint-disable-next-line no-bitwise\n monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyF,\n ],\n precondition: undefined,\n keybindingContext: undefined,\n contextMenuGroupId: 'navigation',\n contextMenuOrder: 1.0,\n\n run: () => {\n this.toggleFind();\n },\n });\n this.editor.layout();\n MonacoUtils.removeConflictingKeybindings(this.editor);\n\n onEditorInitialized(this.editor);\n }\n\n destroyEditor(): void {\n const { onEditorWillDestroy } = this.props;\n assertNotNull(this.editor);\n onEditorWillDestroy(this.editor);\n this.editor.dispose();\n this.editor = undefined;\n }\n\n render(): ReactElement {\n const { className } = this.props;\n return (\n <div\n className={classNames('editor-container', className)}\n ref={container => {\n this.container = container;\n }}\n />\n );\n }\n}\n\nexport default Editor;\n"],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ interface ScriptEditorProps {
|
|
|
17
17
|
onRunCommand: (command: string) => void;
|
|
18
18
|
onEditorInitialized: (editor: editor.IStandaloneCodeEditor) => void;
|
|
19
19
|
onEditorWillDestroy: (editor: editor.IStandaloneCodeEditor) => void;
|
|
20
|
-
session: IdeSession;
|
|
20
|
+
session: IdeSession | null;
|
|
21
21
|
sessionLanguage?: string;
|
|
22
22
|
settings?: editor.IStandaloneEditorConstructionOptions;
|
|
23
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScriptEditor.d.ts","sourceRoot":"","sources":["../../src/notebook/ScriptEditor.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAc,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAK7B,UAAU,iBAAiB;IACzB,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,yBAAyB,KAAK,IAAI,CAAC;IACxD,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IACpE,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IACpE,OAAO,EAAE,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"ScriptEditor.d.ts","sourceRoot":"","sources":["../../src/notebook/ScriptEditor.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAc,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAK7B,UAAU,iBAAiB;IACzB,KAAK,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,yBAAyB,KAAK,IAAI,CAAC;IACxD,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IACpE,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IACpE,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC,oCAAoC,CAAC;CACxD;AAED,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;CACjC;AAED,cAAM,YAAa,SAAQ,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACxE,MAAM,CAAC,YAAY;;;;;wBAKH,IAAI;mCACO,IAAI;mCACJ,IAAI;;MAE7B;gBAEU,KAAK,EAAE,iBAAiB;IAgBpC,iBAAiB,IAAI,IAAI;IAIzB,kBAAkB,CAAC,SAAS,EAAE,iBAAiB,GAAG,IAAI;IAuCtD,oBAAoB,IAAI,IAAI;IAI5B,qBAAqB,EAAE,WAAW,EAAE,CAAC;IAErC,iBAAiB,CAAC,EAAE,WAAW,CAAC;IAEhC,MAAM,CAAC,EAAE,MAAM,CAAC,qBAAqB,CAAC;IAEtC,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAEnC,QAAQ,IAAI,MAAM,GAAG,IAAI;IAQzB,kBAAkB,IAAI,MAAM;IAkB5B,uBAAuB,CAAC,WAAW,EAAE,MAAM,CAAC,qBAAqB,GAAG,IAAI;IA+BxE,uBAAuB,CAAC,WAAW,EAAE,MAAM,CAAC,qBAAqB,GAAG,IAAI;IAUxE,SAAS,IAAI,IAAI;IAQjB,iBAAiB,IAAI,IAAI;IAMzB,kBAAkB,IAAI,IAAI;IAgD1B,oBAAoB,IAAI,IAAI;IAO5B,eAAe,IAAI,IAAI;IAKvB,kBAAkB,IAAI,IAAI;IAY1B,oBAAoB,IAAI,IAAI;IAY5B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,UAAO,GAAG,IAAI;IAqBxC,gBAAgB,IAAI,IAAI;IAOxB,KAAK,IAAI,IAAI;IAOb,UAAU,IAAI,IAAI;IAMlB,WAAW,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI;IAMpC,MAAM,IAAI,YAAY;CAoDvB;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
-
|
|
3
2
|
/**
|
|
4
3
|
* Script editor for large blocks of code
|
|
5
4
|
*/
|
|
@@ -13,19 +12,13 @@ import { MonacoCompletionProvider, MonacoUtils } from "../monaco/index.js";
|
|
|
13
12
|
import "./ScriptEditor.css";
|
|
14
13
|
import SHORTCUTS from "../ConsoleShortcuts.js";
|
|
15
14
|
var log = Log.module('ScriptEditor');
|
|
16
|
-
|
|
17
15
|
class ScriptEditor extends Component {
|
|
18
16
|
constructor(props) {
|
|
19
17
|
super(props);
|
|
20
|
-
|
|
21
18
|
_defineProperty(this, "contextActionCleanups", void 0);
|
|
22
|
-
|
|
23
19
|
_defineProperty(this, "completionCleanup", void 0);
|
|
24
|
-
|
|
25
20
|
_defineProperty(this, "editor", void 0);
|
|
26
|
-
|
|
27
21
|
_defineProperty(this, "editorComponent", void 0);
|
|
28
|
-
|
|
29
22
|
this.handleEditorInitialized = this.handleEditorInitialized.bind(this);
|
|
30
23
|
this.handleEditorWillDestroy = this.handleEditorWillDestroy.bind(this);
|
|
31
24
|
this.handleRun = this.handleRun.bind(this);
|
|
@@ -37,39 +30,31 @@ class ScriptEditor extends Component {
|
|
|
37
30
|
model: null
|
|
38
31
|
};
|
|
39
32
|
}
|
|
40
|
-
|
|
41
33
|
componentDidMount() {
|
|
42
34
|
ShortcutRegistry.addEventListener('onUpdate', this.updateShortcuts);
|
|
43
35
|
}
|
|
44
|
-
|
|
45
36
|
componentDidUpdate(prevProps) {
|
|
46
37
|
var _prevProps$settings, _prevProps$settings2;
|
|
47
|
-
|
|
48
38
|
var {
|
|
49
39
|
sessionLanguage,
|
|
50
40
|
settings
|
|
51
41
|
} = this.props;
|
|
52
42
|
var language = settings === null || settings === void 0 ? void 0 : settings.language;
|
|
53
43
|
var languageChanged = language !== ((_prevProps$settings = prevProps.settings) === null || _prevProps$settings === void 0 ? void 0 : _prevProps$settings.language);
|
|
54
|
-
|
|
55
44
|
if (languageChanged) {
|
|
56
45
|
log.debug('Set language', language);
|
|
57
46
|
this.setLanguage(language);
|
|
58
47
|
}
|
|
59
|
-
|
|
60
48
|
var sessionDisconnected = sessionLanguage == null && prevProps.sessionLanguage != null;
|
|
61
49
|
var languageMatch = language === sessionLanguage;
|
|
62
50
|
var prevLanguageMatch = ((_prevProps$settings2 = prevProps.settings) === null || _prevProps$settings2 === void 0 ? void 0 : _prevProps$settings2.language) === prevProps.sessionLanguage;
|
|
63
|
-
|
|
64
51
|
if (sessionDisconnected || sessionLanguage !== undefined && prevLanguageMatch && !languageMatch) {
|
|
65
52
|
// Session disconnected or language changed from matching the session language to non-matching
|
|
66
53
|
log.debug('De-init completion and context actions');
|
|
67
54
|
this.deInitContextActions();
|
|
68
55
|
this.deInitCodeCompletion();
|
|
69
56
|
}
|
|
70
|
-
|
|
71
57
|
var sessionConnected = sessionLanguage != null && prevProps.sessionLanguage == null;
|
|
72
|
-
|
|
73
58
|
if (sessionConnected && languageMatch || sessionLanguage !== undefined && !prevLanguageMatch && languageMatch) {
|
|
74
59
|
// Session connected with a matching language or notebook language changed to matching
|
|
75
60
|
log.debug('Init completion and context actions');
|
|
@@ -77,23 +62,18 @@ class ScriptEditor extends Component {
|
|
|
77
62
|
this.initCodeCompletion();
|
|
78
63
|
}
|
|
79
64
|
}
|
|
80
|
-
|
|
81
65
|
componentWillUnmount() {
|
|
82
66
|
ShortcutRegistry.removeEventListener('onUpdate', this.updateShortcuts);
|
|
83
67
|
}
|
|
84
|
-
|
|
85
68
|
getValue() {
|
|
86
69
|
if (this.editor) {
|
|
87
70
|
return this.editor.getValue();
|
|
88
71
|
}
|
|
89
|
-
|
|
90
72
|
log.error('Editor not initialized');
|
|
91
73
|
return null;
|
|
92
74
|
}
|
|
93
|
-
|
|
94
75
|
getSelectedCommand() {
|
|
95
76
|
var _this$editor, _this$editor2;
|
|
96
|
-
|
|
97
77
|
var range = (_this$editor = this.editor) === null || _this$editor === void 0 ? void 0 : _this$editor.getSelection();
|
|
98
78
|
assertNotNull(range);
|
|
99
79
|
var model = (_this$editor2 = this.editor) === null || _this$editor2 === void 0 ? void 0 : _this$editor2.getModel();
|
|
@@ -105,17 +85,14 @@ class ScriptEditor extends Component {
|
|
|
105
85
|
var {
|
|
106
86
|
endLineNumber
|
|
107
87
|
} = range;
|
|
108
|
-
|
|
109
88
|
if (endColumn === 1 && endLineNumber > startLineNumber) {
|
|
110
89
|
endLineNumber -= 1;
|
|
111
90
|
}
|
|
112
|
-
|
|
113
91
|
var startLineMinColumn = model === null || model === void 0 ? void 0 : model.getLineMinColumn(startLineNumber);
|
|
114
92
|
var endLineMaxColumn = model === null || model === void 0 ? void 0 : model.getLineMaxColumn(endLineNumber);
|
|
115
93
|
var wholeLineRange = range.setStartPosition(startLineNumber, startLineMinColumn).setEndPosition(endLineNumber, endLineMaxColumn);
|
|
116
94
|
return model === null || model === void 0 ? void 0 : model.getValueInRange(wholeLineRange);
|
|
117
95
|
}
|
|
118
|
-
|
|
119
96
|
handleEditorInitialized(innerEditor) {
|
|
120
97
|
var {
|
|
121
98
|
focusOnMount,
|
|
@@ -132,21 +109,16 @@ class ScriptEditor extends Component {
|
|
|
132
109
|
});
|
|
133
110
|
MonacoUtils.setEOL(innerEditor);
|
|
134
111
|
MonacoUtils.registerPasteHandler(innerEditor);
|
|
135
|
-
|
|
136
112
|
if (session != null && settings && sessionLanguage === settings.language) {
|
|
137
113
|
this.initContextActions();
|
|
138
114
|
this.initCodeCompletion();
|
|
139
115
|
}
|
|
140
|
-
|
|
141
116
|
innerEditor.onDidChangeModelContent(onChange);
|
|
142
|
-
|
|
143
117
|
if (focusOnMount != null && focusOnMount) {
|
|
144
118
|
innerEditor.focus();
|
|
145
119
|
}
|
|
146
|
-
|
|
147
120
|
onEditorInitialized(this.editor);
|
|
148
121
|
}
|
|
149
|
-
|
|
150
122
|
handleEditorWillDestroy(innerEditor) {
|
|
151
123
|
log.debug('handleEditorWillDestroy');
|
|
152
124
|
var {
|
|
@@ -160,18 +132,15 @@ class ScriptEditor extends Component {
|
|
|
160
132
|
});
|
|
161
133
|
this.editor = undefined;
|
|
162
134
|
}
|
|
163
|
-
|
|
164
135
|
handleRun() {
|
|
165
136
|
var {
|
|
166
137
|
onRunCommand
|
|
167
138
|
} = this.props;
|
|
168
139
|
var command = this.getValue();
|
|
169
|
-
|
|
170
140
|
if (command != null) {
|
|
171
141
|
onRunCommand(command);
|
|
172
142
|
}
|
|
173
143
|
}
|
|
174
|
-
|
|
175
144
|
handleRunSelected() {
|
|
176
145
|
var {
|
|
177
146
|
onRunCommand
|
|
@@ -179,17 +148,14 @@ class ScriptEditor extends Component {
|
|
|
179
148
|
var command = this.getSelectedCommand();
|
|
180
149
|
onRunCommand(command);
|
|
181
150
|
}
|
|
182
|
-
|
|
183
151
|
initContextActions() {
|
|
184
152
|
if (this.contextActionCleanups.length > 0) {
|
|
185
153
|
log.error('Context actions already initialized.');
|
|
186
154
|
return;
|
|
187
155
|
}
|
|
188
|
-
|
|
189
156
|
if (!this.editor) {
|
|
190
157
|
return;
|
|
191
158
|
}
|
|
192
|
-
|
|
193
159
|
var cleanups = [];
|
|
194
160
|
cleanups.push(this.editor.addAction({
|
|
195
161
|
id: 'run-code',
|
|
@@ -213,107 +179,87 @@ class ScriptEditor extends Component {
|
|
|
213
179
|
}));
|
|
214
180
|
this.contextActionCleanups = cleanups;
|
|
215
181
|
}
|
|
216
|
-
|
|
217
182
|
deInitContextActions() {
|
|
218
183
|
if (this.contextActionCleanups.length > 0) {
|
|
219
184
|
this.contextActionCleanups.forEach(cleanup => cleanup.dispose());
|
|
220
185
|
this.contextActionCleanups = [];
|
|
221
186
|
}
|
|
222
187
|
}
|
|
223
|
-
|
|
224
188
|
updateShortcuts() {
|
|
225
189
|
this.deInitContextActions();
|
|
226
190
|
this.initContextActions();
|
|
227
191
|
}
|
|
228
|
-
|
|
229
192
|
initCodeCompletion() {
|
|
230
193
|
if (this.completionCleanup != null) {
|
|
231
194
|
log.error('Code completion already initialized.');
|
|
232
195
|
return;
|
|
233
196
|
}
|
|
234
|
-
|
|
235
197
|
var {
|
|
236
198
|
session
|
|
237
199
|
} = this.props;
|
|
238
200
|
log.debug('initCodeCompletion', this.editor, session);
|
|
239
|
-
|
|
240
201
|
if (this.editor && session != null) {
|
|
241
202
|
this.completionCleanup = MonacoUtils.openDocument(this.editor, session);
|
|
242
203
|
}
|
|
243
204
|
}
|
|
244
|
-
|
|
245
205
|
deInitCodeCompletion() {
|
|
246
206
|
var {
|
|
247
207
|
session
|
|
248
208
|
} = this.props;
|
|
249
209
|
log.debug('deInitCodeCompletion', this.editor, session);
|
|
250
|
-
|
|
251
210
|
if (this.completionCleanup) {
|
|
252
211
|
this.completionCleanup.dispose();
|
|
253
212
|
this.completionCleanup = undefined;
|
|
254
213
|
}
|
|
255
|
-
|
|
256
214
|
if (this.editor && session != null) {
|
|
257
215
|
MonacoUtils.closeDocument(this.editor, session);
|
|
258
216
|
}
|
|
259
217
|
}
|
|
260
|
-
|
|
261
218
|
append(text) {
|
|
262
219
|
var focus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
263
220
|
assertNotNull(this.editor);
|
|
264
221
|
var model = this.editor.getModel();
|
|
265
222
|
assertNotNull(model);
|
|
266
223
|
var currentText = model.getValue();
|
|
267
|
-
|
|
268
224
|
if (currentText) {
|
|
269
225
|
model.setValue("".concat(currentText, "\n").concat(text));
|
|
270
226
|
} else {
|
|
271
227
|
model.setValue("".concat(text));
|
|
272
228
|
}
|
|
273
|
-
|
|
274
229
|
var lastLine = model.getLineCount();
|
|
275
230
|
var column = model.getLineLength(lastLine) + 1;
|
|
276
231
|
this.editor.setPosition({
|
|
277
232
|
lineNumber: lastLine,
|
|
278
233
|
column
|
|
279
234
|
});
|
|
280
|
-
|
|
281
235
|
if (focus) {
|
|
282
236
|
this.editor.focus();
|
|
283
237
|
}
|
|
284
238
|
}
|
|
285
|
-
|
|
286
239
|
updateDimensions() {
|
|
287
240
|
log.debug('updateDimensions');
|
|
288
|
-
|
|
289
241
|
if (this.editor) {
|
|
290
242
|
this.editor.layout();
|
|
291
243
|
}
|
|
292
244
|
}
|
|
293
|
-
|
|
294
245
|
focus() {
|
|
295
246
|
log.debug('focus');
|
|
296
|
-
|
|
297
247
|
if (this.editor) {
|
|
298
248
|
this.editor.focus();
|
|
299
249
|
}
|
|
300
250
|
}
|
|
301
|
-
|
|
302
251
|
toggleFind() {
|
|
303
252
|
if (this.editorComponent.current) {
|
|
304
253
|
this.editorComponent.current.toggleFind();
|
|
305
254
|
}
|
|
306
255
|
}
|
|
307
|
-
|
|
308
256
|
setLanguage(language) {
|
|
309
257
|
if (this.editorComponent.current && language !== undefined) {
|
|
310
258
|
this.editorComponent.current.setLanguage(language);
|
|
311
259
|
}
|
|
312
260
|
}
|
|
313
|
-
|
|
314
261
|
render() {
|
|
315
262
|
var _settings$language;
|
|
316
|
-
|
|
317
263
|
var {
|
|
318
264
|
error,
|
|
319
265
|
isLoaded,
|
|
@@ -347,9 +293,7 @@ class ScriptEditor extends Component {
|
|
|
347
293
|
session: session
|
|
348
294
|
}))));
|
|
349
295
|
}
|
|
350
|
-
|
|
351
296
|
}
|
|
352
|
-
|
|
353
297
|
_defineProperty(ScriptEditor, "defaultProps", {
|
|
354
298
|
error: null,
|
|
355
299
|
isLoading: false,
|
|
@@ -360,6 +304,5 @@ _defineProperty(ScriptEditor, "defaultProps", {
|
|
|
360
304
|
onEditorWillDestroy: () => undefined,
|
|
361
305
|
session: null
|
|
362
306
|
});
|
|
363
|
-
|
|
364
307
|
export default ScriptEditor;
|
|
365
308
|
//# sourceMappingURL=ScriptEditor.js.map
|