@opensumi/ide-overlay 2.12.1-next-079c1930

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +137 -0
  2. package/lib/browser/ctx-menu/ctx-menu.service.d.ts +17 -0
  3. package/lib/browser/ctx-menu/ctx-menu.service.d.ts.map +1 -0
  4. package/lib/browser/ctx-menu/ctx-menu.service.js +80 -0
  5. package/lib/browser/ctx-menu/ctx-menu.service.js.map +1 -0
  6. package/lib/browser/ctx-menu/ctx-menu.view.d.ts +4 -0
  7. package/lib/browser/ctx-menu/ctx-menu.view.d.ts.map +1 -0
  8. package/lib/browser/ctx-menu/ctx-menu.view.js +39 -0
  9. package/lib/browser/ctx-menu/ctx-menu.view.js.map +1 -0
  10. package/lib/browser/dialog.service.d.ts +21 -0
  11. package/lib/browser/dialog.service.d.ts.map +1 -0
  12. package/lib/browser/dialog.service.js +115 -0
  13. package/lib/browser/dialog.service.js.map +1 -0
  14. package/lib/browser/dialog.view.d.ts +3 -0
  15. package/lib/browser/dialog.view.d.ts.map +1 -0
  16. package/lib/browser/dialog.view.js +30 -0
  17. package/lib/browser/dialog.view.js.map +1 -0
  18. package/lib/browser/index.d.ts +9 -0
  19. package/lib/browser/index.d.ts.map +1 -0
  20. package/lib/browser/index.js +38 -0
  21. package/lib/browser/index.js.map +1 -0
  22. package/lib/browser/index.view.d.ts +4 -0
  23. package/lib/browser/index.view.d.ts.map +1 -0
  24. package/lib/browser/index.view.js +41 -0
  25. package/lib/browser/index.view.js.map +1 -0
  26. package/lib/browser/message.module.less +0 -0
  27. package/lib/browser/message.service.d.ts +22 -0
  28. package/lib/browser/message.service.d.ts.map +1 -0
  29. package/lib/browser/message.service.js +56 -0
  30. package/lib/browser/message.service.js.map +1 -0
  31. package/lib/browser/styles.module.less +8 -0
  32. package/lib/common/index.d.ts +62 -0
  33. package/lib/common/index.d.ts.map +1 -0
  34. package/lib/common/index.js +38 -0
  35. package/lib/common/index.js.map +1 -0
  36. package/lib/index.d.ts +2 -0
  37. package/lib/index.d.ts.map +1 -0
  38. package/lib/index.js +5 -0
  39. package/lib/index.js.map +1 -0
  40. package/package.json +27 -0
package/README.md ADDED
@@ -0,0 +1,137 @@
1
+ ---
2
+ id: overlay
3
+ title: 浮层模块
4
+ ---
5
+
6
+ overlay 模块为 IDE 上的浮层模块,例如包含 Dialog(弹窗)、Message(消息)等模块。如果需要在 IDE 通知用户一条消息或者需要一个模态对话框和用户交互时,可以使用该模块。
7
+
8
+ ## Message
9
+
10
+ Message 会在 IDE 右下角弹出一个提示信息。
11
+
12
+ ![](https://gw-office.alipayobjects.com/bmw-prod/b9d110e1-73d5-41d7-aaad-14a4d630af13.png)
13
+
14
+ ### 接口
15
+
16
+ ```ts
17
+ export interface IMessageService {
18
+ info(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
19
+ warning(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
20
+ error(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
21
+ open<T = string>(message: string | React.ReactNode, type: MessageType, buttons?: string[], closable?: boolean, from?: string): Promise<T | undefined>;
22
+ hide<T = string>(value?: T): void;
23
+ }
24
+ ```
25
+
26
+ ### 参数说明
27
+
28
+ 以下参数以 info 为例
29
+
30
+ #### message
31
+ message 主要指定了消息体,可以是一个普通的文本消息,也可以是一个 React 组件
32
+
33
+ ###### Example
34
+
35
+ ```ts
36
+ import { IMessageService } from '@opensumi/ide-overlay';
37
+
38
+ @Injectable()
39
+ export class MessageDemo {
40
+ @Autowired(IMessageService)
41
+ messageService: IMessageService;
42
+
43
+ private showMessage() {
44
+ this.messageService.info('复制成功');
45
+ }
46
+ }
47
+
48
+ ```
49
+
50
+ #### buttons
51
+ buttons 为弹窗右下角按钮,按照从左向右的顺序依次渲染,用户选择后会返回选择的结果
52
+
53
+ ###### Example
54
+
55
+ ```ts
56
+ import { IMessageService } from '@opensumi/ide-overlay';
57
+
58
+ @Injectable()
59
+ export class MessageDemo {
60
+ @Autowired(IMessageService)
61
+ messageService: IMessageService;
62
+
63
+ private async showMessage() {
64
+ const res = await this.messageService.info('是否要更新插件', ['确定', '取消']);
65
+
66
+ if (res === '确定') {
67
+ //...
68
+ }
69
+ }
70
+ }
71
+
72
+ ```
73
+
74
+
75
+ #### closable
76
+ 是否显示关闭按钮,默认为 true
77
+
78
+ ### 常见问题
79
+
80
+ #### 消息弹出时间是多久
81
+
82
+ - info: 15 秒
83
+ - warning: 18 秒
84
+ - error: 20 秒
85
+
86
+ #### 如何自定义消息组件
87
+
88
+ 如果不想用默认消息图标,可以使用 `open` 接口自定义消息组件
89
+
90
+ ##### Example
91
+
92
+ ```tsx
93
+ export const CustomMessage = () => {
94
+ const messageService = useInjectable(IMessageService)
95
+ return (
96
+ <div>
97
+ <div>这是一个自定义消息</div>
98
+ <button onClick={() => messageService.hide('确定')}>确定</button>
99
+ </div>
100
+ )
101
+ }
102
+ ```
103
+
104
+ ```ts
105
+ const res = await this.messageService.open(<CustomMessage />, MessageType.EMPTY);
106
+
107
+ if (res === '确定') {
108
+ //...
109
+ }
110
+ ```
111
+
112
+ ## Dialog
113
+ Dialog 接口与消息一致,不过弹窗为模态
114
+
115
+ ![](https://gw-office.alipayobjects.com/bmw-prod/6869e5f6-3e1a-452f-a562-02bab963b1b0.png)
116
+
117
+ ### Example
118
+
119
+ ```ts
120
+ import { IDialogService } from '@opensumi/ide-overlay';
121
+
122
+ @Injectable()
123
+ export class MessageDemo {
124
+ @Autowired(IDialogService)
125
+ dialogService: IDialogService;
126
+
127
+ private async showMessage() {
128
+ const res = await this.dialogService.info('这是一个模态弹窗');
129
+
130
+ if (res === '确定') {
131
+ //...
132
+ }
133
+ }
134
+ }
135
+
136
+ ```
137
+
@@ -0,0 +1,17 @@
1
+ import { MenuNode } from '@opensumi/ide-core-browser/lib/menu/next/base';
2
+ import { CtxMenuRenderParams } from '@opensumi/ide-core-browser/lib/menu/next/renderer/ctxmenu/base';
3
+ import { IBrowserCtxMenu } from '@opensumi/ide-core-browser/lib/menu/next/renderer/ctxmenu/browser';
4
+ export declare class BrowserCtxMenuService implements IBrowserCtxMenu {
5
+ visible: boolean;
6
+ onHide: ((canceled: boolean) => void) | undefined;
7
+ point: {
8
+ pageX: number;
9
+ pageY: number;
10
+ } | undefined;
11
+ context: any;
12
+ menuNodes: MenuNode[];
13
+ show(payload: CtxMenuRenderParams): void;
14
+ hide(canceled: boolean): void;
15
+ private reset;
16
+ }
17
+ //# sourceMappingURL=ctx-menu.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ctx-menu.service.d.ts","sourceRoot":"","sources":["../../../src/browser/ctx-menu/ctx-menu.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,+CAA+C,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,gEAAgE,CAAC;AACrG,OAAO,EAAE,eAAe,EAAE,MAAM,mEAAmE,CAAC;AAEpG,qBACa,qBAAsB,YAAW,eAAe;IAE3D,OAAO,EAAE,OAAO,CAAS;IAGzB,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAa;IAG9D,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,GAAG,SAAS,CAAa;IAGjE,OAAO,EAAE,GAAG,CAAa;IAGzB,SAAS,EAAE,QAAQ,EAAE,CAAwB;IAGtC,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAgBxC,IAAI,CAAC,QAAQ,EAAE,OAAO;IAQ7B,OAAO,CAAC,KAAK;CAGd"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BrowserCtxMenuService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const mobx_1 = require("mobx");
6
+ const di_1 = require("@opensumi/di");
7
+ let BrowserCtxMenuService = class BrowserCtxMenuService {
8
+ constructor() {
9
+ this.visible = false;
10
+ this.onHide = undefined;
11
+ this.point = undefined;
12
+ this.context = undefined;
13
+ this.menuNodes = mobx_1.observable.array([]);
14
+ }
15
+ show(payload) {
16
+ const { anchor, onHide, args: context, menuNodes } = payload;
17
+ // 上层调用前已经将 MenuNodes 处理为数组了
18
+ if (!Array.isArray(menuNodes) || !menuNodes.length) {
19
+ return;
20
+ }
21
+ this.context = context;
22
+ this.menuNodes.splice(0, this.menuNodes.length, ...menuNodes);
23
+ const { x, y } = anchor instanceof window.MouseEvent ? { x: anchor.clientX, y: anchor.clientY } : anchor;
24
+ this.onHide = onHide;
25
+ this.point = { pageX: x, pageY: y };
26
+ this.visible = true;
27
+ }
28
+ hide(canceled) {
29
+ if (typeof this.onHide === 'function') {
30
+ this.onHide(canceled);
31
+ }
32
+ this.reset();
33
+ }
34
+ reset() {
35
+ this.visible = false;
36
+ }
37
+ };
38
+ (0, tslib_1.__decorate)([
39
+ mobx_1.observable,
40
+ (0, tslib_1.__metadata)("design:type", Boolean)
41
+ ], BrowserCtxMenuService.prototype, "visible", void 0);
42
+ (0, tslib_1.__decorate)([
43
+ mobx_1.observable,
44
+ (0, tslib_1.__metadata)("design:type", Object)
45
+ ], BrowserCtxMenuService.prototype, "onHide", void 0);
46
+ (0, tslib_1.__decorate)([
47
+ mobx_1.observable,
48
+ (0, tslib_1.__metadata)("design:type", Object)
49
+ ], BrowserCtxMenuService.prototype, "point", void 0);
50
+ (0, tslib_1.__decorate)([
51
+ mobx_1.observable,
52
+ (0, tslib_1.__metadata)("design:type", Object)
53
+ ], BrowserCtxMenuService.prototype, "context", void 0);
54
+ (0, tslib_1.__decorate)([
55
+ mobx_1.observable,
56
+ (0, tslib_1.__metadata)("design:type", Array)
57
+ ], BrowserCtxMenuService.prototype, "menuNodes", void 0);
58
+ (0, tslib_1.__decorate)([
59
+ mobx_1.action,
60
+ (0, tslib_1.__metadata)("design:type", Function),
61
+ (0, tslib_1.__metadata)("design:paramtypes", [Object]),
62
+ (0, tslib_1.__metadata)("design:returntype", void 0)
63
+ ], BrowserCtxMenuService.prototype, "show", null);
64
+ (0, tslib_1.__decorate)([
65
+ mobx_1.action.bound,
66
+ (0, tslib_1.__metadata)("design:type", Function),
67
+ (0, tslib_1.__metadata)("design:paramtypes", [Boolean]),
68
+ (0, tslib_1.__metadata)("design:returntype", void 0)
69
+ ], BrowserCtxMenuService.prototype, "hide", null);
70
+ (0, tslib_1.__decorate)([
71
+ mobx_1.action.bound,
72
+ (0, tslib_1.__metadata)("design:type", Function),
73
+ (0, tslib_1.__metadata)("design:paramtypes", []),
74
+ (0, tslib_1.__metadata)("design:returntype", void 0)
75
+ ], BrowserCtxMenuService.prototype, "reset", null);
76
+ BrowserCtxMenuService = (0, tslib_1.__decorate)([
77
+ (0, di_1.Injectable)()
78
+ ], BrowserCtxMenuService);
79
+ exports.BrowserCtxMenuService = BrowserCtxMenuService;
80
+ //# sourceMappingURL=ctx-menu.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ctx-menu.service.js","sourceRoot":"","sources":["../../../src/browser/ctx-menu/ctx-menu.service.ts"],"names":[],"mappings":";;;;AAAA,+BAA0C;AAC1C,qCAA0C;AAM1C,IAAa,qBAAqB,GAAlC,MAAa,qBAAqB;IAAlC;QAEE,YAAO,GAAY,KAAK,CAAC;QAGzB,WAAM,GAA8C,SAAS,CAAC;QAG9D,UAAK,GAAkD,SAAS,CAAC;QAGjE,YAAO,GAAQ,SAAS,CAAC;QAGzB,cAAS,GAAe,iBAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IA8B/C,CAAC;IA3BQ,IAAI,CAAC,OAA4B;QACtC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QAC7D,4BAA4B;QAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YAClD,OAAO;SACR;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;QAC9D,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,YAAY,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;QACzG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAGM,IAAI,CAAC,QAAiB;QAC3B,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE;YACrC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;SACvB;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAGO,KAAK;QACX,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;CACF,CAAA;AA1CC;IADC,iBAAU;;sDACc;AAGzB;IADC,iBAAU;;qDACmD;AAG9D;IADC,iBAAU;;oDACsD;AAGjE;IADC,iBAAU;;sDACc;AAGzB;IADC,iBAAU;;wDACkC;AAG7C;IADC,aAAM;;;;iDAcN;AAGD;IADC,aAAM,CAAC,KAAK;;;;iDAMZ;AAGD;IADC,aAAM,CAAC,KAAK;;;;kDAGZ;AA3CU,qBAAqB;IADjC,IAAA,eAAU,GAAE;GACA,qBAAqB,CA4CjC;AA5CY,sDAAqB"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import 'react-ctxmenu-trigger/assets/index.css';
3
+ export declare const CtxMenu: React.FunctionComponent<object>;
4
+ //# sourceMappingURL=ctx-menu.view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ctx-menu.view.d.ts","sourceRoot":"","sources":["../../../src/browser/ctx-menu/ctx-menu.view.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,wCAAwC,CAAC;AAEhD,eAAO,MAAM,OAAO,iCA4ClB,CAAC"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CtxMenu = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ const mobx_react_lite_1 = require("mobx-react-lite");
7
+ const click_outside_1 = require("@opensumi/ide-core-browser/lib/components/click-outside");
8
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
9
+ const browser_1 = require("@opensumi/ide-core-browser/lib/menu/next/renderer/ctxmenu/browser");
10
+ const actions_1 = require("@opensumi/ide-core-browser/lib/components/actions");
11
+ const placements_1 = (0, tslib_1.__importDefault)(require("@opensumi/ide-core-browser/lib/components/actions/placements"));
12
+ const react_ctxmenu_trigger_1 = (0, tslib_1.__importDefault)(require("react-ctxmenu-trigger"));
13
+ require("react-ctxmenu-trigger/assets/index.css");
14
+ exports.CtxMenu = (0, mobx_react_lite_1.observer)(() => {
15
+ const ctxMenuService = (0, ide_core_browser_1.useInjectable)(browser_1.IBrowserCtxMenu);
16
+ const handleClick = react_1.default.useCallback(() => {
17
+ ctxMenuService.hide(false);
18
+ }, []);
19
+ const onClickOutSide = react_1.default.useCallback(() => {
20
+ if (ctxMenuService.visible) {
21
+ ctxMenuService.hide(true);
22
+ }
23
+ }, [ctxMenuService.visible]);
24
+ // todo: 缓存上一次点击 visible 完成 toggle 效果
25
+ return (react_1.default.createElement(react_ctxmenu_trigger_1.default
26
+ // popupTransitionName='slide-up'
27
+ , {
28
+ // popupTransitionName='slide-up'
29
+ popupPlacement: 'bottomLeft', popupVisible: ctxMenuService.visible, action: ['contextMenu'], popupAlign: {
30
+ overflow: {
31
+ adjustX: 1,
32
+ adjustY: 1,
33
+ },
34
+ offset: [window.scrollX, window.scrollY],
35
+ }, point: ctxMenuService.point || {}, popupClassName: 'point-popup', builtinPlacements: placements_1.default, popup: (react_1.default.createElement(click_outside_1.ClickOutside, { mouseEvents: ['click', 'contextmenu'], onOutsideClick: onClickOutSide },
36
+ react_1.default.createElement(actions_1.MenuActionList, { data: ctxMenuService.menuNodes, afterClick: handleClick, context: ctxMenuService.context }))), alignPoint: true }));
37
+ });
38
+ exports.CtxMenu.displayName = 'CtxMenu';
39
+ //# sourceMappingURL=ctx-menu.view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ctx-menu.view.js","sourceRoot":"","sources":["../../../src/browser/ctx-menu/ctx-menu.view.tsx"],"names":[],"mappings":";;;;AAAA,+DAA0B;AAC1B,qDAA2C;AAC3C,2FAAuF;AACvF,iEAA2D;AAC3D,+FAAoG;AACpG,+EAAmF;AACnF,2HAAsF;AACtF,+FAAmD;AACnD,kDAAgD;AAEnC,QAAA,OAAO,GAAG,IAAA,0BAAQ,EAAC,GAAG,EAAE;IACnC,MAAM,cAAc,GAAG,IAAA,gCAAa,EAAkB,yBAAe,CAAC,CAAC;IAEvE,MAAM,WAAW,GAAG,eAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QACzC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,cAAc,GAAG,eAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC5C,IAAI,cAAc,CAAC,OAAO,EAAE;YAC1B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC3B;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;IAE7B,qCAAqC;IACrC,OAAO,CACL,8BAAC,+BAAc;IACb,iCAAiC;;QAAjC,iCAAiC;QACjC,cAAc,EAAC,YAAY,EAC3B,YAAY,EAAE,cAAc,CAAC,OAAO,EACpC,MAAM,EAAE,CAAC,aAAa,CAAC,EACvB,UAAU,EAAE;YACV,QAAQ,EAAE;gBACR,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;aACX;YACD,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;SACzC,EACD,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,EAAE,EACjC,cAAc,EAAC,aAAa,EAC5B,iBAAiB,EAAE,oBAAU,EAC7B,KAAK,EAAE,CACL,8BAAC,4BAAY,IACX,WAAW,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,EACrC,cAAc,EAAE,cAAc;YAC9B,8BAAC,wBAAc,IACb,IAAI,EAAE,cAAc,CAAC,SAAS,EAC9B,UAAU,EAAE,WAAW,EACvB,OAAO,EAAE,cAAc,CAAC,OAAO,GAC/B,CACW,CAChB,EACD,UAAU,SACV,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,eAAO,CAAC,WAAW,GAAG,SAAS,CAAC"}
@@ -0,0 +1,21 @@
1
+ /// <reference types="react" />
2
+ import { IDialogService, AbstractMessageService, Icon } from '../common';
3
+ import { Deferred, MessageType } from '@opensumi/ide-core-common';
4
+ export declare class DialogService extends AbstractMessageService implements IDialogService {
5
+ protected type: MessageType | undefined;
6
+ protected deferred: Deferred<any>;
7
+ protected visible: boolean;
8
+ protected message: string | React.ReactNode;
9
+ protected title: string;
10
+ closable: boolean;
11
+ protected buttons: string[];
12
+ open<T = string>(message: string | React.ReactNode, type: MessageType, buttons?: any[], closable?: boolean): Promise<T | undefined>;
13
+ hide<T = string>(value?: T): void;
14
+ reset(): void;
15
+ isVisible(): boolean;
16
+ getMessage(): string | React.ReactNode;
17
+ getType(): MessageType | undefined;
18
+ getIcon(): Icon | undefined;
19
+ getButtons(): string[];
20
+ }
21
+ //# sourceMappingURL=dialog.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.service.d.ts","sourceRoot":"","sources":["../../src/browser/dialog.service.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,IAAI,EAAC,MAAM,WAAW,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAElE,qBACa,aAAc,SAAQ,sBAAuB,YAAW,cAAc;IAEjF,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,CAAC;IAExC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;IAGlC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAS;IAGnC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAM;IAGjD,SAAS,CAAC,KAAK,EAAE,MAAM,CAAM;IAGtB,QAAQ,EAAE,OAAO,CAAQ;IAGhC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IAGjC,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,GAAE,OAAc,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAazI,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI;IAMjC,KAAK,IAAI,IAAI;IAMb,SAAS,IAAI,OAAO;IAIpB,UAAU,IAAI,MAAM,GAAG,KAAK,CAAC,SAAS;IAItC,OAAO,IAAI,WAAW,GAAG,SAAS;IAIlC,OAAO,IAAI,IAAI,GAAG,SAAS;IAsB3B,UAAU,IAAI,MAAM,EAAE;CAGvB"}
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.DialogService = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const di_1 = require("@opensumi/di");
7
+ const common_1 = require("../common");
8
+ const mobx_1 = require("mobx");
9
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
10
+ let DialogService = class DialogService extends common_1.AbstractMessageService {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.visible = false;
14
+ this.message = '';
15
+ this.title = '';
16
+ this.closable = true;
17
+ this.buttons = [];
18
+ }
19
+ open(message, type, buttons, closable = true) {
20
+ this.deferred = new ide_core_common_1.Deferred();
21
+ this.type = type;
22
+ this.message = message;
23
+ this.visible = true;
24
+ this.closable = closable;
25
+ if (buttons) {
26
+ this.buttons = buttons;
27
+ }
28
+ return this.deferred.promise;
29
+ }
30
+ hide(value) {
31
+ this.visible = false;
32
+ this.deferred.resolve(value);
33
+ }
34
+ reset() {
35
+ this.type = undefined;
36
+ this.message = '';
37
+ this.buttons = [];
38
+ }
39
+ isVisible() {
40
+ return this.visible;
41
+ }
42
+ getMessage() {
43
+ return this.message;
44
+ }
45
+ getType() {
46
+ return this.type;
47
+ }
48
+ getIcon() {
49
+ switch (this.type) {
50
+ case ide_core_common_1.MessageType.Error:
51
+ return {
52
+ color: 'var(--notificationsErrorIcon-foreground)',
53
+ className: 'close-circle',
54
+ };
55
+ case ide_core_common_1.MessageType.Info:
56
+ return {
57
+ color: 'var(--notificationsInfoIcon-foreground)',
58
+ className: 'info-circle',
59
+ };
60
+ case ide_core_common_1.MessageType.Warning:
61
+ return {
62
+ color: 'var(--notificationsWarningIcon-foreground)',
63
+ className: 'question-circle',
64
+ };
65
+ default:
66
+ break;
67
+ }
68
+ }
69
+ getButtons() {
70
+ return this.buttons;
71
+ }
72
+ };
73
+ (0, tslib_1.__decorate)([
74
+ mobx_1.observable,
75
+ (0, tslib_1.__metadata)("design:type", Boolean)
76
+ ], DialogService.prototype, "visible", void 0);
77
+ (0, tslib_1.__decorate)([
78
+ mobx_1.observable,
79
+ (0, tslib_1.__metadata)("design:type", Object)
80
+ ], DialogService.prototype, "message", void 0);
81
+ (0, tslib_1.__decorate)([
82
+ mobx_1.observable,
83
+ (0, tslib_1.__metadata)("design:type", String)
84
+ ], DialogService.prototype, "title", void 0);
85
+ (0, tslib_1.__decorate)([
86
+ mobx_1.observable,
87
+ (0, tslib_1.__metadata)("design:type", Boolean)
88
+ ], DialogService.prototype, "closable", void 0);
89
+ (0, tslib_1.__decorate)([
90
+ mobx_1.observable,
91
+ (0, tslib_1.__metadata)("design:type", Array)
92
+ ], DialogService.prototype, "buttons", void 0);
93
+ (0, tslib_1.__decorate)([
94
+ mobx_1.action,
95
+ (0, tslib_1.__metadata)("design:type", Function),
96
+ (0, tslib_1.__metadata)("design:paramtypes", [Object, Number, Array, Boolean]),
97
+ (0, tslib_1.__metadata)("design:returntype", Promise)
98
+ ], DialogService.prototype, "open", null);
99
+ (0, tslib_1.__decorate)([
100
+ mobx_1.action,
101
+ (0, tslib_1.__metadata)("design:type", Function),
102
+ (0, tslib_1.__metadata)("design:paramtypes", [typeof (_a = typeof T !== "undefined" && T) === "function" ? _a : Object]),
103
+ (0, tslib_1.__metadata)("design:returntype", void 0)
104
+ ], DialogService.prototype, "hide", null);
105
+ (0, tslib_1.__decorate)([
106
+ mobx_1.action,
107
+ (0, tslib_1.__metadata)("design:type", Function),
108
+ (0, tslib_1.__metadata)("design:paramtypes", []),
109
+ (0, tslib_1.__metadata)("design:returntype", void 0)
110
+ ], DialogService.prototype, "reset", null);
111
+ DialogService = (0, tslib_1.__decorate)([
112
+ (0, di_1.Injectable)()
113
+ ], DialogService);
114
+ exports.DialogService = DialogService;
115
+ //# sourceMappingURL=dialog.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.service.js","sourceRoot":"","sources":["../../src/browser/dialog.service.ts"],"names":[],"mappings":";;;;;AAAA,qCAA0C;AAC1C,sCAAwE;AACxE,+BAA0C;AAC1C,+DAAkE;AAGlE,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,+BAAsB;IAAzD;;QAOY,YAAO,GAAY,KAAK,CAAC;QAGzB,YAAO,GAA6B,EAAE,CAAC;QAGvC,UAAK,GAAW,EAAE,CAAC;QAGtB,aAAQ,GAAY,IAAI,CAAC;QAGtB,YAAO,GAAa,EAAE,CAAC;IAiEnC,CAAC;IA9DC,IAAI,CAAa,OAAiC,EAAE,IAAiB,EAAE,OAAe,EAAE,WAAoB,IAAI;QAC9G,IAAI,CAAC,QAAQ,GAAG,IAAI,0BAAQ,EAAU,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;SACxB;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;IAC/B,CAAC;IAGD,IAAI,CAAa,KAAS;QACxB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAGD,KAAK;QACH,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,OAAO;QACL,QAAQ,IAAI,CAAC,IAAI,EAAE;YACjB,KAAK,6BAAW,CAAC,KAAK;gBACpB,OAAO;oBACL,KAAK,EAAE,0CAA0C;oBACjD,SAAS,EAAE,cAAc;iBAC1B,CAAC;YACJ,KAAK,6BAAW,CAAC,IAAI;gBACjB,OAAO;oBACL,KAAK,EAAE,yCAAyC;oBAChD,SAAS,EAAE,aAAa;iBACzB,CAAC;YACN,KAAK,6BAAW,CAAC,OAAO;gBACpB,OAAO;oBACL,KAAK,EAAE,4CAA4C;oBACnD,SAAS,EAAE,iBAAiB;iBAC7B,CAAC;YACN;gBACE,MAAM;SACT;IACH,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF,CAAA;AA7EC;IADC,iBAAU;;8CACwB;AAGnC;IADC,iBAAU;;8CACsC;AAGjD;IADC,iBAAU;;4CACkB;AAG7B;IADC,iBAAU;;+CACqB;AAGhC;IADC,iBAAU;;8CACsB;AAGjC;IADC,aAAM;;;;yCAWN;AAGD;IADC,aAAM;;sEACkB,CAAC,oBAAD,CAAC;;yCAGzB;AAGD;IADC,aAAM;;;;0CAKN;AA7CU,aAAa;IADzB,IAAA,eAAU,GAAE;GACA,aAAa,CAoFzB;AApFY,sCAAa"}
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ export declare const Dialog: React.FunctionComponent<object>;
3
+ //# sourceMappingURL=dialog.view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.view.d.ts","sourceRoot":"","sources":["../../src/browser/dialog.view.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,eAAO,MAAM,MAAM,iCAiDjB,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Dialog = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ const mobx_react_lite_1 = require("mobx-react-lite");
7
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
8
+ const strings_1 = require("@opensumi/ide-core-common/lib/utils/strings");
9
+ const ide_components_1 = require("@opensumi/ide-components");
10
+ const common_1 = require("../common");
11
+ exports.Dialog = (0, mobx_react_lite_1.observer)(() => {
12
+ const dialogService = (0, ide_core_browser_1.useInjectable)(common_1.IDialogService);
13
+ const icon = dialogService.getIcon();
14
+ const message = dialogService.getMessage();
15
+ const buttons = dialogService.getButtons();
16
+ const type = dialogService.getType();
17
+ function afterClose() {
18
+ dialogService.reset();
19
+ }
20
+ function handleClose() {
21
+ dialogService.hide();
22
+ }
23
+ function handlerClickButton(value) {
24
+ return () => {
25
+ dialogService.hide(value);
26
+ };
27
+ }
28
+ return (react_1.default.createElement(ide_components_1.Dialog, { visible: dialogService.isVisible(), onClose: handleClose, closable: dialogService.closable, afterClose: afterClose, message: message, type: 'confirm', messageType: type, icon: icon, buttons: buttons.length ? buttons.map((button, index) => (react_1.default.createElement(ide_components_1.Button, { size: 'large', onClick: handlerClickButton(button), key: button, type: index === buttons.length - 1 ? 'primary' : 'secondary' }, (0, strings_1.mnemonicButtonLabel)(button, true)))) : (react_1.default.createElement(ide_components_1.Button, { size: 'large', onClick: handleClose, type: 'primary' }, (0, ide_core_browser_1.localize)('dialog.confirm'))) }));
29
+ });
30
+ //# sourceMappingURL=dialog.view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.view.js","sourceRoot":"","sources":["../../src/browser/dialog.view.tsx"],"names":[],"mappings":";;;;AAAA,+DAA0B;AAC1B,qDAA2C;AAC3C,iEAAqE;AACrE,yEAAkF;AAClF,6DAAwE;AAExE,sCAA2C;AAE9B,QAAA,MAAM,GAAG,IAAA,0BAAQ,EAAC,GAAG,EAAE;IAClC,MAAM,aAAa,GAAG,IAAA,gCAAa,EAAiB,uBAAc,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,EAAE,CAAC;IAErC,SAAS,UAAU;QACjB,aAAa,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAED,SAAS,WAAW;QAClB,aAAa,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,SAAS,kBAAkB,CAAC,KAAa;QACvC,OAAO,GAAG,EAAE;YACV,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,CACL,8BAAC,uBAAU,IACT,OAAO,EAAE,aAAa,CAAC,SAAS,EAAE,EAClC,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAChC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAC,SAAS,EACd,WAAW,EAAE,IAAI,EACjB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CACvD,8BAAC,uBAAM,IACL,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,kBAAkB,CAAC,MAAM,CAAC,EACnC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,IAC1D,IAAA,6BAAmB,EAAC,MAAM,EAAE,IAAI,CAAC,CAC5B,CACV,CAAC,CAAC,CAAC,CAAC,CACH,8BAAC,uBAAM,IACL,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,WAAW,EACpB,IAAI,EAAC,SAAS,IACb,IAAA,2BAAQ,EAAC,gBAAgB,CAAC,CACpB,CACV,GACD,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /// <reference types="react" />
2
+ import { Provider } from '@opensumi/di';
3
+ import { BrowserModule } from '@opensumi/ide-core-browser';
4
+ export declare class OverlayModule extends BrowserModule {
5
+ providers: Provider[];
6
+ isOverlay: boolean;
7
+ component: import("react").FunctionComponent<object>;
8
+ }
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAQ3D,qBACa,aAAc,SAAQ,aAAa;IAC9C,SAAS,EAAE,QAAQ,EAAE,CAanB;IAEF,SAAS,UAAQ;IACjB,SAAS,4CAAW;CACrB"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OverlayModule = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const di_1 = require("@opensumi/di");
6
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
7
+ const index_view_1 = require("./index.view");
8
+ const common_1 = require("../common");
9
+ const dialog_service_1 = require("./dialog.service");
10
+ const message_service_1 = require("./message.service");
11
+ const ctx_menu_service_1 = require("./ctx-menu/ctx-menu.service");
12
+ const browser_1 = require("@opensumi/ide-core-browser/lib/menu/next/renderer/ctxmenu/browser");
13
+ let OverlayModule = class OverlayModule extends ide_core_browser_1.BrowserModule {
14
+ constructor() {
15
+ super(...arguments);
16
+ this.providers = [
17
+ {
18
+ token: common_1.IDialogService,
19
+ useClass: dialog_service_1.DialogService,
20
+ },
21
+ {
22
+ token: common_1.IMessageService,
23
+ useClass: message_service_1.MessageService,
24
+ },
25
+ {
26
+ token: browser_1.IBrowserCtxMenu,
27
+ useClass: ctx_menu_service_1.BrowserCtxMenuService,
28
+ },
29
+ ];
30
+ this.isOverlay = true;
31
+ this.component = index_view_1.Overlay;
32
+ }
33
+ };
34
+ OverlayModule = (0, tslib_1.__decorate)([
35
+ (0, di_1.Injectable)()
36
+ ], OverlayModule);
37
+ exports.OverlayModule = OverlayModule;
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":";;;;AAAA,qCAAoD;AACpD,iEAA2D;AAC3D,6CAAuC;AACvC,sCAA4D;AAC5D,qDAAiD;AACjD,uDAAmD;AACnD,kEAAoE;AACpE,+FAAoG;AAGpG,IAAa,aAAa,GAA1B,MAAa,aAAc,SAAQ,gCAAa;IAAhD;;QACE,cAAS,GAAe;YACtB;gBACE,KAAK,EAAE,uBAAc;gBACrB,QAAQ,EAAE,8BAAa;aACxB;YACD;gBACE,KAAK,EAAE,wBAAe;gBACtB,QAAQ,EAAE,gCAAc;aACzB;YACD;gBACE,KAAK,EAAE,yBAAe;gBACtB,QAAQ,EAAE,wCAAqB;aAChC;SACF,CAAC;QAEF,cAAS,GAAG,IAAI,CAAC;QACjB,cAAS,GAAG,oBAAO,CAAC;IACtB,CAAC;CAAA,CAAA;AAlBY,aAAa;IADzB,IAAA,eAAU,GAAE;GACA,aAAa,CAkBzB;AAlBY,sCAAa"}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import './styles.module.less';
3
+ export declare const Overlay: React.FunctionComponent<object>;
4
+ //# sourceMappingURL=index.view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.view.d.ts","sourceRoot":"","sources":["../../src/browser/index.view.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,sBAAsB,CAAC;AAE9B,eAAO,MAAM,OAAO,iCAgClB,CAAC"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Overlay = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const react_1 = (0, tslib_1.__importDefault)(require("react"));
6
+ const mobx_react_lite_1 = require("mobx-react-lite");
7
+ const ctx_menu_view_1 = require("./ctx-menu/ctx-menu.view");
8
+ const dialog_view_1 = require("./dialog.view");
9
+ const ide_core_browser_1 = require("@opensumi/ide-core-browser");
10
+ require("./styles.module.less");
11
+ exports.Overlay = (0, mobx_react_lite_1.observer)(() => {
12
+ const componentRegistry = (0, ide_core_browser_1.useInjectable)(ide_core_browser_1.ComponentRegistry);
13
+ const clientApp = (0, ide_core_browser_1.useInjectable)(ide_core_browser_1.IClientApp);
14
+ const [extraComponents, setExtra] = react_1.default.useState([]);
15
+ const appConfig = (0, ide_core_browser_1.useInjectable)(ide_core_browser_1.AppConfig);
16
+ react_1.default.useEffect(() => {
17
+ // 对于嵌套在模块视图的SlotRenderer,渲染时应用已启动
18
+ clientApp.appInitialized.promise.then(() => {
19
+ var _a;
20
+ if ((_a = appConfig.layoutConfig[ide_core_browser_1.SlotLocation.extra]) === null || _a === void 0 ? void 0 : _a.modules) {
21
+ const components = [];
22
+ appConfig.layoutConfig[ide_core_browser_1.SlotLocation.extra].modules.forEach((name) => {
23
+ const info = componentRegistry.getComponentRegistryInfo(name);
24
+ if (info) {
25
+ (info.views || []).forEach((v) => {
26
+ if (v.component) {
27
+ components.push(v.component);
28
+ }
29
+ });
30
+ }
31
+ });
32
+ setExtra(components);
33
+ }
34
+ });
35
+ }, []);
36
+ return (react_1.default.createElement("div", { id: 'ide-overlay', className: 'ide-overlay' },
37
+ react_1.default.createElement(dialog_view_1.Dialog, null),
38
+ react_1.default.createElement(ctx_menu_view_1.CtxMenu, null),
39
+ react_1.default.createElement(ide_core_browser_1.ComponentRenderer, { Component: extraComponents })));
40
+ });
41
+ //# sourceMappingURL=index.view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.view.js","sourceRoot":"","sources":["../../src/browser/index.view.tsx"],"names":[],"mappings":";;;;AAAA,+DAA0B;AAC1B,qDAA2C;AAE3C,4DAAmD;AACnD,+CAAuC;AACvC,iEAAsI;AACtI,gCAA8B;AAEjB,QAAA,OAAO,GAAG,IAAA,0BAAQ,EAAC,GAAG,EAAE;IACnC,MAAM,iBAAiB,GAAsB,IAAA,gCAAa,EAAC,oCAAiB,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAG,IAAA,gCAAa,EAAC,6BAAU,CAAC,CAAC;IAC5C,MAAM,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,eAAK,CAAC,QAAQ,CAAwB,EAAE,CAAC,CAAC;IAC9E,MAAM,SAAS,GAAc,IAAA,gCAAa,EAAC,4BAAS,CAAC,CAAC;IACtD,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,kCAAkC;QAClC,SAAS,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;;YACzC,IAAI,MAAA,SAAS,CAAC,YAAY,CAAC,+BAAY,CAAC,KAAK,CAAC,0CAAE,OAAO,EAAE;gBACvD,MAAM,UAAU,GAA0B,EAAE,CAAC;gBAC7C,SAAS,CAAC,YAAY,CAAC,+BAAY,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBAClE,MAAM,IAAI,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;oBAC9D,IAAI,IAAI,EAAE;wBACR,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;4BAC/B,IAAI,CAAC,CAAC,SAAS,EAAE;gCACf,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,SAAU,CAAC,CAAC;6BAC/B;wBACH,CAAC,CAAC,CAAC;qBACJ;gBACH,CAAC,CAAC,CAAC;gBACH,QAAQ,CAAC,UAAU,CAAC,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,uCAAK,EAAE,EAAC,aAAa,EAAC,SAAS,EAAC,aAAa;QAC3C,8BAAC,oBAAM,OAAG;QACV,8BAAC,uBAAO,OAAG;QACX,8BAAC,oCAAiB,IAAC,SAAS,EAAE,eAAe,GAAI,CAC7C,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
File without changes
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ import { IMessageService, AbstractMessageService } from '../common';
3
+ import { MessageType } from '@opensumi/ide-core-common';
4
+ export declare class MessageService extends AbstractMessageService implements IMessageService {
5
+ private preMessage;
6
+ private showTime;
7
+ protected static SAME_MESSAGE_DURATION: number;
8
+ protected static DURATION: {
9
+ [type: number]: number;
10
+ };
11
+ /**
12
+ *
13
+ * @param rawMessage message
14
+ * @param type MessageType
15
+ * @param buttons buttons
16
+ * @param closable true | false
17
+ * @param from from extension
18
+ */
19
+ open<T = string>(rawMessage: string | React.ReactNode, type: MessageType, buttons?: string[], closable?: boolean, from?: string): Promise<T | undefined>;
20
+ hide(): void;
21
+ }
22
+ //# sourceMappingURL=message.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.service.d.ts","sourceRoot":"","sources":["../../src/browser/message.service.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAsB,MAAM,WAAW,CAAC;AAExF,OAAO,EAAE,WAAW,EAAkB,MAAM,2BAA2B,CAAC;AAExE,qBACa,cAAe,SAAQ,sBAAuB,YAAW,eAAe;IAGnF,OAAO,CAAC,UAAU,CAA2B;IAG7C,OAAO,CAAC,QAAQ,CAAa;IAG7B,SAAS,CAAC,MAAM,CAAC,qBAAqB,SAAQ;IAG9C,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAInD;IAEF;;;;;;;OAOG;IACH,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,GAAE,OAAc,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAiB9J,IAAI,IAAI,IAAI;CAGb"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var MessageService_1;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.MessageService = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const di_1 = require("@opensumi/di");
7
+ const common_1 = require("../common");
8
+ const ide_components_1 = require("@opensumi/ide-components");
9
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
10
+ let MessageService = MessageService_1 = class MessageService extends common_1.AbstractMessageService {
11
+ constructor() {
12
+ super(...arguments);
13
+ // 当前组件展示的时间
14
+ this.showTime = 0;
15
+ }
16
+ /**
17
+ *
18
+ * @param rawMessage message
19
+ * @param type MessageType
20
+ * @param buttons buttons
21
+ * @param closable true | false
22
+ * @param from from extension
23
+ */
24
+ open(rawMessage, type, buttons, closable = true, from) {
25
+ let message = rawMessage;
26
+ // 如果两秒内提示信息相同,则直接返回上一个提示
27
+ if (Date.now() - this.showTime < MessageService_1.SAME_MESSAGE_DURATION && typeof message === 'string' && this.preMessage === message) {
28
+ return Promise.resolve(undefined);
29
+ }
30
+ this.preMessage = typeof message === 'string' && message;
31
+ this.showTime = Date.now();
32
+ if (typeof rawMessage === 'string' && rawMessage.length > common_1.MAX_MESSAGE_LENGTH) {
33
+ message = `${rawMessage.substr(0, common_1.MAX_MESSAGE_LENGTH)}...`;
34
+ }
35
+ const description = from && typeof from === 'string' ? `${(0, ide_core_common_1.localize)('component.message.origin')}: ${from}` : '';
36
+ const key = (0, ide_core_common_1.uuid)();
37
+ const promise = (0, ide_components_1.open)(message, type, closable, key, buttons, description);
38
+ return promise || Promise.resolve(undefined);
39
+ }
40
+ hide() {
41
+ ide_components_1.notification.destroy();
42
+ }
43
+ };
44
+ // 相同文案返回的间隔时间
45
+ MessageService.SAME_MESSAGE_DURATION = 3000;
46
+ // 参考 vscode message 组件消失的时间
47
+ MessageService.DURATION = {
48
+ [ide_core_common_1.MessageType.Info]: 15000,
49
+ [ide_core_common_1.MessageType.Warning]: 18000,
50
+ [ide_core_common_1.MessageType.Error]: 20000,
51
+ };
52
+ MessageService = MessageService_1 = (0, tslib_1.__decorate)([
53
+ (0, di_1.Injectable)()
54
+ ], MessageService);
55
+ exports.MessageService = MessageService;
56
+ //# sourceMappingURL=message.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.service.js","sourceRoot":"","sources":["../../src/browser/message.service.tsx"],"names":[],"mappings":";;;;;AACA,qCAA0C;AAC1C,sCAAwF;AACxF,6DAA8D;AAC9D,+DAAwE;AAGxE,IAAa,cAAc,sBAA3B,MAAa,cAAe,SAAQ,+BAAsB;IAA1D;;QAKE,YAAY;QACJ,aAAQ,GAAW,CAAC,CAAC;IAwC/B,CAAC;IA5BC;;;;;;;OAOG;IACH,IAAI,CAAa,UAAoC,EAAE,IAAiB,EAAE,OAAkB,EAAE,WAAoB,IAAI,EAAE,IAAa;QACnI,IAAI,OAAO,GAAG,UAAU,CAAC;QACzB,yBAAyB;QACzB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,GAAG,gBAAc,CAAC,qBAAqB,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;YACnI,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACnC;QACD,IAAI,CAAC,UAAU,GAAG,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC;QACzD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,2BAAkB,EAAE;YAC5E,OAAO,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,2BAAkB,CAAC,KAAK,CAAC;SAC5D;QACD,MAAM,WAAW,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAA,0BAAQ,EAAC,0BAA0B,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/G,MAAM,GAAG,GAAG,IAAA,sBAAI,GAAE,CAAC;QACnB,MAAM,OAAO,GAAG,IAAA,qBAAI,EAAI,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAC5E,OAAO,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI;QACF,6BAAY,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;CACF,CAAA;AAtCC,cAAc;AACG,oCAAqB,GAAG,IAAK,CAAA;AAE9C,4BAA4B;AACX,uBAAQ,GAA+B;IACtD,CAAC,6BAAW,CAAC,IAAI,CAAC,EAAE,KAAK;IACzB,CAAC,6BAAW,CAAC,OAAO,CAAC,EAAE,KAAK;IAC5B,CAAC,6BAAW,CAAC,KAAK,CAAC,EAAE,KAAK;CAC1B,CAAA;AAhBS,cAAc;IAD1B,IAAA,eAAU,GAAE;GACA,cAAc,CA8C1B;AA9CY,wCAAc"}
@@ -0,0 +1,8 @@
1
+ :global {
2
+ .ide-overlay {
3
+ position: relative;
4
+ z-index: 999;
5
+ overflow: auto;
6
+ outline: 0;
7
+ }
8
+ }
@@ -0,0 +1,62 @@
1
+ import React from 'react';
2
+ import { MessageType, URI } from '@opensumi/ide-core-common';
3
+ export declare const IMessageService: unique symbol;
4
+ export interface IMessageService {
5
+ info(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
6
+ warning(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
7
+ error(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
8
+ open<T = string>(message: string | React.ReactNode, type: MessageType, buttons?: string[], closable?: boolean, from?: string): Promise<T | undefined>;
9
+ hide<T = string>(value?: T): void;
10
+ }
11
+ export interface Icon {
12
+ color: string;
13
+ className: string;
14
+ }
15
+ export declare const MAX_MESSAGE_LENGTH = 1000;
16
+ export declare const IDialogService: unique symbol;
17
+ export interface IDialogService extends IMessageService {
18
+ closable?: boolean;
19
+ isVisible(): boolean;
20
+ getMessage(): string | React.ReactNode;
21
+ getIcon(): Icon | undefined;
22
+ getButtons(): string[];
23
+ getType(): MessageType | undefined;
24
+ reset(): void;
25
+ }
26
+ export declare abstract class AbstractMessageService implements IMessageService {
27
+ info(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
28
+ warning(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
29
+ error(message: string | React.ReactNode, buttons?: string[], closable?: boolean): Promise<string | undefined>;
30
+ abstract open<T = string>(message: string | React.ReactNode, type: MessageType, buttons?: any[], closable?: boolean): Promise<T | undefined>;
31
+ abstract hide<T = string>(value?: T): void;
32
+ }
33
+ export interface IWindowDialogService {
34
+ showOpenDialog(options?: IOpenDialogOptions): Promise<URI[] | undefined>;
35
+ showSaveDialog(options?: ISaveDialogOptions): Promise<URI | undefined>;
36
+ }
37
+ export declare const IWindowDialogService: unique symbol;
38
+ export interface IDialogOptions {
39
+ title?: string;
40
+ defaultUri?: URI;
41
+ filters?: {
42
+ [name: string]: string;
43
+ };
44
+ }
45
+ export interface ISaveDialogOptions extends IDialogOptions {
46
+ saveLabel?: string;
47
+ showNameInput?: boolean;
48
+ defaultFileName?: string;
49
+ }
50
+ export interface IOpenDialogOptions extends IDialogOptions {
51
+ canSelectFiles?: boolean;
52
+ canSelectFolders?: boolean;
53
+ canSelectMany?: boolean;
54
+ openLabel?: string;
55
+ }
56
+ export declare namespace ISaveDialogOptions {
57
+ function is(option: any): boolean;
58
+ }
59
+ export declare namespace IOpenDialogOptions {
60
+ function is(option: any): boolean;
61
+ }
62
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,2BAA2B,CAAC;AAE7D,eAAO,MAAM,eAAe,eAA4B,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC7G,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAChH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAC9G,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IACtJ,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,IAAI;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC,eAAO,MAAM,cAAc,eAA2B,CAAC;AACvD,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,IAAI,OAAO,CAAC;IACrB,UAAU,IAAI,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IACvC,OAAO,IAAI,IAAI,GAAG,SAAS,CAAC;IAC5B,UAAU,IAAI,MAAM,EAAE,CAAC;IACvB,OAAO,IAAI,WAAW,GAAG,SAAS,CAAC;IACnC,KAAK,IAAI,IAAI,CAAC;CACf;AAED,8BAAsB,sBAAuB,YAAW,eAAe;IACrE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI5G,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI/G,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAG7G,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IAC5I,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI;CAC3C;AAED,MAAM,WAAW,oBAAoB;IACnC,cAAc,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;IACzE,cAAc,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC;CACxE;AAED,eAAO,MAAM,oBAAoB,eAAiC,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,GAAG,CAAC;IACjB,OAAO,CAAC,EAAE;QACR,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAmB,SAAQ,cAAc;IACxD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,yBAAiB,kBAAkB,CAAC;IAClC,SAAgB,EAAE,CAAC,MAAM,KAAA,WAExB;CACF;AAED,yBAAiB,kBAAkB,CAAC;IAClC,SAAgB,EAAE,CAAC,MAAM,KAAA,WAKxB;CACF"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IOpenDialogOptions = exports.ISaveDialogOptions = exports.IWindowDialogService = exports.AbstractMessageService = exports.IDialogService = exports.MAX_MESSAGE_LENGTH = exports.IMessageService = void 0;
4
+ const ide_core_common_1 = require("@opensumi/ide-core-common");
5
+ exports.IMessageService = Symbol('IMessageService');
6
+ exports.MAX_MESSAGE_LENGTH = 1000;
7
+ exports.IDialogService = Symbol('IDialogService');
8
+ class AbstractMessageService {
9
+ info(message, buttons, closable) {
10
+ return this.open(message, ide_core_common_1.MessageType.Info, buttons, closable);
11
+ }
12
+ warning(message, buttons, closable) {
13
+ return this.open(message, ide_core_common_1.MessageType.Warning, buttons, closable);
14
+ }
15
+ error(message, buttons, closable) {
16
+ return this.open(message, ide_core_common_1.MessageType.Error, buttons, closable);
17
+ }
18
+ }
19
+ exports.AbstractMessageService = AbstractMessageService;
20
+ exports.IWindowDialogService = Symbol('IWindowDialogService');
21
+ var ISaveDialogOptions;
22
+ (function (ISaveDialogOptions) {
23
+ function is(option) {
24
+ return 'saveLabel' in option || 'showNameInput' in option || 'defaultFileName' in option;
25
+ }
26
+ ISaveDialogOptions.is = is;
27
+ })(ISaveDialogOptions = exports.ISaveDialogOptions || (exports.ISaveDialogOptions = {}));
28
+ var IOpenDialogOptions;
29
+ (function (IOpenDialogOptions) {
30
+ function is(option) {
31
+ return 'canSelectFiles' in option
32
+ || 'canSelectFolders' in option
33
+ || 'canSelectMany' in option
34
+ || 'openLabel' in option;
35
+ }
36
+ IOpenDialogOptions.is = is;
37
+ })(IOpenDialogOptions = exports.IOpenDialogOptions || (exports.IOpenDialogOptions = {}));
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";;;AACA,+DAA6D;AAEhD,QAAA,eAAe,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAe5C,QAAA,kBAAkB,GAAG,IAAI,CAAC;AAE1B,QAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAWvD,MAAsB,sBAAsB;IAC1C,IAAI,CAAC,OAAiC,EAAE,OAAkB,EAAE,QAAkB;QAC5E,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,6BAAW,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,CAAC,OAAiC,EAAE,OAAkB,EAAE,QAAkB;QAC/E,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,6BAAW,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,OAAiC,EAAE,OAAkB,EAAE,QAAkB;QAC7E,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,6BAAW,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClE,CAAC;CAGF;AAdD,wDAcC;AAOY,QAAA,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAuBnE,IAAiB,kBAAkB,CAIlC;AAJD,WAAiB,kBAAkB;IACjC,SAAgB,EAAE,CAAC,MAAM;QACvB,OAAO,WAAW,IAAI,MAAM,IAAI,eAAe,IAAI,MAAM,IAAI,iBAAiB,IAAI,MAAM,CAAC;IAC3F,CAAC;IAFe,qBAAE,KAEjB,CAAA;AACH,CAAC,EAJgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAIlC;AAED,IAAiB,kBAAkB,CAOlC;AAPD,WAAiB,kBAAkB;IACjC,SAAgB,EAAE,CAAC,MAAM;QACvB,OAAO,gBAAgB,IAAI,MAAM;eAC5B,kBAAkB,IAAI,MAAM;eAC5B,eAAe,IAAI,MAAM;eACzB,WAAW,IAAI,MAAM,CAAC;IAC7B,CAAC;IALe,qBAAE,KAKjB,CAAA;AACH,CAAC,EAPgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAOlC"}
package/lib/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './common';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
package/lib/index.js ADDED
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ (0, tslib_1.__exportStar)(require("./common"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,wDAAyB"}
package/package.json ADDED
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "@opensumi/ide-overlay",
3
+ "version": "2.12.1-next-079c1930",
4
+ "files": [
5
+ "lib"
6
+ ],
7
+ "license": "MIT",
8
+ "main": "lib/index.js",
9
+ "typings": "lib/index.d.ts",
10
+ "scripts": {
11
+ "prepublishOnly": "npm run build",
12
+ "build": "tsc --build ../../configs/ts/references/tsconfig.overlay.json"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git@github.com:opensumi/core.git"
17
+ },
18
+ "dependencies": {
19
+ "@opensumi/ide-core-common": "2.12.1-next-079c1930",
20
+ "@opensumi/ide-core-node": "2.12.1-next-079c1930"
21
+ },
22
+ "devDependencies": {
23
+ "@opensumi/ide-core-browser": "2.12.1-next-079c1930",
24
+ "@opensumi/ide-dev-tool": "^1.3.1",
25
+ "@opensumi/ide-components": "2.12.1-next-079c1930"
26
+ }
27
+ }