@opensumi/ide-main-layout 2.21.13 → 2.22.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 (38) hide show
  1. package/lib/browser/accordion/accordion.service.js +1 -1
  2. package/lib/browser/accordion/accordion.service.js.map +1 -1
  3. package/lib/browser/accordion/styles.module.less +4 -2
  4. package/lib/browser/index.js.map +1 -1
  5. package/lib/browser/layout.service.d.ts.map +1 -1
  6. package/lib/browser/layout.service.js +6 -6
  7. package/lib/browser/layout.service.js.map +1 -1
  8. package/lib/browser/main-layout.contribution.js +1 -1
  9. package/lib/browser/main-layout.contribution.js.map +1 -1
  10. package/lib/browser/quick-open-view.js +3 -2
  11. package/lib/browser/quick-open-view.js.map +1 -1
  12. package/lib/browser/tabbar/tabbar.service.js.map +1 -1
  13. package/lib/browser/tabbar-handler.js.map +1 -1
  14. package/lib/browser/views-registry.js +7 -7
  15. package/lib/browser/views-registry.js.map +1 -1
  16. package/package.json +10 -9
  17. package/src/browser/accordion/accordion.service.ts +635 -0
  18. package/src/browser/accordion/accordion.view.tsx +102 -0
  19. package/src/browser/accordion/section.view.tsx +181 -0
  20. package/src/browser/accordion/styles.module.less +214 -0
  21. package/src/browser/accordion/titlebar.view.tsx +17 -0
  22. package/src/browser/default-config.ts +35 -0
  23. package/src/browser/index.ts +40 -0
  24. package/src/browser/input/index.tsx +32 -0
  25. package/src/browser/layout.service.ts +515 -0
  26. package/src/browser/main-layout.contribution.ts +447 -0
  27. package/src/browser/quick-open-view.ts +138 -0
  28. package/src/browser/tabbar/bar.view.tsx +289 -0
  29. package/src/browser/tabbar/panel.view.tsx +190 -0
  30. package/src/browser/tabbar/renderer.view.tsx +133 -0
  31. package/src/browser/tabbar/styles.module.less +408 -0
  32. package/src/browser/tabbar/tabbar.service.ts +845 -0
  33. package/src/browser/tabbar-handler.ts +200 -0
  34. package/src/browser/views-registry.ts +157 -0
  35. package/src/browser/welcome.view.tsx +152 -0
  36. package/src/common/index.ts +2 -0
  37. package/src/common/main-layout.definition.ts +122 -0
  38. package/src/index.ts +1 -0
@@ -0,0 +1,408 @@
1
+ .dragging {
2
+ background-color: var(--kt-activityBar-dropUpBackground) !important;
3
+ }
4
+ .tab_badge {
5
+ background-color: var(--activityBarBadge-background) !important;
6
+ color: var(--activityBarBadge-foreground) !important;
7
+ position: absolute;
8
+ top: 22px;
9
+ right: 8px;
10
+ .icon_wrapper {
11
+ position: absolute;
12
+ left: 50%;
13
+ top: 50%;
14
+ transform: translate(-50%, -50%);
15
+ display: flex;
16
+ justify-content: center;
17
+ align-items: center;
18
+ }
19
+ :global(.kt-icon) {
20
+ color: var(--activityBarBadge-foreground);
21
+ }
22
+ }
23
+ .icon_tab {
24
+ padding: 0 0;
25
+ position: relative;
26
+ height: 40px;
27
+ background-color: transparent;
28
+ border: none;
29
+ line-height: normal;
30
+ display: flex;
31
+ justify-content: center;
32
+ align-items: center;
33
+ width: 48px;
34
+ :global {
35
+ div.activity-icon {
36
+ font-size: 24px;
37
+ width: 24px;
38
+ height: 24px;
39
+ color: var(--activityBar-inactiveForeground);
40
+ &.mask-mode {
41
+ background-color: var(--activityBar-inactiveForeground);
42
+ -webkit-mask-size: 24px;
43
+ }
44
+ }
45
+ }
46
+ &:hover {
47
+ cursor: pointer;
48
+ :global {
49
+ .activity-icon {
50
+ color: var(--activityBar-foreground);
51
+ &.mask-mode {
52
+ background-color: var(--activityBar-foreground);
53
+ }
54
+ }
55
+ }
56
+ }
57
+ }
58
+ .tab_bar {
59
+ display: flex;
60
+ user-select: none;
61
+ }
62
+ .tab_panel {
63
+ position: relative;
64
+ flex: 1;
65
+ &::before {
66
+ width: 100%;
67
+ height: 1px;
68
+ left: 0;
69
+ top: 0;
70
+ background-color: var(--sideBar-border);
71
+ position: absolute;
72
+ z-index: 2;
73
+ content: ' ';
74
+ }
75
+ }
76
+
77
+ .tab_panel_hidden {
78
+ border-top: none;
79
+ }
80
+
81
+ :global(.left-slot) {
82
+ .tab_panel {
83
+ border-right: 1px solid var(--sideBar-border);
84
+ }
85
+ }
86
+
87
+ :global(.right-slot) {
88
+ .tab_panel {
89
+ border-left: 1px solid var(--sideBar-border);
90
+ }
91
+ }
92
+
93
+ .left_tab_bar {
94
+ height: 100%;
95
+ display: flex;
96
+ flex-direction: column;
97
+ justify-content: space-between;
98
+ background-color: var(--activityBar-background);
99
+ border-right: 1px solid var(--activityBar-border);
100
+ border-top: 1px solid var(--activityBar-border);
101
+ .tab_bar {
102
+ flex: 1;
103
+ overflow: hidden;
104
+ }
105
+ }
106
+ .right_tab_bar {
107
+ height: 100%;
108
+ display: flex;
109
+ flex-direction: column;
110
+ justify-content: space-between;
111
+ background-color: var(--activityBar-background);
112
+ border-left: 1px solid var(--activityBar-border);
113
+ border-top: 1px solid var(--activityBar-border);
114
+ .tab_bar {
115
+ height: 100%;
116
+ .icon_tab {
117
+ width: 48px;
118
+ height: 40px;
119
+ margin: 0;
120
+ }
121
+ :global {
122
+ .activity-icon {
123
+ font-size: 20px;
124
+ width: 20px;
125
+ height: 20px;
126
+ }
127
+ }
128
+ }
129
+ }
130
+ .tab_container {
131
+ display: flex;
132
+ }
133
+ .panel_wrap {
134
+ position: absolute;
135
+ left: 0;
136
+ right: 0;
137
+ height: 100%;
138
+ }
139
+ :global(.left-slot) {
140
+ height: 100%;
141
+ }
142
+
143
+ :global(.right-slot) {
144
+ height: 100%;
145
+ }
146
+
147
+ .view_container {
148
+ display: flex;
149
+ flex-direction: column;
150
+ height: 100%;
151
+ background-color: var(--sideBar-background);
152
+ }
153
+ .panel_container {
154
+ height: 100%;
155
+ overflow: hidden;
156
+ background-color: var(--panel-background);
157
+ display: flex;
158
+ flex-direction: column;
159
+ }
160
+
161
+ .container_wrap {
162
+ flex: 1;
163
+ overflow: hidden;
164
+ position: relative;
165
+ }
166
+ .bar_content {
167
+ display: flex;
168
+ }
169
+ .float_container {
170
+ flex-direction: row;
171
+ display: flex;
172
+ position: absolute;
173
+ top: -25.5px;
174
+ right: 8px;
175
+ align-items: center;
176
+ }
177
+ .panel_title_bar {
178
+ flex-direction: row;
179
+ display: flex;
180
+ background-color: var(--kt-panelTitle-background);
181
+ user-select: none;
182
+ align-items: center;
183
+ box-sizing: content-box;
184
+ position: relative;
185
+ h1 {
186
+ margin: 0;
187
+ font-size: 12px;
188
+ line-height: 24px;
189
+ font-weight: 400;
190
+ padding: 0 12px;
191
+ color: var(--kt-panel-secondaryForeground);
192
+ white-space: nowrap;
193
+ }
194
+ &::before {
195
+ width: 100%;
196
+ height: 1px;
197
+ left: 0;
198
+ bottom: 0;
199
+ background-color: var(--sideBar-border);
200
+ position: absolute;
201
+ z-index: 9;
202
+ content: ' ';
203
+ }
204
+ }
205
+
206
+ :global(.bottom-slot) {
207
+ height: 100%;
208
+ .tab_bar {
209
+ background-color: var(--kt-panelTitle-background);
210
+ height: 24px;
211
+ color: var(--panelTitle-inactiveForeground);
212
+ font-size: 12px;
213
+ align-items: center;
214
+ justify-content: space-between;
215
+ z-index: 1;
216
+ flex: 1;
217
+ user-select: none;
218
+ .tab_badge {
219
+ position: static;
220
+ margin-left: 6px;
221
+ background-color: var(--badge-background);
222
+ color: var(--badge-foreground);
223
+ border: 1px solid var(--kt-activityBarBadge-border);
224
+ border-radius: 9px;
225
+ font-size: 12px;
226
+ font-weight: 400;
227
+ text-align: center;
228
+ display: inline-flex;
229
+ justify-content: center;
230
+ align-items: center;
231
+ box-sizing: border-box;
232
+ padding: 0 6px;
233
+ height: 18px;
234
+ line-height: 18px;
235
+ }
236
+ }
237
+ .next_bottom_bar {
238
+ .tab_badge {
239
+ margin-left: 4px;
240
+ }
241
+ }
242
+ .tab_panel {
243
+ select {
244
+ outline: none;
245
+ padding-left: 8px;
246
+ padding-right: 38px;
247
+ font-size: 12px;
248
+ border: 0;
249
+ height: 22px;
250
+ line-height: 22px;
251
+ border-radius: 2px;
252
+ -webkit-appearance: none;
253
+ -moz-appearance: none;
254
+ appearance: none;
255
+ color: var(--input-foreground);
256
+ background: url(https://img.alicdn.com/tfs/TB1rFGZrYr1gK0jSZR0XXbP8XXa-200-200.png) no-repeat
257
+ var(--input-background);
258
+ background-position: right 8px top 4px;
259
+ background-size: 14px;
260
+ & > option {
261
+ background-color: var(--dropdown-listBackground);
262
+ }
263
+ }
264
+ }
265
+ }
266
+ .left_tab,
267
+ .right_tab {
268
+ margin-top: 8px;
269
+ background-color: var(--activityBar-background);
270
+ width: 48px;
271
+ &:global(.on-drag-over) {
272
+ background-color: var(--activityBar-dropBackground);
273
+ }
274
+ &:global(.active) {
275
+ .icon_tab {
276
+ &::before {
277
+ content: '';
278
+ display: block;
279
+ position: absolute;
280
+ height: 100%;
281
+ }
282
+ :global {
283
+ div.activity-icon {
284
+ color: var(--activityBar-foreground);
285
+ &.mask-mode {
286
+ background-color: var(--activityBar-foreground);
287
+ }
288
+ }
289
+ }
290
+ }
291
+ }
292
+ }
293
+
294
+ .left_tab {
295
+ &:global(.active) {
296
+ .icon_tab {
297
+ &::before {
298
+ left: 0;
299
+ border-left: 3px solid var(--activityBar-activeBorder);
300
+ }
301
+ }
302
+ }
303
+ }
304
+
305
+ .right_tab {
306
+ &:global(.active) {
307
+ .icon_tab {
308
+ &::before {
309
+ right: 0;
310
+ border-right: 3px solid var(--activityBar-activeBorder);
311
+ }
312
+ }
313
+ }
314
+ }
315
+
316
+ .bottom_tab {
317
+ margin: 0 4px;
318
+ padding: 0 8px;
319
+ position: relative;
320
+ height: 24px;
321
+ line-height: 24px;
322
+ display: inline-block;
323
+ font-size: 12px;
324
+ background-color: var(--kt-panelTitle-background);
325
+ &:hover {
326
+ color: var(--panelTitle-activeForeground);
327
+ cursor: pointer;
328
+ }
329
+ &:global(.active) {
330
+ color: var(--panelTitle-activeForeground);
331
+ > div {
332
+ position: relative;
333
+ }
334
+ > div::after {
335
+ content: '';
336
+ position: absolute;
337
+ bottom: 0;
338
+ left: 0;
339
+ background-color: var(--panelTitle-activeBorder);
340
+ width: 100%;
341
+ height: 2px;
342
+ }
343
+ }
344
+ &.dragging {
345
+ > div::after {
346
+ display: none;
347
+ }
348
+ }
349
+ &:global(.on-drag-over) {
350
+ background-color: var(--panel-dropBackground);
351
+ }
352
+ }
353
+ .title_component_container {
354
+ flex: 1;
355
+ display: flex;
356
+ align-items: center;
357
+ }
358
+ .panel_toolbar_container {
359
+ display: flex;
360
+ flex-direction: row;
361
+ align-items: center;
362
+ margin-right: 12px;
363
+ }
364
+ .panel_wrapper {
365
+ flex: 1;
366
+ overflow: hidden;
367
+ position: relative;
368
+ }
369
+ .bottom_tab_title {
370
+ display: inline-block;
371
+ white-space: no-wrap;
372
+ }
373
+ .bottom_bar_container {
374
+ display: flex;
375
+ flex-direction: row;
376
+ align-items: center;
377
+ z-index: 1;
378
+ border-top: 1px solid var(--sideBar-border);
379
+ height: 24px;
380
+ }
381
+
382
+ .split_line {
383
+ border-left: 1px solid #202224;
384
+ height: 14px;
385
+ width: 0px;
386
+ margin: 0 8px;
387
+ }
388
+ .left_tab_bar .vertical_icons {
389
+ height: auto;
390
+ flex-direction: column;
391
+ > span {
392
+ width: 24px;
393
+ height: 24px;
394
+ font-size: 24px;
395
+ display: flex;
396
+ justify-content: center;
397
+ align-items: center;
398
+ color: var(--activityBar-inactiveForeground);
399
+ margin: 8px auto;
400
+ background-size: cover;
401
+ &:hover {
402
+ transform: scale(1);
403
+ }
404
+ &:last-child {
405
+ margin-bottom: 18px;
406
+ }
407
+ }
408
+ }