@opensumi/ide-terminal-next 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 (282) hide show
  1. package/README.md +89 -0
  2. package/lib/browser/component/resize.delegate.d.ts +14 -0
  3. package/lib/browser/component/resize.delegate.d.ts.map +1 -0
  4. package/lib/browser/component/resize.delegate.js +47 -0
  5. package/lib/browser/component/resize.delegate.js.map +1 -0
  6. package/lib/browser/component/resize.module.less +55 -0
  7. package/lib/browser/component/resize.view.d.ts +16 -0
  8. package/lib/browser/component/resize.view.d.ts.map +1 -0
  9. package/lib/browser/component/resize.view.js +40 -0
  10. package/lib/browser/component/resize.view.js.map +1 -0
  11. package/lib/browser/component/tab.item.d.ts +7 -0
  12. package/lib/browser/component/tab.item.d.ts.map +1 -0
  13. package/lib/browser/component/tab.item.js +61 -0
  14. package/lib/browser/component/tab.item.js.map +1 -0
  15. package/lib/browser/component/tab.module.less +112 -0
  16. package/lib/browser/component/tab.view.d.ts +4 -0
  17. package/lib/browser/component/tab.view.d.ts.map +1 -0
  18. package/lib/browser/component/tab.view.js +30 -0
  19. package/lib/browser/component/tab.view.js.map +1 -0
  20. package/lib/browser/component/terminal.module.less +69 -0
  21. package/lib/browser/component/terminal.select.d.ts +4 -0
  22. package/lib/browser/component/terminal.select.d.ts.map +1 -0
  23. package/lib/browser/component/terminal.select.js +21 -0
  24. package/lib/browser/component/terminal.select.js.map +1 -0
  25. package/lib/browser/component/terminal.variable.d.ts +8 -0
  26. package/lib/browser/component/terminal.variable.d.ts.map +1 -0
  27. package/lib/browser/component/terminal.variable.js +44 -0
  28. package/lib/browser/component/terminal.variable.js.map +1 -0
  29. package/lib/browser/component/terminal.view.d.ts +5 -0
  30. package/lib/browser/component/terminal.view.d.ts.map +1 -0
  31. package/lib/browser/component/terminal.view.js +68 -0
  32. package/lib/browser/component/terminal.view.js.map +1 -0
  33. package/lib/browser/component/terminal.widget.d.ts +10 -0
  34. package/lib/browser/component/terminal.widget.d.ts.map +1 -0
  35. package/lib/browser/component/terminal.widget.js +51 -0
  36. package/lib/browser/component/terminal.widget.js.map +1 -0
  37. package/lib/browser/component/variable.module.less +15 -0
  38. package/lib/browser/contribution/index.d.ts +7 -0
  39. package/lib/browser/contribution/index.d.ts.map +1 -0
  40. package/lib/browser/contribution/index.js +10 -0
  41. package/lib/browser/contribution/index.js.map +1 -0
  42. package/lib/browser/contribution/terminal.command.d.ts +20 -0
  43. package/lib/browser/contribution/terminal.command.d.ts.map +1 -0
  44. package/lib/browser/contribution/terminal.command.js +215 -0
  45. package/lib/browser/contribution/terminal.command.js.map +1 -0
  46. package/lib/browser/contribution/terminal.keybinding.d.ts +5 -0
  47. package/lib/browser/contribution/terminal.keybinding.d.ts.map +1 -0
  48. package/lib/browser/contribution/terminal.keybinding.js +55 -0
  49. package/lib/browser/contribution/terminal.keybinding.js.map +1 -0
  50. package/lib/browser/contribution/terminal.lifecycle.d.ts +15 -0
  51. package/lib/browser/contribution/terminal.lifecycle.d.ts.map +1 -0
  52. package/lib/browser/contribution/terminal.lifecycle.js +47 -0
  53. package/lib/browser/contribution/terminal.lifecycle.js.map +1 -0
  54. package/lib/browser/contribution/terminal.menu.d.ts +19 -0
  55. package/lib/browser/contribution/terminal.menu.d.ts.map +1 -0
  56. package/lib/browser/contribution/terminal.menu.js +144 -0
  57. package/lib/browser/contribution/terminal.menu.js.map +1 -0
  58. package/lib/browser/contribution/terminal.network.d.ts +11 -0
  59. package/lib/browser/contribution/terminal.network.d.ts.map +1 -0
  60. package/lib/browser/contribution/terminal.network.js +44 -0
  61. package/lib/browser/contribution/terminal.network.js.map +1 -0
  62. package/lib/browser/contribution/terminal.view.d.ts +7 -0
  63. package/lib/browser/contribution/terminal.view.d.ts.map +1 -0
  64. package/lib/browser/contribution/terminal.view.js +55 -0
  65. package/lib/browser/contribution/terminal.view.js.map +1 -0
  66. package/lib/browser/index.d.ts +10 -0
  67. package/lib/browser/index.d.ts.map +1 -0
  68. package/lib/browser/index.js +105 -0
  69. package/lib/browser/index.js.map +1 -0
  70. package/lib/browser/links/base.d.ts +8 -0
  71. package/lib/browser/links/base.d.ts.map +1 -0
  72. package/lib/browser/links/base.js +13 -0
  73. package/lib/browser/links/base.js.map +1 -0
  74. package/lib/browser/links/external-link-provider-adapter.d.ts +18 -0
  75. package/lib/browser/links/external-link-provider-adapter.d.ts.map +1 -0
  76. package/lib/browser/links/external-link-provider-adapter.js +56 -0
  77. package/lib/browser/links/external-link-provider-adapter.js.map +1 -0
  78. package/lib/browser/links/helpers.d.ts +7 -0
  79. package/lib/browser/links/helpers.d.ts.map +1 -0
  80. package/lib/browser/links/helpers.js +129 -0
  81. package/lib/browser/links/helpers.js.map +1 -0
  82. package/lib/browser/links/link-manager.d.ts +61 -0
  83. package/lib/browser/links/link-manager.d.ts.map +1 -0
  84. package/lib/browser/links/link-manager.js +252 -0
  85. package/lib/browser/links/link-manager.js.map +1 -0
  86. package/lib/browser/links/link.d.ts +24 -0
  87. package/lib/browser/links/link.d.ts.map +1 -0
  88. package/lib/browser/links/link.js +92 -0
  89. package/lib/browser/links/link.js.map +1 -0
  90. package/lib/browser/links/protocol-link-provider.d.ts +11 -0
  91. package/lib/browser/links/protocol-link-provider.d.ts.map +1 -0
  92. package/lib/browser/links/protocol-link-provider.js +53 -0
  93. package/lib/browser/links/protocol-link-provider.js.map +1 -0
  94. package/lib/browser/links/validated-local-link-provider.d.ts +31 -0
  95. package/lib/browser/links/validated-local-link-provider.d.ts.map +1 -0
  96. package/lib/browser/links/validated-local-link-provider.js +137 -0
  97. package/lib/browser/links/validated-local-link-provider.js.map +1 -0
  98. package/lib/browser/terminal.addon.d.ts +42 -0
  99. package/lib/browser/terminal.addon.d.ts.map +1 -0
  100. package/lib/browser/terminal.addon.js +169 -0
  101. package/lib/browser/terminal.addon.js.map +1 -0
  102. package/lib/browser/terminal.api.d.ts +34 -0
  103. package/lib/browser/terminal.api.d.ts.map +1 -0
  104. package/lib/browser/terminal.api.js +132 -0
  105. package/lib/browser/terminal.api.js.map +1 -0
  106. package/lib/browser/terminal.client.d.ts +114 -0
  107. package/lib/browser/terminal.client.d.ts.map +1 -0
  108. package/lib/browser/terminal.client.js +518 -0
  109. package/lib/browser/terminal.client.js.map +1 -0
  110. package/lib/browser/terminal.color.d.ts +20 -0
  111. package/lib/browser/terminal.color.d.ts.map +1 -0
  112. package/lib/browser/terminal.color.js +172 -0
  113. package/lib/browser/terminal.color.js.map +1 -0
  114. package/lib/browser/terminal.context-key.d.ts +10 -0
  115. package/lib/browser/terminal.context-key.d.ts.map +1 -0
  116. package/lib/browser/terminal.context-key.js +28 -0
  117. package/lib/browser/terminal.context-key.js.map +1 -0
  118. package/lib/browser/terminal.context-menu.d.ts +15 -0
  119. package/lib/browser/terminal.context-menu.d.ts.map +1 -0
  120. package/lib/browser/terminal.context-menu.js +75 -0
  121. package/lib/browser/terminal.context-menu.js.map +1 -0
  122. package/lib/browser/terminal.controller.d.ts +68 -0
  123. package/lib/browser/terminal.controller.d.ts.map +1 -0
  124. package/lib/browser/terminal.controller.js +367 -0
  125. package/lib/browser/terminal.controller.js.map +1 -0
  126. package/lib/browser/terminal.environment.service.d.ts +27 -0
  127. package/lib/browser/terminal.environment.service.d.ts.map +1 -0
  128. package/lib/browser/terminal.environment.service.js +144 -0
  129. package/lib/browser/terminal.environment.service.js.map +1 -0
  130. package/lib/browser/terminal.error.d.ts +10 -0
  131. package/lib/browser/terminal.error.d.ts.map +1 -0
  132. package/lib/browser/terminal.error.js +58 -0
  133. package/lib/browser/terminal.error.js.map +1 -0
  134. package/lib/browser/terminal.ext.host.proxy.d.ts +58 -0
  135. package/lib/browser/terminal.ext.host.proxy.d.ts.map +1 -0
  136. package/lib/browser/terminal.ext.host.proxy.js +104 -0
  137. package/lib/browser/terminal.ext.host.proxy.js.map +1 -0
  138. package/lib/browser/terminal.input.d.ts +6 -0
  139. package/lib/browser/terminal.input.d.ts.map +1 -0
  140. package/lib/browser/terminal.input.js +32 -0
  141. package/lib/browser/terminal.input.js.map +1 -0
  142. package/lib/browser/terminal.network.d.ts +32 -0
  143. package/lib/browser/terminal.network.d.ts.map +1 -0
  144. package/lib/browser/terminal.network.js +150 -0
  145. package/lib/browser/terminal.network.js.map +1 -0
  146. package/lib/browser/terminal.preference.d.ts +26 -0
  147. package/lib/browser/terminal.preference.d.ts.map +1 -0
  148. package/lib/browser/terminal.preference.js +80 -0
  149. package/lib/browser/terminal.preference.js.map +1 -0
  150. package/lib/browser/terminal.render.d.ts +13 -0
  151. package/lib/browser/terminal.render.d.ts.map +1 -0
  152. package/lib/browser/terminal.render.js +25 -0
  153. package/lib/browser/terminal.render.js.map +1 -0
  154. package/lib/browser/terminal.restore.d.ts +10 -0
  155. package/lib/browser/terminal.restore.d.ts.map +1 -0
  156. package/lib/browser/terminal.restore.js +41 -0
  157. package/lib/browser/terminal.restore.js.map +1 -0
  158. package/lib/browser/terminal.search.d.ts +15 -0
  159. package/lib/browser/terminal.search.d.ts.map +1 -0
  160. package/lib/browser/terminal.search.js +53 -0
  161. package/lib/browser/terminal.search.js.map +1 -0
  162. package/lib/browser/terminal.service.d.ts +60 -0
  163. package/lib/browser/terminal.service.d.ts.map +1 -0
  164. package/lib/browser/terminal.service.js +212 -0
  165. package/lib/browser/terminal.service.js.map +1 -0
  166. package/lib/browser/terminal.theme.d.ts +7 -0
  167. package/lib/browser/terminal.theme.d.ts.map +1 -0
  168. package/lib/browser/terminal.theme.js +50 -0
  169. package/lib/browser/terminal.theme.js.map +1 -0
  170. package/lib/browser/terminal.view.d.ts +99 -0
  171. package/lib/browser/terminal.view.d.ts.map +1 -0
  172. package/lib/browser/terminal.view.js +358 -0
  173. package/lib/browser/terminal.view.js.map +1 -0
  174. package/lib/common/api.d.ts +20 -0
  175. package/lib/common/api.d.ts.map +1 -0
  176. package/lib/common/api.js +5 -0
  177. package/lib/common/api.js.map +1 -0
  178. package/lib/common/client.d.ts +163 -0
  179. package/lib/common/client.d.ts.map +1 -0
  180. package/lib/common/client.js +5 -0
  181. package/lib/common/client.js.map +1 -0
  182. package/lib/common/commands.d.ts +92 -0
  183. package/lib/common/commands.d.ts.map +1 -0
  184. package/lib/common/commands.js +97 -0
  185. package/lib/common/commands.js.map +1 -0
  186. package/lib/common/controller.d.ts +86 -0
  187. package/lib/common/controller.d.ts.map +1 -0
  188. package/lib/common/controller.js +7 -0
  189. package/lib/common/controller.js.map +1 -0
  190. package/lib/common/environmentVariable.d.ts +118 -0
  191. package/lib/common/environmentVariable.d.ts.map +1 -0
  192. package/lib/common/environmentVariable.js +27 -0
  193. package/lib/common/environmentVariable.js.map +1 -0
  194. package/lib/common/environmentVariableCollection.d.ts +10 -0
  195. package/lib/common/environmentVariableCollection.d.ts.map +1 -0
  196. package/lib/common/environmentVariableCollection.js +136 -0
  197. package/lib/common/environmentVariableCollection.js.map +1 -0
  198. package/lib/common/error.d.ts +30 -0
  199. package/lib/common/error.d.ts.map +1 -0
  200. package/lib/common/error.js +5 -0
  201. package/lib/common/error.js.map +1 -0
  202. package/lib/common/extension.d.ts +108 -0
  203. package/lib/common/extension.d.ts.map +1 -0
  204. package/lib/common/extension.js +52 -0
  205. package/lib/common/extension.js.map +1 -0
  206. package/lib/common/index.d.ts +17 -0
  207. package/lib/common/index.d.ts.map +1 -0
  208. package/lib/common/index.js +21 -0
  209. package/lib/common/index.js.map +1 -0
  210. package/lib/common/link-computer.d.ts +56 -0
  211. package/lib/common/link-computer.d.ts.map +1 -0
  212. package/lib/common/link-computer.js +273 -0
  213. package/lib/common/link-computer.js.map +1 -0
  214. package/lib/common/menu.d.ts +5 -0
  215. package/lib/common/menu.d.ts.map +1 -0
  216. package/lib/common/menu.js +9 -0
  217. package/lib/common/menu.js.map +1 -0
  218. package/lib/common/network.d.ts +48 -0
  219. package/lib/common/network.d.ts.map +1 -0
  220. package/lib/common/network.js +10 -0
  221. package/lib/common/network.js.map +1 -0
  222. package/lib/common/preference.d.ts +33 -0
  223. package/lib/common/preference.d.ts.map +1 -0
  224. package/lib/common/preference.js +18 -0
  225. package/lib/common/preference.js.map +1 -0
  226. package/lib/common/pty.d.ts +205 -0
  227. package/lib/common/pty.d.ts.map +1 -0
  228. package/lib/common/pty.js +8 -0
  229. package/lib/common/pty.js.map +1 -0
  230. package/lib/common/render.d.ts +24 -0
  231. package/lib/common/render.d.ts.map +1 -0
  232. package/lib/common/render.js +10 -0
  233. package/lib/common/render.js.map +1 -0
  234. package/lib/common/resize.d.ts +39 -0
  235. package/lib/common/resize.d.ts.map +1 -0
  236. package/lib/common/resize.js +3 -0
  237. package/lib/common/resize.js.map +1 -0
  238. package/lib/common/restore.d.ts +6 -0
  239. package/lib/common/restore.d.ts.map +1 -0
  240. package/lib/common/restore.js +5 -0
  241. package/lib/common/restore.js.map +1 -0
  242. package/lib/common/service.d.ts +88 -0
  243. package/lib/common/service.d.ts.map +1 -0
  244. package/lib/common/service.js +6 -0
  245. package/lib/common/service.js.map +1 -0
  246. package/lib/common/shell.d.ts +10 -0
  247. package/lib/common/shell.d.ts.map +1 -0
  248. package/lib/common/shell.js +14 -0
  249. package/lib/common/shell.js.map +1 -0
  250. package/lib/common/theme.d.ts +6 -0
  251. package/lib/common/theme.d.ts.map +1 -0
  252. package/lib/common/theme.js +5 -0
  253. package/lib/common/theme.js.map +1 -0
  254. package/lib/common/utils.d.ts +4 -0
  255. package/lib/common/utils.d.ts.map +1 -0
  256. package/lib/common/utils.js +21 -0
  257. package/lib/common/utils.js.map +1 -0
  258. package/lib/index.d.ts +2 -0
  259. package/lib/index.d.ts.map +1 -0
  260. package/lib/index.js +5 -0
  261. package/lib/index.js.map +1 -0
  262. package/lib/node/index.d.ts +10 -0
  263. package/lib/node/index.d.ts.map +1 -0
  264. package/lib/node/index.js +35 -0
  265. package/lib/node/index.js.map +1 -0
  266. package/lib/node/pty.d.ts +11 -0
  267. package/lib/node/pty.d.ts.map +1 -0
  268. package/lib/node/pty.js +54 -0
  269. package/lib/node/pty.js.map +1 -0
  270. package/lib/node/shell.d.ts +3 -0
  271. package/lib/node/shell.d.ts.map +1 -0
  272. package/lib/node/shell.js +28 -0
  273. package/lib/node/shell.js.map +1 -0
  274. package/lib/node/terminal.service.client.d.ts +34 -0
  275. package/lib/node/terminal.service.client.d.ts.map +1 -0
  276. package/lib/node/terminal.service.client.js +111 -0
  277. package/lib/node/terminal.service.client.js.map +1 -0
  278. package/lib/node/terminal.service.d.ts +28 -0
  279. package/lib/node/terminal.service.d.ts.map +1 -0
  280. package/lib/node/terminal.service.js +136 -0
  281. package/lib/node/terminal.service.js.map +1 -0
  282. package/package.json +58 -0
@@ -0,0 +1,108 @@
1
+ import { Event, IDisposable } from '@opensumi/ide-core-common';
2
+ import type vscode from 'vscode';
3
+ export interface IProcessDataEvent {
4
+ data: string;
5
+ sync: boolean;
6
+ }
7
+ export declare class TerminalDataBufferer implements IDisposable {
8
+ private readonly _callback;
9
+ private readonly _terminalBufferMap;
10
+ constructor(_callback: (id: string, data: string) => void);
11
+ dispose(): void;
12
+ startBuffering(id: string, event: Event<string | IProcessDataEvent>, throttleBy?: number): IDisposable;
13
+ stopBuffering(id: string): void;
14
+ private _flushBuffer;
15
+ }
16
+ export interface ITerminalDimensions {
17
+ /**
18
+ * The columns of the terminal.
19
+ */
20
+ readonly cols: number;
21
+ /**
22
+ * The rows of the terminal.
23
+ */
24
+ readonly rows: number;
25
+ }
26
+ export interface ITerminalDimensionsOverride extends ITerminalDimensions {
27
+ /**
28
+ * indicate that xterm must receive these exact dimensions, even if they overflow the ui!
29
+ */
30
+ forceExactSize?: boolean;
31
+ }
32
+ export interface ITerminalDimensionsDto {
33
+ columns: number;
34
+ rows: number;
35
+ }
36
+ export interface ITerminalLinkDto {
37
+ /** The ID of the link to enable activation and disposal. */
38
+ id: number;
39
+ /** The startIndex of the link in the line. */
40
+ startIndex: number;
41
+ /** The length of the link in the line. */
42
+ length: number;
43
+ }
44
+ export interface ITerminalLaunchError {
45
+ message: string;
46
+ code?: number;
47
+ }
48
+ /**
49
+ * An interface representing a raw terminal child process, this contains a subset of the
50
+ * child_process.ChildProcess node.js interface.
51
+ */
52
+ export interface ITerminalChildProcess {
53
+ onProcessData: Event<IProcessDataEvent | string>;
54
+ onProcessExit: Event<number | undefined>;
55
+ onProcessReady: Event<{
56
+ pid: number;
57
+ cwd: string;
58
+ }>;
59
+ onProcessTitleChanged: Event<string>;
60
+ onProcessOverrideDimensions?: Event<ITerminalDimensionsOverride | undefined>;
61
+ onProcessResolvedShellLaunchConfig?: Event<vscode.TerminalOptions>;
62
+ /**
63
+ * Starts the process.
64
+ *
65
+ * @returns undefined when the process was successfully started, otherwise an object containing
66
+ * information on what went wrong.
67
+ */
68
+ start(): Promise<ITerminalLaunchError | undefined>;
69
+ /**
70
+ * Shutdown the terminal process.
71
+ *
72
+ * @param immediate When true the process will be killed immediately, otherwise the process will
73
+ * be given some time to make sure no additional data comes through.
74
+ */
75
+ shutdown(immediate: boolean): void;
76
+ input(data: string): void;
77
+ resize(cols: number, rows: number): void;
78
+ getInitialCwd(): Promise<string>;
79
+ getCwd(): Promise<string>;
80
+ getLatency(): Promise<number>;
81
+ }
82
+ export interface ITerminalProcessExtHostProxy extends IDisposable {
83
+ readonly terminalId: string;
84
+ emitData(data: string): void;
85
+ emitTitle(title: string): void;
86
+ emitReady(pid: number, cwd: string): void;
87
+ emitExit(exitCode: number | undefined): void;
88
+ emitOverrideDimensions(dimensions: ITerminalDimensions | undefined): void;
89
+ emitInitialCwd(initialCwd: string): void;
90
+ emitCwd(cwd: string): void;
91
+ emitLatency(latency: number): void;
92
+ onInput: Event<string>;
93
+ onResize: Event<{
94
+ cols: number;
95
+ rows: number;
96
+ }>;
97
+ onShutdown: Event<boolean>;
98
+ onRequestInitialCwd: Event<void>;
99
+ onRequestCwd: Event<void>;
100
+ onRequestLatency: Event<void>;
101
+ }
102
+ export interface IStartExtensionTerminalRequest {
103
+ proxy: ITerminalProcessExtHostProxy;
104
+ cols: number;
105
+ rows: number;
106
+ callback: (error: ITerminalLaunchError | undefined) => void;
107
+ }
108
+ //# sourceMappingURL=extension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension.d.ts","sourceRoot":"","sources":["../../src/common/extension.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TerminalDataBufferer = void 0;
4
+ class TerminalDataBufferer {
5
+ constructor(_callback) {
6
+ this._callback = _callback;
7
+ this._terminalBufferMap = new Map();
8
+ }
9
+ dispose() {
10
+ for (const buffer of this._terminalBufferMap.values()) {
11
+ buffer.dispose();
12
+ }
13
+ }
14
+ startBuffering(id, event, throttleBy = 5) {
15
+ let disposable;
16
+ disposable = event((e) => {
17
+ const data = (typeof e === 'string' ? e : e.data);
18
+ let buffer = this._terminalBufferMap.get(id);
19
+ if (buffer) {
20
+ buffer.data.push(data);
21
+ return;
22
+ }
23
+ const timeoutId = setTimeout(() => this._flushBuffer(id), throttleBy);
24
+ buffer = {
25
+ data: [data],
26
+ timeoutId,
27
+ dispose: () => {
28
+ clearTimeout(timeoutId);
29
+ this._flushBuffer(id);
30
+ disposable.dispose();
31
+ },
32
+ };
33
+ this._terminalBufferMap.set(id, buffer);
34
+ });
35
+ return disposable;
36
+ }
37
+ stopBuffering(id) {
38
+ const buffer = this._terminalBufferMap.get(id);
39
+ if (buffer) {
40
+ buffer.dispose();
41
+ }
42
+ }
43
+ _flushBuffer(id) {
44
+ const buffer = this._terminalBufferMap.get(id);
45
+ if (buffer) {
46
+ this._terminalBufferMap.delete(id);
47
+ this._callback(id, buffer.data.join(''));
48
+ }
49
+ }
50
+ }
51
+ exports.TerminalDataBufferer = TerminalDataBufferer;
52
+ //# sourceMappingURL=extension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extension.js","sourceRoot":"","sources":["../../src/common/extension.ts"],"names":[],"mappings":";;;AAaA,MAAa,oBAAoB;IAG/B,YAA6B,SAA6C;QAA7C,cAAS,GAAT,SAAS,CAAoC;QAFzD,uBAAkB,GAAG,IAAI,GAAG,EAA8B,CAAC;IAG5E,CAAC;IAED,OAAO;QACL,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE;YACrD,MAAM,CAAC,OAAO,EAAE,CAAC;SAClB;IACH,CAAC;IAED,cAAc,CAAC,EAAU,EAAE,KAAwC,EAAE,aAAqB,CAAC;QACzF,IAAI,UAAuB,CAAC;QAC5B,UAAU,GAAG,KAAK,CAAC,CAAC,CAA6B,EAAE,EAAE;YACnD,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7C,IAAI,MAAM,EAAE;gBACV,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEvB,OAAO;aACR;YAED,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;YACtE,MAAM,GAAG;gBACP,IAAI,EAAE,CAAC,IAAI,CAAC;gBACZ,SAAS;gBACT,OAAO,EAAE,GAAG,EAAE;oBACZ,YAAY,CAAC,SAAS,CAAC,CAAC;oBACxB,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;oBACtB,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,CAAC;aACF,CAAC;YACF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,aAAa,CAAC,EAAU;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,OAAO,EAAE,CAAC;SAClB;IACH,CAAC;IAEO,YAAY,CAAC,EAAU;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,MAAM,EAAE;YACV,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;SAC1C;IACH,CAAC;CACF;AApDD,oDAoDC"}
@@ -0,0 +1,17 @@
1
+ export * from './controller';
2
+ export * from './resize';
3
+ export * from './restore';
4
+ export * from './error';
5
+ export * from './pty';
6
+ export * from './service';
7
+ export * from './client';
8
+ export * from './api';
9
+ export * from './theme';
10
+ export * from './commands';
11
+ export * from './utils';
12
+ export * from './render';
13
+ export * from './extension';
14
+ export * from './network';
15
+ export * from './link-computer';
16
+ export declare const TerminalContainerId = "terminal";
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAEhC,eAAO,MAAM,mBAAmB,aAAa,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TerminalContainerId = void 0;
4
+ const tslib_1 = require("tslib");
5
+ (0, tslib_1.__exportStar)(require("./controller"), exports);
6
+ (0, tslib_1.__exportStar)(require("./resize"), exports);
7
+ (0, tslib_1.__exportStar)(require("./restore"), exports);
8
+ (0, tslib_1.__exportStar)(require("./error"), exports);
9
+ (0, tslib_1.__exportStar)(require("./pty"), exports);
10
+ (0, tslib_1.__exportStar)(require("./service"), exports);
11
+ (0, tslib_1.__exportStar)(require("./client"), exports);
12
+ (0, tslib_1.__exportStar)(require("./api"), exports);
13
+ (0, tslib_1.__exportStar)(require("./theme"), exports);
14
+ (0, tslib_1.__exportStar)(require("./commands"), exports);
15
+ (0, tslib_1.__exportStar)(require("./utils"), exports);
16
+ (0, tslib_1.__exportStar)(require("./render"), exports);
17
+ (0, tslib_1.__exportStar)(require("./extension"), exports);
18
+ (0, tslib_1.__exportStar)(require("./network"), exports);
19
+ (0, tslib_1.__exportStar)(require("./link-computer"), exports);
20
+ exports.TerminalContainerId = 'terminal';
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;;AAAA,4DAA6B;AAC7B,wDAAyB;AACzB,yDAA0B;AAC1B,uDAAwB;AACxB,qDAAsB;AACtB,yDAA0B;AAC1B,wDAAyB;AACzB,qDAAsB;AACtB,uDAAwB;AACxB,0DAA2B;AAC3B,uDAAwB;AACxB,wDAAyB;AACzB,2DAA4B;AAC5B,yDAA0B;AAC1B,+DAAgC;AAEnB,QAAA,mBAAmB,GAAG,UAAU,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { IRange, URI } from '@opensumi/ide-core-common';
2
+ /**
3
+ * A link inside the editor.
4
+ */
5
+ export interface ILink {
6
+ range: IRange;
7
+ url?: URI | string;
8
+ tooltip?: string;
9
+ }
10
+ export interface ILinkComputerTarget {
11
+ getLineCount(): number;
12
+ getLineContent(lineNumber: number): string;
13
+ }
14
+ export declare const enum State {
15
+ Invalid = 0,
16
+ Start = 1,
17
+ H = 2,
18
+ HT = 3,
19
+ HTT = 4,
20
+ HTTP = 5,
21
+ F = 6,
22
+ FI = 7,
23
+ FIL = 8,
24
+ BeforeColon = 9,
25
+ AfterColon = 10,
26
+ AlmostThere = 11,
27
+ End = 12,
28
+ Accept = 13,
29
+ LastKnownState = 14
30
+ }
31
+ export declare type Edge = [State, number, State];
32
+ export declare class Uint8Matrix {
33
+ private readonly _data;
34
+ readonly rows: number;
35
+ readonly cols: number;
36
+ constructor(rows: number, cols: number, defaultValue: number);
37
+ get(row: number, col: number): number;
38
+ set(row: number, col: number, value: number): void;
39
+ }
40
+ export declare class StateMachine {
41
+ private readonly _states;
42
+ private readonly _maxCharCode;
43
+ constructor(edges: Edge[]);
44
+ nextState(currentState: State, chCode: number): State;
45
+ }
46
+ export declare class LinkComputer {
47
+ private static _createLink;
48
+ static computeLinks(model: ILinkComputerTarget, stateMachine?: StateMachine): ILink[];
49
+ }
50
+ /**
51
+ * Returns an array of all links contains in the provided
52
+ * document. *Note* that this operation is computational
53
+ * expensive and should not run in the UI thread.
54
+ */
55
+ export declare function computeLinks(model: ILinkComputerTarget | null): ILink[];
56
+ //# sourceMappingURL=link-computer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-computer.d.ts","sourceRoot":"","sources":["../../src/common/link-computer.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAE,GAAG,EAAiC,MAAM,2BAA2B,CAAC;AAEvF;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,GAAG,GAAG,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,IAAI,MAAM,CAAC;IACvB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5C;AAED,0BAAkB,KAAK;IACrB,OAAO,IAAI;IACX,KAAK,IAAI;IACT,CAAC,IAAI;IACL,EAAE,IAAI;IACN,GAAG,IAAI;IACP,IAAI,IAAI;IACR,CAAC,IAAI;IACL,EAAE,IAAI;IACN,GAAG,IAAI;IACP,WAAW,IAAI;IACf,UAAU,KAAK;IACf,WAAW,KAAK;IAChB,GAAG,KAAK;IACR,MAAM,KAAK;IACX,cAAc,KAAK;CACpB;AAED,oBAAY,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAE1C,qBAAa,WAAW;IAEtB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAa;IACnC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,IAAI,EAAE,MAAM,CAAC;gBAEjB,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM;IAWrD,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAIrC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAG1D;AAED,qBAAa,YAAY;IAEvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,KAAK,EAAE,IAAI,EAAE;IA6BlB,SAAS,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK;CAM7D;AAoED,qBAAa,YAAY;IAEvB,OAAO,CAAC,MAAM,CAAC,WAAW;WAwCZ,YAAY,CAAC,KAAK,EAAE,mBAAmB,EAAE,YAAY,GAAE,YAAgC,GAAG,KAAK,EAAE;CA6HhH;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI,GAAG,KAAK,EAAE,CAMvE"}
@@ -0,0 +1,273 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Microsoft Corporation. All rights reserved.
4
+ * Licensed under the MIT License. See License.txt in the project root for license information.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ // Some code copued and modified from https://github.com/microsoft/vscode/blob/1.44.0/src/vs/editor/common/modes/linkComputer.ts
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.computeLinks = exports.LinkComputer = exports.StateMachine = exports.Uint8Matrix = void 0;
9
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
10
+ class Uint8Matrix {
11
+ constructor(rows, cols, defaultValue) {
12
+ const data = new Uint8Array(rows * cols);
13
+ for (let i = 0, len = rows * cols; i < len; i++) {
14
+ data[i] = defaultValue;
15
+ }
16
+ this._data = data;
17
+ this.rows = rows;
18
+ this.cols = cols;
19
+ }
20
+ get(row, col) {
21
+ return this._data[row * this.cols + col];
22
+ }
23
+ set(row, col, value) {
24
+ this._data[row * this.cols + col] = value;
25
+ }
26
+ }
27
+ exports.Uint8Matrix = Uint8Matrix;
28
+ class StateMachine {
29
+ constructor(edges) {
30
+ let maxCharCode = 0;
31
+ let maxState = 0 /* Invalid */;
32
+ for (let i = 0, len = edges.length; i < len; i++) {
33
+ const [from, chCode, to] = edges[i];
34
+ if (chCode > maxCharCode) {
35
+ maxCharCode = chCode;
36
+ }
37
+ if (from > maxState) {
38
+ maxState = from;
39
+ }
40
+ if (to > maxState) {
41
+ maxState = to;
42
+ }
43
+ }
44
+ maxCharCode++;
45
+ maxState++;
46
+ const states = new Uint8Matrix(maxState, maxCharCode, 0 /* Invalid */);
47
+ for (let i = 0, len = edges.length; i < len; i++) {
48
+ const [from, chCode, to] = edges[i];
49
+ states.set(from, chCode, to);
50
+ }
51
+ this._states = states;
52
+ this._maxCharCode = maxCharCode;
53
+ }
54
+ nextState(currentState, chCode) {
55
+ if (chCode < 0 || chCode >= this._maxCharCode) {
56
+ return 0 /* Invalid */;
57
+ }
58
+ return this._states.get(currentState, chCode);
59
+ }
60
+ }
61
+ exports.StateMachine = StateMachine;
62
+ // State machine for http:// or https:// or file://
63
+ let _stateMachine = null;
64
+ function getStateMachine() {
65
+ if (_stateMachine === null) {
66
+ _stateMachine = new StateMachine([
67
+ [1 /* Start */, 104 /* h */, 2 /* H */],
68
+ [1 /* Start */, 72 /* H */, 2 /* H */],
69
+ [1 /* Start */, 102 /* f */, 6 /* F */],
70
+ [1 /* Start */, 70 /* F */, 6 /* F */],
71
+ [2 /* H */, 116 /* t */, 3 /* HT */],
72
+ [2 /* H */, 84 /* T */, 3 /* HT */],
73
+ [3 /* HT */, 116 /* t */, 4 /* HTT */],
74
+ [3 /* HT */, 84 /* T */, 4 /* HTT */],
75
+ [4 /* HTT */, 112 /* p */, 5 /* HTTP */],
76
+ [4 /* HTT */, 80 /* P */, 5 /* HTTP */],
77
+ [5 /* HTTP */, 115 /* s */, 9 /* BeforeColon */],
78
+ [5 /* HTTP */, 83 /* S */, 9 /* BeforeColon */],
79
+ [5 /* HTTP */, 58 /* Colon */, 10 /* AfterColon */],
80
+ [6 /* F */, 105 /* i */, 7 /* FI */],
81
+ [6 /* F */, 73 /* I */, 7 /* FI */],
82
+ [7 /* FI */, 108 /* l */, 8 /* FIL */],
83
+ [7 /* FI */, 76 /* L */, 8 /* FIL */],
84
+ [8 /* FIL */, 101 /* e */, 9 /* BeforeColon */],
85
+ [8 /* FIL */, 69 /* E */, 9 /* BeforeColon */],
86
+ [9 /* BeforeColon */, 58 /* Colon */, 10 /* AfterColon */],
87
+ [10 /* AfterColon */, 47 /* Slash */, 11 /* AlmostThere */],
88
+ [11 /* AlmostThere */, 47 /* Slash */, 12 /* End */],
89
+ ]);
90
+ }
91
+ return _stateMachine;
92
+ }
93
+ let _classifier = null;
94
+ function getClassifier() {
95
+ if (_classifier === null) {
96
+ _classifier = new ide_core_common_1.CharacterClassifier(0 /* None */);
97
+ const FORCE_TERMINATION_CHARACTERS = ' \t<>\'\"、。。、,.:;‘“〈《「『【〔([{「」}])〕】』」》〉”’`~…';
98
+ for (let i = 0; i < FORCE_TERMINATION_CHARACTERS.length; i++) {
99
+ _classifier.set(FORCE_TERMINATION_CHARACTERS.charCodeAt(i), 1 /* ForceTermination */);
100
+ }
101
+ const CANNOT_END_WITH_CHARACTERS = '.,;';
102
+ for (let i = 0; i < CANNOT_END_WITH_CHARACTERS.length; i++) {
103
+ _classifier.set(CANNOT_END_WITH_CHARACTERS.charCodeAt(i), 2 /* CannotEndIn */);
104
+ }
105
+ }
106
+ return _classifier;
107
+ }
108
+ class LinkComputer {
109
+ static _createLink(classifier, line, lineNumber, linkBeginIndex, linkEndIndex) {
110
+ // Do not allow to end link in certain characters...
111
+ let lastIncludedCharIndex = linkEndIndex - 1;
112
+ do {
113
+ const chCode = line.charCodeAt(lastIncludedCharIndex);
114
+ const chClass = classifier.get(chCode);
115
+ if (chClass !== 2 /* CannotEndIn */) {
116
+ break;
117
+ }
118
+ lastIncludedCharIndex--;
119
+ } while (lastIncludedCharIndex > linkBeginIndex);
120
+ // Handle links enclosed in parens, square brackets and curlys.
121
+ if (linkBeginIndex > 0) {
122
+ const charCodeBeforeLink = line.charCodeAt(linkBeginIndex - 1);
123
+ const lastCharCodeInLink = line.charCodeAt(lastIncludedCharIndex);
124
+ if ((charCodeBeforeLink === 40 /* OpenParen */ && lastCharCodeInLink === 41 /* CloseParen */)
125
+ || (charCodeBeforeLink === 91 /* OpenSquareBracket */ && lastCharCodeInLink === 93 /* CloseSquareBracket */)
126
+ || (charCodeBeforeLink === 123 /* OpenCurlyBrace */ && lastCharCodeInLink === 125 /* CloseCurlyBrace */)) {
127
+ // Do not end in ) if ( is before the link start
128
+ // Do not end in ] if [ is before the link start
129
+ // Do not end in } if { is before the link start
130
+ lastIncludedCharIndex--;
131
+ }
132
+ }
133
+ return {
134
+ range: {
135
+ startLineNumber: lineNumber,
136
+ startColumn: linkBeginIndex + 1,
137
+ endLineNumber: lineNumber,
138
+ endColumn: lastIncludedCharIndex + 2,
139
+ },
140
+ url: line.substring(linkBeginIndex, lastIncludedCharIndex + 1),
141
+ };
142
+ }
143
+ static computeLinks(model, stateMachine = getStateMachine()) {
144
+ const classifier = getClassifier();
145
+ const result = [];
146
+ for (let i = 1, lineCount = model.getLineCount(); i <= lineCount; i++) {
147
+ const line = model.getLineContent(i);
148
+ const len = line.length;
149
+ let j = 0;
150
+ let linkBeginIndex = 0;
151
+ let linkBeginChCode = 0;
152
+ let state = 1 /* Start */;
153
+ let hasOpenParens = false;
154
+ let hasOpenSquareBracket = false;
155
+ let inSquareBrackets = false;
156
+ let hasOpenCurlyBracket = false;
157
+ while (j < len) {
158
+ let resetStateMachine = false;
159
+ const chCode = line.charCodeAt(j);
160
+ if (state === 13 /* Accept */) {
161
+ let chClass;
162
+ switch (chCode) {
163
+ case 40 /* OpenParen */:
164
+ hasOpenParens = true;
165
+ chClass = 0 /* None */;
166
+ break;
167
+ case 41 /* CloseParen */:
168
+ chClass = (hasOpenParens ? 0 /* None */ : 1 /* ForceTermination */);
169
+ break;
170
+ case 91 /* OpenSquareBracket */:
171
+ inSquareBrackets = true;
172
+ hasOpenSquareBracket = true;
173
+ chClass = 0 /* None */;
174
+ break;
175
+ case 93 /* CloseSquareBracket */:
176
+ inSquareBrackets = false;
177
+ chClass = (hasOpenSquareBracket ? 0 /* None */ : 1 /* ForceTermination */);
178
+ break;
179
+ case 123 /* OpenCurlyBrace */:
180
+ hasOpenCurlyBracket = true;
181
+ chClass = 0 /* None */;
182
+ break;
183
+ case 125 /* CloseCurlyBrace */:
184
+ chClass = (hasOpenCurlyBracket ? 0 /* None */ : 1 /* ForceTermination */);
185
+ break;
186
+ /* The following three rules make it that ' or " or ` are allowed inside links if the link began with a different one */
187
+ case 39 /* SingleQuote */:
188
+ chClass = (linkBeginChCode === 34 /* DoubleQuote */ || linkBeginChCode === 96 /* BackTick */) ? 0 /* None */ : 1 /* ForceTermination */;
189
+ break;
190
+ case 34 /* DoubleQuote */:
191
+ chClass = (linkBeginChCode === 39 /* SingleQuote */ || linkBeginChCode === 96 /* BackTick */) ? 0 /* None */ : 1 /* ForceTermination */;
192
+ break;
193
+ case 96 /* BackTick */:
194
+ chClass = (linkBeginChCode === 39 /* SingleQuote */ || linkBeginChCode === 34 /* DoubleQuote */) ? 0 /* None */ : 1 /* ForceTermination */;
195
+ break;
196
+ case 42 /* Asterisk */:
197
+ // `*` terminates a link if the link began with `*`
198
+ chClass = (linkBeginChCode === 42 /* Asterisk */) ? 1 /* ForceTermination */ : 0 /* None */;
199
+ break;
200
+ case 124 /* Pipe */:
201
+ // `|` terminates a link if the link began with `|`
202
+ chClass = (linkBeginChCode === 124 /* Pipe */) ? 1 /* ForceTermination */ : 0 /* None */;
203
+ break;
204
+ case 32 /* Space */:
205
+ // ` ` allow space in between [ and ]
206
+ chClass = (inSquareBrackets ? 0 /* None */ : 1 /* ForceTermination */);
207
+ break;
208
+ default:
209
+ chClass = classifier.get(chCode);
210
+ }
211
+ // Check if character terminates link
212
+ if (chClass === 1 /* ForceTermination */) {
213
+ result.push(LinkComputer._createLink(classifier, line, i, linkBeginIndex, j));
214
+ resetStateMachine = true;
215
+ }
216
+ }
217
+ else if (state === 12 /* End */) {
218
+ let chClass;
219
+ if (chCode === 91 /* OpenSquareBracket */) {
220
+ // Allow for the authority part to contain ipv6 addresses which contain [ and ]
221
+ hasOpenSquareBracket = true;
222
+ chClass = 0 /* None */;
223
+ }
224
+ else {
225
+ chClass = classifier.get(chCode);
226
+ }
227
+ // Check if character terminates link
228
+ if (chClass === 1 /* ForceTermination */) {
229
+ resetStateMachine = true;
230
+ }
231
+ else {
232
+ state = 13 /* Accept */;
233
+ }
234
+ }
235
+ else {
236
+ state = stateMachine.nextState(state, chCode);
237
+ if (state === 0 /* Invalid */) {
238
+ resetStateMachine = true;
239
+ }
240
+ }
241
+ if (resetStateMachine) {
242
+ state = 1 /* Start */;
243
+ hasOpenParens = false;
244
+ hasOpenSquareBracket = false;
245
+ hasOpenCurlyBracket = false;
246
+ // Record where the link started
247
+ linkBeginIndex = j + 1;
248
+ linkBeginChCode = chCode;
249
+ }
250
+ j++;
251
+ }
252
+ if (state === 13 /* Accept */) {
253
+ result.push(LinkComputer._createLink(classifier, line, i, linkBeginIndex, len));
254
+ }
255
+ }
256
+ return result;
257
+ }
258
+ }
259
+ exports.LinkComputer = LinkComputer;
260
+ /**
261
+ * Returns an array of all links contains in the provided
262
+ * document. *Note* that this operation is computational
263
+ * expensive and should not run in the UI thread.
264
+ */
265
+ function computeLinks(model) {
266
+ if (!model || typeof model.getLineCount !== 'function' || typeof model.getLineContent !== 'function') {
267
+ // Unknown caller!
268
+ return [];
269
+ }
270
+ return LinkComputer.computeLinks(model);
271
+ }
272
+ exports.computeLinks = computeLinks;
273
+ //# sourceMappingURL=link-computer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-computer.js","sourceRoot":"","sources":["../../src/common/link-computer.ts"],"names":[],"mappings":";AAAA;;;gGAGgG;AAChG,gIAAgI;;;AAEhI,+DAAuF;AAoCvF,MAAa,WAAW;IAMtB,YAAY,IAAY,EAAE,IAAY,EAAE,YAAoB;QAC1D,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAC/C,IAAI,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC;SACxB;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,GAAW;QACjC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;IAC3C,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,KAAa;QAChD,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;IAC5C,CAAC;CACF;AAxBD,kCAwBC;AAED,MAAa,YAAY;IAKvB,YAAY,KAAa;QACvB,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,QAAQ,kBAAgB,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,MAAM,GAAG,WAAW,EAAE;gBACxB,WAAW,GAAG,MAAM,CAAC;aACtB;YACD,IAAI,IAAI,GAAG,QAAQ,EAAE;gBACnB,QAAQ,GAAG,IAAI,CAAC;aACjB;YACD,IAAI,EAAE,GAAG,QAAQ,EAAE;gBACjB,QAAQ,GAAG,EAAE,CAAC;aACf;SACF;QAED,WAAW,EAAE,CAAC;QACd,QAAQ,EAAE,CAAC;QAEX,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,QAAQ,EAAE,WAAW,kBAAgB,CAAC;QACrE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;SAC9B;QAED,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IAClC,CAAC;IAEM,SAAS,CAAC,YAAmB,EAAE,MAAc;QAClD,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,IAAI,CAAC,YAAY,EAAE;YAC7C,uBAAqB;SACtB;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;CACF;AAxCD,oCAwCC;AAED,mDAAmD;AACnD,IAAI,aAAa,GAAwB,IAAI,CAAC;AAC9C,SAAS,eAAe;IACtB,IAAI,aAAa,KAAK,IAAI,EAAE;QAC1B,aAAa,GAAG,IAAI,YAAY,CAAC;YAC/B,uCAAkC;YAClC,sCAAkC;YAClC,uCAAkC;YAClC,sCAAkC;YAElC,oCAA+B;YAC/B,mCAA+B;YAE/B,sCAAiC;YACjC,qCAAiC;YAEjC,wCAAmC;YACnC,uCAAmC;YAEnC,gDAA2C;YAC3C,+CAA2C;YAC3C,mDAA8C;YAE9C,oCAA+B;YAC/B,mCAA+B;YAE/B,sCAAiC;YACjC,qCAAiC;YAEjC,+CAA0C;YAC1C,8CAA0C;YAE1C,0DAAqD;YAErD,2DAAqD;YAErD,oDAA8C;SAC/C,CAAC,CAAC;KACJ;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAQD,IAAI,WAAW,GAA+C,IAAI,CAAC;AACnE,SAAS,aAAa;IACpB,IAAI,WAAW,KAAK,IAAI,EAAE;QACxB,WAAW,GAAG,IAAI,qCAAmB,cAAqC,CAAC;QAE3E,MAAM,4BAA4B,GAAG,8CAA8C,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,4BAA4B,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC5D,WAAW,CAAC,GAAG,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC,CAAC,2BAAkC,CAAC;SAC9F;QAED,MAAM,0BAA0B,GAAG,KAAK,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,0BAA0B,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1D,WAAW,CAAC,GAAG,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC,CAAC,sBAA6B,CAAC;SACvF;KACF;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAa,YAAY;IAEf,MAAM,CAAC,WAAW,CAAC,UAA+C,EAAE,IAAY,EAAE,UAAkB,EAAE,cAAsB,EAAE,YAAoB;QACxJ,oDAAoD;QACpD,IAAI,qBAAqB,GAAG,YAAY,GAAG,CAAC,CAAC;QAC7C,GAAG;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;YACtD,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,OAAO,wBAA+B,EAAE;gBAC1C,MAAM;aACP;YACD,qBAAqB,EAAE,CAAC;SACzB,QAAQ,qBAAqB,GAAG,cAAc,EAAE;QAEjD,+DAA+D;QAC/D,IAAI,cAAc,GAAG,CAAC,EAAE;YACtB,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;YAC/D,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;YAElE,IACE,CAAC,kBAAkB,uBAAuB,IAAI,kBAAkB,wBAAwB,CAAC;mBACxF,CAAC,kBAAkB,+BAA+B,IAAI,kBAAkB,gCAAgC,CAAC;mBACzG,CAAC,kBAAkB,6BAA4B,IAAI,kBAAkB,8BAA6B,CAAC,EACpG;gBACA,gDAAgD;gBAChD,gDAAgD;gBAChD,gDAAgD;gBAChD,qBAAqB,EAAE,CAAC;aACzB;SACF;QAED,OAAO;YACL,KAAK,EAAE;gBACL,eAAe,EAAE,UAAU;gBAC3B,WAAW,EAAE,cAAc,GAAG,CAAC;gBAC/B,aAAa,EAAE,UAAU;gBACzB,SAAS,EAAE,qBAAqB,GAAG,CAAC;aACrC;YACD,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,qBAAqB,GAAG,CAAC,CAAC;SAC/D,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,KAA0B,EAAE,eAA6B,eAAe,EAAE;QACnG,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QAEnC,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,EAAE,EAAE;YACrE,MAAM,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;YAExB,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,IAAI,eAAe,GAAG,CAAC,CAAC;YACxB,IAAI,KAAK,gBAAc,CAAC;YACxB,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,IAAI,oBAAoB,GAAG,KAAK,CAAC;YACjC,IAAI,gBAAgB,GAAG,KAAK,CAAC;YAC7B,IAAI,mBAAmB,GAAG,KAAK,CAAC;YAEhC,OAAO,CAAC,GAAG,GAAG,EAAE;gBAEd,IAAI,iBAAiB,GAAG,KAAK,CAAC;gBAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAElC,IAAI,KAAK,oBAAiB,EAAE;oBAC1B,IAAI,OAAuB,CAAC;oBAC5B,QAAQ,MAAM,EAAE;wBACd;4BACE,aAAa,GAAG,IAAI,CAAC;4BACrB,OAAO,eAAsB,CAAC;4BAC9B,MAAM;wBACR;4BACE,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC,cAAqB,CAAC,yBAAgC,CAAC,CAAC;4BAClF,MAAM;wBACR;4BACE,gBAAgB,GAAG,IAAI,CAAC;4BACxB,oBAAoB,GAAG,IAAI,CAAC;4BAC5B,OAAO,eAAsB,CAAC;4BAC9B,MAAM;wBACR;4BACE,gBAAgB,GAAG,KAAK,CAAC;4BACzB,OAAO,GAAG,CAAC,oBAAoB,CAAC,CAAC,cAAqB,CAAC,yBAAgC,CAAC,CAAC;4BACzF,MAAM;wBACR;4BACE,mBAAmB,GAAG,IAAI,CAAC;4BAC3B,OAAO,eAAsB,CAAC;4BAC9B,MAAM;wBACR;4BACE,OAAO,GAAG,CAAC,mBAAmB,CAAC,CAAC,cAAqB,CAAC,yBAAgC,CAAC,CAAC;4BACxF,MAAM;wBACR,wHAAwH;wBACxH;4BACE,OAAO,GAAG,CAAC,eAAe,yBAAyB,IAAI,eAAe,sBAAsB,CAAC,CAAC,CAAC,cAAqB,CAAC,yBAAgC,CAAC;4BACtJ,MAAM;wBACR;4BACE,OAAO,GAAG,CAAC,eAAe,yBAAyB,IAAI,eAAe,sBAAsB,CAAC,CAAC,CAAC,cAAqB,CAAC,yBAAgC,CAAC;4BACtJ,MAAM;wBACR;4BACE,OAAO,GAAG,CAAC,eAAe,yBAAyB,IAAI,eAAe,yBAAyB,CAAC,CAAC,CAAC,cAAqB,CAAC,yBAAgC,CAAC;4BACzJ,MAAM;wBACR;4BACE,mDAAmD;4BACnD,OAAO,GAAG,CAAC,eAAe,sBAAsB,CAAC,CAAC,CAAC,0BAAiC,CAAC,aAAoB,CAAC;4BAC1G,MAAM;wBACR;4BACE,mDAAmD;4BACnD,OAAO,GAAG,CAAC,eAAe,mBAAkB,CAAC,CAAC,CAAC,0BAAiC,CAAC,aAAoB,CAAC;4BACtG,MAAM;wBACR;4BACE,qCAAqC;4BACrC,OAAO,GAAG,CAAC,gBAAgB,CAAC,CAAC,cAAqB,CAAC,yBAAgC,CAAC,CAAC;4BACrF,MAAM;wBACR;4BACE,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;qBACpC;oBAED,qCAAqC;oBACrC,IAAI,OAAO,6BAAoC,EAAE;wBAC/C,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC;wBAC9E,iBAAiB,GAAG,IAAI,CAAC;qBAC1B;iBACF;qBAAM,IAAI,KAAK,iBAAc,EAAE;oBAE9B,IAAI,OAAuB,CAAC;oBAC5B,IAAI,MAAM,+BAA+B,EAAE;wBACzC,+EAA+E;wBAC/E,oBAAoB,GAAG,IAAI,CAAC;wBAC5B,OAAO,eAAsB,CAAC;qBAC/B;yBAAM;wBACL,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;qBAClC;oBAED,qCAAqC;oBACrC,IAAI,OAAO,6BAAoC,EAAE;wBAC/C,iBAAiB,GAAG,IAAI,CAAC;qBAC1B;yBAAM;wBACL,KAAK,kBAAe,CAAC;qBACtB;iBACF;qBAAM;oBACL,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBAC9C,IAAI,KAAK,oBAAkB,EAAE;wBAC3B,iBAAiB,GAAG,IAAI,CAAC;qBAC1B;iBACF;gBAED,IAAI,iBAAiB,EAAE;oBACrB,KAAK,gBAAc,CAAC;oBACpB,aAAa,GAAG,KAAK,CAAC;oBACtB,oBAAoB,GAAG,KAAK,CAAC;oBAC7B,mBAAmB,GAAG,KAAK,CAAC;oBAE5B,gCAAgC;oBAChC,cAAc,GAAG,CAAC,GAAG,CAAC,CAAC;oBACvB,eAAe,GAAG,MAAM,CAAC;iBAC1B;gBAED,CAAC,EAAE,CAAC;aACL;YAED,IAAI,KAAK,oBAAiB,EAAE;gBAC1B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC;aACjF;SAEF;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAvKD,oCAuKC;AAED;;;;GAIG;AACH,SAAgB,YAAY,CAAC,KAAiC;IAC5D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,UAAU,IAAI,OAAO,KAAK,CAAC,cAAc,KAAK,UAAU,EAAE;QACpG,kBAAkB;QAClB,OAAO,EAAE,CAAC;KACX;IACD,OAAO,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC;AAND,oCAMC"}
@@ -0,0 +1,5 @@
1
+ export declare enum MenuId {
2
+ TermTab = "TermTab",
3
+ TermPanel = "TermPanel"
4
+ }
5
+ //# sourceMappingURL=menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../src/common/menu.ts"],"names":[],"mappings":"AAAA,oBAAY,MAAM;IAChB,OAAO,YAAY;IACnB,SAAS,cAAc;CACxB"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MenuId = void 0;
4
+ var MenuId;
5
+ (function (MenuId) {
6
+ MenuId["TermTab"] = "TermTab";
7
+ MenuId["TermPanel"] = "TermPanel";
8
+ })(MenuId = exports.MenuId || (exports.MenuId = {}));
9
+ //# sourceMappingURL=menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/common/menu.ts"],"names":[],"mappings":";;;AAAA,IAAY,MAGX;AAHD,WAAY,MAAM;IAChB,6BAAmB,CAAA;IACnB,iCAAuB,CAAA;AACzB,CAAC,EAHW,MAAM,GAAN,cAAM,KAAN,cAAM,QAGjB"}
@@ -0,0 +1,48 @@
1
+ export declare const ITerminalNetwork: unique symbol;
2
+ export declare enum TerminalNetworkStatus {
3
+ DISCONNECTED = 0,
4
+ CONNECTED = 1
5
+ }
6
+ export interface ITerminalNetwork {
7
+ bindErrors(): void;
8
+ /**
9
+ * 当前网络状态
10
+ */
11
+ status: TerminalNetworkStatus;
12
+ /**
13
+ * 更新网络状态
14
+ */
15
+ setStatus(status: TerminalNetworkStatus): void;
16
+ /**
17
+ * 触发一次重连
18
+ */
19
+ reconnect(): void;
20
+ /**
21
+ * 重连 sessionId 指定的 client
22
+ */
23
+ reconnectClient(sessionId: string): Promise<void>;
24
+ /**
25
+ * 安排重连任务,具体的触发时机由底层决定。
26
+ * 此方法可以多次调用,不会频繁触发重连。
27
+ */
28
+ scheduleReconnection(): void;
29
+ /**
30
+ * 是否准备重试
31
+ */
32
+ shouldReconnect(sessionId: string): boolean;
33
+ /**
34
+ * 获取当前的重试信息
35
+ */
36
+ getReconnectInfo(sessionId: string): ITerminalReconnectInfo;
37
+ }
38
+ export interface ITerminalReconnectInfo {
39
+ /**
40
+ * 重试次数
41
+ */
42
+ times: number;
43
+ /**
44
+ * 下一次重试的时间
45
+ */
46
+ nextRetry: number;
47
+ }
48
+ //# sourceMappingURL=network.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../../src/common/network.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAE3D,oBAAY,qBAAqB;IAC/B,YAAY,IAAI;IAChB,SAAS,IAAI;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,IAAI,IAAI,CAAC;IAEnB;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;IAE9B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAE/C;;OAEG;IACH,SAAS,IAAI,IAAI,CAAC;IAElB;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElD;;;OAGG;IACH,oBAAoB,IAAI,IAAI,CAAC;IAE7B;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAE5C;;OAEG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,sBAAsB,CAAC;CAC7D;AAED,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB"}