@theia/notebook 1.53.0-next.4 → 1.53.0-next.55

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 (99) hide show
  1. package/README.md +30 -30
  2. package/lib/browser/contributions/cell-operations.d.ts.map +1 -1
  3. package/lib/browser/contributions/cell-operations.js +8 -1
  4. package/lib/browser/contributions/cell-operations.js.map +1 -1
  5. package/lib/browser/contributions/notebook-actions-contribution.d.ts +1 -0
  6. package/lib/browser/contributions/notebook-actions-contribution.d.ts.map +1 -1
  7. package/lib/browser/contributions/notebook-actions-contribution.js +31 -6
  8. package/lib/browser/contributions/notebook-actions-contribution.js.map +1 -1
  9. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts +4 -0
  10. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts.map +1 -1
  11. package/lib/browser/contributions/notebook-cell-actions-contribution.js +49 -12
  12. package/lib/browser/contributions/notebook-cell-actions-contribution.js.map +1 -1
  13. package/lib/browser/contributions/notebook-status-bar-contribution.d.ts +14 -0
  14. package/lib/browser/contributions/notebook-status-bar-contribution.d.ts.map +1 -0
  15. package/lib/browser/contributions/notebook-status-bar-contribution.js +75 -0
  16. package/lib/browser/contributions/notebook-status-bar-contribution.js.map +1 -0
  17. package/lib/browser/notebook-editor-widget.d.ts.map +1 -1
  18. package/lib/browser/notebook-editor-widget.js +3 -5
  19. package/lib/browser/notebook-editor-widget.js.map +1 -1
  20. package/lib/browser/notebook-frontend-module.d.ts.map +1 -1
  21. package/lib/browser/notebook-frontend-module.js +3 -0
  22. package/lib/browser/notebook-frontend-module.js.map +1 -1
  23. package/lib/browser/notebook-open-handler.d.ts +3 -2
  24. package/lib/browser/notebook-open-handler.d.ts.map +1 -1
  25. package/lib/browser/notebook-open-handler.js +12 -5
  26. package/lib/browser/notebook-open-handler.js.map +1 -1
  27. package/lib/browser/service/notebook-options.d.ts +1 -0
  28. package/lib/browser/service/notebook-options.d.ts.map +1 -1
  29. package/lib/browser/service/notebook-options.js +1 -0
  30. package/lib/browser/service/notebook-options.js.map +1 -1
  31. package/lib/browser/service/notebook-service.d.ts +1 -0
  32. package/lib/browser/service/notebook-service.d.ts.map +1 -1
  33. package/lib/browser/service/notebook-service.js +7 -0
  34. package/lib/browser/service/notebook-service.js.map +1 -1
  35. package/lib/browser/view/notebook-cell-editor.d.ts +1 -0
  36. package/lib/browser/view/notebook-cell-editor.d.ts.map +1 -1
  37. package/lib/browser/view/notebook-cell-editor.js +30 -16
  38. package/lib/browser/view/notebook-cell-editor.js.map +1 -1
  39. package/lib/browser/view/notebook-cell-list-view.d.ts +7 -4
  40. package/lib/browser/view/notebook-cell-list-view.d.ts.map +1 -1
  41. package/lib/browser/view/notebook-cell-list-view.js +39 -29
  42. package/lib/browser/view/notebook-cell-list-view.js.map +1 -1
  43. package/lib/browser/view-model/notebook-cell-model.d.ts +3 -0
  44. package/lib/browser/view-model/notebook-cell-model.d.ts.map +1 -1
  45. package/lib/browser/view-model/notebook-cell-model.js +5 -0
  46. package/lib/browser/view-model/notebook-cell-model.js.map +1 -1
  47. package/package.json +8 -8
  48. package/src/browser/contributions/cell-operations.ts +44 -39
  49. package/src/browser/contributions/notebook-actions-contribution.ts +379 -351
  50. package/src/browser/contributions/notebook-cell-actions-contribution.ts +525 -485
  51. package/src/browser/contributions/notebook-color-contribution.ts +268 -268
  52. package/src/browser/contributions/notebook-context-keys.ts +113 -113
  53. package/src/browser/contributions/notebook-label-provider-contribution.ts +85 -85
  54. package/src/browser/contributions/notebook-outline-contribution.ts +114 -114
  55. package/src/browser/contributions/notebook-output-action-contribution.ts +82 -82
  56. package/src/browser/contributions/notebook-preferences.ts +92 -92
  57. package/src/browser/contributions/notebook-status-bar-contribution.ts +77 -0
  58. package/src/browser/contributions/notebook-undo-redo-handler.ts +41 -41
  59. package/src/browser/index.ts +27 -27
  60. package/src/browser/notebook-cell-resource-resolver.ts +130 -130
  61. package/src/browser/notebook-editor-widget-factory.ts +82 -82
  62. package/src/browser/notebook-editor-widget.tsx +330 -331
  63. package/src/browser/notebook-frontend-module.ts +119 -115
  64. package/src/browser/notebook-open-handler.ts +120 -114
  65. package/src/browser/notebook-output-utils.ts +119 -119
  66. package/src/browser/notebook-renderer-registry.ts +85 -85
  67. package/src/browser/notebook-type-registry.ts +54 -54
  68. package/src/browser/notebook-types.ts +186 -186
  69. package/src/browser/renderers/cell-output-webview.ts +33 -33
  70. package/src/browser/service/notebook-clipboard-service.ts +43 -43
  71. package/src/browser/service/notebook-context-manager.ts +162 -162
  72. package/src/browser/service/notebook-editor-widget-service.ts +101 -101
  73. package/src/browser/service/notebook-execution-service.ts +139 -139
  74. package/src/browser/service/notebook-execution-state-service.ts +311 -311
  75. package/src/browser/service/notebook-kernel-history-service.ts +124 -124
  76. package/src/browser/service/notebook-kernel-quick-pick-service.ts +479 -479
  77. package/src/browser/service/notebook-kernel-service.ts +357 -357
  78. package/src/browser/service/notebook-model-resolver-service.ts +160 -160
  79. package/src/browser/service/notebook-monaco-text-model-service.ts +48 -48
  80. package/src/browser/service/notebook-options.ts +155 -154
  81. package/src/browser/service/notebook-renderer-messaging-service.ts +121 -121
  82. package/src/browser/service/notebook-service.ts +215 -209
  83. package/src/browser/style/index.css +483 -467
  84. package/src/browser/view/notebook-cell-editor.tsx +263 -247
  85. package/src/browser/view/notebook-cell-list-view.tsx +279 -259
  86. package/src/browser/view/notebook-cell-toolbar-factory.tsx +102 -102
  87. package/src/browser/view/notebook-cell-toolbar.tsx +74 -74
  88. package/src/browser/view/notebook-code-cell-view.tsx +350 -350
  89. package/src/browser/view/notebook-find-widget.tsx +335 -335
  90. package/src/browser/view/notebook-main-toolbar.tsx +235 -235
  91. package/src/browser/view/notebook-markdown-cell-view.tsx +208 -208
  92. package/src/browser/view/notebook-viewport-service.ts +61 -61
  93. package/src/browser/view-model/notebook-cell-model.ts +473 -466
  94. package/src/browser/view-model/notebook-cell-output-model.ts +100 -100
  95. package/src/browser/view-model/notebook-model.ts +550 -550
  96. package/src/common/index.ts +18 -18
  97. package/src/common/notebook-common.ts +337 -337
  98. package/src/common/notebook-protocol.ts +35 -35
  99. package/src/common/notebook-range.ts +30 -30
@@ -1,467 +1,483 @@
1
- /********************************************************************************
2
- * Copyright (C) 2023 TypeFox and others.
3
- *
4
- * This program and the accompanying materials are made available under the
5
- * terms of the Eclipse Public License v. 2.0 which is available at
6
- * http://www.eclipse.org/legal/epl-2.0.
7
- *
8
- * This Source Code may also be made available under the following Secondary
9
- * Licenses when the conditions for such availability set forth in the Eclipse
10
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- * with the GNU Classpath Exception which is available at
12
- * https://www.gnu.org/software/classpath/license.html.
13
- *
14
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
- ********************************************************************************/
16
-
17
- :root {
18
- --theia-notebook-markdown-size: 17px;
19
- --theia-notebook-cell-editor-margin-right: 10px;
20
- }
21
-
22
- .theia-notebook-cell-list {
23
- overflow-y: auto;
24
- list-style: none;
25
- padding-left: 0px;
26
- background-color: var(--theia-notebook-editorBackground);
27
- }
28
-
29
- .theia-notebook-cell {
30
- display: flex;
31
- margin: 10px 0px;
32
- }
33
-
34
- .theia-notebook-cell.draggable {
35
- cursor: grab;
36
- }
37
-
38
- .theia-notebook-cell:hover .theia-notebook-cell-marker {
39
- visibility: visible;
40
- }
41
-
42
- .theia-notebook-cell-marker {
43
- background-color: var(--theia-notebook-inactiveFocusedCellBorder);
44
- width: 3px;
45
- margin: 0px 8px 0px 4px;
46
- border-radius: 4px;
47
- visibility: hidden;
48
- }
49
-
50
- .theia-notebook-cell-marker-selected {
51
- visibility: visible;
52
- background-color: var(--theia-notebook-focusedCellBorder);
53
- }
54
-
55
- .theia-notebook-cell-marker:hover {
56
- width: 5px;
57
- margin: 0px 6px 0px 4px;
58
- }
59
-
60
- .theia-notebook-cell-content {
61
- flex: 1;
62
- width: calc(100% - 15px);
63
- }
64
-
65
- /* Rendered Markdown Content */
66
-
67
- .theia-notebook-markdown-content {
68
- padding: 8px 16px 8px 36px;
69
- font-size: var(--theia-notebook-markdown-size);
70
- }
71
-
72
- .theia-notebook-markdown-content>* {
73
- font-weight: 400;
74
- }
75
-
76
- .theia-notebook-markdown-content>*:first-child {
77
- margin-top: 0;
78
- padding-top: 0;
79
- }
80
-
81
- .theia-notebook-markdown-content>*:last-child {
82
- margin-bottom: 0;
83
- padding-bottom: 0;
84
- }
85
-
86
- /* Markdown cell edit mode */
87
- .theia-notebook-cell-content:has(.theia-notebook-markdown-editor-container>.theia-notebook-cell-editor) {
88
- margin-left: 37px;
89
- margin-right: var(--theia-notebook-cell-editor-margin-right);
90
- outline: 1px solid var(--theia-notebook-cellBorderColor);
91
- }
92
-
93
- /* Markdown cell edit mode focused */
94
- .theia-notebook-cell.focused .theia-notebook-cell-content:has(.theia-notebook-markdown-editor-container>.theia-notebook-cell-editor) {
95
- outline-color: var(--theia-notebook-focusedEditorBorder);
96
- }
97
-
98
- .theia-notebook-empty-markdown {
99
- opacity: 0.6;
100
- }
101
-
102
- .theia-notebook-cell-editor {
103
- padding: 10px 10px 0 10px;
104
- }
105
-
106
- .theia-notebook-cell-editor-container {
107
- width: calc(100% - 46px);
108
- flex: 1;
109
- outline: 1px solid var(--theia-notebook-cellBorderColor);
110
- margin: 0px 10px;
111
- }
112
-
113
- .theia-notebook-cell.focused .theia-notebook-cell-editor-container {
114
- outline-color: var(--theia-notebook-focusedEditorBorder);
115
- }
116
-
117
- .notebook-cell-status {
118
- display: flex;
119
- flex-direction: row;
120
- font-size: 12px;
121
- height: 16px;
122
- }
123
-
124
- .notebook-cell-status-left {
125
- display: flex;
126
- flex-direction: row;
127
- flex-grow: 1;
128
- }
129
-
130
- .notebook-cell-language-label {
131
- padding: 0 5px;
132
- }
133
-
134
- .notebook-cell-language-label:hover {
135
- cursor: pointer;
136
- background-color: var(--theia-toolbar-hoverBackground);
137
- }
138
-
139
- .notebook-cell-status-item {
140
- margin: 0 3px;
141
- padding: 0 3px;
142
- display: flex;
143
- align-items: center;
144
- }
145
-
146
- .theia-notebook-cell-toolbar {
147
- border: 1px solid var(--theia-notebook-cellToolbarSeparator);
148
- display: flex;
149
- position: absolute;
150
- margin: -20px 0 0 66px;
151
- padding: 2px;
152
- background-color: var(--theia-editor-background);
153
- }
154
-
155
- .theia-notebook-cell-sidebar-toolbar {
156
- display: flex;
157
- flex-direction: column;
158
- padding: 2px;
159
- background-color: var(--theia-editor-background);
160
- flex-grow: 1;
161
- }
162
-
163
- .theia-notebook-cell-sidebar {
164
- display: flex;
165
- flex-direction: column;
166
- }
167
-
168
- .theia-notebook-code-cell-execution-order {
169
- display: block;
170
- font-family: var(--monaco-monospace-font);
171
- font-size: 10px;
172
- opacity: 0.7;
173
- text-align: center;
174
- white-space: pre;
175
- padding: 5px 0;
176
- }
177
-
178
- .theia-notebook-cell-toolbar-item {
179
- height: 18px;
180
- width: 18px;
181
- }
182
-
183
- .theia-notebook-cell-toolbar-item:hover {
184
- background-color: var(--theia-toolbar-hoverBackground);
185
- }
186
-
187
- .theia-notebook-cell-toolbar-item:active {
188
- background-color: var(--theia-toolbar-active);
189
- }
190
-
191
- .theia-notebook-cell-divider {
192
- height: 25px;
193
- width: 100%;
194
- }
195
-
196
- .theia-notebook-cell-with-sidebar {
197
- display: flex;
198
- flex-direction: row;
199
- }
200
-
201
- .theia-notebook-main-container {
202
- display: flex;
203
- flex-direction: column;
204
- height: 100%;
205
- overflow: hidden;
206
- }
207
-
208
- .theia-notebook-main-container .theia-notebook-main-loading-indicator {
209
- /* `progress-animation` is defined in `packages/core/src/browser/style/progress-bar.css` */
210
- animation: progress-animation 1.8s 0s infinite cubic-bezier(0.645, 0.045, 0.355, 1);
211
- background-color: var(--theia-progressBar-background);
212
- height: 2px;
213
- }
214
-
215
- .theia-notebook-viewport {
216
- display: flex;
217
- overflow: hidden;
218
- height: 100%;
219
- }
220
-
221
- .theia-notebook-scroll-container {
222
- flex: 1;
223
- overflow: hidden;
224
- position: relative;
225
- }
226
-
227
- .theia-notebook-main-toolbar {
228
- background: var(--theia-editor-background);
229
- display: flex;
230
- flex-direction: row;
231
- z-index: 1;
232
- /*needed to be on rendered on top of monaco editors*/
233
- }
234
-
235
- .theia-notebook-main-toolbar-item {
236
- height: 22px;
237
- display: flex;
238
- align-items: center;
239
- margin: 0 4px;
240
- padding: 2px;
241
- text-align: center;
242
- color: var(--theia-foreground) !important;
243
- cursor: pointer;
244
- }
245
-
246
- .theia-notebook-main-toolbar-item.theia-mod-disabled:hover {
247
- background-color: transparent;
248
- cursor: default;
249
- }
250
-
251
- .theia-notebook-main-toolbar-item-text {
252
- padding: 0 4px;
253
- white-space: nowrap;
254
- }
255
-
256
- .theia-notebook-toolbar-separator {
257
- width: 1px;
258
- background-color: var(--theia-notebook-cellToolbarSeparator);
259
- margin: 0 4px;
260
- }
261
-
262
- .theia-notebook-add-cell-buttons {
263
- justify-content: center;
264
- display: flex;
265
- }
266
-
267
- .theia-notebook-add-cell-button {
268
- border: 1px solid var(--theia-notebook-cellToolbarSeparator);
269
- background-color: var(--theia-editor-background);
270
- color: var(--theia-foreground);
271
- vertical-align: middle;
272
- text-align: center;
273
- height: 24px;
274
- margin: 0 8px;
275
- }
276
-
277
- .theia-notebook-add-cell-button:hover {
278
- background-color: var(--theia-toolbar-hoverBackground);
279
- }
280
-
281
- .theia-notebook-add-cell-button:active {
282
- background-color: var(--theia-toolbar-active);
283
- }
284
-
285
- .theia-notebook-add-cell-button-icon {
286
- vertical-align: middle;
287
- }
288
-
289
- .theia-notebook-cell-output-webview {
290
- padding: 5px 0px;
291
- margin: 0px 10px;
292
- width: 100%;
293
- }
294
-
295
- .theia-notebook-cell-drop-indicator {
296
- height: 2px;
297
- background-color: var(--theia-notebook-focusedCellBorder);
298
- width: 100%;
299
- }
300
-
301
- .theia-notebook-collapsed-output {
302
- padding: 4px 8px;
303
- color: var(--theia-foreground);
304
- margin-left: 30px;
305
- font-size: 14px;
306
- line-height: 22px;
307
- opacity: 0.7;
308
- }
309
-
310
- .theia-notebook-drag-ghost-image {
311
- position: absolute;
312
- top: -99999px;
313
- left: -99999px;
314
- max-height: 500px;
315
- min-height: 100px;
316
- background-color: var(--theia-editor-background);
317
- }
318
-
319
- /* Notebook Find Widget */
320
-
321
- .theia-notebook-overlay {
322
- position: absolute;
323
- z-index: 100;
324
- right: 18px;
325
- }
326
-
327
- .theia-notebook-find-widget {
328
- /* position: absolute;
329
- z-index: 35;
330
- height: 33px;
331
- overflow: hidden; */
332
- line-height: 19px;
333
- transition: transform 200ms linear;
334
- display: flex;
335
- flex-direction: row;
336
- padding: 0 4px;
337
- box-sizing: border-box;
338
- box-shadow: 0 0 8px 2px var(--theia-widget-shadow);
339
- background-color: var(--theia-editorWidget-background);
340
- color: var(--theia-editorWidget-foreground);
341
- border-left: 1px solid var(--theia-widget-border);
342
- border-right: 1px solid var(--theia-widget-border);
343
- border-bottom: 1px solid var(--theia-widget-border);
344
- border-bottom-left-radius: 4px;
345
- border-bottom-right-radius: 4px;
346
- }
347
-
348
- .theia-notebook-find-widget.hidden {
349
- display: none;
350
- transform: translateY(calc(-100% - 10px));
351
- }
352
-
353
- .theia-notebook-find-widget.search-mode > * > *:nth-child(2) {
354
- display: none;
355
- }
356
-
357
- .theia-notebook-find-widget-expand {
358
- display: flex;
359
- flex-direction: row;
360
- align-items: center;
361
- cursor: pointer;
362
- border-radius: 0;
363
- margin-right: 4px;
364
- }
365
-
366
- .theia-notebook-find-widget-expand:focus {
367
- outline: 1px solid var(--theia-focusBorder);
368
- }
369
-
370
- .theia-notebook-find-widget-expand:hover {
371
- background-color: var(--theia-toolbar-hoverBackground);
372
- }
373
-
374
- .theia-notebook-find-widget-buttons-first {
375
- margin-bottom: 4px;
376
- height: 26px;
377
- display: flex;
378
- flex-direction: row;
379
- align-items: center;
380
- }
381
-
382
- .theia-notebook-find-widget-buttons-first > div,
383
- .theia-notebook-find-widget-buttons-second > div {
384
- margin-right: 4px;
385
- }
386
-
387
- .theia-notebook-find-widget-buttons-second {
388
- height: 26px;
389
- display: flex;
390
- flex-direction: row;
391
- align-items: center;
392
- }
393
-
394
- .theia-notebook-find-widget-inputs {
395
- margin-top: 4px;
396
- display: flex;
397
- flex-direction: column;
398
- }
399
-
400
- .theia-notebook-find-widget-buttons {
401
- margin-top: 4px;
402
- margin-left: 4px;
403
- display: flex;
404
- flex-direction: column;
405
- }
406
-
407
- .theia-notebook-find-widget-matches-count {
408
- width: 72px;
409
- box-sizing: border-box;
410
- overflow: hidden;
411
- text-align: center;
412
- text-overflow: ellipsis;
413
- white-space: nowrap;
414
- }
415
-
416
- .theia-notebook-find-widget-input-wrapper {
417
- display: flex;
418
- align-items: center;
419
- background: var(--theia-input-background);
420
- border-style: solid;
421
- border-width: var(--theia-border-width);
422
- border-color: var(--theia-input-background);
423
- border-radius: 2px;
424
- margin-bottom: 4px;
425
- }
426
-
427
- .theia-notebook-find-widget-input-wrapper:focus-within {
428
- border-color: var(--theia-focusBorder);
429
- }
430
-
431
- .theia-notebook-find-widget-input-wrapper .option.enabled {
432
- color: var(--theia-inputOption-activeForeground);
433
- outline: 1px solid var(--theia-inputOption-activeBorder);
434
- background-color: var(--theia-inputOption-activeBackground);
435
- }
436
-
437
- .theia-notebook-find-widget-input-wrapper .option {
438
- margin: 2px;
439
- }
440
-
441
- .theia-notebook-find-widget-input-wrapper .theia-notebook-find-widget-input:focus {
442
- border: none;
443
- outline: none;
444
- }
445
-
446
- .theia-notebook-find-widget-input-wrapper .theia-notebook-find-widget-input {
447
- background: none;
448
- border: none;
449
- }
450
-
451
- .theia-notebook-find-widget-replace {
452
- margin-bottom: 4px;
453
- }
454
-
455
- .theia-notebook-find-widget-buttons .disabled {
456
- opacity: 0.5;
457
- }
458
-
459
- mark.theia-find-match {
460
- color: var(--theia-editor-findMatchHighlightForeground);
461
- background-color: var(--theia-editor-findMatchHighlightBackground);
462
- }
463
-
464
- mark.theia-find-match.theia-find-match-selected {
465
- color: var(--theia-editor-findMatchForeground);
466
- background-color: var(--theia-editor-findMatchBackground);
467
- }
1
+ /********************************************************************************
2
+ * Copyright (C) 2023 TypeFox and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+
17
+ :root {
18
+ --theia-notebook-markdown-size: 17px;
19
+ --theia-notebook-cell-editor-margin-right: 10px;
20
+ }
21
+
22
+ .theia-notebook-cell-list {
23
+ overflow-y: auto;
24
+ list-style: none;
25
+ padding-left: 0px;
26
+ background-color: var(--theia-notebook-editorBackground);
27
+ }
28
+
29
+ .theia-notebook-cell {
30
+ display: flex;
31
+ margin: 10px 0px;
32
+ }
33
+
34
+ .theia-notebook-cell:focus {
35
+ outline: none;
36
+ }
37
+
38
+ .theia-notebook-cell.draggable {
39
+ cursor: grab;
40
+ }
41
+
42
+ .theia-notebook-cell:hover .theia-notebook-cell-marker {
43
+ visibility: visible;
44
+ }
45
+
46
+ .theia-notebook-cell-marker {
47
+ background-color: var(--theia-notebook-inactiveFocusedCellBorder);
48
+ width: 3px;
49
+ margin: 0px 8px 0px 4px;
50
+ border-radius: 4px;
51
+ visibility: hidden;
52
+ }
53
+
54
+ .theia-notebook-cell-marker-selected {
55
+ visibility: visible;
56
+ background-color: var(--theia-notebook-focusedCellBorder);
57
+ }
58
+
59
+ .theia-notebook-cell-marker:hover {
60
+ width: 5px;
61
+ margin: 0px 6px 0px 4px;
62
+ }
63
+
64
+ .theia-notebook-cell-content {
65
+ flex: 1;
66
+ width: calc(100% - 15px);
67
+ }
68
+
69
+ /* Rendered Markdown Content */
70
+
71
+ .theia-notebook-markdown-content {
72
+ padding: 8px 16px 8px 36px;
73
+ font-size: var(--theia-notebook-markdown-size);
74
+ }
75
+
76
+ .theia-notebook-markdown-content>* {
77
+ font-weight: 400;
78
+ }
79
+
80
+ .theia-notebook-markdown-content>*:first-child {
81
+ margin-top: 0;
82
+ padding-top: 0;
83
+ }
84
+
85
+ .theia-notebook-markdown-content>*:last-child {
86
+ margin-bottom: 0;
87
+ padding-bottom: 0;
88
+ }
89
+
90
+ /* Markdown cell edit mode */
91
+ .theia-notebook-cell-content:has(.theia-notebook-markdown-editor-container>.theia-notebook-cell-editor) {
92
+ margin-left: 36px;
93
+ margin-right: var(--theia-notebook-cell-editor-margin-right);
94
+ outline: 1px solid var(--theia-notebook-cellBorderColor);
95
+ }
96
+
97
+ /* Markdown cell edit mode focused */
98
+ .theia-notebook-cell.focused .theia-notebook-cell-content:has(.theia-notebook-markdown-editor-container>.theia-notebook-cell-editor) {
99
+ outline-color: var(--theia-notebook-focusedEditorBorder);
100
+ }
101
+
102
+ .theia-notebook-empty-markdown {
103
+ opacity: 0.6;
104
+ }
105
+
106
+ .theia-notebook-cell-editor {
107
+ padding: 10px 10px 0 10px;
108
+ }
109
+
110
+ .theia-notebook-cell-editor-container {
111
+ width: calc(100% - 46px);
112
+ flex: 1;
113
+ outline: 1px solid var(--theia-notebook-cellBorderColor);
114
+ margin: 0px 16px 0px 10px;
115
+ }
116
+
117
+ .theia-notebook-cell.focused .theia-notebook-cell-editor-container {
118
+ outline-color: var(--theia-notebook-focusedEditorBorder);
119
+ }
120
+
121
+ .notebook-cell-status {
122
+ display: flex;
123
+ flex-direction: row;
124
+ font-size: 12px;
125
+ height: 16px;
126
+ }
127
+
128
+ .notebook-cell-status-left {
129
+ display: flex;
130
+ flex-direction: row;
131
+ flex-grow: 1;
132
+ }
133
+
134
+ .notebook-cell-language-label {
135
+ padding: 0 5px;
136
+ }
137
+
138
+ .notebook-cell-language-label:hover {
139
+ cursor: pointer;
140
+ background-color: var(--theia-toolbar-hoverBackground);
141
+ }
142
+
143
+ .notebook-cell-status-item {
144
+ margin: 0 3px;
145
+ padding: 0 3px;
146
+ display: flex;
147
+ align-items: center;
148
+ }
149
+
150
+ .theia-notebook-cell-toolbar {
151
+ border: 1px solid var(--theia-notebook-cellToolbarSeparator);
152
+ display: flex;
153
+ position: absolute;
154
+ margin: -20px 0 0 66px;
155
+ padding: 2px;
156
+ background-color: var(--theia-editor-background);
157
+ }
158
+
159
+ .theia-notebook-cell-sidebar-toolbar {
160
+ display: flex;
161
+ flex-direction: column;
162
+ padding: 2px;
163
+ background-color: var(--theia-editor-background);
164
+ flex-grow: 1;
165
+ }
166
+
167
+ .theia-notebook-cell-sidebar {
168
+ display: flex;
169
+ flex-direction: column;
170
+ }
171
+
172
+ .theia-notebook-code-cell-execution-order {
173
+ display: block;
174
+ font-family: var(--monaco-monospace-font);
175
+ font-size: 10px;
176
+ opacity: 0.7;
177
+ text-align: center;
178
+ white-space: pre;
179
+ padding: 5px 0;
180
+ }
181
+
182
+ .theia-notebook-cell-toolbar-item {
183
+ height: 18px;
184
+ width: 18px;
185
+ }
186
+
187
+ .theia-notebook-cell-toolbar-item:hover {
188
+ background-color: var(--theia-toolbar-hoverBackground);
189
+ }
190
+
191
+ .theia-notebook-cell-toolbar-item:active {
192
+ background-color: var(--theia-toolbar-active);
193
+ }
194
+
195
+ .theia-notebook-cell-divider {
196
+ height: 25px;
197
+ width: 100%;
198
+ }
199
+
200
+ .theia-notebook-cell-with-sidebar {
201
+ display: flex;
202
+ flex-direction: row;
203
+ }
204
+
205
+ .theia-notebook-main-container {
206
+ display: flex;
207
+ flex-direction: column;
208
+ height: 100%;
209
+ overflow: hidden;
210
+ }
211
+
212
+ .theia-notebook-main-container:focus {
213
+ outline: none;
214
+ }
215
+
216
+ .theia-notebook-main-container .theia-notebook-main-loading-indicator {
217
+ /* `progress-animation` is defined in `packages/core/src/browser/style/progress-bar.css` */
218
+ animation: progress-animation 1.8s 0s infinite cubic-bezier(0.645, 0.045, 0.355, 1);
219
+ background-color: var(--theia-progressBar-background);
220
+ height: 2px;
221
+ }
222
+
223
+ .theia-notebook-viewport {
224
+ display: flex;
225
+ overflow: hidden;
226
+ height: 100%;
227
+ }
228
+
229
+ .theia-notebook-scroll-container {
230
+ flex: 1;
231
+ overflow: hidden;
232
+ position: relative;
233
+ }
234
+
235
+ .theia-notebook-main-toolbar {
236
+ background: var(--theia-editor-background);
237
+ display: flex;
238
+ flex-direction: row;
239
+ z-index: 1;
240
+ /*needed to be on rendered on top of monaco editors*/
241
+ }
242
+
243
+ .theia-notebook-main-toolbar-item {
244
+ height: 22px;
245
+ display: flex;
246
+ align-items: center;
247
+ margin: 0 4px;
248
+ padding: 2px;
249
+ text-align: center;
250
+ color: var(--theia-foreground) !important;
251
+ cursor: pointer;
252
+ }
253
+
254
+ .theia-notebook-main-toolbar-item.theia-mod-disabled:hover {
255
+ background-color: transparent;
256
+ cursor: default;
257
+ }
258
+
259
+ .theia-notebook-main-toolbar-item-text {
260
+ padding: 0 4px;
261
+ white-space: nowrap;
262
+ }
263
+
264
+ .theia-notebook-toolbar-separator {
265
+ width: 1px;
266
+ background-color: var(--theia-notebook-cellToolbarSeparator);
267
+ margin: 0 4px;
268
+ }
269
+
270
+ .theia-notebook-add-cell-buttons {
271
+ justify-content: center;
272
+ display: flex;
273
+ }
274
+
275
+ .theia-notebook-add-cell-button {
276
+ border: 1px solid var(--theia-notebook-cellToolbarSeparator);
277
+ background-color: var(--theia-editor-background);
278
+ color: var(--theia-foreground);
279
+ display: flex;
280
+ height: 24px;
281
+ margin: 0 8px;
282
+ padding: 2px 4px;
283
+ }
284
+
285
+ .theia-notebook-add-cell-button:hover {
286
+ background-color: var(--theia-toolbar-hoverBackground);
287
+ }
288
+
289
+ .theia-notebook-add-cell-button:active {
290
+ background-color: var(--theia-toolbar-active);
291
+ }
292
+
293
+ .theia-notebook-add-cell-button>* {
294
+ vertical-align: middle;
295
+ }
296
+
297
+ .theia-notebook-add-cell-button-icon::before {
298
+ font: normal normal normal 14px/1 codicon;
299
+ }
300
+
301
+ .theia-notebook-add-cell-button-text {
302
+ margin: 1px 0 0 4px;
303
+ }
304
+
305
+ .theia-notebook-cell-output-webview {
306
+ padding: 5px 0px;
307
+ margin: 0px 15px 0px 9px;
308
+ width: 100%;
309
+ }
310
+
311
+ .theia-notebook-cell-drop-indicator {
312
+ height: 2px;
313
+ background-color: var(--theia-notebook-focusedCellBorder);
314
+ width: 100%;
315
+ }
316
+
317
+ .theia-notebook-collapsed-output {
318
+ padding: 4px 8px;
319
+ color: var(--theia-foreground);
320
+ margin-left: 30px;
321
+ font-size: 14px;
322
+ line-height: 22px;
323
+ opacity: 0.7;
324
+ }
325
+
326
+ .theia-notebook-drag-ghost-image {
327
+ position: absolute;
328
+ top: -99999px;
329
+ left: -99999px;
330
+ max-height: 500px;
331
+ min-height: 100px;
332
+ background-color: var(--theia-editor-background);
333
+ }
334
+
335
+ /* Notebook Find Widget */
336
+
337
+ .theia-notebook-overlay {
338
+ position: absolute;
339
+ z-index: 100;
340
+ right: 18px;
341
+ }
342
+
343
+ .theia-notebook-find-widget {
344
+ /* position: absolute;
345
+ z-index: 35;
346
+ height: 33px;
347
+ overflow: hidden; */
348
+ line-height: 19px;
349
+ transition: transform 200ms linear;
350
+ display: flex;
351
+ flex-direction: row;
352
+ padding: 0 4px;
353
+ box-sizing: border-box;
354
+ box-shadow: 0 0 8px 2px var(--theia-widget-shadow);
355
+ background-color: var(--theia-editorWidget-background);
356
+ color: var(--theia-editorWidget-foreground);
357
+ border-left: 1px solid var(--theia-widget-border);
358
+ border-right: 1px solid var(--theia-widget-border);
359
+ border-bottom: 1px solid var(--theia-widget-border);
360
+ border-bottom-left-radius: 4px;
361
+ border-bottom-right-radius: 4px;
362
+ }
363
+
364
+ .theia-notebook-find-widget.hidden {
365
+ display: none;
366
+ transform: translateY(calc(-100% - 10px));
367
+ }
368
+
369
+ .theia-notebook-find-widget.search-mode>*>*:nth-child(2) {
370
+ display: none;
371
+ }
372
+
373
+ .theia-notebook-find-widget-expand {
374
+ display: flex;
375
+ flex-direction: row;
376
+ align-items: center;
377
+ cursor: pointer;
378
+ border-radius: 0;
379
+ margin-right: 4px;
380
+ }
381
+
382
+ .theia-notebook-find-widget-expand:focus {
383
+ outline: 1px solid var(--theia-focusBorder);
384
+ }
385
+
386
+ .theia-notebook-find-widget-expand:hover {
387
+ background-color: var(--theia-toolbar-hoverBackground);
388
+ }
389
+
390
+ .theia-notebook-find-widget-buttons-first {
391
+ margin-bottom: 4px;
392
+ height: 26px;
393
+ display: flex;
394
+ flex-direction: row;
395
+ align-items: center;
396
+ }
397
+
398
+ .theia-notebook-find-widget-buttons-first>div,
399
+ .theia-notebook-find-widget-buttons-second>div {
400
+ margin-right: 4px;
401
+ }
402
+
403
+ .theia-notebook-find-widget-buttons-second {
404
+ height: 26px;
405
+ display: flex;
406
+ flex-direction: row;
407
+ align-items: center;
408
+ }
409
+
410
+ .theia-notebook-find-widget-inputs {
411
+ margin-top: 4px;
412
+ display: flex;
413
+ flex-direction: column;
414
+ }
415
+
416
+ .theia-notebook-find-widget-buttons {
417
+ margin-top: 4px;
418
+ margin-left: 4px;
419
+ display: flex;
420
+ flex-direction: column;
421
+ }
422
+
423
+ .theia-notebook-find-widget-matches-count {
424
+ width: 72px;
425
+ box-sizing: border-box;
426
+ overflow: hidden;
427
+ text-align: center;
428
+ text-overflow: ellipsis;
429
+ white-space: nowrap;
430
+ }
431
+
432
+ .theia-notebook-find-widget-input-wrapper {
433
+ display: flex;
434
+ align-items: center;
435
+ background: var(--theia-input-background);
436
+ border-style: solid;
437
+ border-width: var(--theia-border-width);
438
+ border-color: var(--theia-input-background);
439
+ border-radius: 2px;
440
+ margin-bottom: 4px;
441
+ }
442
+
443
+ .theia-notebook-find-widget-input-wrapper:focus-within {
444
+ border-color: var(--theia-focusBorder);
445
+ }
446
+
447
+ .theia-notebook-find-widget-input-wrapper .option.enabled {
448
+ color: var(--theia-inputOption-activeForeground);
449
+ outline: 1px solid var(--theia-inputOption-activeBorder);
450
+ background-color: var(--theia-inputOption-activeBackground);
451
+ }
452
+
453
+ .theia-notebook-find-widget-input-wrapper .option {
454
+ margin: 2px;
455
+ }
456
+
457
+ .theia-notebook-find-widget-input-wrapper .theia-notebook-find-widget-input:focus {
458
+ border: none;
459
+ outline: none;
460
+ }
461
+
462
+ .theia-notebook-find-widget-input-wrapper .theia-notebook-find-widget-input {
463
+ background: none;
464
+ border: none;
465
+ }
466
+
467
+ .theia-notebook-find-widget-replace {
468
+ margin-bottom: 4px;
469
+ }
470
+
471
+ .theia-notebook-find-widget-buttons .disabled {
472
+ opacity: 0.5;
473
+ }
474
+
475
+ mark.theia-find-match {
476
+ color: var(--theia-editor-findMatchHighlightForeground);
477
+ background-color: var(--theia-editor-findMatchHighlightBackground);
478
+ }
479
+
480
+ mark.theia-find-match.theia-find-match-selected {
481
+ color: var(--theia-editor-findMatchForeground);
482
+ background-color: var(--theia-editor-findMatchBackground);
483
+ }