@opensumi/ide-editor 2.27.3-rc-1708399099.0 → 2.27.3-rc-1710489030.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (249) hide show
  1. package/lib/browser/breadcrumb/default.d.ts.map +1 -1
  2. package/lib/browser/breadcrumb/document-symbol.d.ts +2 -2
  3. package/lib/browser/breadcrumb/document-symbol.d.ts.map +1 -1
  4. package/lib/browser/breadcrumb/index.d.ts +2 -2
  5. package/lib/browser/breadcrumb/index.d.ts.map +1 -1
  6. package/lib/browser/component.d.ts +2 -2
  7. package/lib/browser/component.d.ts.map +1 -1
  8. package/lib/browser/decoration-applier.d.ts +2 -2
  9. package/lib/browser/decoration-applier.d.ts.map +1 -1
  10. package/lib/browser/decoration-applier.js.map +1 -1
  11. package/lib/browser/diff/compare.d.ts +3 -3
  12. package/lib/browser/diff/compare.d.ts.map +1 -1
  13. package/lib/browser/diff/compare.js +2 -3
  14. package/lib/browser/diff/compare.js.map +1 -1
  15. package/lib/browser/diff/index.d.ts +1 -1
  16. package/lib/browser/diff/index.d.ts.map +1 -1
  17. package/lib/browser/diff/index.js.map +1 -1
  18. package/lib/browser/doc-cache/local-storage-cache.d.ts +1 -1
  19. package/lib/browser/doc-cache/local-storage-cache.d.ts.map +1 -1
  20. package/lib/browser/doc-model/editor-document-model-service.d.ts +3 -2
  21. package/lib/browser/doc-model/editor-document-model-service.d.ts.map +1 -1
  22. package/lib/browser/doc-model/editor-document-model-service.js.map +1 -1
  23. package/lib/browser/doc-model/editor-document-model.d.ts +3 -2
  24. package/lib/browser/doc-model/editor-document-model.d.ts.map +1 -1
  25. package/lib/browser/doc-model/editor-document-model.js.map +1 -1
  26. package/lib/browser/doc-model/editor-document-registry.d.ts +2 -2
  27. package/lib/browser/doc-model/editor-document-registry.d.ts.map +1 -1
  28. package/lib/browser/doc-model/editor-is-fn.d.ts +1 -1
  29. package/lib/browser/doc-model/editor-is-fn.d.ts.map +1 -1
  30. package/lib/browser/doc-model/override.d.ts +1 -1
  31. package/lib/browser/doc-model/override.d.ts.map +1 -1
  32. package/lib/browser/doc-model/save-task.d.ts +1 -1
  33. package/lib/browser/doc-model/save-task.d.ts.map +1 -1
  34. package/lib/browser/doc-model/saveParticipants.d.ts.map +1 -1
  35. package/lib/browser/doc-model/saveParticipants.js +1 -1
  36. package/lib/browser/doc-model/saveParticipants.js.map +1 -1
  37. package/lib/browser/doc-model/types.d.ts +3 -75
  38. package/lib/browser/doc-model/types.d.ts.map +1 -1
  39. package/lib/browser/doc-model/types.js.map +1 -1
  40. package/lib/browser/editor-collection.service.d.ts +6 -5
  41. package/lib/browser/editor-collection.service.d.ts.map +1 -1
  42. package/lib/browser/editor-collection.service.js +5 -6
  43. package/lib/browser/editor-collection.service.js.map +1 -1
  44. package/lib/browser/editor-electron.contribution.d.ts +1 -1
  45. package/lib/browser/editor-electron.contribution.d.ts.map +1 -1
  46. package/lib/browser/editor-opener.d.ts +1 -1
  47. package/lib/browser/editor-opener.d.ts.map +1 -1
  48. package/lib/browser/editor.contribution.d.ts +3 -5
  49. package/lib/browser/editor.contribution.d.ts.map +1 -1
  50. package/lib/browser/editor.contribution.js +4 -10
  51. package/lib/browser/editor.contribution.js.map +1 -1
  52. package/lib/browser/editor.decoration.service.d.ts +2 -2
  53. package/lib/browser/editor.decoration.service.d.ts.map +1 -1
  54. package/lib/browser/editor.module.less +12 -0
  55. package/lib/browser/editor.override.d.ts +3 -3
  56. package/lib/browser/editor.override.d.ts.map +1 -1
  57. package/lib/browser/editor.override.js +7 -10
  58. package/lib/browser/editor.override.js.map +1 -1
  59. package/lib/browser/editor.status-bar.service.d.ts +1 -1
  60. package/lib/browser/editor.status-bar.service.d.ts.map +1 -1
  61. package/lib/browser/editor.status-bar.service.js.map +1 -1
  62. package/lib/browser/editor.tab.service.d.ts +8 -0
  63. package/lib/browser/editor.tab.service.d.ts.map +1 -0
  64. package/lib/browser/editor.tab.service.js +19 -0
  65. package/lib/browser/editor.tab.service.js.map +1 -0
  66. package/lib/browser/editor.view.d.ts.map +1 -1
  67. package/lib/browser/editor.view.js +9 -6
  68. package/lib/browser/editor.view.js.map +1 -1
  69. package/lib/browser/feature.d.ts +2 -2
  70. package/lib/browser/feature.d.ts.map +1 -1
  71. package/lib/browser/format/format.service.d.ts.map +1 -1
  72. package/lib/browser/fs-resource/fs-editor-doc.d.ts +1 -1
  73. package/lib/browser/fs-resource/fs-editor-doc.d.ts.map +1 -1
  74. package/lib/browser/fs-resource/fs-resource.d.ts +3 -3
  75. package/lib/browser/fs-resource/fs-resource.d.ts.map +1 -1
  76. package/lib/browser/fs-resource/fs-resource.js +1 -2
  77. package/lib/browser/fs-resource/fs-resource.js.map +1 -1
  78. package/lib/browser/grid/grid.service.d.ts +2 -2
  79. package/lib/browser/grid/grid.service.d.ts.map +1 -1
  80. package/lib/browser/history/index.d.ts +1 -1
  81. package/lib/browser/history/index.d.ts.map +1 -1
  82. package/lib/browser/index.d.ts +4 -4
  83. package/lib/browser/index.d.ts.map +1 -1
  84. package/lib/browser/index.js +8 -3
  85. package/lib/browser/index.js.map +1 -1
  86. package/lib/browser/language/diagnostic-collection.d.ts +1 -1
  87. package/lib/browser/language/diagnostic-collection.d.ts.map +1 -1
  88. package/lib/browser/language/language-status.contribution.d.ts.map +1 -1
  89. package/lib/browser/language/language-status.service.d.ts +1 -1
  90. package/lib/browser/language/language-status.service.d.ts.map +1 -1
  91. package/lib/browser/language/language.service.d.ts +2 -2
  92. package/lib/browser/language/language.service.d.ts.map +1 -1
  93. package/lib/browser/menu/breadcrumbs.menus.d.ts.map +1 -1
  94. package/lib/browser/menu/breadcrumbs.menus.js.map +1 -1
  95. package/lib/browser/menu/editor.context.d.ts.map +1 -1
  96. package/lib/browser/menu/editor.menu.d.ts +1 -1
  97. package/lib/browser/menu/editor.menu.d.ts.map +1 -1
  98. package/lib/browser/menu/open-type-menu.contribution.d.ts.map +1 -1
  99. package/lib/browser/merge-editor/MergeEditorFloatComponents.d.ts.map +1 -1
  100. package/lib/browser/merge-editor/MergeEditorFloatComponents.js +2 -3
  101. package/lib/browser/merge-editor/MergeEditorFloatComponents.js.map +1 -1
  102. package/lib/browser/merge-editor/merge-editor.provider.d.ts +2 -2
  103. package/lib/browser/merge-editor/merge-editor.provider.d.ts.map +1 -1
  104. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.d.ts.map +1 -1
  105. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.d.ts +0 -1
  106. package/lib/browser/monaco-contrib/callHierarchy/callHierarchy.service.d.ts.map +1 -1
  107. package/lib/browser/monaco-contrib/command/command.service.d.ts +2 -2
  108. package/lib/browser/monaco-contrib/command/command.service.d.ts.map +1 -1
  109. package/lib/browser/monaco-contrib/command/command.service.js +1 -1
  110. package/lib/browser/monaco-contrib/command/command.service.js.map +1 -1
  111. package/lib/browser/monaco-contrib/tokenizer/textmate-registry.d.ts.map +1 -1
  112. package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.d.ts +1 -1
  113. package/lib/browser/monaco-contrib/tokenizer/textmate-tokenizer.d.ts.map +1 -1
  114. package/lib/browser/monaco-contrib/tokenizer/textmate.service.d.ts +2 -3
  115. package/lib/browser/monaco-contrib/tokenizer/textmate.service.d.ts.map +1 -1
  116. package/lib/browser/monaco-contrib/tokenizer/textmate.service.js.map +1 -1
  117. package/lib/browser/monaco-contrib/typeHierarchy/typeHierarchy.contribution.d.ts.map +1 -1
  118. package/lib/browser/monaco-contrib/typeHierarchy/typeHierarchy.service.d.ts +1 -1
  119. package/lib/browser/monaco-contrib/typeHierarchy/typeHierarchy.service.d.ts.map +1 -1
  120. package/lib/browser/navigation.view.d.ts.map +1 -1
  121. package/lib/browser/navigation.view.js +12 -9
  122. package/lib/browser/navigation.view.js.map +1 -1
  123. package/lib/browser/preference/contribution.d.ts.map +1 -1
  124. package/lib/browser/preference/converter.d.ts.map +1 -1
  125. package/lib/browser/preference/converter.js +19 -0
  126. package/lib/browser/preference/converter.js.map +1 -1
  127. package/lib/browser/preference/schema.d.ts +2 -1
  128. package/lib/browser/preference/schema.d.ts.map +1 -1
  129. package/lib/browser/preference/schema.js +12 -0
  130. package/lib/browser/preference/schema.js.map +1 -1
  131. package/lib/browser/preference/util.d.ts.map +1 -1
  132. package/lib/browser/quick-open/go-to-line.d.ts +1 -1
  133. package/lib/browser/quick-open/go-to-line.d.ts.map +1 -1
  134. package/lib/browser/quick-open/workspace-symbol-quickopen.d.ts +3 -4
  135. package/lib/browser/quick-open/workspace-symbol-quickopen.d.ts.map +1 -1
  136. package/lib/browser/quick-open/workspace-symbol-quickopen.js.map +1 -1
  137. package/lib/browser/resource.service.d.ts +2 -2
  138. package/lib/browser/resource.service.d.ts.map +1 -1
  139. package/lib/browser/tab.view.d.ts.map +1 -1
  140. package/lib/browser/tab.view.js +91 -68
  141. package/lib/browser/tab.view.js.map +1 -1
  142. package/lib/browser/types.d.ts +8 -3
  143. package/lib/browser/types.d.ts.map +1 -1
  144. package/lib/browser/types.js +2 -1
  145. package/lib/browser/types.js.map +1 -1
  146. package/lib/browser/untitled-resource.d.ts +2 -2
  147. package/lib/browser/untitled-resource.d.ts.map +1 -1
  148. package/lib/browser/view/editor.react.d.ts.map +1 -1
  149. package/lib/browser/view/editor.react.js.map +1 -1
  150. package/lib/browser/view/suggest-widget.d.ts +1 -2
  151. package/lib/browser/view/suggest-widget.d.ts.map +1 -1
  152. package/lib/browser/view/suggest-widget.js +5 -6
  153. package/lib/browser/view/suggest-widget.js.map +1 -1
  154. package/lib/browser/workbench-editor.service.d.ts +12 -11
  155. package/lib/browser/workbench-editor.service.d.ts.map +1 -1
  156. package/lib/browser/workbench-editor.service.js +51 -52
  157. package/lib/browser/workbench-editor.service.js.map +1 -1
  158. package/lib/common/doc-cache.d.ts +1 -1
  159. package/lib/common/doc-cache.d.ts.map +1 -1
  160. package/lib/common/doc-cache.js.map +1 -1
  161. package/lib/common/editor.d.ts +78 -5
  162. package/lib/common/editor.d.ts.map +1 -1
  163. package/lib/common/editor.js.map +1 -1
  164. package/lib/common/language-status.d.ts +2 -2
  165. package/lib/common/language-status.d.ts.map +1 -1
  166. package/lib/common/language-status.js.map +1 -1
  167. package/lib/common/language.d.ts +1 -3
  168. package/lib/common/language.d.ts.map +1 -1
  169. package/lib/common/language.js.map +1 -1
  170. package/lib/common/mocks/workbench-editor.service.d.ts +3 -3
  171. package/lib/common/mocks/workbench-editor.service.d.ts.map +1 -1
  172. package/lib/common/mocks/workbench-editor.service.js +1 -0
  173. package/lib/common/mocks/workbench-editor.service.js.map +1 -1
  174. package/lib/common/resource.d.ts +1 -1
  175. package/lib/common/resource.d.ts.map +1 -1
  176. package/package.json +13 -13
  177. package/src/browser/breadcrumb/default.ts +3 -3
  178. package/src/browser/breadcrumb/document-symbol.ts +7 -7
  179. package/src/browser/breadcrumb/index.ts +3 -3
  180. package/src/browser/component.ts +5 -5
  181. package/src/browser/decoration-applier.ts +8 -7
  182. package/src/browser/diff/compare.ts +10 -10
  183. package/src/browser/diff/index.ts +12 -12
  184. package/src/browser/doc-cache/local-storage-cache.ts +2 -2
  185. package/src/browser/doc-model/editor-document-model-service.ts +14 -13
  186. package/src/browser/doc-model/editor-document-model.ts +12 -12
  187. package/src/browser/doc-model/editor-document-registry.ts +4 -4
  188. package/src/browser/doc-model/editor-is-fn.ts +1 -1
  189. package/src/browser/doc-model/override.ts +1 -1
  190. package/src/browser/doc-model/save-task.ts +5 -5
  191. package/src/browser/doc-model/saveParticipants.ts +10 -12
  192. package/src/browser/doc-model/types.ts +6 -102
  193. package/src/browser/editor-collection.service.ts +26 -29
  194. package/src/browser/editor-electron.contribution.ts +5 -5
  195. package/src/browser/editor-opener.ts +2 -2
  196. package/src/browser/editor.contribution.ts +34 -39
  197. package/src/browser/editor.decoration.service.ts +7 -7
  198. package/src/browser/editor.module.less +12 -0
  199. package/src/browser/editor.override.ts +12 -14
  200. package/src/browser/editor.status-bar.service.ts +4 -5
  201. package/src/browser/editor.tab.service.ts +16 -0
  202. package/src/browser/editor.view.tsx +14 -10
  203. package/src/browser/feature.ts +3 -3
  204. package/src/browser/format/format.service.ts +2 -2
  205. package/src/browser/format/formatterSelect.ts +2 -2
  206. package/src/browser/fs-resource/fs-editor-doc.ts +8 -8
  207. package/src/browser/fs-resource/fs-resource.ts +6 -7
  208. package/src/browser/grid/grid.service.ts +2 -2
  209. package/src/browser/history/index.ts +6 -6
  210. package/src/browser/index.ts +19 -13
  211. package/src/browser/language/diagnostic-collection.ts +2 -2
  212. package/src/browser/language/language-status.contribution.ts +2 -2
  213. package/src/browser/language/language-status.service.ts +2 -2
  214. package/src/browser/language/language.service.ts +6 -6
  215. package/src/browser/menu/breadcrumbs.menus.ts +2 -6
  216. package/src/browser/menu/editor.context.ts +1 -1
  217. package/src/browser/menu/editor.menu.ts +3 -3
  218. package/src/browser/menu/open-type-menu.contribution.ts +3 -3
  219. package/src/browser/menu/title-context.menu.ts +1 -1
  220. package/src/browser/merge-editor/MergeEditorFloatComponents.tsx +8 -2
  221. package/src/browser/merge-editor/merge-editor.provider.ts +3 -3
  222. package/src/browser/monaco-contrib/callHierarchy/callHierarchy.contribution.ts +2 -2
  223. package/src/browser/monaco-contrib/callHierarchy/callHierarchy.service.ts +3 -3
  224. package/src/browser/monaco-contrib/command/command.service.ts +10 -10
  225. package/src/browser/monaco-contrib/tokenizer/textmate-registry.ts +2 -2
  226. package/src/browser/monaco-contrib/tokenizer/textmate-tokenizer.ts +1 -1
  227. package/src/browser/monaco-contrib/tokenizer/textmate.service.ts +19 -17
  228. package/src/browser/monaco-contrib/typeHierarchy/typeHierarchy.contribution.ts +3 -3
  229. package/src/browser/monaco-contrib/typeHierarchy/typeHierarchy.service.ts +5 -5
  230. package/src/browser/navigation.view.tsx +25 -16
  231. package/src/browser/preference/contribution.ts +1 -1
  232. package/src/browser/preference/converter.ts +20 -1
  233. package/src/browser/preference/schema.ts +22 -4
  234. package/src/browser/preference/util.ts +1 -1
  235. package/src/browser/quick-open/go-to-line.ts +3 -3
  236. package/src/browser/quick-open/workspace-symbol-quickopen.ts +13 -13
  237. package/src/browser/resource.service.ts +9 -9
  238. package/src/browser/tab.view.tsx +168 -119
  239. package/src/browser/types.ts +21 -12
  240. package/src/browser/untitled-resource.ts +12 -12
  241. package/src/browser/view/editor.react.tsx +2 -1
  242. package/src/browser/view/suggest-widget.ts +1 -2
  243. package/src/browser/workbench-editor.service.ts +59 -60
  244. package/src/common/doc-cache.ts +2 -1
  245. package/src/common/editor.ts +109 -10
  246. package/src/common/language-status.ts +5 -3
  247. package/src/common/language.ts +2 -2
  248. package/src/common/mocks/workbench-editor.service.ts +5 -3
  249. package/src/common/resource.ts +1 -1
@@ -1,109 +1,108 @@
1
1
  import { observable } from 'mobx';
2
2
 
3
- import { Injectable, Autowired, Injector, INJECTOR_TOKEN } from '@opensumi/di';
3
+ import { Autowired, INJECTOR_TOKEN, Injectable, Injector } from '@opensumi/di';
4
4
  import {
5
- FILE_COMMANDS,
6
- OPEN_EDITORS_COMMANDS,
7
- ResizeEvent,
8
- getSlotLocation,
9
5
  AppConfig,
6
+ FILE_COMMANDS,
7
+ IContextKey,
10
8
  IContextKeyService,
11
- ServiceNames,
9
+ IOpenerService,
12
10
  IScopedContextKeyService,
13
- IContextKey,
14
- RecentFilesManager,
11
+ OPEN_EDITORS_COMMANDS,
15
12
  PreferenceService,
16
- IOpenerService,
13
+ RecentFilesManager,
14
+ ResizeEvent,
15
+ ServiceNames,
16
+ getSlotLocation,
17
17
  toMarkdown,
18
18
  } from '@opensumi/ide-core-browser';
19
19
  import { ResourceContextKey } from '@opensumi/ide-core-browser/lib/contextkey/resource';
20
20
  import { IMergeEditorEditor, MergeEditorInputData } from '@opensumi/ide-core-browser/lib/monaco/merge-editor-widget';
21
21
  import {
22
- isUndefinedOrNull,
23
- Schemes,
24
- REPORT_NAME,
25
- match,
26
- localize,
27
- MessageType,
28
- debounce,
29
22
  CUSTOM_EDITOR_SCHEME,
30
- } from '@opensumi/ide-core-common';
31
- import {
32
23
  CommandService,
33
- URI,
34
- getDebugLogger,
35
- MaybeNull,
24
+ ContributionProvider,
36
25
  Deferred,
37
- Emitter as EventEmitter,
26
+ Disposable,
27
+ Emitter,
38
28
  Event,
39
- WithEventBus,
40
- OnEvent,
41
- StorageProvider,
29
+ Emitter as EventEmitter,
30
+ IDisposable,
31
+ ILogger,
32
+ IReporterService,
42
33
  IStorage,
34
+ MaybeNull,
35
+ MessageType,
36
+ OnEvent,
37
+ REPORT_NAME,
38
+ ReadyEvent,
43
39
  STORAGE_NAMESPACE,
44
- ContributionProvider,
45
- Emitter,
40
+ Schemes,
41
+ StorageProvider,
42
+ URI,
43
+ WithEventBus,
44
+ debounce,
46
45
  formatLocalize,
47
- IReporterService,
48
- ILogger,
49
- ReadyEvent,
50
- IDisposable,
51
- Disposable,
46
+ getDebugLogger,
47
+ isUndefinedOrNull,
48
+ localize,
52
49
  makeRandomHexString,
50
+ match,
53
51
  } from '@opensumi/ide-core-common';
54
52
  import { IDialogService, IMessageService } from '@opensumi/ide-overlay';
55
53
  import * as monaco from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api';
56
54
 
57
55
  import {
58
- WorkbenchEditorService,
56
+ CursorStatus,
59
57
  EditorCollectionService,
58
+ EditorGroupSplitAction,
60
59
  ICodeEditor,
61
- IResource,
62
- ResourceService,
63
- IResourceOpenOptions,
64
60
  IDiffEditor,
65
61
  IDiffResource,
66
62
  IEditor,
67
- CursorStatus,
68
- IEditorOpenType,
69
- EditorGroupSplitAction,
70
63
  IEditorGroup,
71
- IOpenResourceResult,
72
64
  IEditorGroupState,
73
- ResourceDecorationChangeEvent,
65
+ IEditorOpenType,
66
+ IOpenResourceResult,
67
+ IResource,
68
+ IResourceOpenOptions,
74
69
  IUntitledOptions,
70
+ ResourceDecorationChangeEvent,
71
+ ResourceService,
75
72
  SaveReason,
73
+ WorkbenchEditorService,
76
74
  getSplitActionFromDragDrop,
77
75
  } from '../common';
76
+ import { IEditorDocumentModelRef } from '../common/editor';
78
77
 
79
78
  import { EditorDocumentModel } from './doc-model/editor-document-model';
80
- import { IEditorDocumentModelService, IEditorDocumentModelRef } from './doc-model/types';
79
+ import { IEditorDocumentModelService } from './doc-model/types';
81
80
  import { EditorTabChangedError, isEditorError } from './error';
82
- import { IGridEditorGroup, EditorGrid, SplitDirection, IEditorGridState } from './grid/grid.service';
81
+ import { EditorGrid, IEditorGridState, IGridEditorGroup, SplitDirection } from './grid/grid.service';
83
82
  import {
84
- EditorComponentRegistry,
85
- IEditorComponent,
86
- GridResizeEvent,
83
+ AskSaveResult,
84
+ BrowserEditorContribution,
85
+ CodeEditorDidVisibleEvent,
87
86
  DragOverPosition,
88
- EditorGroupOpenEvent,
89
- EditorGroupChangeEvent,
90
- EditorSelectionChangeEvent,
91
- EditorVisibleChangeEvent,
92
- EditorConfigurationChangedEvent,
93
- EditorGroupIndexChangedEvent,
87
+ EditorActiveResourceStateChangedEvent,
88
+ EditorComponentDisposeEvent,
89
+ EditorComponentRegistry,
94
90
  EditorComponentRenderMode,
91
+ EditorConfigurationChangedEvent,
92
+ EditorGroupChangeEvent,
95
93
  EditorGroupCloseEvent,
96
94
  EditorGroupDisposeEvent,
97
- BrowserEditorContribution,
98
- ResourceOpenTypeChangedEvent,
99
- EditorComponentDisposeEvent,
100
- EditorActiveResourceStateChangedEvent,
101
- CodeEditorDidVisibleEvent,
102
- RegisterEditorComponentEvent,
103
- AskSaveResult,
104
- IMergeEditorResource,
95
+ EditorGroupIndexChangedEvent,
96
+ EditorGroupOpenEvent,
105
97
  EditorOpenType,
98
+ EditorSelectionChangeEvent,
99
+ EditorVisibleChangeEvent,
100
+ GridResizeEvent,
101
+ IEditorComponent,
102
+ IMergeEditorResource,
103
+ RegisterEditorComponentEvent,
106
104
  ResoucesOfActiveComponentChangedEvent,
105
+ ResourceOpenTypeChangedEvent,
107
106
  } from './types';
108
107
  import { UntitledDocumentIdCounter } from './untitled-resource';
109
108
 
@@ -1,5 +1,6 @@
1
- import { URI, MaybePromise } from '@opensumi/ide-core-common';
1
+ import { MaybePromise, URI } from '@opensumi/ide-core-common';
2
2
  import { Range } from '@opensumi/monaco-editor-core/esm/vs/editor/common/core/range';
3
+
3
4
  import type { IModelContentChange } from '@opensumi/monaco-editor-core/esm/vs/editor/common/textModelEvents';
4
5
 
5
6
  interface IDocBasicCacheData {
@@ -2,28 +2,127 @@ import { Injectable } from '@opensumi/di';
2
2
  import { IScopedContextKeyService } from '@opensumi/ide-core-browser';
3
3
  import { IMergeEditorEditor } from '@opensumi/ide-core-browser/lib/monaco/merge-editor-widget';
4
4
  import {
5
- URI,
6
- Event,
7
5
  BasicEvent,
6
+ Event,
8
7
  IDisposable,
9
- MaybeNull,
10
- IRange,
11
- ISelection,
12
8
  ILineChange,
9
+ IMarkdownString,
13
10
  IPosition,
11
+ IRange,
12
+ IRef,
13
+ ISelection,
14
14
  IThemeColor,
15
- IMarkdownString,
15
+ MaybeNull,
16
+ URI,
16
17
  } from '@opensumi/ide-core-common';
18
+
17
19
  // eslint-disable-next-line import/no-restricted-paths
18
- import type { ICodeEditor as IMonacoCodeEditor } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
20
+ import { IDocModelUpdateOptions } from '../browser/doc-model/types';
21
+
22
+ import { IResource } from './resource';
23
+
24
+ // eslint-disable-next-line import/no-restricted-paths
25
+ import type { EOL, ICodeEditor as IMonacoCodeEditor } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
19
26
  // eslint-disable-next-line import/no-restricted-paths
20
27
  import type { IEditorOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/common/config/editorOptions';
21
- import type { ITextModelUpdateOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/common/model';
28
+ import type { ITextModel, ITextModelUpdateOptions } from '@opensumi/monaco-editor-core/esm/vs/editor/common/model';
22
29
 
23
30
  // eslint-disable-next-line import/no-restricted-paths
24
- import type { IEditorDocumentModel, IEditorDocumentModelRef } from '../browser';
25
31
 
26
- import { IResource } from './resource';
32
+ /**
33
+ * editorDocumentModel is a wrapped concept for monaco's textModel
34
+ */
35
+
36
+ export interface IEditorDocumentModel extends IDisposable {
37
+ /**
38
+ * 文档URI
39
+ */
40
+ readonly uri: URI;
41
+
42
+ /**
43
+ * A unique identifier associated with this model.
44
+ */
45
+ id: string;
46
+
47
+ /**
48
+ * 编码
49
+ */
50
+ encoding: string;
51
+
52
+ /**
53
+ * An event emitted when the model's encoding have changed.
54
+ * @event
55
+ */
56
+ onDidChangeEncoding: Event<void>;
57
+
58
+ /**
59
+ * 行末结束
60
+ */
61
+ eol: EOL;
62
+
63
+ /**
64
+ * 语言Id
65
+ */
66
+ languageId: string;
67
+
68
+ /**
69
+ * 是否被修改过
70
+ */
71
+ readonly dirty: boolean;
72
+
73
+ /**
74
+ * 能否修改
75
+ */
76
+ readonly readonly: boolean;
77
+
78
+ /**
79
+ * 能否保存
80
+ */
81
+ readonly savable: boolean;
82
+
83
+ /**
84
+ * 是否永远都显示 dirty
85
+ */
86
+ readonly alwaysDirty: boolean;
87
+
88
+ /**
89
+ * 即便是 dirty 也要被 dispose
90
+ */
91
+ readonly disposeEvenDirty: boolean;
92
+
93
+ /**
94
+ * 是否关闭自动保存功能
95
+ */
96
+ readonly closeAutoSave: boolean;
97
+
98
+ /**
99
+ * 获得monaco的TextModel
100
+ */
101
+ getMonacoModel(): ITextModel;
102
+
103
+ /**
104
+ * 保存文档, 如果文档不可保存,则不会有任何反应
105
+ * @param force 强制保存, 不管diff
106
+ */
107
+ save(force?: boolean, reason?: SaveReason): Promise<boolean>;
108
+
109
+ /**
110
+ * 恢复文件内容
111
+ * @param notOnDisk 文档已经不存在磁盘
112
+ */
113
+ revert(notOnDisk?: boolean): Promise<void>;
114
+
115
+ getText(range?: IRange): string;
116
+
117
+ updateContent(content: string, eol?: EOL): void;
118
+
119
+ updateEncoding(encoding: string): Promise<void>;
120
+
121
+ // setEncoding(encoding: string, preferredEncoding, mode: EncodingMode): Promise<void>;
122
+ updateOptions(options: IDocModelUpdateOptions);
123
+ }
124
+
125
+ export type IEditorDocumentModelRef = IRef<IEditorDocumentModel>;
27
126
 
28
127
  export interface CursorStatus {
29
128
  position: MaybeNull<IPosition>;
@@ -1,15 +1,17 @@
1
1
  import {
2
+ Event,
2
3
  IAccessibilityInformation,
3
4
  IDisposable,
4
5
  Severity,
5
- Event,
6
6
  StatusBarHoverCommand,
7
7
  } from '@opensumi/ide-core-common';
8
- // eslint-disable-next-line import/no-restricted-paths
9
- import type { ITextModel } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
10
8
 
9
+ // eslint-disable-next-line import/no-restricted-paths
11
10
  import { LanguageSelector } from './language';
12
11
 
12
+ // eslint-disable-next-line import/no-restricted-paths
13
+ import type { ITextModel } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
14
+
13
15
  export const ILanguageStatusService = Symbol('ILanguageStatusService');
14
16
  export interface ILanguageStatusService {
15
17
  onDidChange: Event<void>;
@@ -1,9 +1,9 @@
1
1
  import LSTypes from 'vscode-languageserver-types';
2
2
 
3
- import { MarkerSeverity } from '@opensumi/ide-core-common';
4
- import { CancellationToken, IDisposable, IRelativePattern } from '@opensumi/ide-core-common';
3
+ import { CancellationToken, IDisposable, IRelativePattern, MarkerSeverity } from '@opensumi/ide-core-common';
5
4
  import { URI as Uri } from '@opensumi/monaco-editor-core/esm/vs/base/common/uri';
6
5
  import { editor } from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api';
6
+
7
7
  import type { IRelatedInformation } from '@opensumi/monaco-editor-core/esm/vs/platform/markers/common/markers';
8
8
 
9
9
  export const ILanguageService = Symbol('ILanguageService');
@@ -1,11 +1,13 @@
1
1
  import { Injectable } from '@opensumi/di';
2
- import { URI, Emitter, MaybeNull, Event } from '@opensumi/ide-core-common';
2
+ import { Emitter, Event, MaybeNull, URI } from '@opensumi/ide-core-common';
3
3
 
4
4
  // eslint-disable-next-line import/no-restricted-paths
5
- import type { IEditorGroup } from '../../browser';
6
- import { WorkbenchEditorService, IResourceOpenOptions, IUntitledOptions, IOpenResourceResult } from '../editor';
5
+ import { IOpenResourceResult, IResourceOpenOptions, IUntitledOptions, WorkbenchEditorService } from '../editor';
7
6
  import { IResource } from '../resource';
8
7
 
8
+ // eslint-disable-next-line import/no-restricted-paths
9
+ import type { IEditorGroup } from '../../browser';
10
+
9
11
  @Injectable()
10
12
  export class MockWorkbenchEditorService extends WorkbenchEditorService {
11
13
  private readonly _onActiveResourceChange = new Emitter<MaybeNull<IResource>>();
@@ -1,4 +1,4 @@
1
- import { URI, BasicEvent, MaybePromise, IDisposable, Event } from '@opensumi/ide-core-common';
1
+ import { BasicEvent, Event, IDisposable, MaybePromise, URI } from '@opensumi/ide-core-common';
2
2
 
3
3
  export interface IResourceProvider {
4
4
  scheme?: string; // 相当于 handlesUri => 10