@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,164 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EditorHistoryState = exports.EditorHistoryService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const di_1 = require("@opensumi/di");
6
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
+ const types_1 = require("../types");
8
+ const common_1 = require("../../common");
9
+ const HistoryPositionLineThreshold = 7;
10
+ const HardMaxStateLength = 200; // 超过200个过后,会缩减至100个, 防止反复缩减
11
+ const SoftMaxStateLength = 100;
12
+ let EditorHistoryService = class EditorHistoryService extends ide_core_browser_1.WithEventBus {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.currentIndex = -1;
16
+ this.stack = [];
17
+ this.closedStack = [];
18
+ }
19
+ start() {
20
+ // do nothing
21
+ }
22
+ onEditorSelectionChangeEvent(e) {
23
+ if (e.payload.selections[0]) {
24
+ this.onNewState(new EditorHistoryState(e.payload.editorUri, {
25
+ lineNumber: e.payload.selections[0].selectionStartLineNumber,
26
+ column: e.payload.selections[0].selectionStartColumn,
27
+ }, e.payload.group.index, false));
28
+ }
29
+ }
30
+ onEditorGroupChangeEvent(e) {
31
+ if (e.payload.newOpenType && (e.payload.newOpenType.type === 'code' || e.payload.newOpenType.type === 'diff')) {
32
+ const selections = e.payload.group.currentEditor.getSelections();
33
+ if (selections && selections.length > 0) {
34
+ this.onNewState(new EditorHistoryState(e.payload.newResource.uri, {
35
+ lineNumber: selections[0].selectionStartLineNumber,
36
+ column: selections[0].selectionStartColumn,
37
+ }, e.payload.group.index, true));
38
+ }
39
+ }
40
+ }
41
+ onEditorGroupCloseEvent(e) {
42
+ this.pushClosed(e.payload.resource.uri);
43
+ }
44
+ onNewState(state) {
45
+ if (this.currentIndex !== this.stack.length - 1) {
46
+ if (state.isTabChange && this.currentState.isRelevant(state)) {
47
+ //
48
+ return;
49
+ }
50
+ if (this.currentState && this.currentState.isEqual(state)) {
51
+ // 这个状态可能来自 back/forward 被调用产生的行为
52
+ // 如果相同,不做任何行为
53
+ return;
54
+ }
55
+ }
56
+ const isRelevant = this.currentState && this.currentState.isRelevant(state);
57
+ this.doPushState(state, isRelevant);
58
+ }
59
+ get currentState() {
60
+ return this.stack[this.currentIndex];
61
+ }
62
+ doPushState(state, isRelevant) {
63
+ // 如果和最新的状态关联, 则替换最新的状态
64
+ this.stack.splice(this.currentIndex + (isRelevant ? 0 : 1));
65
+ this.stack.push(state);
66
+ if (this.stack.length > HardMaxStateLength) {
67
+ this.stack.splice(0, this.stack.length - SoftMaxStateLength);
68
+ }
69
+ this.currentIndex = this.stack.length - 1;
70
+ }
71
+ forward() {
72
+ if (this.currentIndex < this.stack.length - 1) {
73
+ this.currentIndex++;
74
+ this.restoreState(this.currentState);
75
+ }
76
+ }
77
+ back() {
78
+ if (this.currentIndex > 0) {
79
+ this.currentIndex--;
80
+ this.restoreState(this.currentState);
81
+ }
82
+ }
83
+ restoreState(state) {
84
+ if (!state) {
85
+ return;
86
+ }
87
+ const editorGroup = this.editorService.editorGroups[state.groupIndex] || this.editorService.currentEditorGroup;
88
+ editorGroup.open(state.uri, {
89
+ range: {
90
+ startColumn: state.position.column,
91
+ startLineNumber: state.position.lineNumber,
92
+ endColumn: state.position.column,
93
+ endLineNumber: state.position.lineNumber,
94
+ },
95
+ focus: true,
96
+ });
97
+ }
98
+ pushClosed(uri) {
99
+ this.closedStack.push(uri);
100
+ if (this.closedStack.length > HardMaxStateLength) {
101
+ this.closedStack.splice(0, this.closedStack.length - SoftMaxStateLength);
102
+ }
103
+ }
104
+ popClosed() {
105
+ const uri = this.closedStack.pop();
106
+ if (uri) {
107
+ this.editorService.open(uri, {
108
+ focus: true,
109
+ });
110
+ this.closedStack = this.closedStack.filter((u) => !uri.isEqual(u));
111
+ }
112
+ }
113
+ };
114
+ (0, tslib_1.__decorate)([
115
+ (0, di_1.Autowired)(common_1.WorkbenchEditorService),
116
+ (0, tslib_1.__metadata)("design:type", common_1.WorkbenchEditorService)
117
+ ], EditorHistoryService.prototype, "editorService", void 0);
118
+ (0, tslib_1.__decorate)([
119
+ (0, ide_core_browser_1.OnEvent)(types_1.EditorSelectionChangeEvent),
120
+ (0, tslib_1.__metadata)("design:type", Function),
121
+ (0, tslib_1.__metadata)("design:paramtypes", [types_1.EditorSelectionChangeEvent]),
122
+ (0, tslib_1.__metadata)("design:returntype", void 0)
123
+ ], EditorHistoryService.prototype, "onEditorSelectionChangeEvent", null);
124
+ (0, tslib_1.__decorate)([
125
+ (0, ide_core_browser_1.OnEvent)(types_1.EditorGroupChangeEvent),
126
+ (0, tslib_1.__metadata)("design:type", Function),
127
+ (0, tslib_1.__metadata)("design:paramtypes", [types_1.EditorGroupChangeEvent]),
128
+ (0, tslib_1.__metadata)("design:returntype", void 0)
129
+ ], EditorHistoryService.prototype, "onEditorGroupChangeEvent", null);
130
+ (0, tslib_1.__decorate)([
131
+ (0, ide_core_browser_1.OnEvent)(types_1.EditorGroupCloseEvent),
132
+ (0, tslib_1.__metadata)("design:type", Function),
133
+ (0, tslib_1.__metadata)("design:paramtypes", [types_1.EditorGroupCloseEvent]),
134
+ (0, tslib_1.__metadata)("design:returntype", void 0)
135
+ ], EditorHistoryService.prototype, "onEditorGroupCloseEvent", null);
136
+ EditorHistoryService = (0, tslib_1.__decorate)([
137
+ (0, di_1.Injectable)()
138
+ ], EditorHistoryService);
139
+ exports.EditorHistoryService = EditorHistoryService;
140
+ class EditorHistoryState {
141
+ constructor(uri, position, groupIndex, isTabChange) {
142
+ this.uri = uri;
143
+ this.position = position;
144
+ this.groupIndex = groupIndex;
145
+ this.isTabChange = isTabChange;
146
+ }
147
+ isRelevant(anotherState) {
148
+ if (this.uri.isEqual(anotherState.uri)) {
149
+ if ((anotherState.position.lineNumber < this.position.lineNumber + HistoryPositionLineThreshold) && (anotherState.position.lineNumber > this.position.lineNumber - HistoryPositionLineThreshold)) {
150
+ return true;
151
+ }
152
+ if (this.isTabChange || anotherState.isTabChange) {
153
+ // 如果是 tabChange 类型,我们认为是相关的,这样防止无意义的 0 line 0 column 状态出现
154
+ return true;
155
+ }
156
+ }
157
+ return false;
158
+ }
159
+ isEqual(anotherState) {
160
+ return this.uri.isEqual(anotherState.uri) && this.position.lineNumber === anotherState.position.lineNumber && this.position.column === anotherState.position.column;
161
+ }
162
+ }
163
+ exports.EditorHistoryState = EditorHistoryState;
164
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browser/history/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /// <reference types="react" />
2
+ import { BrowserModule, ClientAppContribution } from '@opensumi/ide-core-browser';
3
+ import { ResourceService } from '../common';
4
+ import { WorkbenchEditorServiceImpl } from './workbench-editor.service';
5
+ import { Provider, Injector } from '@opensumi/di';
6
+ import { EditorComponentRegistry, IEditorActionRegistry, IEditorFeatureRegistry } from './types';
7
+ import { IEditorDocumentModelContentRegistry } from './doc-model/types';
8
+ import { EditorDocumentModelServiceImpl } from './doc-model/main';
9
+ export * from './preference/schema';
10
+ export * from './types';
11
+ export * from './doc-model/types';
12
+ export * from './doc-cache';
13
+ export * from './editor.less';
14
+ export * from './view/editor.react';
15
+ export declare class EditorModule extends BrowserModule {
16
+ providers: Provider[];
17
+ contributionProvider: symbol;
18
+ component: () => JSX.Element | null;
19
+ }
20
+ export declare class EditorClientAppContribution implements ClientAppContribution {
21
+ resourceService: ResourceService;
22
+ editorComponentRegistry: EditorComponentRegistry;
23
+ workbenchEditorService: WorkbenchEditorServiceImpl;
24
+ modelContentRegistry: IEditorDocumentModelContentRegistry;
25
+ editorActionRegistry: IEditorActionRegistry;
26
+ editorFeatureRegistry: IEditorFeatureRegistry;
27
+ injector: Injector;
28
+ modelService: EditorDocumentModelServiceImpl;
29
+ private readonly contributions;
30
+ initialize(): Promise<void>;
31
+ onDidStart(): Promise<void>;
32
+ }
33
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAU,qBAAqB,EAAkE,MAAM,4BAA4B,CAAC;AAE1J,OAAO,EAAmD,eAAe,EAAoB,MAAM,WAAW,CAAC;AAE/G,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAc,QAAQ,EAAa,QAAQ,EAAkB,MAAM,cAAc,CAAC;AAGzF,OAAO,EAAE,uBAAuB,EAAiE,qBAAqB,EAAuC,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAKrM,OAAO,EAAE,mCAAmC,EAA+B,MAAM,mBAAmB,CAAC;AACrG,OAAO,EAA0C,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAkB1G,cAAc,qBAAqB,CAAC;AACpC,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AAEpC,qBACa,YAAa,SAAQ,aAAa;IAC7C,SAAS,EAAE,QAAQ,EAAE,CA2FnB;IACF,oBAAoB,SAA6B;IAEjD,SAAS,2BAAc;CAExB;AAED,qBACa,2BAA4B,YAAW,qBAAqB;IAGvE,eAAe,EAAG,eAAe,CAAC;IAGlC,uBAAuB,EAAG,uBAAuB,CAAC;IAGlD,sBAAsB,EAAG,0BAA0B,CAAC;IAGpD,oBAAoB,EAAE,mCAAmC,CAAC;IAG1D,oBAAoB,EAAE,qBAAqB,CAAC;IAG5C,qBAAqB,EAAE,sBAAsB,CAAC;IAG9C,QAAQ,EAAE,QAAQ,CAAC;IAGnB,YAAY,EAAE,8BAA8B,CAAC;IAG7C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAkD;IAE1E,UAAU;IAsBV,UAAU;CAIjB"}
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EditorClientAppContribution = exports.EditorModule = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
6
+ const editor_view_1 = require("./editor.view");
7
+ const common_1 = require("../common");
8
+ const editor_collection_service_1 = require("./editor-collection.service");
9
+ const workbench_editor_service_1 = require("./workbench-editor.service");
10
+ const di_1 = require("@opensumi/di");
11
+ const editor_contribution_1 = require("./editor.contribution");
12
+ const resource_service_1 = require("./resource.service");
13
+ const types_1 = require("./types");
14
+ const component_1 = require("./component");
15
+ const diff_1 = require("./diff");
16
+ const editor_decoration_service_1 = require("./editor.decoration.service");
17
+ const language_service_1 = require("./language/language.service");
18
+ const types_2 = require("./doc-model/types");
19
+ const main_1 = require("./doc-model/main");
20
+ const editor_menu_1 = require("./menu/editor.menu");
21
+ const doc_cache_1 = require("../common/doc-cache");
22
+ const doc_cache_2 = require("./doc-cache");
23
+ const compare_1 = require("./diff/compare");
24
+ const breadcrumb_1 = require("./breadcrumb");
25
+ const editor_context_1 = require("./menu/editor.context");
26
+ const feature_1 = require("./feature");
27
+ const contribution_1 = require("./preference/contribution");
28
+ const saveParticipants_1 = require("./doc-model/saveParticipants");
29
+ const schema_1 = require("./preference/schema");
30
+ const fs_resource_1 = require("./fs-resource");
31
+ const callHierarchy_1 = require("@opensumi/ide-monaco/lib/browser/contrib/callHierarchy");
32
+ const monaco_contrib_1 = require("./monaco-contrib");
33
+ const command_1 = require("@opensumi/ide-monaco/lib/browser/contrib/command");
34
+ const command_service_1 = require("./monaco-contrib/command/command.service");
35
+ const textmate_service_1 = require("./monaco-contrib/tokenizer/textmate.service");
36
+ const tokenizer_1 = require("@opensumi/ide-monaco/lib/browser/contrib/tokenizer");
37
+ (0, tslib_1.__exportStar)(require("./preference/schema"), exports);
38
+ (0, tslib_1.__exportStar)(require("./types"), exports);
39
+ (0, tslib_1.__exportStar)(require("./doc-model/types"), exports);
40
+ (0, tslib_1.__exportStar)(require("./doc-cache"), exports);
41
+ (0, tslib_1.__exportStar)(require("./editor.less"), exports);
42
+ (0, tslib_1.__exportStar)(require("./view/editor.react"), exports);
43
+ let EditorModule = class EditorModule extends ide_core_browser_1.BrowserModule {
44
+ constructor() {
45
+ super(...arguments);
46
+ this.providers = [
47
+ {
48
+ token: common_1.EditorCollectionService,
49
+ useClass: editor_collection_service_1.EditorCollectionServiceImpl,
50
+ },
51
+ {
52
+ token: common_1.WorkbenchEditorService,
53
+ useClass: workbench_editor_service_1.WorkbenchEditorServiceImpl,
54
+ },
55
+ {
56
+ token: common_1.ResourceService,
57
+ useClass: resource_service_1.ResourceServiceImpl,
58
+ },
59
+ {
60
+ token: types_1.EditorComponentRegistry,
61
+ useClass: component_1.EditorComponentRegistryImpl,
62
+ },
63
+ {
64
+ token: types_1.IEditorDecorationCollectionService,
65
+ useClass: editor_decoration_service_1.EditorDecorationCollectionService,
66
+ },
67
+ {
68
+ token: types_2.IEditorDocumentModelContentRegistry,
69
+ useClass: main_1.EditorDocumentModelContentRegistryImpl,
70
+ },
71
+ {
72
+ token: types_2.IEditorDocumentModelService,
73
+ useClass: main_1.EditorDocumentModelServiceImpl,
74
+ },
75
+ {
76
+ token: common_1.ILanguageService,
77
+ useClass: language_service_1.LanguageService,
78
+ },
79
+ {
80
+ token: types_1.IEditorActionRegistry,
81
+ useClass: editor_menu_1.EditorActionRegistryImpl,
82
+ },
83
+ {
84
+ token: doc_cache_1.IDocPersistentCacheProvider,
85
+ useClass: doc_cache_2.EmptyDocCacheImpl,
86
+ // useClass: LocalStorageDocCacheImpl,
87
+ },
88
+ {
89
+ token: types_1.ICompareService,
90
+ useClass: compare_1.CompareService,
91
+ },
92
+ {
93
+ token: types_1.IBreadCrumbService,
94
+ useClass: breadcrumb_1.BreadCrumbServiceImpl,
95
+ },
96
+ {
97
+ token: types_1.IEditorFeatureRegistry,
98
+ useClass: feature_1.EditorFeatureRegistryImpl,
99
+ },
100
+ {
101
+ token: schema_1.EditorPreferences,
102
+ useFactory: (inject) => {
103
+ const preferences = inject.get(ide_core_browser_1.PreferenceService);
104
+ return (0, ide_core_browser_1.createPreferenceProxy)(preferences, schema_1.editorPreferenceSchema);
105
+ },
106
+ },
107
+ {
108
+ token: callHierarchy_1.ICallHierarchyService,
109
+ useClass: monaco_contrib_1.CallHierarchyService,
110
+ },
111
+ {
112
+ token: command_1.ICommandServiceToken,
113
+ useClass: command_service_1.MonacoCommandService,
114
+ },
115
+ {
116
+ token: command_1.IMonacoCommandsRegistry,
117
+ useClass: command_service_1.MonacoCommandRegistry,
118
+ },
119
+ {
120
+ token: command_1.IMonacoActionRegistry,
121
+ useClass: command_service_1.MonacoActionRegistry,
122
+ },
123
+ {
124
+ token: tokenizer_1.ITextmateTokenizer,
125
+ useClass: textmate_service_1.TextmateService,
126
+ },
127
+ contribution_1.EditorPreferenceContribution,
128
+ diff_1.DefaultDiffEditorContribution,
129
+ EditorClientAppContribution,
130
+ editor_contribution_1.EditorContribution,
131
+ compare_1.CompareEditorContribution,
132
+ editor_context_1.EditorContextMenuBrowserEditorContribution,
133
+ editor_contribution_1.EditorAutoSaveEditorContribution,
134
+ saveParticipants_1.SaveParticipantsContribution,
135
+ fs_resource_1.FileSystemResourceContribution,
136
+ monaco_contrib_1.CallHierarchyContribution,
137
+ ];
138
+ this.contributionProvider = types_1.BrowserEditorContribution;
139
+ this.component = editor_view_1.EditorView;
140
+ }
141
+ };
142
+ EditorModule = (0, tslib_1.__decorate)([
143
+ (0, di_1.Injectable)()
144
+ ], EditorModule);
145
+ exports.EditorModule = EditorModule;
146
+ let EditorClientAppContribution = class EditorClientAppContribution {
147
+ async initialize() {
148
+ for (const contribution of this.contributions.getContributions()) {
149
+ if (contribution.registerResource) {
150
+ contribution.registerResource(this.resourceService);
151
+ }
152
+ if (contribution.registerEditorComponent) {
153
+ contribution.registerEditorComponent(this.editorComponentRegistry);
154
+ }
155
+ if (contribution.registerEditorDocumentModelContentProvider) {
156
+ contribution.registerEditorDocumentModelContentProvider(this.modelContentRegistry);
157
+ }
158
+ if (contribution.registerEditorActions) {
159
+ contribution.registerEditorActions(this.editorActionRegistry);
160
+ }
161
+ if (contribution.registerEditorFeature) {
162
+ contribution.registerEditorFeature(this.editorFeatureRegistry);
163
+ }
164
+ }
165
+ this.workbenchEditorService.contributionsReady.resolve();
166
+ await Promise.all([this.workbenchEditorService.initialize(), this.modelService.initialize()]);
167
+ }
168
+ async onDidStart() {
169
+ this.workbenchEditorService.prepareContextKeyService();
170
+ }
171
+ };
172
+ (0, tslib_1.__decorate)([
173
+ (0, di_1.Autowired)(),
174
+ (0, tslib_1.__metadata)("design:type", common_1.ResourceService)
175
+ ], EditorClientAppContribution.prototype, "resourceService", void 0);
176
+ (0, tslib_1.__decorate)([
177
+ (0, di_1.Autowired)(),
178
+ (0, tslib_1.__metadata)("design:type", types_1.EditorComponentRegistry)
179
+ ], EditorClientAppContribution.prototype, "editorComponentRegistry", void 0);
180
+ (0, tslib_1.__decorate)([
181
+ (0, di_1.Autowired)(common_1.WorkbenchEditorService),
182
+ (0, tslib_1.__metadata)("design:type", workbench_editor_service_1.WorkbenchEditorServiceImpl)
183
+ ], EditorClientAppContribution.prototype, "workbenchEditorService", void 0);
184
+ (0, tslib_1.__decorate)([
185
+ (0, di_1.Autowired)(types_2.IEditorDocumentModelContentRegistry),
186
+ (0, tslib_1.__metadata)("design:type", Object)
187
+ ], EditorClientAppContribution.prototype, "modelContentRegistry", void 0);
188
+ (0, tslib_1.__decorate)([
189
+ (0, di_1.Autowired)(types_1.IEditorActionRegistry),
190
+ (0, tslib_1.__metadata)("design:type", Object)
191
+ ], EditorClientAppContribution.prototype, "editorActionRegistry", void 0);
192
+ (0, tslib_1.__decorate)([
193
+ (0, di_1.Autowired)(types_1.IEditorFeatureRegistry),
194
+ (0, tslib_1.__metadata)("design:type", Object)
195
+ ], EditorClientAppContribution.prototype, "editorFeatureRegistry", void 0);
196
+ (0, tslib_1.__decorate)([
197
+ (0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
198
+ (0, tslib_1.__metadata)("design:type", di_1.Injector)
199
+ ], EditorClientAppContribution.prototype, "injector", void 0);
200
+ (0, tslib_1.__decorate)([
201
+ (0, di_1.Autowired)(types_2.IEditorDocumentModelService),
202
+ (0, tslib_1.__metadata)("design:type", main_1.EditorDocumentModelServiceImpl)
203
+ ], EditorClientAppContribution.prototype, "modelService", void 0);
204
+ (0, tslib_1.__decorate)([
205
+ (0, di_1.Autowired)(types_1.BrowserEditorContribution),
206
+ (0, tslib_1.__metadata)("design:type", Object)
207
+ ], EditorClientAppContribution.prototype, "contributions", void 0);
208
+ EditorClientAppContribution = (0, tslib_1.__decorate)([
209
+ (0, ide_core_browser_1.Domain)(ide_core_browser_1.ClientAppContribution)
210
+ ], EditorClientAppContribution);
211
+ exports.EditorClientAppContribution = EditorClientAppContribution;
212
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;AAAA,iEAA0J;AAC1J,+CAA2C;AAC3C,sCAA+G;AAC/G,2EAA0E;AAC1E,yEAAwE;AACxE,qCAAyF;AACzF,+DAA6F;AAC7F,yDAAyD;AACzD,mCAAqM;AACrM,2CAA0D;AAC1D,iCAAuD;AACvD,2EAAgF;AAChF,kEAA8D;AAC9D,6CAAqG;AACrG,2CAA0G;AAC1G,oDAA8D;AAC9D,mDAAkE;AAClE,2CAAgD;AAChD,4CAA2E;AAC3E,6CAAqD;AACrD,0DAAmF;AACnF,uCAAsD;AACtD,4DAAyE;AACzE,mEAA4E;AAC5E,gDAAgF;AAChF,+CAA+D;AAC/D,0FAA+F;AAC/F,qDAAmF;AACnF,8EAAwI;AACxI,8EAA6H;AAC7H,kFAA8E;AAC9E,kFAAwF;AACxF,mEAAoC;AACpC,uDAAwB;AACxB,iEAAkC;AAClC,2DAA4B;AAC5B,6DAA8B;AAC9B,mEAAoC;AAGpC,IAAa,YAAY,GAAzB,MAAa,YAAa,SAAQ,gCAAa;IAA/C;;QACE,cAAS,GAAe;YACtB;gBACE,KAAK,EAAE,gCAAuB;gBAC9B,QAAQ,EAAE,uDAA2B;aACtC;YACD;gBACE,KAAK,EAAE,+BAAsB;gBAC7B,QAAQ,EAAE,qDAA0B;aACrC;YACD;gBACE,KAAK,EAAE,wBAAe;gBACtB,QAAQ,EAAE,sCAAmB;aAC9B;YACD;gBACE,KAAK,EAAE,+BAAuB;gBAC9B,QAAQ,EAAE,uCAA2B;aACtC;YACD;gBACE,KAAK,EAAE,0CAAkC;gBACzC,QAAQ,EAAG,6DAAiC;aAC7C;YACD;gBACE,KAAK,EAAE,2CAAmC;gBAC1C,QAAQ,EAAG,6CAAsC;aAClD;YACD;gBACE,KAAK,EAAE,mCAA2B;gBAClC,QAAQ,EAAG,qCAA8B;aAC1C;YACD;gBACE,KAAK,EAAE,yBAAgB;gBACvB,QAAQ,EAAE,kCAAe;aAC1B;YACD;gBACE,KAAK,EAAE,6BAAqB;gBAC5B,QAAQ,EAAE,sCAAwB;aACnC;YACD;gBACE,KAAK,EAAE,uCAA2B;gBAClC,QAAQ,EAAE,6BAAiB;gBAC3B,sCAAsC;aACvC;YACD;gBACE,KAAK,EAAE,uBAAe;gBACtB,QAAQ,EAAE,wBAAc;aACzB;YACD;gBACE,KAAK,EAAE,0BAAkB;gBACzB,QAAQ,EAAE,kCAAqB;aAChC;YACD;gBACE,KAAK,EAAE,8BAAsB;gBAC7B,QAAQ,EAAE,mCAAyB;aACpC;YACD;gBACE,KAAK,EAAE,0BAAiB;gBACxB,UAAU,EAAE,CAAC,MAAgB,EAAE,EAAE;oBAC/B,MAAM,WAAW,GAAsB,MAAM,CAAC,GAAG,CAAC,oCAAiB,CAAC,CAAC;oBACrE,OAAO,IAAA,wCAAqB,EAAC,WAAW,EAAE,+BAAsB,CAAC,CAAC;gBACpE,CAAC;aACF;YACD;gBACE,KAAK,EAAE,qCAAqB;gBAC5B,QAAQ,EAAE,qCAAoB;aAC/B;YACD;gBACE,KAAK,EAAE,8BAAoB;gBAC3B,QAAQ,EAAE,sCAAoB;aAC/B;YACD;gBACE,KAAK,EAAE,iCAAuB;gBAC9B,QAAQ,EAAE,uCAAqB;aAChC;YACD;gBACE,KAAK,EAAE,+BAAqB;gBAC5B,QAAQ,EAAE,sCAAoB;aAC/B;YACD;gBACE,KAAK,EAAE,8BAAkB;gBACzB,QAAQ,EAAE,kCAAe;aAC1B;YACD,2CAA4B;YAC5B,oCAA6B;YAC7B,2BAA2B;YAC3B,wCAAkB;YAClB,mCAAyB;YACzB,2DAA0C;YAC1C,sDAAgC;YAChC,+CAA4B;YAC5B,4CAA8B;YAC9B,0CAAyB;SAC1B,CAAC;QACF,yBAAoB,GAAG,iCAAyB,CAAC;QAEjD,cAAS,GAAG,wBAAU,CAAC;IAEzB,CAAC;CAAA,CAAA;AAjGY,YAAY;IADxB,IAAA,eAAU,GAAE;GACA,YAAY,CAiGxB;AAjGY,oCAAY;AAoGzB,IAAa,2BAA2B,GAAxC,MAAa,2BAA2B;IA6BtC,KAAK,CAAC,UAAU;QACd,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,EAAE;YAChE,IAAI,YAAY,CAAC,gBAAgB,EAAE;gBACjC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;aACrD;YACD,IAAI,YAAY,CAAC,uBAAuB,EAAE;gBACxC,YAAY,CAAC,uBAAuB,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;aACpE;YACD,IAAI,YAAY,CAAC,0CAA0C,EAAE;gBAC3D,YAAY,CAAC,0CAA0C,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;aACpF;YACD,IAAI,YAAY,CAAC,qBAAqB,EAAE;gBACtC,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;aAC/D;YACD,IAAI,YAAY,CAAC,qBAAqB,EAAE;gBACtC,YAAY,CAAC,qBAAqB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;aAChE;SACF;QACD,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC;QACzD,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IAChG,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,sBAAsB,CAAC,wBAAwB,EAAE,CAAC;IACzD,CAAC;CAEF,CAAA;AApDC;IADC,IAAA,cAAS,GAAE;2CACM,wBAAe;oEAAC;AAGlC;IADC,IAAA,cAAS,GAAE;2CACc,+BAAuB;4EAAC;AAGlD;IADC,IAAA,cAAS,EAAC,+BAAsB,CAAC;2CACT,qDAA0B;2EAAC;AAGpD;IADC,IAAA,cAAS,EAAC,2CAAmC,CAAC;;yEACW;AAG1D;IADC,IAAA,cAAS,EAAC,6BAAqB,CAAC;;yEACW;AAG5C;IADC,IAAA,cAAS,EAAC,8BAAsB,CAAC;;0EACY;AAG9C;IADC,IAAA,cAAS,EAAC,mBAAc,CAAC;2CAChB,aAAQ;6DAAC;AAGnB;IADC,IAAA,cAAS,EAAC,mCAA2B,CAAC;2CACzB,qCAA8B;iEAAC;AAG7C;IADC,IAAA,cAAS,EAAC,iCAAyB,CAAC;;kEAC2C;AA3BrE,2BAA2B;IADvC,IAAA,yBAAM,EAAC,wCAAqB,CAAC;GACjB,2BAA2B,CAuDvC;AAvDY,kEAA2B"}
@@ -0,0 +1,28 @@
1
+ import * as monaco from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api';
2
+ import IModel = monaco.editor.IModel;
3
+ import IMarkerData = monaco.editor.IMarkerData;
4
+ import { DiagnosticCollection, Diagnostic } from '../../common';
5
+ import { DisposableCollection, IDisposable } from '@opensumi/ide-core-common';
6
+ export declare class MonacoDiagnosticCollection implements DiagnosticCollection {
7
+ protected readonly name: string;
8
+ protected readonly diagnostics: Map<string, MonacoModelDiagnostics | undefined>;
9
+ protected readonly toDispose: DisposableCollection;
10
+ constructor(name: string);
11
+ dispose(): void;
12
+ get(uri: string): Diagnostic[];
13
+ set(uri: string, diagnostics: Diagnostic[]): void;
14
+ }
15
+ export declare class MonacoModelDiagnostics implements IDisposable {
16
+ readonly owner: string;
17
+ readonly uri: monaco.Uri;
18
+ protected _markers: IMarkerData[];
19
+ protected _diagnostics: Diagnostic[];
20
+ constructor(uri: string, diagnostics: Diagnostic[], owner: string);
21
+ set diagnostics(diagnostics: Diagnostic[]);
22
+ get diagnostics(): Diagnostic[];
23
+ get markers(): ReadonlyArray<IMarkerData>;
24
+ dispose(): void;
25
+ updateModelMarkers(): void;
26
+ protected doUpdateModelMarkers(model: IModel | null): void;
27
+ }
28
+ //# sourceMappingURL=diagnostic-collection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostic-collection.d.ts","sourceRoot":"","sources":["../../../src/browser/language/diagnostic-collection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,uDAAuD,CAAC;AAChF,OAAO,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;AACrC,OAAO,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAiB,MAAM,cAAc,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAc,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE1F,qBAAa,0BAA2B,YAAW,oBAAoB;IAKzD,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM;IAH3C,SAAS,CAAC,QAAQ,CAAC,WAAW,kDAAyD;IACvF,SAAS,CAAC,QAAQ,CAAC,SAAS,uBAA8B;gBAE3B,IAAI,EAAE,MAAM;IAG3C,OAAO;IAIP,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,EAAE;IAK9B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI;CAclD;AAED,qBAAa,sBAAuB,YAAW,WAAW;IAOtD,QAAQ,CAAC,KAAK,EAAE,MAAM;IANxB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;IACzB,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAM;IACvC,SAAS,CAAC,YAAY,EAAE,UAAU,EAAE,CAAM;gBAExC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,UAAU,EAAE,EAChB,KAAK,EAAE,MAAM;IAOxB,IAAI,WAAW,CAAC,WAAW,EAAE,UAAU,EAAE,EAIxC;IAED,IAAI,WAAW,IAAI,UAAU,EAAE,CAE9B;IAED,IAAI,OAAO,IAAI,aAAa,CAAC,WAAW,CAAC,CAExC;IAED,OAAO,IAAI,IAAI;IAKf,kBAAkB,IAAI,IAAI;IAK1B,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;CAK3D"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MonacoModelDiagnostics = exports.MonacoDiagnosticCollection = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const monaco = (0, tslib_1.__importStar)(require("@opensumi/monaco-editor-core/esm/vs/editor/editor.api"));
6
+ const common_1 = require("../../common");
7
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
8
+ class MonacoDiagnosticCollection {
9
+ constructor(name) {
10
+ this.name = name;
11
+ this.diagnostics = new Map();
12
+ this.toDispose = new ide_core_common_1.DisposableCollection();
13
+ }
14
+ dispose() {
15
+ this.toDispose.dispose();
16
+ }
17
+ get(uri) {
18
+ const diagnostics = this.diagnostics.get(uri);
19
+ return !!diagnostics ? diagnostics.diagnostics : [];
20
+ }
21
+ set(uri, diagnostics) {
22
+ const existing = this.diagnostics.get(uri);
23
+ if (existing) {
24
+ existing.diagnostics = diagnostics;
25
+ }
26
+ else {
27
+ const modelDiagnostics = new MonacoModelDiagnostics(uri, diagnostics, this.name);
28
+ this.diagnostics.set(uri, modelDiagnostics);
29
+ this.toDispose.push(ide_core_common_1.Disposable.create(() => {
30
+ this.diagnostics.delete(uri);
31
+ modelDiagnostics.dispose();
32
+ }));
33
+ }
34
+ }
35
+ }
36
+ exports.MonacoDiagnosticCollection = MonacoDiagnosticCollection;
37
+ class MonacoModelDiagnostics {
38
+ constructor(uri, diagnostics, owner) {
39
+ this.owner = owner;
40
+ this._markers = [];
41
+ this._diagnostics = [];
42
+ this.uri = monaco.Uri.parse(uri);
43
+ this.diagnostics = diagnostics;
44
+ monaco.editor.onDidCreateModel((model) => this.doUpdateModelMarkers(model));
45
+ }
46
+ set diagnostics(diagnostics) {
47
+ this._diagnostics = diagnostics;
48
+ this._markers = (0, common_1.asDiagnostics)(diagnostics) || [];
49
+ this.updateModelMarkers();
50
+ }
51
+ get diagnostics() {
52
+ return this._diagnostics;
53
+ }
54
+ get markers() {
55
+ return this._markers;
56
+ }
57
+ dispose() {
58
+ this._markers = [];
59
+ this.updateModelMarkers();
60
+ }
61
+ updateModelMarkers() {
62
+ const model = monaco.editor.getModel(this.uri);
63
+ this.doUpdateModelMarkers(model);
64
+ }
65
+ doUpdateModelMarkers(model) {
66
+ if (model && this.uri.toString() === model.uri.toString()) {
67
+ monaco.editor.setModelMarkers(model, this.owner, this._markers);
68
+ }
69
+ }
70
+ }
71
+ exports.MonacoModelDiagnostics = MonacoModelDiagnostics;
72
+ //# sourceMappingURL=diagnostic-collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostic-collection.js","sourceRoot":"","sources":["../../../src/browser/language/diagnostic-collection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import * as monaco from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api';
2
+ import { MonacoDiagnosticCollection } from './diagnostic-collection';
3
+ import { URI, IDisposable } from '@opensumi/ide-core-common';
4
+ import { Language, WorkspaceSymbolProvider, ILanguageService } from '../../common';
5
+ export declare type Mutable<T> = {
6
+ -readonly [P in keyof T]: T[P];
7
+ };
8
+ export declare class LanguageService implements ILanguageService {
9
+ private markerManager;
10
+ protected readonly markers: Map<string, MonacoDiagnosticCollection>;
11
+ readonly workspaceSymbolProviders: WorkspaceSymbolProvider[];
12
+ constructor();
13
+ get languages(): Language[];
14
+ getLanguage(languageId: string): Language | undefined;
15
+ protected mergeLanguages(registered: monaco.languages.ILanguageExtensionPoint[]): Map<string, Mutable<Language>>;
16
+ registerWorkspaceSymbolProvider(provider: WorkspaceSymbolProvider): IDisposable;
17
+ protected updateMarkers(uri: URI): void;
18
+ }
19
+ //# sourceMappingURL=language.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language.service.d.ts","sourceRoot":"","sources":["../../../src/browser/language/language.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,uDAAuD,CAAC;AAEhF,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EAAE,GAAG,EAAE,WAAW,EAA+E,MAAM,2BAA2B,CAAC;AAC1I,OAAO,EAAgE,QAAQ,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEjJ,oBAAY,OAAO,CAAC,CAAC,IAAI;IAAE,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,CAAC;AAqD5D,qBACa,eAAgB,YAAW,gBAAgB;IAGtD,OAAO,CAAC,aAAa,CAAgB;IAErC,SAAS,CAAC,QAAQ,CAAC,OAAO,0CAAiD;IAE3E,QAAQ,CAAC,wBAAwB,EAAE,uBAAuB,EAAE,CAAM;;IAalE,IAAI,SAAS,IAAI,QAAQ,EAAE,CAE1B;IAED,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAIrD,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,uBAAuB,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAgChH,+BAA+B,CAAC,QAAQ,EAAE,uBAAuB,GAAG,WAAW;IAU/E,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;CAsBxC"}