@opensumi/ide-editor 2.12.1-next-079c1930

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 (298) hide show
  1. package/README.md +565 -0
  2. package/lib/browser/breadcrumb/default.d.ts +28 -0
  3. package/lib/browser/breadcrumb/default.d.ts.map +1 -0
  4. package/lib/browser/breadcrumb/default.js +283 -0
  5. package/lib/browser/breadcrumb/default.js.map +1 -0
  6. package/lib/browser/breadcrumb/document-symbol.d.ts +36 -0
  7. package/lib/browser/breadcrumb/document-symbol.d.ts.map +1 -0
  8. package/lib/browser/breadcrumb/document-symbol.js +161 -0
  9. package/lib/browser/breadcrumb/document-symbol.js.map +1 -0
  10. package/lib/browser/breadcrumb/index.d.ts +20 -0
  11. package/lib/browser/breadcrumb/index.d.ts.map +1 -0
  12. package/lib/browser/breadcrumb/index.js +90 -0
  13. package/lib/browser/breadcrumb/index.js.map +1 -0
  14. package/lib/browser/component/scroll/scroll.d.ts +66 -0
  15. package/lib/browser/component/scroll/scroll.d.ts.map +1 -0
  16. package/lib/browser/component/scroll/scroll.js +263 -0
  17. package/lib/browser/component/scroll/scroll.js.map +1 -0
  18. package/lib/browser/component/scroll/scroll.module.less +83 -0
  19. package/lib/browser/component.d.ts +23 -0
  20. package/lib/browser/component.d.ts.map +1 -0
  21. package/lib/browser/component.js +165 -0
  22. package/lib/browser/component.js.map +1 -0
  23. package/lib/browser/decoration-applier.d.ts +25 -0
  24. package/lib/browser/decoration-applier.d.ts.map +1 -0
  25. package/lib/browser/decoration-applier.js +224 -0
  26. package/lib/browser/decoration-applier.js.map +1 -0
  27. package/lib/browser/diff/compare.d.ts +14 -0
  28. package/lib/browser/diff/compare.d.ts.map +1 -0
  29. package/lib/browser/diff/compare.js +94 -0
  30. package/lib/browser/diff/compare.js.map +1 -0
  31. package/lib/browser/diff/index.d.ts +19 -0
  32. package/lib/browser/diff/index.d.ts.map +1 -0
  33. package/lib/browser/diff/index.js +92 -0
  34. package/lib/browser/diff/index.js.map +1 -0
  35. package/lib/browser/doc-cache/empty-doc-cache.d.ts +12 -0
  36. package/lib/browser/doc-cache/empty-doc-cache.d.ts.map +1 -0
  37. package/lib/browser/doc-cache/empty-doc-cache.js +27 -0
  38. package/lib/browser/doc-cache/empty-doc-cache.js.map +1 -0
  39. package/lib/browser/doc-cache/index.d.ts +3 -0
  40. package/lib/browser/doc-cache/index.d.ts.map +1 -0
  41. package/lib/browser/doc-cache/index.js +6 -0
  42. package/lib/browser/doc-cache/index.js.map +1 -0
  43. package/lib/browser/doc-cache/local-storage-cache.d.ts +32 -0
  44. package/lib/browser/doc-cache/local-storage-cache.d.ts.map +1 -0
  45. package/lib/browser/doc-cache/local-storage-cache.js +69 -0
  46. package/lib/browser/doc-cache/local-storage-cache.js.map +1 -0
  47. package/lib/browser/doc-model/editor-document-error.d.ts +7 -0
  48. package/lib/browser/doc-model/editor-document-error.d.ts.map +1 -0
  49. package/lib/browser/doc-model/editor-document-error.js +15 -0
  50. package/lib/browser/doc-model/editor-document-error.js.map +1 -0
  51. package/lib/browser/doc-model/editor-document-model-service.d.ts +40 -0
  52. package/lib/browser/doc-model/editor-document-model-service.d.ts.map +1 -0
  53. package/lib/browser/doc-model/editor-document-model-service.js +276 -0
  54. package/lib/browser/doc-model/editor-document-model-service.js.map +1 -0
  55. package/lib/browser/doc-model/editor-document-model.d.ts +85 -0
  56. package/lib/browser/doc-model/editor-document-model.d.ts.map +1 -0
  57. package/lib/browser/doc-model/editor-document-model.js +463 -0
  58. package/lib/browser/doc-model/editor-document-model.js.map +1 -0
  59. package/lib/browser/doc-model/editor-document-registry.d.ts +15 -0
  60. package/lib/browser/doc-model/editor-document-registry.d.ts.map +1 -0
  61. package/lib/browser/doc-model/editor-document-registry.js +110 -0
  62. package/lib/browser/doc-model/editor-document-registry.js.map +1 -0
  63. package/lib/browser/doc-model/editor-is-fn.d.ts +4 -0
  64. package/lib/browser/doc-model/editor-is-fn.d.ts.map +1 -0
  65. package/lib/browser/doc-model/editor-is-fn.js +12 -0
  66. package/lib/browser/doc-model/editor-is-fn.js.map +1 -0
  67. package/lib/browser/doc-model/main.d.ts +5 -0
  68. package/lib/browser/doc-model/main.d.ts.map +1 -0
  69. package/lib/browser/doc-model/main.js +8 -0
  70. package/lib/browser/doc-model/main.js.map +1 -0
  71. package/lib/browser/doc-model/override.d.ts +12 -0
  72. package/lib/browser/doc-model/override.d.ts.map +1 -0
  73. package/lib/browser/doc-model/override.js +46 -0
  74. package/lib/browser/doc-model/override.js.map +1 -0
  75. package/lib/browser/doc-model/save-task.d.ts +19 -0
  76. package/lib/browser/doc-model/save-task.d.ts.map +1 -0
  77. package/lib/browser/doc-model/save-task.js +34 -0
  78. package/lib/browser/doc-model/save-task.js.map +1 -0
  79. package/lib/browser/doc-model/saveParticipants.d.ts +21 -0
  80. package/lib/browser/doc-model/saveParticipants.d.ts.map +1 -0
  81. package/lib/browser/doc-model/saveParticipants.js +133 -0
  82. package/lib/browser/doc-model/saveParticipants.js.map +1 -0
  83. package/lib/browser/doc-model/types.d.ts +253 -0
  84. package/lib/browser/doc-model/types.d.ts.map +1 -0
  85. package/lib/browser/doc-model/types.js +31 -0
  86. package/lib/browser/doc-model/types.js.map +1 -0
  87. package/lib/browser/editor-collection.service.d.ts +137 -0
  88. package/lib/browser/editor-collection.service.d.ts.map +1 -0
  89. package/lib/browser/editor-collection.service.js +607 -0
  90. package/lib/browser/editor-collection.service.js.map +1 -0
  91. package/lib/browser/editor-opener.d.ts +10 -0
  92. package/lib/browser/editor-opener.d.ts.map +1 -0
  93. package/lib/browser/editor-opener.js +51 -0
  94. package/lib/browser/editor-opener.js.map +1 -0
  95. package/lib/browser/editor.contribution.d.ts +54 -0
  96. package/lib/browser/editor.contribution.d.ts.map +1 -0
  97. package/lib/browser/editor.contribution.js +1059 -0
  98. package/lib/browser/editor.contribution.js.map +1 -0
  99. package/lib/browser/editor.decoration.service.d.ts +28 -0
  100. package/lib/browser/editor.decoration.service.d.ts.map +1 -0
  101. package/lib/browser/editor.decoration.service.js +216 -0
  102. package/lib/browser/editor.decoration.service.js.map +1 -0
  103. package/lib/browser/editor.less +4 -0
  104. package/lib/browser/editor.module.less +493 -0
  105. package/lib/browser/editor.override.d.ts +24 -0
  106. package/lib/browser/editor.override.d.ts.map +1 -0
  107. package/lib/browser/editor.override.js +85 -0
  108. package/lib/browser/editor.override.js.map +1 -0
  109. package/lib/browser/editor.status-bar.service.d.ts +12 -0
  110. package/lib/browser/editor.status-bar.service.d.ts.map +1 -0
  111. package/lib/browser/editor.status-bar.service.js +114 -0
  112. package/lib/browser/editor.status-bar.service.js.map +1 -0
  113. package/lib/browser/editor.view.d.ts +33 -0
  114. package/lib/browser/editor.view.d.ts.map +1 -0
  115. package/lib/browser/editor.view.js +411 -0
  116. package/lib/browser/editor.view.js.map +1 -0
  117. package/lib/browser/error.d.ts +14 -0
  118. package/lib/browser/error.d.ts.map +1 -0
  119. package/lib/browser/error.js +19 -0
  120. package/lib/browser/error.js.map +1 -0
  121. package/lib/browser/feature.d.ts +14 -0
  122. package/lib/browser/feature.d.ts.map +1 -0
  123. package/lib/browser/feature.js +56 -0
  124. package/lib/browser/feature.js.map +1 -0
  125. package/lib/browser/format/formatterSelect.d.ts +11 -0
  126. package/lib/browser/format/formatterSelect.d.ts.map +1 -0
  127. package/lib/browser/format/formatterSelect.js +61 -0
  128. package/lib/browser/format/formatterSelect.js.map +1 -0
  129. package/lib/browser/fs-resource/file-tree-set.d.ts +31 -0
  130. package/lib/browser/fs-resource/file-tree-set.d.ts.map +1 -0
  131. package/lib/browser/fs-resource/file-tree-set.js +123 -0
  132. package/lib/browser/fs-resource/file-tree-set.js.map +1 -0
  133. package/lib/browser/fs-resource/fs-editor-doc.d.ts +47 -0
  134. package/lib/browser/fs-resource/fs-editor-doc.d.ts.map +1 -0
  135. package/lib/browser/fs-resource/fs-editor-doc.js +148 -0
  136. package/lib/browser/fs-resource/fs-editor-doc.js.map +1 -0
  137. package/lib/browser/fs-resource/fs-resource.d.ts +25 -0
  138. package/lib/browser/fs-resource/fs-resource.d.ts.map +1 -0
  139. package/lib/browser/fs-resource/fs-resource.js +211 -0
  140. package/lib/browser/fs-resource/fs-resource.js.map +1 -0
  141. package/lib/browser/fs-resource/index.d.ts +12 -0
  142. package/lib/browser/fs-resource/index.d.ts.map +1 -0
  143. package/lib/browser/fs-resource/index.js +30 -0
  144. package/lib/browser/fs-resource/index.js.map +1 -0
  145. package/lib/browser/grid/grid.service.d.ts +44 -0
  146. package/lib/browser/grid/grid.service.d.ts.map +1 -0
  147. package/lib/browser/grid/grid.service.js +255 -0
  148. package/lib/browser/grid/grid.service.js.map +1 -0
  149. package/lib/browser/history/index.d.ts +31 -0
  150. package/lib/browser/history/index.d.ts.map +1 -0
  151. package/lib/browser/history/index.js +164 -0
  152. package/lib/browser/history/index.js.map +1 -0
  153. package/lib/browser/index.d.ts +33 -0
  154. package/lib/browser/index.d.ts.map +1 -0
  155. package/lib/browser/index.js +212 -0
  156. package/lib/browser/index.js.map +1 -0
  157. package/lib/browser/language/diagnostic-collection.d.ts +28 -0
  158. package/lib/browser/language/diagnostic-collection.d.ts.map +1 -0
  159. package/lib/browser/language/diagnostic-collection.js +72 -0
  160. package/lib/browser/language/diagnostic-collection.js.map +1 -0
  161. package/lib/browser/language/language.service.d.ts +19 -0
  162. package/lib/browser/language/language.service.d.ts.map +1 -0
  163. package/lib/browser/language/language.service.js +146 -0
  164. package/lib/browser/language/language.service.js.map +1 -0
  165. package/lib/browser/language/workspace-symbol-quickopen.d.ts +43 -0
  166. package/lib/browser/language/workspace-symbol-quickopen.d.ts.map +1 -0
  167. package/lib/browser/language/workspace-symbol-quickopen.js +231 -0
  168. package/lib/browser/language/workspace-symbol-quickopen.js.map +1 -0
  169. package/lib/browser/menu/editor.context.d.ts +20 -0
  170. package/lib/browser/menu/editor.context.d.ts.map +1 -0
  171. package/lib/browser/menu/editor.context.js +139 -0
  172. package/lib/browser/menu/editor.context.js.map +1 -0
  173. package/lib/browser/menu/editor.menu.d.ts +13 -0
  174. package/lib/browser/menu/editor.menu.d.ts.map +1 -0
  175. package/lib/browser/menu/editor.menu.js +48 -0
  176. package/lib/browser/menu/editor.menu.js.map +1 -0
  177. package/lib/browser/menu/title-context.menu.d.ts +13 -0
  178. package/lib/browser/menu/title-context.menu.d.ts.map +1 -0
  179. package/lib/browser/menu/title-context.menu.js +55 -0
  180. package/lib/browser/menu/title-context.menu.js.map +1 -0
  181. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.d.ts +20 -0
  182. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.d.ts.map +1 -0
  183. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.js +64 -0
  184. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.js.map +1 -0
  185. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.d.ts +35 -0
  186. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.d.ts.map +1 -0
  187. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.js +144 -0
  188. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.js.map +1 -0
  189. package/lib/browser/monaco-contrib/command/command.service.d.ts +141 -0
  190. package/lib/browser/monaco-contrib/command/command.service.d.ts.map +1 -0
  191. package/lib/browser/monaco-contrib/command/command.service.js +370 -0
  192. package/lib/browser/monaco-contrib/command/command.service.js.map +1 -0
  193. package/lib/browser/monaco-contrib/index.d.ts +3 -0
  194. package/lib/browser/monaco-contrib/index.d.ts.map +1 -0
  195. package/lib/browser/monaco-contrib/index.js +6 -0
  196. package/lib/browser/monaco-contrib/index.js.map +1 -0
  197. package/lib/browser/monaco-contrib/tokenizer/textmate-registry.d.ts +46 -0
  198. package/lib/browser/monaco-contrib/tokenizer/textmate-registry.d.ts.map +1 -0
  199. package/lib/browser/monaco-contrib/tokenizer/textmate-registry.js +79 -0
  200. package/lib/browser/monaco-contrib/tokenizer/textmate-registry.js.map +1 -0
  201. package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.d.ts +58 -0
  202. package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.d.ts.map +1 -0
  203. package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.js +75 -0
  204. package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.js.map +1 -0
  205. package/lib/browser/monaco-contrib/tokenizer/textmate.service.d.ts +54 -0
  206. package/lib/browser/monaco-contrib/tokenizer/textmate.service.d.ts.map +1 -0
  207. package/lib/browser/monaco-contrib/tokenizer/textmate.service.js +596 -0
  208. package/lib/browser/monaco-contrib/tokenizer/textmate.service.js.map +1 -0
  209. package/lib/browser/navigation.module.less +86 -0
  210. package/lib/browser/navigation.view.d.ts +29 -0
  211. package/lib/browser/navigation.view.d.ts.map +1 -0
  212. package/lib/browser/navigation.view.js +183 -0
  213. package/lib/browser/navigation.view.js.map +1 -0
  214. package/lib/browser/preference/contribution.d.ts +5 -0
  215. package/lib/browser/preference/contribution.d.ts.map +1 -0
  216. package/lib/browser/preference/contribution.js +16 -0
  217. package/lib/browser/preference/contribution.js.map +1 -0
  218. package/lib/browser/preference/converter.d.ts +34 -0
  219. package/lib/browser/preference/converter.d.ts.map +1 -0
  220. package/lib/browser/preference/converter.js +632 -0
  221. package/lib/browser/preference/converter.js.map +1 -0
  222. package/lib/browser/preference/schema.d.ts +230 -0
  223. package/lib/browser/preference/schema.d.ts.map +1 -0
  224. package/lib/browser/preference/schema.js +1453 -0
  225. package/lib/browser/preference/schema.js.map +1 -0
  226. package/lib/browser/preference/util.d.ts +4 -0
  227. package/lib/browser/preference/util.d.ts.map +1 -0
  228. package/lib/browser/preference/util.js +13 -0
  229. package/lib/browser/preference/util.js.map +1 -0
  230. package/lib/browser/resource.service.d.ts +32 -0
  231. package/lib/browser/resource.service.d.ts.map +1 -0
  232. package/lib/browser/resource.service.js +219 -0
  233. package/lib/browser/resource.service.js.map +1 -0
  234. package/lib/browser/tab.view.d.ts +12 -0
  235. package/lib/browser/tab.view.d.ts.map +1 -0
  236. package/lib/browser/tab.view.js +330 -0
  237. package/lib/browser/tab.view.js.map +1 -0
  238. package/lib/browser/types.d.ts +344 -0
  239. package/lib/browser/types.d.ts.map +1 -0
  240. package/lib/browser/types.js +94 -0
  241. package/lib/browser/types.js.map +1 -0
  242. package/lib/browser/untitled-resource.d.ts +33 -0
  243. package/lib/browser/untitled-resource.d.ts.map +1 -0
  244. package/lib/browser/untitled-resource.js +114 -0
  245. package/lib/browser/untitled-resource.js.map +1 -0
  246. package/lib/browser/view/editor.react.d.ts +10 -0
  247. package/lib/browser/view/editor.react.d.ts.map +1 -0
  248. package/lib/browser/view/editor.react.js +69 -0
  249. package/lib/browser/view/editor.react.js.map +1 -0
  250. package/lib/browser/view/react-hook.d.ts +3 -0
  251. package/lib/browser/view/react-hook.d.ts.map +1 -0
  252. package/lib/browser/view/react-hook.js +9 -0
  253. package/lib/browser/view/react-hook.js.map +1 -0
  254. package/lib/browser/view/suggest-widget.d.ts +8 -0
  255. package/lib/browser/view/suggest-widget.d.ts.map +1 -0
  256. package/lib/browser/view/suggest-widget.js +51 -0
  257. package/lib/browser/view/suggest-widget.js.map +1 -0
  258. package/lib/browser/view/topPadding.d.ts +6 -0
  259. package/lib/browser/view/topPadding.d.ts.map +1 -0
  260. package/lib/browser/view/topPadding.js +18 -0
  261. package/lib/browser/view/topPadding.js.map +1 -0
  262. package/lib/browser/workbench-editor.service.d.ts +244 -0
  263. package/lib/browser/workbench-editor.service.d.ts.map +1 -0
  264. package/lib/browser/workbench-editor.service.js +1689 -0
  265. package/lib/browser/workbench-editor.service.js.map +1 -0
  266. package/lib/common/doc-cache.d.ts +80 -0
  267. package/lib/common/doc-cache.d.ts.map +1 -0
  268. package/lib/common/doc-cache.js +39 -0
  269. package/lib/common/doc-cache.js.map +1 -0
  270. package/lib/common/editor.d.ts +571 -0
  271. package/lib/common/editor.d.ts.map +1 -0
  272. package/lib/common/editor.js +125 -0
  273. package/lib/common/editor.js.map +1 -0
  274. package/lib/common/index.d.ts +6 -0
  275. package/lib/common/index.d.ts.map +1 -0
  276. package/lib/common/index.js +9 -0
  277. package/lib/common/index.js.map +1 -0
  278. package/lib/common/language.d.ts +108 -0
  279. package/lib/common/language.d.ts.map +1 -0
  280. package/lib/common/language.js +72 -0
  281. package/lib/common/language.js.map +1 -0
  282. package/lib/common/mocks/workbench-editor.service.d.ts +21 -0
  283. package/lib/common/mocks/workbench-editor.service.d.ts.map +1 -0
  284. package/lib/common/mocks/workbench-editor.service.js +48 -0
  285. package/lib/common/mocks/workbench-editor.service.js.map +1 -0
  286. package/lib/common/resource.d.ts +94 -0
  287. package/lib/common/resource.d.ts.map +1 -0
  288. package/lib/common/resource.js +31 -0
  289. package/lib/common/resource.js.map +1 -0
  290. package/lib/common/utils.d.ts +3 -0
  291. package/lib/common/utils.d.ts.map +1 -0
  292. package/lib/common/utils.js +14 -0
  293. package/lib/common/utils.js.map +1 -0
  294. package/lib/index.d.ts +2 -0
  295. package/lib/index.d.ts.map +1 -0
  296. package/lib/index.js +5 -0
  297. package/lib/index.js.map +1 -0
  298. package/package.json +33 -0
@@ -0,0 +1,370 @@
1
+ "use strict";
2
+ var MonacoActionRegistry_1;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MonacoActionRegistry = exports.MonacoCommandRegistry = exports.MonacoCommandService = exports.MonacoCommandType = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const monaco_api_1 = require("@opensumi/ide-monaco/lib/browser/monaco-api");
7
+ const di_1 = require("@opensumi/di");
8
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
9
+ const command_1 = require("@opensumi/ide-monaco/lib/browser/contrib/command");
10
+ const services_1 = require("@opensumi/ide-monaco/lib/browser/monaco-api/services");
11
+ const types_1 = require("../../types");
12
+ /**
13
+ * vscode 会有一些别名 command,如果直接执行这些别名 command 会报错,做一个转换
14
+ */
15
+ const MonacoCommandAlias = {
16
+ 'editor.action.smartSelect.grow': 'editor.action.smartSelect.expand',
17
+ 'cursorWordPartStartLeft': 'cursorWordPartLeft',
18
+ 'cursorWordPartStartLeftSelect': 'cursorWordPartLeftSelect',
19
+ 'editor.action.previewDeclaration': 'editor.action.peekDefinition',
20
+ 'editor.action.openDeclarationToTheSide': 'editor.action.revealDefinitionAside',
21
+ 'editor.action.goToDeclaration': 'editor.action.revealDefinition',
22
+ };
23
+ /**
24
+ * monaco 命令分两种
25
+ * 一种命令不需要带参数,是封装过的命令,即为 action
26
+ * 一种是正常命令,执行可以带参数
27
+ */
28
+ var MonacoCommandType;
29
+ (function (MonacoCommandType) {
30
+ MonacoCommandType[MonacoCommandType["ACTION"] = 0] = "ACTION";
31
+ MonacoCommandType[MonacoCommandType["COMMAND"] = 1] = "COMMAND";
32
+ })(MonacoCommandType = exports.MonacoCommandType || (exports.MonacoCommandType = {}));
33
+ let MonacoCommandService = class MonacoCommandService {
34
+ constructor() {
35
+ this._onDidExecuteCommand = new ide_core_browser_1.Emitter();
36
+ this.onDidExecuteCommand = this._onDidExecuteCommand.event;
37
+ /**
38
+ * 事件触发器,在执行命令的时候会触发
39
+ * @type {Emitter<ICommandEvent>}
40
+ * @memberof MonacoCommandService
41
+ */
42
+ this._onWillExecuteCommand = new ide_core_browser_1.Emitter();
43
+ }
44
+ /**
45
+ * 设置委托对象
46
+ * @param delegate 真正要执行 monaco 内部 command 的 commandSerice
47
+ */
48
+ setDelegate(delegate) {
49
+ this.delegate = delegate;
50
+ }
51
+ get onWillExecuteCommand() {
52
+ return this._onWillExecuteCommand.event;
53
+ }
54
+ /**
55
+ * 执行命令
56
+ * 先去全局 commands 里找,若没有尝试执行 delegate 的 command
57
+ * @param commandId
58
+ * @param args
59
+ */
60
+ async executeCommand(commandId, ...args) {
61
+ this.logger.debug('command: ' + commandId);
62
+ this._onWillExecuteCommand.fire({ commandId, args });
63
+ try {
64
+ const res = await this.commandService.executeCommand(commandId, ...args);
65
+ this._onDidExecuteCommand.fire({ commandId, args });
66
+ return res;
67
+ }
68
+ catch (err) {
69
+ // 如果不是 handler 未找到直接抛错,否则执行 delegate 逻辑
70
+ if ((err === null || err === void 0 ? void 0 : err.name) !== ide_core_browser_1.HANDLER_NOT_FOUND) {
71
+ throw err;
72
+ }
73
+ }
74
+ if (this.delegate) {
75
+ const res = this.delegate.executeCommand(MonacoCommandAlias[commandId] ? MonacoCommandAlias[commandId] : commandId, ...args);
76
+ this._onDidExecuteCommand.fire({ commandId, args });
77
+ return res;
78
+ }
79
+ this.reporterService.point(ide_core_browser_1.REPORT_NAME.NOT_FOUND_COMMAND, commandId);
80
+ return Promise.reject(new Error(`command '${commandId}' not found`));
81
+ }
82
+ };
83
+ (0, tslib_1.__decorate)([
84
+ (0, di_1.Autowired)(ide_core_browser_1.ILogger),
85
+ (0, tslib_1.__metadata)("design:type", Object)
86
+ ], MonacoCommandService.prototype, "logger", void 0);
87
+ (0, tslib_1.__decorate)([
88
+ (0, di_1.Autowired)(ide_core_browser_1.CommandRegistry),
89
+ (0, tslib_1.__metadata)("design:type", Object)
90
+ ], MonacoCommandService.prototype, "commandRegistry", void 0);
91
+ (0, tslib_1.__decorate)([
92
+ (0, di_1.Autowired)(ide_core_browser_1.CommandService),
93
+ (0, tslib_1.__metadata)("design:type", Object)
94
+ ], MonacoCommandService.prototype, "commandService", void 0);
95
+ (0, tslib_1.__decorate)([
96
+ (0, di_1.Autowired)(ide_core_browser_1.IReporterService),
97
+ (0, tslib_1.__metadata)("design:type", Object)
98
+ ], MonacoCommandService.prototype, "reporterService", void 0);
99
+ MonacoCommandService = (0, tslib_1.__decorate)([
100
+ (0, di_1.Injectable)()
101
+ ], MonacoCommandService);
102
+ exports.MonacoCommandService = MonacoCommandService;
103
+ let MonacoCommandRegistry = class MonacoCommandRegistry {
104
+ /**
105
+ * 校验 command id 是否是 monaco id
106
+ * @param command 要校验的 id
107
+ * @returns 若找到则为转换过 monaco id,否则为 undefined
108
+ */
109
+ validate(command) {
110
+ var _a;
111
+ return (_a = this.commands.getRawCommand(command)) === null || _a === void 0 ? void 0 : _a.id;
112
+ }
113
+ /**
114
+ * 注册 monaco 命令
115
+ * 命令 id 会统一加入 monaco 前缀
116
+ * monaco handler 会注入当前 editor 参数
117
+ * @param command 注册的命令
118
+ * @param handler 命令处理函数
119
+ */
120
+ registerCommand(command, handler) {
121
+ this.commands.registerCommand(command, this.newHandler(handler));
122
+ }
123
+ /**
124
+ * 注册处理函数函数
125
+ * monaco handler 会注入当前 editor 参数
126
+ * @param command 命令 id
127
+ * @param handler 命令处理函数
128
+ */
129
+ registerHandler(commandID, handler) {
130
+ this.commands.registerHandler(commandID, this.newHandler(handler));
131
+ }
132
+ /**
133
+ * 包装 monaco 命令处理函数为内部处理函数
134
+ * @param monacoHandler 要处理的 monaco 命令处理函数
135
+ */
136
+ newHandler(monacoHandler) {
137
+ return {
138
+ execute: (...args) => this.execute(monacoHandler, ...args),
139
+ };
140
+ }
141
+ /**
142
+ * 给 monacoHandler 传递 editor 参数
143
+ * @param monacoHandler 要处理的 monaco 命令函数
144
+ * @param args 要透传的参数
145
+ */
146
+ execute(monacoHandler, ...args) {
147
+ const editor = this.getActiveCodeEditor();
148
+ if (editor) {
149
+ // editor.focus();
150
+ return Promise.resolve(monacoHandler.execute(editor, ...args));
151
+ }
152
+ return Promise.resolve();
153
+ }
154
+ /**
155
+ * 获取当前活动的编辑器
156
+ * 此处的活动编辑器和 workbenchEditorService.currentEditor 的概念不同,对于diffEditor,需要获取确实的那个editor而不是modifiedEditor
157
+ */
158
+ getActiveCodeEditor() {
159
+ // 先从editor-collection的焦点追踪,contextMenu追踪中取
160
+ if (this.editorCollectionService.currentEditor) {
161
+ return this.editorCollectionService.currentEditor.monacoEditor;
162
+ }
163
+ // 使用当前 editorGroup.editor 兜底
164
+ const editorGroup = this.workbenchEditorService.currentEditorGroup;
165
+ if (editorGroup) {
166
+ const editor = editorGroup.currentOrPreviousFocusedEditor || editorGroup.currentEditor;
167
+ if (editor) {
168
+ return editor.monacoEditor;
169
+ }
170
+ }
171
+ }
172
+ };
173
+ (0, tslib_1.__decorate)([
174
+ (0, di_1.Autowired)(ide_core_browser_1.CommandRegistry),
175
+ (0, tslib_1.__metadata)("design:type", Object)
176
+ ], MonacoCommandRegistry.prototype, "commands", void 0);
177
+ (0, tslib_1.__decorate)([
178
+ (0, di_1.Autowired)(types_1.WorkbenchEditorService),
179
+ (0, tslib_1.__metadata)("design:type", types_1.WorkbenchEditorService)
180
+ ], MonacoCommandRegistry.prototype, "workbenchEditorService", void 0);
181
+ (0, tslib_1.__decorate)([
182
+ (0, di_1.Autowired)(types_1.EditorCollectionService),
183
+ (0, tslib_1.__metadata)("design:type", types_1.EditorCollectionService)
184
+ ], MonacoCommandRegistry.prototype, "editorCollectionService", void 0);
185
+ MonacoCommandRegistry = (0, tslib_1.__decorate)([
186
+ (0, di_1.Injectable)()
187
+ ], MonacoCommandRegistry);
188
+ exports.MonacoCommandRegistry = MonacoCommandRegistry;
189
+ let MonacoActionRegistry = MonacoActionRegistry_1 = class MonacoActionRegistry {
190
+ get globalInstantiationService() {
191
+ const codeEditorService = this.overrideServiceRegistry.getRegisteredService(ide_core_browser_1.ServiceNames.CODE_EDITOR_SERVICE);
192
+ const textModelService = this.overrideServiceRegistry.getRegisteredService(ide_core_browser_1.ServiceNames.TEXT_MODEL_SERVICE);
193
+ const contextKeyService = this.overrideServiceRegistry.getRegisteredService(ide_core_browser_1.ServiceNames.CONTEXT_KEY_SERVICE);
194
+ const [, globalInstantiationService] = services_1.StaticServices.init({
195
+ codeEditorService,
196
+ textModelService,
197
+ contextKeyService,
198
+ });
199
+ return globalInstantiationService;
200
+ }
201
+ get monacoEditorRegistry() {
202
+ return command_1.EditorExtensionsRegistry;
203
+ }
204
+ get monacoCommands() {
205
+ return command_1.CommandsRegistry.getCommands();
206
+ }
207
+ registerMonacoActions() {
208
+ const editorActions = new Map(this.monacoEditorRegistry.getEditorActions().map(({ id, label }) => [id, label]));
209
+ for (const id of this.monacoCommands.keys()) {
210
+ if (MonacoActionRegistry_1.EXCLUDE_ACTIONS.includes(id)) {
211
+ continue;
212
+ }
213
+ const label = editorActions.has(id) ? editorActions.get(id) : '';
214
+ const handler = this.actAndComHandler(editorActions, id);
215
+ this.monacoCommandRegistry.registerCommand({
216
+ id,
217
+ label,
218
+ }, handler);
219
+ // 将 monaco 命令处理函数代理到有 label 的空命令上
220
+ const command = MonacoActionRegistry_1.COMMON_ACTIONS.get(id);
221
+ if (command) {
222
+ this.monacoCommandRegistry.registerHandler(command, handler);
223
+ }
224
+ }
225
+ }
226
+ /**
227
+ * monaco 内部有些 contribution 既注册了 actions 又注册了 commands,在这里优先调取 commands
228
+ */
229
+ actAndComHandler(actions, id) {
230
+ if (MonacoActionRegistry_1.CONVERT_MONACO_ACTIONS_TO_CONTRIBUTION_ID.has(id)) {
231
+ const toConver = MonacoActionRegistry_1.CONVERT_MONACO_ACTIONS_TO_CONTRIBUTION_ID.get(id);
232
+ if (this.monacoEditorRegistry.getSomeEditorContributions([toConver]).length > 0) {
233
+ return this.newCommandHandler(id);
234
+ }
235
+ }
236
+ return actions.has(id) ? this.newActionHandler(id) : this.newCommandHandler(id);
237
+ }
238
+ /**
239
+ * 是否是 _execute 开头的 monaco 命令
240
+ */
241
+ isInternalExecuteCommand(commandId) {
242
+ return commandId.startsWith('_execute');
243
+ }
244
+ /**
245
+ * monaco 内部会判断 uri 执行是否是 Uri 实例,执行改类命令统一转换一下
246
+ * @param args
247
+ */
248
+ processInternalCommandArgument(commandId, args = []) {
249
+ if (this.isInternalExecuteCommand(commandId)) {
250
+ return args.map((arg) => arg instanceof ide_core_browser_1.Uri ? monaco_api_1.URI.revive(arg) : arg);
251
+ }
252
+ else if (MonacoActionRegistry_1.CONVERT_MONACO_COMMAND_ARGS.has(commandId)) {
253
+ return MonacoActionRegistry_1.CONVERT_MONACO_COMMAND_ARGS.get(commandId)(...args);
254
+ }
255
+ return args;
256
+ }
257
+ /**
258
+ * 调用 monaco 内部 _commandService 执行命令
259
+ * 实际执行的就是 MonacoCommandService
260
+ * @param commandId 命令名称
261
+ */
262
+ newCommandHandler(commandId) {
263
+ return {
264
+ execute: (editor, ...args) => {
265
+ var _a;
266
+ if (!editor) {
267
+ return;
268
+ }
269
+ const editorCommand = !!this.monacoEditorRegistry.getEditorCommand(commandId) ||
270
+ !(this.isInternalExecuteCommand(commandId) || commandId === 'setContext' || MonacoActionRegistry_1.COMMON_ACTIONS.has(commandId));
271
+ const instantiationService = editorCommand ? editor && editor['_instantiationService'] : this.globalInstantiationService;
272
+ if (!instantiationService) {
273
+ return;
274
+ }
275
+ const commandArgs = this.processInternalCommandArgument(commandId, args);
276
+ return instantiationService.invokeFunction((_a = this.monacoCommands.get(commandId)) === null || _a === void 0 ? void 0 : _a.handler, ...commandArgs);
277
+ },
278
+ };
279
+ }
280
+ /**
281
+ * 包装 action 为命令处理函数
282
+ * 调用 getAction 执行 run 命令
283
+ * @param id action id
284
+ */
285
+ newActionHandler(id) {
286
+ return {
287
+ execute: (editor) => {
288
+ const action = editor.getAction(id);
289
+ if (action && action.isSupported()) {
290
+ return this.runAction(id, editor);
291
+ }
292
+ },
293
+ };
294
+ }
295
+ /**
296
+ * 执行 action
297
+ * @param id 要执行的 action
298
+ * @param editor 执行 action 的 editor,默认为当前 editor
299
+ */
300
+ runAction(id, editor) {
301
+ if (editor) {
302
+ const action = editor.getAction(id);
303
+ if (action) {
304
+ return action.run();
305
+ }
306
+ }
307
+ return Promise.resolve();
308
+ }
309
+ /**
310
+ * 生成键盘处理函数
311
+ * @param action 对应 action
312
+ */
313
+ newKeyboardHandler(action) {
314
+ return {
315
+ execute: (editor, ...args) => editor.trigger('keyboard', action, args),
316
+ };
317
+ }
318
+ };
319
+ MonacoActionRegistry.COMMON_ACTIONS = new Map([
320
+ ['undo', ide_core_browser_1.EDITOR_COMMANDS.UNDO.id],
321
+ ['redo', ide_core_browser_1.EDITOR_COMMANDS.REDO.id],
322
+ ['editor.action.selectAll', ide_core_browser_1.EDITOR_COMMANDS.SELECT_ALL.id],
323
+ ]);
324
+ MonacoActionRegistry.CONVERT_MONACO_COMMAND_ARGS = new Map([
325
+ ['editor.action.showReferences', (uri, ...args) => [monaco_api_1.URI.parse(uri), ...args]],
326
+ ['editor.action.goToLocations', (uri, ...args) => [monaco_api_1.URI.parse(uri), ...args]],
327
+ ]);
328
+ MonacoActionRegistry.CONVERT_MONACO_ACTIONS_TO_CONTRIBUTION_ID = new Map([
329
+ ['editor.action.rename', 'editor.contrib.renameController'],
330
+ ]);
331
+ /**
332
+ * 要排除注册的 Action
333
+ *
334
+ * @protected
335
+ * @memberof MonacoActionModule
336
+ */
337
+ MonacoActionRegistry.EXCLUDE_ACTIONS = [
338
+ 'setContext',
339
+ 'editor.action.quickCommand',
340
+ 'editor.action.quickOutline',
341
+ 'editor.action.toggleHighContrast',
342
+ ];
343
+ (0, tslib_1.__decorate)([
344
+ (0, di_1.Autowired)(),
345
+ (0, tslib_1.__metadata)("design:type", MonacoCommandRegistry)
346
+ ], MonacoActionRegistry.prototype, "monacoCommandRegistry", void 0);
347
+ (0, tslib_1.__decorate)([
348
+ (0, di_1.Autowired)(ide_core_browser_1.MonacoOverrideServiceRegistry),
349
+ (0, tslib_1.__metadata)("design:type", ide_core_browser_1.MonacoOverrideServiceRegistry)
350
+ ], MonacoActionRegistry.prototype, "overrideServiceRegistry", void 0);
351
+ (0, tslib_1.__decorate)([
352
+ ide_core_browser_1.memoize,
353
+ (0, tslib_1.__metadata)("design:type", Object),
354
+ (0, tslib_1.__metadata)("design:paramtypes", [])
355
+ ], MonacoActionRegistry.prototype, "globalInstantiationService", null);
356
+ (0, tslib_1.__decorate)([
357
+ ide_core_browser_1.memoize,
358
+ (0, tslib_1.__metadata)("design:type", Object),
359
+ (0, tslib_1.__metadata)("design:paramtypes", [])
360
+ ], MonacoActionRegistry.prototype, "monacoEditorRegistry", null);
361
+ (0, tslib_1.__decorate)([
362
+ ide_core_browser_1.memoize,
363
+ (0, tslib_1.__metadata)("design:type", Object),
364
+ (0, tslib_1.__metadata)("design:paramtypes", [])
365
+ ], MonacoActionRegistry.prototype, "monacoCommands", null);
366
+ MonacoActionRegistry = MonacoActionRegistry_1 = (0, tslib_1.__decorate)([
367
+ (0, di_1.Injectable)()
368
+ ], MonacoActionRegistry);
369
+ exports.MonacoActionRegistry = MonacoActionRegistry;
370
+ //# sourceMappingURL=command.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.service.js","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/command/command.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './callHierarchy/callHierarchy.contribution';
2
+ export * from './callHierarchy/callHierarchy.service';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/monaco-contrib/index.ts"],"names":[],"mappings":"AAAA,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uCAAuC,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./callHierarchy/callHierarchy.contribution"), exports);
5
+ (0, tslib_1.__exportStar)(require("./callHierarchy/callHierarchy.service"), exports);
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browser/monaco-contrib/index.ts"],"names":[],"mappings":";;;AAAA,0FAA2D;AAC3D,qFAAsD"}
@@ -0,0 +1,46 @@
1
+ /********************************************************************************
2
+ * Copyright (C) 2018 Ericsson and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { IGrammarConfiguration } from 'vscode-textmate';
17
+ import { URI } from '@opensumi/ide-core-common';
18
+ import { TokenizerOption } from './textmate-tokenizer';
19
+ export interface TextmateGrammarConfiguration extends IGrammarConfiguration {
20
+ /**
21
+ * Optional options to further refine the tokenization of the grammar.
22
+ */
23
+ readonly tokenizerOption?: TokenizerOption;
24
+ }
25
+ export interface GrammarDefinitionProvider {
26
+ getGrammarDefinition(): Promise<GrammarDefinition>;
27
+ getInjections?(scopeName: string): string[];
28
+ }
29
+ export interface GrammarDefinition {
30
+ format: 'json' | 'plist';
31
+ content?: object | string;
32
+ location: URI;
33
+ }
34
+ export declare class TextmateRegistry {
35
+ readonly scopeToProvider: Map<string, GrammarDefinitionProvider>;
36
+ readonly languageToConfig: Map<string, () => TextmateGrammarConfiguration>;
37
+ readonly languageIdToScope: Map<string, string>;
38
+ registerTextmateGrammarScope(scope: string, description: GrammarDefinitionProvider): () => void;
39
+ getProvider(scope: string): GrammarDefinitionProvider | undefined;
40
+ mapLanguageIdToTextmateGrammar(languageId: string, scope: string): () => void;
41
+ getScope(languageId: string): string | undefined;
42
+ getLanguageId(scope: string): string | undefined;
43
+ registerGrammarConfiguration(languageId: string, getConfig: () => TextmateGrammarConfiguration): () => void;
44
+ getGrammarConfiguration(languageId: string): () => TextmateGrammarConfiguration;
45
+ }
46
+ //# sourceMappingURL=textmate-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textmate-registry.d.ts","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/tokenizer/textmate-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAGlF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAkB,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,MAAM,WAAW,4BAA6B,SAAQ,qBAAqB;IACzE;;OAEG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;CAC5C;AAED,MAAM,WAAW,yBAAyB;IACxC,oBAAoB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACnD,aAAa,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC;CACf;AAED,qBACa,gBAAgB;IAC3B,QAAQ,CAAC,eAAe,yCAAgD;IACxE,QAAQ,CAAC,gBAAgB,oBAEjB,4BAA4B,EAChC;IACJ,QAAQ,CAAC,iBAAiB,sBAA6B;IAGvD,4BAA4B,CAC1B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,yBAAyB;IAgBxC,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,yBAAyB,GAAG,SAAS;IAIjE,8BAA8B,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAgBhE,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIhD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAShD,4BAA4B,CAC1B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,4BAA4B;IAY/C,uBAAuB,CACrB,UAAU,EAAE,MAAM,GACjB,MAAM,4BAA4B;CAGtC"}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (C) 2018 Ericsson and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.TextmateRegistry = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const di_1 = require("@opensumi/di");
21
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
22
+ let TextmateRegistry = class TextmateRegistry {
23
+ constructor() {
24
+ this.scopeToProvider = new Map();
25
+ this.languageToConfig = new Map();
26
+ this.languageIdToScope = new Map();
27
+ }
28
+ // 将语法定义描述绑定到某一个Scope:source.json.comments
29
+ registerTextmateGrammarScope(scope, description) {
30
+ if (this.scopeToProvider.has(scope)) {
31
+ (0, ide_core_common_1.getDebugLogger)().warn(new Error(`a registered grammar provider for '${scope}' scope is overridden`));
32
+ }
33
+ this.scopeToProvider.set(scope, description);
34
+ return () => {
35
+ this.scopeToProvider.delete(scope);
36
+ };
37
+ }
38
+ getProvider(scope) {
39
+ return this.scopeToProvider.get(scope);
40
+ }
41
+ mapLanguageIdToTextmateGrammar(languageId, scope) {
42
+ const existingScope = this.getScope(languageId);
43
+ if (typeof existingScope === 'string') {
44
+ (0, ide_core_common_1.getDebugLogger)().warn(new Error(`'${languageId}' language is remapped from '${existingScope}' to '${scope}' scope`));
45
+ }
46
+ this.languageIdToScope.set(languageId, scope);
47
+ return () => {
48
+ this.languageIdToScope.delete(languageId);
49
+ };
50
+ }
51
+ getScope(languageId) {
52
+ return this.languageIdToScope.get(languageId);
53
+ }
54
+ getLanguageId(scope) {
55
+ for (const key of this.languageIdToScope.keys()) {
56
+ if (this.languageIdToScope.get(key) === scope) {
57
+ return key;
58
+ }
59
+ }
60
+ return undefined;
61
+ }
62
+ registerGrammarConfiguration(languageId, getConfig) {
63
+ if (this.languageToConfig.has(languageId)) {
64
+ // console.warn(new Error(`a registered grammar configuration for '${languageId}' language is overridden`));
65
+ }
66
+ this.languageToConfig.set(languageId, getConfig);
67
+ return () => {
68
+ this.languageToConfig.delete(languageId);
69
+ };
70
+ }
71
+ getGrammarConfiguration(languageId) {
72
+ return this.languageToConfig.get(languageId) || (() => ({}));
73
+ }
74
+ };
75
+ TextmateRegistry = (0, tslib_1.__decorate)([
76
+ (0, di_1.Injectable)()
77
+ ], TextmateRegistry);
78
+ exports.TextmateRegistry = TextmateRegistry;
79
+ //# sourceMappingURL=textmate-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textmate-registry.js","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/tokenizer/textmate-registry.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;AAElF,qCAA0C;AAE1C,+DAAgE;AAuBhE,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAA7B;QACW,oBAAe,GAAG,IAAI,GAAG,EAAqC,CAAC;QAC/D,qBAAgB,GAAG,IAAI,GAAG,EAGhC,CAAC;QACK,sBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAyEzD,CAAC;IAvEC,0CAA0C;IAC1C,4BAA4B,CAC1B,KAAa,EACb,WAAsC;QAEtC,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACnC,IAAA,gCAAc,GAAE,CAAC,IAAI,CACnB,IAAI,KAAK,CACP,sCAAsC,KAAK,uBAAuB,CACnE,CACF,CAAC;SACH;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAE7C,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,KAAa;QACvB,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,8BAA8B,CAAC,UAAkB,EAAE,KAAa;QAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;YACrC,IAAA,gCAAc,GAAE,CAAC,IAAI,CACnB,IAAI,KAAK,CACP,IAAI,UAAU,gCAAgC,aAAa,SAAS,KAAK,SAAS,CACnF,CACF,CAAC;SACH;QACD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAE9C,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5C,CAAC,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,UAAkB;QACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC;IAED,aAAa,CAAC,KAAa;QACzB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,EAAE;YAC/C,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;gBAC7C,OAAO,GAAG,CAAC;aACZ;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,4BAA4B,CAC1B,UAAkB,EAClB,SAA6C;QAE7C,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;YACzC,4GAA4G;SAC7G;QACD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAEjD,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3C,CAAC,CAAC;IACJ,CAAC;IAED,uBAAuB,CACrB,UAAkB;QAElB,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;CACF,CAAA;AA/EY,gBAAgB;IAD5B,IAAA,eAAU,GAAE;GACA,gBAAgB,CA+E5B;AA/EY,4CAAgB"}
@@ -0,0 +1,58 @@
1
+ import * as monaco from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api';
2
+ /********************************************************************************
3
+ * Copyright (C) 2018 Ericsson and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ import { StackElement, IGrammar } from 'vscode-textmate';
18
+ export declare class TokenizerState implements monaco.languages.IState {
19
+ readonly ruleStack: StackElement;
20
+ constructor(ruleStack: StackElement);
21
+ clone(): monaco.languages.IState;
22
+ equals(other: monaco.languages.IState): boolean;
23
+ }
24
+ /**
25
+ * Options for the TextMate tokenizer.
26
+ */
27
+ export interface TokenizerOption {
28
+ /**
29
+ * Maximum line length that will be handled by the TextMate tokenizer. If the length of the actual line exceeds this
30
+ * limit, the tokenizer terminates and the tokenization of any subsequent lines might be broken.
31
+ *
32
+ * If the `lineLimit` is not defined, it means, there are no line length limits. Otherwise, it must be a positive
33
+ * integer or an error will be thrown.
34
+ */
35
+ readonly lineLimit?: number;
36
+ }
37
+ export declare const enum MetadataConsts {
38
+ LANGUAGEID_MASK = 255,
39
+ TOKEN_TYPE_MASK = 1792,
40
+ FONT_STYLE_MASK = 14336,
41
+ FOREGROUND_MASK = 8372224,
42
+ BACKGROUND_MASK = 4286578688,
43
+ ITALIC_MASK = 2048,
44
+ BOLD_MASK = 4096,
45
+ UNDERLINE_MASK = 8192,
46
+ SEMANTIC_USE_ITALIC = 1,
47
+ SEMANTIC_USE_BOLD = 2,
48
+ SEMANTIC_USE_UNDERLINE = 4,
49
+ SEMANTIC_USE_FOREGROUND = 8,
50
+ SEMANTIC_USE_BACKGROUND = 16,
51
+ LANGUAGEID_OFFSET = 0,
52
+ TOKEN_TYPE_OFFSET = 8,
53
+ FONT_STYLE_OFFSET = 11,
54
+ FOREGROUND_OFFSET = 14,
55
+ BACKGROUND_OFFSET = 23
56
+ }
57
+ export declare function createTextmateTokenizer(grammar: IGrammar, options: TokenizerOption): monaco.languages.EncodedTokensProvider;
58
+ //# sourceMappingURL=textmate-tokenizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textmate-tokenizer.d.ts","sourceRoot":"","sources":["../../../../src/browser/monaco-contrib/tokenizer/textmate-tokenizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,uDAAuD,CAAC;AAChF;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAW,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAElE,qBAAa,cAAe,YAAW,MAAM,CAAC,SAAS,CAAC,MAAM;aAChC,SAAS,EAAE,YAAY;gBAAvB,SAAS,EAAE,YAAY;IAEnD,KAAK,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM;IAIhC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,OAAO;CAMhD;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;OAMG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,0BAAkB,cAAc;IAC9B,eAAe,MAAqC;IACpD,eAAe,OAAqC;IACpD,eAAe,QAAqC;IACpD,eAAe,UAAqC;IACpD,eAAe,aAAqC;IAEpD,WAAW,OAAqC;IAChD,SAAS,OAAqC;IAC9C,cAAc,OAAqC;IAEnD,mBAAmB,IAAqC;IACxD,iBAAiB,IAAqC;IACtD,sBAAsB,IAAqC;IAC3D,uBAAuB,IAAqC;IAC5D,uBAAuB,KAAqC;IAE5D,iBAAiB,IAAI;IACrB,iBAAiB,IAAI;IACrB,iBAAiB,KAAK;IACtB,iBAAiB,KAAK;IACtB,iBAAiB,KAAK;CACvB;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,eAAe,GACvB,MAAM,CAAC,SAAS,CAAC,qBAAqB,CA4CxC"}