@opensumi/ide-core-browser 3.2.5 → 3.2.6-next-1724824955.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 (76) hide show
  1. package/lib/ai-native/command.d.ts +6 -0
  2. package/lib/ai-native/command.d.ts.map +1 -1
  3. package/lib/ai-native/command.js +7 -1
  4. package/lib/ai-native/command.js.map +1 -1
  5. package/lib/bootstrap/app.d.ts.map +1 -1
  6. package/lib/bootstrap/app.js +4 -1
  7. package/lib/bootstrap/app.js.map +1 -1
  8. package/lib/components/ai-native/enhanceIcon/index.d.ts +4 -0
  9. package/lib/components/ai-native/enhanceIcon/index.d.ts.map +1 -1
  10. package/lib/components/ai-native/enhanceIcon/index.js +1 -1
  11. package/lib/components/ai-native/enhanceIcon/index.js.map +1 -1
  12. package/lib/components/ai-native/interactive-input/index.d.ts.map +1 -1
  13. package/lib/components/ai-native/interactive-input/index.js +1 -1
  14. package/lib/components/ai-native/interactive-input/index.js.map +1 -1
  15. package/lib/components/ai-native/thumbs/index.d.ts.map +1 -1
  16. package/lib/components/ai-native/thumbs/index.js +2 -2
  17. package/lib/components/ai-native/thumbs/index.js.map +1 -1
  18. package/lib/components/layout/default-layout.d.ts +7 -6
  19. package/lib/components/layout/default-layout.d.ts.map +1 -1
  20. package/lib/components/layout/default-layout.js +11 -5
  21. package/lib/components/layout/default-layout.js.map +1 -1
  22. package/lib/components/layout/split-panel.d.ts.map +1 -1
  23. package/lib/components/layout/split-panel.js +3 -1
  24. package/lib/components/layout/split-panel.js.map +1 -1
  25. package/lib/components/layout/split-panel.service.d.ts +4 -0
  26. package/lib/components/layout/split-panel.service.d.ts.map +1 -1
  27. package/lib/components/layout/split-panel.service.js +16 -0
  28. package/lib/components/layout/split-panel.service.js.map +1 -1
  29. package/lib/contextkey/ai-native.d.ts +1 -0
  30. package/lib/contextkey/ai-native.d.ts.map +1 -1
  31. package/lib/contextkey/ai-native.js +2 -1
  32. package/lib/contextkey/ai-native.js.map +1 -1
  33. package/lib/design/rule.d.ts +19 -10
  34. package/lib/design/rule.d.ts.map +1 -1
  35. package/lib/design/rule.js +22 -9
  36. package/lib/design/rule.js.map +1 -1
  37. package/lib/index.d.ts +1 -0
  38. package/lib/index.d.ts.map +1 -1
  39. package/lib/index.js +1 -1
  40. package/lib/index.js.map +1 -1
  41. package/lib/layout/constants.d.ts +11 -7
  42. package/lib/layout/constants.d.ts.map +1 -1
  43. package/lib/layout/constants.js +66 -36
  44. package/lib/layout/constants.js.map +1 -1
  45. package/lib/layout/index.d.ts +1 -0
  46. package/lib/layout/index.d.ts.map +1 -1
  47. package/lib/layout/index.js +1 -0
  48. package/lib/layout/index.js.map +1 -1
  49. package/lib/layout/render.d.ts +4 -0
  50. package/lib/layout/render.d.ts.map +1 -0
  51. package/lib/layout/render.js +10 -0
  52. package/lib/layout/render.js.map +1 -0
  53. package/lib/react-hooks/injectable-hooks.d.ts.map +1 -1
  54. package/lib/react-hooks/injectable-hooks.js +6 -2
  55. package/lib/react-hooks/injectable-hooks.js.map +1 -1
  56. package/lib/react-hooks/memorize-fn.d.ts +2 -0
  57. package/lib/react-hooks/memorize-fn.d.ts.map +1 -0
  58. package/lib/react-hooks/memorize-fn.js +11 -0
  59. package/lib/react-hooks/memorize-fn.js.map +1 -0
  60. package/package.json +5 -8
  61. package/src/ai-native/command.ts +8 -0
  62. package/src/bootstrap/app.ts +4 -0
  63. package/src/components/ai-native/enhanceIcon/index.tsx +8 -0
  64. package/src/components/ai-native/interactive-input/index.tsx +3 -0
  65. package/src/components/ai-native/thumbs/index.tsx +8 -0
  66. package/src/components/layout/default-layout.tsx +22 -4
  67. package/src/components/layout/split-panel.service.ts +16 -0
  68. package/src/components/layout/split-panel.tsx +4 -1
  69. package/src/contextkey/ai-native.ts +1 -0
  70. package/src/design/rule.ts +26 -10
  71. package/src/index.ts +1 -1
  72. package/src/layout/constants.ts +69 -37
  73. package/src/layout/index.ts +1 -0
  74. package/src/layout/render.tsx +14 -0
  75. package/src/react-hooks/injectable-hooks.tsx +7 -2
  76. package/src/react-hooks/memorize-fn.ts +7 -0
@@ -1,27 +1,36 @@
1
1
  /**
2
2
  * 定义了 zIndex 的层级
3
3
  */
4
- export declare const StackingLevel: {
4
+ export declare const StackingLevel: Readonly<{
5
5
  /**
6
6
  * 基础层级
7
7
  */
8
- readonly Base: 0;
9
8
  readonly Background: 0;
9
+ /**
10
+ * IDE 的主要内容区域,基础控件
11
+ */
10
12
  readonly Workbench: 1;
11
- readonly WorkbenchEditor: 1;
13
+ /**
14
+ * 顶部的工具栏
15
+ */
12
16
  readonly Toolbar: 2;
17
+ /**
18
+ * xterm.css 中 decoration 的 z-index 是 7,所以这里要比它大一点
19
+ */
13
20
  readonly XtermDecoration: 8;
21
+ /**
22
+ * 顶部工具栏的下拉菜单
23
+ */
14
24
  readonly ToolbarDropdown: 10;
25
+ readonly EditorTabbarCurrent: 11;
15
26
  readonly ResizeHandle: 12;
27
+ readonly EditorTabbarOverlay: 15;
16
28
  readonly EditorFloatingContainer: 20;
17
- /**
18
- * 一级弹窗
19
- */
20
29
  readonly Popup: 100;
21
- readonly PopoverComponent: 1000;
22
- readonly PopoverComponentArrow: 1001;
23
30
  readonly Overlay: 800;
31
+ readonly PopoverComponent: 999;
32
+ readonly PopoverComponentArrow: 1000;
24
33
  readonly OverlayTop: 1000;
25
- };
26
- export declare const StackingLevelStr: Record<"Background" | "Base" | "Workbench" | "WorkbenchEditor" | "Toolbar" | "XtermDecoration" | "ToolbarDropdown" | "ResizeHandle" | "EditorFloatingContainer" | "Popup" | "PopoverComponent" | "PopoverComponentArrow" | "Overlay" | "OverlayTop", string>;
34
+ }>;
35
+ export declare const StackingLevelStr: Record<"Background" | "Workbench" | "Toolbar" | "XtermDecoration" | "ToolbarDropdown" | "EditorTabbarCurrent" | "ResizeHandle" | "EditorTabbarOverlay" | "EditorFloatingContainer" | "Popup" | "Overlay" | "PopoverComponent" | "PopoverComponentArrow" | "OverlayTop", string>;
27
36
  //# sourceMappingURL=rule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rule.d.ts","sourceRoot":"","sources":["../../src/design/rule.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB;;OAEG;;;;;;;;;;IAiBH;;OAEG;;;;;;CAMK,CAAC;AAEX,eAAO,MAAM,gBAAgB,8PAEkB,CAAC"}
1
+ {"version":3,"file":"rule.d.ts","sourceRoot":"","sources":["../../src/design/rule.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa;IACxB;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;OAEG;;;;;;;;;;;EAqBM,CAAC;AAEZ,eAAO,MAAM,gBAAgB,iRAEkB,CAAC"}
@@ -4,27 +4,40 @@ exports.StackingLevelStr = exports.StackingLevel = void 0;
4
4
  /**
5
5
  * 定义了 zIndex 的层级
6
6
  */
7
- exports.StackingLevel = {
7
+ exports.StackingLevel = Object.freeze({
8
8
  /**
9
9
  * 基础层级
10
10
  */
11
- Base: 0,
12
11
  Background: 0,
12
+ /**
13
+ * IDE 的主要内容区域,基础控件
14
+ */
13
15
  Workbench: 1,
14
- WorkbenchEditor: 1,
16
+ /**
17
+ * 顶部的工具栏
18
+ */
15
19
  Toolbar: 2,
20
+ /**
21
+ * xterm.css 中 decoration 的 z-index 是 7,所以这里要比它大一点
22
+ */
16
23
  XtermDecoration: 8,
24
+ /**
25
+ * 顶部工具栏的下拉菜单
26
+ */
17
27
  ToolbarDropdown: 10,
28
+ EditorTabbarCurrent: 11,
18
29
  ResizeHandle: 12,
30
+ EditorTabbarOverlay: 15,
19
31
  EditorFloatingContainer: 20,
20
- /**
21
- * 一级弹窗
22
- */
32
+ // #region 中级弹窗区域
23
33
  Popup: 100,
24
- PopoverComponent: 1000,
25
- PopoverComponentArrow: 1001,
34
+ // #endregion
35
+ // #region 顶级弹窗区域
26
36
  Overlay: 800,
37
+ PopoverComponent: 999,
38
+ PopoverComponentArrow: 1000,
27
39
  OverlayTop: 1000,
28
- };
40
+ // #endregion
41
+ });
29
42
  exports.StackingLevelStr = Object.fromEntries(Object.entries(exports.StackingLevel).map(([key, value]) => [key, value.toString()]));
30
43
  //# sourceMappingURL=rule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/design/rule.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,aAAa,GAAG;IAC3B;;OAEG;IACH,IAAI,EAAE,CAAC;IACP,UAAU,EAAE,CAAC;IAEb,SAAS,EAAE,CAAC;IACZ,eAAe,EAAE,CAAC;IAElB,OAAO,EAAE,CAAC;IAEV,eAAe,EAAE,CAAC;IAElB,eAAe,EAAE,EAAE;IAEnB,YAAY,EAAE,EAAE;IAEhB,uBAAuB,EAAE,EAAE;IAE3B;;OAEG;IACH,KAAK,EAAE,GAAG;IACV,gBAAgB,EAAE,IAAI;IACtB,qBAAqB,EAAE,IAAI;IAC3B,OAAO,EAAE,GAAG;IACZ,UAAU,EAAE,IAAI;CACR,CAAC;AAEE,QAAA,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAChD,MAAM,CAAC,OAAO,CAAC,qBAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC/B,CAAC"}
1
+ {"version":3,"file":"rule.js","sourceRoot":"","sources":["../../src/design/rule.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC;;OAEG;IACH,UAAU,EAAE,CAAC;IAEb;;OAEG;IACH,SAAS,EAAE,CAAC;IAEZ;;OAEG;IACH,OAAO,EAAE,CAAC;IAEV;;OAEG;IACH,eAAe,EAAE,CAAC;IAElB;;OAEG;IACH,eAAe,EAAE,EAAE;IAEnB,mBAAmB,EAAE,EAAE;IAEvB,YAAY,EAAE,EAAE;IAEhB,mBAAmB,EAAE,EAAE;IAEvB,uBAAuB,EAAE,EAAE;IAE3B,iBAAiB;IACjB,KAAK,EAAE,GAAG;IACV,aAAa;IAEb,iBAAiB;IACjB,OAAO,EAAE,GAAG;IACZ,gBAAgB,EAAE,GAAG;IACrB,qBAAqB,EAAE,IAAI;IAC3B,UAAU,EAAE,IAAI;IAChB,aAAa;CACL,CAAC,CAAC;AAEC,QAAA,gBAAgB,GAAG,MAAM,CAAC,WAAW,CAChD,MAAM,CAAC,OAAO,CAAC,qBAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAC/B,CAAC"}
package/lib/index.d.ts CHANGED
@@ -32,4 +32,5 @@ export * from './encoding-registry';
32
32
  export * from './markdown';
33
33
  export * from './extensions';
34
34
  export * from './static-resource';
35
+ export * from './context-key';
35
36
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,2BAA2B,CAAC;AAG1C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AAEzB,cAAc,eAAe,CAAC;AAE9B,cAAc,UAAU,CAAC;AAEzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAE3B,cAAc,OAAO,CAAC;AAEtB,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAE7B,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAG1C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,MAAM,CAAC;AACrB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AAEzB,cAAc,eAAe,CAAC;AAE9B,cAAc,UAAU,CAAC;AAEzB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAE3B,cAAc,OAAO,CAAC;AAEtB,cAAc,oBAAoB,CAAC;AAEnC,cAAc,mBAAmB,CAAC;AAElC,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAE7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC"}
package/lib/index.js CHANGED
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- // 输出所有 common 里面会有的内容
5
4
  tslib_1.__exportStar(require("@opensumi/ide-core-common"), exports);
6
5
  // 输出当前 browser 特有的内容
7
6
  tslib_1.__exportStar(require("./react-hooks"), exports);
@@ -38,4 +37,5 @@ tslib_1.__exportStar(require("./encoding-registry"), exports);
38
37
  tslib_1.__exportStar(require("./markdown"), exports);
39
38
  tslib_1.__exportStar(require("./extensions"), exports);
40
39
  tslib_1.__exportStar(require("./static-resource"), exports);
40
+ tslib_1.__exportStar(require("./context-key"), exports);
41
41
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,sBAAsB;AACtB,oEAA0C;AAE1C,qBAAqB;AACrB,wDAA8B;AAC9B,4DAAkC;AAClC,2DAAiC;AACjC,sDAA4B;AAC5B,wDAA8B;AAC9B,uDAA6B;AAC7B,qDAA2B;AAC3B,wDAA8B;AAC9B,mDAAyB;AACzB,+CAAqB;AACrB,oDAA0B;AAC1B,qDAA2B;AAC3B,4DAAkC;AAClC,sDAA4B;AAC5B,mDAAyB;AAEzB,SAAS;AACT,mDAAyB;AACzB,kDAAwB;AACxB,mDAAyB;AAEzB,wDAA8B;AAE9B,mDAAyB;AAEzB,mDAAyB;AACzB,uDAA6B;AAC7B,qDAA2B;AAE3B,gDAAsB;AAEtB,6DAAmC;AAEnC,4DAAkC;AAElC,mDAAyB;AACzB,mDAAyB;AACzB,qDAA2B;AAC3B,8DAAoC;AACpC,qDAA2B;AAC3B,uDAA6B;AAE7B,4DAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,oEAA0C;AAE1C,qBAAqB;AACrB,wDAA8B;AAC9B,4DAAkC;AAClC,2DAAiC;AACjC,sDAA4B;AAC5B,wDAA8B;AAC9B,uDAA6B;AAC7B,qDAA2B;AAC3B,wDAA8B;AAC9B,mDAAyB;AACzB,+CAAqB;AACrB,oDAA0B;AAC1B,qDAA2B;AAC3B,4DAAkC;AAClC,sDAA4B;AAC5B,mDAAyB;AAEzB,SAAS;AACT,mDAAyB;AACzB,kDAAwB;AACxB,mDAAyB;AAEzB,wDAA8B;AAE9B,mDAAyB;AAEzB,mDAAyB;AACzB,uDAA6B;AAC7B,qDAA2B;AAE3B,gDAAsB;AAEtB,6DAAmC;AAEnC,4DAAkC;AAElC,mDAAyB;AACzB,mDAAyB;AACzB,qDAA2B;AAC3B,8DAAoC;AACpC,qDAA2B;AAC3B,uDAA6B;AAE7B,4DAAkC;AAClC,wDAA8B"}
@@ -9,24 +9,28 @@ export interface ILayoutViewSize {
9
9
  accordionHeaderSizeHeight: number;
10
10
  }
11
11
  export declare const DEFAULT_LAYOUT_VIEW_SIZE: ILayoutViewSize;
12
+ export declare enum ConfigPriority {
13
+ ModuleDefined = 0,
14
+ UserDefined = 1
15
+ }
12
16
  export declare class LayoutViewSizeConfig implements ILayoutViewSize {
13
17
  #private;
14
18
  private inited;
15
19
  init(layoutViewSize?: Partial<ILayoutViewSize>): void;
16
20
  get menubarHeight(): number;
17
- setMenubarHeight(value: number): void;
21
+ setMenubarHeight(value: number, priority?: number): void;
18
22
  get editorTabsHeight(): number;
19
- setEditorTabsHeight(value: number): void;
23
+ setEditorTabsHeight(value: number, priority?: number): void;
20
24
  get bigSurTitleBarHeight(): number;
21
- setBigSurTitleBarHeight(value: number): void;
25
+ setBigSurTitleBarHeight(value: number, priority?: number): void;
22
26
  get titleBarHeight(): number;
23
- setTitleBarHeight(value: number): void;
27
+ setTitleBarHeight(value: number, priority?: number): void;
24
28
  get panelTitleBarHeight(): number;
25
- setPanelTitleBarHeight(value: number): void;
29
+ setPanelTitleBarHeight(value: number, priority?: number): void;
26
30
  get statusBarHeight(): number;
27
- setStatusBarHeight(value: number): void;
31
+ setStatusBarHeight(value: number, priority?: number): void;
28
32
  get accordionHeaderSizeHeight(): number;
29
- setAccordionHeaderSizeHeight(value: number): void;
33
+ setAccordionHeaderSizeHeight(value: number, priority?: number): void;
30
34
  protected supportNewMacHeaderBar: boolean;
31
35
  calcElectronHeaderHeight(): number;
32
36
  calcOnlyTitleBarHeight(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/layout/constants.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAe,MAAM,2BAA2B,CAAC;AAI7E,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED,eAAO,MAAM,wBAAwB,EAAE,eAQtC,CAAC;AAEF,qBACa,oBAAqB,YAAW,eAAe;;IAS1D,OAAO,CAAC,MAAM,CAAS;IACvB,IAAI,CAAC,cAAc,GAAE,OAAO,CAAC,eAAe,CAAM;IAgBlD,IAAI,aAAa,IAAI,MAAM,CAE1B;IACD,gBAAgB,CAAC,KAAK,EAAE,MAAM;IAI9B,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IACD,mBAAmB,CAAC,KAAK,EAAE,MAAM;IAIjC,IAAI,oBAAoB,IAAI,MAAM,CAEjC;IACD,uBAAuB,CAAC,KAAK,EAAE,MAAM;IAIrC,IAAI,cAAc,IAAI,MAAM,CAE3B;IACD,iBAAiB,CAAC,KAAK,EAAE,MAAM;IAI/B,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IACD,sBAAsB,CAAC,KAAK,EAAE,MAAM;IAIpC,IAAI,eAAe,IAAI,MAAM,CAE5B;IACD,kBAAkB,CAAC,KAAK,EAAE,MAAM;IAIhC,IAAI,yBAAyB,IAAI,MAAM,CAEtC;IACD,4BAA4B,CAAC,KAAK,EAAE,MAAM;IAI1C,SAAS,CAAC,sBAAsB,UAA2E;IAE3G,wBAAwB,IAAI,MAAM;IAQlC,sBAAsB,IAAI,MAAM;CAMjC;AAED,qBACa,kBAAmB,YAAW,mBAAmB;IAC5D,OAAO,CAAC,cAAc,CAIpB;IAEF,SAAS,CAAC,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,IAAI;IAIvE,IAAI,0BAA0B,IAAI,OAAO,CAExC;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;CACF"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/layout/constants.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAA0B,MAAM,2BAA2B,CAAC;AAIxF,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,yBAAyB,EAAE,MAAM,CAAC;CACnC;AAED,eAAO,MAAM,wBAAwB,EAAE,eAQtC,CAAC;AAEF,oBAAY,cAAc;IACxB,aAAa,IAAA;IACb,WAAW,IAAA;CACZ;AA8BD,qBACa,oBAAqB,YAAW,eAAe;;IAS1D,OAAO,CAAC,MAAM,CAAS;IACvB,IAAI,CAAC,cAAc,GAAE,OAAO,CAAC,eAAe,CAAM;IAelD,IAAI,aAAa,IAAI,MAAM,CAE1B;IACD,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIjD,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IACD,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIpD,IAAI,oBAAoB,IAAI,MAAM,CAEjC;IACD,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIxD,IAAI,cAAc,IAAI,MAAM,CAE3B;IACD,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIlD,IAAI,mBAAmB,IAAI,MAAM,CAEhC;IACD,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIvD,IAAI,eAAe,IAAI,MAAM,CAE5B;IACD,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAInD,IAAI,yBAAyB,IAAI,MAAM,CAEtC;IACD,4BAA4B,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAI7D,SAAS,CAAC,sBAAsB,UAA2E;IAE3G,wBAAwB,IAAI,MAAM;IAQlC,sBAAsB,IAAI,MAAM;CAMjC;AAED,qBACa,kBAAmB,YAAW,mBAAmB;IAC5D,OAAO,CAAC,cAAc,CAIpB;IAEF,SAAS,CAAC,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,IAAI;IAIvE,IAAI,0BAA0B,IAAI,OAAO,CAExC;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;CACF"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var _LayoutViewSizeConfig_menubarHeight, _LayoutViewSizeConfig_editorTabsHeight, _LayoutViewSizeConfig_bigSurTitleBarHeight, _LayoutViewSizeConfig_titleBarHeight, _LayoutViewSizeConfig_panelTitleBarHeight, _LayoutViewSizeConfig_statusBarHeight, _LayoutViewSizeConfig_accordionHeaderSizeHeight;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.DesignLayoutConfig = exports.LayoutViewSizeConfig = exports.DEFAULT_LAYOUT_VIEW_SIZE = void 0;
4
+ exports.DesignLayoutConfig = exports.LayoutViewSizeConfig = exports.ConfigPriority = exports.DEFAULT_LAYOUT_VIEW_SIZE = void 0;
5
5
  const tslib_1 = require("tslib");
6
6
  const merge_1 = tslib_1.__importDefault(require("lodash/merge"));
7
7
  const di_1 = require("@opensumi/di");
@@ -16,15 +16,45 @@ exports.DEFAULT_LAYOUT_VIEW_SIZE = {
16
16
  statusBarHeight: 24,
17
17
  accordionHeaderSizeHeight: 24,
18
18
  };
19
+ var ConfigPriority;
20
+ (function (ConfigPriority) {
21
+ ConfigPriority[ConfigPriority["ModuleDefined"] = 0] = "ModuleDefined";
22
+ ConfigPriority[ConfigPriority["UserDefined"] = 1] = "UserDefined";
23
+ })(ConfigPriority = exports.ConfigPriority || (exports.ConfigPriority = {}));
24
+ /**
25
+ * 支持多档优先级配置
26
+ */
27
+ class ConfigAtom {
28
+ constructor(defaultValue) {
29
+ this.defaultValue = defaultValue;
30
+ /**
31
+ * index 越高,优先级越高
32
+ */
33
+ this._value = [];
34
+ }
35
+ setValue(value, priority) {
36
+ this._value[priority] = value;
37
+ }
38
+ getValue() {
39
+ let value = this.defaultValue;
40
+ for (let i = this._value.length - 1; i >= 0; i--) {
41
+ if ((0, ide_core_common_1.isDefined)(this._value[i])) {
42
+ value = this._value[i];
43
+ break;
44
+ }
45
+ }
46
+ return value;
47
+ }
48
+ }
19
49
  let LayoutViewSizeConfig = class LayoutViewSizeConfig {
20
50
  constructor() {
21
- _LayoutViewSizeConfig_menubarHeight.set(this, void 0);
22
- _LayoutViewSizeConfig_editorTabsHeight.set(this, void 0);
23
- _LayoutViewSizeConfig_bigSurTitleBarHeight.set(this, void 0);
24
- _LayoutViewSizeConfig_titleBarHeight.set(this, void 0);
25
- _LayoutViewSizeConfig_panelTitleBarHeight.set(this, void 0);
26
- _LayoutViewSizeConfig_statusBarHeight.set(this, void 0);
27
- _LayoutViewSizeConfig_accordionHeaderSizeHeight.set(this, void 0);
51
+ _LayoutViewSizeConfig_menubarHeight.set(this, new ConfigAtom(exports.DEFAULT_LAYOUT_VIEW_SIZE.menubarHeight));
52
+ _LayoutViewSizeConfig_editorTabsHeight.set(this, new ConfigAtom(exports.DEFAULT_LAYOUT_VIEW_SIZE.editorTabsHeight));
53
+ _LayoutViewSizeConfig_bigSurTitleBarHeight.set(this, new ConfigAtom(exports.DEFAULT_LAYOUT_VIEW_SIZE.bigSurTitleBarHeight));
54
+ _LayoutViewSizeConfig_titleBarHeight.set(this, new ConfigAtom(exports.DEFAULT_LAYOUT_VIEW_SIZE.titleBarHeight));
55
+ _LayoutViewSizeConfig_panelTitleBarHeight.set(this, new ConfigAtom(exports.DEFAULT_LAYOUT_VIEW_SIZE.panelTitleBarHeight));
56
+ _LayoutViewSizeConfig_statusBarHeight.set(this, new ConfigAtom(exports.DEFAULT_LAYOUT_VIEW_SIZE.statusBarHeight));
57
+ _LayoutViewSizeConfig_accordionHeaderSizeHeight.set(this, new ConfigAtom(exports.DEFAULT_LAYOUT_VIEW_SIZE.accordionHeaderSizeHeight));
28
58
  this.inited = false;
29
59
  this.supportNewMacHeaderBar = electron_1.electronEnv.osRelease ? parseFloat(electron_1.electronEnv.osRelease) >= 20 : false;
30
60
  }
@@ -33,55 +63,55 @@ let LayoutViewSizeConfig = class LayoutViewSizeConfig {
33
63
  return;
34
64
  }
35
65
  this.inited = true;
36
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_menubarHeight, layoutViewSize.menubarHeight || exports.DEFAULT_LAYOUT_VIEW_SIZE.menubarHeight, "f");
37
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_editorTabsHeight, layoutViewSize.editorTabsHeight || exports.DEFAULT_LAYOUT_VIEW_SIZE.editorTabsHeight, "f");
38
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_bigSurTitleBarHeight, layoutViewSize.bigSurTitleBarHeight || exports.DEFAULT_LAYOUT_VIEW_SIZE.bigSurTitleBarHeight, "f");
39
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_titleBarHeight, layoutViewSize.titleBarHeight || exports.DEFAULT_LAYOUT_VIEW_SIZE.titleBarHeight, "f");
40
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_panelTitleBarHeight, layoutViewSize.panelTitleBarHeight || exports.DEFAULT_LAYOUT_VIEW_SIZE.panelTitleBarHeight, "f");
41
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_statusBarHeight, layoutViewSize.statusBarHeight || exports.DEFAULT_LAYOUT_VIEW_SIZE.statusBarHeight, "f");
42
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_accordionHeaderSizeHeight, layoutViewSize.accordionHeaderSizeHeight || exports.DEFAULT_LAYOUT_VIEW_SIZE.accordionHeaderSizeHeight, "f");
66
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_menubarHeight, "f").setValue(layoutViewSize.menubarHeight, ConfigPriority.UserDefined);
67
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_editorTabsHeight, "f").setValue(layoutViewSize.editorTabsHeight, ConfigPriority.UserDefined);
68
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_bigSurTitleBarHeight, "f").setValue(layoutViewSize.bigSurTitleBarHeight, ConfigPriority.UserDefined);
69
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_titleBarHeight, "f").setValue(layoutViewSize.titleBarHeight, ConfigPriority.UserDefined);
70
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_panelTitleBarHeight, "f").setValue(layoutViewSize.panelTitleBarHeight, ConfigPriority.UserDefined);
71
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_statusBarHeight, "f").setValue(layoutViewSize.statusBarHeight, ConfigPriority.UserDefined);
72
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_accordionHeaderSizeHeight, "f").setValue(layoutViewSize.accordionHeaderSizeHeight, ConfigPriority.UserDefined);
43
73
  }
44
74
  get menubarHeight() {
45
- return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_menubarHeight, "f");
75
+ return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_menubarHeight, "f").getValue();
46
76
  }
47
- setMenubarHeight(value) {
48
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_menubarHeight, value, "f");
77
+ setMenubarHeight(value, priority) {
78
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_menubarHeight, "f").setValue(value, priority !== null && priority !== void 0 ? priority : ConfigPriority.ModuleDefined);
49
79
  }
50
80
  get editorTabsHeight() {
51
- return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_editorTabsHeight, "f");
81
+ return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_editorTabsHeight, "f").getValue();
52
82
  }
53
- setEditorTabsHeight(value) {
54
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_editorTabsHeight, value, "f");
83
+ setEditorTabsHeight(value, priority) {
84
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_editorTabsHeight, "f").setValue(value, priority !== null && priority !== void 0 ? priority : ConfigPriority.ModuleDefined);
55
85
  }
56
86
  get bigSurTitleBarHeight() {
57
- return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_bigSurTitleBarHeight, "f");
87
+ return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_bigSurTitleBarHeight, "f").getValue();
58
88
  }
59
- setBigSurTitleBarHeight(value) {
60
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_bigSurTitleBarHeight, value, "f");
89
+ setBigSurTitleBarHeight(value, priority) {
90
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_bigSurTitleBarHeight, "f").setValue(value, priority !== null && priority !== void 0 ? priority : ConfigPriority.ModuleDefined);
61
91
  }
62
92
  get titleBarHeight() {
63
- return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_titleBarHeight, "f");
93
+ return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_titleBarHeight, "f").getValue();
64
94
  }
65
- setTitleBarHeight(value) {
66
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_titleBarHeight, value, "f");
95
+ setTitleBarHeight(value, priority) {
96
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_titleBarHeight, "f").setValue(value, priority !== null && priority !== void 0 ? priority : ConfigPriority.ModuleDefined);
67
97
  }
68
98
  get panelTitleBarHeight() {
69
- return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_panelTitleBarHeight, "f");
99
+ return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_panelTitleBarHeight, "f").getValue();
70
100
  }
71
- setPanelTitleBarHeight(value) {
72
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_panelTitleBarHeight, value, "f");
101
+ setPanelTitleBarHeight(value, priority) {
102
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_panelTitleBarHeight, "f").setValue(value, priority !== null && priority !== void 0 ? priority : ConfigPriority.ModuleDefined);
73
103
  }
74
104
  get statusBarHeight() {
75
- return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_statusBarHeight, "f");
105
+ return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_statusBarHeight, "f").getValue();
76
106
  }
77
- setStatusBarHeight(value) {
78
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_statusBarHeight, value, "f");
107
+ setStatusBarHeight(value, priority) {
108
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_statusBarHeight, "f").setValue(value, priority !== null && priority !== void 0 ? priority : ConfigPriority.ModuleDefined);
79
109
  }
80
110
  get accordionHeaderSizeHeight() {
81
- return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_accordionHeaderSizeHeight, "f");
111
+ return tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_accordionHeaderSizeHeight, "f").getValue();
82
112
  }
83
- setAccordionHeaderSizeHeight(value) {
84
- tslib_1.__classPrivateFieldSet(this, _LayoutViewSizeConfig_accordionHeaderSizeHeight, value, "f");
113
+ setAccordionHeaderSizeHeight(value, priority) {
114
+ tslib_1.__classPrivateFieldGet(this, _LayoutViewSizeConfig_accordionHeaderSizeHeight, "f").setValue(value, priority !== null && priority !== void 0 ? priority : ConfigPriority.ModuleDefined);
85
115
  }
86
116
  calcElectronHeaderHeight() {
87
117
  if (ide_core_common_1.isMacintosh) {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/layout/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/layout/constants.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ export * from './layout-hooks';
3
3
  export * from './layout.interface';
4
4
  export * from './accordion/view-context-key.registry';
5
5
  export * from './accordion/tab-bar-toolbar';
6
+ export * from './render';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uCAAuC,CAAC;AACtD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,UAAU,CAAC"}
@@ -6,4 +6,5 @@ tslib_1.__exportStar(require("./layout-hooks"), exports);
6
6
  tslib_1.__exportStar(require("./layout.interface"), exports);
7
7
  tslib_1.__exportStar(require("./accordion/view-context-key.registry"), exports);
8
8
  tslib_1.__exportStar(require("./accordion/tab-bar-toolbar"), exports);
9
+ tslib_1.__exportStar(require("./render"), exports);
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/layout/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,yDAA+B;AAC/B,6DAAmC;AACnC,gFAAsD;AACtD,sEAA4C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/layout/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,yDAA+B;AAC/B,6DAAmC;AACnC,gFAAsD;AACtD,sEAA4C;AAC5C,mDAAyB"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { View } from './layout.interface';
3
+ export declare const renderView: (view?: View) => React.JSX.Element;
4
+ //# sourceMappingURL=render.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../src/layout/render.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE1C,eAAO,MAAM,UAAU,UAAW,IAAI,sBAMnC,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.renderView = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = tslib_1.__importDefault(require("react"));
6
+ const react_is_1 = tslib_1.__importDefault(require("react-is"));
7
+ const react_providers_1 = require("../react-providers");
8
+ const renderView = (view) => (react_1.default.createElement(react_1.default.Fragment, null, view && react_is_1.default.isValidElementType(view.component) ? (react_1.default.createElement(react_providers_1.ErrorBoundary, null, view.component && react_1.default.createElement(view.component, view.initialProps))) : null));
9
+ exports.renderView = renderView;
10
+ //# sourceMappingURL=render.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/layout/render.tsx"],"names":[],"mappings":";;;;AAAA,0DAA0B;AAC1B,gEAA+B;AAE/B,wDAAmD;AAI5C,MAAM,UAAU,GAAG,CAAC,IAAW,EAAE,EAAE,CAAC,CACvC,8DACG,IAAI,IAAI,kBAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CACpD,8BAAC,+BAAa,QAAE,IAAI,CAAC,SAAS,IAAI,eAAK,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAiB,CAC1G,CAAC,CAAC,CAAC,IAAI,CACP,CACJ,CAAC;AANS,QAAA,UAAU,cAMnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"injectable-hooks.d.ts","sourceRoot":"","sources":["../../src/react-hooks/injectable-hooks.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,EAAE,MAAM,cAAc,CAAC;AAK/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,wBAAgB,aAAa,CAAC,CAAC,GAAG,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,CAuBxE;AAED,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEjE,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,KAAK,SAAS,MAAM,cAAc,CAAC,MAAM,CAAC,EACjH,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,KAa7B"}
1
+ {"version":3,"file":"injectable-hooks.d.ts","sourceRoot":"","sources":["../../src/react-hooks/injectable-hooks.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,EAAE,MAAM,cAAc,CAAC;AAO/C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,wBAAgB,aAAa,CAAC,CAAC,GAAG,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC,CAuBxE;AAED,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,SAAS,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAEjE,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,SAAS,YAAY,CAAC,GAAG,CAAC,EAAE,KAAK,SAAS,MAAM,cAAc,CAAC,MAAM,CAAC,EACjH,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,KAAK,EAChB,OAAO,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,KAgB7B"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.useEventDrivenState = exports.useInjectable = void 0;
4
4
  const react_1 = require("react");
5
5
  const config_provider_1 = require("../react-providers/config-provider");
6
+ const memorize_fn_1 = require("./memorize-fn");
6
7
  function isDisposable(target) {
7
8
  return target && target.dispose && !target.disposed;
8
9
  }
@@ -26,11 +27,14 @@ function useInjectable(Constructor, args) {
26
27
  }
27
28
  exports.useInjectable = useInjectable;
28
29
  function useEventDrivenState(emitter, eventName, factory) {
29
- const [state, setState] = (0, react_1.useState)(factory(emitter));
30
+ const memorizeFactory = (0, memorize_fn_1.useMemorizeFn)(factory);
31
+ const [state, setState] = (0, react_1.useState)(memorizeFactory(emitter));
30
32
  (0, react_1.useEffect)(() => {
31
33
  const listener = (...args) => {
32
- setState(factory(emitter));
34
+ setState(() => memorizeFactory(emitter));
33
35
  };
36
+ // 绑定事件前先取下值,避免期间事件已 emit
37
+ listener();
34
38
  emitter.on(eventName, listener);
35
39
  return () => emitter.off(eventName, listener);
36
40
  }, [emitter]);
@@ -1 +1 @@
1
- {"version":3,"file":"injectable-hooks.js","sourceRoot":"","sources":["../../src/react-hooks/injectable-hooks.tsx"],"names":[],"mappings":";;;AAAA,iCAAiE;AAKjE,wEAAmE;AAInE,SAAS,YAAY,CAAC,MAAW;IAC/B,OAAO,MAAM,IAAK,MAAc,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;AAC/D,CAAC;AAED,SAAgB,aAAa,CAAU,WAAkB,EAAE,IAAU;IACnE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,kBAAU,EAAC,+BAAa,CAAC,CAAC;IAE/C,MAAM,QAAQ,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;IAEzF,IAAA,iBAAS,EACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,0BAA0B;QAC1B,kCAAkC;QAClC,IAAI,IAAI,GAAyB,QAAQ,CAAC;QAC1C,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YAC1C,IAAI,GAAI,IAAY,CAAC,MAAM,CAAC;SAC7B;QACD,IAAI,CAAC,IAAI,EAAE;YACT,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE;gBAC1B,QAAQ,CAAC,OAAO,EAAE,CAAC;aACpB;SACF;IACH,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAvBD,sCAuBC;AAID,SAAgB,mBAAmB,CACjC,OAAe,EACf,SAAgB,EAChB,OAA4B;IAE5B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAErD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE;YAClC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC;QACF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAChC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,KAAK,CAAC;AACf,CAAC;AAhBD,kDAgBC"}
1
+ {"version":3,"file":"injectable-hooks.js","sourceRoot":"","sources":["../../src/react-hooks/injectable-hooks.tsx"],"names":[],"mappings":";;;AAAA,iCAAiE;AAKjE,wEAAmE;AAEnE,+CAA8C;AAI9C,SAAS,YAAY,CAAC,MAAW;IAC/B,OAAO,MAAM,IAAK,MAAc,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;AAC/D,CAAC;AAED,SAAgB,aAAa,CAAU,WAAkB,EAAE,IAAU;IACnE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,kBAAU,EAAC,+BAAa,CAAC,CAAC;IAE/C,MAAM,QAAQ,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;IAEzF,IAAA,iBAAS,EACP,GAAG,EAAE,CAAC,GAAG,EAAE;QACT,0BAA0B;QAC1B,kCAAkC;QAClC,IAAI,IAAI,GAAyB,QAAQ,CAAC;QAC1C,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE;YAC1C,IAAI,GAAI,IAAY,CAAC,MAAM,CAAC;SAC7B;QACD,IAAI,CAAC,IAAI,EAAE;YACT,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE;gBAC1B,QAAQ,CAAC,OAAO,EAAE,CAAC;aACpB;SACF;IACH,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAvBD,sCAuBC;AAID,SAAgB,mBAAmB,CACjC,OAAe,EACf,SAAgB,EAChB,OAA4B;IAE5B,MAAM,eAAe,GAAG,IAAA,2BAAa,EAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;IAE7D,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAW,EAAE,EAAE;YAClC,QAAQ,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3C,CAAC,CAAC;QACF,yBAAyB;QACzB,QAAQ,EAAE,CAAC;QACX,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAChC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO,KAAK,CAAC;AACf,CAAC;AAnBD,kDAmBC"}
@@ -0,0 +1,2 @@
1
+ export declare function useMemorizeFn<T extends (...args: any[]) => any>(fn: T): T;
2
+ //# sourceMappingURL=memorize-fn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorize-fn.d.ts","sourceRoot":"","sources":["../../src/react-hooks/memorize-fn.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,EAAE,EAAE,CAAC,KAIrE"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useMemorizeFn = void 0;
4
+ const react_1 = require("react");
5
+ function useMemorizeFn(fn) {
6
+ const fnRef = (0, react_1.useRef)(fn);
7
+ fnRef.current = (0, react_1.useMemo)(() => fn, [fn]);
8
+ return (0, react_1.useCallback)((...args) => fnRef.current(...args), []);
9
+ }
10
+ exports.useMemorizeFn = useMemorizeFn;
11
+ //# sourceMappingURL=memorize-fn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorize-fn.js","sourceRoot":"","sources":["../../src/react-hooks/memorize-fn.ts"],"names":[],"mappings":";;;AAAA,iCAAqD;AAErD,SAAgB,aAAa,CAAoC,EAAK;IACpE,MAAM,KAAK,GAAG,IAAA,cAAM,EAAI,EAAE,CAAC,CAAC;IAC5B,KAAK,CAAC,OAAO,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,OAAO,IAAA,mBAAW,EAAC,CAAC,GAAG,IAAS,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAM,CAAC;AACxE,CAAC;AAJD,sCAIC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-core-browser",
3
- "version": "3.2.5",
3
+ "version": "3.2.6-next-1724824955.0",
4
4
  "description": "@opensumi/ide-core-browser",
5
5
  "files": [
6
6
  "lib",
@@ -18,14 +18,13 @@
18
18
  "build": "tsc --build ../../configs/ts/references/tsconfig.core-browser.json"
19
19
  },
20
20
  "dependencies": {
21
- "@opensumi/ide-components": "3.2.5",
22
- "@opensumi/ide-connection": "3.2.5",
23
- "@opensumi/ide-core-common": "3.2.5",
21
+ "@opensumi/ide-components": "3.2.6-next-1724824955.0",
22
+ "@opensumi/ide-connection": "3.2.6-next-1724824955.0",
23
+ "@opensumi/ide-core-common": "3.2.6-next-1724824955.0",
24
24
  "@opensumi/vscode-debugprotocol": "1.49.0-beta.1",
25
25
  "@vscode/codicons": "0.0.35",
26
26
  "ajv": "^6.10.0",
27
27
  "classnames": "2.5.1",
28
- "font-awesome": "^4.7.0",
29
28
  "fuzzy": "^0.1.3",
30
29
  "jsonc-parser": "^2.1.0",
31
30
  "keycode": "^2.2.0",
@@ -33,9 +32,7 @@
33
32
  "mobx": "^6.12.0",
34
33
  "mobx-react-lite": "^4.0.5",
35
34
  "react": "^18.2.0",
36
- "react-autosize-textarea": "^7.0.0",
37
35
  "react-ctxmenu-trigger": "^1.0.0",
38
- "react-custom-scrollbars": "^4.2.1",
39
36
  "react-dom": "^18.2.0",
40
37
  "react-is": "^18.2.0",
41
38
  "react-window": "^1.8.5",
@@ -47,5 +44,5 @@
47
44
  "react": "^18.2.0",
48
45
  "react-dom": "^18.2.0"
49
46
  },
50
- "gitHead": "879ad36cb2e8e5bc9d928cf7d8bb003de7f0b7b3"
47
+ "gitHead": "1807a2e5f5a29999158f573020a46d865e37db71"
51
48
  }
@@ -25,3 +25,11 @@ export const AI_CHAT_VISIBLE = {
25
25
  export const AI_CODE_ACTION = {
26
26
  id: 'ai.code.action',
27
27
  };
28
+
29
+ export const AI_MULTI_LINE_COMPLETION_HIDE = {
30
+ id: 'ai.multiLine.completion.hide',
31
+ };
32
+
33
+ export const AI_MULTI_LINE_COMPLETION_ACCEPT = {
34
+ id: 'ai.multiLine.completion.accept',
35
+ };
@@ -101,6 +101,7 @@ export class ClientApp implements IClientApp, IDisposable {
101
101
  constructor(protected opts: IClientAppOpts) {
102
102
  const {
103
103
  modules,
104
+ contributions,
104
105
  iconStyleSheets,
105
106
  useCdnIcon,
106
107
  editorBackgroundImage,
@@ -172,6 +173,9 @@ export class ClientApp implements IClientApp, IDisposable {
172
173
 
173
174
  this.config = this.runtime.mergeAppConfig(this.config);
174
175
 
176
+ if (contributions) {
177
+ this.injector.addProviders(...contributions);
178
+ }
175
179
  this.initBaseProvider();
176
180
  this.initFields();
177
181
  this.appendIconStyleSheets(iconStyleSheets, useCdnIcon);
@@ -18,6 +18,10 @@ interface IEnhanceIconProps {
18
18
  icon?: string;
19
19
  iconClass?: string;
20
20
  children?: React.ReactNode;
21
+ tabIndex?: number;
22
+ role?: string;
23
+ ariaLabel?: string;
24
+ ariaPressed?: boolean | 'mixed' | 'false' | 'true' | undefined;
21
25
  }
22
26
 
23
27
  export const EnhanceIcon = React.forwardRef<HTMLDivElement | null, IEnhanceIconProps>(
@@ -27,6 +31,10 @@ export const EnhanceIcon = React.forwardRef<HTMLDivElement | null, IEnhanceIconP
27
31
  style={props.wrapperStyle}
28
32
  onClick={props.onClick}
29
33
  ref={ref}
34
+ tabIndex={props.tabIndex}
35
+ role={props.role}
36
+ aria-label={props.ariaLabel}
37
+ aria-pressed={props.ariaPressed}
30
38
  >
31
39
  <Icon
32
40
  className={cls(props.className, styles.icon)}
@@ -172,6 +172,9 @@ export const InteractiveInput = React.forwardRef(
172
172
  wrapperClassName={styles.send_icon}
173
173
  className={getIcon('send-solid')}
174
174
  onClick={handleSend}
175
+ tabIndex={0}
176
+ role='button'
177
+ ariaLabel={localize('aiNative.chat.enter.send')}
175
178
  />
176
179
  </Popover>
177
180
  )}
@@ -70,6 +70,10 @@ export const Thumbs = (props: ThumbsProps) => {
70
70
  wrapperClassName={wrapperClassName}
71
71
  onClick={() => handleClick('up')}
72
72
  className={getExternalIcon(thumbsupIcon, KTICON_OWNER)}
73
+ tabIndex={0}
74
+ role='button'
75
+ ariaLabel={localize('aiNative.inline.chat.operate.thumbsup.title')}
76
+ ariaPressed={thumbsupIcon === 'thumbs-fill' ? 'true' : 'false'}
73
77
  />
74
78
  </Popover>
75
79
  )}
@@ -79,6 +83,10 @@ export const Thumbs = (props: ThumbsProps) => {
79
83
  wrapperClassName={wrapperClassName}
80
84
  onClick={() => handleClick('down')}
81
85
  className={getExternalIcon(thumbsdownIcon, KTICON_OWNER)}
86
+ tabIndex={0}
87
+ role='button'
88
+ ariaLabel={localize('aiNative.inline.chat.operate.thumbsdown.title')}
89
+ ariaPressed={thumbsdownIcon === 'thumbsdown-fill' ? 'true' : 'false'}
82
90
  />
83
91
  </Popover>
84
92
  )}