@opensumi/ide-terminal-next 3.7.1 → 3.7.2-next-1739859371.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 (97) hide show
  1. package/lib/browser/component/resize.view.d.ts.map +1 -1
  2. package/lib/browser/component/resize.view.js +2 -2
  3. package/lib/browser/component/resize.view.js.map +1 -1
  4. package/lib/browser/component/search.module.less +61 -0
  5. package/lib/browser/component/search.view.d.ts +3 -0
  6. package/lib/browser/component/search.view.d.ts.map +1 -0
  7. package/lib/browser/component/search.view.js +89 -0
  8. package/lib/browser/component/search.view.js.map +1 -0
  9. package/lib/browser/component/tab.item.d.ts.map +1 -1
  10. package/lib/browser/component/tab.item.js +23 -1
  11. package/lib/browser/component/tab.item.js.map +1 -1
  12. package/lib/browser/component/tab.view.d.ts.map +1 -1
  13. package/lib/browser/component/tab.view.js +10 -1
  14. package/lib/browser/component/tab.view.js.map +1 -1
  15. package/lib/browser/component/terminal.module.less +3 -27
  16. package/lib/browser/component/terminal.view.d.ts.map +1 -1
  17. package/lib/browser/component/terminal.view.js +2 -32
  18. package/lib/browser/component/terminal.view.js.map +1 -1
  19. package/lib/browser/component/terminal.widget.d.ts.map +1 -1
  20. package/lib/browser/component/terminal.widget.js +9 -3
  21. package/lib/browser/component/terminal.widget.js.map +1 -1
  22. package/lib/browser/contribution/terminal.view.d.ts.map +1 -1
  23. package/lib/browser/contribution/terminal.view.js +2 -0
  24. package/lib/browser/contribution/terminal.view.js.map +1 -1
  25. package/lib/browser/links/link-manager.d.ts.map +1 -1
  26. package/lib/browser/links/link-manager.js +10 -7
  27. package/lib/browser/links/link-manager.js.map +1 -1
  28. package/lib/browser/links/validated-local-link-provider.d.ts +1 -0
  29. package/lib/browser/links/validated-local-link-provider.d.ts.map +1 -1
  30. package/lib/browser/links/validated-local-link-provider.js +55 -42
  31. package/lib/browser/links/validated-local-link-provider.js.map +1 -1
  32. package/lib/browser/links/word-link-provider.d.ts +29 -0
  33. package/lib/browser/links/word-link-provider.d.ts.map +1 -0
  34. package/lib/browser/links/word-link-provider.js +153 -0
  35. package/lib/browser/links/word-link-provider.js.map +1 -0
  36. package/lib/browser/terminal.client.d.ts +7 -1
  37. package/lib/browser/terminal.client.d.ts.map +1 -1
  38. package/lib/browser/terminal.client.js +9 -2
  39. package/lib/browser/terminal.client.js.map +1 -1
  40. package/lib/browser/terminal.controller.d.ts +1 -2
  41. package/lib/browser/terminal.controller.d.ts.map +1 -1
  42. package/lib/browser/terminal.controller.js +6 -6
  43. package/lib/browser/terminal.controller.js.map +1 -1
  44. package/lib/browser/terminal.hover.manager.d.ts.map +1 -1
  45. package/lib/browser/terminal.hover.manager.js +4 -2
  46. package/lib/browser/terminal.hover.manager.js.map +1 -1
  47. package/lib/browser/terminal.search.d.ts +9 -1
  48. package/lib/browser/terminal.search.d.ts.map +1 -1
  49. package/lib/browser/terminal.search.js +49 -1
  50. package/lib/browser/terminal.search.js.map +1 -1
  51. package/lib/browser/terminal.view.d.ts +1 -0
  52. package/lib/browser/terminal.view.d.ts.map +1 -1
  53. package/lib/browser/terminal.view.js +13 -0
  54. package/lib/browser/terminal.view.js.map +1 -1
  55. package/lib/browser/xterm.d.ts +7 -1
  56. package/lib/browser/xterm.d.ts.map +1 -1
  57. package/lib/browser/xterm.js +12 -1
  58. package/lib/browser/xterm.js.map +1 -1
  59. package/lib/common/client.d.ts +8 -2
  60. package/lib/common/client.d.ts.map +1 -1
  61. package/lib/common/client.js.map +1 -1
  62. package/lib/common/controller.d.ts +16 -0
  63. package/lib/common/controller.d.ts.map +1 -1
  64. package/lib/common/controller.js.map +1 -1
  65. package/lib/common/pty.d.ts +1 -1
  66. package/lib/common/pty.d.ts.map +1 -1
  67. package/lib/common/render.d.ts +3 -0
  68. package/lib/common/render.d.ts.map +1 -1
  69. package/lib/common/render.js.map +1 -1
  70. package/lib/common/xterm.d.ts +8 -2
  71. package/lib/common/xterm.d.ts.map +1 -1
  72. package/lib/common/xterm.js.map +1 -1
  73. package/package.json +18 -18
  74. package/src/browser/component/resize.view.tsx +2 -1
  75. package/src/browser/component/search.module.less +61 -0
  76. package/src/browser/component/search.view.tsx +142 -0
  77. package/src/browser/component/tab.item.tsx +38 -0
  78. package/src/browser/component/tab.view.tsx +12 -0
  79. package/src/browser/component/terminal.module.less +3 -27
  80. package/src/browser/component/terminal.view.tsx +3 -56
  81. package/src/browser/component/terminal.widget.tsx +8 -3
  82. package/src/browser/contribution/terminal.view.ts +2 -0
  83. package/src/browser/links/link-manager.ts +11 -8
  84. package/src/browser/links/validated-local-link-provider.ts +68 -48
  85. package/src/browser/links/word-link-provider.ts +175 -0
  86. package/src/browser/terminal.client.ts +13 -2
  87. package/src/browser/terminal.controller.ts +7 -8
  88. package/src/browser/terminal.hover.manager.ts +4 -4
  89. package/src/browser/terminal.search.ts +49 -2
  90. package/src/browser/terminal.view.ts +17 -0
  91. package/src/browser/xterm.ts +14 -1
  92. package/src/common/client.ts +7 -2
  93. package/src/common/controller.ts +20 -0
  94. package/src/common/pty.ts +1 -1
  95. package/src/common/render.ts +3 -0
  96. package/src/common/xterm-private.d.ts +7 -4
  97. package/src/common/xterm.ts +6 -2
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/common/controller.ts"],"names":[],"mappings":";;;AAmEa,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AAgDpD,QAAA,sBAAsB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAa1D,QAAA,yBAAyB,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAiChE,QAAA,4BAA4B,GAAG,MAAM,CAAC,8BAA8B,CAAC,CAAC"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/common/controller.ts"],"names":[],"mappings":";;;AAqEa,QAAA,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AA2DpD,QAAA,sBAAsB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAkB1D,QAAA,yBAAyB,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAmChE,QAAA,4BAA4B,GAAG,MAAM,CAAC,8BAA8B,CAAC,CAAC"}
@@ -445,7 +445,7 @@ export interface IShellLaunchConfig {
445
445
  /**
446
446
  * The color ID to use for this terminal. If not specified it will use the default fallback
447
447
  */
448
- color?: vscode.ThemeColor;
448
+ color?: string | vscode.ThemeColor;
449
449
  /**
450
450
  * When a parent terminal is provided via API, the group needs
451
451
  * to find the index in order to place the child
@@ -1 +1 @@
1
- {"version":3,"file":"pty.d.ts","sourceRoot":"","sources":["../../src/common/pty.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pty.d.ts","sourceRoot":"","sources":["../../src/common/pty.ts"],"names":[],"mappings":"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"}
@@ -15,8 +15,11 @@ export interface ItemProps {
15
15
  onDropdown?: (event: React.MouseEvent<HTMLElement>) => void;
16
16
  onContextMenu?: (event: React.MouseEvent<HTMLElement>) => void;
17
17
  getKeybinding?: (command: string) => string;
18
+ onDrop?: (event: React.DragEvent) => void;
19
+ onDragStart?: (event: React.DragEvent) => void;
18
20
  provider: ITerminalRenderProvider;
19
21
  theme: ThemeType;
22
+ draggable?: boolean;
20
23
  }
21
24
  export declare const ITerminalRenderProvider: unique symbol;
22
25
  export interface ITerminalRenderProvider {
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/common/render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,oBAAY,QAAQ;IAClB,IAAI,IAAI;IACR,GAAG,IAAA;CACJ;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,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,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC/D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C,QAAQ,EAAE,uBAAuB,CAAC;IAClC,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,eAAO,MAAM,uBAAuB,eAAmC,CAAC;AACxE,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACnD,aAAa,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;CACnD"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/common/render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,oBAAY,QAAQ;IAClB,IAAI,IAAI;IACR,GAAG,IAAA;CACJ;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,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,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC5D,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC/D,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;IAC/C,QAAQ,EAAE,uBAAuB,CAAC;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,uBAAuB,eAAmC,CAAC;AACxE,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACnD,aAAa,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;CACnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/common/render.ts"],"names":[],"mappings":";;;AAIA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,uCAAQ,CAAA;IACR,qCAAG,CAAA;AACL,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAiBY,QAAA,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/common/render.ts"],"names":[],"mappings":";;;AAIA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,uCAAQ,CAAA;IACR,qCAAG,CAAA;AACL,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB;AAoBY,QAAA,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
- import { ITerminalOptions, ITheme, Terminal } from '@xterm/xterm';
1
+ import { ISearchOptions } from '@xterm/addon-search';
2
+ import { IEvent, ITerminalOptions, ITheme, Terminal } from '@xterm/xterm';
2
3
  import { SupportedOptions } from './preference';
3
4
  export declare enum RenderType {
4
5
  Canvas = "canvas",
@@ -9,11 +10,16 @@ export interface IXTerm {
9
10
  raw: Terminal;
10
11
  container: HTMLDivElement;
11
12
  xtermOptions: ITerminalOptions & SupportedOptions;
13
+ onSearchResultsChange: IEvent<{
14
+ resultIndex: number;
15
+ resultCount: number;
16
+ }>;
12
17
  copySelection(): Promise<void>;
13
18
  onSelectionChange(): Promise<void>;
14
19
  open(): void;
15
20
  fit(): void;
16
- findNext(text: string): boolean;
21
+ findNext(text: string, searchOptions?: ISearchOptions): boolean;
22
+ findPrevious(text: string, searchOptions?: ISearchOptions): boolean;
17
23
  closeSearch(): void;
18
24
  updatePreferences(options: SupportedOptions): void;
19
25
  updateTheme(theme: ITheme | undefined): void;
@@ -1 +1 @@
1
- {"version":3,"file":"xterm.d.ts","sourceRoot":"","sources":["../../src/common/xterm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAElE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,MAAM,WAAW,MAAM;IACrB,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,cAAc,CAAC;IAC1B,YAAY,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAElD,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,IAAI,IAAI,CAAC;IACb,GAAG,IAAI,IAAI,CAAC;IACZ,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,WAAW,IAAI,IAAI,CAAC;IACpB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACnD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;CAC9C"}
1
+ {"version":3,"file":"xterm.d.ts","sourceRoot":"","sources":["../../src/common/xterm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,oBAAY,UAAU;IACpB,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED,MAAM,WAAW,MAAM;IACrB,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,cAAc,CAAC;IAC1B,YAAY,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;IAElD,qBAAqB,EAAE,MAAM,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAE5E,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,IAAI,IAAI,CAAC;IACb,GAAG,IAAI,IAAI,CAAC;IACZ,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;IAChE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC;IACpE,WAAW,IAAI,IAAI,CAAC;IACpB,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACnD,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;CAC9C"}
@@ -1 +1 @@
1
- {"version":3,"file":"xterm.js","sourceRoot":"","sources":["../../src/common/xterm.ts"],"names":[],"mappings":";;;AAIA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,+BAAiB,CAAA;IACjB,6BAAe,CAAA;IACf,yBAAW,CAAA;AACb,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB"}
1
+ {"version":3,"file":"xterm.js","sourceRoot":"","sources":["../../src/common/xterm.ts"],"names":[],"mappings":";;;AAKA,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,+BAAiB,CAAA;IACjB,6BAAe,CAAA;IACf,yBAAW,CAAA;AACb,CAAC,EAJW,UAAU,0BAAV,UAAU,QAIrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-terminal-next",
3
- "version": "3.7.1",
3
+ "version": "3.7.2-next-1739859371.0",
4
4
  "files": [
5
5
  "lib",
6
6
  "src"
@@ -17,11 +17,11 @@
17
17
  "url": "git@github.com:opensumi/core.git"
18
18
  },
19
19
  "dependencies": {
20
- "@opensumi/ide-connection": "3.7.1",
21
- "@opensumi/ide-core-common": "3.7.1",
22
- "@opensumi/ide-core-node": "3.7.1",
23
- "@opensumi/ide-file-service": "3.7.1",
24
- "@opensumi/ide-utils": "3.7.1",
20
+ "@opensumi/ide-connection": "3.7.2-next-1739859371.0",
21
+ "@opensumi/ide-core-common": "3.7.2-next-1739859371.0",
22
+ "@opensumi/ide-core-node": "3.7.2-next-1739859371.0",
23
+ "@opensumi/ide-file-service": "3.7.2-next-1739859371.0",
24
+ "@opensumi/ide-utils": "3.7.2-next-1739859371.0",
25
25
  "@xterm/addon-canvas": "0.7.0",
26
26
  "@xterm/addon-fit": "0.10.0",
27
27
  "@xterm/addon-search": "0.15.0",
@@ -31,19 +31,19 @@
31
31
  "os-locale": "^4.0.0"
32
32
  },
33
33
  "devDependencies": {
34
- "@opensumi/ide-components": "3.7.1",
35
- "@opensumi/ide-core-browser": "3.7.1",
36
- "@opensumi/ide-dev-tool": "3.7.1",
37
- "@opensumi/ide-editor": "3.7.1",
38
- "@opensumi/ide-main-layout": "3.7.1",
39
- "@opensumi/ide-monaco": "3.7.1",
40
- "@opensumi/ide-overlay": "3.7.1",
41
- "@opensumi/ide-status-bar": "3.7.1",
42
- "@opensumi/ide-theme": "3.7.1",
43
- "@opensumi/ide-variable": "3.7.1",
44
- "@opensumi/ide-workspace": "3.7.1",
34
+ "@opensumi/ide-components": "3.7.2-next-1739859371.0",
35
+ "@opensumi/ide-core-browser": "3.7.2-next-1739859371.0",
36
+ "@opensumi/ide-dev-tool": "3.7.2-next-1739859371.0",
37
+ "@opensumi/ide-editor": "3.7.2-next-1739859371.0",
38
+ "@opensumi/ide-main-layout": "3.7.2-next-1739859371.0",
39
+ "@opensumi/ide-monaco": "3.7.2-next-1739859371.0",
40
+ "@opensumi/ide-overlay": "3.7.2-next-1739859371.0",
41
+ "@opensumi/ide-status-bar": "3.7.2-next-1739859371.0",
42
+ "@opensumi/ide-theme": "3.7.2-next-1739859371.0",
43
+ "@opensumi/ide-variable": "3.7.2-next-1739859371.0",
44
+ "@opensumi/ide-workspace": "3.7.2-next-1739859371.0",
45
45
  "@types/http-proxy": "^1.17.2",
46
46
  "http-proxy": "^1.18.0"
47
47
  },
48
- "gitHead": "222d1329fb66dfc168696348c2512e1c3bbaf622"
48
+ "gitHead": "3ec13e282e0fa712a5923012f1c9840083e63b3d"
49
49
  }
@@ -24,7 +24,6 @@ export interface IResizeViewProps {
24
24
 
25
25
  const ResizeItem = ({ index, widget, wholeWidth, setEvent, self, left, right, last }) => {
26
26
  const shadowDynamic = useAutorun(widget.shadowDynamic);
27
-
28
27
  return (
29
28
  <div key={`resize-item-${index}`} style={{ width: `${shadowDynamic}%` }} className={styles.resizeHandler}>
30
29
  <ResizeDelegate
@@ -88,6 +87,7 @@ export default (props: IResizeViewProps) => {
88
87
 
89
88
  return (
90
89
  <ResizeItem
90
+ key={index}
91
91
  index={index}
92
92
  widget={widget}
93
93
  wholeWidth={wholeWidth}
@@ -104,6 +104,7 @@ export default (props: IResizeViewProps) => {
104
104
  {widgets &&
105
105
  widgets.map((widget) => (
106
106
  <ResizePanelItem
107
+ key={widget.id}
107
108
  widget={widget}
108
109
  dynamic={shadow ? widget.dynamic : widget.shadowDynamic}
109
110
  draw={props.draw}
@@ -0,0 +1,61 @@
1
+ @option-size: 20px;
2
+
3
+ .terminalSearch {
4
+ display: flex;
5
+ justify-content: center;
6
+ align-items: center;
7
+ position: absolute;
8
+ z-index: 999;
9
+ right: 16px;
10
+ border-radius: 2px;
11
+ padding: 6px 8px;
12
+ box-shadow: rgba(0, 0, 0, 0.133) 0px 3.2px 7.2px 0px, rgba(0, 0, 0, 0.11) 0px 0.6px 1.8px 0px;
13
+ background: var(--kt-panelTitle-background);
14
+
15
+ .searchField {
16
+ &:focus {
17
+ border-color: var(--focusBorder);
18
+ }
19
+
20
+ .optionBtn {
21
+ width: @option-size;
22
+ height: @option-size;
23
+ margin: 0 1px;
24
+ box-sizing: border-box;
25
+ display: flex;
26
+ justify-content: center;
27
+ user-select: none;
28
+ background-repeat: no-repeat;
29
+ background-position: center;
30
+ border: 1px solid transparent;
31
+ cursor: pointer;
32
+ opacity: 0.7;
33
+
34
+ &:hover {
35
+ opacity: 1;
36
+ }
37
+
38
+ &::before {
39
+ display: inline-block;
40
+ height: @option-size - 2;
41
+ line-height: @option-size - 2;
42
+ }
43
+
44
+ &.select {
45
+ background-color: var(--inputOption-activeBackground);
46
+ border-color: var(--inputOption-activeBorder);
47
+ opacity: 1;
48
+ }
49
+ }
50
+ }
51
+
52
+ .panelBtn {
53
+ padding: 0px 6px;
54
+ cursor: pointer;
55
+ }
56
+
57
+ .searchResult {
58
+ margin: 0 4px;
59
+ font-size: 14px;
60
+ }
61
+ }
@@ -0,0 +1,142 @@
1
+ import cls from 'classnames';
2
+ import React from 'react';
3
+
4
+ import { ValidateInput } from '@opensumi/ide-components';
5
+ import { getIcon, localize, useInjectable } from '@opensumi/ide-core-browser';
6
+
7
+ import { ISearchResult, ITerminalSearchService } from '../../common';
8
+
9
+ import styles from './search.module.less';
10
+
11
+ export const TerminalSearch: React.FC<{}> = React.memo((props) => {
12
+ const searchService = useInjectable<ITerminalSearchService>(ITerminalSearchService);
13
+ const [UIState, setUIState] = React.useState(searchService.UIState);
14
+ const [searchResult, setSearchResult] = React.useState<ISearchResult | null>(null);
15
+ const [inputText, setInputText] = React.useState(searchService.text || '');
16
+ const inputRef = React.useRef<HTMLInputElement>(null);
17
+
18
+ React.useEffect(() => {
19
+ const dispose = searchService.onVisibleChange((show) => {
20
+ if (show && inputRef.current) {
21
+ inputRef.current.focus();
22
+
23
+ if (inputRef.current.value.length > 0) {
24
+ inputRef.current.setSelectionRange(0, inputRef.current.value.length);
25
+ }
26
+ }
27
+ });
28
+ return () => dispose.dispose();
29
+ }, [searchService]);
30
+
31
+ React.useEffect(() => {
32
+ if (!searchService.onResultChange) {
33
+ return;
34
+ }
35
+
36
+ const dispose = searchService.onResultChange((event) => {
37
+ setSearchResult(event);
38
+ });
39
+
40
+ return () => dispose.dispose();
41
+ }, [searchService]);
42
+
43
+ const searchInput = React.useCallback(
44
+ (event: React.ChangeEvent<HTMLInputElement>) => {
45
+ searchService.text = event.target.value;
46
+ searchService.search();
47
+ setInputText(event.target.value);
48
+ },
49
+ [searchService],
50
+ );
51
+
52
+ const searchKeyDown = React.useCallback(
53
+ (event: React.KeyboardEvent<HTMLInputElement>) => {
54
+ if (event.key === 'Enter') {
55
+ searchService.search();
56
+ }
57
+
58
+ if (event.key === 'Escape') {
59
+ searchService.close();
60
+ searchService.clear();
61
+ }
62
+ },
63
+ [searchService],
64
+ );
65
+
66
+ const toggleMatchCase = React.useCallback(() => {
67
+ searchService.updateUIState({ isMatchCase: !UIState.isMatchCase });
68
+ setUIState(searchService.UIState);
69
+ }, [searchService, UIState]);
70
+
71
+ const toggleRegex = React.useCallback(() => {
72
+ searchService.updateUIState({ isUseRegexp: !UIState.isUseRegexp });
73
+ setUIState(searchService.UIState);
74
+ }, [searchService, UIState]);
75
+
76
+ const toggleWholeWord = React.useCallback(() => {
77
+ searchService.updateUIState({ isWholeWord: !UIState.isWholeWord });
78
+ setUIState(searchService.UIState);
79
+ }, [searchService, UIState]);
80
+
81
+ const searchNext = React.useCallback(() => {
82
+ searchService.searchNext();
83
+ }, [searchService]);
84
+
85
+ const searchPrev = React.useCallback(() => {
86
+ searchService.searchPrevious();
87
+ }, [searchService]);
88
+
89
+ const close = React.useCallback(() => {
90
+ searchService.close();
91
+ }, [searchService]);
92
+
93
+ return (
94
+ <div className={styles.terminalSearch}>
95
+ <ValidateInput
96
+ className={styles.searchField}
97
+ autoFocus
98
+ id='search-input-field'
99
+ title={localize('search.input.placeholder')}
100
+ type='text'
101
+ value={inputText}
102
+ placeholder={localize('common.find')}
103
+ onKeyDown={searchKeyDown}
104
+ onChange={searchInput}
105
+ ref={inputRef}
106
+ validateMessage={undefined}
107
+ addonAfter={[
108
+ <span
109
+ key={localize('search.caseDescription')}
110
+ className={cls(getIcon('ab'), styles['match-case'], styles.optionBtn, {
111
+ [styles.select]: UIState.isMatchCase,
112
+ })}
113
+ title={localize('search.caseDescription')}
114
+ onClick={toggleMatchCase}
115
+ ></span>,
116
+ <span
117
+ key={localize('search.wordsDescription')}
118
+ className={cls(getIcon('abl'), styles['whole-word'], styles.optionBtn, {
119
+ [styles.select]: UIState.isWholeWord,
120
+ })}
121
+ title={localize('search.wordsDescription')}
122
+ onClick={toggleWholeWord}
123
+ ></span>,
124
+ <span
125
+ key={localize('search.regexDescription')}
126
+ className={cls(getIcon('regex'), styles['use-regexp'], styles.optionBtn, {
127
+ [styles.select]: UIState.isUseRegexp,
128
+ })}
129
+ title={localize('search.regexDescription')}
130
+ onClick={toggleRegex}
131
+ ></span>,
132
+ ]}
133
+ />
134
+ <div className={styles.searchResult}>
135
+ {searchResult ? `${searchResult.resultIndex + 1}/${searchResult.resultCount}` : '0/0'}
136
+ </div>
137
+ <div className={cls(styles.panelBtn, getIcon('up'))} onClick={searchPrev}></div>
138
+ <div className={cls(styles.panelBtn, getIcon('down'))} onClick={searchNext}></div>
139
+ <div className={cls(styles.panelBtn, getIcon('close'))} onClick={close}></div>
140
+ </div>
141
+ );
142
+ });
@@ -72,8 +72,46 @@ export const renderInfoItem = (props: ItemProps) => {
72
72
  }
73
73
  }
74
74
 
75
+ const handleDragStart = useCallback(
76
+ (e: React.DragEvent<HTMLDivElement>) => {
77
+ props.onDragStart?.(e);
78
+ },
79
+ [props.onDragStart],
80
+ );
81
+
82
+ const handleDragOver = useCallback(
83
+ (e: React.DragEvent<HTMLDivElement>) => {
84
+ e.preventDefault();
85
+ if (ref.current) {
86
+ ref.current.classList.add('on-drag-over');
87
+ }
88
+ },
89
+ [ref],
90
+ );
91
+
92
+ const handleDragLeave = useCallback(() => {
93
+ if (ref.current) {
94
+ ref.current.classList.remove('on-drag-over');
95
+ }
96
+ }, [ref]);
97
+
98
+ const handleDrop = useCallback(
99
+ (e: React.DragEvent<HTMLDivElement>) => {
100
+ if (ref.current) {
101
+ ref.current.classList.remove('on-drag-over');
102
+ }
103
+ props.onDrop?.(e);
104
+ },
105
+ [ref, props.onDrop],
106
+ );
107
+
75
108
  return (
76
109
  <div
110
+ draggable={props.draggable}
111
+ onDragStart={handleDragStart}
112
+ onDragOver={handleDragOver}
113
+ onDragLeave={handleDragLeave}
114
+ onDrop={handleDrop}
77
115
  ref={ref}
78
116
  className={cls({
79
117
  [styles_item_container]: true,
@@ -46,6 +46,18 @@ export default () => {
46
46
  <div className={styles_tab_contents}>
47
47
  {groups.filter(Boolean).map((group, index) => (
48
48
  <TabItem
49
+ draggable={true}
50
+ onDragStart={(e) => {
51
+ e.dataTransfer.setData('groupIndex', String(index));
52
+ }}
53
+ onDrop={(e: React.DragEvent) => {
54
+ e.preventDefault();
55
+ if (e.dataTransfer.getData('groupIndex')) {
56
+ const i = e.dataTransfer.getData('groupIndex');
57
+ view.swapGroup(Number(i), index);
58
+ view.selectGroup(index);
59
+ }
60
+ }}
49
61
  key={group.id}
50
62
  group={group}
51
63
  selected={currentGroup && currentGroup.id === group.id}
@@ -39,33 +39,9 @@
39
39
  width: 100%;
40
40
  }
41
41
 
42
- .terminalSearch {
43
- display: flex;
44
- justify-content: center;
45
- align-items: center;
46
- position: absolute;
47
- z-index: 999;
48
- right: 16px;
49
- border-radius: 2px;
50
- box-shadow: rgba(0, 0, 0, 0.133) 0px 3.2px 7.2px 0px, rgba(0, 0, 0, 0.11) 0px 0.6px 1.8px 0px;
51
- background: var(--kt-panelTitle-background);
52
-
53
- input {
54
- height: 28px;
55
- padding: 0px 8px;
56
- font-size: 12px;
57
- border-style: solid;
58
- border-width: 1px;
59
- border-color: transparent;
60
-
61
- &:focus {
62
- border-color: var(--focusBorder);
63
- }
64
- }
65
- .closeBtn {
66
- padding: 0px 6px;
67
- cursor: pointer;
68
- }
42
+ .terminalContentWrapper {
43
+ height: 100%;
44
+ width: 100%;
69
45
  }
70
46
 
71
47
  .terminalFake {
@@ -1,8 +1,7 @@
1
- import cls from 'classnames';
2
1
  import debounce from 'lodash/debounce';
3
2
  import React from 'react';
4
3
 
5
- import { FRAME_THREE, getIcon, localize, useAutorun, useEventEffect, useInjectable } from '@opensumi/ide-core-browser';
4
+ import { FRAME_THREE, useAutorun, useEventEffect, useInjectable } from '@opensumi/ide-core-browser';
6
5
 
7
6
  import {
8
7
  ITerminalController,
@@ -15,6 +14,7 @@ import {
15
14
  } from '../../common';
16
15
 
17
16
  import ResizeView, { ResizeDirection } from './resize.view';
17
+ import { TerminalSearch } from './search.view';
18
18
  import styles from './terminal.module.less';
19
19
  import TerminalWidget from './terminal.widget';
20
20
 
@@ -26,7 +26,6 @@ export default () => {
26
26
  const errorService = useInjectable<ITerminalErrorService>(ITerminalErrorService);
27
27
  const network = useInjectable<ITerminalNetwork>(ITerminalNetwork);
28
28
 
29
- const inputRef = React.useRef<HTMLInputElement>(null);
30
29
  const wrapperRef = React.useRef<HTMLDivElement | null>(null);
31
30
 
32
31
  const view = useInjectable<ITerminalGroupViewService>(ITerminalGroupViewService);
@@ -34,19 +33,6 @@ export default () => {
34
33
  const currentGroupIndex = useAutorun(view.currentGroupIndex);
35
34
  const groups = useAutorun(view.groups);
36
35
 
37
- React.useEffect(() => {
38
- const dispose = searchService.onVisibleChange((show) => {
39
- if (show && inputRef.current) {
40
- inputRef.current.focus();
41
-
42
- if (inputRef.current.value.length > 0) {
43
- inputRef.current.setSelectionRange(0, inputRef.current.value.length);
44
- }
45
- }
46
- });
47
- return () => dispose.dispose();
48
- }, [searchService, inputRef.current]);
49
-
50
36
  const [themeBackground, setThemeBackground] = React.useState(controller.themeBackground);
51
37
 
52
38
  useEventEffect(controller.onThemeBackgroundChange, (themeBackground) => {
@@ -78,31 +64,6 @@ export default () => {
78
64
  setIsVisible(visible);
79
65
  });
80
66
 
81
- const [inputText, setInputText] = React.useState('');
82
-
83
- const searchInput = React.useCallback(
84
- (event: React.ChangeEvent<HTMLInputElement>) => {
85
- searchService.text = event.target.value;
86
- searchService.search();
87
- setInputText(event.target.value);
88
- },
89
- [searchService],
90
- );
91
-
92
- const searchKeyDown = React.useCallback(
93
- (event: React.KeyboardEvent<HTMLInputElement>) => {
94
- if (event.key === 'Enter') {
95
- searchService.search();
96
- }
97
-
98
- if (event.key === 'Escape') {
99
- searchService.close();
100
- searchService.clear();
101
- }
102
- },
103
- [searchService],
104
- );
105
-
106
67
  React.useEffect(() => {
107
68
  if (wrapperRef.current) {
108
69
  controller.initContextKey(wrapperRef.current);
@@ -117,21 +78,7 @@ export default () => {
117
78
  style={{ backgroundColor: themeBackground }}
118
79
  data-group-current={currentGroupId}
119
80
  >
120
- {isVisible && (
121
- <div className={styles.terminalSearch}>
122
- <div className='kt-input-box'>
123
- <input
124
- autoFocus
125
- ref={inputRef}
126
- placeholder={localize('common.find')}
127
- value={inputText}
128
- onChange={searchInput}
129
- onKeyDown={searchKeyDown}
130
- />
131
- </div>
132
- <div className={cls(styles.closeBtn, getIcon('close'))} onClick={() => searchService.close()}></div>
133
- </div>
134
- )}
81
+ {isVisible && <TerminalSearch />}
135
82
  {groups.map((group, index) => {
136
83
  if (!group.activated.get()) {
137
84
  return;
@@ -68,8 +68,13 @@ export default ({ widget, error, show }: IProps) => {
68
68
  const view = useInjectable<ITerminalGroupViewService>(ITerminalGroupViewService);
69
69
 
70
70
  React.useEffect(() => {
71
- if (content.current) {
72
- widget.element = content.current;
71
+ if (content.current && widget.element) {
72
+ content.current.appendChild(widget.element);
73
+ } else if (content.current && !widget.element) {
74
+ const ele = document.createElement('div');
75
+ content.current.appendChild(ele);
76
+ ele.className = styles.terminalContent;
77
+ widget.element = ele;
73
78
  }
74
79
  }, []);
75
80
 
@@ -91,7 +96,7 @@ export default ({ widget, error, show }: IProps) => {
91
96
  <div
92
97
  data-term-id={widget.id}
93
98
  style={{ display: error ? 'none' : 'block' }}
94
- className={styles.terminalContent}
99
+ className={styles.terminalContentWrapper}
95
100
  onFocus={onFocus}
96
101
  ref={content}
97
102
  ></div>
@@ -56,6 +56,8 @@ export class TerminalRenderContribution implements ComponentContribution, TabBar
56
56
  activateKeyBinding: 'ctrl+`',
57
57
  containerId: TerminalRenderContribution.viewId,
58
58
  titleComponent: TerminalTabs,
59
+ draggable: true,
60
+ hideLocationTab: ['right'],
59
61
  },
60
62
  );
61
63
  }