@codingame/monaco-editor-wrapper 4.0.0 → 5.0.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 (17) hide show
  1. package/dist/keybindings/vim.d.ts +1 -1
  2. package/dist/main.js +1 -1
  3. package/dist/services.js +1 -6
  4. package/dist/tools.d.ts +15 -3
  5. package/dist/tools.js +286 -27
  6. package/package.json +2 -1
  7. package/stats.html +1 -1
  8. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/external/tslib/tslib.es6.js +0 -11
  9. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/files.js +0 -396
  10. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/override/vs/platform/dialogs/common/dialogs.js +0 -8
  11. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/vscode/src/vs/platform/files/browser/indexedDBFileSystemProvider.js +0 -406
  12. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/vscode/src/vs/platform/files/common/fileService.js +0 -989
  13. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/vscode/src/vs/platform/files/common/io.js +0 -77
  14. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/vscode/src/vs/workbench/services/textfile/browser/browserTextFileService.js +0 -58
  15. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +0 -641
  16. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/vscode/src/vs/workbench/services/textfile/common/textFileEditorModelManager.js +0 -404
  17. package/dist/node_modules/@codingame/monaco-vscode-files-service-override/vscode/src/vs/workbench/services/textfile/common/textFileSaveParticipant.js +0 -64
@@ -1,396 +0,0 @@
1
- import { __decorate, __param } from './external/tslib/tslib.es6.js';
2
- import 'vscode/vscode/vs/platform/instantiation/common/descriptors';
3
- import { FileService } from './vscode/src/vs/platform/files/common/fileService.js';
4
- import { ILogService } from 'vscode/vscode/vs/platform/log/common/log';
5
- import { InMemoryFileSystemProvider } from 'vscode/vscode/vs/platform/files/common/inMemoryFilesystemProvider';
6
- export { InMemoryFileSystemProvider } from 'vscode/vscode/vs/platform/files/common/inMemoryFilesystemProvider';
7
- import { URI } from 'vscode/vscode/vs/base/common/uri';
8
- import { FileType, createFileSystemProviderError, FileSystemProviderErrorCode, FileSystemProviderError, FilePermission, toFileSystemProviderErrorCode } from 'vscode/vscode/vs/platform/files/common/files';
9
- export { FileChangeType, FilePermission, FileSystemProviderCapabilities, FileSystemProviderError, FileSystemProviderErrorCode, FileType } from 'vscode/vscode/vs/platform/files/common/files';
10
- import { Disposable, DisposableStore, toDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
11
- import { extUri } from 'vscode/vscode/vs/base/common/resources';
12
- import { Event, Emitter } from 'vscode/vscode/vs/base/common/event';
13
- export { HTMLFileSystemProvider } from 'vscode/vscode/vs/platform/files/browser/htmlFileSystemProvider';
14
- import { relative } from 'vscode/vscode/vs/base/common/path';
15
- import 'vscode/vscode/vs/workbench/contrib/files/browser/files.contribution';
16
- import { Schemas } from 'vscode/vscode/vs/base/common/network';
17
- import { IndexedDBFileSystemProvider } from './vscode/src/vs/platform/files/browser/indexedDBFileSystemProvider.js';
18
- export { IndexedDB } from 'vscode/vscode/vs/base/browser/indexedDB';
19
- import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry';
20
- import { BufferLogger } from 'vscode/vscode/vs/platform/log/common/bufferLog';
21
- import { localizeWithPath } from 'vscode/vscode/vs/nls';
22
- import 'vscode/vscode/vs/workbench/services/textfile/common/textfiles';
23
- import './vscode/src/vs/workbench/services/textfile/browser/browserTextFileService.js';
24
- import 'vscode/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService';
25
- import 'vscode/vscode/vs/workbench/services/files/common/elevatedFileService';
26
- import { registerServiceInitializePreParticipant, checkServicesNotInitialized } from 'vscode/lifecycle';
27
- import { logsPath } from 'vscode/workbench';
28
-
29
- const encoder = new TextEncoder();
30
- const decoder = new TextDecoder();
31
- class RegisteredFileSystemProvider extends Disposable {
32
- constructor(readonly) {
33
- super();
34
- this.onDidChangeCapabilities = Event.None;
35
- this._onDidChangeFile = new Emitter();
36
- this.onDidChangeFile = this._onDidChangeFile.event;
37
- this.files = new Map();
38
- this.capabilities = 2 | 1024 ;
39
- if (readonly) {
40
- this.capabilities |= 2048 ;
41
- }
42
- }
43
- registerFile(file) {
44
- this.files.set(( file.uri.toString()), file);
45
- this._onDidChangeFile.fire([{
46
- resource: file.uri,
47
- type: 1
48
- }]);
49
- const disposableStore = new DisposableStore();
50
- disposableStore.add(toDisposable(() => {
51
- if (this.files.get(( file.uri.toString())) === file) {
52
- this.files.delete(( file.uri.toString()));
53
- this._onDidChangeFile.fire([{
54
- resource: file.uri,
55
- type: 2
56
- }]);
57
- }
58
- }));
59
- disposableStore.add(file.onDidDelete(() => {
60
- disposableStore.dispose();
61
- }));
62
- disposableStore.add(file.onDidChange(() => {
63
- this._onDidChangeFile.fire([{
64
- resource: file.uri,
65
- type: 0
66
- }]);
67
- }));
68
- disposableStore.add(file.onDidRename(({ from, to }) => {
69
- if (this.files.get(( from.toString())) === file) {
70
- this.files.delete(( from.toString()));
71
- this._onDidChangeFile.fire([{
72
- resource: from,
73
- type: 2
74
- }]);
75
- this.files.set(( to.toString()), file);
76
- this._onDidChangeFile.fire([{
77
- resource: to,
78
- type: 1
79
- }]);
80
- }
81
- }));
82
- return disposableStore;
83
- }
84
- async stat(resource) {
85
- const resourceUri = ( resource.toString());
86
- const file = this.files.get(resourceUri);
87
- if (file != null) {
88
- return file.stats();
89
- }
90
- const handledUris = Array.from(( this.files.keys()));
91
- for (const handledUri of handledUris) {
92
- if (handledUri.startsWith(resourceUri + '/')) {
93
- return {
94
- ctime: Date.now(),
95
- mtime: Date.now(),
96
- size: 0,
97
- type: FileType.Directory
98
- };
99
- }
100
- }
101
- throw createFileSystemProviderError('file not found', FileSystemProviderErrorCode.FileNotFound);
102
- }
103
- async readdir(resource) {
104
- const includedPaths = ( Array.from(( this.files.keys()))
105
- .map(uri => relative(resource.path, ( URI.parse(uri)).path)))
106
- .filter(path => !path.startsWith('..'));
107
- const files = includedPaths.filter(path => !path.includes('/'));
108
- const directories = ( includedPaths.filter(path => path.includes('/')).map(path => path.slice(0, path.indexOf('/'))));
109
- return [
110
- ...( files.map(path => [
111
- path,
112
- FileType.File
113
- ])),
114
- ...( directories.map(path => [
115
- path,
116
- FileType.Directory
117
- ]))
118
- ];
119
- }
120
- async readFile(resource) {
121
- const file = this.files.get(( resource.toString()));
122
- if (file != null) {
123
- const data = await file.read();
124
- if (data instanceof Uint8Array) {
125
- return data;
126
- }
127
- else {
128
- return encoder.encode(data);
129
- }
130
- }
131
- throw FileSystemProviderError.create('file not found', FileSystemProviderErrorCode.FileNotFound);
132
- }
133
- watch() {
134
- return Disposable.None;
135
- }
136
- async writeFile(resource, content) {
137
- const file = this.files.get(( resource.toString()));
138
- if (file?.write != null) {
139
- await file.write(decoder.decode(content));
140
- return;
141
- }
142
- throw createFileSystemProviderError('Not allowed', FileSystemProviderErrorCode.NoPermissions);
143
- }
144
- async delete(resource) {
145
- const file = this.files.get(( resource.toString()));
146
- if (file != null) {
147
- await file.delete();
148
- return;
149
- }
150
- throw createFileSystemProviderError('File not found', FileSystemProviderErrorCode.FileNotFound);
151
- }
152
- async rename(from, to) {
153
- const file = this.files.get(( from.toString()));
154
- if (file != null) {
155
- await file.rename(to);
156
- return;
157
- }
158
- throw createFileSystemProviderError('File not found', FileSystemProviderErrorCode.FileNotFound);
159
- }
160
- async mkdir() {
161
- throw createFileSystemProviderError('Not allowed', FileSystemProviderErrorCode.NoPermissions);
162
- }
163
- }
164
- function isFullfiled(result) {
165
- return result.status === 'fulfilled';
166
- }
167
- class OverlayFileSystemProvider {
168
- constructor() {
169
- this.providers = [];
170
- this.onDidChangeCapabilities = Event.None;
171
- this._onDidChangeFile = new Emitter();
172
- this.onDidChangeFile = this._onDidChangeFile.event;
173
- this._onDidChangeOverlays = new Emitter();
174
- this.onDidChangeOverlays = this._onDidChangeOverlays.event;
175
- this.capabilities = 2 | 1024 ;
176
- }
177
- register(priority, provider) {
178
- const item = { priority, provider };
179
- this.providers.push(item);
180
- this.providers.sort((a, b) => b.priority - a.priority);
181
- const disposableStore = new DisposableStore();
182
- disposableStore.add(provider.onDidChangeFile(e => {
183
- this._onDidChangeFile.fire(e);
184
- }));
185
- disposableStore.add({
186
- dispose: () => {
187
- const index = this.providers.indexOf(item);
188
- if (index >= 0) {
189
- this.providers.splice(index, 1);
190
- this._onDidChangeOverlays.fire();
191
- }
192
- }
193
- });
194
- this._onDidChangeOverlays.fire();
195
- return disposableStore;
196
- }
197
- get delegates() {
198
- return ( this.providers.map(({ provider }) => provider));
199
- }
200
- async readFromDelegates(caller) {
201
- let firstError;
202
- for (const delegate of this.delegates) {
203
- try {
204
- return await caller(delegate);
205
- }
206
- catch (err) {
207
- firstError ?? (firstError = err);
208
- if (err instanceof FileSystemProviderError && [
209
- FileSystemProviderErrorCode.NoPermissions,
210
- FileSystemProviderErrorCode.FileNotFound,
211
- FileSystemProviderErrorCode.Unavailable
212
- ].includes(err.code)) {
213
- continue;
214
- }
215
- throw err;
216
- }
217
- }
218
- throw firstError;
219
- }
220
- async writeToDelegates(resource, caller) {
221
- for (const provider of this.delegates) {
222
- if (((provider.capabilities & 2048) ) > 0) {
223
- continue;
224
- }
225
- try {
226
- return await caller(provider);
227
- }
228
- catch (err) {
229
- if (err instanceof FileSystemProviderError && [
230
- FileSystemProviderErrorCode.NoPermissions,
231
- FileSystemProviderErrorCode.FileNotFound,
232
- FileSystemProviderErrorCode.Unavailable
233
- ].includes(err.code)) {
234
- continue;
235
- }
236
- throw err;
237
- }
238
- }
239
- throw createFileSystemProviderError('Not allowed', FileSystemProviderErrorCode.NoPermissions);
240
- }
241
- async stat(resource) {
242
- return this.readFromDelegates(async (delegate) => {
243
- const result = await delegate.stat(resource);
244
- const readOnly = ((delegate.capabilities & 2048) ) > 0;
245
- return {
246
- ...result,
247
- permissions: result.permissions ?? (readOnly ? FilePermission.Readonly : undefined)
248
- };
249
- });
250
- }
251
- async readFile(resource) {
252
- return this.readFromDelegates(delegate => delegate.readFile(resource));
253
- }
254
- async readdir(resource) {
255
- const results = await Promise.allSettled(( this.delegates.map(delegate => delegate.readdir(resource))));
256
- if (!( results.some(isFullfiled))) {
257
- throw results[0].reason;
258
- }
259
- return Object.entries(Object.fromEntries(( results.filter(isFullfiled).map(result => result.value)).flat()));
260
- }
261
- watch(resource, opts) {
262
- const store = new DisposableStore();
263
- for (const delegate of this.delegates) {
264
- store.add(delegate.watch(resource, opts));
265
- }
266
- return store;
267
- }
268
- async writeFile(resource, content, opts) {
269
- await this.writeToDelegates(resource, async (delegate) => {
270
- try {
271
- const stats = await delegate.stat(resource);
272
- if (((stats.permissions ?? 0) & FilePermission.Readonly) > 0) {
273
- throw createFileSystemProviderError('Not allowed', FileSystemProviderErrorCode.NoPermissions);
274
- }
275
- }
276
- catch (err) {
277
- }
278
- return delegate.writeFile(resource, content, opts);
279
- });
280
- }
281
- async mkdir(resource) {
282
- await this.writeToDelegates(resource, delegate => delegate.mkdir(resource));
283
- }
284
- async delete(resource, opts) {
285
- await this.writeToDelegates(resource, delegate => delegate.delete(resource, opts));
286
- }
287
- async rename(from, to, opts) {
288
- await this.writeToDelegates(from, delegate => delegate.rename(from, to, opts));
289
- }
290
- }
291
- function resourceForError(resource) {
292
- if (resource.scheme === Schemas.file) {
293
- return resource.fsPath;
294
- }
295
- return ( resource.toString(true));
296
- }
297
- async function mkdirp(provider, directory) {
298
- const directoriesToCreate = [];
299
- while (!extUri.isEqual(directory, extUri.dirname(directory))) {
300
- try {
301
- const stat = await provider.stat(directory);
302
- if ((stat.type & FileType.Directory) === 0) {
303
- throw new Error(localizeWithPath('mkdirExistsError', "Unable to create folder '{0}' that already exists but is not a directory", resourceForError(directory)));
304
- }
305
- break;
306
- }
307
- catch (error) {
308
- if (toFileSystemProviderErrorCode(error) !== FileSystemProviderErrorCode.FileNotFound) {
309
- throw error;
310
- }
311
- directoriesToCreate.push(extUri.basename(directory));
312
- directory = extUri.dirname(directory);
313
- }
314
- }
315
- for (let i = directoriesToCreate.length - 1; i >= 0; i--) {
316
- directory = extUri.joinPath(directory, directoriesToCreate[i]);
317
- try {
318
- await provider.mkdir(directory);
319
- }
320
- catch (error) {
321
- if (toFileSystemProviderErrorCode(error) !== FileSystemProviderErrorCode.FileExists) {
322
- throw error;
323
- }
324
- }
325
- }
326
- }
327
- class MkdirpOnWriteInMemoryFileSystemProvider extends InMemoryFileSystemProvider {
328
- async writeFile(resource, content, opts) {
329
- await mkdirp(this, extUri.dirname(resource));
330
- return super.writeFile(resource, content, opts);
331
- }
332
- }
333
- const fileSystemProvider = new OverlayFileSystemProvider();
334
- fileSystemProvider.register(0, new MkdirpOnWriteInMemoryFileSystemProvider());
335
- const extensionFileSystemProvider = new RegisteredFileSystemProvider(true);
336
- const userDataFileSystemProvider = new InMemoryFileSystemProvider();
337
- void userDataFileSystemProvider.mkdir(( URI.from({ scheme: Schemas.vscodeUserData, path: '/User/' })));
338
- var CustomSchemas;
339
- ( (function(CustomSchemas) {
340
- CustomSchemas.extensionFile = 'extension-file';
341
- })(CustomSchemas || (CustomSchemas = {})));
342
- const providers = {
343
- [CustomSchemas.extensionFile]: extensionFileSystemProvider,
344
- [logsPath.scheme]: new InMemoryFileSystemProvider(),
345
- [Schemas.vscodeUserData]: userDataFileSystemProvider,
346
- [Schemas.tmp]: new InMemoryFileSystemProvider(),
347
- [Schemas.file]: fileSystemProvider
348
- };
349
- let MemoryFileService = class MemoryFileService extends FileService {
350
- constructor(logService, telemetryService) {
351
- super(logService);
352
- for (const [scheme, provider] of Object.entries(providers)) {
353
- let disposable = this.registerProvider(scheme, provider);
354
- if (provider instanceof OverlayFileSystemProvider) {
355
- provider.onDidChangeOverlays(() => {
356
- disposable.dispose();
357
- disposable = this.registerProvider(scheme, fileSystemProvider);
358
- });
359
- }
360
- if (provider instanceof IndexedDBFileSystemProvider) {
361
- this._register(provider.onReportError(e => telemetryService.publicLog2('indexedDBFileSystemProviderError', e)));
362
- }
363
- }
364
- }
365
- };
366
- MemoryFileService = __decorate([
367
- ( __param(1, ITelemetryService))
368
- ], MemoryFileService);
369
- const fileLogger = new BufferLogger();
370
- registerServiceInitializePreParticipant(async (accessor) => {
371
- fileLogger.logger = accessor.get(ILogService);
372
- });
373
- async function initFile(file, content, options) {
374
- checkServicesNotInitialized();
375
- const provider = providers[file.scheme];
376
- if (provider == null || provider.writeFile == null) {
377
- throw new Error(`${file.scheme} provider doesn't exist or doesn't support writing files`);
378
- }
379
- if (!(options?.overwrite ?? false)) {
380
- try {
381
- await provider.stat(file);
382
- return;
383
- }
384
- catch (error) {
385
- }
386
- }
387
- await provider.writeFile(file, content instanceof Uint8Array ? content : encoder.encode(content), {
388
- atomic: false,
389
- create: true,
390
- overwrite: false,
391
- unlock: false,
392
- ...options
393
- });
394
- }
395
-
396
- export { CustomSchemas, IndexedDBFileSystemProvider, RegisteredFileSystemProvider, initFile };
@@ -1,8 +0,0 @@
1
- var ConfirmResult;
2
- ( (function(ConfirmResult) {
3
- ConfirmResult[ConfirmResult["SAVE"] = 0] = "SAVE";
4
- ConfirmResult[ConfirmResult["DONT_SAVE"] = 1] = "DONT_SAVE";
5
- ConfirmResult[ConfirmResult["CANCEL"] = 2] = "CANCEL";
6
- })(ConfirmResult || (ConfirmResult = {})));
7
-
8
- export { ConfirmResult };