@opensumi/ide-core-browser 2.23.3 → 2.23.4-rc-1681355069.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 (46) hide show
  1. package/lib/bootstrap/app.d.ts.map +1 -1
  2. package/lib/bootstrap/app.js +6 -8
  3. package/lib/bootstrap/app.js.map +1 -1
  4. package/lib/bootstrap/inner-providers.js +4 -4
  5. package/lib/bootstrap/inner-providers.js.map +1 -1
  6. package/lib/components/layout/default-layout.d.ts.map +1 -1
  7. package/lib/components/layout/default-layout.js +2 -2
  8. package/lib/components/layout/default-layout.js.map +1 -1
  9. package/lib/components/layout/layout.d.ts +4 -4
  10. package/lib/components/layout/split-panel.d.ts.map +1 -1
  11. package/lib/components/layout/split-panel.js +1 -1
  12. package/lib/components/layout/split-panel.js.map +1 -1
  13. package/lib/components/resize/resize.d.ts.map +1 -1
  14. package/lib/components/resize/resize.js +50 -27
  15. package/lib/components/resize/resize.js.map +1 -1
  16. package/lib/react-providers/slot.d.ts +0 -3
  17. package/lib/react-providers/slot.d.ts.map +1 -1
  18. package/lib/react-providers/slot.js +3 -3
  19. package/lib/react-providers/slot.js.map +1 -1
  20. package/lib/utils/electron.d.ts +1 -1
  21. package/lib/utils/electron.d.ts.map +1 -1
  22. package/lib/utils/electron.js +26 -1
  23. package/lib/utils/electron.js.map +1 -1
  24. package/lib/utils/index.d.ts +0 -1
  25. package/lib/utils/index.d.ts.map +1 -1
  26. package/lib/utils/index.js +0 -1
  27. package/lib/utils/index.js.map +1 -1
  28. package/lib/utils/label.d.ts +1 -1
  29. package/lib/utils/label.d.ts.map +1 -1
  30. package/lib/utils/label.js +11 -4
  31. package/lib/utils/label.js.map +1 -1
  32. package/package.json +5 -5
  33. package/src/bootstrap/app.ts +2 -3
  34. package/src/bootstrap/inner-providers.ts +4 -4
  35. package/src/components/layout/default-layout.tsx +4 -2
  36. package/src/components/layout/split-panel.tsx +4 -2
  37. package/src/components/resize/resize.tsx +50 -26
  38. package/src/react-providers/slot.tsx +9 -8
  39. package/src/utils/electron.ts +35 -2
  40. package/src/utils/index.ts +0 -1
  41. package/src/utils/label.tsx +17 -4
  42. package/lib/utils/parse.d.ts +0 -26
  43. package/lib/utils/parse.d.ts.map +0 -1
  44. package/lib/utils/parse.js +0 -81
  45. package/lib/utils/parse.js.map +0 -1
  46. package/src/utils/parse.ts +0 -82
@@ -1 +1 @@
1
- {"version":3,"file":"slot.js","sourceRoot":"","sources":["../../src/react-providers/slot.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slot.js","sourceRoot":"","sources":["../../src/react-providers/slot.tsx"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export interface IElectronIpcRenderer {
7
7
  removeAllListeners(channel?: string): any;
8
8
  send(channel: string, ...args: any[]): void;
9
9
  }
10
- export declare function createElectronMainApi(name: string): IElectronMainApi<any>;
10
+ export declare function createElectronMainApi(name: string, enableCaptured?: boolean): IElectronMainApi<any>;
11
11
  export declare const electronEnv: {
12
12
  currentWindowId: number;
13
13
  currentWebContentsId: number;
@@ -1 +1 @@
1
- {"version":3,"file":"electron.d.ts","sourceRoot":"","sources":["../../src/utils/electron.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,MAAM,WAAW,oBAAoB;IACnC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,OAAE;IACpE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,OAAE;IACtE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,OAAE;IAChF,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,OAAE;IACrC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CAC7C;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CA6CzE;AAED,eAAO,MAAM,WAAW,EAAE;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,oBAAoB,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACI,CAAC;AAM1B,MAAM,WAAW,4BAA4B;IAC3C,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAEnF,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAClF;AAED,eAAO,MAAM,4BAA4B,eAAyC,CAAC;AAEnF,wBAAgB,8BAA8B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAStF"}
1
+ {"version":3,"file":"electron.d.ts","sourceRoot":"","sources":["../../src/utils/electron.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAIlE,MAAM,WAAW,oBAAoB;IACnC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,OAAE;IACpE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,OAAE;IACtE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,OAAE;IAChF,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,OAAE;IACrC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CAC7C;AAyBD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAuDnG;AAED,eAAO,MAAM,WAAW,EAAE;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,oBAAoB,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACI,CAAC;AAM1B,MAAM,WAAW,4BAA4B;IAC3C,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IAEnF,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;CAClF;AAED,eAAO,MAAM,4BAA4B,eAAyC,CAAC;AAEnF,wBAAgB,8BAA8B,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAStF"}
@@ -1,12 +1,28 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createElectronClientConnection = exports.IElectronNativeDialogService = exports.electronEnv = exports.createElectronMainApi = void 0;
4
- function createElectronMainApi(name) {
4
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
5
+ const getCapturer = () => {
6
+ var _a;
7
+ if ((_a = window.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__) === null || _a === void 0 ? void 0 : _a.captureIPC) {
8
+ return window.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__.captureIPC;
9
+ }
10
+ return;
11
+ };
12
+ const capture = (message) => {
13
+ const capturer = getCapturer();
14
+ if (!(0, ide_core_common_1.isUndefined)(capture)) {
15
+ // if OpenSumi DevTools is opended
16
+ capturer(message);
17
+ }
18
+ };
19
+ function createElectronMainApi(name, enableCaptured) {
5
20
  let id = 0;
6
21
  return new Proxy({
7
22
  on: (event, listener) => {
8
23
  const wrappedListener = (e, eventName, ...args) => {
9
24
  if (eventName === event) {
25
+ enableCaptured && capture({ type: 'event', service: name, method: event, args });
10
26
  return listener(...args);
11
27
  }
12
28
  };
@@ -26,6 +42,7 @@ function createElectronMainApi(name) {
26
42
  return async (...args) => new Promise((resolve, reject) => {
27
43
  const requestId = id++;
28
44
  ElectronIpcRenderer.send('request:' + name, method, requestId, ...args);
45
+ enableCaptured && capture({ type: 'request', service: name, method: String(method), requestId, args });
29
46
  const listener = (event, id, error, result) => {
30
47
  if (id === requestId) {
31
48
  ElectronIpcRenderer.removeListener('response:' + name, listener);
@@ -37,6 +54,14 @@ function createElectronMainApi(name) {
37
54
  else {
38
55
  resolve(result);
39
56
  }
57
+ enableCaptured &&
58
+ capture({
59
+ type: 'response',
60
+ service: name,
61
+ method: String(method),
62
+ requestId,
63
+ args: [error, result],
64
+ });
40
65
  }
41
66
  };
42
67
  ElectronIpcRenderer.on('response:' + name, listener);
@@ -1 +1 @@
1
- {"version":3,"file":"electron.js","sourceRoot":"","sources":["../../src/utils/electron.ts"],"names":[],"mappings":";;;AAcA,SAAgB,qBAAqB,CAAC,IAAY;IAChD,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,OAAO,IAAI,KAAK,CACd;QACE,EAAE,EAAE,CAAC,KAAa,EAAE,QAA2B,EAAe,EAAE;YAC9D,MAAM,eAAe,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE;gBAChD,IAAI,SAAS,KAAK,KAAK,EAAE;oBACvB,OAAO,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;iBAC1B;YACH,CAAC,CAAC;YACF,mBAAmB,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC;YACzD,OAAO;gBACL,OAAO,EAAE,GAAG,EAAE;oBACZ,mBAAmB,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC;gBACvE,CAAC;aACF,CAAC;QACJ,CAAC;KACF,EACD;QACE,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YACtB,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;aACvB;iBAAM;gBACL,OAAO,KAAK,EAAE,GAAG,IAAS,EAAE,EAAE,CAC5B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC9B,MAAM,SAAS,GAAG,EAAE,EAAE,CAAC;oBACvB,mBAAmB,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;oBACxE,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBAC5C,IAAI,EAAE,KAAK,SAAS,EAAE;4BACpB,mBAAmB,CAAC,cAAc,CAAC,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC;4BACjE,IAAI,KAAK,EAAE;gCACT,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gCACnC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gCACtB,MAAM,CAAC,CAAC,CAAC,CAAC;6BACX;iCAAM;gCACL,OAAO,CAAC,MAAM,CAAC,CAAC;6BACjB;yBACF;oBACH,CAAC,CAAC;oBACF,mBAAmB,CAAC,EAAE,CAAC,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;aACN;QACH,CAAC;KACF,CACF,CAAC;AACJ,CAAC;AA7CD,sDA6CC;AAEY,QAAA,WAAW,GAOnB,MAAc,IAAI,EAAE,CAAC;AAE1B,IAAI,OAAO,mBAAmB,KAAK,WAAW,EAAE;IAC9C,mBAAW,CAAC,WAAW,GAAG,mBAAmB,CAAC;CAC/C;AAQY,QAAA,4BAA4B,GAAG,MAAM,CAAC,8BAA8B,CAAC,CAAC;AAEnF,SAAgB,8BAA8B,CAAC,WAAoB;IACjE,IAAI,MAAM,CAAC;IACX,IAAI,WAAW,EAAE;QACf,MAAM,GAAG,mBAAW,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;KACvD;SAAM;QACL,MAAM,GAAG,mBAAW,CAAC,sBAAsB,EAAE,CAAC;KAC/C;IACD,MAAM,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,2CAA2C,CAAC,CAAC;IACxF,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AATD,wEASC"}
1
+ {"version":3,"file":"electron.js","sourceRoot":"","sources":["../../src/utils/electron.ts"],"names":[],"mappings":";;;AAAA,+DAAqE;AAsBrE,MAAM,WAAW,GAAG,GAAG,EAAE;;IACvB,IAAI,MAAA,MAAM,CAAC,iCAAiC,0CAAE,UAAU,EAAE;QACxD,OAAO,MAAM,CAAC,iCAAiC,CAAC,UAAU,CAAC;KAC5D;IACD,OAAO;AACT,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,OAAmB,EAAE,EAAE;IACtC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,IAAI,CAAC,IAAA,6BAAW,EAAC,OAAO,CAAC,EAAE;QACzB,kCAAkC;QAClC,QAAQ,CAAC,OAAO,CAAC,CAAC;KACnB;AACH,CAAC,CAAC;AAEF,SAAgB,qBAAqB,CAAC,IAAY,EAAE,cAAwB;IAC1E,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,OAAO,IAAI,KAAK,CACd;QACE,EAAE,EAAE,CAAC,KAAa,EAAE,QAA2B,EAAe,EAAE;YAC9D,MAAM,eAAe,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE;gBAChD,IAAI,SAAS,KAAK,KAAK,EAAE;oBACvB,cAAc,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBACjF,OAAO,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;iBAC1B;YACH,CAAC,CAAC;YACF,mBAAmB,CAAC,EAAE,CAAC,QAAQ,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC;YACzD,OAAO;gBACL,OAAO,EAAE,GAAG,EAAE;oBACZ,mBAAmB,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC;gBACvE,CAAC;aACF,CAAC;QACJ,CAAC;KACF,EACD;QACE,GAAG,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;YACtB,IAAI,MAAM,KAAK,IAAI,EAAE;gBACnB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;aACvB;iBAAM;gBACL,OAAO,KAAK,EAAE,GAAG,IAAS,EAAE,EAAE,CAC5B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC9B,MAAM,SAAS,GAAG,EAAE,EAAE,CAAC;oBACvB,mBAAmB,CAAC,IAAI,CAAC,UAAU,GAAG,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;oBACxE,cAAc,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvG,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBAC5C,IAAI,EAAE,KAAK,SAAS,EAAE;4BACpB,mBAAmB,CAAC,cAAc,CAAC,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC;4BACjE,IAAI,KAAK,EAAE;gCACT,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gCACnC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gCACtB,MAAM,CAAC,CAAC,CAAC,CAAC;6BACX;iCAAM;gCACL,OAAO,CAAC,MAAM,CAAC,CAAC;6BACjB;4BACD,cAAc;gCACZ,OAAO,CAAC;oCACN,IAAI,EAAE,UAAU;oCAChB,OAAO,EAAE,IAAI;oCACb,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;oCACtB,SAAS;oCACT,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;iCACtB,CAAC,CAAC;yBACN;oBACH,CAAC,CAAC;oBACF,mBAAmB,CAAC,EAAE,CAAC,WAAW,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;aACN;QACH,CAAC;KACF,CACF,CAAC;AACJ,CAAC;AAvDD,sDAuDC;AAEY,QAAA,WAAW,GAOnB,MAAc,IAAI,EAAE,CAAC;AAE1B,IAAI,OAAO,mBAAmB,KAAK,WAAW,EAAE;IAC9C,mBAAW,CAAC,WAAW,GAAG,mBAAmB,CAAC;CAC/C;AAQY,QAAA,4BAA4B,GAAG,MAAM,CAAC,8BAA8B,CAAC,CAAC;AAEnF,SAAgB,8BAA8B,CAAC,WAAoB;IACjE,IAAI,MAAM,CAAC;IACX,IAAI,WAAW,EAAE;QACf,MAAM,GAAG,mBAAW,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;KACvD;SAAM;QACL,MAAM,GAAG,mBAAW,CAAC,sBAAsB,EAAE,CAAC;KAC/C;IACD,MAAM,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,2CAA2C,CAAC,CAAC;IACxF,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AATD,wEASC"}
@@ -2,7 +2,6 @@ export * from './env';
2
2
  export * from './electron';
3
3
  export * from './react-hooks';
4
4
  export * from './icon';
5
- export * from './parse';
6
5
  export * from './json';
7
6
  export * from './label';
8
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -5,7 +5,6 @@ tslib_1.__exportStar(require("./env"), exports);
5
5
  tslib_1.__exportStar(require("./electron"), exports);
6
6
  tslib_1.__exportStar(require("./react-hooks"), exports);
7
7
  tslib_1.__exportStar(require("./icon"), exports);
8
- tslib_1.__exportStar(require("./parse"), exports);
9
8
  tslib_1.__exportStar(require("./json"), exports);
10
9
  tslib_1.__exportStar(require("./label"), exports);
11
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,gDAAsB;AACtB,qDAA2B;AAC3B,wDAA8B;AAC9B,iDAAuB;AACvB,kDAAwB;AACxB,iDAAuB;AACvB,kDAAwB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;AAAA,gDAAsB;AACtB,qDAA2B;AAC3B,wDAA8B;AAC9B,iDAAuB;AACvB,iDAAuB;AACvB,kDAAwB"}
@@ -1,3 +1,3 @@
1
1
  import React, { CSSProperties } from 'react';
2
- export declare function transformLabelWithCodicon(label: string, iconStyles?: CSSProperties, transformer?: (str: string) => string | undefined, renderText?: (str: string, index: number) => React.ReactNode): any;
2
+ export declare function transformLabelWithCodicon(label: string, iconStyleProps?: CSSProperties | string, transformer?: (str: string) => string | undefined, renderText?: (str: string, index: number) => React.ReactNode): any;
3
3
  //# sourceMappingURL=label.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/utils/label.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAO7C,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,UAAU,GAAE,aAAkB,EAC9B,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,EACjD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,OA0B7D"}
1
+ {"version":3,"file":"label.d.ts","sourceRoot":"","sources":["../../src/utils/label.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAO7C,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,cAAc,GAAE,aAAa,GAAG,MAAW,EAC3C,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,EACjD,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,OAsC7D"}
@@ -2,30 +2,37 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.transformLabelWithCodicon = void 0;
4
4
  const tslib_1 = require("tslib");
5
+ const classnames_1 = tslib_1.__importDefault(require("classnames"));
5
6
  const react_1 = tslib_1.__importDefault(require("react"));
6
7
  const icon_1 = require("@opensumi/ide-components/lib/icon/icon");
7
8
  const ide_core_common_1 = require("@opensumi/ide-core-common");
8
9
  const SEPERATOR = ' ';
9
- function transformLabelWithCodicon(label, iconStyles = {}, transformer, renderText) {
10
+ function transformLabelWithCodicon(label, iconStyleProps = {}, transformer, renderText) {
10
11
  const ICON_REGX = /\$\(([a-z.]+\/)?([a-z-]+)(~[a-z]+)?\)/gi;
11
12
  const ICON_WITH_ANIMATE_REGX = /\$\(([a-z.]+\/)?([a-z-]+)~([a-z]+)\)/gi;
13
+ // some string like $() $(~spin)
14
+ const ICON_ERROR_REGX = /\$\(([a-z.]+\/)?([a-z-]+)?(~[a-z]+)?\)/gi;
15
+ const generateIconStyle = (icon, styleProps) => typeof styleProps === 'string' ? { className: (0, classnames_1.default)(icon, styleProps) } : { className: icon, style: styleProps };
12
16
  return label.split(SEPERATOR).map((e, index) => {
13
17
  if (!transformer) {
14
18
  return e;
15
19
  }
16
20
  const icon = transformer(e);
17
21
  if (icon) {
18
- return react_1.default.createElement(icon_1.Icon, { className: icon, style: iconStyles, key: `${index}-${icon}` });
22
+ return react_1.default.createElement(icon_1.Icon, Object.assign({}, generateIconStyle(icon, iconStyleProps), { key: `${index}-${icon}` }));
19
23
  }
20
24
  else if (ICON_REGX.test(e)) {
21
25
  if (e.includes('~')) {
22
26
  const [, , icon, animate] = ICON_WITH_ANIMATE_REGX.exec(e) || [];
23
27
  if (animate && icon) {
24
- return (react_1.default.createElement(icon_1.Icon, { className: transformer(`$(${icon})`), style: iconStyles, animate: animate, key: `${index}-${icon}` }));
28
+ return (react_1.default.createElement(icon_1.Icon, Object.assign({}, generateIconStyle(transformer(`$(${icon})`), iconStyleProps), { animate: animate, key: `${index}-${icon}` })));
25
29
  }
26
30
  }
27
31
  const newStr = e.replaceAll(ICON_REGX, (e) => `${SEPERATOR}${e}${SEPERATOR}`);
28
- return transformLabelWithCodicon(newStr, iconStyles, transformer);
32
+ return transformLabelWithCodicon(newStr, iconStyleProps, transformer);
33
+ }
34
+ else if (ICON_ERROR_REGX.test(e)) {
35
+ return transformLabelWithCodicon(e.replaceAll(ICON_ERROR_REGX, ''), iconStyleProps, transformer, renderText);
29
36
  }
30
37
  else {
31
38
  return (0, ide_core_common_1.isFunction)(renderText) ? renderText(e, index) : react_1.default.createElement("span", { key: `${index}-${e}` }, e);
@@ -1 +1 @@
1
- {"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/utils/label.tsx"],"names":[],"mappings":";;;;AAAA,0DAA6C;AAE7C,iEAA8D;AAC9D,+DAAuD;AAEvD,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB,SAAgB,yBAAyB,CACvC,KAAa,EACb,aAA4B,EAAE,EAC9B,WAAiD,EACjD,UAA4D;IAE5D,MAAM,SAAS,GAAG,yCAAyC,CAAC;IAC5D,MAAM,sBAAsB,GAAG,wCAAwC,CAAC;IACxE,OAAO,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QAC7C,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,CAAC,CAAC;SACV;QACD,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,IAAI,EAAE;YACR,OAAO,8BAAC,WAAI,IAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,IAAI,EAAE,GAAI,CAAC;SAC9E;aAAM,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YAC5B,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBACnB,MAAM,CAAC,EAAE,AAAD,EAAG,IAAI,EAAE,OAAO,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjE,IAAI,OAAO,IAAI,IAAI,EAAE;oBACnB,OAAO,CACL,8BAAC,WAAI,IAAC,SAAS,EAAE,WAAW,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,IAAI,IAAI,EAAE,GAAI,CAC7G,CAAC;iBACH;aACF;YACD,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;YAC9E,OAAO,yBAAyB,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;SACnE;aAAM;YACL,OAAO,IAAA,4BAAU,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,wCAAM,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,EAAE,IAAG,CAAC,CAAQ,CAAC;SAC/F;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA9BD,8DA8BC"}
1
+ {"version":3,"file":"label.js","sourceRoot":"","sources":["../../src/utils/label.tsx"],"names":[],"mappings":";;;;AAAA,oEAA6B;AAC7B,0DAA6C;AAE7C,iEAA8D;AAC9D,+DAAuD;AAEvD,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB,SAAgB,yBAAyB,CACvC,KAAa,EACb,iBAAyC,EAAE,EAC3C,WAAiD,EACjD,UAA4D;IAE5D,MAAM,SAAS,GAAG,yCAAyC,CAAC;IAC5D,MAAM,sBAAsB,GAAG,wCAAwC,CAAC;IACxE,gCAAgC;IAChC,MAAM,eAAe,GAAG,0CAA0C,CAAC;IAEnE,MAAM,iBAAiB,GAAG,CAAC,IAAa,EAAE,UAAmC,EAAE,EAAE,CAC/E,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAA,oBAAG,EAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAEjH,OAAO,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QAC7C,IAAI,CAAC,WAAW,EAAE;YAChB,OAAO,CAAC,CAAC;SACV;QACD,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,IAAI,EAAE;YACR,OAAO,8BAAC,WAAI,oBAAK,iBAAiB,CAAC,IAAI,EAAE,cAAc,CAAC,IAAE,GAAG,EAAE,GAAG,KAAK,IAAI,IAAI,EAAE,IAAI,CAAC;SACvF;aAAM,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YAC5B,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBACnB,MAAM,CAAC,EAAE,AAAD,EAAG,IAAI,EAAE,OAAO,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjE,IAAI,OAAO,IAAI,IAAI,EAAE;oBACnB,OAAO,CACL,8BAAC,WAAI,oBACC,iBAAiB,CAAC,WAAW,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,cAAc,CAAC,IAChE,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,GAAG,KAAK,IAAI,IAAI,EAAE,IACvB,CACH,CAAC;iBACH;aACF;YACD,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;YAC9E,OAAO,yBAAyB,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;SACvE;aAAM,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YAClC,OAAO,yBAAyB,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,EAAE,EAAE,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;SAC9G;aAAM;YACL,OAAO,IAAA,4BAAU,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,wCAAM,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,EAAE,IAAG,CAAC,CAAQ,CAAC;SAC/F;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA1CD,8DA0CC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-core-browser",
3
- "version": "2.23.3",
3
+ "version": "2.23.4-rc-1681355069.0",
4
4
  "description": "@opensumi/ide-core-browser",
5
5
  "files": [
6
6
  "lib",
@@ -18,9 +18,9 @@
18
18
  "build": "tsc --build ../../configs/ts/references/tsconfig.core-browser.json"
19
19
  },
20
20
  "dependencies": {
21
- "@opensumi/ide-components": "2.23.3",
22
- "@opensumi/ide-connection": "2.23.3",
23
- "@opensumi/ide-core-common": "2.23.3",
21
+ "@opensumi/ide-components": "2.23.4-rc-1681355069.0",
22
+ "@opensumi/ide-connection": "2.23.4-rc-1681355069.0",
23
+ "@opensumi/ide-core-common": "2.23.4-rc-1681355069.0",
24
24
  "@opensumi/vscode-debugprotocol": "1.49.0-beta.1",
25
25
  "@vscode/codicons": "0.0.27",
26
26
  "ajv": "^6.10.0",
@@ -45,5 +45,5 @@
45
45
  "strip-json-comments": "3.0.1",
46
46
  "vscode-textmate": "7.0.1"
47
47
  },
48
- "gitHead": "88cbaea169c860d1157b046362f005d9bc475bbd"
48
+ "gitHead": "658765398c518774a248005d9b46a720b2159c5b"
49
49
  }
@@ -109,7 +109,6 @@ export class ClientApp implements IClientApp, IDisposable {
109
109
  editorBackgroundImage,
110
110
  defaultPreferences,
111
111
  allowSetDocumentTitleFollowWorkspaceDir = true,
112
- devtools = false, // if not set, disable devtools support as default
113
112
  ...restOpts
114
113
  } = opts;
115
114
 
@@ -139,10 +138,10 @@ export class ClientApp implements IClientApp, IDisposable {
139
138
  layoutConfig: opts.layoutConfig as LayoutConfig,
140
139
  editorBackgroundImage: opts.editorBackgroundImage || editorBackgroundImage,
141
140
  allowSetDocumentTitleFollowWorkspaceDir,
142
- devtools,
141
+ devtools: opts.devtools ?? false,
143
142
  };
144
143
 
145
- if (devtools) {
144
+ if (this.config.devtools) {
146
145
  // set a global so the opensumi devtools can identify that
147
146
  // the current page is powered by opensumi core
148
147
  window.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__ = {};
@@ -270,19 +270,19 @@ export function injectInnerProviders(injector: Injector) {
270
270
  injector.addProviders(
271
271
  {
272
272
  token: IElectronMainMenuService,
273
- useValue: createElectronMainApi(IElectronMainMenuService),
273
+ useValue: createElectronMainApi(IElectronMainMenuService, appConfig.devtools),
274
274
  },
275
275
  {
276
276
  token: IElectronMainUIService,
277
- useValue: createElectronMainApi(IElectronMainUIService),
277
+ useValue: createElectronMainApi(IElectronMainUIService, appConfig.devtools),
278
278
  },
279
279
  {
280
280
  token: IElectronMainLifeCycleService,
281
- useValue: createElectronMainApi(IElectronMainLifeCycleService),
281
+ useValue: createElectronMainApi(IElectronMainLifeCycleService, appConfig.devtools),
282
282
  },
283
283
  {
284
284
  token: IElectronURLService,
285
- useValue: createElectronMainApi(IElectronURLService),
285
+ useValue: createElectronMainApi(IElectronURLService, appConfig.devtools),
286
286
  },
287
287
  {
288
288
  token: IElectronMenuFactory,
@@ -32,7 +32,8 @@ export function ToolbarActionBasedLayout() {
32
32
  slot='left'
33
33
  isTabbar={true}
34
34
  defaultSize={layout.left?.currentId ? layout.left?.size || 310 : 49}
35
- minResize={204}
35
+ minResize={280}
36
+ maxResize={480}
36
37
  minSize={49}
37
38
  />
38
39
  <SplitPanel id='main-vertical' minResize={300} flexGrow={1} direction='top-to-bottom'>
@@ -51,7 +52,8 @@ export function ToolbarActionBasedLayout() {
51
52
  slot='right'
52
53
  isTabbar={true}
53
54
  defaultSize={layout.right?.currentId ? layout.right?.size || 310 : 0}
54
- minResize={200}
55
+ minResize={280}
56
+ maxResize={480}
55
57
  minSize={0}
56
58
  />
57
59
  </SplitPanel>
@@ -228,6 +228,7 @@ export const SplitPanel: React.FC<SplitPanelProps> = ({
228
228
  );
229
229
  }
230
230
  }
231
+
231
232
  elements.push(
232
233
  <PanelContext.Provider
233
234
  key={index}
@@ -243,6 +244,7 @@ export const SplitPanel: React.FC<SplitPanelProps> = ({
243
244
  >
244
245
  <div
245
246
  data-min-resize={getProp(element, 'minResize')}
247
+ data-max-resize={getProp(element, 'maxResize')}
246
248
  ref={(ele) => {
247
249
  if (ele && splitPanelService.panels.indexOf(ele) === -1) {
248
250
  splitPanelService.panels.push(ele);
@@ -250,7 +252,7 @@ export const SplitPanel: React.FC<SplitPanelProps> = ({
250
252
  }}
251
253
  id={getProp(element, 'id') /* @deprecated: query by data-view-id */}
252
254
  style={{
253
- // 手风琴场景,固定尺寸和flex尺寸混合布局;需要在resize flex模式下禁用
255
+ // 手风琴场景,固定尺寸和 flex 尺寸混合布局;需要在 Resize Flex 模式下禁用
254
256
  ...(getProp(element, 'flex') &&
255
257
  !getProp(element, 'savedSize') &&
256
258
  !childList.find((item) => getProp(item, 'flexGrow'))
@@ -262,7 +264,7 @@ export const SplitPanel: React.FC<SplitPanelProps> = ({
262
264
  : '-1px',
263
265
  [Layout.getMaxSizeProperty(direction)]:
264
266
  maxLocks[index] && getProp(element, 'maxSize') ? getProp(element, 'maxSize') + 'px' : 'unset',
265
- // resize flex模式下应用flexGrow
267
+ // Resize Flex 模式下应用 flexGrow
266
268
  ...(getProp(element, 'flexGrow') !== undefined ? { flexGrow: getProp(element, 'flexGrow') } : {}),
267
269
  display: hides[index] ? 'none' : 'block',
268
270
  backgroundColor: getProp(element, 'backgroundColor'),
@@ -88,16 +88,25 @@ export const ResizeHandleHorizontal = (props: ResizeHandleProps) => {
88
88
  const parentWidth = ref.current!.parentElement!.offsetWidth;
89
89
  const prevEle = props.findPrevElement ? props.findPrevElement() : prevElement.current!;
90
90
  const nextEle = props.findNextElement ? props.findNextElement() : nextElement.current!;
91
+
91
92
  if ((prevEle && prevEle.classList.contains(RESIZE_LOCK)) || (nextEle && nextEle.classList.contains(RESIZE_LOCK))) {
92
93
  return;
93
94
  }
94
- const prevMinResize = prevEle!.dataset.minResize || 0;
95
- const nextMinResize = nextEle!.dataset.minResize || 0;
95
+ const prevMinResize = prevEle?.dataset.minResize || 0;
96
+ const nextMinResize = nextEle?.dataset.minResize || 0;
97
+
98
+ const prevMaxResize = prevEle?.dataset.maxResize || 0;
99
+ const nextMaxResize = nextEle?.dataset.maxResize || 0;
96
100
  if (prevMinResize || nextMinResize) {
97
101
  if (prev * parentWidth <= prevMinResize || next * parentWidth <= nextMinResize) {
98
102
  return;
99
103
  }
100
104
  }
105
+ if (prevMaxResize || nextMaxResize) {
106
+ if (prev * parentWidth >= prevMaxResize || next * parentWidth >= nextMaxResize) {
107
+ return;
108
+ }
109
+ }
101
110
  if (nextEle) {
102
111
  nextEle.style.width = next * 100 + '%';
103
112
  }
@@ -109,34 +118,49 @@ export const ResizeHandleHorizontal = (props: ResizeHandleProps) => {
109
118
  }
110
119
  };
111
120
 
112
- const flexModeSetSize = (prevWidth: number, nextWidth: number, ignoreMin?: boolean, direction?: boolean) => {
121
+ const flexModeSetSize = (prevWidth: number, nextWidth: number, ignoreResizeRange?: boolean, direction?: boolean) => {
113
122
  const prevEle = props.findPrevElement ? props.findPrevElement(direction) : prevElement.current!;
114
123
  const nextEle = props.findNextElement ? props.findNextElement(direction) : nextElement.current!;
115
- let fixedElement: HTMLElement;
116
- let flexElement: HTMLElement;
117
- let targetFixedWidth = 0;
118
- const prevMinResize = parseInt(prevEle!.dataset.minResize || '0', 10);
119
- const nextMinResize = parseInt(nextEle!.dataset.minResize || '0', 10);
120
- if (props.flexMode === ResizeFlexMode.Prev) {
121
- fixedElement = prevEle!;
122
- flexElement = nextEle!;
123
- targetFixedWidth = prevWidth;
124
- if (!ignoreMin) {
125
- if (prevMinResize > prevWidth) {
126
- targetFixedWidth = prevMinResize;
127
- } else if (nextMinResize > nextWidth) {
128
- targetFixedWidth = prevWidth + nextWidth - nextMinResize;
124
+ const prevMinResize = Number(prevEle?.dataset.minResize ?? 0);
125
+ const nextMinResize = Number(nextEle?.dataset.minResize ?? 0);
126
+
127
+ const prevMaxResize = prevEle?.dataset.maxResize ? Number(prevEle?.dataset.maxResize) : null;
128
+ const nextMaxResize = nextEle?.dataset.maxResize ? Number(nextEle?.dataset.maxResize) : null;
129
+
130
+ const isPreFlexMode = props.flexMode === ResizeFlexMode.Prev;
131
+ const fixedElement = (isPreFlexMode ? prevEle : nextEle)!;
132
+ const flexElement = (isPreFlexMode ? nextEle : prevEle)!;
133
+ let targetFixedWidth = isPreFlexMode ? prevWidth : nextWidth;
134
+
135
+ if (!ignoreResizeRange) {
136
+ if (prevMinResize || nextMinResize) {
137
+ if (isPreFlexMode) {
138
+ if (prevMinResize > prevWidth) {
139
+ targetFixedWidth = prevMinResize;
140
+ } else if (nextMinResize > nextWidth) {
141
+ targetFixedWidth = prevWidth + nextWidth - nextMinResize;
142
+ }
143
+ } else {
144
+ if (nextMinResize > nextWidth) {
145
+ targetFixedWidth = nextMinResize;
146
+ } else if (prevMinResize > prevWidth) {
147
+ targetFixedWidth = prevWidth + nextWidth - prevMinResize;
148
+ }
129
149
  }
130
150
  }
131
- } else {
132
- fixedElement = nextEle!;
133
- flexElement = prevEle!;
134
- targetFixedWidth = nextWidth;
135
- if (!ignoreMin) {
136
- if (nextMinResize > nextWidth) {
137
- targetFixedWidth = nextMinResize;
138
- } else if (prevMinResize > prevWidth) {
139
- targetFixedWidth = prevWidth + nextWidth - prevMinResize;
151
+ if (prevMaxResize || nextMaxResize) {
152
+ if (isPreFlexMode) {
153
+ if (prevMaxResize && prevMaxResize <= prevWidth) {
154
+ targetFixedWidth = prevMaxResize;
155
+ } else if (nextMaxResize && nextMaxResize > nextWidth) {
156
+ targetFixedWidth = prevWidth + nextWidth - nextMaxResize;
157
+ }
158
+ } else {
159
+ if (nextMaxResize && nextMaxResize <= nextWidth) {
160
+ targetFixedWidth = nextMaxResize;
161
+ } else if (prevMaxResize && prevMaxResize > nextWidth) {
162
+ targetFixedWidth = prevWidth + nextWidth - prevMaxResize;
163
+ }
140
164
  }
141
165
  }
142
166
  }
@@ -39,7 +39,7 @@ export function getSlotLocation(moduleName: string, layoutConfig: LayoutConfig)
39
39
  return location;
40
40
  }
41
41
  }
42
- getDebugLogger().warn(`没有找到${moduleName}所对应的位置!`);
42
+ logger.warn(`Cannot find the location with ${moduleName}`);
43
43
  return '';
44
44
  }
45
45
 
@@ -97,14 +97,14 @@ export class ErrorBoundary extends React.Component {
97
97
  export const allSlot: { slot: string; dom: HTMLElement }[] = [];
98
98
 
99
99
  export const SlotDecorator: React.FC<{ slot: string; backgroundColor?: string }> = ({ slot, ...props }) => {
100
- const ref = React.useRef<HTMLElement>();
100
+ const ref = React.useRef<HTMLElement | null>();
101
101
  React.useEffect(() => {
102
102
  if (ref.current) {
103
103
  allSlot.push({ slot, dom: ref.current });
104
104
  }
105
105
  }, [ref]);
106
106
  return (
107
- <div ref={(ele) => (ref.current = ele!)} className='resize-wrapper'>
107
+ <div ref={(ele) => (ref.current = ele)} className='resize-wrapper'>
108
108
  {props.children}
109
109
  </div>
110
110
  );
@@ -163,12 +163,13 @@ export class SlotRendererRegistry {
163
163
  export const slotRendererRegistry = new SlotRendererRegistry();
164
164
 
165
165
  export interface SlotProps {
166
+ // Name of the slot view
166
167
  slot: string;
167
- /**
168
- * slot 默认的背景色
169
- */
168
+ // Background color of the slot view
170
169
  backgroundColor?: string;
170
+ // Is tabbar slot renderer or not
171
171
  isTabbar?: boolean;
172
+ // Optional props
172
173
  [key: string]: any;
173
174
  }
174
175
 
@@ -181,7 +182,7 @@ export function SlotRenderer({ slot, isTabbar, ...props }: SlotProps) {
181
182
  slotRendererRegistry.addTabbar(slot);
182
183
  }
183
184
  if (!componentKeys || !componentKeys.length) {
184
- getDebugLogger().warn(`No ${slot} view declared by location.`);
185
+ logger.warn(`No ${slot} view declared by location.`);
185
186
  }
186
187
  const [componentInfos, setInfos] = React.useState<ComponentRegistryInfo[]>([]);
187
188
  const updateComponentInfos = React.useCallback(() => {
@@ -189,7 +190,7 @@ export function SlotRenderer({ slot, isTabbar, ...props }: SlotProps) {
189
190
  componentKeys.forEach((token) => {
190
191
  const info = componentRegistry.getComponentRegistryInfo(token);
191
192
  if (!info) {
192
- getDebugLogger().warn(`${token} view isn't registered, please check.`);
193
+ logger.warn(`${token} view isn't registered, please check.`);
193
194
  } else {
194
195
  infos.push(info);
195
196
  }
@@ -1,4 +1,4 @@
1
- import { IDisposable } from '@opensumi/ide-core-common';
1
+ import { IDisposable, isUndefined } from '@opensumi/ide-core-common';
2
2
  import { IElectronMainApi } from '@opensumi/ide-core-common/lib/electron';
3
3
  import type { MessageConnection } from '@opensumi/vscode-jsonrpc';
4
4
 
@@ -12,13 +12,37 @@ export interface IElectronIpcRenderer {
12
12
  send(channel: string, ...args: any[]): void;
13
13
  }
14
14
 
15
- export function createElectronMainApi(name: string): IElectronMainApi<any> {
15
+ interface IPCMessage {
16
+ type: 'event' | 'request' | 'response';
17
+ service: string;
18
+ method: string;
19
+ requestId?: number; // for connecting 'requst' and 'response'
20
+ args: any[];
21
+ }
22
+
23
+ const getCapturer = () => {
24
+ if (window.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__?.captureIPC) {
25
+ return window.__OPENSUMI_DEVTOOLS_GLOBAL_HOOK__.captureIPC;
26
+ }
27
+ return;
28
+ };
29
+
30
+ const capture = (message: IPCMessage) => {
31
+ const capturer = getCapturer();
32
+ if (!isUndefined(capture)) {
33
+ // if OpenSumi DevTools is opended
34
+ capturer(message);
35
+ }
36
+ };
37
+
38
+ export function createElectronMainApi(name: string, enableCaptured?: boolean): IElectronMainApi<any> {
16
39
  let id = 0;
17
40
  return new Proxy(
18
41
  {
19
42
  on: (event: string, listener: (...args) => void): IDisposable => {
20
43
  const wrappedListener = (e, eventName, ...args) => {
21
44
  if (eventName === event) {
45
+ enableCaptured && capture({ type: 'event', service: name, method: event, args });
22
46
  return listener(...args);
23
47
  }
24
48
  };
@@ -39,6 +63,7 @@ export function createElectronMainApi(name: string): IElectronMainApi<any> {
39
63
  new Promise((resolve, reject) => {
40
64
  const requestId = id++;
41
65
  ElectronIpcRenderer.send('request:' + name, method, requestId, ...args);
66
+ enableCaptured && capture({ type: 'request', service: name, method: String(method), requestId, args });
42
67
  const listener = (event, id, error, result) => {
43
68
  if (id === requestId) {
44
69
  ElectronIpcRenderer.removeListener('response:' + name, listener);
@@ -49,6 +74,14 @@ export function createElectronMainApi(name: string): IElectronMainApi<any> {
49
74
  } else {
50
75
  resolve(result);
51
76
  }
77
+ enableCaptured &&
78
+ capture({
79
+ type: 'response',
80
+ service: name,
81
+ method: String(method),
82
+ requestId,
83
+ args: [error, result],
84
+ });
52
85
  }
53
86
  };
54
87
  ElectronIpcRenderer.on('response:' + name, listener);
@@ -2,6 +2,5 @@ export * from './env';
2
2
  export * from './electron';
3
3
  export * from './react-hooks';
4
4
  export * from './icon';
5
- export * from './parse';
6
5
  export * from './json';
7
6
  export * from './label';
@@ -1,3 +1,4 @@
1
+ import clx from 'classnames';
1
2
  import React, { CSSProperties } from 'react';
2
3
 
3
4
  import { Icon } from '@opensumi/ide-components/lib/icon/icon';
@@ -7,30 +8,42 @@ const SEPERATOR = ' ';
7
8
 
8
9
  export function transformLabelWithCodicon(
9
10
  label: string,
10
- iconStyles: CSSProperties = {},
11
+ iconStyleProps: CSSProperties | string = {},
11
12
  transformer?: (str: string) => string | undefined,
12
13
  renderText?: (str: string, index: number) => React.ReactNode,
13
14
  ) {
14
15
  const ICON_REGX = /\$\(([a-z.]+\/)?([a-z-]+)(~[a-z]+)?\)/gi;
15
16
  const ICON_WITH_ANIMATE_REGX = /\$\(([a-z.]+\/)?([a-z-]+)~([a-z]+)\)/gi;
17
+ // some string like $() $(~spin)
18
+ const ICON_ERROR_REGX = /\$\(([a-z.]+\/)?([a-z-]+)?(~[a-z]+)?\)/gi;
19
+
20
+ const generateIconStyle = (icon?: string, styleProps?: CSSProperties | string) =>
21
+ typeof styleProps === 'string' ? { className: clx(icon, styleProps) } : { className: icon, style: styleProps };
22
+
16
23
  return label.split(SEPERATOR).map((e, index) => {
17
24
  if (!transformer) {
18
25
  return e;
19
26
  }
20
27
  const icon = transformer(e);
21
28
  if (icon) {
22
- return <Icon className={icon} style={iconStyles} key={`${index}-${icon}`} />;
29
+ return <Icon {...generateIconStyle(icon, iconStyleProps)} key={`${index}-${icon}`} />;
23
30
  } else if (ICON_REGX.test(e)) {
24
31
  if (e.includes('~')) {
25
32
  const [, , icon, animate] = ICON_WITH_ANIMATE_REGX.exec(e) || [];
26
33
  if (animate && icon) {
27
34
  return (
28
- <Icon className={transformer(`$(${icon})`)} style={iconStyles} animate={animate} key={`${index}-${icon}`} />
35
+ <Icon
36
+ {...generateIconStyle(transformer(`$(${icon})`), iconStyleProps)}
37
+ animate={animate}
38
+ key={`${index}-${icon}`}
39
+ />
29
40
  );
30
41
  }
31
42
  }
32
43
  const newStr = e.replaceAll(ICON_REGX, (e) => `${SEPERATOR}${e}${SEPERATOR}`);
33
- return transformLabelWithCodicon(newStr, iconStyles, transformer);
44
+ return transformLabelWithCodicon(newStr, iconStyleProps, transformer);
45
+ } else if (ICON_ERROR_REGX.test(e)) {
46
+ return transformLabelWithCodicon(e.replaceAll(ICON_ERROR_REGX, ''), iconStyleProps, transformer, renderText);
34
47
  } else {
35
48
  return isFunction(renderText) ? renderText(e, index) : <span key={`${index}-${e}`}>{e}</span>;
36
49
  }