@deephaven/console 0.94.0 → 0.95.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 (109) hide show
  1. package/dist/Console.d.ts +4 -4
  2. package/dist/Console.d.ts.map +1 -1
  3. package/dist/Console.js.map +1 -1
  4. package/dist/ConsoleInput.d.ts +4 -4
  5. package/dist/ConsoleInput.d.ts.map +1 -1
  6. package/dist/ConsoleInput.js.map +1 -1
  7. package/dist/ConsoleObjectsMenu.d.ts +1 -1
  8. package/dist/ConsoleObjectsMenu.d.ts.map +1 -1
  9. package/dist/ConsoleObjectsMenu.js.map +1 -1
  10. package/dist/ConsoleStatusBar.d.ts +2 -2
  11. package/dist/ConsoleStatusBar.d.ts.map +1 -1
  12. package/dist/ConsoleStatusBar.js.map +1 -1
  13. package/dist/HeapUsage.d.ts +1 -1
  14. package/dist/HeapUsage.d.ts.map +1 -1
  15. package/dist/HeapUsage.js.map +1 -1
  16. package/dist/command-history/CommandHistory.d.ts +7 -6
  17. package/dist/command-history/CommandHistory.d.ts.map +1 -1
  18. package/dist/command-history/CommandHistory.js.map +1 -1
  19. package/dist/command-history/CommandHistoryActions.d.ts +2 -2
  20. package/dist/command-history/CommandHistoryActions.d.ts.map +1 -1
  21. package/dist/command-history/CommandHistoryActions.js.map +1 -1
  22. package/dist/command-history/CommandHistoryItem.d.ts +3 -2
  23. package/dist/command-history/CommandHistoryItem.d.ts.map +1 -1
  24. package/dist/command-history/CommandHistoryItem.js.map +1 -1
  25. package/dist/command-history/CommandHistoryItemTooltip.d.ts +4 -3
  26. package/dist/command-history/CommandHistoryItemTooltip.d.ts.map +1 -1
  27. package/dist/command-history/CommandHistoryItemTooltip.js.map +1 -1
  28. package/dist/command-history/CommandHistoryStorage.d.ts +1 -1
  29. package/dist/command-history/CommandHistoryStorage.d.ts.map +1 -1
  30. package/dist/command-history/CommandHistoryStorage.js.map +1 -1
  31. package/dist/command-history/CommandHistoryTypes.d.ts +2 -2
  32. package/dist/command-history/CommandHistoryTypes.d.ts.map +1 -1
  33. package/dist/command-history/CommandHistoryTypes.js.map +1 -1
  34. package/dist/command-history/CommandHistoryViewportUpdater.d.ts +2 -2
  35. package/dist/command-history/CommandHistoryViewportUpdater.d.ts.map +1 -1
  36. package/dist/command-history/CommandHistoryViewportUpdater.js.map +1 -1
  37. package/dist/common/Code.d.ts +1 -1
  38. package/dist/common/Code.d.ts.map +1 -1
  39. package/dist/common/Code.js.map +1 -1
  40. package/dist/common/ConsoleUtils.d.ts +1 -1
  41. package/dist/common/ConsoleUtils.d.ts.map +1 -1
  42. package/dist/common/ConsoleUtils.js.map +1 -1
  43. package/dist/console-history/ConsoleHistory.d.ts +1 -1
  44. package/dist/console-history/ConsoleHistory.d.ts.map +1 -1
  45. package/dist/console-history/ConsoleHistory.js.map +1 -1
  46. package/dist/console-history/ConsoleHistoryItem.d.ts +2 -2
  47. package/dist/console-history/ConsoleHistoryItem.d.ts.map +1 -1
  48. package/dist/console-history/ConsoleHistoryItem.js.map +1 -1
  49. package/dist/console-history/ConsoleHistoryItemResult.d.ts +1 -1
  50. package/dist/console-history/ConsoleHistoryItemResult.d.ts.map +1 -1
  51. package/dist/console-history/ConsoleHistoryItemResult.js.map +1 -1
  52. package/dist/console-history/ConsoleHistoryResultErrorMessage.d.ts +1 -1
  53. package/dist/console-history/ConsoleHistoryResultErrorMessage.d.ts.map +1 -1
  54. package/dist/console-history/ConsoleHistoryResultErrorMessage.js.map +1 -1
  55. package/dist/console-history/ConsoleHistoryResultInProgress.d.ts +1 -1
  56. package/dist/console-history/ConsoleHistoryResultInProgress.d.ts.map +1 -1
  57. package/dist/console-history/ConsoleHistoryResultInProgress.js.map +1 -1
  58. package/dist/console-history/ConsoleHistoryTypes.d.ts +1 -1
  59. package/dist/console-history/ConsoleHistoryTypes.d.ts.map +1 -1
  60. package/dist/console-history/ConsoleHistoryTypes.js.map +1 -1
  61. package/dist/csv/CsvInputBar.d.ts +1 -1
  62. package/dist/csv/CsvInputBar.d.ts.map +1 -1
  63. package/dist/csv/CsvInputBar.js.map +1 -1
  64. package/dist/csv/CsvOverlay.d.ts +3 -3
  65. package/dist/csv/CsvOverlay.d.ts.map +1 -1
  66. package/dist/csv/CsvOverlay.js.map +1 -1
  67. package/dist/csv/CsvParser.d.ts +2 -2
  68. package/dist/csv/CsvParser.d.ts.map +1 -1
  69. package/dist/csv/CsvParser.js.map +1 -1
  70. package/dist/csv/CsvTypeParser.d.ts +1 -1
  71. package/dist/csv/CsvTypeParser.d.ts.map +1 -1
  72. package/dist/csv/CsvTypeParser.js.map +1 -1
  73. package/dist/log/LogLevelMenuItem.d.ts +1 -1
  74. package/dist/log/LogLevelMenuItem.d.ts.map +1 -1
  75. package/dist/log/LogLevelMenuItem.js.map +1 -1
  76. package/dist/log/LogView.d.ts +2 -2
  77. package/dist/log/LogView.d.ts.map +1 -1
  78. package/dist/log/LogView.js.map +1 -1
  79. package/dist/monaco/MonacoThemeProvider.d.ts +1 -1
  80. package/dist/monaco/MonacoThemeProvider.d.ts.map +1 -1
  81. package/dist/monaco/MonacoThemeProvider.js.map +1 -1
  82. package/dist/monaco/MonacoUtils.d.ts +2 -2
  83. package/dist/monaco/MonacoUtils.d.ts.map +1 -1
  84. package/dist/monaco/MonacoUtils.js.map +1 -1
  85. package/dist/monaco/lang/Language.d.ts +1 -1
  86. package/dist/monaco/lang/Language.d.ts.map +1 -1
  87. package/dist/monaco/lang/Language.js.map +1 -1
  88. package/dist/monaco/lang/db.d.ts +1 -1
  89. package/dist/monaco/lang/db.d.ts.map +1 -1
  90. package/dist/monaco/lang/db.js.map +1 -1
  91. package/dist/monaco/lang/groovy.d.ts +1 -1
  92. package/dist/monaco/lang/groovy.d.ts.map +1 -1
  93. package/dist/monaco/lang/groovy.js.map +1 -1
  94. package/dist/monaco/lang/log.d.ts +1 -1
  95. package/dist/monaco/lang/log.d.ts.map +1 -1
  96. package/dist/monaco/lang/log.js.map +1 -1
  97. package/dist/monaco/lang/python.d.ts +1 -1
  98. package/dist/monaco/lang/python.d.ts.map +1 -1
  99. package/dist/monaco/lang/python.js.map +1 -1
  100. package/dist/monaco/lang/scala.d.ts +1 -1
  101. package/dist/monaco/lang/scala.d.ts.map +1 -1
  102. package/dist/monaco/lang/scala.js.map +1 -1
  103. package/dist/notebook/Editor.d.ts +1 -1
  104. package/dist/notebook/Editor.d.ts.map +1 -1
  105. package/dist/notebook/Editor.js.map +1 -1
  106. package/dist/notebook/ScriptEditor.d.ts +1 -1
  107. package/dist/notebook/ScriptEditor.d.ts.map +1 -1
  108. package/dist/notebook/ScriptEditor.js.map +1 -1
  109. package/package.json +13 -13
@@ -1 +1 @@
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:\n /(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:\n /\\\\(?:[btnfr\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\n\n fstring_conv:\n /[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 type * as monaco from 'monaco-editor';\nimport { type 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:\n /(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:\n /\\\\(?:[btnfr\\\\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,\n\n fstring_conv:\n /[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,7 +1,7 @@
1
1
  /**
2
2
  * Editor editor for large blocks of code
3
3
  */
4
- import { Component, ReactElement } from 'react';
4
+ import { Component, type ReactElement } from 'react';
5
5
  import * as monaco from 'monaco-editor';
6
6
  import './Editor.scss';
7
7
  export interface EditorProps {
@@ -1 +1 @@
1
- {"version":3,"file":"Editor.d.ts","sourceRoot":"","sources":["../../src/notebook/Editor.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAc,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,eAAe,CAAC;AAEvB,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IAC3E,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IAC3E,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,oCAAoC,CAAC;CAC9D;AAED,cAAM,MAAO,SAAQ,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,YAAY;;mCAEQ,IAAI;mCACJ,IAAI;;MAE7B;gBAEU,KAAK,EAAE,WAAW;IAS9B,iBAAiB,IAAI,IAAI;IAMzB,oBAAoB,IAAI,IAAI;IAM5B,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAEjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC;IAE7C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQnC,YAAY,IAAI,IAAI;IAIpB,UAAU,IAAI,IAAI;IAUlB,gBAAgB,IAAI,IAAI;IAIxB,UAAU,IAAI,IAAI;IAiDlB,aAAa,IAAI,IAAI;IAQrB,MAAM,IAAI,YAAY;CAWvB;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Editor.d.ts","sourceRoot":"","sources":["../../src/notebook/Editor.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAc,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAE5D,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,OAAO,eAAe,CAAC;AAEvB,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IAC3E,mBAAmB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,KAAK,IAAI,CAAC;IAC3E,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,oCAAoC,CAAC;CAC9D;AAED,cAAM,MAAO,SAAQ,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,YAAY;;mCAEQ,IAAI;mCACJ,IAAI;;MAE7B;gBAEU,KAAK,EAAE,WAAW;IAS9B,iBAAiB,IAAI,IAAI;IAMzB,oBAAoB,IAAI,IAAI;IAM5B,SAAS,EAAE,cAAc,GAAG,IAAI,CAAC;IAEjC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC;IAE7C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAQnC,YAAY,IAAI,IAAI;IAIpB,UAAU,IAAI,IAAI;IAUlB,gBAAgB,IAAI,IAAI;IAIxB,UAAU,IAAI,IAAI;IAiDlB,aAAa,IAAI,IAAI;IAQrB,MAAM,IAAI,YAAY;CAWvB;AAED,eAAe,MAAM,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Editor.js","names":["React","Component","classNames","monaco","assertNotNull","MonacoUtils","jsx","_jsx","Editor","constructor","props","_defineProperty","handleResize","bind","container","state","componentDidMount","initEditor","window","addEventListener","componentWillUnmount","removeEventListener","destroyEditor","setLanguage","language","editor","model","getModel","setModelLanguage","updateDimensions","toggleFind","focus","trigger","undefined","_this$editor","layout","onEditorInitialized","settings","_objectSpread","copyWithSyntaxHighlighting","fixedOverflowWidgets","folding","fontFamily","glyphMargin","lineNumbersMinChars","minimap","enabled","scrollBeyondLastLine","tabCompletion","value","wordWrap","links","autoClosingBrackets","create","addAction","id","label","keybindings","KeyMod","CtrlCmd","KeyCode","KeyF","precondition","keybindingContext","contextMenuGroupId","contextMenuOrder","run","languages","registerLinkProvider","provideLinks","onEditorWillDestroy","dispose","render","className","ref"],"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';\nimport './Editor.scss';\n\nexport interface 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 links: true,\n autoClosingBrackets: 'beforeWhitespace',\n ...settings,\n };\n assertNotNull(this.container);\n\n this.editor = monaco.editor.create(this.container, settings);\n\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\n monaco.languages.registerLinkProvider('plaintext', {\n provideLinks: MonacoUtils.provideLinks,\n });\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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"}
1
+ {"version":3,"file":"Editor.js","names":["React","Component","classNames","monaco","assertNotNull","MonacoUtils","jsx","_jsx","Editor","constructor","props","_defineProperty","handleResize","bind","container","state","componentDidMount","initEditor","window","addEventListener","componentWillUnmount","removeEventListener","destroyEditor","setLanguage","language","editor","model","getModel","setModelLanguage","updateDimensions","toggleFind","focus","trigger","undefined","_this$editor","layout","onEditorInitialized","settings","_objectSpread","copyWithSyntaxHighlighting","fixedOverflowWidgets","folding","fontFamily","glyphMargin","lineNumbersMinChars","minimap","enabled","scrollBeyondLastLine","tabCompletion","value","wordWrap","links","autoClosingBrackets","create","addAction","id","label","keybindings","KeyMod","CtrlCmd","KeyCode","KeyF","precondition","keybindingContext","contextMenuGroupId","contextMenuOrder","run","languages","registerLinkProvider","provideLinks","onEditorWillDestroy","dispose","render","className","ref"],"sources":["../../src/notebook/Editor.tsx"],"sourcesContent":["/**\n * Editor editor for large blocks of code\n */\nimport React, { Component, type ReactElement } from 'react';\nimport classNames from 'classnames';\nimport * as monaco from 'monaco-editor';\nimport { assertNotNull } from '@deephaven/utils';\nimport MonacoUtils from '../monaco/MonacoUtils';\nimport './Editor.scss';\n\nexport interface 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 links: true,\n autoClosingBrackets: 'beforeWhitespace',\n ...settings,\n };\n assertNotNull(this.container);\n\n this.editor = monaco.editor.create(this.container, settings);\n\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\n monaco.languages.registerLinkProvider('plaintext', {\n provideLinks: MonacoUtils.provideLinks,\n });\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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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Script editor for large blocks of code
3
3
  */
4
- import { Component, ReactElement, RefObject } from 'react';
4
+ import { Component, type ReactElement, type RefObject } from 'react';
5
5
  import type { dh } from '@deephaven/jsapi-types';
6
6
  import type { editor, IDisposable } from 'monaco-editor';
7
7
  import Editor from './Editor';
@@ -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,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAM7B,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,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC;IAC9B,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;IAmB5B,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;CA8CvB;AAED,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"ScriptEditor.d.ts","sourceRoot":"","sources":["../../src/notebook/ScriptEditor.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAc,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG5E,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B,OAAO,qBAAqB,CAAC;AAM7B,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,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC;IAC9B,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;IAmB5B,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;CA8CvB;AAED,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ScriptEditor.js","names":["React","Component","LoadingOverlay","ShortcutRegistry","Log","assertNotNull","Editor","MonacoProviders","MonacoUtils","SHORTCUTS","ScriptEditorUtils","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","log","module","ScriptEditor","constructor","props","_defineProperty","handleEditorInitialized","bind","handleEditorWillDestroy","handleRun","handleRunSelected","updateShortcuts","contextActionCleanups","editorComponent","createRef","state","model","componentDidMount","addEventListener","componentDidUpdate","prevProps","_prevProps$settings","_prevProps$settings2","sessionLanguage","settings","language","languageChanged","debug","setLanguage","sessionDisconnected","languageMatch","prevLanguageMatch","undefined","deInitContextActions","deInitCodeCompletion","sessionConnected","initContextActions","initCodeCompletion","componentWillUnmount","removeEventListener","getValue","editor","error","getSelectedCommand","_this$editor","_this$editor2","range","getSelection","getModel","startLineNumber","endColumn","endLineNumber","startLineMinColumn","getLineMinColumn","endLineMaxColumn","getLineMaxColumn","wholeLineRange","setStartPosition","setEndPosition","outdentCode","getValueInRange","innerEditor","focusOnMount","onChange","onEditorInitialized","session","setState","setEOL","registerPasteHandler","onDidChangeModelContent","focus","onEditorWillDestroy","onRunCommand","command","length","cleanups","push","addAction","id","label","keybindings","getMonacoKeyCodeFromShortcut","NOTEBOOK","RUN","contextMenuGroupId","contextMenuOrder","run","RUN_SELECTED","forEach","cleanup","dispose","completionCleanup","openDocument","closeDocument","append","text","arguments","currentText","setValue","concat","lastLine","getLineCount","column","getLineLength","setPosition","lineNumber","updateDimensions","layout","toggleFind","current","render","_settings$language","isLoaded","isLoading","errorMessage","editorLanguage","completionProviderEnabled","children","className","ref"],"sources":["../../src/notebook/ScriptEditor.tsx"],"sourcesContent":["/**\n * Script editor for large blocks of code\n */\nimport React, { Component, ReactElement, RefObject } from 'react';\nimport { LoadingOverlay, ShortcutRegistry } from '@deephaven/components';\nimport Log from '@deephaven/log';\nimport type { dh } from '@deephaven/jsapi-types';\nimport { assertNotNull } from '@deephaven/utils';\nimport type { editor, IDisposable } from 'monaco-editor';\nimport Editor from './Editor';\nimport { MonacoProviders, MonacoUtils } from '../monaco';\nimport './ScriptEditor.scss';\nimport SHORTCUTS from '../ConsoleShortcuts';\nimport ScriptEditorUtils from './ScriptEditorUtils';\n\nconst log = Log.module('ScriptEditor');\n\ninterface ScriptEditorProps {\n error?: { message?: string };\n isLoading: boolean;\n isLoaded: boolean;\n focusOnMount?: boolean;\n onChange: (e: editor.IModelContentChangedEvent) => void;\n onRunCommand: (command: string) => void;\n onEditorInitialized: (editor: editor.IStandaloneCodeEditor) => void;\n onEditorWillDestroy: (editor: editor.IStandaloneCodeEditor) => void;\n session: dh.IdeSession | null;\n sessionLanguage?: string;\n settings?: editor.IStandaloneEditorConstructionOptions;\n}\n\ninterface ScriptEditorState {\n model: editor.ITextModel | null;\n}\n\nclass ScriptEditor extends Component<ScriptEditorProps, ScriptEditorState> {\n static defaultProps = {\n error: null,\n isLoading: false,\n isLoaded: false,\n focusOnMount: true,\n onChange: (): void => undefined,\n onEditorInitialized: (): void => undefined,\n onEditorWillDestroy: (): void => undefined,\n session: null,\n };\n\n constructor(props: ScriptEditorProps) {\n super(props);\n this.handleEditorInitialized = this.handleEditorInitialized.bind(this);\n this.handleEditorWillDestroy = this.handleEditorWillDestroy.bind(this);\n this.handleRun = this.handleRun.bind(this);\n this.handleRunSelected = this.handleRunSelected.bind(this);\n this.updateShortcuts = this.updateShortcuts.bind(this);\n\n this.contextActionCleanups = [];\n this.editorComponent = React.createRef();\n\n this.state = {\n model: null,\n };\n }\n\n componentDidMount(): void {\n ShortcutRegistry.addEventListener('onUpdate', this.updateShortcuts);\n }\n\n componentDidUpdate(prevProps: ScriptEditorProps): void {\n const { sessionLanguage, settings } = this.props;\n\n const language = settings?.language;\n\n const languageChanged = language !== prevProps.settings?.language;\n if (languageChanged) {\n log.debug('Set language', language);\n this.setLanguage(language);\n }\n\n const sessionDisconnected =\n sessionLanguage == null && prevProps.sessionLanguage != null;\n const languageMatch = language === sessionLanguage;\n const prevLanguageMatch =\n prevProps.settings?.language === prevProps.sessionLanguage;\n if (\n sessionDisconnected ||\n (sessionLanguage !== undefined && prevLanguageMatch && !languageMatch)\n ) {\n // Session disconnected or language changed from matching the session language to non-matching\n log.debug('De-init completion and context actions');\n this.deInitContextActions();\n this.deInitCodeCompletion();\n }\n\n const sessionConnected =\n sessionLanguage != null && prevProps.sessionLanguage == null;\n if (\n (sessionConnected && languageMatch) ||\n (sessionLanguage !== undefined && !prevLanguageMatch && languageMatch)\n ) {\n // Session connected with a matching language or notebook language changed to matching\n log.debug('Init completion and context actions');\n this.initContextActions();\n this.initCodeCompletion();\n }\n }\n\n componentWillUnmount(): void {\n ShortcutRegistry.removeEventListener('onUpdate', this.updateShortcuts);\n }\n\n contextActionCleanups: IDisposable[];\n\n completionCleanup?: IDisposable;\n\n editor?: editor.IStandaloneCodeEditor;\n\n editorComponent: RefObject<Editor>;\n\n getValue(): string | null {\n if (this.editor) {\n return this.editor.getValue();\n }\n log.error('Editor not initialized');\n return null;\n }\n\n getSelectedCommand(): string {\n const range = this.editor?.getSelection();\n assertNotNull(range);\n const model = this.editor?.getModel();\n assertNotNull(model);\n const { startLineNumber, endColumn } = range;\n let { endLineNumber } = range;\n if (endColumn === 1 && endLineNumber > startLineNumber) {\n endLineNumber -= 1;\n }\n const startLineMinColumn = model.getLineMinColumn(startLineNumber);\n const endLineMaxColumn = model.getLineMaxColumn(endLineNumber);\n const wholeLineRange = range\n .setStartPosition(startLineNumber, startLineMinColumn)\n .setEndPosition(endLineNumber, endLineMaxColumn);\n\n return ScriptEditorUtils.outdentCode(model.getValueInRange(wholeLineRange));\n }\n\n handleEditorInitialized(innerEditor: editor.IStandaloneCodeEditor): void {\n const {\n focusOnMount,\n onChange,\n onEditorInitialized,\n settings,\n session,\n sessionLanguage,\n } = this.props;\n\n log.debug('handleEditorInitialized', sessionLanguage, session, settings);\n\n this.editor = innerEditor;\n this.setState({ model: this.editor.getModel() });\n\n MonacoUtils.setEOL(innerEditor);\n MonacoUtils.registerPasteHandler(innerEditor);\n\n if (session != null && settings && sessionLanguage === settings.language) {\n this.initContextActions();\n this.initCodeCompletion();\n }\n\n innerEditor.onDidChangeModelContent(onChange);\n if (focusOnMount != null && focusOnMount) {\n innerEditor.focus();\n }\n\n onEditorInitialized(this.editor);\n }\n\n handleEditorWillDestroy(innerEditor: editor.IStandaloneCodeEditor): void {\n log.debug('handleEditorWillDestroy');\n const { onEditorWillDestroy } = this.props;\n onEditorWillDestroy(innerEditor);\n this.deInitContextActions();\n this.deInitCodeCompletion();\n this.setState({ model: null });\n this.editor = undefined;\n }\n\n handleRun(): void {\n const { onRunCommand } = this.props;\n const command = this.getValue();\n if (command != null) {\n onRunCommand(command);\n }\n }\n\n handleRunSelected(): void {\n const { onRunCommand } = this.props;\n const command = this.getSelectedCommand();\n onRunCommand(command);\n }\n\n initContextActions(): void {\n if (this.contextActionCleanups.length > 0) {\n log.error('Context actions already initialized.');\n return;\n }\n\n if (!this.editor) {\n return;\n }\n\n const cleanups = [];\n cleanups.push(\n this.editor.addAction({\n id: 'run-code',\n label: 'Run',\n keybindings: [\n MonacoUtils.getMonacoKeyCodeFromShortcut(SHORTCUTS.NOTEBOOK.RUN),\n ],\n contextMenuGroupId: 'navigation',\n contextMenuOrder: 1.5,\n\n run: () => {\n this.handleRun();\n },\n })\n );\n\n cleanups.push(\n this.editor.addAction({\n id: 'run-selected-code',\n label: 'Run Selected',\n keybindings: [\n MonacoUtils.getMonacoKeyCodeFromShortcut(\n SHORTCUTS.NOTEBOOK.RUN_SELECTED\n ),\n ],\n contextMenuGroupId: 'navigation',\n contextMenuOrder: 1.5,\n\n run: () => {\n this.handleRunSelected();\n },\n })\n );\n\n this.contextActionCleanups = cleanups;\n }\n\n deInitContextActions(): void {\n if (this.contextActionCleanups.length > 0) {\n this.contextActionCleanups.forEach(cleanup => cleanup.dispose());\n this.contextActionCleanups = [];\n }\n }\n\n updateShortcuts(): void {\n this.deInitContextActions();\n this.initContextActions();\n }\n\n initCodeCompletion(): void {\n if (this.completionCleanup != null) {\n log.error('Code completion already initialized.');\n return;\n }\n const { session } = this.props;\n log.debug('initCodeCompletion', this.editor, session);\n if (this.editor && session != null) {\n this.completionCleanup = MonacoUtils.openDocument(this.editor, session);\n }\n }\n\n deInitCodeCompletion(): void {\n const { session } = this.props;\n log.debug('deInitCodeCompletion', this.editor, session);\n if (this.completionCleanup) {\n this.completionCleanup.dispose();\n this.completionCleanup = undefined;\n if (this.editor && session != null) {\n MonacoUtils.closeDocument(this.editor, session);\n }\n }\n }\n\n append(text: string, focus = true): void {\n assertNotNull(this.editor);\n const model = this.editor.getModel();\n assertNotNull(model);\n const currentText = model.getValue();\n if (currentText) {\n model.setValue(`${currentText}\\n${text}`);\n } else {\n model.setValue(`${text}`);\n }\n\n const lastLine = model.getLineCount();\n const column = model.getLineLength(lastLine) + 1;\n\n this.editor.setPosition({ lineNumber: lastLine, column });\n\n if (focus) {\n this.editor.focus();\n }\n }\n\n updateDimensions(): void {\n log.debug('updateDimensions');\n if (this.editor) {\n this.editor.layout();\n }\n }\n\n focus(): void {\n log.debug('focus');\n if (this.editor) {\n this.editor.focus();\n }\n }\n\n toggleFind(): void {\n if (this.editorComponent.current) {\n this.editorComponent.current.toggleFind();\n }\n }\n\n setLanguage(language?: string): void {\n if (this.editorComponent.current && language !== undefined) {\n this.editorComponent.current.setLanguage(language);\n }\n }\n\n render(): ReactElement {\n const { error, isLoaded, isLoading, session, sessionLanguage, settings } =\n this.props;\n const { model } = this.state;\n const errorMessage = error ? `Unable to open document. ${error}` : null;\n const editorLanguage = settings ? settings.language ?? null : null;\n const completionProviderEnabled =\n model && session && editorLanguage === sessionLanguage;\n\n return (\n <>\n {(error || isLoading) && (\n <div className=\"h-100 w-100 position-relative\">\n <LoadingOverlay\n errorMessage={errorMessage}\n isLoading={isLoading}\n isLoaded={isLoaded}\n />\n </div>\n )}\n\n {isLoaded && (\n <div className=\"h-100 w-100 script-editor\">\n {settings && (\n <>\n <Editor\n ref={this.editorComponent}\n settings={settings}\n onEditorInitialized={this.handleEditorInitialized}\n onEditorWillDestroy={this.handleEditorWillDestroy}\n />\n {completionProviderEnabled != null &&\n completionProviderEnabled && (\n <MonacoProviders\n model={model}\n language={editorLanguage}\n session={session}\n />\n )}\n </>\n )}\n </div>\n )}\n </>\n );\n }\n}\n\nexport default ScriptEditor;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ScriptEditor.js","names":["React","Component","LoadingOverlay","ShortcutRegistry","Log","assertNotNull","Editor","MonacoProviders","MonacoUtils","SHORTCUTS","ScriptEditorUtils","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","log","module","ScriptEditor","constructor","props","_defineProperty","handleEditorInitialized","bind","handleEditorWillDestroy","handleRun","handleRunSelected","updateShortcuts","contextActionCleanups","editorComponent","createRef","state","model","componentDidMount","addEventListener","componentDidUpdate","prevProps","_prevProps$settings","_prevProps$settings2","sessionLanguage","settings","language","languageChanged","debug","setLanguage","sessionDisconnected","languageMatch","prevLanguageMatch","undefined","deInitContextActions","deInitCodeCompletion","sessionConnected","initContextActions","initCodeCompletion","componentWillUnmount","removeEventListener","getValue","editor","error","getSelectedCommand","_this$editor","_this$editor2","range","getSelection","getModel","startLineNumber","endColumn","endLineNumber","startLineMinColumn","getLineMinColumn","endLineMaxColumn","getLineMaxColumn","wholeLineRange","setStartPosition","setEndPosition","outdentCode","getValueInRange","innerEditor","focusOnMount","onChange","onEditorInitialized","session","setState","setEOL","registerPasteHandler","onDidChangeModelContent","focus","onEditorWillDestroy","onRunCommand","command","length","cleanups","push","addAction","id","label","keybindings","getMonacoKeyCodeFromShortcut","NOTEBOOK","RUN","contextMenuGroupId","contextMenuOrder","run","RUN_SELECTED","forEach","cleanup","dispose","completionCleanup","openDocument","closeDocument","append","text","arguments","currentText","setValue","concat","lastLine","getLineCount","column","getLineLength","setPosition","lineNumber","updateDimensions","layout","toggleFind","current","render","_settings$language","isLoaded","isLoading","errorMessage","editorLanguage","completionProviderEnabled","children","className","ref"],"sources":["../../src/notebook/ScriptEditor.tsx"],"sourcesContent":["/**\n * Script editor for large blocks of code\n */\nimport React, { Component, type ReactElement, type RefObject } from 'react';\nimport { LoadingOverlay, ShortcutRegistry } from '@deephaven/components';\nimport Log from '@deephaven/log';\nimport type { dh } from '@deephaven/jsapi-types';\nimport { assertNotNull } from '@deephaven/utils';\nimport type { editor, IDisposable } from 'monaco-editor';\nimport Editor from './Editor';\nimport { MonacoProviders, MonacoUtils } from '../monaco';\nimport './ScriptEditor.scss';\nimport SHORTCUTS from '../ConsoleShortcuts';\nimport ScriptEditorUtils from './ScriptEditorUtils';\n\nconst log = Log.module('ScriptEditor');\n\ninterface ScriptEditorProps {\n error?: { message?: string };\n isLoading: boolean;\n isLoaded: boolean;\n focusOnMount?: boolean;\n onChange: (e: editor.IModelContentChangedEvent) => void;\n onRunCommand: (command: string) => void;\n onEditorInitialized: (editor: editor.IStandaloneCodeEditor) => void;\n onEditorWillDestroy: (editor: editor.IStandaloneCodeEditor) => void;\n session: dh.IdeSession | null;\n sessionLanguage?: string;\n settings?: editor.IStandaloneEditorConstructionOptions;\n}\n\ninterface ScriptEditorState {\n model: editor.ITextModel | null;\n}\n\nclass ScriptEditor extends Component<ScriptEditorProps, ScriptEditorState> {\n static defaultProps = {\n error: null,\n isLoading: false,\n isLoaded: false,\n focusOnMount: true,\n onChange: (): void => undefined,\n onEditorInitialized: (): void => undefined,\n onEditorWillDestroy: (): void => undefined,\n session: null,\n };\n\n constructor(props: ScriptEditorProps) {\n super(props);\n this.handleEditorInitialized = this.handleEditorInitialized.bind(this);\n this.handleEditorWillDestroy = this.handleEditorWillDestroy.bind(this);\n this.handleRun = this.handleRun.bind(this);\n this.handleRunSelected = this.handleRunSelected.bind(this);\n this.updateShortcuts = this.updateShortcuts.bind(this);\n\n this.contextActionCleanups = [];\n this.editorComponent = React.createRef();\n\n this.state = {\n model: null,\n };\n }\n\n componentDidMount(): void {\n ShortcutRegistry.addEventListener('onUpdate', this.updateShortcuts);\n }\n\n componentDidUpdate(prevProps: ScriptEditorProps): void {\n const { sessionLanguage, settings } = this.props;\n\n const language = settings?.language;\n\n const languageChanged = language !== prevProps.settings?.language;\n if (languageChanged) {\n log.debug('Set language', language);\n this.setLanguage(language);\n }\n\n const sessionDisconnected =\n sessionLanguage == null && prevProps.sessionLanguage != null;\n const languageMatch = language === sessionLanguage;\n const prevLanguageMatch =\n prevProps.settings?.language === prevProps.sessionLanguage;\n if (\n sessionDisconnected ||\n (sessionLanguage !== undefined && prevLanguageMatch && !languageMatch)\n ) {\n // Session disconnected or language changed from matching the session language to non-matching\n log.debug('De-init completion and context actions');\n this.deInitContextActions();\n this.deInitCodeCompletion();\n }\n\n const sessionConnected =\n sessionLanguage != null && prevProps.sessionLanguage == null;\n if (\n (sessionConnected && languageMatch) ||\n (sessionLanguage !== undefined && !prevLanguageMatch && languageMatch)\n ) {\n // Session connected with a matching language or notebook language changed to matching\n log.debug('Init completion and context actions');\n this.initContextActions();\n this.initCodeCompletion();\n }\n }\n\n componentWillUnmount(): void {\n ShortcutRegistry.removeEventListener('onUpdate', this.updateShortcuts);\n }\n\n contextActionCleanups: IDisposable[];\n\n completionCleanup?: IDisposable;\n\n editor?: editor.IStandaloneCodeEditor;\n\n editorComponent: RefObject<Editor>;\n\n getValue(): string | null {\n if (this.editor) {\n return this.editor.getValue();\n }\n log.error('Editor not initialized');\n return null;\n }\n\n getSelectedCommand(): string {\n const range = this.editor?.getSelection();\n assertNotNull(range);\n const model = this.editor?.getModel();\n assertNotNull(model);\n const { startLineNumber, endColumn } = range;\n let { endLineNumber } = range;\n if (endColumn === 1 && endLineNumber > startLineNumber) {\n endLineNumber -= 1;\n }\n const startLineMinColumn = model.getLineMinColumn(startLineNumber);\n const endLineMaxColumn = model.getLineMaxColumn(endLineNumber);\n const wholeLineRange = range\n .setStartPosition(startLineNumber, startLineMinColumn)\n .setEndPosition(endLineNumber, endLineMaxColumn);\n\n return ScriptEditorUtils.outdentCode(model.getValueInRange(wholeLineRange));\n }\n\n handleEditorInitialized(innerEditor: editor.IStandaloneCodeEditor): void {\n const {\n focusOnMount,\n onChange,\n onEditorInitialized,\n settings,\n session,\n sessionLanguage,\n } = this.props;\n\n log.debug('handleEditorInitialized', sessionLanguage, session, settings);\n\n this.editor = innerEditor;\n this.setState({ model: this.editor.getModel() });\n\n MonacoUtils.setEOL(innerEditor);\n MonacoUtils.registerPasteHandler(innerEditor);\n\n if (session != null && settings && sessionLanguage === settings.language) {\n this.initContextActions();\n this.initCodeCompletion();\n }\n\n innerEditor.onDidChangeModelContent(onChange);\n if (focusOnMount != null && focusOnMount) {\n innerEditor.focus();\n }\n\n onEditorInitialized(this.editor);\n }\n\n handleEditorWillDestroy(innerEditor: editor.IStandaloneCodeEditor): void {\n log.debug('handleEditorWillDestroy');\n const { onEditorWillDestroy } = this.props;\n onEditorWillDestroy(innerEditor);\n this.deInitContextActions();\n this.deInitCodeCompletion();\n this.setState({ model: null });\n this.editor = undefined;\n }\n\n handleRun(): void {\n const { onRunCommand } = this.props;\n const command = this.getValue();\n if (command != null) {\n onRunCommand(command);\n }\n }\n\n handleRunSelected(): void {\n const { onRunCommand } = this.props;\n const command = this.getSelectedCommand();\n onRunCommand(command);\n }\n\n initContextActions(): void {\n if (this.contextActionCleanups.length > 0) {\n log.error('Context actions already initialized.');\n return;\n }\n\n if (!this.editor) {\n return;\n }\n\n const cleanups = [];\n cleanups.push(\n this.editor.addAction({\n id: 'run-code',\n label: 'Run',\n keybindings: [\n MonacoUtils.getMonacoKeyCodeFromShortcut(SHORTCUTS.NOTEBOOK.RUN),\n ],\n contextMenuGroupId: 'navigation',\n contextMenuOrder: 1.5,\n\n run: () => {\n this.handleRun();\n },\n })\n );\n\n cleanups.push(\n this.editor.addAction({\n id: 'run-selected-code',\n label: 'Run Selected',\n keybindings: [\n MonacoUtils.getMonacoKeyCodeFromShortcut(\n SHORTCUTS.NOTEBOOK.RUN_SELECTED\n ),\n ],\n contextMenuGroupId: 'navigation',\n contextMenuOrder: 1.5,\n\n run: () => {\n this.handleRunSelected();\n },\n })\n );\n\n this.contextActionCleanups = cleanups;\n }\n\n deInitContextActions(): void {\n if (this.contextActionCleanups.length > 0) {\n this.contextActionCleanups.forEach(cleanup => cleanup.dispose());\n this.contextActionCleanups = [];\n }\n }\n\n updateShortcuts(): void {\n this.deInitContextActions();\n this.initContextActions();\n }\n\n initCodeCompletion(): void {\n if (this.completionCleanup != null) {\n log.error('Code completion already initialized.');\n return;\n }\n const { session } = this.props;\n log.debug('initCodeCompletion', this.editor, session);\n if (this.editor && session != null) {\n this.completionCleanup = MonacoUtils.openDocument(this.editor, session);\n }\n }\n\n deInitCodeCompletion(): void {\n const { session } = this.props;\n log.debug('deInitCodeCompletion', this.editor, session);\n if (this.completionCleanup) {\n this.completionCleanup.dispose();\n this.completionCleanup = undefined;\n if (this.editor && session != null) {\n MonacoUtils.closeDocument(this.editor, session);\n }\n }\n }\n\n append(text: string, focus = true): void {\n assertNotNull(this.editor);\n const model = this.editor.getModel();\n assertNotNull(model);\n const currentText = model.getValue();\n if (currentText) {\n model.setValue(`${currentText}\\n${text}`);\n } else {\n model.setValue(`${text}`);\n }\n\n const lastLine = model.getLineCount();\n const column = model.getLineLength(lastLine) + 1;\n\n this.editor.setPosition({ lineNumber: lastLine, column });\n\n if (focus) {\n this.editor.focus();\n }\n }\n\n updateDimensions(): void {\n log.debug('updateDimensions');\n if (this.editor) {\n this.editor.layout();\n }\n }\n\n focus(): void {\n log.debug('focus');\n if (this.editor) {\n this.editor.focus();\n }\n }\n\n toggleFind(): void {\n if (this.editorComponent.current) {\n this.editorComponent.current.toggleFind();\n }\n }\n\n setLanguage(language?: string): void {\n if (this.editorComponent.current && language !== undefined) {\n this.editorComponent.current.setLanguage(language);\n }\n }\n\n render(): ReactElement {\n const { error, isLoaded, isLoading, session, sessionLanguage, settings } =\n this.props;\n const { model } = this.state;\n const errorMessage = error ? `Unable to open document. ${error}` : null;\n const editorLanguage = settings ? settings.language ?? null : null;\n const completionProviderEnabled =\n model && session && editorLanguage === sessionLanguage;\n\n return (\n <>\n {(error || isLoading) && (\n <div className=\"h-100 w-100 position-relative\">\n <LoadingOverlay\n errorMessage={errorMessage}\n isLoading={isLoading}\n isLoaded={isLoaded}\n />\n </div>\n )}\n\n {isLoaded && (\n <div className=\"h-100 w-100 script-editor\">\n {settings && (\n <>\n <Editor\n ref={this.editorComponent}\n settings={settings}\n onEditorInitialized={this.handleEditorInitialized}\n onEditorWillDestroy={this.handleEditorWillDestroy}\n />\n {completionProviderEnabled != null &&\n completionProviderEnabled && (\n <MonacoProviders\n model={model}\n language={editorLanguage}\n session={session}\n />\n )}\n </>\n )}\n </div>\n )}\n </>\n );\n }\n}\n\nexport default ScriptEditor;\n"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,KAAK,IAAIC,SAAS,QAA2C,OAAO;AAC3E,SAASC,cAAc,EAAEC,gBAAgB,QAAQ,uBAAuB;AACxE,OAAOC,GAAG,MAAM,gBAAgB;AAEhC,SAASC,aAAa,QAAQ,kBAAkB;AAAC,OAE1CC,MAAM;AAAA,SACJC,eAAe,EAAEC,WAAW;AAAA;AAAA,OAE9BC,SAAS;AAAA,OACTC,iBAAiB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,QAAA,IAAAC,SAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAExB,IAAMC,GAAG,GAAGb,GAAG,CAACc,MAAM,CAAC,cAAc,CAAC;AAoBtC,MAAMC,YAAY,SAASlB,SAAS,CAAuC;EAYzEmB,WAAWA,CAACC,KAAwB,EAAE;IACpC,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACb,IAAI,CAACC,uBAAuB,GAAG,IAAI,CAACA,uBAAuB,CAACC,IAAI,CAAC,IAAI,CAAC;IACtE,IAAI,CAACC,uBAAuB,GAAG,IAAI,CAACA,uBAAuB,CAACD,IAAI,CAAC,IAAI,CAAC;IACtE,IAAI,CAACE,SAAS,GAAG,IAAI,CAACA,SAAS,CAACF,IAAI,CAAC,IAAI,CAAC;IAC1C,IAAI,CAACG,iBAAiB,GAAG,IAAI,CAACA,iBAAiB,CAACH,IAAI,CAAC,IAAI,CAAC;IAC1D,IAAI,CAACI,eAAe,GAAG,IAAI,CAACA,eAAe,CAACJ,IAAI,CAAC,IAAI,CAAC;IAEtD,IAAI,CAACK,qBAAqB,GAAG,EAAE;IAC/B,IAAI,CAACC,eAAe,gBAAG9B,KAAK,CAAC+B,SAAS,CAAC,CAAC;IAExC,IAAI,CAACC,KAAK,GAAG;MACXC,KAAK,EAAE;IACT,CAAC;EACH;EAEAC,iBAAiBA,CAAA,EAAS;IACxB/B,gBAAgB,CAACgC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAACP,eAAe,CAAC;EACrE;EAEAQ,kBAAkBA,CAACC,SAA4B,EAAQ;IAAA,IAAAC,mBAAA,EAAAC,oBAAA;IACrD,IAAM;MAAEC,eAAe;MAAEC;IAAS,CAAC,GAAG,IAAI,CAACpB,KAAK;IAEhD,IAAMqB,QAAQ,GAAGD,QAAQ,aAARA,QAAQ,uBAARA,QAAQ,CAAEC,QAAQ;IAEnC,IAAMC,eAAe,GAAGD,QAAQ,OAAAJ,mBAAA,GAAKD,SAAS,CAACI,QAAQ,cAAAH,mBAAA,uBAAlBA,mBAAA,CAAoBI,QAAQ;IACjE,IAAIC,eAAe,EAAE;MACnB1B,GAAG,CAAC2B,KAAK,CAAC,cAAc,EAAEF,QAAQ,CAAC;MACnC,IAAI,CAACG,WAAW,CAACH,QAAQ,CAAC;IAC5B;IAEA,IAAMI,mBAAmB,GACvBN,eAAe,IAAI,IAAI,IAAIH,SAAS,CAACG,eAAe,IAAI,IAAI;IAC9D,IAAMO,aAAa,GAAGL,QAAQ,KAAKF,eAAe;IAClD,IAAMQ,iBAAiB,GACrB,EAAAT,oBAAA,GAAAF,SAAS,CAACI,QAAQ,cAAAF,oBAAA,uBAAlBA,oBAAA,CAAoBG,QAAQ,MAAKL,SAAS,CAACG,eAAe;IAC5D,IACEM,mBAAmB,IAClBN,eAAe,KAAKS,SAAS,IAAID,iBAAiB,IAAI,CAACD,aAAc,EACtE;MACA;MACA9B,GAAG,CAAC2B,KAAK,CAAC,wCAAwC,CAAC;MACnD,IAAI,CAACM,oBAAoB,CAAC,CAAC;MAC3B,IAAI,CAACC,oBAAoB,CAAC,CAAC;IAC7B;IAEA,IAAMC,gBAAgB,GACpBZ,eAAe,IAAI,IAAI,IAAIH,SAAS,CAACG,eAAe,IAAI,IAAI;IAC9D,IACGY,gBAAgB,IAAIL,aAAa,IACjCP,eAAe,KAAKS,SAAS,IAAI,CAACD,iBAAiB,IAAID,aAAc,EACtE;MACA;MACA9B,GAAG,CAAC2B,KAAK,CAAC,qCAAqC,CAAC;MAChD,IAAI,CAACS,kBAAkB,CAAC,CAAC;MACzB,IAAI,CAACC,kBAAkB,CAAC,CAAC;IAC3B;EACF;EAEAC,oBAAoBA,CAAA,EAAS;IAC3BpD,gBAAgB,CAACqD,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC5B,eAAe,CAAC;EACxE;EAUA6B,QAAQA,CAAA,EAAkB;IACxB,IAAI,IAAI,CAACC,MAAM,EAAE;MACf,OAAO,IAAI,CAACA,MAAM,CAACD,QAAQ,CAAC,CAAC;IAC/B;IACAxC,GAAG,CAAC0C,KAAK,CAAC,wBAAwB,CAAC;IACnC,OAAO,IAAI;EACb;EAEAC,kBAAkBA,CAAA,EAAW;IAAA,IAAAC,YAAA,EAAAC,aAAA;IAC3B,IAAMC,KAAK,IAAAF,YAAA,GAAG,IAAI,CAACH,MAAM,cAAAG,YAAA,uBAAXA,YAAA,CAAaG,YAAY,CAAC,CAAC;IACzC3D,aAAa,CAAC0D,KAAK,CAAC;IACpB,IAAM9B,KAAK,IAAA6B,aAAA,GAAG,IAAI,CAACJ,MAAM,cAAAI,aAAA,uBAAXA,aAAA,CAAaG,QAAQ,CAAC,CAAC;IACrC5D,aAAa,CAAC4B,KAAK,CAAC;IACpB,IAAM;MAAEiC,eAAe;MAAEC;IAAU,CAAC,GAAGJ,KAAK;IAC5C,IAAI;MAAEK;IAAc,CAAC,GAAGL,KAAK;IAC7B,IAAII,SAAS,KAAK,CAAC,IAAIC,aAAa,GAAGF,eAAe,EAAE;MACtDE,aAAa,IAAI,CAAC;IACpB;IACA,IAAMC,kBAAkB,GAAGpC,KAAK,CAACqC,gBAAgB,CAACJ,eAAe,CAAC;IAClE,IAAMK,gBAAgB,GAAGtC,KAAK,CAACuC,gBAAgB,CAACJ,aAAa,CAAC;IAC9D,IAAMK,cAAc,GAAGV,KAAK,CACzBW,gBAAgB,CAACR,eAAe,EAAEG,kBAAkB,CAAC,CACrDM,cAAc,CAACP,aAAa,EAAEG,gBAAgB,CAAC;IAElD,OAAO7D,iBAAiB,CAACkE,WAAW,CAAC3C,KAAK,CAAC4C,eAAe,CAACJ,cAAc,CAAC,CAAC;EAC7E;EAEAlD,uBAAuBA,CAACuD,WAAyC,EAAQ;IACvE,IAAM;MACJC,YAAY;MACZC,QAAQ;MACRC,mBAAmB;MACnBxC,QAAQ;MACRyC,OAAO;MACP1C;IACF,CAAC,GAAG,IAAI,CAACnB,KAAK;IAEdJ,GAAG,CAAC2B,KAAK,CAAC,yBAAyB,EAAEJ,eAAe,EAAE0C,OAAO,EAAEzC,QAAQ,CAAC;IAExE,IAAI,CAACiB,MAAM,GAAGoB,WAAW;IACzB,IAAI,CAACK,QAAQ,CAAC;MAAElD,KAAK,EAAE,IAAI,CAACyB,MAAM,CAACO,QAAQ,CAAC;IAAE,CAAC,CAAC;IAEhDzD,WAAW,CAAC4E,MAAM,CAACN,WAAW,CAAC;IAC/BtE,WAAW,CAAC6E,oBAAoB,CAACP,WAAW,CAAC;IAE7C,IAAII,OAAO,IAAI,IAAI,IAAIzC,QAAQ,IAAID,eAAe,KAAKC,QAAQ,CAACC,QAAQ,EAAE;MACxE,IAAI,CAACW,kBAAkB,CAAC,CAAC;MACzB,IAAI,CAACC,kBAAkB,CAAC,CAAC;IAC3B;IAEAwB,WAAW,CAACQ,uBAAuB,CAACN,QAAQ,CAAC;IAC7C,IAAID,YAAY,IAAI,IAAI,IAAIA,YAAY,EAAE;MACxCD,WAAW,CAACS,KAAK,CAAC,CAAC;IACrB;IAEAN,mBAAmB,CAAC,IAAI,CAACvB,MAAM,CAAC;EAClC;EAEAjC,uBAAuBA,CAACqD,WAAyC,EAAQ;IACvE7D,GAAG,CAAC2B,KAAK,CAAC,yBAAyB,CAAC;IACpC,IAAM;MAAE4C;IAAoB,CAAC,GAAG,IAAI,CAACnE,KAAK;IAC1CmE,mBAAmB,CAACV,WAAW,CAAC;IAChC,IAAI,CAAC5B,oBAAoB,CAAC,CAAC;IAC3B,IAAI,CAACC,oBAAoB,CAAC,CAAC;IAC3B,IAAI,CAACgC,QAAQ,CAAC;MAAElD,KAAK,EAAE;IAAK,CAAC,CAAC;IAC9B,IAAI,CAACyB,MAAM,GAAGT,SAAS;EACzB;EAEAvB,SAASA,CAAA,EAAS;IAChB,IAAM;MAAE+D;IAAa,CAAC,GAAG,IAAI,CAACpE,KAAK;IACnC,IAAMqE,OAAO,GAAG,IAAI,CAACjC,QAAQ,CAAC,CAAC;IAC/B,IAAIiC,OAAO,IAAI,IAAI,EAAE;MACnBD,YAAY,CAACC,OAAO,CAAC;IACvB;EACF;EAEA/D,iBAAiBA,CAAA,EAAS;IACxB,IAAM;MAAE8D;IAAa,CAAC,GAAG,IAAI,CAACpE,KAAK;IACnC,IAAMqE,OAAO,GAAG,IAAI,CAAC9B,kBAAkB,CAAC,CAAC;IACzC6B,YAAY,CAACC,OAAO,CAAC;EACvB;EAEArC,kBAAkBA,CAAA,EAAS;IACzB,IAAI,IAAI,CAACxB,qBAAqB,CAAC8D,MAAM,GAAG,CAAC,EAAE;MACzC1E,GAAG,CAAC0C,KAAK,CAAC,sCAAsC,CAAC;MACjD;IACF;IAEA,IAAI,CAAC,IAAI,CAACD,MAAM,EAAE;MAChB;IACF;IAEA,IAAMkC,QAAQ,GAAG,EAAE;IACnBA,QAAQ,CAACC,IAAI,CACX,IAAI,CAACnC,MAAM,CAACoC,SAAS,CAAC;MACpBC,EAAE,EAAE,UAAU;MACdC,KAAK,EAAE,KAAK;MACZC,WAAW,EAAE,CACXzF,WAAW,CAAC0F,4BAA4B,CAACzF,SAAS,CAAC0F,QAAQ,CAACC,GAAG,CAAC,CACjE;MACDC,kBAAkB,EAAE,YAAY;MAChCC,gBAAgB,EAAE,GAAG;MAErBC,GAAG,EAAEA,CAAA,KAAM;QACT,IAAI,CAAC7E,SAAS,CAAC,CAAC;MAClB;IACF,CAAC,CACH,CAAC;IAEDkE,QAAQ,CAACC,IAAI,CACX,IAAI,CAACnC,MAAM,CAACoC,SAAS,CAAC;MACpBC,EAAE,EAAE,mBAAmB;MACvBC,KAAK,EAAE,cAAc;MACrBC,WAAW,EAAE,CACXzF,WAAW,CAAC0F,4BAA4B,CACtCzF,SAAS,CAAC0F,QAAQ,CAACK,YACrB,CAAC,CACF;MACDH,kBAAkB,EAAE,YAAY;MAChCC,gBAAgB,EAAE,GAAG;MAErBC,GAAG,EAAEA,CAAA,KAAM;QACT,IAAI,CAAC5E,iBAAiB,CAAC,CAAC;MAC1B;IACF,CAAC,CACH,CAAC;IAED,IAAI,CAACE,qBAAqB,GAAG+D,QAAQ;EACvC;EAEA1C,oBAAoBA,CAAA,EAAS;IAC3B,IAAI,IAAI,CAACrB,qBAAqB,CAAC8D,MAAM,GAAG,CAAC,EAAE;MACzC,IAAI,CAAC9D,qBAAqB,CAAC4E,OAAO,CAACC,OAAO,IAAIA,OAAO,CAACC,OAAO,CAAC,CAAC,CAAC;MAChE,IAAI,CAAC9E,qBAAqB,GAAG,EAAE;IACjC;EACF;EAEAD,eAAeA,CAAA,EAAS;IACtB,IAAI,CAACsB,oBAAoB,CAAC,CAAC;IAC3B,IAAI,CAACG,kBAAkB,CAAC,CAAC;EAC3B;EAEAC,kBAAkBA,CAAA,EAAS;IACzB,IAAI,IAAI,CAACsD,iBAAiB,IAAI,IAAI,EAAE;MAClC3F,GAAG,CAAC0C,KAAK,CAAC,sCAAsC,CAAC;MACjD;IACF;IACA,IAAM;MAAEuB;IAAQ,CAAC,GAAG,IAAI,CAAC7D,KAAK;IAC9BJ,GAAG,CAAC2B,KAAK,CAAC,oBAAoB,EAAE,IAAI,CAACc,MAAM,EAAEwB,OAAO,CAAC;IACrD,IAAI,IAAI,CAACxB,MAAM,IAAIwB,OAAO,IAAI,IAAI,EAAE;MAClC,IAAI,CAAC0B,iBAAiB,GAAGpG,WAAW,CAACqG,YAAY,CAAC,IAAI,CAACnD,MAAM,EAAEwB,OAAO,CAAC;IACzE;EACF;EAEA/B,oBAAoBA,CAAA,EAAS;IAC3B,IAAM;MAAE+B;IAAQ,CAAC,GAAG,IAAI,CAAC7D,KAAK;IAC9BJ,GAAG,CAAC2B,KAAK,CAAC,sBAAsB,EAAE,IAAI,CAACc,MAAM,EAAEwB,OAAO,CAAC;IACvD,IAAI,IAAI,CAAC0B,iBAAiB,EAAE;MAC1B,IAAI,CAACA,iBAAiB,CAACD,OAAO,CAAC,CAAC;MAChC,IAAI,CAACC,iBAAiB,GAAG3D,SAAS;MAClC,IAAI,IAAI,CAACS,MAAM,IAAIwB,OAAO,IAAI,IAAI,EAAE;QAClC1E,WAAW,CAACsG,aAAa,CAAC,IAAI,CAACpD,MAAM,EAAEwB,OAAO,CAAC;MACjD;IACF;EACF;EAEA6B,MAAMA,CAACC,IAAY,EAAsB;IAAA,IAApBzB,KAAK,GAAA0B,SAAA,CAAAtB,MAAA,QAAAsB,SAAA,QAAAhE,SAAA,GAAAgE,SAAA,MAAG,IAAI;IAC/B5G,aAAa,CAAC,IAAI,CAACqD,MAAM,CAAC;IAC1B,IAAMzB,KAAK,GAAG,IAAI,CAACyB,MAAM,CAACO,QAAQ,CAAC,CAAC;IACpC5D,aAAa,CAAC4B,KAAK,CAAC;IACpB,IAAMiF,WAAW,GAAGjF,KAAK,CAACwB,QAAQ,CAAC,CAAC;IACpC,IAAIyD,WAAW,EAAE;MACfjF,KAAK,CAACkF,QAAQ,IAAAC,MAAA,CAAIF,WAAW,QAAAE,MAAA,CAAKJ,IAAI,CAAE,CAAC;IAC3C,CAAC,MAAM;MACL/E,KAAK,CAACkF,QAAQ,IAAAC,MAAA,CAAIJ,IAAI,CAAE,CAAC;IAC3B;IAEA,IAAMK,QAAQ,GAAGpF,KAAK,CAACqF,YAAY,CAAC,CAAC;IACrC,IAAMC,MAAM,GAAGtF,KAAK,CAACuF,aAAa,CAACH,QAAQ,CAAC,GAAG,CAAC;IAEhD,IAAI,CAAC3D,MAAM,CAAC+D,WAAW,CAAC;MAAEC,UAAU,EAAEL,QAAQ;MAAEE;IAAO,CAAC,CAAC;IAEzD,IAAIhC,KAAK,EAAE;MACT,IAAI,CAAC7B,MAAM,CAAC6B,KAAK,CAAC,CAAC;IACrB;EACF;EAEAoC,gBAAgBA,CAAA,EAAS;IACvB1G,GAAG,CAAC2B,KAAK,CAAC,kBAAkB,CAAC;IAC7B,IAAI,IAAI,CAACc,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAACkE,MAAM,CAAC,CAAC;IACtB;EACF;EAEArC,KAAKA,CAAA,EAAS;IACZtE,GAAG,CAAC2B,KAAK,CAAC,OAAO,CAAC;IAClB,IAAI,IAAI,CAACc,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAAC6B,KAAK,CAAC,CAAC;IACrB;EACF;EAEAsC,UAAUA,CAAA,EAAS;IACjB,IAAI,IAAI,CAAC/F,eAAe,CAACgG,OAAO,EAAE;MAChC,IAAI,CAAChG,eAAe,CAACgG,OAAO,CAACD,UAAU,CAAC,CAAC;IAC3C;EACF;EAEAhF,WAAWA,CAACH,QAAiB,EAAQ;IACnC,IAAI,IAAI,CAACZ,eAAe,CAACgG,OAAO,IAAIpF,QAAQ,KAAKO,SAAS,EAAE;MAC1D,IAAI,CAACnB,eAAe,CAACgG,OAAO,CAACjF,WAAW,CAACH,QAAQ,CAAC;IACpD;EACF;EAEAqF,MAAMA,CAAA,EAAiB;IAAA,IAAAC,kBAAA;IACrB,IAAM;MAAErE,KAAK;MAAEsE,QAAQ;MAAEC,SAAS;MAAEhD,OAAO;MAAE1C,eAAe;MAAEC;IAAS,CAAC,GACtE,IAAI,CAACpB,KAAK;IACZ,IAAM;MAAEY;IAAM,CAAC,GAAG,IAAI,CAACD,KAAK;IAC5B,IAAMmG,YAAY,GAAGxE,KAAK,+BAAAyD,MAAA,CAA+BzD,KAAK,IAAK,IAAI;IACvE,IAAMyE,cAAc,GAAG3F,QAAQ,IAAAuF,kBAAA,GAAGvF,QAAQ,CAACC,QAAQ,cAAAsF,kBAAA,cAAAA,kBAAA,GAAI,IAAI,GAAG,IAAI;IAClE,IAAMK,yBAAyB,GAC7BpG,KAAK,IAAIiD,OAAO,IAAIkD,cAAc,KAAK5F,eAAe;IAExD,oBACExB,KAAA,CAAAF,SAAA;MAAAwH,QAAA,GACG,CAAC3E,KAAK,IAAIuE,SAAS,kBAClBtH,IAAA;QAAK2H,SAAS,EAAC,+BAA+B;QAAAD,QAAA,eAC5C1H,IAAA,CAACV,cAAc;UACbiI,YAAY,EAAEA,YAAa;UAC3BD,SAAS,EAAEA,SAAU;UACrBD,QAAQ,EAAEA;QAAS,CACpB;MAAC,CACC,CACN,EAEAA,QAAQ,iBACPrH,IAAA;QAAK2H,SAAS,EAAC,2BAA2B;QAAAD,QAAA,EACvC7F,QAAQ,iBACPzB,KAAA,CAAAF,SAAA;UAAAwH,QAAA,gBACE1H,IAAA,CAACN,MAAM;YACLkI,GAAG,EAAE,IAAI,CAAC1G,eAAgB;YAC1BW,QAAQ,EAAEA,QAAS;YACnBwC,mBAAmB,EAAE,IAAI,CAAC1D,uBAAwB;YAClDiE,mBAAmB,EAAE,IAAI,CAAC/D;UAAwB,CACnD,CAAC,EACD4G,yBAAyB,IAAI,IAAI,IAChCA,yBAAyB,iBACvBzH,IAAA,CAACL,eAAe;YACd0B,KAAK,EAAEA,KAAM;YACbS,QAAQ,EAAE0F,cAAe;YACzBlD,OAAO,EAAEA;UAAQ,CAClB,CACF;QAAA,CACH;MACH,CACE,CACN;IAAA,CACD,CAAC;EAEP;AACF;AAAC5D,eAAA,CAtVKH,YAAY,kBACM;EACpBwC,KAAK,EAAE,IAAI;EACXuE,SAAS,EAAE,KAAK;EAChBD,QAAQ,EAAE,KAAK;EACflD,YAAY,EAAE,IAAI;EAClBC,QAAQ,EAAEA,CAAA,KAAY/B,SAAS;EAC/BgC,mBAAmB,EAAEA,CAAA,KAAYhC,SAAS;EAC1CuC,mBAAmB,EAAEA,CAAA,KAAYvC,SAAS;EAC1CiC,OAAO,EAAE;AACX,CAAC;AA8UH,eAAe/D,YAAY"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@deephaven/console",
3
- "version": "0.94.0",
3
+ "version": "0.95.0",
4
4
  "description": "Deephaven Console",
5
5
  "author": "Deephaven Data Labs LLC",
6
6
  "license": "Apache-2.0",
@@ -23,15 +23,15 @@
23
23
  "build:sass": "sass --embed-sources --load-path=../../node_modules ./src:./dist"
24
24
  },
25
25
  "dependencies": {
26
- "@deephaven/chart": "^0.94.0",
27
- "@deephaven/components": "^0.94.0",
28
- "@deephaven/icons": "^0.94.0",
29
- "@deephaven/jsapi-bootstrap": "^0.94.0",
26
+ "@deephaven/chart": "^0.95.0",
27
+ "@deephaven/components": "^0.95.0",
28
+ "@deephaven/icons": "^0.95.0",
29
+ "@deephaven/jsapi-bootstrap": "^0.95.0",
30
30
  "@deephaven/jsapi-types": "^1.0.0-dev0.34.0",
31
- "@deephaven/log": "^0.94.0",
32
- "@deephaven/react-hooks": "^0.94.0",
33
- "@deephaven/storage": "^0.94.0",
34
- "@deephaven/utils": "^0.94.0",
31
+ "@deephaven/log": "^0.95.0",
32
+ "@deephaven/react-hooks": "^0.95.0",
33
+ "@deephaven/storage": "^0.95.0",
34
+ "@deephaven/utils": "^0.95.0",
35
35
  "@fortawesome/react-fontawesome": "^0.2.0",
36
36
  "classnames": "^2.3.1",
37
37
  "linkifyjs": "^4.1.0",
@@ -51,9 +51,9 @@
51
51
  "react-dom": ">=16.8.0"
52
52
  },
53
53
  "devDependencies": {
54
- "@deephaven/jsapi-shim": "^0.94.0",
55
- "@deephaven/mocks": "^0.94.0",
56
- "@deephaven/test-utils": "^0.94.0"
54
+ "@deephaven/jsapi-shim": "^0.95.0",
55
+ "@deephaven/mocks": "^0.95.0",
56
+ "@deephaven/test-utils": "^0.95.0"
57
57
  },
58
58
  "files": [
59
59
  "dist"
@@ -64,5 +64,5 @@
64
64
  "publishConfig": {
65
65
  "access": "public"
66
66
  },
67
- "gitHead": "96e3d4326a855ae67e65f036a909be130c66c40d"
67
+ "gitHead": "ec9b41e921e2122879f53e9a266084d529664680"
68
68
  }