@vscode/markdown-editor 0.0.2-9 → 0.0.2-91
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/README.md +31 -0
- package/dist/commands.d.ts +65 -0
- package/dist/commands.js +159 -0
- package/dist/commands.js.map +1 -0
- package/dist/config-BGeaJqWk.js +286 -0
- package/dist/config-BGeaJqWk.js.map +1 -0
- package/dist/config.d.ts +10 -0
- package/dist/config.js +6 -0
- package/dist/config.js.map +1 -0
- package/dist/index.d.ts +1567 -127
- package/dist/index.js +6168 -2077
- package/dist/index.js.map +1 -1
- package/dist/markdown-editor.css +1 -0
- package/dist/stringEdit-CVDbCUBY.js +215 -0
- package/dist/stringEdit-CVDbCUBY.js.map +1 -0
- package/dist/web-editors.d.ts +297 -0
- package/dist/web-editors.js +7359 -0
- package/dist/web-editors.js.map +1 -0
- package/package.json +54 -16
- package/src/contrib/comments/commentInput.css +89 -0
- package/src/contrib/comments/commentWidget.css +60 -0
- package/src/contrib/find/find.css +347 -0
- package/src/view/editor.css +1157 -31
- package/src/view/themes/default.css +13 -4
- package/src/view/themes/github.css +16 -13
- package/src/view/themes/vscode-default.css +397 -0
- package/src/view/themes/{vscode.css → vscode-github.css} +124 -62
- package/dist/_observables/assert.d.ts +0 -2
- package/dist/_observables/deps.d.ts +0 -28
- package/dist/_observables/disposables.d.ts +0 -19
- package/dist/_observables/equals.d.ts +0 -32
- package/dist/_observables/index.d.ts +0 -2
- package/dist/_observables/observableInternal/base.d.ts +0 -172
- package/dist/_observables/observableInternal/changeTracker.d.ts +0 -44
- package/dist/_observables/observableInternal/commonFacade/cancellation.d.ts +0 -24
- package/dist/_observables/observableInternal/commonFacade/deps.d.ts +0 -24
- package/dist/_observables/observableInternal/debugLocation.d.ts +0 -21
- package/dist/_observables/observableInternal/debugName.d.ts +0 -33
- package/dist/_observables/observableInternal/experimental/deferUnobserve.d.ts +0 -16
- package/dist/_observables/observableInternal/experimental/reducer.d.ts +0 -37
- package/dist/_observables/observableInternal/experimental/utils.d.ts +0 -15
- package/dist/_observables/observableInternal/index.d.ts +0 -25
- package/dist/_observables/observableInternal/logging/consoleObservableLogger.d.ts +0 -40
- package/dist/_observables/observableInternal/logging/debugGetDependencyGraph.d.ts +0 -4
- package/dist/_observables/observableInternal/logging/debugger/debuggerRpc.d.ts +0 -4
- package/dist/_observables/observableInternal/logging/debugger/devToolsLogger.d.ts +0 -43
- package/dist/_observables/observableInternal/logging/debugger/rpc.d.ts +0 -41
- package/dist/_observables/observableInternal/logging/debugger/utils.d.ts +0 -13
- package/dist/_observables/observableInternal/logging/logging.d.ts +0 -30
- package/dist/_observables/observableInternal/map.d.ts +0 -18
- package/dist/_observables/observableInternal/observables/baseObservable.d.ts +0 -58
- package/dist/_observables/observableInternal/observables/constObservable.d.ts +0 -5
- package/dist/_observables/observableInternal/observables/derived.d.ts +0 -46
- package/dist/_observables/observableInternal/observables/derivedImpl.d.ts +0 -83
- package/dist/_observables/observableInternal/observables/lazyObservableValue.d.ts +0 -27
- package/dist/_observables/observableInternal/observables/observableFromEvent.d.ts +0 -37
- package/dist/_observables/observableInternal/observables/observableSignal.d.ts +0 -11
- package/dist/_observables/observableInternal/observables/observableSignalFromEvent.d.ts +0 -5
- package/dist/_observables/observableInternal/observables/observableValue.d.ts +0 -37
- package/dist/_observables/observableInternal/observables/observableValueOpts.d.ts +0 -8
- package/dist/_observables/observableInternal/reactions/autorun.d.ts +0 -56
- package/dist/_observables/observableInternal/reactions/autorunImpl.d.ts +0 -53
- package/dist/_observables/observableInternal/set.d.ts +0 -17
- package/dist/_observables/observableInternal/transaction.d.ts +0 -27
- package/dist/_observables/observableInternal/utils/promise.d.ts +0 -75
- package/dist/_observables/observableInternal/utils/runOnChange.d.ts +0 -7
- package/dist/_observables/observableInternal/utils/utils.d.ts +0 -43
- package/dist/_observables/observableInternal/utils/utilsCancellation.d.ts +0 -10
- package/dist/_observables/observableInternal/utils/valueWithChangeEvent.d.ts +0 -10
- package/dist/_observables/utils.d.ts +0 -15
- package/dist/observables.d.ts +0 -4
- package/dist/observables.js +0 -439
- package/dist/observables.js.map +0 -1
- package/dist/runOnChange-C00UIwqQ.js +0 -1538
- package/dist/runOnChange-C00UIwqQ.js.map +0 -1
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* VS Code markdown theme.
|
|
2
|
+
* VS Code markdown theme — GitHub layout variant (`md-theme-vscode-github`).
|
|
3
|
+
*
|
|
4
|
+
* One of two `--vscode-*`-variable-driven themes. This variant keeps the
|
|
5
|
+
* GitHub-style layout/typography (larger 16px base, 1.5 line-height, badge-
|
|
6
|
+
* style inline code, zebra tables); the sibling `vscode-default.css`
|
|
7
|
+
* (`md-theme-vscode-default`) mirrors VS Code's own markdown *preview*
|
|
8
|
+
* (`markdown-language-features/media/markdown.css`: 14px base, code blocks with
|
|
9
|
+
* a 1px border, 5px blockquote rule). Both consume the same `--vscode-*`
|
|
10
|
+
* variables and `--md-tok-*` token palette, so only layout/typography differs.
|
|
3
11
|
*
|
|
4
12
|
* A *variable-driven* theme: every color is expressed as `var(--vscode-*, …)`
|
|
5
13
|
* so the editor adopts whatever VS Code color theme is active (dark, light,
|
|
@@ -9,7 +17,7 @@
|
|
|
9
17
|
*
|
|
10
18
|
* Apply it via the editor `classNames` option:
|
|
11
19
|
*
|
|
12
|
-
* new EditorView(model, { classNames: ['md-theme-vscode'] });
|
|
20
|
+
* new EditorView(model, { classNames: ['md-theme-vscode-github'] });
|
|
13
21
|
*
|
|
14
22
|
* In a real webview VS Code injects the `--vscode-*` custom properties onto
|
|
15
23
|
* the document root and sets a body theme class, so this theme just works. In
|
|
@@ -31,7 +39,7 @@
|
|
|
31
39
|
* Component Explorer supplies a matching `--md-tok-*` palette per color theme.
|
|
32
40
|
*/
|
|
33
41
|
|
|
34
|
-
.md-editor.md-theme-vscode {
|
|
42
|
+
.md-editor.md-theme-vscode-github {
|
|
35
43
|
font-family: var(--markdown-font-family, -apple-system, BlinkMacSystemFont,
|
|
36
44
|
'Segoe WPC', 'Segoe UI', system-ui, 'Ubuntu', 'Droid Sans', sans-serif);
|
|
37
45
|
font-size: var(--markdown-font-size, 16px);
|
|
@@ -50,65 +58,111 @@
|
|
|
50
58
|
* stays visible on dark color themes.
|
|
51
59
|
*/
|
|
52
60
|
--md-cursor-background: var(--vscode-editorCursor-foreground, #000);
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
61
|
+
--md-html-comment-foreground: var(--vscode-descriptionForeground, #59636e);
|
|
62
|
+
--md-html-comment-hover-foreground: var(--vscode-editor-foreground, #1f2328);
|
|
63
|
+
--md-html-comment-font-family: var(--vscode-editor-font-family, ui-monospace, SFMono-Regular,
|
|
64
|
+
'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace);
|
|
65
|
+
--md-readonly-background: var(--vscode-button-secondaryBackground,
|
|
66
|
+
var(--vscode-editorWidget-background, #f3f3f3));
|
|
67
|
+
--md-readonly-background-hover: var(--vscode-button-secondaryHoverBackground,
|
|
68
|
+
var(--vscode-button-secondaryBackground,
|
|
69
|
+
var(--vscode-editorWidget-background, #e9e9e9)));
|
|
70
|
+
--md-readonly-foreground: var(--vscode-button-secondaryForeground,
|
|
71
|
+
var(--vscode-editorWidget-foreground, #444));
|
|
72
|
+
--md-readonly-border: var(--vscode-button-secondaryBorder,
|
|
73
|
+
var(--vscode-button-border,
|
|
74
|
+
var(--vscode-contrastBorder, var(--vscode-editorWidget-border, #b8b8b8))));
|
|
75
|
+
--md-readonly-border-hover: var(--vscode-button-secondaryBorder,
|
|
76
|
+
var(--vscode-button-border,
|
|
77
|
+
var(--vscode-contrastBorder, var(--vscode-editorWidget-border, #8d8d8d))));
|
|
78
|
+
--md-readonly-accent: var(--vscode-button-background, rgb(45, 92, 180));
|
|
79
|
+
--md-readonly-accent-foreground: var(--vscode-button-foreground, #fff);
|
|
80
|
+
--md-inline-code-background: color-mix(in srgb,
|
|
81
|
+
var(--vscode-textPreformat-background, #818b981f) 60%, transparent);
|
|
82
|
+
--md-find-widget-background: var(--vscode-editorWidget-background, #f3f3f3);
|
|
83
|
+
--md-find-widget-foreground: var(--vscode-editorWidget-foreground, #222);
|
|
84
|
+
--md-find-widget-border: var(--vscode-editorWidget-border, #c8c8c8);
|
|
85
|
+
--md-find-widget-shadow: var(--vscode-widget-shadow, rgba(0, 0, 0, 0.2));
|
|
86
|
+
--md-find-input-background: var(--vscode-input-background, #fff);
|
|
87
|
+
--md-find-input-foreground: var(--vscode-input-foreground, #222);
|
|
88
|
+
--md-find-placeholder-foreground: var(--vscode-input-placeholderForeground, #767676);
|
|
89
|
+
--md-find-input-caret: var(--vscode-editorCursor-foreground, currentColor);
|
|
90
|
+
--md-find-input-border: var(--vscode-input-border, #cecece);
|
|
91
|
+
--md-find-count-foreground: var(--vscode-editorWidget-foreground, #222);
|
|
92
|
+
--md-find-focus-border: var(--vscode-focusBorder, #007fd4);
|
|
93
|
+
--md-find-button-hover-background: var(--vscode-inputOption-hoverBackground, rgba(128, 128, 128, 0.18));
|
|
94
|
+
--md-find-disabled-foreground: var(--vscode-disabledForeground, rgba(97, 97, 97, 0.5));
|
|
95
|
+
--md-find-editor-background: var(--vscode-editor-background, #ffffff);
|
|
96
|
+
--md-find-match-background: var(--vscode-editor-findMatchHighlightBackground, rgba(234, 92, 0, 0.33));
|
|
97
|
+
--md-find-current-background: var(--vscode-editor-findMatchBackground, #a8ac94);
|
|
98
|
+
--md-find-current-border: var(--vscode-editor-findMatchBorder,
|
|
99
|
+
color-mix(in srgb, var(--vscode-editorWidget-foreground, #616161) 55%,
|
|
100
|
+
var(--vscode-editor-findMatchBackground, #a8ac94)));
|
|
101
|
+
--md-find-option-background: var(--vscode-inputOption-activeBackground, #007acc);
|
|
102
|
+
--md-find-option-border: color-mix(in srgb,
|
|
103
|
+
var(--vscode-focusBorder, #007acc) 70%,
|
|
104
|
+
var(--vscode-inputOption-activeForeground, #000000));
|
|
105
|
+
--md-find-option-foreground: var(--vscode-inputOption-activeForeground, #fff);
|
|
106
|
+
--md-find-error-border: var(--vscode-inputValidation-errorBorder, #be1100);
|
|
107
|
+
--md-find-error-foreground: var(--vscode-errorForeground, #a1260d);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.vscode-high-contrast .md-editor.md-theme-vscode-github,
|
|
111
|
+
.vscode-high-contrast-light .md-editor.md-theme-vscode-github {
|
|
112
|
+
--md-inline-code-background: var(--vscode-textPreformat-background, #818b981f);
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.md-theme-vscode-github .md-heading {
|
|
56
116
|
margin-top: 24px;
|
|
57
117
|
margin-bottom: 16px;
|
|
58
118
|
font-weight: 600;
|
|
59
119
|
line-height: 1.25;
|
|
60
120
|
}
|
|
61
121
|
|
|
62
|
-
.md-theme-vscode h1.md-heading {
|
|
122
|
+
.md-theme-vscode-github h1.md-heading {
|
|
63
123
|
font-size: 2em;
|
|
64
124
|
padding-bottom: 0.3em;
|
|
65
125
|
border-bottom: 1px solid var(--vscode-textSeparator-foreground, #d1d9e0b3);
|
|
66
126
|
}
|
|
67
127
|
|
|
68
|
-
.md-theme-vscode h2.md-heading {
|
|
128
|
+
.md-theme-vscode-github h2.md-heading {
|
|
69
129
|
font-size: 1.5em;
|
|
70
130
|
padding-bottom: 0.3em;
|
|
71
131
|
border-bottom: 1px solid var(--vscode-textSeparator-foreground, #d1d9e0b3);
|
|
72
132
|
}
|
|
73
133
|
|
|
74
|
-
.md-theme-vscode h3.md-heading {
|
|
134
|
+
.md-theme-vscode-github h3.md-heading {
|
|
75
135
|
font-size: 1.25em;
|
|
76
136
|
}
|
|
77
137
|
|
|
78
|
-
.md-theme-vscode h4.md-heading {
|
|
138
|
+
.md-theme-vscode-github h4.md-heading {
|
|
79
139
|
font-size: 1em;
|
|
80
140
|
}
|
|
81
141
|
|
|
82
|
-
.md-theme-vscode h5.md-heading {
|
|
142
|
+
.md-theme-vscode-github h5.md-heading {
|
|
83
143
|
font-size: 0.875em;
|
|
84
144
|
}
|
|
85
145
|
|
|
86
|
-
.md-theme-vscode h6.md-heading {
|
|
146
|
+
.md-theme-vscode-github h6.md-heading {
|
|
87
147
|
font-size: 0.85em;
|
|
88
148
|
color: var(--vscode-descriptionForeground, #59636e);
|
|
89
149
|
}
|
|
90
150
|
|
|
91
|
-
.md-theme-vscode .md-paragraph {
|
|
151
|
+
.md-theme-vscode-github .md-paragraph {
|
|
92
152
|
margin-top: 0;
|
|
93
153
|
margin-bottom: 16px;
|
|
94
154
|
}
|
|
95
155
|
|
|
96
|
-
.md-theme-vscode .md-blockquote {
|
|
156
|
+
.md-theme-vscode-github .md-blockquote {
|
|
97
157
|
margin: 0 0 16px 0;
|
|
98
158
|
padding: 0 1em;
|
|
99
|
-
/*
|
|
100
|
-
|
|
101
|
-
* the base font). Must be an absolute length, not `1em`: the marker
|
|
102
|
-
* positions itself with this var inside its own (smaller, 0.85em) font
|
|
103
|
-
* context, so an `em` value would resolve against the marker's font-size
|
|
104
|
-
* and pull the `>` out of alignment with the text.
|
|
105
|
-
*/
|
|
106
|
-
--md-blockquote-pad: 16px;
|
|
159
|
+
/* Matches padding-left; `em` is safe because shared marker geometry inherits font size. */
|
|
160
|
+
--md-blockquote-pad: 1em;
|
|
107
161
|
color: var(--vscode-descriptionForeground, #59636e);
|
|
108
162
|
border-left: 0.25em solid var(--vscode-textBlockQuote-border, #d1d9e0);
|
|
109
163
|
}
|
|
110
164
|
|
|
111
|
-
.md-theme-vscode .md-list {
|
|
165
|
+
.md-theme-vscode-github .md-list {
|
|
112
166
|
margin-top: 0;
|
|
113
167
|
margin-bottom: 16px;
|
|
114
168
|
padding-left: 2em;
|
|
@@ -116,7 +170,7 @@
|
|
|
116
170
|
--md-list-indent-step: 2em;
|
|
117
171
|
}
|
|
118
172
|
|
|
119
|
-
.md-theme-vscode .md-thematic-break {
|
|
173
|
+
.md-theme-vscode-github .md-thematic-break {
|
|
120
174
|
height: 0.25em;
|
|
121
175
|
padding: 0;
|
|
122
176
|
margin: 24px 0;
|
|
@@ -124,44 +178,44 @@
|
|
|
124
178
|
border: 0;
|
|
125
179
|
}
|
|
126
180
|
|
|
127
|
-
.md-theme-vscode a {
|
|
181
|
+
.md-theme-vscode-github a {
|
|
128
182
|
color: var(--vscode-textLink-foreground, #0969da);
|
|
129
183
|
text-decoration: none;
|
|
130
184
|
}
|
|
131
185
|
|
|
132
|
-
.md-theme-vscode a:hover {
|
|
186
|
+
.md-theme-vscode-github a:hover {
|
|
133
187
|
text-decoration: underline;
|
|
134
188
|
}
|
|
135
189
|
|
|
136
|
-
.md-theme-vscode strong {
|
|
190
|
+
.md-theme-vscode-github strong {
|
|
137
191
|
font-weight: 600;
|
|
138
192
|
}
|
|
139
193
|
|
|
140
194
|
/* Inline code. */
|
|
141
|
-
.md-theme-vscode :not(pre)>code {
|
|
195
|
+
.md-theme-vscode-github :not(pre)>code {
|
|
142
196
|
font-family: var(--vscode-editor-font-family, ui-monospace, SFMono-Regular,
|
|
143
197
|
'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace);
|
|
144
198
|
font-size: 85%;
|
|
145
199
|
padding: 0.2em 0.4em;
|
|
146
200
|
margin: 0;
|
|
147
201
|
color: var(--vscode-textPreformat-foreground, inherit);
|
|
148
|
-
background-color: var(--
|
|
202
|
+
background-color: var(--md-inline-code-background);
|
|
149
203
|
border-radius: 6px;
|
|
150
204
|
white-space: break-spaces;
|
|
151
205
|
}
|
|
152
206
|
|
|
153
207
|
/* Fenced code block. */
|
|
154
|
-
.md-theme-vscode .md-code-block {
|
|
208
|
+
.md-theme-vscode-github .md-code-block {
|
|
155
209
|
margin-top: 0;
|
|
156
210
|
margin-bottom: 16px;
|
|
157
|
-
padding: 10px
|
|
211
|
+
padding: 6px 10px;
|
|
158
212
|
font-size: 85%;
|
|
159
213
|
line-height: 1.45;
|
|
160
214
|
background-color: var(--vscode-textCodeBlock-background, #f6f8fa);
|
|
161
215
|
border-radius: 6px;
|
|
162
216
|
}
|
|
163
217
|
|
|
164
|
-
.md-theme-vscode .md-code-block code {
|
|
218
|
+
.md-theme-vscode-github .md-code-block code {
|
|
165
219
|
font-family: var(--vscode-editor-font-family, ui-monospace, SFMono-Regular,
|
|
166
220
|
'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace);
|
|
167
221
|
padding: 0;
|
|
@@ -174,43 +228,43 @@
|
|
|
174
228
|
* the explorer (or any embedder) can supply a palette matched to the active
|
|
175
229
|
* color theme. Fallbacks are the VS Code light theme palette.
|
|
176
230
|
*/
|
|
177
|
-
.md-theme-vscode .md-code-block .tok-keyword {
|
|
231
|
+
.md-theme-vscode-github .md-code-block .tok-keyword {
|
|
178
232
|
color: var(--md-tok-keyword, #0000ff);
|
|
179
233
|
}
|
|
180
234
|
|
|
181
|
-
.md-theme-vscode .md-code-block .tok-string {
|
|
235
|
+
.md-theme-vscode-github .md-code-block .tok-string {
|
|
182
236
|
color: var(--md-tok-string, #a31515);
|
|
183
237
|
}
|
|
184
238
|
|
|
185
|
-
.md-theme-vscode .md-code-block .tok-comment {
|
|
239
|
+
.md-theme-vscode-github .md-code-block .tok-comment {
|
|
186
240
|
color: var(--md-tok-comment, #008000);
|
|
187
241
|
}
|
|
188
242
|
|
|
189
|
-
.md-theme-vscode .md-code-block .tok-number {
|
|
243
|
+
.md-theme-vscode-github .md-code-block .tok-number {
|
|
190
244
|
color: var(--md-tok-number, #098658);
|
|
191
245
|
}
|
|
192
246
|
|
|
193
|
-
.md-theme-vscode .md-code-block .tok-regexp {
|
|
247
|
+
.md-theme-vscode-github .md-code-block .tok-regexp {
|
|
194
248
|
color: var(--md-tok-regexp, #811f3f);
|
|
195
249
|
}
|
|
196
250
|
|
|
197
|
-
.md-theme-vscode .md-code-block .tok-type {
|
|
251
|
+
.md-theme-vscode-github .md-code-block .tok-type {
|
|
198
252
|
color: var(--md-tok-type, #267f99);
|
|
199
253
|
}
|
|
200
254
|
|
|
201
|
-
.md-theme-vscode .md-code-block .tok-annotation {
|
|
255
|
+
.md-theme-vscode-github .md-code-block .tok-annotation {
|
|
202
256
|
color: var(--md-tok-annotation, #267f99);
|
|
203
257
|
}
|
|
204
258
|
|
|
205
|
-
.md-theme-vscode .md-code-block .tok-tag {
|
|
259
|
+
.md-theme-vscode-github .md-code-block .tok-tag {
|
|
206
260
|
color: var(--md-tok-tag, #800000);
|
|
207
261
|
}
|
|
208
262
|
|
|
209
|
-
.md-theme-vscode .md-code-block .tok-attribute {
|
|
263
|
+
.md-theme-vscode-github .md-code-block .tok-attribute {
|
|
210
264
|
color: var(--md-tok-attribute, #e50000);
|
|
211
265
|
}
|
|
212
266
|
|
|
213
|
-
.md-theme-vscode .md-code-block .tok-delimiter {
|
|
267
|
+
.md-theme-vscode-github .md-code-block .tok-delimiter {
|
|
214
268
|
color: var(--md-tok-delimiter, inherit);
|
|
215
269
|
}
|
|
216
270
|
|
|
@@ -218,7 +272,7 @@
|
|
|
218
272
|
* Display math has no container styling (KaTeX renders it inline-centered).
|
|
219
273
|
* Keep only the block spacing; horizontal scroll comes from the base sheet.
|
|
220
274
|
*/
|
|
221
|
-
.md-theme-vscode .md-math-block {
|
|
275
|
+
.md-theme-vscode-github .md-math-block {
|
|
222
276
|
margin-top: 0;
|
|
223
277
|
margin-bottom: 16px;
|
|
224
278
|
}
|
|
@@ -228,19 +282,24 @@
|
|
|
228
282
|
* would inflate the surrounding line box. Collapse it so the rendered math fits
|
|
229
283
|
* the text line and the paragraph height stays identical active vs inactive.
|
|
230
284
|
*/
|
|
231
|
-
.md-theme-vscode .md-inline-math .katex {
|
|
285
|
+
.md-theme-vscode-github .md-inline-math .katex {
|
|
232
286
|
line-height: 1;
|
|
233
287
|
}
|
|
234
288
|
|
|
235
|
-
.md-theme-vscode .md-table {
|
|
236
|
-
|
|
289
|
+
.md-theme-vscode-github .md-table-wrapper {
|
|
290
|
+
/* Block spacing lives on the wrapper (the scroll/BFC box) so it collapses
|
|
291
|
+
with siblings as before; the inner table has no margin of its own. */
|
|
237
292
|
margin-top: 0;
|
|
238
293
|
margin-bottom: 16px;
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
.md-theme-vscode-github .md-table {
|
|
297
|
+
border-collapse: collapse;
|
|
239
298
|
width: auto;
|
|
240
299
|
}
|
|
241
300
|
|
|
242
|
-
.md-theme-vscode .md-table th,
|
|
243
|
-
.md-theme-vscode .md-table td {
|
|
301
|
+
.md-theme-vscode-github .md-table th,
|
|
302
|
+
.md-theme-vscode-github .md-table td {
|
|
244
303
|
padding: 6px 13px;
|
|
245
304
|
border: 1px solid var(--vscode-editorWidget-border, #d1d9e0);
|
|
246
305
|
text-align: left;
|
|
@@ -250,19 +309,19 @@
|
|
|
250
309
|
* The editor renders every cell as <td> in a flat <table> of <tr> (no
|
|
251
310
|
* <thead>/<tbody>/<th>). Row order is: header, delimiter row, body rows.
|
|
252
311
|
*/
|
|
253
|
-
.md-theme-vscode .md-table tr:first-child td {
|
|
312
|
+
.md-theme-vscode-github .md-table tr:first-child td {
|
|
254
313
|
font-weight: 600;
|
|
255
314
|
padding-top: 11px;
|
|
256
315
|
padding-bottom: 11px;
|
|
257
316
|
}
|
|
258
317
|
|
|
259
318
|
/* Active: reclaim the header's extra spacing to host the delimiter row. */
|
|
260
|
-
.md-theme-vscode .md-table.md-block-active tr:first-child td {
|
|
319
|
+
.md-theme-vscode-github .md-table.md-block-active tr:first-child td {
|
|
261
320
|
padding-top: 3px;
|
|
262
321
|
padding-bottom: 3px;
|
|
263
322
|
}
|
|
264
323
|
|
|
265
|
-
.md-theme-vscode .md-table tr:nth-child(even):not(.md-table-delimiter-row) {
|
|
324
|
+
.md-theme-vscode-github .md-table tr:nth-child(even):not(.md-table-delimiter-row) {
|
|
266
325
|
background-color: var(--vscode-textCodeBlock-background, #f6f8fa);
|
|
267
326
|
}
|
|
268
327
|
|
|
@@ -271,7 +330,7 @@
|
|
|
271
330
|
* editing; render it borderless with no vertical padding so it occupies just
|
|
272
331
|
* the compact 10px reclaimed from the header.
|
|
273
332
|
*/
|
|
274
|
-
.md-theme-vscode .md-table-delimiter-row td {
|
|
333
|
+
.md-theme-vscode-github .md-table-delimiter-row td {
|
|
275
334
|
border: 0;
|
|
276
335
|
padding: 0 13px;
|
|
277
336
|
background: transparent;
|
|
@@ -283,11 +342,11 @@
|
|
|
283
342
|
* height and first-text X — is unchanged) and clear the zebra fill so the
|
|
284
343
|
* table reads as plain source.
|
|
285
344
|
*/
|
|
286
|
-
.md-theme-vscode .md-table.md-block-active td {
|
|
345
|
+
.md-theme-vscode-github .md-table.md-block-active td {
|
|
287
346
|
border-color: transparent;
|
|
288
347
|
}
|
|
289
348
|
|
|
290
|
-
.md-theme-vscode .md-table.md-block-active tr:nth-child(even):not(.md-table-delimiter-row) td {
|
|
349
|
+
.md-theme-vscode-github .md-table.md-block-active tr:nth-child(even):not(.md-table-delimiter-row) td {
|
|
291
350
|
background-color: transparent;
|
|
292
351
|
}
|
|
293
352
|
|
|
@@ -298,8 +357,8 @@
|
|
|
298
357
|
* siblings and the glue's reserved width are untouched, so active/inactive
|
|
299
358
|
* height and first-text X stay pixel-identical.
|
|
300
359
|
*/
|
|
301
|
-
.md-theme-vscode .md-table.md-block-active td>.md-glue-tableCellGlue:first-child,
|
|
302
|
-
.md-theme-vscode .md-table.md-block-active .md-table-delimiter-row td>.md-marker-tableDelimiter {
|
|
360
|
+
.md-theme-vscode-github .md-table.md-block-active td>.md-glue-tableCellGlue:first-child,
|
|
361
|
+
.md-theme-vscode-github .md-table.md-block-active .md-table-delimiter-row td>.md-marker-tableDelimiter {
|
|
303
362
|
position: relative;
|
|
304
363
|
left: -13px;
|
|
305
364
|
}
|
|
@@ -307,16 +366,19 @@
|
|
|
307
366
|
/*
|
|
308
367
|
* The last cell's closing `|` floats right after the (left-aligned) cell text.
|
|
309
368
|
* Pin it to the column's right gridline (the cell's border edge, 13px past the
|
|
310
|
-
* content box) so the right outline is a straight line.
|
|
369
|
+
* content box) so the right outline is a straight line. `top: auto` keeps the
|
|
370
|
+
* pipe on the content line (the shared editor.css rule takes it out of flow);
|
|
371
|
+
* the previous `top: 0` floated it to the cell's top edge, so on tall/wrapping
|
|
372
|
+
* rows it no longer lined up with the in-flow leading pipes.
|
|
311
373
|
*/
|
|
312
|
-
.md-theme-vscode .md-table.md-block-active td:last-child {
|
|
374
|
+
.md-theme-vscode-github .md-table.md-block-active td:last-child {
|
|
313
375
|
position: relative;
|
|
314
376
|
}
|
|
315
377
|
|
|
316
|
-
.md-theme-vscode .md-table.md-block-active td:last-child>.md-glue-tableCellGlue:last-child {
|
|
378
|
+
.md-theme-vscode-github .md-table.md-block-active td:last-child>.md-glue-tableCellGlue:last-child {
|
|
317
379
|
position: absolute;
|
|
318
380
|
right: 0;
|
|
319
|
-
top:
|
|
381
|
+
top: auto;
|
|
320
382
|
}
|
|
321
383
|
|
|
322
384
|
/*
|
|
@@ -324,8 +386,8 @@
|
|
|
324
386
|
* `tableDelimiterClose` marker; pin it to the same right gridline as the body
|
|
325
387
|
* rows' closing pipe so the last column's outline stays straight.
|
|
326
388
|
*/
|
|
327
|
-
.md-theme-vscode .md-table.md-block-active .md-table-delimiter-row td:last-child>.md-marker-tableDelimiterClose {
|
|
389
|
+
.md-theme-vscode-github .md-table.md-block-active .md-table-delimiter-row td:last-child>.md-marker-tableDelimiterClose {
|
|
328
390
|
position: absolute;
|
|
329
391
|
right: 0;
|
|
330
|
-
top:
|
|
392
|
+
top: auto;
|
|
331
393
|
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { IDisposable, DisposableStore } from './disposables';
|
|
2
|
-
export { IDisposable, DisposableStore };
|
|
3
|
-
export declare function toDisposable(fn: () => void): IDisposable;
|
|
4
|
-
export declare function markAsDisposed(_disposable: IDisposable): void;
|
|
5
|
-
export declare function trackDisposable(_disposable: IDisposable): void;
|
|
6
|
-
export declare function assertFn(_fn: () => {}): void;
|
|
7
|
-
export declare class CancellationError extends Error {
|
|
8
|
-
constructor();
|
|
9
|
-
}
|
|
10
|
-
export interface CancellationToken {
|
|
11
|
-
/**
|
|
12
|
-
* A flag signalling is cancellation has been requested.
|
|
13
|
-
*/
|
|
14
|
-
readonly isCancellationRequested: boolean;
|
|
15
|
-
/**
|
|
16
|
-
* An event which fires when cancellation is requested. This event
|
|
17
|
-
* only ever fires `once` as cancellation can only happen once. Listeners
|
|
18
|
-
* that are registered after cancellation will be called (next event loop run),
|
|
19
|
-
* but also only once.
|
|
20
|
-
*
|
|
21
|
-
* @event
|
|
22
|
-
*/
|
|
23
|
-
readonly onCancellationRequested: (listener: (e: any) => any, thisArgs?: any, disposables?: IDisposable[]) => IDisposable;
|
|
24
|
-
}
|
|
25
|
-
export declare function onBugIndicatingError(_error?: any): void;
|
|
26
|
-
export declare class BugIndicatingError extends Error {
|
|
27
|
-
constructor(message?: string);
|
|
28
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export interface IDisposable {
|
|
2
|
-
dispose(): void;
|
|
3
|
-
}
|
|
4
|
-
export declare class DisposableStore implements IDisposable {
|
|
5
|
-
private disposables;
|
|
6
|
-
private _isDisposed;
|
|
7
|
-
get isDisposed(): boolean;
|
|
8
|
-
dispose(): void;
|
|
9
|
-
add<T extends IDisposable | undefined>(disposable: T): T;
|
|
10
|
-
remove<T extends IDisposable | undefined>(disposable: T): T;
|
|
11
|
-
clear(): void;
|
|
12
|
-
leakItems(): void;
|
|
13
|
-
}
|
|
14
|
-
export declare abstract class Disposable implements IDisposable {
|
|
15
|
-
protected readonly _store: DisposableStore;
|
|
16
|
-
dispose(): void;
|
|
17
|
-
protected _register<T extends IDisposable>(t: T): T;
|
|
18
|
-
protected _registerOrDispose<T extends IDisposable | undefined>(t: T): T;
|
|
19
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
export type EqualityComparer<T> = (a: T, b: T) => boolean;
|
|
2
|
-
/**
|
|
3
|
-
* Compares two items for equality using strict equality.
|
|
4
|
-
*/
|
|
5
|
-
export declare const strictEquals: EqualityComparer<any>;
|
|
6
|
-
/**
|
|
7
|
-
* Two items are considered equal, if their stringified representations are equal.
|
|
8
|
-
*/
|
|
9
|
-
export declare function jsonStringifyEquals<T>(): EqualityComparer<T>;
|
|
10
|
-
/**
|
|
11
|
-
* Uses `item.equals(other)` to determine equality.
|
|
12
|
-
*/
|
|
13
|
-
export declare function itemEquals<T extends {
|
|
14
|
-
equals(other: T): boolean;
|
|
15
|
-
}>(): EqualityComparer<T>;
|
|
16
|
-
/**
|
|
17
|
-
* Checks if two items are both null or undefined, or are equal according to the provided equality comparer.
|
|
18
|
-
*/
|
|
19
|
-
export declare function equalsIfDefined<T>(v1: T | undefined | null, v2: T | undefined | null, equals: EqualityComparer<T>): boolean;
|
|
20
|
-
/**
|
|
21
|
-
* Returns an equality comparer that checks if two items are both null or undefined, or are equal according to the provided equality comparer.
|
|
22
|
-
*/
|
|
23
|
-
export declare function equalsIfDefined<T>(equals: EqualityComparer<T>): EqualityComparer<T | undefined | null>;
|
|
24
|
-
/**
|
|
25
|
-
* Drills into arrays (items ordered) and objects (keys unordered) and uses strict equality on everything else.
|
|
26
|
-
*/
|
|
27
|
-
export declare function structuralEquals<T>(a: T, b: T): boolean;
|
|
28
|
-
/**
|
|
29
|
-
* `getStructuralKey(a) === getStructuralKey(b) <=> structuralEquals(a, b)`
|
|
30
|
-
* (assuming that a and b are not cyclic structures and nothing extends globalThis Array).
|
|
31
|
-
*/
|
|
32
|
-
export declare function getStructuralKey(t: unknown): string;
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import { DisposableStore } from './commonFacade/deps';
|
|
2
|
-
/**
|
|
3
|
-
* Represents an observable value.
|
|
4
|
-
*
|
|
5
|
-
* @template T The type of the values the observable can hold.
|
|
6
|
-
*/
|
|
7
|
-
export interface IObservable<T> extends IObservableWithChange<T, unknown> {
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Represents an observable value.
|
|
11
|
-
*
|
|
12
|
-
* @template T The type of the values the observable can hold.
|
|
13
|
-
* @template TChange The type used to describe value changes
|
|
14
|
-
* (usually `void` and only used in advanced scenarios).
|
|
15
|
-
* While observers can miss temporary values of an observable,
|
|
16
|
-
* they will receive all change values (as long as they are subscribed)!
|
|
17
|
-
*/
|
|
18
|
-
export interface IObservableWithChange<T, TChange = unknown> {
|
|
19
|
-
/**
|
|
20
|
-
* Returns the current value.
|
|
21
|
-
*
|
|
22
|
-
* Calls {@link IObserver.handleChange} if the observable notices that the value changed.
|
|
23
|
-
* Must not be called from {@link IObserver.handleChange}!
|
|
24
|
-
*/
|
|
25
|
-
get(): T;
|
|
26
|
-
/**
|
|
27
|
-
* Forces the observable to check for changes and report them.
|
|
28
|
-
*
|
|
29
|
-
* Has the same effect as calling {@link IObservable.get}, but does not force the observable
|
|
30
|
-
* to actually construct the value, e.g. if change deltas are used.
|
|
31
|
-
* Calls {@link IObserver.handleChange} if the observable notices that the value changed.
|
|
32
|
-
* Must not be called from {@link IObserver.handleChange}!
|
|
33
|
-
*/
|
|
34
|
-
reportChanges(): void;
|
|
35
|
-
/**
|
|
36
|
-
* Adds the observer to the set of subscribed observers.
|
|
37
|
-
* This method is idempotent.
|
|
38
|
-
*/
|
|
39
|
-
addObserver(observer: IObserver): void;
|
|
40
|
-
/**
|
|
41
|
-
* Removes the observer from the set of subscribed observers.
|
|
42
|
-
* This method is idempotent.
|
|
43
|
-
*/
|
|
44
|
-
removeObserver(observer: IObserver): void;
|
|
45
|
-
/**
|
|
46
|
-
* Reads the current value and subscribes the reader to this observable.
|
|
47
|
-
*
|
|
48
|
-
* Calls {@link IReader.readObservable} if a reader is given, otherwise {@link IObservable.get}
|
|
49
|
-
* (see {@link ConvenientObservable.read} for the implementation).
|
|
50
|
-
*/
|
|
51
|
-
read(reader: IReader | undefined): T;
|
|
52
|
-
/**
|
|
53
|
-
* Makes sure this value is computed eagerly.
|
|
54
|
-
*/
|
|
55
|
-
recomputeInitiallyAndOnChange(store: DisposableStore, handleValue?: (value: T) => void): IObservable<T>;
|
|
56
|
-
/**
|
|
57
|
-
* Makes sure this value is cached.
|
|
58
|
-
*/
|
|
59
|
-
keepObserved(store: DisposableStore): IObservable<T>;
|
|
60
|
-
/**
|
|
61
|
-
* Creates a derived observable that depends on this observable.
|
|
62
|
-
* Use the reader to read other observables
|
|
63
|
-
* (see {@link ConvenientObservable.map} for the implementation).
|
|
64
|
-
*/
|
|
65
|
-
map<TNew>(fn: (value: T, reader: IReader) => TNew): IObservable<TNew>;
|
|
66
|
-
map<TNew>(owner: object, fn: (value: T, reader: IReader) => TNew): IObservable<TNew>;
|
|
67
|
-
flatten<TNew>(this: IObservable<IObservable<TNew>>): IObservable<TNew>;
|
|
68
|
-
/**
|
|
69
|
-
* ONLY FOR DEBUGGING!
|
|
70
|
-
* Logs computations of this derived.
|
|
71
|
-
*/
|
|
72
|
-
log(): IObservableWithChange<T, TChange>;
|
|
73
|
-
/**
|
|
74
|
-
* A human-readable name for debugging purposes.
|
|
75
|
-
*/
|
|
76
|
-
readonly debugName: string;
|
|
77
|
-
/**
|
|
78
|
-
* ONLY FOR DEBUGGING!
|
|
79
|
-
*/
|
|
80
|
-
debugGetDependencyGraph(): string;
|
|
81
|
-
/**
|
|
82
|
-
* This property captures the type of the change object. Do not use it at runtime!
|
|
83
|
-
*/
|
|
84
|
-
readonly TChange: TChange;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Represents an observer that can be subscribed to an observable.
|
|
88
|
-
*
|
|
89
|
-
* If an observer is subscribed to an observable and that observable didn't signal
|
|
90
|
-
* a change through one of the observer methods, the observer can assume that the
|
|
91
|
-
* observable didn't change.
|
|
92
|
-
* If an observable reported a possible change, {@link IObservable.reportChanges} forces
|
|
93
|
-
* the observable to report an actual change if there was one.
|
|
94
|
-
*/
|
|
95
|
-
export interface IObserver {
|
|
96
|
-
/**
|
|
97
|
-
* Signals that the given observable might have changed and a transaction potentially modifying that observable started.
|
|
98
|
-
* Before the given observable can call this method again, is must call {@link IObserver.endUpdate}.
|
|
99
|
-
*
|
|
100
|
-
* Implementations must not get/read the value of other observables, as they might not have received this event yet!
|
|
101
|
-
* The method {@link IObservable.reportChanges} can be used to force the observable to report the changes.
|
|
102
|
-
*/
|
|
103
|
-
beginUpdate<T>(observable: IObservable<T>): void;
|
|
104
|
-
/**
|
|
105
|
-
* Signals that the transaction that potentially modified the given observable ended.
|
|
106
|
-
* This is a good place to react to (potential) changes.
|
|
107
|
-
*/
|
|
108
|
-
endUpdate<T>(observable: IObservable<T>): void;
|
|
109
|
-
/**
|
|
110
|
-
* Signals that the given observable might have changed.
|
|
111
|
-
* The method {@link IObservable.reportChanges} can be used to force the observable to report the changes.
|
|
112
|
-
*
|
|
113
|
-
* Implementations must not get/read the value of other observables, as they might not have received this event yet!
|
|
114
|
-
* The change should be processed lazily or in {@link IObserver.endUpdate}.
|
|
115
|
-
*/
|
|
116
|
-
handlePossibleChange<T>(observable: IObservable<T>): void;
|
|
117
|
-
/**
|
|
118
|
-
* Signals that the given {@link observable} changed.
|
|
119
|
-
*
|
|
120
|
-
* Implementations must not get/read the value of other observables, as they might not have received this event yet!
|
|
121
|
-
* The change should be processed lazily or in {@link IObserver.endUpdate}.
|
|
122
|
-
*
|
|
123
|
-
* @param change Indicates how or why the value changed.
|
|
124
|
-
*/
|
|
125
|
-
handleChange<T, TChange>(observable: IObservableWithChange<T, TChange>, change: TChange): void;
|
|
126
|
-
}
|
|
127
|
-
export interface IReader {
|
|
128
|
-
/**
|
|
129
|
-
* Reads the value of an observable and subscribes to it.
|
|
130
|
-
*/
|
|
131
|
-
readObservable<T>(observable: IObservableWithChange<T, any>): T;
|
|
132
|
-
}
|
|
133
|
-
export interface ISettable<T, TChange = void> {
|
|
134
|
-
/**
|
|
135
|
-
* Sets the value of the observable.
|
|
136
|
-
* Use a transaction to batch multiple changes (with a transaction, observers only react at the end of the transaction).
|
|
137
|
-
*
|
|
138
|
-
* @param transaction When given, value changes are handled on demand or when the transaction ends.
|
|
139
|
-
* @param change Describes how or why the value changed.
|
|
140
|
-
*/
|
|
141
|
-
set(value: T, transaction: ITransaction | undefined, change: TChange): void;
|
|
142
|
-
}
|
|
143
|
-
export interface ITransaction {
|
|
144
|
-
/**
|
|
145
|
-
* Calls {@link Observer.beginUpdate} immediately
|
|
146
|
-
* and {@link Observer.endUpdate} when the transaction ends.
|
|
147
|
-
*/
|
|
148
|
-
updateObserver(observer: IObserver, observable: IObservableWithChange<any, any>): void;
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* This function is used to indicate that the caller recovered from an error that indicates a bug.
|
|
152
|
-
*/
|
|
153
|
-
export declare function handleBugIndicatingErrorRecovery(message: string): void;
|
|
154
|
-
/**
|
|
155
|
-
* A settable observable.
|
|
156
|
-
*/
|
|
157
|
-
export interface ISettableObservable<T, TChange = void> extends IObservableWithChange<T, TChange>, ISettable<T, TChange> {
|
|
158
|
-
}
|
|
159
|
-
export interface IReaderWithStore extends IReader {
|
|
160
|
-
/**
|
|
161
|
-
* Items in this store get disposed just before the observable recomputes/reruns or when it becomes unobserved.
|
|
162
|
-
*/
|
|
163
|
-
get store(): DisposableStore;
|
|
164
|
-
/**
|
|
165
|
-
* Items in this store get disposed just after the observable recomputes/reruns or when it becomes unobserved.
|
|
166
|
-
* This is important if the current run needs the undisposed result from the last run.
|
|
167
|
-
*
|
|
168
|
-
* Warning: Items in this store might still get disposed before dependents (that read the now disposed value in the past) are recomputed with the new (undisposed) value!
|
|
169
|
-
* A clean solution for this is ref counting.
|
|
170
|
-
*/
|
|
171
|
-
get delayedStore(): DisposableStore;
|
|
172
|
-
}
|