@opensumi/ide-core-browser 2.21.8-rc-1670567192.0 → 2.21.8
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.
- package/lib/components/actions/index.d.ts.map +1 -1
- package/lib/components/actions/index.js +22 -2
- package/lib/components/actions/index.js.map +1 -1
- package/lib/components/tree/tree.module.less +0 -1
- package/lib/contextkey/testing.d.ts +0 -1
- package/lib/contextkey/testing.d.ts.map +1 -1
- package/lib/contextkey/testing.js +1 -2
- package/lib/contextkey/testing.js.map +1 -1
- package/lib/menu/next/menu.contrib.interface.d.ts +2 -3
- package/lib/menu/next/menu.contrib.interface.d.ts.map +1 -1
- package/lib/menu/next/menu.contrib.interface.js.map +1 -1
- package/lib/preferences/preference-configurations.js +1 -1
- package/lib/preferences/preference-configurations.js.map +1 -1
- package/lib/react-providers/config-provider.d.ts +0 -4
- package/lib/react-providers/config-provider.d.ts.map +1 -1
- package/lib/react-providers/config-provider.js.map +1 -1
- package/lib/services/storage-service.d.ts.map +1 -1
- package/lib/services/storage-service.js +1 -7
- package/lib/services/storage-service.js.map +1 -1
- package/lib/utils/label.d.ts.map +1 -1
- package/lib/utils/label.js +9 -16
- package/lib/utils/label.js.map +1 -1
- package/package.json +6 -7
- package/src/application/application-state-service.ts +0 -54
- package/src/application/application.service.ts +0 -51
- package/src/application/index.ts +0 -2
- package/src/authentication/authentication.contribution.ts +0 -35
- package/src/authentication/authentication.service.ts +0 -517
- package/src/bootstrap/app.ts +0 -745
- package/src/bootstrap/app.view.tsx +0 -88
- package/src/bootstrap/connection.ts +0 -116
- package/src/bootstrap/index.ts +0 -3
- package/src/bootstrap/inner-providers.ts +0 -297
- package/src/bootstrap/lifecycle.service.ts +0 -19
- package/src/browser-module.ts +0 -24
- package/src/common/common.command.ts +0 -977
- package/src/common/common.contribution.ts +0 -343
- package/src/common/common.define.ts +0 -55
- package/src/common/common.module.ts +0 -33
- package/src/common/common.storage.ts +0 -22
- package/src/common/container-id.ts +0 -12
- package/src/common/index.ts +0 -4
- package/src/components/actions/index.tsx +0 -486
- package/src/components/actions/placements.ts +0 -47
- package/src/components/actions/styles.module.less +0 -144
- package/src/components/badge/index.tsx +0 -1
- package/src/components/index.ts +0 -26
- package/src/components/layout/box-panel.tsx +0 -88
- package/src/components/layout/default-layout.tsx +0 -61
- package/src/components/layout/index.ts +0 -4
- package/src/components/layout/layout.ts +0 -80
- package/src/components/layout/split-panel.service.ts +0 -56
- package/src/components/layout/split-panel.tsx +0 -296
- package/src/components/layout/styles.module.less +0 -21
- package/src/components/loading/index.ts +0 -1
- package/src/components/loading/loading.less +0 -14
- package/src/components/loading/loading.view.tsx +0 -7
- package/src/components/loading/media/loading-dark.svg +0 -52
- package/src/components/loading/media/loading-hc.svg +0 -52
- package/src/components/loading/media/loading.svg +0 -52
- package/src/components/popover/styles.module.less +0 -81
- package/src/components/portal/index.tsx +0 -13
- package/src/components/progressbar/index.tsx +0 -16
- package/src/components/progressbar/styles.module.less +0 -31
- package/src/components/recycle-tree/index.ts +0 -1
- package/src/components/recycle-tree/recycle-tree.view.tsx +0 -368
- package/src/components/resize/resize.module.less +0 -78
- package/src/components/resize/resize.tsx +0 -663
- package/src/components/scroll/index.tsx +0 -386
- package/src/components/scroll/scroll.module.less +0 -108
- package/src/components/scrollbar/index.ts +0 -1
- package/src/components/scrollbar/scrollbar.less +0 -36
- package/src/components/scrollbar/scrollbar.view.ts +0 -8
- package/src/components/select/index.tsx +0 -12
- package/src/components/select/styles.less +0 -6
- package/src/components/tree/index.ts +0 -3
- package/src/components/tree/tree-node.view.tsx +0 -546
- package/src/components/tree/tree.module.less +0 -297
- package/src/components/tree/tree.view.tsx +0 -486
- package/src/context-key.ts +0 -48
- package/src/contextkey/dialog.ts +0 -3
- package/src/contextkey/explorer.ts +0 -26
- package/src/contextkey/index.ts +0 -6
- package/src/contextkey/outline.ts +0 -4
- package/src/contextkey/resource.ts +0 -61
- package/src/contextkey/terminal.ts +0 -7
- package/src/contextkey/testing.ts +0 -9
- package/src/contextkey/workspace.ts +0 -7
- package/src/core-preferences.ts +0 -318
- package/src/dom/index.ts +0 -176
- package/src/encoding-registry.ts +0 -83
- package/src/extensions/extensions-point.service.ts +0 -78
- package/src/extensions/index.ts +0 -3
- package/src/extensions/schema/browserViews.ts +0 -96
- package/src/extensions/schema/menu.ts +0 -245
- package/src/extensions/schema/opensumiExtensionPackageSchema.ts +0 -12
- package/src/extensions/schema/toolbar.ts +0 -338
- package/src/extensions/schema/vscodeExtensionPackageSchema.ts +0 -330
- package/src/fs/index.ts +0 -12
- package/src/hash-calculate/hash-calculate.contribution.ts +0 -19
- package/src/index.ts +0 -42
- package/src/keybinding/index.ts +0 -1
- package/src/keybinding/keybinding.ts +0 -908
- package/src/keyboard/index.ts +0 -3
- package/src/keyboard/keyboard-layout-provider.ts +0 -412
- package/src/keyboard/keyboard-layout-service.ts +0 -449
- package/src/keyboard/keys.ts +0 -748
- package/src/keyboard/layouts/_.contribution.ts +0 -24
- package/src/keyboard/layouts/cz.win.ts +0 -168
- package/src/keyboard/layouts/de-swiss.win.ts +0 -168
- package/src/keyboard/layouts/de.darwin.ts +0 -131
- package/src/keyboard/layouts/de.linux.ts +0 -186
- package/src/keyboard/layouts/de.win.ts +0 -168
- package/src/keyboard/layouts/dk.win.ts +0 -168
- package/src/keyboard/layouts/dvorak.darwin.ts +0 -131
- package/src/keyboard/layouts/en-belgian.win.ts +0 -168
- package/src/keyboard/layouts/en-ext.darwin.ts +0 -131
- package/src/keyboard/layouts/en-in.win.ts +0 -168
- package/src/keyboard/layouts/en-intl.darwin.ts +0 -131
- package/src/keyboard/layouts/en-intl.win.ts +0 -168
- package/src/keyboard/layouts/en-uk.darwin.ts +0 -131
- package/src/keyboard/layouts/en-uk.win.ts +0 -168
- package/src/keyboard/layouts/en.darwin.ts +0 -139
- package/src/keyboard/layouts/en.linux.ts +0 -186
- package/src/keyboard/layouts/en.win.ts +0 -173
- package/src/keyboard/layouts/es-latin.win.ts +0 -168
- package/src/keyboard/layouts/es.darwin.ts +0 -131
- package/src/keyboard/layouts/es.linux.ts +0 -186
- package/src/keyboard/layouts/es.win.ts +0 -168
- package/src/keyboard/layouts/fr.darwin.ts +0 -131
- package/src/keyboard/layouts/fr.linux.ts +0 -186
- package/src/keyboard/layouts/fr.win.ts +0 -168
- package/src/keyboard/layouts/hu.win.ts +0 -168
- package/src/keyboard/layouts/it.darwin.ts +0 -131
- package/src/keyboard/layouts/it.win.ts +0 -168
- package/src/keyboard/layouts/jp-roman.darwin.ts +0 -131
- package/src/keyboard/layouts/jp.darwin.ts +0 -131
- package/src/keyboard/layouts/ko.darwin.ts +0 -131
- package/src/keyboard/layouts/layout.contribution.darwin.ts +0 -23
- package/src/keyboard/layouts/layout.contribution.linux.ts +0 -12
- package/src/keyboard/layouts/layout.contribution.ts +0 -9
- package/src/keyboard/layouts/layout.contribution.win.ts +0 -29
- package/src/keyboard/layouts/no.win.ts +0 -168
- package/src/keyboard/layouts/pl.darwin.ts +0 -131
- package/src/keyboard/layouts/pl.win.ts +0 -168
- package/src/keyboard/layouts/pt-br.win.ts +0 -169
- package/src/keyboard/layouts/pt.darwin.ts +0 -131
- package/src/keyboard/layouts/pt.win.ts +0 -168
- package/src/keyboard/layouts/ru.darwin.ts +0 -131
- package/src/keyboard/layouts/ru.linux.ts +0 -186
- package/src/keyboard/layouts/ru.win.ts +0 -168
- package/src/keyboard/layouts/sv.darwin.ts +0 -131
- package/src/keyboard/layouts/sv.win.ts +0 -168
- package/src/keyboard/layouts/thai.win.ts +0 -168
- package/src/keyboard/layouts/tr.win.ts +0 -168
- package/src/keyboard/layouts/zh-hans.darwin.ts +0 -131
- package/src/layout/accordion/tab-bar-toolbar.tsx +0 -59
- package/src/layout/accordion/view-context-key.registry.ts +0 -34
- package/src/layout/constants.ts +0 -7
- package/src/layout/index.ts +0 -5
- package/src/layout/layout-hooks.ts +0 -68
- package/src/layout/layout-state.ts +0 -107
- package/src/layout/layout.interface.ts +0 -101
- package/src/layout/layout.ts +0 -80
- package/src/layout/view-id.ts +0 -18
- package/src/logger/browser-logger.ts +0 -51
- package/src/logger/index.ts +0 -1
- package/src/markdown/index.tsx +0 -62
- package/src/menu/next/base.ts +0 -513
- package/src/menu/next/ctxmenu-service.ts +0 -188
- package/src/menu/next/index.ts +0 -10
- package/src/menu/next/menu-id.ts +0 -86
- package/src/menu/next/menu-service.ts +0 -252
- package/src/menu/next/menu-util.ts +0 -77
- package/src/menu/next/menu.contrib.interface.ts +0 -79
- package/src/menu/next/menu.interface.ts +0 -253
- package/src/menu/next/menubar-service.ts +0 -211
- package/src/menu/next/renderer/ctxmenu/base.ts +0 -18
- package/src/menu/next/renderer/ctxmenu/browser.ts +0 -45
- package/src/menu/next/renderer/ctxmenu/electron.ts +0 -207
- package/src/menu/next/toolbar-action.service.ts +0 -132
- package/src/monaco/index.ts +0 -128
- package/src/opener/command-opener.ts +0 -42
- package/src/opener/default-opener.ts +0 -31
- package/src/opener/http-opener.ts +0 -25
- package/src/opener/index.ts +0 -19
- package/src/opener/opener.contribution.ts +0 -57
- package/src/opener/opener.service.ts +0 -66
- package/src/preferences/early-preferences.ts +0 -117
- package/src/preferences/index.ts +0 -9
- package/src/preferences/preference-configurations.ts +0 -77
- package/src/preferences/preference-contribution.ts +0 -401
- package/src/preferences/preference-provider.ts +0 -414
- package/src/preferences/preference-proxy.ts +0 -292
- package/src/preferences/preference-scope.ts +0 -3
- package/src/preferences/preference-service.ts +0 -571
- package/src/preferences/settings.ts +0 -53
- package/src/preferences/types.ts +0 -111
- package/src/progress/index.ts +0 -58
- package/src/progress/progress-bar.tsx +0 -22
- package/src/progress/progress-indicator.ts +0 -90
- package/src/progress/progress.module.less +0 -46
- package/src/progress/progress.service.tsx +0 -429
- package/src/quick-open/index.ts +0 -655
- package/src/quick-open/recent-files.ts +0 -68
- package/src/raw-context-key.ts +0 -116
- package/src/react-hooks/event.tsx +0 -80
- package/src/react-hooks/hot-key.tsx +0 -58
- package/src/react-hooks/index.ts +0 -3
- package/src/react-hooks/injectable-hooks.tsx +0 -35
- package/src/react-hooks/portal-hooks.tsx +0 -38
- package/src/react-providers/config-provider.tsx +0 -263
- package/src/react-providers/index.tsx +0 -2
- package/src/react-providers/slot.module.less +0 -19
- package/src/react-providers/slot.tsx +0 -242
- package/src/services/clipboard.service.ts +0 -97
- package/src/services/credentials-service.ts +0 -91
- package/src/services/crypto-service.ts +0 -23
- package/src/services/external-uri.service.ts +0 -68
- package/src/services/index.ts +0 -7
- package/src/services/label-service.ts +0 -386
- package/src/services/status-bar-service.ts +0 -108
- package/src/services/storage-service.ts +0 -197
- package/src/style/codicons/README.md +0 -22
- package/src/style/codicons/codicon-animations.css +0 -15
- package/src/style/codicons/generator.js +0 -15
- package/src/style/entry.less +0 -25
- package/src/style/icon/fileicons/file-default.svg +0 -1
- package/src/style/icon/fileicons/folder-default.svg +0 -1
- package/src/style/icon/fileicons.less +0 -20
- package/src/style/icon/icon.ts +0 -543
- package/src/style/icon/ide-iconfont.ts +0 -13
- package/src/style/icon/index.less +0 -54
- package/src/style/icon/seti.woff +0 -0
- package/src/style/icon/symbol-icons/boolean-dark.svg +0 -3
- package/src/style/icon/symbol-icons/boolean-light.svg +0 -3
- package/src/style/icon/symbol-icons/class-dark.svg +0 -3
- package/src/style/icon/symbol-icons/class-light.svg +0 -3
- package/src/style/icon/symbol-icons/constant-dark.svg +0 -4
- package/src/style/icon/symbol-icons/constant-light.svg +0 -4
- package/src/style/icon/symbol-icons/enumerator-dark.svg +0 -3
- package/src/style/icon/symbol-icons/enumerator-item-dark.svg +0 -3
- package/src/style/icon/symbol-icons/enumerator-item-light.svg +0 -3
- package/src/style/icon/symbol-icons/enumerator-light.svg +0 -3
- package/src/style/icon/symbol-icons/event-dark.svg +0 -3
- package/src/style/icon/symbol-icons/event-light.svg +0 -3
- package/src/style/icon/symbol-icons/field-dark.svg +0 -3
- package/src/style/icon/symbol-icons/field-light.svg +0 -3
- package/src/style/icon/symbol-icons/file-dark.svg +0 -3
- package/src/style/icon/symbol-icons/file-light.svg +0 -3
- package/src/style/icon/symbol-icons/indexer-dark.svg +0 -3
- package/src/style/icon/symbol-icons/indexer-light.svg +0 -3
- package/src/style/icon/symbol-icons/interface-dark.svg +0 -3
- package/src/style/icon/symbol-icons/interface-light.svg +0 -3
- package/src/style/icon/symbol-icons/keyword-dark.svg +0 -3
- package/src/style/icon/symbol-icons/keyword-light.svg +0 -3
- package/src/style/icon/symbol-icons/method-dark.svg +0 -3
- package/src/style/icon/symbol-icons/method-light.svg +0 -3
- package/src/style/icon/symbol-icons/namespace-dark.svg +0 -3
- package/src/style/icon/symbol-icons/namespace-light.svg +0 -3
- package/src/style/icon/symbol-icons/numeric-dark.svg +0 -3
- package/src/style/icon/symbol-icons/numeric-light.svg +0 -3
- package/src/style/icon/symbol-icons/operator-dark.svg +0 -3
- package/src/style/icon/symbol-icons/operator-light.svg +0 -3
- package/src/style/icon/symbol-icons/property-dark.svg +0 -3
- package/src/style/icon/symbol-icons/property-light.svg +0 -3
- package/src/style/icon/symbol-icons/snippet-dark.svg +0 -3
- package/src/style/icon/symbol-icons/snippet-light.svg +0 -3
- package/src/style/icon/symbol-icons/string-dark.svg +0 -3
- package/src/style/icon/symbol-icons/string-light.svg +0 -3
- package/src/style/icon/symbol-icons/structure-dark.svg +0 -3
- package/src/style/icon/symbol-icons/structure-light.svg +0 -3
- package/src/style/icon/symbol-icons/symbol-icons.css +0 -284
- package/src/style/icon/symbol-icons/template-dark.svg +0 -3
- package/src/style/icon/symbol-icons/template-light.svg +0 -3
- package/src/style/icon/symbol-icons/variable-dark.svg +0 -3
- package/src/style/icon/symbol-icons/variable-light.svg +0 -3
- package/src/style/icon.less +0 -8
- package/src/style/index.less +0 -14
- package/src/style/monaco-override.less +0 -116
- package/src/style/normalize.less +0 -92
- package/src/style/octicons/octicons-cdn.css +0 -720
- package/src/style/octicons/octicons.css +0 -714
- package/src/style/octicons/octicons.html +0 -1882
- package/src/style/octicons/octicons.svg +0 -582
- package/src/style/octicons/octicons.ttf +0 -0
- package/src/style/override.less +0 -97
- package/src/style/toolbar.less +0 -199
- package/src/style/utilities.less +0 -8
- package/src/style/variable.less +0 -8
- package/src/terminal/index.ts +0 -7
- package/src/toolbar/components/auto-complete.tsx +0 -0
- package/src/toolbar/components/button.tsx +0 -440
- package/src/toolbar/components/index.ts +0 -2
- package/src/toolbar/components/select.tsx +0 -189
- package/src/toolbar/index.ts +0 -3
- package/src/toolbar/toolbar.popover.registry.ts +0 -32
- package/src/toolbar/toolbar.registry.ts +0 -352
- package/src/toolbar/toolbar.tsx +0 -710
- package/src/toolbar/types.ts +0 -383
- package/src/tree/index.ts +0 -3
- package/src/tree/tree-expansion.ts +0 -25
- package/src/tree/tree-selection.ts +0 -89
- package/src/tree/tree.ts +0 -294
- package/src/utils/create-overlay.tsx +0 -53
- package/src/utils/electron.ts +0 -92
- package/src/utils/env.ts +0 -26
- package/src/utils/icon.ts +0 -13
- package/src/utils/index.ts +0 -7
- package/src/utils/json.ts +0 -251
- package/src/utils/label.tsx +0 -36
- package/src/utils/parse.ts +0 -72
- package/src/utils/react-hooks.ts +0 -118
- package/src/variable/index.ts +0 -1
- package/src/variable/variable.ts +0 -84
- package/src/window/index.ts +0 -34
- package/src/window/window.service.ts +0 -100
package/src/toolbar/types.ts
DELETED
|
@@ -1,383 +0,0 @@
|
|
|
1
|
-
import { IDataOption, IDataOptionGroup } from '@opensumi/ide-components';
|
|
2
|
-
import { IDisposable, BasicEvent, Event } from '@opensumi/ide-core-common';
|
|
3
|
-
|
|
4
|
-
export const IToolbarRegistry = Symbol('IToolbarRegistry');
|
|
5
|
-
|
|
6
|
-
export interface IToolbarRegistry {
|
|
7
|
-
/**
|
|
8
|
-
* 是否已经存在该位置
|
|
9
|
-
* @param location
|
|
10
|
-
*/
|
|
11
|
-
hasLocation(location: string);
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* 添加一个Toolbar位置
|
|
15
|
-
* @param locationName
|
|
16
|
-
*/
|
|
17
|
-
addLocation(locationName: string);
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* 设置默认的 location, 否则会使用第一个注册的位置
|
|
21
|
-
*/
|
|
22
|
-
setDefaultLocation(locationName: string);
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* 注册一个 action group
|
|
26
|
-
* @param group
|
|
27
|
-
*/
|
|
28
|
-
registerToolbarActionGroup(group: IToolbarActionGroup): IDisposable;
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* 注册一个 action
|
|
32
|
-
* @param action
|
|
33
|
-
*/
|
|
34
|
-
registerToolbarAction(action: IToolbarAction): IDisposable;
|
|
35
|
-
|
|
36
|
-
getToolbarActions(position: IToolbarActionPosition): IToolbarActionGroupForRender | undefined;
|
|
37
|
-
|
|
38
|
-
getActionGroups(location: string): IToolbarActionGroup[] | undefined;
|
|
39
|
-
|
|
40
|
-
getActionPosition(actionId: string): IToolbarActionPosition | undefined;
|
|
41
|
-
|
|
42
|
-
getAllLocations(): string[];
|
|
43
|
-
|
|
44
|
-
isReady(): boolean;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export interface IToolbarActionGroupForRender {
|
|
48
|
-
group: IToolbarActionGroup;
|
|
49
|
-
position: IToolbarActionPosition;
|
|
50
|
-
actions: IToolbarAction[];
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export interface IToolbarActionGroup {
|
|
54
|
-
/**
|
|
55
|
-
* id 请保证全局唯一
|
|
56
|
-
*/
|
|
57
|
-
id: string;
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* 顺序重量, 数值越大,排在越前面, 默认为0
|
|
61
|
-
*/
|
|
62
|
-
weight?: number;
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* 喜好的 location, 默认 default
|
|
66
|
-
*/
|
|
67
|
-
preferredLocation?: string;
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* 元素紧贴在一起
|
|
71
|
-
*/
|
|
72
|
-
compact?: boolean;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
export interface ISize {
|
|
76
|
-
width: number;
|
|
77
|
-
height: number;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
export interface IToolbarActionPosition {
|
|
81
|
-
location: string;
|
|
82
|
-
group: string;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
export interface IToolbarLocationPreference {
|
|
86
|
-
// 位置不够时也不添加 more 按钮
|
|
87
|
-
noDropDown?: boolean;
|
|
88
|
-
|
|
89
|
-
// action 间的间距, 默认为 5
|
|
90
|
-
actionMargin?: number;
|
|
91
|
-
|
|
92
|
-
// more 按钮的宽度 默认为 14
|
|
93
|
-
moreActionWidth?: number;
|
|
94
|
-
|
|
95
|
-
// 默认的button样式
|
|
96
|
-
defaultButtonStyle?: IToolbarActionBtnStyle;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
export interface IToolbarLocationProps {
|
|
100
|
-
location: string;
|
|
101
|
-
|
|
102
|
-
preferences?: IToolbarLocationPreference;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
export interface IToolbarActionElementProps {
|
|
106
|
-
inDropDown: boolean;
|
|
107
|
-
|
|
108
|
-
action: IToolbarAction;
|
|
109
|
-
|
|
110
|
-
closeDropDown: () => void;
|
|
111
|
-
|
|
112
|
-
preferences?: IToolbarLocationPreference;
|
|
113
|
-
|
|
114
|
-
location: string;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
export type IToolbarActionReactElement = React.ComponentType<IToolbarActionElementProps>;
|
|
118
|
-
|
|
119
|
-
export interface IToolbarAction {
|
|
120
|
-
id: string;
|
|
121
|
-
|
|
122
|
-
/**
|
|
123
|
-
* 这个action的介绍,为了让用户能明白这个组件是做什么,理论上必填
|
|
124
|
-
*/
|
|
125
|
-
description: string;
|
|
126
|
-
/**
|
|
127
|
-
* 顺序重量, 数值越大,排在越前面
|
|
128
|
-
*/
|
|
129
|
-
weight?: number;
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* 这个元素预估占据的位置, 会根据这个进行收起的计算
|
|
133
|
-
* 如果不传的话,会使用默认的 width = 100, height = 30;
|
|
134
|
-
*/
|
|
135
|
-
suggestSize?: ISize;
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* 会被渲染的组件
|
|
139
|
-
*/
|
|
140
|
-
component: IToolbarActionReactElement;
|
|
141
|
-
|
|
142
|
-
/**
|
|
143
|
-
* 注册这个 action 喜好的位置, 如果 strictPosition 存在,这个选项无效
|
|
144
|
-
*
|
|
145
|
-
* 规则:
|
|
146
|
-
* 注: 每个 location 默认存在 _head _tail 两个group,代表了第一个和最后一个group
|
|
147
|
-
* 1. 如果提供 group 值, 且 group 不为 _head 和 _tail
|
|
148
|
-
* 1. 如果 group 已注册, 将其注册在group内,跟随 group 出现
|
|
149
|
-
* 3. 如果 group 未注册
|
|
150
|
-
* 1. 如果 location 存在, 它会出现在指定 location 的 _tail
|
|
151
|
-
* 2. 如果 location 不存在, 它会出现在默认 location 的 _tail
|
|
152
|
-
* 2. 如果提供 group 值, 且 group 为 _head 或 _tail
|
|
153
|
-
* 1. 如果 location 已注册, 它会出现在指定 location 的 group 位置。
|
|
154
|
-
* 2. 如果 location 未注册 它会出现在默认 location 的 group 位置。
|
|
155
|
-
* 3. 如果仅仅提供 location 值
|
|
156
|
-
* 1. 如果 location 已注册, 它会出现在指定 location 的 _tail 位置。
|
|
157
|
-
* 2. 如果 location 未注册 它会出现在默认 location 的 _tail 位置。
|
|
158
|
-
* 4. 如果什么 position 建议都没有,出现在 默认location 的 _tail
|
|
159
|
-
*
|
|
160
|
-
* 真实的位置不会反复计算,仅仅在Toolbar首次渲染时(onStart)计算,或者渲染后 action 注册时计算。
|
|
161
|
-
* 但是 order 会反复计算。
|
|
162
|
-
*/
|
|
163
|
-
preferredPosition?: Partial<IToolbarActionPosition>;
|
|
164
|
-
|
|
165
|
-
/**
|
|
166
|
-
* 如果存在这个值,会永远寻找指定的位置。
|
|
167
|
-
*/
|
|
168
|
-
strictPosition?: IToolbarActionPosition;
|
|
169
|
-
|
|
170
|
-
/**
|
|
171
|
-
* 是否永远不被收起
|
|
172
|
-
*/
|
|
173
|
-
neverCollapse?: boolean;
|
|
174
|
-
when?: string;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
// events
|
|
178
|
-
export class ToolbarRegistryReadyEvent extends BasicEvent<void> {}
|
|
179
|
-
|
|
180
|
-
export class ToolbarActionsWhenChangeEvent extends BasicEvent<void> {}
|
|
181
|
-
|
|
182
|
-
export class ToolbarActionsChangedEvent extends BasicEvent<{ position: IToolbarActionPosition }> {}
|
|
183
|
-
|
|
184
|
-
export class ToolbarActionGroupsChangedEvent extends BasicEvent<{ location: string }> {}
|
|
185
|
-
|
|
186
|
-
export const ToolBarActionContribution = Symbol('ToolBarActionContribution');
|
|
187
|
-
export interface ToolBarActionContribution {
|
|
188
|
-
registerToolbarActions(registry: IToolbarRegistry);
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
export interface IToolbarActionBtnState extends IToolbarActionBtnStyle {
|
|
192
|
-
title?: string;
|
|
193
|
-
iconClass?: string;
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
export interface IToolbarActionBtnProps {
|
|
197
|
-
id: string;
|
|
198
|
-
title: string;
|
|
199
|
-
iconClass: string;
|
|
200
|
-
defaultStyle?: IToolbarActionBtnStyle;
|
|
201
|
-
styles?: {
|
|
202
|
-
[key: string]: IToolbarActionBtnState;
|
|
203
|
-
};
|
|
204
|
-
defaultState?: string;
|
|
205
|
-
delegate?: (delegate: IToolbarActionBtnDelegate | undefined) => void;
|
|
206
|
-
/**
|
|
207
|
-
* 在下方的 popover 的元素
|
|
208
|
-
* 它会位于目标元素
|
|
209
|
-
*/
|
|
210
|
-
popoverComponent?: React.FC;
|
|
211
|
-
popoverId?: string;
|
|
212
|
-
|
|
213
|
-
popoverStyle?: IToolbarPopoverStyle;
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
export interface IToolbarActionBtnDelegate {
|
|
217
|
-
onClick: Event<React.MouseEvent<HTMLDivElement>>;
|
|
218
|
-
|
|
219
|
-
onMouseEnter: Event<React.MouseEvent<HTMLDivElement>>;
|
|
220
|
-
|
|
221
|
-
onMouseLeave: Event<React.MouseEvent<HTMLDivElement>>;
|
|
222
|
-
|
|
223
|
-
onChangeContext: Event<any>;
|
|
224
|
-
|
|
225
|
-
onDidChangePopoverVisibility: Event<boolean>;
|
|
226
|
-
|
|
227
|
-
setState(state: string, title?: string): void;
|
|
228
|
-
|
|
229
|
-
setContext(context: any): void;
|
|
230
|
-
|
|
231
|
-
// 获取当期组件的位置 rect
|
|
232
|
-
getRect(): ClientRect;
|
|
233
|
-
|
|
234
|
-
// 获得 popover 的子容器
|
|
235
|
-
getPopOverContainer(): HTMLDivElement | undefined;
|
|
236
|
-
|
|
237
|
-
// 渲染并展示 popover 元素
|
|
238
|
-
showPopOver(style?: IToolbarPopoverStyle): Promise<void>;
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* 隐藏 popOver 元素
|
|
242
|
-
*/
|
|
243
|
-
hidePopOver(): Promise<void>;
|
|
244
|
-
|
|
245
|
-
onChangeState: Event<{ from: string; to: string }>;
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
export interface IToolbarActionBtnStyle {
|
|
249
|
-
// 指定按钮宽度
|
|
250
|
-
// 不指定,则按默认8px左右边距
|
|
251
|
-
width?: number;
|
|
252
|
-
|
|
253
|
-
// 指定按钮高度
|
|
254
|
-
// 默认值为 22
|
|
255
|
-
height?: number;
|
|
256
|
-
|
|
257
|
-
// 是否显示 Title
|
|
258
|
-
// 20200629改动 - 默认为 true
|
|
259
|
-
showTitle?: boolean;
|
|
260
|
-
|
|
261
|
-
// icon 前景色
|
|
262
|
-
iconForeground?: string;
|
|
263
|
-
|
|
264
|
-
// icon 背景色
|
|
265
|
-
iconBackground?: string;
|
|
266
|
-
|
|
267
|
-
// title 前景色
|
|
268
|
-
titleForeground?: string;
|
|
269
|
-
|
|
270
|
-
// title 背景色
|
|
271
|
-
titleBackground?: string;
|
|
272
|
-
|
|
273
|
-
// title 字体大小
|
|
274
|
-
titleSize?: string;
|
|
275
|
-
|
|
276
|
-
// icon 大小
|
|
277
|
-
iconSize?: string;
|
|
278
|
-
|
|
279
|
-
// 整体背景色
|
|
280
|
-
background?: string;
|
|
281
|
-
|
|
282
|
-
// 样式类型,
|
|
283
|
-
// inline则不会有外边框
|
|
284
|
-
// button则为按钮样式
|
|
285
|
-
// 20200629改动 - 默认为 button
|
|
286
|
-
// inline 模式showTitle会失效, 只显示icon
|
|
287
|
-
btnStyle?: 'inline' | 'button';
|
|
288
|
-
|
|
289
|
-
// button 的文本位置样式
|
|
290
|
-
// vertical: 上icon 下文本
|
|
291
|
-
// horizontal: 左icon 右文本
|
|
292
|
-
btnTitleStyle?: 'vertical' | 'horizontal';
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
// Select
|
|
296
|
-
export interface IToolbarActionSelectProps<T> {
|
|
297
|
-
options: IDataOption<T>[] | IDataOptionGroup<T>[];
|
|
298
|
-
customOptionRenderer?: React.FC<{ data: IDataOption<T>; isCurrent: boolean }>;
|
|
299
|
-
defaultValue?: T;
|
|
300
|
-
styles?: {
|
|
301
|
-
[key: string]: IToolbarSelectStyle;
|
|
302
|
-
};
|
|
303
|
-
name?: string;
|
|
304
|
-
searchMode?: boolean;
|
|
305
|
-
defaultState?: string;
|
|
306
|
-
equals?: (v1: T | undefined, v2: T | undefined) => boolean;
|
|
307
|
-
onSelect?: (value: T) => void;
|
|
308
|
-
delegate?: (delegate: IToolbarActionSelectDelegate<T> | undefined) => void;
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
export interface IToolbarActionSelectDelegate<T> {
|
|
312
|
-
setState(state: string): void;
|
|
313
|
-
setSelect(value: T): void;
|
|
314
|
-
setOptions(
|
|
315
|
-
options: {
|
|
316
|
-
iconClass?: string;
|
|
317
|
-
label?: string;
|
|
318
|
-
value: T;
|
|
319
|
-
}[],
|
|
320
|
-
): void;
|
|
321
|
-
onChangeState: Event<{ from: string; to: string }>;
|
|
322
|
-
onSelect: Event<T>;
|
|
323
|
-
getValue(): T | undefined;
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
export interface IToolbarSelectStyle {
|
|
327
|
-
backgroundColor?: string;
|
|
328
|
-
labelForegroundColor?: string;
|
|
329
|
-
iconForegroundColor?: string;
|
|
330
|
-
width?: number;
|
|
331
|
-
minWidth?: number;
|
|
332
|
-
}
|
|
333
|
-
|
|
334
|
-
export interface IToolbarPopoverStyle {
|
|
335
|
-
/**
|
|
336
|
-
* 在上方还是在下方, 默认下方
|
|
337
|
-
* 暂时只支持 bottom;
|
|
338
|
-
*/
|
|
339
|
-
position?: 'top' | 'bottom';
|
|
340
|
-
|
|
341
|
-
/**
|
|
342
|
-
* ```text
|
|
343
|
-
* 距离右边的偏移量(px), 默认 30
|
|
344
|
-
* [ button ]
|
|
345
|
-
* /\ |<-offset->|
|
|
346
|
-
* [------ -------------]
|
|
347
|
-
* [ ]
|
|
348
|
-
* [ popover ]
|
|
349
|
-
* [ ]
|
|
350
|
-
* [______________________]
|
|
351
|
-
* ```
|
|
352
|
-
*/
|
|
353
|
-
horizontalOffset?: number;
|
|
354
|
-
|
|
355
|
-
/**
|
|
356
|
-
* 点击组件外部时自动隐藏, 默认 true
|
|
357
|
-
*/
|
|
358
|
-
hideOnClickOutside?: boolean;
|
|
359
|
-
|
|
360
|
-
/**
|
|
361
|
-
* 不要带箭头,阴影,背景色等默认样式
|
|
362
|
-
*/
|
|
363
|
-
noContainerStyle?: boolean;
|
|
364
|
-
|
|
365
|
-
/**
|
|
366
|
-
* 指定 popOver 的最小宽度
|
|
367
|
-
*/
|
|
368
|
-
minWidth?: number;
|
|
369
|
-
|
|
370
|
-
/**
|
|
371
|
-
* 指定 popOver 的最小高度
|
|
372
|
-
*/
|
|
373
|
-
minHeight?: number;
|
|
374
|
-
}
|
|
375
|
-
|
|
376
|
-
export const IToolbarPopoverRegistry = Symbol('IToolbarPopoverRegistry');
|
|
377
|
-
|
|
378
|
-
export interface IToolbarPopoverRegistry {
|
|
379
|
-
registerComponent(id: string, component: React.FC): IDisposable;
|
|
380
|
-
getComponent(id: string): React.FC | undefined;
|
|
381
|
-
|
|
382
|
-
onDidRegisterPopoverEvent: Event<string>;
|
|
383
|
-
}
|
package/src/tree/index.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { CompositeTreeNode } from './';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* 可折叠的树节点
|
|
5
|
-
*/
|
|
6
|
-
export interface ExpandableTreeNode extends CompositeTreeNode {
|
|
7
|
-
/**
|
|
8
|
-
* 该节点是否可折叠,是则为true,否则为false
|
|
9
|
-
*/
|
|
10
|
-
expanded: boolean;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export namespace ExpandableTreeNode {
|
|
14
|
-
export function is(node: object | undefined): node is ExpandableTreeNode {
|
|
15
|
-
return !!node && CompositeTreeNode.is(node) && 'expanded' in node;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export function isExpanded(node: object | undefined): node is ExpandableTreeNode {
|
|
19
|
-
return ExpandableTreeNode.is(node) && node.expanded;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export function isCollapsed(node: object | undefined): node is ExpandableTreeNode {
|
|
23
|
-
return ExpandableTreeNode.is(node) && !node.expanded;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { TreeNode } from './tree';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* 树选中状态标示
|
|
5
|
-
*/
|
|
6
|
-
export interface TreeSelection {
|
|
7
|
-
/**
|
|
8
|
-
* 可选中的节点
|
|
9
|
-
*/
|
|
10
|
-
readonly node: Readonly<SelectableTreeNode>;
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* 可选的选中类型,默认值为 `SelectionType.DEFAULT`;
|
|
14
|
-
*/
|
|
15
|
-
readonly type?: TreeSelection.SelectionType;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export namespace TreeSelection {
|
|
19
|
-
/**
|
|
20
|
-
* 选择状态
|
|
21
|
-
*/
|
|
22
|
-
export enum SelectionType {
|
|
23
|
-
DEFAULT,
|
|
24
|
-
TOGGLE,
|
|
25
|
-
RANGE,
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export function is(arg: object | undefined): arg is TreeSelection {
|
|
29
|
-
return !!arg && 'node' in arg;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export function isRange(arg: TreeSelection | SelectionType | undefined): boolean {
|
|
33
|
-
return isSelectionTypeOf(arg, SelectionType.RANGE);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export function isToggle(arg: TreeSelection | SelectionType | undefined): boolean {
|
|
37
|
-
return isSelectionTypeOf(arg, SelectionType.TOGGLE);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
function isSelectionTypeOf(arg: TreeSelection | SelectionType | undefined, expected: SelectionType): boolean {
|
|
41
|
-
if (arg === undefined) {
|
|
42
|
-
return false;
|
|
43
|
-
}
|
|
44
|
-
const type = typeof arg === 'number' ? arg : arg.type;
|
|
45
|
-
return type === expected;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* 可选中的树节点
|
|
51
|
-
*/
|
|
52
|
-
export interface SelectableTreeNode extends TreeNode {
|
|
53
|
-
/**
|
|
54
|
-
* 是否选择
|
|
55
|
-
*/
|
|
56
|
-
selected: boolean;
|
|
57
|
-
|
|
58
|
-
/**
|
|
59
|
-
* 是否为焦点
|
|
60
|
-
*/
|
|
61
|
-
focused?: boolean;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
export namespace SelectableTreeNode {
|
|
65
|
-
export function is(node: TreeNode | undefined): node is SelectableTreeNode {
|
|
66
|
-
return !!node && 'selected' in node;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
export function isSelected(node: TreeNode | undefined): node is SelectableTreeNode {
|
|
70
|
-
return is(node) && node.selected;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
export function hasFocus(node: TreeNode | undefined): boolean {
|
|
74
|
-
return is(node) && node.focused === true;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
export function isVisible(node: TreeNode | undefined): node is SelectableTreeNode {
|
|
78
|
-
return is(node) && TreeNode.isVisible(node);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
export function getVisibleParent(node: TreeNode | undefined): SelectableTreeNode | undefined {
|
|
82
|
-
if (node) {
|
|
83
|
-
if (isVisible(node.parent)) {
|
|
84
|
-
return node.parent;
|
|
85
|
-
}
|
|
86
|
-
return getVisibleParent(node.parent);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|