@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,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TerminalNetworkStatus = exports.ITerminalNetwork = void 0;
4
+ exports.ITerminalNetwork = Symbol('ITerminalNetwork');
5
+ var TerminalNetworkStatus;
6
+ (function (TerminalNetworkStatus) {
7
+ TerminalNetworkStatus[TerminalNetworkStatus["DISCONNECTED"] = 0] = "DISCONNECTED";
8
+ TerminalNetworkStatus[TerminalNetworkStatus["CONNECTED"] = 1] = "CONNECTED";
9
+ })(TerminalNetworkStatus = exports.TerminalNetworkStatus || (exports.TerminalNetworkStatus = {}));
10
+ //# sourceMappingURL=network.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/common/network.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAE3D,IAAY,qBAGX;AAHD,WAAY,qBAAqB;IAC/B,iFAAgB,CAAA;IAChB,2EAAa,CAAA;AACf,CAAC,EAHW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAGhC"}
@@ -0,0 +1,33 @@
1
+ import { Event } from '@opensumi/ide-core-common';
2
+ export interface IPreferenceValue {
3
+ name: string;
4
+ value: string | number | boolean;
5
+ }
6
+ export declare const ITerminalPreference: unique symbol;
7
+ export interface ITerminalPreference {
8
+ get<T = any>(key: string): T;
9
+ onChange: Event<IPreferenceValue>;
10
+ toJSON(): any;
11
+ }
12
+ export interface DefaultOptions {
13
+ allowTransparency: boolean;
14
+ macOptionIsMeta: false;
15
+ cursorBlink: false;
16
+ scrollback: number;
17
+ tabStopWidth: number;
18
+ fontSize: number;
19
+ }
20
+ export declare const OptionTypeName: {
21
+ type: string;
22
+ fontFamily: string;
23
+ fontSize: string;
24
+ fontWeight: string;
25
+ lineHeight: string;
26
+ cursorBlink: string;
27
+ scrollback: string;
28
+ };
29
+ export declare const DefaultOptionValue: {
30
+ fontFamily: string;
31
+ fontSize: number;
32
+ };
33
+ //# sourceMappingURL=preference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preference.d.ts","sourceRoot":"","sources":["../../src/common/preference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAElD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CAClC;AAED,eAAO,MAAM,mBAAmB,eAAgC,CAAC;AACjE,MAAM,WAAW,mBAAmB;IAClC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,eAAe,EAAE,KAAK,CAAC;IACvB,WAAW,EAAE,KAAK,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,cAAc;;;;;;;;CAQ1B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;CAG9B,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultOptionValue = exports.OptionTypeName = exports.ITerminalPreference = void 0;
4
+ exports.ITerminalPreference = Symbol('ITerminalPreference');
5
+ exports.OptionTypeName = {
6
+ type: 'type',
7
+ fontFamily: 'fontFamily',
8
+ fontSize: 'fontSize',
9
+ fontWeight: 'fontWeight',
10
+ lineHeight: 'lineHeight',
11
+ cursorBlink: 'cursorBlink',
12
+ scrollback: 'scrollback',
13
+ };
14
+ exports.DefaultOptionValue = {
15
+ fontFamily: 'courier-new, courier, monospace',
16
+ fontSize: 12,
17
+ };
18
+ //# sourceMappingURL=preference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preference.js","sourceRoot":"","sources":["../../src/common/preference.ts"],"names":[],"mappings":";;;AAOa,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAgBpD,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,MAAM;IACZ,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE,YAAY;IACxB,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;CACzB,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAChC,UAAU,EAAE,iCAAiC;IAC7C,QAAQ,EAAE,EAAE;CACb,CAAC"}
@@ -0,0 +1,205 @@
1
+ import type vscode from 'vscode';
2
+ import { Terminal as XTerm } from 'xterm';
3
+ import { Uri } from '@opensumi/ide-core-common';
4
+ import { WindowsShellType } from './shell';
5
+ export declare const ITerminalServicePath = "ITerminalServicePath";
6
+ export declare const ITerminalNodeService: unique symbol;
7
+ export declare const ITerminalServiceClient: unique symbol;
8
+ export declare const IExternlTerminalService: unique symbol;
9
+ export interface Terminal {
10
+ readonly xterm: XTerm;
11
+ /**
12
+ * The name of the terminal.
13
+ */
14
+ readonly name: string;
15
+ /**
16
+ * The process ID of the shell process.
17
+ */
18
+ readonly processId: Promise<number>;
19
+ /**
20
+ * Send text to the terminal. The text is written to the stdin of the underlying pty process
21
+ * (shell) of the terminal.
22
+ *
23
+ * @param text The text to send.
24
+ * @param addNewLine Whether to add a new line to the text being sent, this is normally
25
+ * required to run a command in the terminal. The character(s) added are \n or \r\n
26
+ * depending on the platform. This defaults to `true`.
27
+ */
28
+ sendText(text: string, addNewLine?: boolean): void;
29
+ /**
30
+ * Show the terminal panel and reveal this terminal in the UI.
31
+ *
32
+ * @param preserveFocus When `true` the terminal will not take focus.
33
+ */
34
+ show(preserveFocus?: boolean): void;
35
+ /**
36
+ * Hide the terminal panel if this terminal is currently showing.
37
+ */
38
+ hide(): void;
39
+ isActive: boolean;
40
+ id: string;
41
+ serviceInitPromise: Promise<void> | null;
42
+ finishServiceInitPromise(): any;
43
+ setName(name: string): any;
44
+ setProcessId(id: number): any;
45
+ /**
46
+ * Dispose and free associated resources.
47
+ */
48
+ dispose(): void;
49
+ clear(): void;
50
+ }
51
+ export interface TerminalOptions {
52
+ /**
53
+ * A human-readable string which will be used to represent the terminal in the UI.
54
+ */
55
+ name?: string;
56
+ /**
57
+ * A path to a custom shell executable to be used in the terminal.
58
+ */
59
+ shellPath?: string;
60
+ /**
61
+ * Args for the custom shell executable. A string can be used on Windows only which allows
62
+ * specifying shell args in [command-line format](https://msdn.microsoft.com/en-au/08dfcab2-eb6e-49a4-80eb-87d4076c98c6).
63
+ */
64
+ shellArgs?: string[] | string;
65
+ /**
66
+ * A path or Uri for the current working directory to be used for the terminal.
67
+ */
68
+ cwd?: string | Uri;
69
+ /**
70
+ * Object with environment variables that will be added to the VS Code process.
71
+ */
72
+ env?: {
73
+ [key: string]: string | null;
74
+ };
75
+ /**
76
+ * Whether an extension is controlling the terminal via a `vscode.Pseudoterminal`.
77
+ */
78
+ isExtensionTerminal?: boolean;
79
+ /**
80
+ * Whether the terminal process environment should be exactly as provided in
81
+ * `TerminalOptions.env`. When this is false (default), the environment will be based on the
82
+ * window's environment and also apply configured platform settings like
83
+ * `terminal.integrated.windows.env` on top. When this is true, the complete environment
84
+ * must be provided as nothing will be inherited from the process or any configuration.
85
+ */
86
+ strictEnv?: boolean;
87
+ /**
88
+ * When enabled the terminal will run the process as normal but not be surfaced to the user
89
+ * until `Terminal.show` is called. The typical usage for this is when you need to run
90
+ * something that may need interactivity but only want to tell the user about it when
91
+ * interaction is needed. Note that the terminals will still be exposed to all extensions
92
+ * as normal.
93
+ */
94
+ hideFromUser?: boolean;
95
+ /**
96
+ * A message to write to the terminal on first launch, note that this is not sent to the
97
+ * process but, rather written directly to the terminal. This supports escape sequences such
98
+ * a setting text style.
99
+ */
100
+ message?: string;
101
+ /**
102
+ * The icon path or {@link ThemeIcon} for the terminal.
103
+ */
104
+ iconPath?: Uri | {
105
+ light: Uri;
106
+ dark: Uri;
107
+ } | vscode.ThemeIcon;
108
+ /**
109
+ * The icon {@link ThemeColor} for the terminal.
110
+ * The `terminal.ansi*` theme keys are
111
+ * recommended for the best contrast and consistency across themes.
112
+ */
113
+ color?: vscode.ThemeColor;
114
+ /**
115
+ * pty 进程退出后是否自动关闭 terminal 控件
116
+ */
117
+ closeWhenExited?: boolean;
118
+ /**
119
+ * 自定义的参数,由上层集成方自行控制
120
+ */
121
+ args?: any;
122
+ beforeCreate?: (terminalId: string) => void;
123
+ }
124
+ export interface ITerminalNodeService {
125
+ create(id: string, rows: number, cols: number, options: TerminalOptions): any;
126
+ onMessage(id: string, msg: string): void;
127
+ resize(id: string, rows: number, cols: number): any;
128
+ getShellName(id: string): string;
129
+ getProcessId(id: string): number;
130
+ disposeById(id: string): any;
131
+ dispose(): any;
132
+ setClient(clientId: string, client: ITerminalServiceClient): any;
133
+ closeClient(clientId: string): any;
134
+ ensureClientTerminal(clientId: string, terminalIdArr: string[]): boolean;
135
+ }
136
+ export interface ITerminalServiceClient {
137
+ create(id: string, rows: number, cols: number, options: TerminalOptions): Promise<{
138
+ pid: number;
139
+ name: string;
140
+ }> | {
141
+ pid: number;
142
+ name: string;
143
+ };
144
+ onMessage(id: string, msg: string): void;
145
+ resize(id: string, rows: number, cols: number): any;
146
+ disposeById(id: string): any;
147
+ getProcessId(id: string): number;
148
+ clientMessage(id: any, data: any): any;
149
+ closeClient(id: string, code?: number, signal?: number): void;
150
+ setConnectionClientId(clientId: string): any;
151
+ dispose(): any;
152
+ getShellName(id: string): string;
153
+ ensureTerminal(terminalIdArr: string[]): boolean;
154
+ $resolveWindowsShellPath(type: WindowsShellType): Promise<string | undefined>;
155
+ }
156
+ export interface ITerminalInfo {
157
+ id: string;
158
+ name: string;
159
+ isActive: boolean;
160
+ }
161
+ /**
162
+ * 使用依赖注入的方式复写这个类型,
163
+ * 支持更多形式的 termial 实现。
164
+ */
165
+ export interface IExternlTerminalService {
166
+ /**
167
+ * 创建一个新的 terminal,需要手动的将 xterm 和 pty 的通信关联起来。
168
+ *
169
+ * @param id
170
+ * @param terminal
171
+ * @param rows
172
+ * @param cols
173
+ * @param options
174
+ */
175
+ create(id: string, terminal: Terminal, rows: number, cols: number, options: TerminalOptions): Promise<boolean>;
176
+ /**
177
+ * 发送一段文字到后端,用于外部调用
178
+ *
179
+ * @param id
180
+ * @param text
181
+ * @param addNewLine
182
+ */
183
+ sendText(id: string, text: string, addNewLine?: boolean): void;
184
+ /**
185
+ * resize
186
+ *
187
+ * @param id
188
+ * @param rows
189
+ * @param cols
190
+ */
191
+ resize(id: string, rows: number, cols: number): void;
192
+ /**
193
+ * 销毁一个已有的 terminal 进程
194
+ *
195
+ * @param id
196
+ */
197
+ disposeById(id: string): void;
198
+ /**
199
+ * 获取已知 terminal 的进程号
200
+ *
201
+ * @param id
202
+ */
203
+ getProcessId(id: string): Promise<number>;
204
+ }
205
+ //# sourceMappingURL=pty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pty.d.ts","sourceRoot":"","sources":["../../src/common/pty.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IExternlTerminalService = exports.ITerminalServiceClient = exports.ITerminalNodeService = exports.ITerminalServicePath = void 0;
4
+ exports.ITerminalServicePath = 'ITerminalServicePath';
5
+ exports.ITerminalNodeService = Symbol('ITerminalNodeService');
6
+ exports.ITerminalServiceClient = Symbol('ITerminalServiceClient');
7
+ exports.IExternlTerminalService = Symbol('IExternlTerminalService');
8
+ //# sourceMappingURL=pty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pty.js","sourceRoot":"","sources":["../../src/common/pty.ts"],"names":[],"mappings":";;;AAKa,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC9C,QAAA,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AACtD,QAAA,sBAAsB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAC1D,QAAA,uBAAuB,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC"}
@@ -0,0 +1,24 @@
1
+ /// <reference types="react" />
2
+ export declare enum ItemType {
3
+ info = 0,
4
+ add = 1
5
+ }
6
+ export interface ItemProps {
7
+ id?: string;
8
+ name?: string;
9
+ selected?: boolean;
10
+ type?: ItemType;
11
+ editable?: boolean;
12
+ onClick?: () => void;
13
+ onClose?: () => void;
14
+ onInputBlur?: (id: string) => void;
15
+ onInputEnter?: (id: string, name: string) => void;
16
+ onContextMenu?: (event: React.MouseEvent<HTMLElement>) => void;
17
+ provider: ITerminalRenderProvider;
18
+ }
19
+ export declare const ITerminalRenderProvider: unique symbol;
20
+ export interface ITerminalRenderProvider {
21
+ infoItemRender(props: ItemProps): JSX.Element;
22
+ addItemRender(props: ItemProps): JSX.Element;
23
+ }
24
+ //# sourceMappingURL=render.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/common/render.ts"],"names":[],"mappings":";AAAA,oBAAY,QAAQ;IAClB,IAAI,IAAI;IACR,GAAG,IAAA;CACJ;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC/D,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,eAAO,MAAM,uBAAuB,eAAmC,CAAC;AACxE,MAAM,WAAW,uBAAuB;IACtC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC;IAC9C,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC;CAC9C"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ITerminalRenderProvider = exports.ItemType = void 0;
4
+ var ItemType;
5
+ (function (ItemType) {
6
+ ItemType[ItemType["info"] = 0] = "info";
7
+ ItemType[ItemType["add"] = 1] = "add";
8
+ })(ItemType = exports.ItemType || (exports.ItemType = {}));
9
+ exports.ITerminalRenderProvider = Symbol('TerminalRenderProvider');
10
+ //# sourceMappingURL=render.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/common/render.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,uCAAQ,CAAA;IACR,qCAAG,CAAA;AACL,CAAC,EAHW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAGnB;AAgBY,QAAA,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { Event } from '@opensumi/ide-core-common';
2
+ import { Disposable } from '@opensumi/ide-core-common';
3
+ export interface IWidget extends Disposable {
4
+ id: string;
5
+ name: string;
6
+ dynamic: number;
7
+ shadowDynamic: number;
8
+ element: HTMLDivElement;
9
+ group: IWidgetGroup;
10
+ reuse: boolean;
11
+ show: boolean;
12
+ error: boolean;
13
+ resize: (dynamic?: number) => void;
14
+ increase: (increment: number) => void;
15
+ rename(name: string): void;
16
+ dispose: () => void;
17
+ onRender: Event<void>;
18
+ onResize: Event<void>;
19
+ onShow: Event<boolean>;
20
+ onError: Event<boolean>;
21
+ }
22
+ export interface IWidgetGroup extends Disposable {
23
+ id: string;
24
+ name: string;
25
+ editable: boolean;
26
+ activated: boolean;
27
+ length: number;
28
+ widgets: IWidget[];
29
+ widgetsMap: Map<string, IWidget>;
30
+ last: IWidget;
31
+ snapshot: string;
32
+ addWidget(widget: IWidget): void;
33
+ removeWidgetByIndex: (index: number) => IWidget;
34
+ edit(): void;
35
+ unedit(): void;
36
+ rename(name: string): void;
37
+ dispose: () => void;
38
+ }
39
+ //# sourceMappingURL=resize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resize.d.ts","sourceRoot":"","sources":["../../src/common/resize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,MAAM,WAAW,OAAQ,SAAQ,UAAU;IACzC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IACtB,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACvB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACjC,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAChD,IAAI,IAAI,IAAI,CAAC;IACb,MAAM,IAAI,IAAI,CAAC;IACf,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=resize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resize.js","sourceRoot":"","sources":["../../src/common/resize.ts"],"names":[],"mappings":""}
@@ -0,0 +1,6 @@
1
+ export declare const ITerminalRestore: unique symbol;
2
+ export interface ITerminalRestore {
3
+ restore(): Promise<void>;
4
+ save(): void;
5
+ }
6
+ //# sourceMappingURL=restore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restore.d.ts","sourceRoot":"","sources":["../../src/common/restore.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAC3D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,IAAI,IAAI,IAAI,CAAC;CACd"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ITerminalRestore = void 0;
4
+ exports.ITerminalRestore = Symbol('ITerminalRestore');
5
+ //# sourceMappingURL=restore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restore.js","sourceRoot":"","sources":["../../src/common/restore.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC"}
@@ -0,0 +1,88 @@
1
+ import { IDisposable } from '@opensumi/ide-core-common';
2
+ import { OperatingSystem } from '@opensumi/ide-core-common/lib/platform';
3
+ import { ITerminalOptions, Terminal } from 'xterm';
4
+ import { ITerminalError } from './error';
5
+ import { TerminalOptions } from './pty';
6
+ import { ITerminalConnection } from './client';
7
+ export interface IPtyExitEvent {
8
+ sessionId: string;
9
+ code?: number;
10
+ signal?: number;
11
+ }
12
+ export declare const ITerminalService: unique symbol;
13
+ export interface ITerminalService {
14
+ /**
15
+ * 自定义 sessionId
16
+ */
17
+ generateSessionId?(): string;
18
+ /**
19
+ * Xterm 终端的构造选项,
20
+ * 默认返回为 {}
21
+ */
22
+ getOptions?(): ITerminalOptions;
23
+ /**
24
+ * 检测还在会话中的终端后台是否还处于保活状态,
25
+ * 默认返回为 true
26
+ *
27
+ * @param sessionIds
28
+ */
29
+ check?(sessionIds: string[]): Promise<boolean>;
30
+ /**
31
+ *
32
+ * @param sessionId 会话唯一标识
33
+ * @param xterm 返回的 Xterm 终端实例
34
+ * @param rows 终端初始化使用的列数
35
+ * @param cols 终端初始化使用的行数
36
+ * @param options 创建一个新终端的进程选项
37
+ * @param shellType 终端类型
38
+ */
39
+ attach(sessionId: string, xterm: Terminal, rows: number, cols: number, options?: TerminalOptions, shellType?: string): Promise<ITerminalConnection | undefined>;
40
+ /**
41
+ *
42
+ * @param id 会话唯一标识
43
+ * @param message 发送的字符串信息
44
+ */
45
+ sendText(id: string, message: string): Promise<void>;
46
+ /**
47
+ *
48
+ * @param sessionId 会话唯一标识
49
+ * @param cols resize 的列数
50
+ * @param rows resize 的行数
51
+ */
52
+ resize(sessionId: string, cols: number, rows: number): Promise<void>;
53
+ /**
54
+ * 销毁一个终端进程
55
+ *
56
+ * @param sessionId 会话唯一标识
57
+ */
58
+ disposeById(sessionId: string): void;
59
+ /**
60
+ * 异步向后端获取一个会话的进程 id
61
+ *
62
+ * @param sessionId 会话唯一标识
63
+ */
64
+ getProcessId(sessionId: string): Promise<number | undefined>;
65
+ /**
66
+ * 报错处理的事件
67
+ *
68
+ * @param handler
69
+ */
70
+ onError(handler: (error: ITerminalError) => void): IDisposable;
71
+ /**
72
+ * 终端正常退出
73
+ *
74
+ * @param sessionid
75
+ */
76
+ onExit(handler: (sessionid: IPtyExitEvent) => void): IDisposable;
77
+ /**
78
+ * 返回终端环境的 OS
79
+ */
80
+ getOs(): Promise<OperatingSystem>;
81
+ }
82
+ export declare const ITerminalInternalService: unique symbol;
83
+ export interface ITerminalInternalService extends ITerminalService {
84
+ generateSessionId(): string;
85
+ getOptions(): ITerminalOptions;
86
+ check(sessionIds: string[]): Promise<boolean>;
87
+ }
88
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/common/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAE/C,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAC3D,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,iBAAiB,CAAC,IAAI,MAAM,CAAC;IAC7B;;;OAGG;IACH,UAAU,CAAC,IAAI,gBAAgB,CAAC;IAChC;;;;;OAKG;IACH,KAAK,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAAC;IAChK;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD;;;;;OAKG;IACH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7D;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,WAAW,CAAC;IAC/D;;;;OAIG;IACH,MAAM,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,aAAa,KAAK,IAAI,GAAG,WAAW,CAAC;IACjE;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;CACnC;AAED,eAAO,MAAM,wBAAwB,eAAqC,CAAC;AAC3E,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAChE,iBAAiB,IAAI,MAAM,CAAC;IAC5B,UAAU,IAAI,gBAAgB,CAAC;IAC/B,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/C"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ITerminalInternalService = exports.ITerminalService = void 0;
4
+ exports.ITerminalService = Symbol('ITerminalService');
5
+ exports.ITerminalInternalService = Symbol('ITerminalInternalService');
6
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/common/service.ts"],"names":[],"mappings":";;;AAaa,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAuE9C,QAAA,wBAAwB,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare const WINDOWS_DEFAULT_SHELL_PATH_MAPS: {
2
+ powershell: string;
3
+ cmd: string;
4
+ };
5
+ export declare enum WindowsShellType {
6
+ 'cmd' = "cmd",
7
+ 'powershell' = "powershell",
8
+ 'git-bash' = "git-bash"
9
+ }
10
+ //# sourceMappingURL=shell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/common/shell.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,+BAA+B;;;CAG3C,CAAC;AAEF,oBAAY,gBAAgB;IAC1B,KAAK,QAAQ;IACb,YAAY,eAAe;IAC3B,UAAU,aAAa;CACxB"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WindowsShellType = exports.WINDOWS_DEFAULT_SHELL_PATH_MAPS = void 0;
4
+ exports.WINDOWS_DEFAULT_SHELL_PATH_MAPS = {
5
+ ['powershell']: 'powershell.exe',
6
+ ['cmd']: 'cmd.exe',
7
+ };
8
+ var WindowsShellType;
9
+ (function (WindowsShellType) {
10
+ WindowsShellType["cmd"] = "cmd";
11
+ WindowsShellType["powershell"] = "powershell";
12
+ WindowsShellType["git-bash"] = "git-bash";
13
+ })(WindowsShellType = exports.WindowsShellType || (exports.WindowsShellType = {}));
14
+ //# sourceMappingURL=shell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/common/shell.ts"],"names":[],"mappings":";;;AAAa,QAAA,+BAA+B,GAAG;IAC7C,CAAC,YAAY,CAAC,EAAE,gBAAgB;IAChC,CAAC,KAAK,CAAC,EAAE,SAAS;CACnB,CAAC;AAEF,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,+BAAa,CAAA;IACb,6CAA2B,CAAA;IAC3B,yCAAuB,CAAA;AACzB,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B"}
@@ -0,0 +1,6 @@
1
+ import { ITheme } from 'xterm';
2
+ export declare const ITerminalTheme: unique symbol;
3
+ export interface ITerminalTheme {
4
+ terminalTheme: ITheme;
5
+ }
6
+ //# sourceMappingURL=theme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../src/common/theme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B,eAAO,MAAM,cAAc,eAA2B,CAAC;AACvD,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ITerminalTheme = void 0;
4
+ exports.ITerminalTheme = Symbol('ITerminalTheme');
5
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/common/theme.ts"],"names":[],"mappings":";;;AAEa,QAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const userActionViewUuid: () => string;
2
+ export declare const apiActionViewUuid: () => string;
3
+ export declare const generate: () => string;
4
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,kBAAkB,cAE9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,cAE7B,CAAC;AAEF,eAAO,MAAM,QAAQ,cAEpB,CAAC"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generate = exports.apiActionViewUuid = exports.userActionViewUuid = void 0;
4
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
5
+ let i = 0;
6
+ function count() {
7
+ return i++;
8
+ }
9
+ const userActionViewUuid = () => {
10
+ return `UI_View_${(0, ide_core_common_1.uuid)()}${count()}`;
11
+ };
12
+ exports.userActionViewUuid = userActionViewUuid;
13
+ const apiActionViewUuid = () => {
14
+ return `API_View_${(0, ide_core_common_1.uuid)()}${count()}`;
15
+ };
16
+ exports.apiActionViewUuid = apiActionViewUuid;
17
+ const generate = () => {
18
+ return (0, ide_core_common_1.uuid)();
19
+ };
20
+ exports.generate = generate;
21
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/common/utils.ts"],"names":[],"mappings":";;;AAAA,+DAAiD;AAEjD,IAAI,CAAC,GAAG,CAAC,CAAC;AACV,SAAS,KAAK;IACZ,OAAO,CAAC,EAAE,CAAC;AACb,CAAC;AAEM,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,OAAO,WAAW,IAAA,sBAAI,GAAE,GAAG,KAAK,EAAE,EAAE,CAAC;AACvC,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAEK,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,OAAO,YAAY,IAAA,sBAAI,GAAE,GAAG,KAAK,EAAE,EAAE,CAAC;AACxC,CAAC,CAAC;AAFW,QAAA,iBAAiB,qBAE5B;AAEK,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,OAAO,IAAA,sBAAI,GAAE,CAAC;AAChB,CAAC,CAAC;AAFW,QAAA,QAAQ,YAEnB"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './common';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
package/lib/index.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./common"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAAyB"}