@opensumi/ide-terminal-next 3.7.2-next-1740052080.0 → 3.7.2-next-1740054042.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. package/LICENSE +21 -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 +46 -0
  5. package/lib/browser/component/resize.delegate.js.map +1 -0
  6. package/lib/browser/component/resize.module.less +77 -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 +55 -0
  10. package/lib/browser/component/resize.view.js.map +1 -0
  11. package/lib/browser/component/search.module.less +61 -0
  12. package/lib/browser/component/search.view.d.ts +3 -0
  13. package/lib/browser/component/search.view.d.ts.map +1 -0
  14. package/lib/browser/component/search.view.js +89 -0
  15. package/lib/browser/component/search.view.js.map +1 -0
  16. package/lib/browser/component/tab.item.d.ts +7 -0
  17. package/lib/browser/component/tab.item.d.ts.map +1 -0
  18. package/lib/browser/component/tab.item.js +121 -0
  19. package/lib/browser/component/tab.item.js.map +1 -0
  20. package/lib/browser/component/tab.module.less +174 -0
  21. package/lib/browser/component/tab.view.d.ts +4 -0
  22. package/lib/browser/component/tab.view.d.ts.map +1 -0
  23. package/lib/browser/component/tab.view.js +65 -0
  24. package/lib/browser/component/tab.view.js.map +1 -0
  25. package/lib/browser/component/terminal.module.less +50 -0
  26. package/lib/browser/component/terminal.variable.d.ts +8 -0
  27. package/lib/browser/component/terminal.variable.d.ts.map +1 -0
  28. package/lib/browser/component/terminal.variable.js +44 -0
  29. package/lib/browser/component/terminal.variable.js.map +1 -0
  30. package/lib/browser/component/terminal.view.d.ts +5 -0
  31. package/lib/browser/component/terminal.view.d.ts.map +1 -0
  32. package/lib/browser/component/terminal.view.js +63 -0
  33. package/lib/browser/component/terminal.view.js.map +1 -0
  34. package/lib/browser/component/terminal.widget.d.ts +10 -0
  35. package/lib/browser/component/terminal.widget.d.ts.map +1 -0
  36. package/lib/browser/component/terminal.widget.js +65 -0
  37. package/lib/browser/component/terminal.widget.js.map +1 -0
  38. package/lib/browser/component/variable.module.less +15 -0
  39. package/lib/browser/contribution/index.d.ts.map +1 -0
  40. package/lib/browser/contribution/index.js +11 -0
  41. package/lib/browser/contribution/index.js.map +1 -0
  42. package/lib/browser/contribution/terminal.command.js +328 -0
  43. package/lib/browser/contribution/terminal.keybinding.js +87 -0
  44. package/lib/browser/contribution/terminal.lifecycle.js +52 -0
  45. package/lib/browser/contribution/terminal.menu.js +168 -0
  46. package/lib/browser/contribution/terminal.network.js +44 -0
  47. package/lib/browser/contribution/terminal.preference.js +43 -0
  48. package/lib/browser/contribution/terminal.view.js +57 -0
  49. package/lib/browser/index.js +124 -0
  50. package/lib/browser/links/base.d.ts +8 -0
  51. package/lib/browser/links/base.d.ts.map +1 -0
  52. package/lib/browser/links/base.js +13 -0
  53. package/lib/browser/links/base.js.map +1 -0
  54. package/lib/browser/links/external-link-provider-adapter.d.ts +21 -0
  55. package/lib/browser/links/external-link-provider-adapter.d.ts.map +1 -0
  56. package/lib/browser/links/external-link-provider-adapter.js +74 -0
  57. package/lib/browser/links/external-link-provider-adapter.js.map +1 -0
  58. package/lib/browser/links/helpers.d.ts +7 -0
  59. package/lib/browser/links/helpers.d.ts.map +1 -0
  60. package/lib/browser/links/helpers.js +128 -0
  61. package/lib/browser/links/helpers.js.map +1 -0
  62. package/lib/browser/links/link-manager.d.ts +92 -0
  63. package/lib/browser/links/link-manager.d.ts.map +1 -0
  64. package/lib/browser/links/link-manager.js +342 -0
  65. package/lib/browser/links/link-manager.js.map +1 -0
  66. package/lib/browser/links/link.d.ts +31 -0
  67. package/lib/browser/links/link.d.ts.map +1 -0
  68. package/lib/browser/links/link.js +136 -0
  69. package/lib/browser/links/link.js.map +1 -0
  70. package/lib/browser/links/protocol-link-provider.d.ts +14 -0
  71. package/lib/browser/links/protocol-link-provider.d.ts.map +1 -0
  72. package/lib/browser/links/protocol-link-provider.js +71 -0
  73. package/lib/browser/links/protocol-link-provider.js.map +1 -0
  74. package/lib/browser/links/validated-local-link-provider.d.ts +41 -0
  75. package/lib/browser/links/validated-local-link-provider.d.ts.map +1 -0
  76. package/lib/browser/links/validated-local-link-provider.js +235 -0
  77. package/lib/browser/links/validated-local-link-provider.js.map +1 -0
  78. package/lib/browser/links/word-link-provider.d.ts +29 -0
  79. package/lib/browser/links/word-link-provider.d.ts.map +1 -0
  80. package/lib/browser/links/word-link-provider.js +153 -0
  81. package/lib/browser/links/word-link-provider.js.map +1 -0
  82. package/lib/browser/terminal.addon.js +83 -0
  83. package/lib/browser/terminal.api.js +162 -0
  84. package/lib/browser/terminal.client.js +680 -0
  85. package/lib/browser/terminal.color.js +240 -0
  86. package/lib/browser/terminal.context-key.js +29 -0
  87. package/lib/browser/terminal.context-menu.js +96 -0
  88. package/lib/browser/terminal.controller.js +669 -0
  89. package/lib/browser/terminal.environment.service.js +153 -0
  90. package/lib/browser/terminal.error.js +61 -0
  91. package/lib/browser/terminal.ext.host.proxy.js +108 -0
  92. package/lib/browser/terminal.hover.manager.js +85 -0
  93. package/lib/browser/terminal.input.js +32 -0
  94. package/lib/browser/terminal.internal.service.js +107 -0
  95. package/lib/browser/terminal.network.js +150 -0
  96. package/lib/browser/terminal.preference.js +136 -0
  97. package/lib/browser/terminal.profile.internal.js +104 -0
  98. package/lib/browser/terminal.profile.js +211 -0
  99. package/lib/browser/terminal.render.js +25 -0
  100. package/lib/browser/terminal.restore.js +49 -0
  101. package/lib/browser/terminal.search.js +109 -0
  102. package/lib/browser/terminal.service.js +163 -0
  103. package/lib/common/api.d.ts +22 -0
  104. package/lib/common/api.d.ts.map +1 -0
  105. package/lib/common/api.js +5 -0
  106. package/lib/common/api.js.map +1 -0
  107. package/lib/common/client.d.ts +199 -0
  108. package/lib/common/client.d.ts.map +1 -0
  109. package/lib/common/client.js +6 -0
  110. package/lib/common/client.js.map +1 -0
  111. package/lib/common/controller.d.ts +149 -0
  112. package/lib/common/controller.d.ts.map +1 -0
  113. package/lib/common/controller.js +8 -0
  114. package/lib/common/controller.js.map +1 -0
  115. package/lib/common/environmentVariable.d.ts +116 -0
  116. package/lib/common/environmentVariable.d.ts.map +1 -0
  117. package/lib/common/environmentVariable.js +30 -0
  118. package/lib/common/environmentVariable.js.map +1 -0
  119. package/lib/common/environmentVariableCollection.d.ts +9 -0
  120. package/lib/common/environmentVariableCollection.d.ts.map +1 -0
  121. package/lib/common/environmentVariableCollection.js +140 -0
  122. package/lib/common/environmentVariableCollection.js.map +1 -0
  123. package/lib/common/error.d.ts +41 -0
  124. package/lib/common/error.d.ts.map +1 -0
  125. package/lib/common/error.js +13 -0
  126. package/lib/common/error.js.map +1 -0
  127. package/lib/common/extension.d.ts +139 -0
  128. package/lib/common/extension.d.ts.map +1 -0
  129. package/lib/common/extension.js +57 -0
  130. package/lib/common/extension.js.map +1 -0
  131. package/lib/common/index.d.ts +17 -0
  132. package/lib/common/index.d.ts.map +1 -0
  133. package/lib/common/index.js +20 -0
  134. package/lib/common/index.js.map +1 -0
  135. package/lib/common/link-computer.d.ts +56 -0
  136. package/lib/common/link-computer.d.ts.map +1 -0
  137. package/lib/common/link-computer.js +282 -0
  138. package/lib/common/link-computer.js.map +1 -0
  139. package/lib/common/network.d.ts +48 -0
  140. package/lib/common/network.d.ts.map +1 -0
  141. package/lib/common/network.js +10 -0
  142. package/lib/common/network.js.map +1 -0
  143. package/lib/common/preference.d.ts +134 -0
  144. package/lib/common/preference.d.ts.map +1 -0
  145. package/lib/common/preference.js +199 -0
  146. package/lib/common/preference.js.map +1 -0
  147. package/lib/common/process.d.ts +8 -0
  148. package/lib/common/process.d.ts.map +1 -0
  149. package/lib/common/process.js +3 -0
  150. package/lib/common/process.js.map +1 -0
  151. package/lib/common/profile.d.ts +99 -0
  152. package/lib/common/profile.d.ts.map +1 -0
  153. package/lib/common/profile.js +27 -0
  154. package/lib/common/profile.js.map +1 -0
  155. package/lib/common/pty.d.ts +525 -0
  156. package/lib/common/pty.d.ts.map +1 -0
  157. package/lib/common/pty.js +28 -0
  158. package/lib/common/pty.js.map +1 -0
  159. package/lib/common/render.d.ts +29 -0
  160. package/lib/common/render.d.ts.map +1 -0
  161. package/lib/common/render.js +10 -0
  162. package/lib/common/render.js.map +1 -0
  163. package/lib/common/resize.d.ts +43 -0
  164. package/lib/common/resize.d.ts.map +1 -0
  165. package/lib/common/resize.js +3 -0
  166. package/lib/common/resize.js.map +1 -0
  167. package/lib/common/restore.d.ts +6 -0
  168. package/lib/common/restore.d.ts.map +1 -0
  169. package/lib/common/restore.js +5 -0
  170. package/lib/common/restore.js.map +1 -0
  171. package/lib/common/service.d.ts +96 -0
  172. package/lib/common/service.d.ts.map +1 -0
  173. package/lib/common/service.js +6 -0
  174. package/lib/common/service.js.map +1 -0
  175. package/lib/common/shell.d.ts +11 -0
  176. package/lib/common/shell.d.ts.map +1 -0
  177. package/lib/common/shell.js +14 -0
  178. package/lib/common/shell.js.map +1 -0
  179. package/lib/common/theme.d.ts +6 -0
  180. package/lib/common/theme.d.ts.map +1 -0
  181. package/lib/common/theme.js +5 -0
  182. package/lib/common/theme.js.map +1 -0
  183. package/lib/common/utils.d.ts +4 -0
  184. package/lib/common/utils.d.ts.map +1 -0
  185. package/lib/common/utils.js +15 -0
  186. package/lib/common/utils.js.map +1 -0
  187. package/lib/common/xterm.d.ts +27 -0
  188. package/lib/common/xterm.d.ts.map +1 -0
  189. package/lib/common/xterm.js +10 -0
  190. package/lib/common/xterm.js.map +1 -0
  191. package/lib/index.js +5 -0
  192. package/lib/node/data-store.d.ts +13 -0
  193. package/lib/node/data-store.d.ts.map +1 -0
  194. package/lib/node/data-store.js +6 -0
  195. package/lib/node/data-store.js.map +1 -0
  196. package/lib/node/index.d.ts +10 -0
  197. package/lib/node/index.d.ts.map +1 -0
  198. package/lib/node/index.js +64 -0
  199. package/lib/node/index.js.map +1 -0
  200. package/lib/node/pty.d.ts +42 -0
  201. package/lib/node/pty.d.ts.map +1 -0
  202. package/lib/node/pty.js +277 -0
  203. package/lib/node/pty.js.map +1 -0
  204. package/lib/node/pty.manager.d.ts +52 -0
  205. package/lib/node/pty.manager.d.ts.map +1 -0
  206. package/lib/node/pty.manager.js +157 -0
  207. package/lib/node/pty.manager.js.map +1 -0
  208. package/lib/node/pty.manager.remote.d.ts +23 -0
  209. package/lib/node/pty.manager.remote.d.ts.map +1 -0
  210. package/lib/node/pty.manager.remote.js +124 -0
  211. package/lib/node/pty.manager.remote.js.map +1 -0
  212. package/lib/node/pty.proxy.d.ts +45 -0
  213. package/lib/node/pty.proxy.d.ts.map +1 -0
  214. package/lib/node/pty.proxy.js +277 -0
  215. package/lib/node/pty.proxy.js.map +1 -0
  216. package/lib/node/pty.proxy.remote.exec.d.ts +2 -0
  217. package/lib/node/pty.proxy.remote.exec.d.ts.map +1 -0
  218. package/lib/node/pty.proxy.remote.exec.js +7 -0
  219. package/lib/node/pty.proxy.remote.exec.js.map +1 -0
  220. package/lib/node/shell-integration.service.d.ts +24 -0
  221. package/lib/node/shell-integration.service.d.ts.map +1 -0
  222. package/lib/node/shell-integration.service.js +187 -0
  223. package/lib/node/shell-integration.service.js.map +1 -0
  224. package/lib/node/shell.d.ts +20 -0
  225. package/lib/node/shell.d.ts.map +1 -0
  226. package/lib/node/shell.js +199 -0
  227. package/lib/node/shell.js.map +1 -0
  228. package/lib/node/terminal.process.service.d.ts +5 -0
  229. package/lib/node/terminal.process.service.d.ts.map +1 -0
  230. package/lib/node/terminal.process.service.js +15 -0
  231. package/lib/node/terminal.process.service.js.map +1 -0
  232. package/lib/node/terminal.profile.service.d.ts +19 -0
  233. package/lib/node/terminal.profile.service.d.ts.map +1 -0
  234. package/lib/node/terminal.profile.service.js +228 -0
  235. package/lib/node/terminal.profile.service.js.map +1 -0
  236. package/lib/node/terminal.service.client.d.ts +51 -0
  237. package/lib/node/terminal.service.client.d.ts.map +1 -0
  238. package/lib/node/terminal.service.client.js +159 -0
  239. package/lib/node/terminal.service.client.js.map +1 -0
  240. package/lib/node/terminal.service.d.ts +30 -0
  241. package/lib/node/terminal.service.d.ts.map +1 -0
  242. package/lib/node/terminal.service.js +246 -0
  243. package/lib/node/terminal.service.js.map +1 -0
  244. package/package.json +18 -18
@@ -0,0 +1,174 @@
1
+ .view_container {
2
+ display: flex;
3
+ flex: 1;
4
+ min-width: 0;
5
+ font-size: 12px;
6
+ }
7
+
8
+ .tabs {
9
+ flex-grow: 1;
10
+ height: 35px;
11
+
12
+ :first-child {
13
+ &.item_container {
14
+ border-left: 1px solid var(--kt-panelTab-border);
15
+ }
16
+ }
17
+
18
+ .tab_contents {
19
+ overflow-y: hidden;
20
+ display: inline-flex;
21
+ position: relative;
22
+ height: 100%;
23
+ }
24
+ }
25
+
26
+ .tabs::-webkit-scrollbar {
27
+ display: none;
28
+ }
29
+
30
+ .button {
31
+ flex: 1;
32
+ align-items: center;
33
+ justify-content: flex-start;
34
+ display: flex;
35
+ }
36
+
37
+ .item_container {
38
+ padding: 0px 12px 0px 12px;
39
+ cursor: pointer;
40
+ user-select: none;
41
+ line-height: 100%;
42
+ font-size: 12px;
43
+ min-width: 112px;
44
+ display: flex;
45
+ color: var(--kt-panelTab-inactiveForeground);
46
+ background-color: var(--kt-panelTab-inactiveBackground);
47
+ border-right: 1px solid var(--kt-panelTab-border);
48
+ align-items: center;
49
+ position: relative;
50
+ max-width: 200px;
51
+ .tab_close_icon {
52
+ transition: opacity 0.2s ease-in-out;
53
+ opacity: 0;
54
+ border-right: 0;
55
+ width: 16px;
56
+ height: 16px;
57
+ line-height: 16px;
58
+ box-sizing: content-box;
59
+ text-align: center;
60
+ border-radius: 4px;
61
+ &:hover {
62
+ transform: scale(1.1);
63
+ background-color: var(--kt-icon-hoverBackground);
64
+ }
65
+ }
66
+ }
67
+
68
+ .item_container:hover {
69
+ .tab_close_icon {
70
+ opacity: 1;
71
+ color: var(--tab-activeForeground);
72
+ }
73
+ }
74
+
75
+ .item_info_name {
76
+ margin-right: 8px;
77
+ position: relative;
78
+ min-width: 112px;
79
+ display: flex;
80
+ align-items: center;
81
+
82
+ .item_title {
83
+ flex: 1;
84
+ overflow: hidden;
85
+ text-overflow: ellipsis;
86
+ white-space: nowrap;
87
+ line-height: 20px;
88
+ height: 20px;
89
+ }
90
+ }
91
+
92
+ .item_info_input {
93
+ flex: 1;
94
+ text-indent: 0px;
95
+ text-align: left;
96
+ border: none;
97
+ outline: none;
98
+ height: 20px;
99
+ line-height: 20px;
100
+ font-size: 12px;
101
+ color: inherit;
102
+ background-color: inherit;
103
+ }
104
+
105
+ .tab_item_selected {
106
+ color: var(--kt-panelTab-activeForeground);
107
+ background-color: var(--kt-panelTab-activeBackground);
108
+ position: relative;
109
+ &::before {
110
+ content: ' ';
111
+ position: absolute;
112
+ left: 0;
113
+ top: 1px;
114
+ width: 100%;
115
+ height: 1px;
116
+ z-index: 999;
117
+ background-color: var(--tab-activeBorderTop);
118
+ }
119
+ &::after {
120
+ content: ' ';
121
+ position: absolute;
122
+ left: 0;
123
+ bottom: 0;
124
+ width: 100%;
125
+ height: 1px;
126
+ z-index: 999;
127
+ background-color: var(--kt-panelTab-activeBackground);
128
+ }
129
+ }
130
+
131
+ .tab_item_wrapper {
132
+ display: flex;
133
+ align-items: center;
134
+ justify-content: center;
135
+ width: 44px;
136
+ height: 24px;
137
+ margin-left: 5px;
138
+ text-align: center;
139
+ .item_more {
140
+ height: 24px;
141
+ width: 20px;
142
+ padding: 0 2px;
143
+ line-height: 24px;
144
+ cursor: pointer;
145
+ user-select: none;
146
+ font-size: 12px;
147
+ &:hover {
148
+ border-radius: 4px;
149
+ background-color: var(--kt-icon-hoverBackground);
150
+ }
151
+ }
152
+ .item_add {
153
+ height: 24px;
154
+ width: 24px;
155
+ padding-right: 2px;
156
+ line-height: 24px;
157
+ cursor: pointer;
158
+ user-select: none;
159
+ text-align: right;
160
+ }
161
+ &:hover {
162
+ color: var(--kt-icon-hoverForeground);
163
+ border-radius: 4px;
164
+ background-color: var(--kt-icon-hoverBackground);
165
+ }
166
+ }
167
+
168
+ .tab_close_icon {
169
+ &::before {
170
+ font-size: 14px;
171
+ }
172
+
173
+ color: var(--kt-panelTabActionIcon-foreground);
174
+ }
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ declare const _default: () => React.JSX.Element;
3
+ export default _default;
4
+ //# sourceMappingURL=tab.view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tab.view.d.ts","sourceRoot":"","sources":["../../../src/browser/component/tab.view.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;;AAYxE,wBAsFE"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const react_1 = tslib_1.__importStar(require("react"));
5
+ const ide_components_1 = require("@opensumi/ide-components");
6
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
+ const ide_theme_1 = require("@opensumi/ide-theme");
8
+ const common_1 = require("../../common");
9
+ const terminal_context_menu_1 = require("../terminal.context-menu");
10
+ const tab_item_1 = tslib_1.__importDefault(require("./tab.item"));
11
+ const tab_module_less_1 = tslib_1.__importDefault(require("./tab.module.less"));
12
+ exports.default = () => {
13
+ const view = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalGroupViewService);
14
+ const provider = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalRenderProvider);
15
+ const menuService = (0, ide_core_browser_1.useInjectable)(terminal_context_menu_1.TerminalContextMenuService);
16
+ const themeService = (0, ide_core_browser_1.useInjectable)(ide_theme_1.IThemeService);
17
+ const keybindingService = (0, ide_core_browser_1.useInjectable)(ide_core_browser_1.KeybindingRegistry);
18
+ const tabContainer = (0, react_1.useRef)();
19
+ const [theme, setTheme] = (0, react_1.useState)('dark');
20
+ const styles_tab_contents = (0, ide_core_browser_1.useDesignStyles)(tab_module_less_1.default.tab_contents, 'tab_contents');
21
+ const groups = (0, ide_core_browser_1.useAutorun)(view.groups);
22
+ const currentGroup = (0, ide_core_browser_1.useAutorun)(view.currentGroup);
23
+ const init = (0, react_1.useCallback)(() => {
24
+ themeService.getCurrentTheme().then((theme) => {
25
+ setTheme(theme.type);
26
+ });
27
+ return themeService.onThemeChange((theme) => {
28
+ setTheme(theme.type);
29
+ });
30
+ }, [theme, themeService]);
31
+ (0, react_1.useEffect)(() => {
32
+ const disposable = init();
33
+ return () => {
34
+ disposable.dispose();
35
+ };
36
+ }, []);
37
+ return (react_1.default.createElement("div", { className: tab_module_less_1.default.view_container },
38
+ react_1.default.createElement("div", { className: tab_module_less_1.default.tabs },
39
+ react_1.default.createElement(ide_components_1.Scrollbars, { forwardedRef: (el) => (el ? (tabContainer.current = el.ref) : null) },
40
+ react_1.default.createElement("div", { className: styles_tab_contents },
41
+ groups.filter(Boolean).map((group, index) => (react_1.default.createElement(tab_item_1.default, { draggable: true, onDragStart: (e) => {
42
+ e.dataTransfer.setData('groupIndex', String(index));
43
+ }, onDrop: (e) => {
44
+ e.preventDefault();
45
+ if (e.dataTransfer.getData('groupIndex')) {
46
+ const i = e.dataTransfer.getData('groupIndex');
47
+ view.swapGroup(Number(i), index);
48
+ view.selectGroup(index);
49
+ }
50
+ }, key: group.id, group: group, selected: currentGroup && currentGroup.id === group.id, onInputBlur: () => group.unedit(), onInputEnter: (_, name) => group.rename(name), onClick: () => view.selectGroup(index), onClose: () => view.removeGroup(index), onContextMenu: (event) => menuService.onTabContextMenu(event, index), provider: provider, theme: theme }))),
51
+ react_1.default.createElement("div", { className: tab_module_less_1.default.button },
52
+ react_1.default.createElement(tab_item_1.default, { type: common_1.ItemType.add, onClick: () => {
53
+ const index = view.createGroup();
54
+ const group = view.getGroup(index);
55
+ view.createWidget(group);
56
+ view.selectGroup(index);
57
+ }, getKeybinding: (id) => {
58
+ const bindings = keybindingService.getKeybindingsForCommand(id);
59
+ if (Array.isArray(bindings) && bindings[0]) {
60
+ return keybindingService.acceleratorFor(bindings[0], '')[0] || '';
61
+ }
62
+ return '';
63
+ }, onDropdown: (event) => menuService.onDropDownContextMenu(event), provider: provider, theme: theme })))))));
64
+ };
65
+ //# sourceMappingURL=tab.view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tab.view.js","sourceRoot":"","sources":["../../../src/browser/component/tab.view.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ @import '@opensumi/ide-components/lib/style/mixins.less';
2
+
3
+ .terminalWrapper {
4
+ height: 100%;
5
+ width: 100%;
6
+ }
7
+
8
+ .terminalContainer {
9
+ height: 100%;
10
+ width: 100%;
11
+ position: relative;
12
+ }
13
+
14
+ .terminalInstance {
15
+ height: 100%;
16
+ width: 100%;
17
+ }
18
+
19
+ .group {
20
+ height: 100%;
21
+ width: 100%;
22
+ }
23
+
24
+ .terminalCover {
25
+ position: relative;
26
+ height: 100%;
27
+ width: 100%;
28
+ background: var(--terminal-background);
29
+ opacity: 0.8;
30
+ z-index: 2;
31
+ display: flex;
32
+ justify-content: center;
33
+ align-items: center;
34
+ flex-direction: column;
35
+ }
36
+
37
+ .terminalContent {
38
+ height: 100%;
39
+ width: 100%;
40
+ }
41
+
42
+ .terminalContentWrapper {
43
+ height: 100%;
44
+ width: 100%;
45
+ }
46
+
47
+ .terminalFake {
48
+ position: absolute;
49
+ z-index: -999;
50
+ }
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { IMergedEnvironmentVariableCollectionDiff } from '../../common/environmentVariable';
3
+ interface ITerminalVariableProps {
4
+ diff: IMergedEnvironmentVariableCollectionDiff;
5
+ }
6
+ export declare const TerminalVariable: ({ diff }: ITerminalVariableProps) => React.JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=terminal.variable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.variable.d.ts","sourceRoot":"","sources":["../../../src/browser/component/terminal.variable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAEL,wCAAwC,EAEzC,MAAM,kCAAkC,CAAC;AAI1C,UAAU,sBAAsB;IAC9B,IAAI,EAAE,wCAAwC,CAAC;CAChD;AAaD,eAAO,MAAM,gBAAgB,aAAc,sBAAsB,sBA+ChE,CAAC"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TerminalVariable = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
7
+ const environmentVariable_1 = require("../../common/environmentVariable");
8
+ const variable_module_less_1 = tslib_1.__importDefault(require("./variable.module.less"));
9
+ function mergeChanges(source, target) {
10
+ source.forEach((mutators, variable) => {
11
+ mutators.forEach((mutator) => {
12
+ target.add((0, environmentVariable_1.mutatorTypeLabel)(mutator.type, mutator.value, variable));
13
+ });
14
+ });
15
+ }
16
+ const TerminalVariable = ({ diff }) => {
17
+ const addsAndChanges = react_1.default.useMemo(() => {
18
+ const result = new Set();
19
+ if ((diff === null || diff === void 0 ? void 0 : diff.added) && (diff === null || diff === void 0 ? void 0 : diff.added.size) > 0) {
20
+ mergeChanges(diff.added, result);
21
+ }
22
+ if ((diff === null || diff === void 0 ? void 0 : diff.changed) && diff.changed.size > 0) {
23
+ mergeChanges(diff.changed, result);
24
+ }
25
+ return Array.from(result.values());
26
+ }, [diff]);
27
+ const removals = react_1.default.useMemo(() => {
28
+ if (!(diff === null || diff === void 0 ? void 0 : diff.removed) || (diff === null || diff === void 0 ? void 0 : diff.removed.size) === 0) {
29
+ return [];
30
+ }
31
+ const result = new Set();
32
+ mergeChanges(diff.removed, result);
33
+ return Array.from(result.values());
34
+ }, [diff]);
35
+ return (react_1.default.createElement("div", { className: variable_module_less_1.default.variable_container },
36
+ addsAndChanges.length > 0 && (react_1.default.createElement(react_1.default.Fragment, null,
37
+ react_1.default.createElement("h3", null, (0, ide_core_common_1.localize)('terminal.environment.changes')),
38
+ addsAndChanges.map((c, idx) => (react_1.default.createElement("p", { key: c + idx, className: variable_module_less_1.default.variable_change }, c))))),
39
+ removals.length > 0 && (react_1.default.createElement(react_1.default.Fragment, null,
40
+ react_1.default.createElement("h3", null, (0, ide_core_common_1.localize)('terminal.environment.removal')),
41
+ removals.map((c, idx) => (react_1.default.createElement("p", { key: c + idx, className: variable_module_less_1.default.variable_change }, c)))))));
42
+ };
43
+ exports.TerminalVariable = TerminalVariable;
44
+ //# sourceMappingURL=terminal.variable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.variable.js","sourceRoot":"","sources":["../../../src/browser/component/terminal.variable.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAE1B,+DAAqD;AAErD,0EAI0C;AAE1C,0FAA4C;AAM5C,SAAS,YAAY,CACnB,MAAwE,EACxE,MAAmB;IAEnB,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;QACpC,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,MAAM,CAAC,GAAG,CAAC,IAAA,sCAAgB,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAEM,MAAM,gBAAgB,GAAG,CAAC,EAAE,IAAI,EAA0B,EAAE,EAAE;IACnE,MAAM,cAAc,GAAa,eAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAClD,MAAM,MAAM,GAAgB,IAAI,GAAG,EAAE,CAAC;QACtC,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,KAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,IAAI,IAAG,CAAC,EAAE,CAAC;YACxC,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,KAAI,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3C,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,QAAQ,GAAa,eAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC5C,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,CAAA,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,CAAC,IAAI,MAAK,CAAC,EAAE,CAAC;YAC/C,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,MAAM,MAAM,GAAgB,IAAI,GAAG,EAAE,CAAC;QACtC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEnC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACrC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,CACL,uCAAK,SAAS,EAAE,8BAAM,CAAC,kBAAkB;QACtC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5B;YACE,0CAAK,IAAA,0BAAQ,EAAC,8BAA8B,CAAC,CAAM;YAClD,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAC9B,qCAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,8BAAM,CAAC,eAAe,IAC/C,CAAC,CACA,CACL,CAAC,CACD,CACJ;QACA,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,CACtB;YACE,0CAAK,IAAA,0BAAQ,EAAC,8BAA8B,CAAC,CAAM;YAClD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CACxB,qCAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,8BAAM,CAAC,eAAe,IAC/C,CAAC,CACA,CACL,CAAC,CACD,CACJ,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AA/CW,QAAA,gBAAgB,oBA+C3B"}
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import '@xterm/xterm/css/xterm.css';
3
+ declare const _default: () => React.JSX.Element;
4
+ export default _default;
5
+ //# sourceMappingURL=terminal.view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.view.d.ts","sourceRoot":"","sources":["../../../src/browser/component/terminal.view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAmB1B,OAAO,4BAA4B,CAAC;;AAEpC,wBAqFE"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const debounce_1 = tslib_1.__importDefault(require("lodash/debounce"));
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
+ const common_1 = require("../../common");
8
+ const resize_view_1 = tslib_1.__importStar(require("./resize.view"));
9
+ const search_view_1 = require("./search.view");
10
+ const terminal_module_less_1 = tslib_1.__importDefault(require("./terminal.module.less"));
11
+ const terminal_widget_1 = tslib_1.__importDefault(require("./terminal.widget"));
12
+ require("@xterm/xterm/css/xterm.css");
13
+ exports.default = () => {
14
+ const controller = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalController);
15
+ const searchService = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalSearchService);
16
+ const errorService = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalErrorService);
17
+ const network = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalNetwork);
18
+ const wrapperRef = react_1.default.useRef(null);
19
+ const view = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalGroupViewService);
20
+ const currentGroupId = (0, ide_core_browser_1.useAutorun)(view.currentGroupId);
21
+ const currentGroupIndex = (0, ide_core_browser_1.useAutorun)(view.currentGroupIndex);
22
+ const groups = (0, ide_core_browser_1.useAutorun)(view.groups);
23
+ const [themeBackground, setThemeBackground] = react_1.default.useState(controller.themeBackground);
24
+ (0, ide_core_browser_1.useEventEffect)(controller.onThemeBackgroundChange, (themeBackground) => {
25
+ setThemeBackground(themeBackground);
26
+ });
27
+ const [errors, setErrors] = react_1.default.useState(errorService.errors);
28
+ const func = (0, debounce_1.default)(() => {
29
+ setErrors(errorService.errors);
30
+ }, ide_core_browser_1.FRAME_THREE);
31
+ (0, ide_core_browser_1.useEventEffect)(errorService.onErrorsChange, func);
32
+ const renderWidget = react_1.default.useCallback((widget, index) => {
33
+ const client = controller.findClientFromWidgetId(widget.id);
34
+ let error;
35
+ if (client) {
36
+ error = !network.shouldReconnect(client.id) ? errors.get(client.id) : undefined;
37
+ }
38
+ else {
39
+ error = errors.get(widget.id);
40
+ }
41
+ return react_1.default.createElement(terminal_widget_1.default, { show: currentGroupIndex === index, error: error, widget: widget });
42
+ }, [currentGroupIndex, controller, errors, network, view]);
43
+ const [isVisible, setIsVisible] = react_1.default.useState(searchService.isVisible);
44
+ (0, ide_core_browser_1.useEventEffect)(searchService.onVisibleChange, (visible) => {
45
+ setIsVisible(visible);
46
+ });
47
+ react_1.default.useEffect(() => {
48
+ if (wrapperRef.current) {
49
+ controller.initContextKey(wrapperRef.current);
50
+ controller.viewReady.resolve();
51
+ }
52
+ }, [wrapperRef.current]);
53
+ return (react_1.default.createElement("div", { ref: wrapperRef, className: terminal_module_less_1.default.terminalWrapper, style: { backgroundColor: themeBackground }, "data-group-current": currentGroupId },
54
+ isVisible && react_1.default.createElement(search_view_1.TerminalSearch, null),
55
+ groups.map((group, index) => {
56
+ if (!group.activated.get()) {
57
+ return;
58
+ }
59
+ return (react_1.default.createElement("div", { "data-group-rendered": group.activated.get(), key: `terminal-${group.id}`, style: { display: currentGroupIndex === index ? 'block' : 'none' }, className: terminal_module_less_1.default.group, onFocus: controller.focus.bind(controller), onBlur: controller.blur.bind(controller), onContextMenu: controller.onContextMenu.bind(controller) },
60
+ react_1.default.createElement(resize_view_1.default, { shadow: false, useFlex: false, direction: resize_view_1.ResizeDirection.horizontal, group: group, draw: (widget) => renderWidget(widget, index) })));
61
+ })));
62
+ };
63
+ //# sourceMappingURL=terminal.view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.view.js","sourceRoot":"","sources":["../../../src/browser/component/terminal.view.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { ITerminalError, IWidget } from '../../common';
3
+ export interface IProps {
4
+ widget: IWidget;
5
+ show: boolean;
6
+ error: ITerminalError | undefined;
7
+ }
8
+ declare const _default: ({ widget, error, show }: IProps) => React.JSX.Element;
9
+ export default _default;
10
+ //# sourceMappingURL=terminal.widget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.widget.d.ts","sourceRoot":"","sources":["../../../src/browser/component/terminal.widget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAEL,cAAc,EAGd,OAAO,EACR,MAAM,cAAc,CAAC;AAItB,MAAM,WAAW,MAAM;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,cAAc,GAAG,SAAS,CAAC;CACnC;kDA8CwC,MAAM;AAA/C,wBAwCE"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const react_1 = tslib_1.__importDefault(require("react"));
5
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
6
+ const common_1 = require("../../common");
7
+ const terminal_module_less_1 = tslib_1.__importDefault(require("./terminal.module.less"));
8
+ function renderError(error, eService, view) {
9
+ const onRemoveClick = () => {
10
+ view.removeWidget(error.id);
11
+ };
12
+ const onRetryClick = () => {
13
+ eService.fix(error.id);
14
+ };
15
+ if ((error === null || error === void 0 ? void 0 : error.type) === common_1.ETerminalErrorType.CREATE_FAIL) {
16
+ return (react_1.default.createElement("div", { className: terminal_module_less_1.default.terminalCover },
17
+ react_1.default.createElement("div", null,
18
+ (0, ide_core_browser_1.localize)('terminal.can.not.create'),
19
+ ": ",
20
+ error.message),
21
+ react_1.default.createElement("div", null,
22
+ react_1.default.createElement("a", { onClick: onRemoveClick }, (0, ide_core_browser_1.localize)('terminal.stop')),
23
+ (0, ide_core_browser_1.localize)('terminal.or'),
24
+ react_1.default.createElement("a", { onClick: onRetryClick }, (0, ide_core_browser_1.localize)('terminal.try.recreate')))));
25
+ }
26
+ return error.stopped ? (react_1.default.createElement("div", { className: terminal_module_less_1.default.terminalCover },
27
+ react_1.default.createElement("div", null, (0, ide_core_browser_1.localize)('terminal.disconnected')),
28
+ react_1.default.createElement("div", null,
29
+ (0, ide_core_browser_1.localize)('terminal.can.not.reconnect'),
30
+ react_1.default.createElement("a", { onClick: onRetryClick }, (0, ide_core_browser_1.localize)('terminal.try.reconnect'))))) : (react_1.default.createElement("div", { className: terminal_module_less_1.default.terminalCover },
31
+ react_1.default.createElement("div", null, (0, ide_core_browser_1.localize)('terminal.disconnected')),
32
+ react_1.default.createElement("div", null,
33
+ react_1.default.createElement("a", { onClick: onRemoveClick }, (0, ide_core_browser_1.localize)('terminal.stop')),
34
+ (0, ide_core_browser_1.localize)('terminal.or'),
35
+ react_1.default.createElement("a", { onClick: onRetryClick }, (0, ide_core_browser_1.localize)('terminal.try.reconnect')))));
36
+ }
37
+ exports.default = ({ widget, error, show }) => {
38
+ const content = react_1.default.useRef(null);
39
+ const errorService = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalErrorService);
40
+ const view = (0, ide_core_browser_1.useInjectable)(common_1.ITerminalGroupViewService);
41
+ react_1.default.useEffect(() => {
42
+ if (content.current && widget.element) {
43
+ content.current.appendChild(widget.element);
44
+ }
45
+ else if (content.current && !widget.element) {
46
+ const ele = document.createElement('div');
47
+ content.current.appendChild(ele);
48
+ ele.className = terminal_module_less_1.default.terminalContent;
49
+ widget.element = ele;
50
+ }
51
+ }, []);
52
+ react_1.default.useEffect(() => {
53
+ widget.show = show;
54
+ }, [show]);
55
+ react_1.default.useEffect(() => {
56
+ widget.error = !!error;
57
+ }, [error]);
58
+ const onFocus = () => {
59
+ view.selectWidget(widget.id);
60
+ };
61
+ return (react_1.default.createElement("div", { className: terminal_module_less_1.default.terminalContainer },
62
+ error ? renderError(error, errorService, view) : null,
63
+ react_1.default.createElement("div", { "data-term-id": widget.id, style: { display: error ? 'none' : 'block' }, className: terminal_module_less_1.default.terminalContentWrapper, onFocus: onFocus, ref: content })));
64
+ };
65
+ //# sourceMappingURL=terminal.widget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.widget.js","sourceRoot":"","sources":["../../../src/browser/component/terminal.widget.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ .variable_container {
2
+ color: var(--foreground);
3
+
4
+ h3 {
5
+ color: var(--foreground);
6
+ font-size: 14px;
7
+ font-weight: normal;
8
+ }
9
+
10
+ .variable_change {
11
+ margin: 0px;
12
+ font-size: 12px;
13
+ font-weight: bold;
14
+ }
15
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/browser/contribution/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./terminal.command"), exports);
5
+ tslib_1.__exportStar(require("./terminal.lifecycle"), exports);
6
+ tslib_1.__exportStar(require("./terminal.menu"), exports);
7
+ tslib_1.__exportStar(require("./terminal.view"), exports);
8
+ tslib_1.__exportStar(require("./terminal.keybinding"), exports);
9
+ tslib_1.__exportStar(require("./terminal.network"), exports);
10
+ tslib_1.__exportStar(require("./terminal.preference"), exports);
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browser/contribution/index.ts"],"names":[],"mappings":";;;AAAA,6DAAmC;AACnC,+DAAqC;AACrC,0DAAgC;AAChC,0DAAgC;AAChC,gEAAsC;AACtC,6DAAmC;AACnC,gEAAsC"}