@theia/preferences 1.45.1 → 1.46.0-next.72
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 +81 -81
- package/lib/browser/abstract-resource-preference-provider.d.ts +47 -47
- package/lib/browser/abstract-resource-preference-provider.js +240 -240
- package/lib/browser/abstract-resource-preference-provider.spec.d.ts +1 -1
- package/lib/browser/abstract-resource-preference-provider.spec.js +83 -83
- package/lib/browser/folder-preference-provider.d.ts +20 -20
- package/lib/browser/folder-preference-provider.js +59 -59
- package/lib/browser/folders-preferences-provider.d.ts +27 -27
- package/lib/browser/folders-preferences-provider.js +245 -245
- package/lib/browser/index.d.ts +7 -7
- package/lib/browser/index.js +34 -34
- package/lib/browser/monaco-jsonc-editor.d.ts +9 -9
- package/lib/browser/monaco-jsonc-editor.js +80 -80
- package/lib/browser/package.spec.js +25 -25
- package/lib/browser/preference-bindings.d.ts +4 -4
- package/lib/browser/preference-bindings.js +63 -63
- package/lib/browser/preference-frontend-module.d.ts +6 -6
- package/lib/browser/preference-frontend-module.js +52 -52
- package/lib/browser/preference-open-handler.d.ts +9 -9
- package/lib/browser/preference-open-handler.js +64 -64
- package/lib/browser/preference-transaction-manager.d.ts +100 -100
- package/lib/browser/preference-transaction-manager.js +293 -293
- package/lib/browser/preference-tree-model.d.ts +60 -60
- package/lib/browser/preference-tree-model.js +243 -243
- package/lib/browser/preferences-contribution.d.ts +37 -37
- package/lib/browser/preferences-contribution.js +280 -280
- package/lib/browser/preferences-json-schema-contribution.d.ts +17 -17
- package/lib/browser/preferences-json-schema-contribution.js +91 -91
- package/lib/browser/preferences-monaco-contribution.d.ts +1 -1
- package/lib/browser/preferences-monaco-contribution.js +27 -27
- package/lib/browser/section-preference-provider.d.ts +21 -21
- package/lib/browser/section-preference-provider.js +96 -96
- package/lib/browser/user-configs-preference-provider.d.ts +22 -22
- package/lib/browser/user-configs-preference-provider.js +137 -137
- package/lib/browser/user-preference-provider.d.ts +13 -13
- package/lib/browser/user-preference-provider.js +41 -41
- package/lib/browser/util/preference-scope-command-manager.d.ts +17 -17
- package/lib/browser/util/preference-scope-command-manager.js +87 -87
- package/lib/browser/util/preference-tree-generator.d.ts +31 -31
- package/lib/browser/util/preference-tree-generator.js +237 -237
- package/lib/browser/util/preference-tree-label-provider.d.ts +11 -11
- package/lib/browser/util/preference-tree-label-provider.js +77 -77
- package/lib/browser/util/preference-tree-label-provider.spec.d.ts +1 -1
- package/lib/browser/util/preference-tree-label-provider.spec.js +87 -87
- package/lib/browser/util/preference-types.d.ts +62 -62
- package/lib/browser/util/preference-types.js +128 -128
- package/lib/browser/views/components/preference-array-input.d.ts +28 -28
- package/lib/browser/views/components/preference-array-input.js +180 -180
- package/lib/browser/views/components/preference-boolean-input.d.ts +17 -17
- package/lib/browser/views/components/preference-boolean-input.js +79 -79
- package/lib/browser/views/components/preference-file-input.d.ts +29 -29
- package/lib/browser/views/components/preference-file-input.js +110 -110
- package/lib/browser/views/components/preference-json-input.d.ts +19 -19
- package/lib/browser/views/components/preference-json-input.js +93 -93
- package/lib/browser/views/components/preference-markdown-renderer.d.ts +12 -12
- package/lib/browser/views/components/preference-markdown-renderer.js +81 -81
- package/lib/browser/views/components/preference-node-renderer-creator.d.ts +48 -48
- package/lib/browser/views/components/preference-node-renderer-creator.js +132 -132
- package/lib/browser/views/components/preference-node-renderer.d.ts +112 -112
- package/lib/browser/views/components/preference-node-renderer.js +441 -441
- package/lib/browser/views/components/preference-number-input.d.ts +34 -34
- package/lib/browser/views/components/preference-number-input.js +142 -142
- package/lib/browser/views/components/preference-select-input.d.ts +28 -28
- package/lib/browser/views/components/preference-select-input.js +138 -138
- package/lib/browser/views/components/preference-string-input.d.ts +17 -17
- package/lib/browser/views/components/preference-string-input.js +89 -89
- package/lib/browser/views/preference-editor-widget.d.ts +67 -67
- package/lib/browser/views/preference-editor-widget.js +363 -363
- package/lib/browser/views/preference-scope-tabbar-widget.d.ts +54 -54
- package/lib/browser/views/preference-scope-tabbar-widget.js +343 -343
- package/lib/browser/views/preference-searchbar-widget.d.ts +53 -53
- package/lib/browser/views/preference-searchbar-widget.js +173 -173
- package/lib/browser/views/preference-tree-widget.d.ts +17 -17
- package/lib/browser/views/preference-tree-widget.js +104 -104
- package/lib/browser/views/preference-widget-bindings.d.ts +3 -3
- package/lib/browser/views/preference-widget-bindings.js +87 -87
- package/lib/browser/views/preference-widget.d.ts +36 -36
- package/lib/browser/views/preference-widget.js +126 -126
- package/lib/browser/workspace-file-preference-provider.d.ts +23 -23
- package/lib/browser/workspace-file-preference-provider.js +110 -110
- package/lib/browser/workspace-preference-provider.d.ts +28 -28
- package/lib/browser/workspace-preference-provider.js +142 -142
- package/package.json +10 -10
- package/src/browser/abstract-resource-preference-provider.spec.ts +95 -95
- package/src/browser/abstract-resource-preference-provider.ts +232 -232
- package/src/browser/folder-preference-provider.ts +58 -58
- package/src/browser/folders-preferences-provider.ts +244 -244
- package/src/browser/index.ts +23 -23
- package/src/browser/monaco-jsonc-editor.ts +67 -67
- package/src/browser/package.spec.ts +28 -28
- package/src/browser/preference-bindings.ts +65 -65
- package/src/browser/preference-frontend-module.ts +57 -57
- package/src/browser/preference-open-handler.ts +53 -53
- package/src/browser/preference-transaction-manager.ts +287 -287
- package/src/browser/preference-tree-model.ts +250 -250
- package/src/browser/preferences-contribution.ts +263 -263
- package/src/browser/preferences-json-schema-contribution.ts +86 -86
- package/src/browser/preferences-monaco-contribution.ts +27 -27
- package/src/browser/section-preference-provider.ts +83 -83
- package/src/browser/style/index.css +506 -506
- package/src/browser/style/preference-array.css +94 -94
- package/src/browser/style/preference-context-menu.css +74 -74
- package/src/browser/style/preference-file.css +31 -31
- package/src/browser/style/preference-object.css +49 -49
- package/src/browser/style/search-input.css +66 -66
- package/src/browser/user-configs-preference-provider.ts +127 -127
- package/src/browser/user-preference-provider.ts +35 -35
- package/src/browser/util/preference-scope-command-manager.ts +75 -75
- package/src/browser/util/preference-tree-generator.ts +226 -226
- package/src/browser/util/preference-tree-label-provider.spec.ts +108 -108
- package/src/browser/util/preference-tree-label-provider.ts +64 -64
- package/src/browser/util/preference-types.ts +169 -169
- package/src/browser/views/components/preference-array-input.ts +174 -174
- package/src/browser/views/components/preference-boolean-input.ts +69 -69
- package/src/browser/views/components/preference-file-input.ts +104 -104
- package/src/browser/views/components/preference-json-input.ts +78 -78
- package/src/browser/views/components/preference-markdown-renderer.ts +68 -68
- package/src/browser/views/components/preference-node-renderer-creator.ts +141 -141
- package/src/browser/views/components/preference-node-renderer.ts +477 -477
- package/src/browser/views/components/preference-number-input.ts +147 -147
- package/src/browser/views/components/preference-select-input.ts +131 -131
- package/src/browser/views/components/preference-string-input.ts +76 -76
- package/src/browser/views/preference-editor-widget.ts +349 -349
- package/src/browser/views/preference-scope-tabbar-widget.tsx +344 -344
- package/src/browser/views/preference-searchbar-widget.tsx +183 -183
- package/src/browser/views/preference-tree-widget.tsx +93 -93
- package/src/browser/views/preference-widget-bindings.ts +102 -102
- package/src/browser/views/preference-widget.tsx +117 -117
- package/src/browser/workspace-file-preference-provider.ts +100 -100
- package/src/browser/workspace-preference-provider.ts +134 -134
package/README.md
CHANGED
|
@@ -1,81 +1,81 @@
|
|
|
1
|
-
<div align='center'>
|
|
2
|
-
|
|
3
|
-
<br />
|
|
4
|
-
|
|
5
|
-
<img src='https://raw.githubusercontent.com/eclipse-theia/theia/master/logo/theia.svg?sanitize=true' alt='theia-ext-logo' width='100px' />
|
|
6
|
-
|
|
7
|
-
<h2>ECLIPSE THEIA - PREFERENCES EXTENSION</h2>
|
|
8
|
-
|
|
9
|
-
<hr />
|
|
10
|
-
|
|
11
|
-
</div>
|
|
12
|
-
|
|
13
|
-
## Description
|
|
14
|
-
|
|
15
|
-
The `@theia/preferences` extension implements the preferences API defined in `@theia/core`, including the four preference providers:
|
|
16
|
-
- `Default` Preference, which serves as default values of preferences,
|
|
17
|
-
- `User` Preference for the user home directory, which has precedence over the default values,
|
|
18
|
-
- `Workspace` Preference for the workspace, which has precedence over User Preference, and
|
|
19
|
-
- `Folder` Preference for the root folder, which has precedence over the Workspace Preference
|
|
20
|
-
|
|
21
|
-
To set:
|
|
22
|
-
- `User` Preferences: Create or edit a `settings.json` under the `.theia` folder located either in the user home.
|
|
23
|
-
- `Workspace` Preference: If one folder is opened as the workspace, create or edit a `settings.json` under the root of the workspace. If a multi-root workspace is opened, create or edit the "settings" property in the workspace file.
|
|
24
|
-
- `Folder` Preferences: Create or edit a `settings.json` under any of the root folders.
|
|
25
|
-
|
|
26
|
-
Example of a `settings.json` below:
|
|
27
|
-
|
|
28
|
-
```typescript
|
|
29
|
-
{
|
|
30
|
-
// Enable/Disable the line numbers in the monaco editor
|
|
31
|
-
"editor.lineNumbers": "off",
|
|
32
|
-
// Tab width in the editor
|
|
33
|
-
"editor.tabSize": 4,
|
|
34
|
-
"files.watcherExclude": "path/to/file"
|
|
35
|
-
}
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
Example of a workspace file below:
|
|
39
|
-
|
|
40
|
-
```typescript
|
|
41
|
-
{
|
|
42
|
-
"folders": [
|
|
43
|
-
{
|
|
44
|
-
"path": "file:///home/username/helloworld"
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
"path": "file:///home/username/dev/byeworld"
|
|
48
|
-
}
|
|
49
|
-
],
|
|
50
|
-
"settings": {
|
|
51
|
-
// Enable/Disable the line numbers in the monaco editor
|
|
52
|
-
"editor.lineNumbers": "off",
|
|
53
|
-
// Tab width in the editor
|
|
54
|
-
"editor.tabSize": 4,
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
## Additional Information
|
|
60
|
-
|
|
61
|
-
- [API documentation for `@theia/preferences`](https://eclipse-theia.github.io/theia/docs/next/modules/preferences.html)
|
|
62
|
-
- [Theia - GitHub](https://github.com/eclipse-theia/theia)
|
|
63
|
-
- [Theia - Website](https://theia-ide.org/)
|
|
64
|
-
|
|
65
|
-
## License
|
|
66
|
-
|
|
67
|
-
- [Eclipse Public License 2.0](http://www.eclipse.org/legal/epl-2.0/)
|
|
68
|
-
- [一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception](https://projects.eclipse.org/license/secondary-gpl-2.0-cp)
|
|
69
|
-
|
|
70
|
-
## Trademark
|
|
71
|
-
"Theia" is a trademark of the Eclipse Foundation
|
|
72
|
-
https://www.eclipse.org/theia
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
# Theia - Preferences Extension
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
## License
|
|
80
|
-
- [Eclipse Public License 2.0](http://www.eclipse.org/legal/epl-2.0/)
|
|
81
|
-
- [一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception](https://projects.eclipse.org/license/secondary-gpl-2.0-cp)
|
|
1
|
+
<div align='center'>
|
|
2
|
+
|
|
3
|
+
<br />
|
|
4
|
+
|
|
5
|
+
<img src='https://raw.githubusercontent.com/eclipse-theia/theia/master/logo/theia.svg?sanitize=true' alt='theia-ext-logo' width='100px' />
|
|
6
|
+
|
|
7
|
+
<h2>ECLIPSE THEIA - PREFERENCES EXTENSION</h2>
|
|
8
|
+
|
|
9
|
+
<hr />
|
|
10
|
+
|
|
11
|
+
</div>
|
|
12
|
+
|
|
13
|
+
## Description
|
|
14
|
+
|
|
15
|
+
The `@theia/preferences` extension implements the preferences API defined in `@theia/core`, including the four preference providers:
|
|
16
|
+
- `Default` Preference, which serves as default values of preferences,
|
|
17
|
+
- `User` Preference for the user home directory, which has precedence over the default values,
|
|
18
|
+
- `Workspace` Preference for the workspace, which has precedence over User Preference, and
|
|
19
|
+
- `Folder` Preference for the root folder, which has precedence over the Workspace Preference
|
|
20
|
+
|
|
21
|
+
To set:
|
|
22
|
+
- `User` Preferences: Create or edit a `settings.json` under the `.theia` folder located either in the user home.
|
|
23
|
+
- `Workspace` Preference: If one folder is opened as the workspace, create or edit a `settings.json` under the root of the workspace. If a multi-root workspace is opened, create or edit the "settings" property in the workspace file.
|
|
24
|
+
- `Folder` Preferences: Create or edit a `settings.json` under any of the root folders.
|
|
25
|
+
|
|
26
|
+
Example of a `settings.json` below:
|
|
27
|
+
|
|
28
|
+
```typescript
|
|
29
|
+
{
|
|
30
|
+
// Enable/Disable the line numbers in the monaco editor
|
|
31
|
+
"editor.lineNumbers": "off",
|
|
32
|
+
// Tab width in the editor
|
|
33
|
+
"editor.tabSize": 4,
|
|
34
|
+
"files.watcherExclude": "path/to/file"
|
|
35
|
+
}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Example of a workspace file below:
|
|
39
|
+
|
|
40
|
+
```typescript
|
|
41
|
+
{
|
|
42
|
+
"folders": [
|
|
43
|
+
{
|
|
44
|
+
"path": "file:///home/username/helloworld"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"path": "file:///home/username/dev/byeworld"
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
"settings": {
|
|
51
|
+
// Enable/Disable the line numbers in the monaco editor
|
|
52
|
+
"editor.lineNumbers": "off",
|
|
53
|
+
// Tab width in the editor
|
|
54
|
+
"editor.tabSize": 4,
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Additional Information
|
|
60
|
+
|
|
61
|
+
- [API documentation for `@theia/preferences`](https://eclipse-theia.github.io/theia/docs/next/modules/preferences.html)
|
|
62
|
+
- [Theia - GitHub](https://github.com/eclipse-theia/theia)
|
|
63
|
+
- [Theia - Website](https://theia-ide.org/)
|
|
64
|
+
|
|
65
|
+
## License
|
|
66
|
+
|
|
67
|
+
- [Eclipse Public License 2.0](http://www.eclipse.org/legal/epl-2.0/)
|
|
68
|
+
- [一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception](https://projects.eclipse.org/license/secondary-gpl-2.0-cp)
|
|
69
|
+
|
|
70
|
+
## Trademark
|
|
71
|
+
"Theia" is a trademark of the Eclipse Foundation
|
|
72
|
+
https://www.eclipse.org/theia
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
# Theia - Preferences Extension
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
## License
|
|
80
|
+
- [Eclipse Public License 2.0](http://www.eclipse.org/legal/epl-2.0/)
|
|
81
|
+
- [一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception](https://projects.eclipse.org/license/secondary-gpl-2.0-cp)
|
|
@@ -1,48 +1,48 @@
|
|
|
1
|
-
import { PreferenceProvider, PreferenceSchemaProvider, PreferenceScope } from '@theia/core/lib/browser';
|
|
2
|
-
import URI from '@theia/core/lib/common/uri';
|
|
3
|
-
import { PreferenceConfigurations } from '@theia/core/lib/browser/preferences/preference-configurations';
|
|
4
|
-
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
5
|
-
import { FileService } from '@theia/filesystem/lib/browser/file-service';
|
|
6
|
-
import { PreferenceContext, PreferenceTransaction, PreferenceTransactionFactory } from './preference-transaction-manager';
|
|
7
|
-
import { Emitter, Event } from '@theia/core';
|
|
8
|
-
export declare abstract class AbstractResourcePreferenceProvider extends PreferenceProvider {
|
|
9
|
-
protected preferences: Record<string, any>;
|
|
10
|
-
protected _fileExists: boolean;
|
|
11
|
-
protected readonly loading: Deferred<void>;
|
|
12
|
-
protected transaction: PreferenceTransaction | undefined;
|
|
13
|
-
protected readonly onDidChangeValidityEmitter: Emitter<boolean>;
|
|
14
|
-
set fileExists(exists: boolean);
|
|
15
|
-
get onDidChangeValidity(): Event<boolean>;
|
|
16
|
-
protected readonly transactionFactory: PreferenceTransactionFactory;
|
|
17
|
-
protected readonly schemaProvider: PreferenceSchemaProvider;
|
|
18
|
-
protected readonly fileService: FileService;
|
|
19
|
-
protected readonly configurations: PreferenceConfigurations;
|
|
20
|
-
protected init(): void;
|
|
21
|
-
protected doInit(): Promise<void>;
|
|
22
|
-
protected abstract getUri(): URI;
|
|
23
|
-
abstract getScope(): PreferenceScope;
|
|
24
|
-
get valid(): boolean;
|
|
25
|
-
getConfigUri(): URI;
|
|
26
|
-
getConfigUri(resourceUri: string | undefined): URI | undefined;
|
|
27
|
-
contains(resourceUri: string | undefined): boolean;
|
|
28
|
-
getPreferences(resourceUri?: string): {
|
|
29
|
-
[key: string]: any;
|
|
30
|
-
};
|
|
31
|
-
setPreference(key: string, value: any, resourceUri?: string): Promise<boolean>;
|
|
32
|
-
protected doSetPreference(key: string, path: string[], value: unknown): Promise<boolean>;
|
|
33
|
-
/**
|
|
34
|
-
* Use this method as intermediary for interactions with actual files.
|
|
35
|
-
* Allows individual providers to modify where they store their files without disrupting the preference system's
|
|
36
|
-
* conventions about scope and file location.
|
|
37
|
-
*/
|
|
38
|
-
protected toFileManager(): PreferenceContext;
|
|
39
|
-
protected getPath(preferenceName: string): string[] | undefined;
|
|
40
|
-
protected readPreferencesFromFile(): Promise<void>;
|
|
41
|
-
protected readPreferencesFromContent(content: string): void;
|
|
42
|
-
protected parse(content: string): any;
|
|
43
|
-
protected handlePreferenceChanges(newPrefs: {
|
|
44
|
-
[key: string]: any;
|
|
45
|
-
}): void;
|
|
46
|
-
protected reset(): void;
|
|
47
|
-
}
|
|
1
|
+
import { PreferenceProvider, PreferenceSchemaProvider, PreferenceScope } from '@theia/core/lib/browser';
|
|
2
|
+
import URI from '@theia/core/lib/common/uri';
|
|
3
|
+
import { PreferenceConfigurations } from '@theia/core/lib/browser/preferences/preference-configurations';
|
|
4
|
+
import { Deferred } from '@theia/core/lib/common/promise-util';
|
|
5
|
+
import { FileService } from '@theia/filesystem/lib/browser/file-service';
|
|
6
|
+
import { PreferenceContext, PreferenceTransaction, PreferenceTransactionFactory } from './preference-transaction-manager';
|
|
7
|
+
import { Emitter, Event } from '@theia/core';
|
|
8
|
+
export declare abstract class AbstractResourcePreferenceProvider extends PreferenceProvider {
|
|
9
|
+
protected preferences: Record<string, any>;
|
|
10
|
+
protected _fileExists: boolean;
|
|
11
|
+
protected readonly loading: Deferred<void>;
|
|
12
|
+
protected transaction: PreferenceTransaction | undefined;
|
|
13
|
+
protected readonly onDidChangeValidityEmitter: Emitter<boolean>;
|
|
14
|
+
set fileExists(exists: boolean);
|
|
15
|
+
get onDidChangeValidity(): Event<boolean>;
|
|
16
|
+
protected readonly transactionFactory: PreferenceTransactionFactory;
|
|
17
|
+
protected readonly schemaProvider: PreferenceSchemaProvider;
|
|
18
|
+
protected readonly fileService: FileService;
|
|
19
|
+
protected readonly configurations: PreferenceConfigurations;
|
|
20
|
+
protected init(): void;
|
|
21
|
+
protected doInit(): Promise<void>;
|
|
22
|
+
protected abstract getUri(): URI;
|
|
23
|
+
abstract getScope(): PreferenceScope;
|
|
24
|
+
get valid(): boolean;
|
|
25
|
+
getConfigUri(): URI;
|
|
26
|
+
getConfigUri(resourceUri: string | undefined): URI | undefined;
|
|
27
|
+
contains(resourceUri: string | undefined): boolean;
|
|
28
|
+
getPreferences(resourceUri?: string): {
|
|
29
|
+
[key: string]: any;
|
|
30
|
+
};
|
|
31
|
+
setPreference(key: string, value: any, resourceUri?: string): Promise<boolean>;
|
|
32
|
+
protected doSetPreference(key: string, path: string[], value: unknown): Promise<boolean>;
|
|
33
|
+
/**
|
|
34
|
+
* Use this method as intermediary for interactions with actual files.
|
|
35
|
+
* Allows individual providers to modify where they store their files without disrupting the preference system's
|
|
36
|
+
* conventions about scope and file location.
|
|
37
|
+
*/
|
|
38
|
+
protected toFileManager(): PreferenceContext;
|
|
39
|
+
protected getPath(preferenceName: string): string[] | undefined;
|
|
40
|
+
protected readPreferencesFromFile(): Promise<void>;
|
|
41
|
+
protected readPreferencesFromContent(content: string): void;
|
|
42
|
+
protected parse(content: string): any;
|
|
43
|
+
protected handlePreferenceChanges(newPrefs: {
|
|
44
|
+
[key: string]: any;
|
|
45
|
+
}): void;
|
|
46
|
+
protected reset(): void;
|
|
47
|
+
}
|
|
48
48
|
//# sourceMappingURL=abstract-resource-preference-provider.d.ts.map
|