@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,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LocalStorageDocCacheImpl = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const di_1 = require("@opensumi/di");
6
+ const doc_cache_1 = require("../../common/doc-cache");
7
+ const ide_workspace_1 = require("@opensumi/ide-workspace");
8
+ /**
9
+ * 使用 LocalStorage 实现的文档缓存对象
10
+ */
11
+ let LocalStorageDocCacheImpl = class LocalStorageDocCacheImpl {
12
+ hasCache(_uri) {
13
+ return true;
14
+ }
15
+ /**
16
+ * LocalStorage 的存储都是瞬间完成的,始终返回 true
17
+ */
18
+ isFlushed() {
19
+ return true;
20
+ }
21
+ /**
22
+ * 从 LocalStorage 获取缓存数据,
23
+ * 因为底层对象设计是异步的,所以这里也是异步的,实际上是立即返回的
24
+ * @param uri
25
+ */
26
+ async getCache(uri) {
27
+ const key = this.parseKeyFrom(uri);
28
+ const result = await this.storageService.getData(key);
29
+ return result || null;
30
+ }
31
+ /**
32
+ * 持久化缓存对象到 LocalStorage 中
33
+ * @param uri
34
+ * @param status
35
+ */
36
+ persistCache(uri, status) {
37
+ const key = this.parseKeyFrom(uri);
38
+ const cache = this.parseCacheFrom(uri, status);
39
+ this.storageService.setData(key, cache);
40
+ }
41
+ /**
42
+ * 从文档状态解析缓存对象
43
+ * @param status
44
+ */
45
+ parseCacheFrom(uri, status) {
46
+ if (!status.dirty || !status.changeMatrix.length) {
47
+ return undefined;
48
+ }
49
+ return {
50
+ path: uri.path.toString(),
51
+ startMD5: status.startMD5,
52
+ changeMatrix: status.changeMatrix.map((changes) => {
53
+ return changes.map((change) => (0, doc_cache_1.parseCacheValueFrom)(change));
54
+ }),
55
+ };
56
+ }
57
+ parseKeyFrom(uri) {
58
+ return `LocalStorageDocCacheImpl_${uri.toString()}`;
59
+ }
60
+ };
61
+ (0, tslib_1.__decorate)([
62
+ (0, di_1.Autowired)(ide_workspace_1.IWorkspaceStorageService),
63
+ (0, tslib_1.__metadata)("design:type", Object)
64
+ ], LocalStorageDocCacheImpl.prototype, "storageService", void 0);
65
+ LocalStorageDocCacheImpl = (0, tslib_1.__decorate)([
66
+ (0, di_1.Injectable)()
67
+ ], LocalStorageDocCacheImpl);
68
+ exports.LocalStorageDocCacheImpl = LocalStorageDocCacheImpl;
69
+ //# sourceMappingURL=local-storage-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-storage-cache.js","sourceRoot":"","sources":["../../../src/browser/doc-cache/local-storage-cache.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AAErD,sDAAiH;AACjH,2DAAmE;AAEnE;;GAEG;AAEH,IAAa,wBAAwB,GAArC,MAAa,wBAAwB;IAInC,QAAQ,CAAC,IAAS;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,QAAQ,CAAC,GAAQ;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAY,GAAG,CAAC,CAAC;QACjE,OAAO,MAAM,IAAI,IAAI,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,GAAQ,EAAE,MAAkB;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,GAAQ,EAAE,MAAkB;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE;YAChD,OAAO,SAAS,CAAC;SAClB;QAED,OAAO;YACL,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;gBAChD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,+BAAmB,EAAC,MAAM,CAAC,CAAC,CAAC;YAC9D,CAAC,CAAC;SACH,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,GAAQ;QAC3B,OAAO,4BAA4B,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC;IACtD,CAAC;CACF,CAAA;AAxDC;IADC,IAAA,cAAS,EAAC,wCAAwB,CAAC;;gEACa;AAFtC,wBAAwB;IADpC,IAAA,eAAU,GAAE;GACA,wBAAwB,CA0DpC;AA1DY,4DAAwB"}
@@ -0,0 +1,7 @@
1
+ export declare enum EditorDocumentError {
2
+ READ_CACHE_ERROR = "EditorDocumentError:READ_CACHE_ERROR",
3
+ APPLY_CACHE_TO_DIRTY_DOCUMENT = "EditorDocumentError:APPLY_CACHE_TO_DIRTY_DOCUMENT",
4
+ APPLY_CACHE_TO_DIFFERENT_DOCUMENT = "EditorDocumentError:APPLY_CACHE_TO_DIFFERENT_DOCUMENT",
5
+ FORMAT_ERROR = "EditorDocumentError:FORMAT_ERROR"
6
+ }
7
+ //# sourceMappingURL=editor-document-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-document-error.d.ts","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-error.ts"],"names":[],"mappings":"AAAA,oBAAY,mBAAmB;IAE7B,gBAAgB,yCAAyC;IAEzD,6BAA6B,sDAAsD;IAEnF,iCAAiC,0DAA0D;IAE3F,YAAY,qCAAqC;CAClD"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EditorDocumentError = void 0;
4
+ var EditorDocumentError;
5
+ (function (EditorDocumentError) {
6
+ // 读取缓存异常
7
+ EditorDocumentError["READ_CACHE_ERROR"] = "EditorDocumentError:READ_CACHE_ERROR";
8
+ // 在应用缓存内容之前,编辑器发生了内容变化
9
+ EditorDocumentError["APPLY_CACHE_TO_DIRTY_DOCUMENT"] = "EditorDocumentError:APPLY_CACHE_TO_DIRTY_DOCUMENT";
10
+ // 在应用缓存内容到一个不匹配的文档版本,通常发生在 MD5 计算不一样的时候
11
+ EditorDocumentError["APPLY_CACHE_TO_DIFFERENT_DOCUMENT"] = "EditorDocumentError:APPLY_CACHE_TO_DIFFERENT_DOCUMENT";
12
+ // Format 失败
13
+ EditorDocumentError["FORMAT_ERROR"] = "EditorDocumentError:FORMAT_ERROR";
14
+ })(EditorDocumentError = exports.EditorDocumentError || (exports.EditorDocumentError = {}));
15
+ //# sourceMappingURL=editor-document-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-document-error.js","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-error.ts"],"names":[],"mappings":";;;AAAA,IAAY,mBASX;AATD,WAAY,mBAAmB;IAC7B,SAAS;IACT,gFAAyD,CAAA;IACzD,uBAAuB;IACvB,0GAAmF,CAAA;IACnF,wCAAwC;IACxC,kHAA2F,CAAA;IAC3F,YAAY;IACZ,wEAAiD,CAAA;AACnD,CAAC,EATW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAS9B"}
@@ -0,0 +1,40 @@
1
+ import { URI, IRef, IEditorDocumentChange, IEditorDocumentModelSaveResult, WithEventBus, StorageProvider, ILogger, PreferenceService } from '@opensumi/ide-core-browser';
2
+ import { Injector } from '@opensumi/di';
3
+ import { IEditorDocumentModel, IEditorDocumentModelContentRegistry, IEditorDocumentModelService, EditorDocumentModelOptionExternalUpdatedEvent, IPreferredModelOptions } from './types';
4
+ import { EditorDocumentModel } from './editor-document-model';
5
+ import { EOL } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
6
+ export declare const EDITOR_DOCUMENT_MODEL_STORAGE: URI;
7
+ export declare const EDITOR_DOC_OPTIONS_PREF_KEY = "editor_doc_pref";
8
+ export declare class EditorDocumentModelServiceImpl extends WithEventBus implements IEditorDocumentModelService {
9
+ contentRegistry: IEditorDocumentModelContentRegistry;
10
+ injector: Injector;
11
+ getStorage: StorageProvider;
12
+ logger: ILogger;
13
+ preferenceService: PreferenceService;
14
+ private readonly hashCalculateService;
15
+ private storage;
16
+ private editorDocModels;
17
+ private creatingEditorModels;
18
+ private _modelReferenceManager;
19
+ private _modelsToDispose;
20
+ private preferredModelOptions;
21
+ private _ready;
22
+ constructor();
23
+ private _delete;
24
+ private _doDelete;
25
+ changeModelOptions(uri: URI, options: IPreferredModelOptions): Promise<any>;
26
+ persistOptionsPreference(): Promise<void>;
27
+ initialize(): Promise<void>;
28
+ acceptExternalChange(e: EditorDocumentModelOptionExternalUpdatedEvent): Promise<void>;
29
+ createModelReference(uri: URI, reason?: string | undefined): Promise<IRef<IEditorDocumentModel>>;
30
+ getModelReference(uri: URI, reason?: string | undefined): IRef<IEditorDocumentModel> | null;
31
+ getAllModels(): IEditorDocumentModel[];
32
+ hasLanguage(langaugeId: any): boolean;
33
+ getOrCreateModel(uri: string, encoding?: string): Promise<EditorDocumentModel>;
34
+ private get onceReady();
35
+ private createModel;
36
+ private doCreateModel;
37
+ saveEditorDocumentModel(uri: URI, content: string, baseContent: string, changes: IEditorDocumentChange[], encoding?: string, ignoreDiff?: boolean, eol?: EOL): Promise<IEditorDocumentModelSaveResult>;
38
+ dispose(): void;
39
+ }
40
+ //# sourceMappingURL=editor-document-model-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-document-model-service.d.ts","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-model-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAoB,qBAAqB,EAAE,8BAA8B,EAAE,YAAY,EAAW,eAAe,EAA4B,OAAO,EAAE,iBAAiB,EAAuB,MAAM,4BAA4B,CAAC;AACnP,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE/E,OAAO,EAAE,oBAAoB,EAAE,mCAAmC,EAAE,2BAA2B,EAAE,6CAA6C,EAAoC,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAC1N,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,GAAG,EAAE,MAAM,mDAAmD,CAAC;AAGxE,eAAO,MAAM,6BAA6B,EAAE,GAA4D,CAAC;AAEzG,eAAO,MAAM,2BAA2B,oBAAoB,CAAC;AAE7D,qBACa,8BAA+B,SAAQ,YAAa,YAAW,2BAA2B;IAGrG,eAAe,EAAE,mCAAmC,CAAC;IAGrD,QAAQ,EAAE,QAAQ,CAAC;IAGnB,UAAU,EAAE,eAAe,CAAC;IAG5B,MAAM,EAAE,OAAO,CAAC;IAGhB,iBAAiB,EAAE,iBAAiB,CAAC;IAGrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAE7D,OAAO,CAAC,OAAO,CAAW;IAE1B,OAAO,CAAC,eAAe,CAA0C;IAEjE,OAAO,CAAC,oBAAoB,CAAmD;IAE/E,OAAO,CAAC,sBAAsB,CAAwC;IAEtE,OAAO,CAAC,gBAAgB,CAAqB;IAE7C,OAAO,CAAC,qBAAqB,CAA6C;IAE1E,OAAO,CAAC,MAAM,CAA0B;;IAmCxC,OAAO,CAAC,OAAO;IAqBf,OAAO,CAAC,SAAS;IAWX,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,sBAAsB;IA0BlE,wBAAwB;IAKlB,UAAU;IAaV,oBAAoB,CAAC,CAAC,EAAE,6CAA6C;IAwB3E,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAIhG,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAI3F,YAAY,IAAI,oBAAoB,EAAE;IAItC,WAAW,CAAC,UAAU,KAAA;IAIhB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAOpF,OAAO,KAAK,SAAS,GAGpB;IAED,OAAO,CAAC,WAAW;YAeL,aAAa;IAuDrB,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,8BAA8B,CAAC;IAc5M,OAAO;CAMR"}
@@ -0,0 +1,276 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EditorDocumentModelServiceImpl = exports.EDITOR_DOC_OPTIONS_PREF_KEY = exports.EDITOR_DOCUMENT_MODEL_STORAGE = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
6
+ const di_1 = require("@opensumi/di");
7
+ const types_1 = require("./types");
8
+ const editor_document_model_1 = require("./editor-document-model");
9
+ const map_1 = require("@opensumi/ide-core-common/lib/map");
10
+ const hash_calculate_1 = require("@opensumi/ide-core-common/lib/hash-calculate/hash-calculate");
11
+ exports.EDITOR_DOCUMENT_MODEL_STORAGE = new ide_core_browser_1.URI('editor-doc').withScheme(ide_core_browser_1.STORAGE_SCHEMA.SCOPE);
12
+ exports.EDITOR_DOC_OPTIONS_PREF_KEY = 'editor_doc_pref';
13
+ let EditorDocumentModelServiceImpl = class EditorDocumentModelServiceImpl extends ide_core_browser_1.WithEventBus {
14
+ constructor() {
15
+ super();
16
+ this.editorDocModels = new Map();
17
+ this.creatingEditorModels = new Map();
18
+ this._modelsToDispose = new Set();
19
+ this.preferredModelOptions = new Map();
20
+ this._ready = new ide_core_browser_1.ReadyEvent();
21
+ this._modelReferenceManager = new ide_core_browser_1.ReferenceManager((key) => {
22
+ if (this._modelsToDispose.has(key)) {
23
+ this._modelsToDispose.delete(key);
24
+ }
25
+ // this.getOrCreateModel 的第二个参数是 encoding, 实际上没地方能传进去
26
+ // ReferenceManager 的构造参数 factory 只有一个入参
27
+ return this.getOrCreateModel(key);
28
+ });
29
+ this._modelReferenceManager.onReferenceAllDisposed((key) => {
30
+ this._delete(key);
31
+ });
32
+ this._modelReferenceManager.onInstanceCreated((model) => {
33
+ this.eventBus.fire(new types_1.EditorDocumentModelCreationEvent({
34
+ uri: model.uri,
35
+ languageId: model.languageId,
36
+ eol: model.eol,
37
+ encoding: model.encoding,
38
+ content: model.getText(),
39
+ readonly: model.readonly,
40
+ versionId: model.getMonacoModel().getVersionId(),
41
+ }));
42
+ });
43
+ this.addDispose(this.preferenceService.onPreferenceChanged((e) => {
44
+ if (e.preferenceName === 'editor.detectIndentation') {
45
+ this.editorDocModels.forEach((m) => {
46
+ m.updateOptions({});
47
+ });
48
+ }
49
+ }));
50
+ }
51
+ _delete(uri) {
52
+ const modelDisposeDebounceTime = this.preferenceService.get('editor.modelDisposeTime', 3000);
53
+ // debounce
54
+ this._modelsToDispose.add(uri.toString());
55
+ let timer = null;
56
+ const disposer = this.addDispose({
57
+ dispose: () => {
58
+ if (timer) {
59
+ clearTimeout(timer);
60
+ }
61
+ },
62
+ });
63
+ timer = setTimeout(() => {
64
+ disposer.dispose();
65
+ timer = null;
66
+ if (this._modelsToDispose.has(uri.toString())) {
67
+ this._doDelete(uri.toString());
68
+ }
69
+ }, modelDisposeDebounceTime);
70
+ }
71
+ _doDelete(uri) {
72
+ const doc = this.editorDocModels.get(uri);
73
+ // dirty 的 document 不 dispose
74
+ if (doc && !doc.dirty) {
75
+ doc.dispose();
76
+ this.editorDocModels.delete(uri);
77
+ return doc;
78
+ }
79
+ this._modelsToDispose.delete(uri);
80
+ }
81
+ async changeModelOptions(uri, options) {
82
+ return this.onceReady(() => {
83
+ if (this.preferredModelOptions.has(uri.toString())) {
84
+ options = Object.assign(Object.assign({}, this.preferredModelOptions.get(uri.toString())), options);
85
+ }
86
+ this.preferredModelOptions.set(uri.toString(), options);
87
+ const docRef = this.getModelReference(uri);
88
+ if (docRef) {
89
+ if (options.encoding && options.encoding !== docRef.instance.encoding) {
90
+ docRef.instance.updateEncoding(options.encoding);
91
+ }
92
+ if (options.languageId && options.languageId !== docRef.instance.languageId) {
93
+ docRef.instance.languageId = options.languageId;
94
+ }
95
+ if (options.eol && options.eol !== docRef.instance.eol) {
96
+ docRef.instance.eol = options.eol;
97
+ }
98
+ docRef.dispose();
99
+ }
100
+ return this.persistOptionsPreference();
101
+ });
102
+ }
103
+ persistOptionsPreference() {
104
+ return this.storage.set(exports.EDITOR_DOC_OPTIONS_PREF_KEY, JSON.stringify((0, map_1.mapToSerializable)(this.preferredModelOptions)));
105
+ }
106
+ async initialize() {
107
+ this.storage = await this.getStorage(exports.EDITOR_DOCUMENT_MODEL_STORAGE);
108
+ if (this.storage.get(exports.EDITOR_DOC_OPTIONS_PREF_KEY)) {
109
+ try {
110
+ this.preferredModelOptions = (0, map_1.serializableToMap)(JSON.parse(this.storage.get(exports.EDITOR_DOC_OPTIONS_PREF_KEY)));
111
+ }
112
+ catch (e) {
113
+ this.logger.error(e);
114
+ }
115
+ }
116
+ this._ready.ready();
117
+ }
118
+ async acceptExternalChange(e) {
119
+ const doc = this.editorDocModels.get(e.payload.toString());
120
+ if (doc) {
121
+ if (doc.dirty) {
122
+ // do nothing
123
+ }
124
+ else {
125
+ const provider = await this.contentRegistry.getProvider(doc.uri);
126
+ if (provider) {
127
+ if (provider.provideEditorDocumentModelContentMd5) {
128
+ const nextMd5 = await provider.provideEditorDocumentModelContentMd5(doc.uri, doc.encoding);
129
+ if (nextMd5 !== doc.getBaseContentMd5()) {
130
+ doc.updateContent(await this.contentRegistry.getContentForUri(doc.uri, doc.encoding), undefined, true);
131
+ }
132
+ }
133
+ else {
134
+ const content = await this.contentRegistry.getContentForUri(doc.uri, doc.encoding);
135
+ if (this.hashCalculateService.calculate(content) !== doc.getBaseContentMd5()) {
136
+ doc.updateContent(content, undefined, true);
137
+ }
138
+ }
139
+ }
140
+ }
141
+ }
142
+ }
143
+ createModelReference(uri, reason) {
144
+ return this._modelReferenceManager.getReference(uri.toString(), reason);
145
+ }
146
+ getModelReference(uri, reason) {
147
+ return this._modelReferenceManager.getReferenceIfHasInstance(uri.toString(), reason);
148
+ }
149
+ getAllModels() {
150
+ return Array.from(this.editorDocModels.values());
151
+ }
152
+ hasLanguage(langaugeId) {
153
+ return this.getAllModels().findIndex((m) => m.languageId === langaugeId) !== -1;
154
+ }
155
+ async getOrCreateModel(uri, encoding) {
156
+ if (this.editorDocModels.has(uri)) {
157
+ return this.editorDocModels.get(uri);
158
+ }
159
+ return this.createModel(uri, encoding);
160
+ }
161
+ get onceReady() {
162
+ this.initialize();
163
+ return this._ready.onceReady.bind(this._ready);
164
+ }
165
+ createModel(uri, encoding) {
166
+ // 防止异步重复调用
167
+ if (!this.creatingEditorModels.has(uri)) {
168
+ const promise = this.onceReady(() => this.doCreateModel(uri, encoding)).then((model) => {
169
+ this.creatingEditorModels.delete(uri);
170
+ return model;
171
+ }, (e) => {
172
+ this.creatingEditorModels.delete(uri);
173
+ throw e;
174
+ });
175
+ this.creatingEditorModels.set(uri, promise);
176
+ }
177
+ return this.creatingEditorModels.get(uri);
178
+ }
179
+ async doCreateModel(uriString, encoding) {
180
+ const uri = new ide_core_browser_1.URI(uriString);
181
+ const provider = await this.contentRegistry.getProvider(uri);
182
+ if (!provider) {
183
+ throw new Error(`未找到${uri.toString()}的文档提供商`);
184
+ }
185
+ const preferedOptions = this.preferredModelOptions.get(uri.toString());
186
+ if (!encoding && provider.provideEncoding) {
187
+ if (preferedOptions && preferedOptions.encoding) {
188
+ encoding = preferedOptions.encoding;
189
+ }
190
+ }
191
+ const preferredLanguage = preferedOptions && preferedOptions.languageId;
192
+ const [content, readonly, languageId, eol, alwaysDirty, closeAutoSave,] = await Promise.all([
193
+ (async () => provider.provideEditorDocumentModelContent(uri, encoding))(),
194
+ (async () => provider.isReadonly ? provider.isReadonly(uri) : undefined)(),
195
+ (async () => preferredLanguage ? preferredLanguage : (provider.preferLanguageForUri ? provider.preferLanguageForUri(uri) : undefined))(),
196
+ (async () => (preferedOptions === null || preferedOptions === void 0 ? void 0 : preferedOptions.eol) || (provider.provideEOL ? provider.provideEOL(uri) : undefined))(),
197
+ (async () => provider.isAlwaysDirty ? provider.isAlwaysDirty(uri) : false)(),
198
+ (async () => provider.closeAutoSave ? provider.closeAutoSave(uri) : false)(),
199
+ ]);
200
+ // 优先使用 preferred encoding,然后用 detected encoding
201
+ if (!encoding && provider.provideEncoding) {
202
+ encoding = await provider.provideEncoding(uri);
203
+ }
204
+ const savable = !!provider.saveDocumentModel;
205
+ const model = this.injector.get(editor_document_model_1.EditorDocumentModel, [uri, content, {
206
+ readonly,
207
+ languageId,
208
+ savable,
209
+ eol,
210
+ encoding,
211
+ alwaysDirty,
212
+ closeAutoSave,
213
+ }]);
214
+ this.editorDocModels.set(uri.toString(), model);
215
+ return model;
216
+ }
217
+ async saveEditorDocumentModel(uri, content, baseContent, changes, encoding, ignoreDiff, eol) {
218
+ const provider = await this.contentRegistry.getProvider(uri);
219
+ if (!provider) {
220
+ throw new Error(`未找到${uri.toString()}的文档提供商`);
221
+ }
222
+ if (!provider.saveDocumentModel) {
223
+ throw new Error(`${uri.toString()}的文档提供商不存在保存方法`);
224
+ }
225
+ const result = await provider.saveDocumentModel(uri, content, baseContent, changes, encoding, ignoreDiff, eol);
226
+ return result;
227
+ }
228
+ dispose() {
229
+ super.dispose();
230
+ this.getAllModels().forEach((model) => {
231
+ model.getMonacoModel().dispose();
232
+ });
233
+ }
234
+ };
235
+ (0, tslib_1.__decorate)([
236
+ (0, di_1.Autowired)(types_1.IEditorDocumentModelContentRegistry),
237
+ (0, tslib_1.__metadata)("design:type", Object)
238
+ ], EditorDocumentModelServiceImpl.prototype, "contentRegistry", void 0);
239
+ (0, tslib_1.__decorate)([
240
+ (0, di_1.Autowired)(di_1.INJECTOR_TOKEN),
241
+ (0, tslib_1.__metadata)("design:type", di_1.Injector)
242
+ ], EditorDocumentModelServiceImpl.prototype, "injector", void 0);
243
+ (0, tslib_1.__decorate)([
244
+ (0, di_1.Autowired)(ide_core_browser_1.StorageProvider),
245
+ (0, tslib_1.__metadata)("design:type", Function)
246
+ ], EditorDocumentModelServiceImpl.prototype, "getStorage", void 0);
247
+ (0, tslib_1.__decorate)([
248
+ (0, di_1.Autowired)(ide_core_browser_1.ILogger),
249
+ (0, tslib_1.__metadata)("design:type", Object)
250
+ ], EditorDocumentModelServiceImpl.prototype, "logger", void 0);
251
+ (0, tslib_1.__decorate)([
252
+ (0, di_1.Autowired)(ide_core_browser_1.PreferenceService),
253
+ (0, tslib_1.__metadata)("design:type", Object)
254
+ ], EditorDocumentModelServiceImpl.prototype, "preferenceService", void 0);
255
+ (0, tslib_1.__decorate)([
256
+ (0, di_1.Autowired)(hash_calculate_1.IHashCalculateService),
257
+ (0, tslib_1.__metadata)("design:type", Object)
258
+ ], EditorDocumentModelServiceImpl.prototype, "hashCalculateService", void 0);
259
+ (0, tslib_1.__decorate)([
260
+ ide_core_browser_1.memoize,
261
+ (0, tslib_1.__metadata)("design:type", Function),
262
+ (0, tslib_1.__metadata)("design:paramtypes", []),
263
+ (0, tslib_1.__metadata)("design:returntype", Promise)
264
+ ], EditorDocumentModelServiceImpl.prototype, "initialize", null);
265
+ (0, tslib_1.__decorate)([
266
+ (0, ide_core_browser_1.OnEvent)(types_1.EditorDocumentModelOptionExternalUpdatedEvent),
267
+ (0, tslib_1.__metadata)("design:type", Function),
268
+ (0, tslib_1.__metadata)("design:paramtypes", [types_1.EditorDocumentModelOptionExternalUpdatedEvent]),
269
+ (0, tslib_1.__metadata)("design:returntype", Promise)
270
+ ], EditorDocumentModelServiceImpl.prototype, "acceptExternalChange", null);
271
+ EditorDocumentModelServiceImpl = (0, tslib_1.__decorate)([
272
+ (0, di_1.Injectable)(),
273
+ (0, tslib_1.__metadata)("design:paramtypes", [])
274
+ ], EditorDocumentModelServiceImpl);
275
+ exports.EditorDocumentModelServiceImpl = EditorDocumentModelServiceImpl;
276
+ //# sourceMappingURL=editor-document-model-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-document-model-service.js","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-model-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,85 @@
1
+ import { Disposable, IEventBus, ILogger, IRange, PreferenceService, URI } from '@opensumi/ide-core-browser';
2
+ import { IMessageService } from '@opensumi/ide-overlay';
3
+ import { IDocPersistentCacheProvider, SaveReason, IEditorDocumentModelContentChange } from '../../common';
4
+ import { ICompareService } from '../types';
5
+ import { IEditorDocumentModelServiceImpl } from './save-task';
6
+ import { IEditorDocumentModel, IEditorDocumentModelContentRegistry } from './types';
7
+ import { EditorPreferences } from '../preference/schema';
8
+ import { EOL, ITextModel } from '@opensumi/ide-monaco/lib/browser/monaco-api/types';
9
+ export interface EditorDocumentModelConstructionOptions {
10
+ eol?: EOL;
11
+ encoding?: string;
12
+ languageId?: string;
13
+ readonly?: boolean;
14
+ savable?: boolean;
15
+ alwaysDirty?: boolean;
16
+ closeAutoSave?: boolean;
17
+ }
18
+ export interface IDirtyChange {
19
+ fromVersionId: number;
20
+ toVersionId: number;
21
+ changes: IEditorDocumentModelContentChange[];
22
+ }
23
+ export declare class EditorDocumentModel extends Disposable implements IEditorDocumentModel {
24
+ readonly uri: URI;
25
+ contentRegistry: IEditorDocumentModelContentRegistry;
26
+ service: IEditorDocumentModelServiceImpl;
27
+ compareService: ICompareService;
28
+ cacheProvider: IDocPersistentCacheProvider;
29
+ editorPreferences: EditorPreferences;
30
+ messageService: IMessageService;
31
+ eventBus: IEventBus;
32
+ logger: ILogger;
33
+ private commandService;
34
+ private reporter;
35
+ preferences: PreferenceService;
36
+ private readonly hashCalculateService;
37
+ private monacoModel;
38
+ _encoding: string;
39
+ readonly readonly: boolean;
40
+ readonly savable: boolean;
41
+ readonly alwaysDirty: boolean;
42
+ readonly closeAutoSave: boolean;
43
+ private _originalEncoding;
44
+ private _persistVersionId;
45
+ private _baseContent;
46
+ private _baseContentMd5;
47
+ private savingTasks;
48
+ private dirtyChanges;
49
+ private _previousVersionId;
50
+ private _tryAutoSaveAfterDelay;
51
+ private _isInitOption;
52
+ private readonly _onDidChangeEncoding;
53
+ readonly onDidChangeEncoding: import("@opensumi/ide-core-browser").Event<void>;
54
+ constructor(uri: URI, content: string, options?: EditorDocumentModelConstructionOptions);
55
+ updateOptions(options: any): void;
56
+ private listenTo;
57
+ private readCacheToApply;
58
+ private applyCache;
59
+ cleanAndUpdateContent(content: any): void;
60
+ updateEncoding(encoding: string): Promise<void>;
61
+ get encoding(): string;
62
+ set eol(eol: EOL);
63
+ get eol(): EOL;
64
+ get dirty(): boolean;
65
+ set languageId(languageId: string);
66
+ get languageId(): string;
67
+ get id(): string;
68
+ getMonacoModel(): ITextModel;
69
+ save(force?: boolean, reason?: SaveReason): Promise<boolean>;
70
+ private compareAndSave;
71
+ initSave(): Promise<void>;
72
+ setPersist(versionId: number): void;
73
+ reload(): Promise<void>;
74
+ revert(notOnDisk?: boolean): Promise<void>;
75
+ getText(range?: IRange): string;
76
+ updateContent(content: string, eol?: EOL, setPersist?: boolean): void;
77
+ set baseContent(content: string);
78
+ get baseContent(): string;
79
+ get baseContentMd5(): string;
80
+ get tryAutoSaveAfterDelay(): () => any;
81
+ getBaseContentMd5(): string;
82
+ private notifyChangeEvent;
83
+ protected formatOnSave(reason: SaveReason): Promise<void>;
84
+ }
85
+ //# sourceMappingURL=editor-document-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-document-model.d.ts","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-model.ts"],"names":[],"mappings":"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"}