@theia/core 1.65.0-next.19 → 1.65.0-next.39
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/lib/browser/breadcrumbs/breadcrumbs-renderer.d.ts +1 -1
- package/lib/browser/breadcrumbs/breadcrumbs-renderer.d.ts.map +1 -1
- package/lib/browser/breadcrumbs/breadcrumbs-renderer.js +1 -1
- package/lib/browser/breadcrumbs/breadcrumbs-renderer.js.map +1 -1
- package/lib/browser/catalog.json +24 -7
- package/lib/browser/common-frontend-contribution.d.ts +2 -3
- package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
- package/lib/browser/common-frontend-contribution.js +3 -4
- package/lib/browser/common-frontend-contribution.js.map +1 -1
- package/lib/browser/encoding-registry.d.ts +1 -1
- package/lib/browser/encoding-registry.d.ts.map +1 -1
- package/lib/browser/encoding-registry.js +1 -1
- package/lib/browser/encoding-registry.js.map +1 -1
- package/lib/browser/frontend-application-bindings.d.ts.map +1 -1
- package/lib/browser/frontend-application-bindings.js +10 -17
- package/lib/browser/frontend-application-bindings.js.map +1 -1
- package/lib/browser/frontend-application-module.d.ts.map +1 -1
- package/lib/browser/frontend-application-module.js +4 -5
- package/lib/browser/frontend-application-module.js.map +1 -1
- package/lib/browser/frontend-application.d.ts +1 -1
- package/lib/browser/frontend-application.d.ts.map +1 -1
- package/lib/browser/frontend-application.js +1 -1
- package/lib/browser/frontend-application.js.map +1 -1
- package/lib/browser/hover-service.d.ts +1 -2
- package/lib/browser/hover-service.d.ts.map +1 -1
- package/lib/browser/hover-service.js +1 -2
- package/lib/browser/hover-service.js.map +1 -1
- package/lib/browser/icon-theme-service.d.ts +3 -2
- package/lib/browser/icon-theme-service.d.ts.map +1 -1
- package/lib/browser/icon-theme-service.js +4 -3
- package/lib/browser/icon-theme-service.js.map +1 -1
- package/lib/browser/index.d.ts +0 -1
- package/lib/browser/index.d.ts.map +1 -1
- package/lib/browser/index.js +0 -1
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/keybinding.d.ts +1 -1
- package/lib/browser/keybinding.d.ts.map +1 -1
- package/lib/browser/keybinding.js +1 -1
- package/lib/browser/keybinding.js.map +1 -1
- package/lib/browser/keybinding.spec.js +1 -1
- package/lib/browser/keybinding.spec.js.map +1 -1
- package/lib/browser/menu/browser-menu-plugin.d.ts +2 -2
- package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
- package/lib/browser/menu/browser-menu-plugin.js +2 -3
- package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
- package/lib/browser/open-with-service.d.ts +1 -1
- package/lib/browser/open-with-service.d.ts.map +1 -1
- package/lib/browser/open-with-service.js +3 -3
- package/lib/browser/open-with-service.js.map +1 -1
- package/lib/browser/opener-service.d.ts +1 -2
- package/lib/browser/opener-service.d.ts.map +1 -1
- package/lib/browser/opener-service.js.map +1 -1
- package/lib/browser/preferences/frontend-config-preference-contributions.d.ts +6 -0
- package/lib/browser/preferences/frontend-config-preference-contributions.d.ts.map +1 -0
- package/lib/browser/preferences/frontend-config-preference-contributions.js +60 -0
- package/lib/browser/preferences/frontend-config-preference-contributions.js.map +1 -0
- package/lib/browser/preferences/index.d.ts +0 -5
- package/lib/browser/preferences/index.d.ts.map +1 -1
- package/lib/browser/preferences/index.js +0 -5
- package/lib/browser/preferences/index.js.map +1 -1
- package/lib/browser/preferences/preference-contribution.d.ts +0 -96
- package/lib/browser/preferences/preference-contribution.d.ts.map +1 -1
- package/lib/browser/preferences/preference-contribution.js +14 -355
- package/lib/browser/preferences/preference-contribution.js.map +1 -1
- package/lib/browser/preferences/preference-proxy.spec.js +25 -17
- package/lib/browser/preferences/preference-proxy.spec.js.map +1 -1
- package/lib/browser/preferences/preference-schema-provider.spec.js +21 -34
- package/lib/browser/preferences/preference-schema-provider.spec.js.map +1 -1
- package/lib/browser/preferences/preference-service.spec.js +57 -80
- package/lib/browser/preferences/preference-service.spec.js.map +1 -1
- package/lib/browser/preferences/preference-validation-service.d.ts +24 -26
- package/lib/browser/preferences/preference-validation-service.d.ts.map +1 -1
- package/lib/browser/preferences/preference-validation-service.js +40 -20
- package/lib/browser/preferences/preference-validation-service.js.map +1 -1
- package/lib/browser/preferences/preference-validation-service.spec.js +10 -6
- package/lib/browser/preferences/preference-validation-service.spec.js.map +1 -1
- package/lib/browser/preferences/test/mock-preference-provider.d.ts +2 -3
- package/lib/browser/preferences/test/mock-preference-provider.d.ts.map +1 -1
- package/lib/browser/preferences/test/mock-preference-provider.js +5 -7
- package/lib/browser/preferences/test/mock-preference-provider.js.map +1 -1
- package/lib/browser/preferences/test/mock-preference-proxy.d.ts.map +1 -1
- package/lib/browser/preferences/test/mock-preference-proxy.js.map +1 -1
- package/lib/browser/preferences/test/mock-preference-service.d.ts +1 -4
- package/lib/browser/preferences/test/mock-preference-service.d.ts.map +1 -1
- package/lib/browser/preferences/test/mock-preference-service.js.map +1 -1
- package/lib/browser/quick-input/quick-command-service.d.ts +1 -1
- package/lib/browser/quick-input/quick-command-service.d.ts.map +1 -1
- package/lib/browser/quick-input/quick-command-service.js +1 -1
- package/lib/browser/quick-input/quick-command-service.js.map +1 -1
- package/lib/browser/request/browser-request-service.d.ts +1 -1
- package/lib/browser/request/browser-request-service.d.ts.map +1 -1
- package/lib/browser/request/browser-request-service.js +2 -2
- package/lib/browser/request/browser-request-service.js.map +1 -1
- package/lib/browser/shell/application-shell.d.ts +1 -1
- package/lib/browser/shell/application-shell.d.ts.map +1 -1
- package/lib/browser/shell/application-shell.js +7 -6
- package/lib/browser/shell/application-shell.js.map +1 -1
- package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.js +3 -2
- package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.js.map +1 -1
- package/lib/browser/shell/tab-bars.d.ts +1 -1
- package/lib/browser/shell/tab-bars.d.ts.map +1 -1
- package/lib/browser/shell/theia-dock-panel.d.ts +1 -1
- package/lib/browser/shell/theia-dock-panel.d.ts.map +1 -1
- package/lib/browser/status-bar/status-bar.d.ts +1 -1
- package/lib/browser/status-bar/status-bar.d.ts.map +1 -1
- package/lib/browser/status-bar/status-bar.js +3 -2
- package/lib/browser/status-bar/status-bar.js.map +1 -1
- package/lib/browser/theming.d.ts +5 -4
- package/lib/browser/theming.d.ts.map +1 -1
- package/lib/browser/theming.js +7 -6
- package/lib/browser/theming.js.map +1 -1
- package/lib/browser/tooltip-service.d.ts +1 -1
- package/lib/browser/tooltip-service.d.ts.map +1 -1
- package/lib/browser/tooltip-service.js +1 -1
- package/lib/browser/tooltip-service.js.map +1 -1
- package/lib/browser/tree/index.d.ts +0 -1
- package/lib/browser/tree/index.d.ts.map +1 -1
- package/lib/browser/tree/index.js +0 -1
- package/lib/browser/tree/index.js.map +1 -1
- package/lib/browser/tree/tree-widget.d.ts +2 -2
- package/lib/browser/tree/tree-widget.d.ts.map +1 -1
- package/lib/browser/tree/tree-widget.js +3 -3
- package/lib/browser/tree/tree-widget.js.map +1 -1
- package/lib/browser/widgets/widget.js +4 -4
- package/lib/browser/widgets/widget.js.map +1 -1
- package/lib/browser/window/default-secondary-window-service.d.ts +1 -2
- package/lib/browser/window/default-secondary-window-service.d.ts.map +1 -1
- package/lib/browser/window/default-secondary-window-service.js +1 -2
- package/lib/browser/window/default-secondary-window-service.js.map +1 -1
- package/lib/browser/window/default-window-service.d.ts +1 -1
- package/lib/browser/window/default-window-service.d.ts.map +1 -1
- package/lib/browser/window/default-window-service.js +1 -1
- package/lib/browser/window/default-window-service.js.map +1 -1
- package/lib/browser/window/default-window-service.spec.js +1 -1
- package/lib/browser/window/default-window-service.spec.js.map +1 -1
- package/lib/browser/window/window-title-service.d.ts +1 -1
- package/lib/browser/window/window-title-service.d.ts.map +1 -1
- package/lib/browser/window/window-title-service.js +1 -1
- package/lib/browser/window/window-title-service.js.map +1 -1
- package/lib/{browser → common}/core-preferences.d.ts +2 -1
- package/lib/common/core-preferences.d.ts.map +1 -0
- package/lib/{browser → common}/core-preferences.js +17 -18
- package/lib/common/core-preferences.js.map +1 -0
- package/lib/common/index.d.ts +4 -0
- package/lib/common/index.d.ts.map +1 -1
- package/lib/common/index.js +4 -0
- package/lib/common/index.js.map +1 -1
- package/lib/common/inversify-utils.d.ts +31 -0
- package/lib/common/inversify-utils.d.ts.map +1 -0
- package/lib/common/inversify-utils.js +60 -0
- package/lib/common/inversify-utils.js.map +1 -0
- package/lib/common/json-schema.d.ts +1 -0
- package/lib/common/json-schema.d.ts.map +1 -1
- package/lib/common/preferences/defaults-preference-provider.d.ts +21 -0
- package/lib/common/preferences/defaults-preference-provider.d.ts.map +1 -0
- package/lib/common/preferences/defaults-preference-provider.js +99 -0
- package/lib/common/preferences/defaults-preference-provider.js.map +1 -0
- package/lib/common/preferences/index.d.ts +12 -0
- package/lib/common/preferences/index.d.ts.map +1 -0
- package/lib/common/preferences/index.js +30 -0
- package/lib/common/preferences/index.js.map +1 -0
- package/lib/{browser → common}/preferences/injectable-preference-proxy.d.ts +1 -1
- package/lib/common/preferences/injectable-preference-proxy.d.ts.map +1 -0
- package/lib/{browser → common}/preferences/injectable-preference-proxy.js +2 -2
- package/lib/common/preferences/injectable-preference-proxy.js.map +1 -0
- package/lib/common/preferences/preference-configurations.d.ts.map +1 -0
- package/lib/common/preferences/preference-configurations.js.map +1 -0
- package/lib/{browser → common}/preferences/preference-language-override-service.d.ts +4 -13
- package/lib/common/preferences/preference-language-override-service.d.ts.map +1 -0
- package/lib/{browser → common}/preferences/preference-language-override-service.js +14 -30
- package/lib/common/preferences/preference-language-override-service.js.map +1 -0
- package/lib/common/preferences/preference-provider-impl.d.ts +52 -0
- package/lib/common/preferences/preference-provider-impl.d.ts.map +1 -0
- package/lib/{browser/preferences/preference-provider.js → common/preferences/preference-provider-impl.js} +23 -95
- package/lib/common/preferences/preference-provider-impl.js.map +1 -0
- package/lib/{browser → common}/preferences/preference-provider.d.ts +34 -59
- package/lib/common/preferences/preference-provider.d.ts.map +1 -0
- package/lib/common/preferences/preference-provider.js +71 -0
- package/lib/common/preferences/preference-provider.js.map +1 -0
- package/lib/common/preferences/preference-provider.spec.d.ts.map +1 -0
- package/lib/{browser → common}/preferences/preference-provider.spec.js +4 -4
- package/lib/common/preferences/preference-provider.spec.js.map +1 -0
- package/lib/{browser → common}/preferences/preference-proxy.d.ts +2 -2
- package/lib/common/preferences/preference-proxy.d.ts.map +1 -0
- package/lib/{browser → common}/preferences/preference-proxy.js +10 -10
- package/lib/common/preferences/preference-proxy.js.map +1 -0
- package/lib/common/preferences/preference-schema-service.d.ts +55 -0
- package/lib/common/preferences/preference-schema-service.d.ts.map +1 -0
- package/lib/common/preferences/preference-schema-service.js +402 -0
- package/lib/common/preferences/preference-schema-service.js.map +1 -0
- package/lib/common/preferences/preference-schema.d.ts +145 -43
- package/lib/common/preferences/preference-schema.d.ts.map +1 -1
- package/lib/common/preferences/preference-schema.js +3 -41
- package/lib/common/preferences/preference-schema.js.map +1 -1
- package/lib/common/preferences/preference-scope.d.ts +4 -1
- package/lib/common/preferences/preference-scope.d.ts.map +1 -1
- package/lib/common/preferences/preference-scope.js +5 -14
- package/lib/common/preferences/preference-scope.js.map +1 -1
- package/lib/{browser → common}/preferences/preference-service.d.ts +9 -10
- package/lib/common/preferences/preference-service.d.ts.map +1 -0
- package/lib/{browser → common}/preferences/preference-service.js +65 -60
- package/lib/common/preferences/preference-service.js.map +1 -0
- package/lib/common/supported-encodings.d.ts.map +1 -0
- package/lib/common/supported-encodings.js.map +1 -0
- package/lib/{browser/tree → common}/tree-preference.d.ts +1 -1
- package/lib/common/tree-preference.d.ts.map +1 -0
- package/lib/{browser/tree → common}/tree-preference.js +3 -5
- package/lib/common/tree-preference.js.map +1 -0
- package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts +2 -1
- package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
- package/lib/electron-browser/menu/electron-context-menu-renderer.js +2 -1
- package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
- package/lib/electron-browser/menu/electron-main-menu-factory.d.ts +1 -2
- package/lib/electron-browser/menu/electron-main-menu-factory.d.ts.map +1 -1
- package/lib/electron-browser/menu/electron-main-menu-factory.js +1 -1
- package/lib/electron-browser/menu/electron-main-menu-factory.js.map +1 -1
- package/lib/electron-browser/menu/electron-menu-contribution.d.ts +2 -2
- package/lib/electron-browser/menu/electron-menu-contribution.d.ts.map +1 -1
- package/lib/electron-browser/menu/electron-menu-contribution.js +6 -6
- package/lib/electron-browser/menu/electron-menu-contribution.js.map +1 -1
- package/lib/electron-browser/window/electron-window-module.js +1 -1
- package/lib/electron-browser/window/electron-window-module.js.map +1 -1
- package/lib/electron-browser/window/electron-window-service.d.ts +1 -1
- package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
- package/lib/electron-browser/window/electron-window-service.js +1 -1
- package/lib/electron-browser/window/electron-window-service.js.map +1 -1
- package/lib/{electron-browser/window → electron-common}/electron-window-preferences.d.ts +2 -1
- package/lib/electron-common/electron-window-preferences.d.ts.map +1 -0
- package/lib/{electron-browser/window → electron-common}/electron-window-preferences.js +7 -7
- package/lib/electron-common/electron-window-preferences.js.map +1 -0
- package/lib/electron-node/window/electron-window-module.d.ts +4 -0
- package/lib/electron-node/window/electron-window-module.d.ts.map +1 -0
- package/lib/{browser/preferences/preference-scope.js → electron-node/window/electron-window-module.js} +7 -5
- package/lib/electron-node/window/electron-window-module.js.map +1 -0
- package/lib/node/backend-application-module.d.ts.map +1 -1
- package/lib/node/backend-application-module.js +13 -0
- package/lib/node/backend-application-module.js.map +1 -1
- package/lib/node/backend-application.js +1 -1
- package/package.json +6 -5
- package/src/browser/breadcrumbs/breadcrumbs-renderer.tsx +1 -1
- package/src/browser/common-frontend-contribution.ts +2 -3
- package/src/browser/encoding-registry.ts +1 -1
- package/src/browser/frontend-application-bindings.ts +8 -13
- package/src/browser/frontend-application-module.ts +4 -4
- package/src/browser/frontend-application.ts +1 -1
- package/src/browser/hover-service.ts +1 -2
- package/src/browser/icon-theme-service.ts +3 -2
- package/src/browser/index.ts +0 -1
- package/src/browser/keybinding.spec.ts +1 -1
- package/src/browser/keybinding.ts +1 -1
- package/src/browser/menu/browser-menu-plugin.ts +4 -4
- package/src/browser/open-with-service.ts +1 -1
- package/src/browser/opener-service.ts +1 -2
- package/src/browser/preferences/frontend-config-preference-contributions.ts +52 -0
- package/src/browser/preferences/index.ts +0 -5
- package/src/browser/preferences/preference-contribution.ts +16 -398
- package/src/browser/preferences/preference-proxy.spec.ts +27 -17
- package/src/browser/preferences/preference-schema-provider.spec.ts +25 -37
- package/src/browser/preferences/preference-service.spec.ts +32 -56
- package/src/browser/preferences/preference-validation-service.spec.ts +27 -19
- package/src/browser/preferences/preference-validation-service.ts +60 -41
- package/src/browser/preferences/test/mock-preference-provider.ts +2 -5
- package/src/browser/preferences/test/mock-preference-proxy.ts +1 -2
- package/src/browser/preferences/test/mock-preference-service.ts +1 -4
- package/src/browser/quick-input/quick-command-service.ts +1 -1
- package/src/browser/request/browser-request-service.ts +4 -4
- package/src/browser/shell/application-shell.ts +7 -6
- package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar-menu-adapters.tsx +5 -5
- package/src/browser/shell/tab-bars.ts +1 -1
- package/src/browser/shell/theia-dock-panel.ts +1 -1
- package/src/browser/status-bar/status-bar.tsx +3 -2
- package/src/browser/theming.ts +7 -6
- package/src/browser/tooltip-service.tsx +1 -1
- package/src/browser/tree/index.ts +0 -1
- package/src/browser/tree/tree-widget.tsx +4 -4
- package/src/browser/widgets/widget.ts +4 -4
- package/src/browser/window/default-secondary-window-service.ts +1 -2
- package/src/browser/window/default-window-service.spec.ts +1 -1
- package/src/browser/window/default-window-service.ts +1 -1
- package/src/browser/window/window-title-service.ts +1 -1
- package/src/{browser → common}/core-preferences.ts +16 -17
- package/src/common/index.ts +4 -0
- package/src/common/inversify-utils.ts +63 -0
- package/src/common/json-schema.ts +1 -0
- package/src/common/preferences/defaults-preference-provider.ts +91 -0
- package/src/common/preferences/index.ts +27 -0
- package/src/{browser → common}/preferences/injectable-preference-proxy.ts +3 -3
- package/src/{browser → common}/preferences/preference-language-override-service.ts +12 -29
- package/src/common/preferences/preference-provider-impl.ts +165 -0
- package/src/{browser → common}/preferences/preference-provider.spec.ts +6 -5
- package/src/common/preferences/preference-provider.ts +164 -0
- package/src/{browser → common}/preferences/preference-proxy.ts +15 -14
- package/src/common/preferences/preference-schema-service.ts +434 -0
- package/src/common/preferences/preference-schema.ts +156 -64
- package/src/common/preferences/preference-scope.ts +5 -13
- package/src/{browser → common}/preferences/preference-service.ts +71 -65
- package/src/{browser/tree → common}/tree-preference.ts +2 -4
- package/src/electron-browser/menu/electron-context-menu-renderer.ts +2 -1
- package/src/electron-browser/menu/electron-main-menu-factory.ts +2 -2
- package/src/electron-browser/menu/electron-menu-contribution.ts +9 -6
- package/src/electron-browser/window/electron-window-module.ts +1 -1
- package/src/electron-browser/window/electron-window-service.ts +1 -1
- package/src/{electron-browser/window → electron-common}/electron-window-preferences.ts +6 -6
- package/src/{browser/preferences/preference-scope.ts → electron-node/window/electron-window-module.ts} +7 -3
- package/src/node/backend-application-module.ts +28 -1
- package/src/node/backend-application.ts +1 -1
- package/lib/browser/core-preferences.d.ts.map +0 -1
- package/lib/browser/core-preferences.js.map +0 -1
- package/lib/browser/preferences/injectable-preference-proxy.d.ts.map +0 -1
- package/lib/browser/preferences/injectable-preference-proxy.js.map +0 -1
- package/lib/browser/preferences/preference-configurations.d.ts.map +0 -1
- package/lib/browser/preferences/preference-configurations.js.map +0 -1
- package/lib/browser/preferences/preference-language-override-service.d.ts.map +0 -1
- package/lib/browser/preferences/preference-language-override-service.js.map +0 -1
- package/lib/browser/preferences/preference-provider.d.ts.map +0 -1
- package/lib/browser/preferences/preference-provider.js.map +0 -1
- package/lib/browser/preferences/preference-provider.spec.d.ts.map +0 -1
- package/lib/browser/preferences/preference-provider.spec.js.map +0 -1
- package/lib/browser/preferences/preference-proxy.d.ts.map +0 -1
- package/lib/browser/preferences/preference-proxy.js.map +0 -1
- package/lib/browser/preferences/preference-scope.d.ts +0 -3
- package/lib/browser/preferences/preference-scope.d.ts.map +0 -1
- package/lib/browser/preferences/preference-scope.js.map +0 -1
- package/lib/browser/preferences/preference-service.d.ts.map +0 -1
- package/lib/browser/preferences/preference-service.js.map +0 -1
- package/lib/browser/supported-encodings.d.ts.map +0 -1
- package/lib/browser/supported-encodings.js.map +0 -1
- package/lib/browser/tree/tree-preference.d.ts.map +0 -1
- package/lib/browser/tree/tree-preference.js.map +0 -1
- package/lib/electron-browser/window/electron-window-preferences.d.ts.map +0 -1
- package/lib/electron-browser/window/electron-window-preferences.js.map +0 -1
- package/src/browser/preferences/preference-provider.ts +0 -277
- /package/lib/{browser → common}/preferences/preference-configurations.d.ts +0 -0
- /package/lib/{browser → common}/preferences/preference-configurations.js +0 -0
- /package/lib/{browser → common}/preferences/preference-provider.spec.d.ts +0 -0
- /package/lib/{browser → common}/supported-encodings.d.ts +0 -0
- /package/lib/{browser → common}/supported-encodings.js +0 -0
- /package/src/{browser → common}/preferences/preference-configurations.ts +0 -0
- /package/src/{browser → common}/supported-encodings.ts +0 -0
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { JSONValue } from '@lumino/coreutils';
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { PreferenceLanguageOverrideService } from './preference-language-override-service';
|
|
1
|
+
import { JSONObject, JSONValue } from '@lumino/coreutils';
|
|
2
|
+
import { Event } from '../event';
|
|
3
|
+
import { PreferenceScope } from '../preferences/preference-scope';
|
|
4
|
+
import { URI } from '../uri';
|
|
5
|
+
import { Disposable } from 'vscode-languageserver-protocol';
|
|
7
6
|
export interface PreferenceProviderDataChange {
|
|
8
7
|
/**
|
|
9
8
|
* The name of the changed preference.
|
|
@@ -12,11 +11,11 @@ export interface PreferenceProviderDataChange {
|
|
|
12
11
|
/**
|
|
13
12
|
* The new value of the changed preference.
|
|
14
13
|
*/
|
|
15
|
-
readonly newValue?:
|
|
14
|
+
readonly newValue?: JSONValue;
|
|
16
15
|
/**
|
|
17
16
|
* The old value of the changed preference.
|
|
18
17
|
*/
|
|
19
|
-
readonly oldValue?:
|
|
18
|
+
readonly oldValue?: JSONValue;
|
|
20
19
|
/**
|
|
21
20
|
* The {@link PreferenceScope} of the changed preference.
|
|
22
21
|
*/
|
|
@@ -29,34 +28,22 @@ export interface PreferenceProviderDataChange {
|
|
|
29
28
|
export declare namespace PreferenceProviderDataChange {
|
|
30
29
|
function affects(change: PreferenceProviderDataChange, resourceUri?: string): boolean;
|
|
31
30
|
}
|
|
32
|
-
export interface PreferenceProviderDataChanges {
|
|
33
|
-
[preferenceName: string]: PreferenceProviderDataChange;
|
|
34
|
-
}
|
|
35
31
|
export interface PreferenceResolveResult<T> {
|
|
36
32
|
configUri?: URI;
|
|
37
33
|
value?: T;
|
|
38
34
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
export declare abstract class PreferenceProvider implements Disposable {
|
|
45
|
-
protected readonly preferenceOverrideService: PreferenceLanguageOverrideService;
|
|
46
|
-
protected readonly onDidPreferencesChangedEmitter: Emitter<PreferenceProviderDataChanges>;
|
|
35
|
+
export interface PreferenceProviderDataChanges {
|
|
36
|
+
[preferenceName: string]: PreferenceProviderDataChange;
|
|
37
|
+
}
|
|
38
|
+
export declare const PreferenceProvider: unique symbol;
|
|
39
|
+
export interface PreferenceProvider extends Disposable {
|
|
47
40
|
readonly onDidPreferencesChanged: Event<PreferenceProviderDataChanges>;
|
|
48
|
-
|
|
49
|
-
protected readonly _ready: Deferred<void>;
|
|
50
|
-
constructor();
|
|
51
|
-
dispose(): void;
|
|
52
|
-
protected deferredChanges: PreferenceProviderDataChanges | undefined;
|
|
41
|
+
ready: Promise<void>;
|
|
53
42
|
/**
|
|
54
|
-
*
|
|
55
|
-
*
|
|
43
|
+
* Whether t
|
|
44
|
+
* @param scope the scope to handle
|
|
56
45
|
*/
|
|
57
|
-
|
|
58
|
-
protected mergePreferenceProviderDataChange(change: PreferenceProviderDataChange): void;
|
|
59
|
-
protected fireDidPreferencesChanged: () => Promise<boolean>;
|
|
46
|
+
canHandleScope(scope: PreferenceScope): boolean;
|
|
60
47
|
/**
|
|
61
48
|
* Retrieve the stored value for the given preference and resource URI.
|
|
62
49
|
*
|
|
@@ -67,20 +54,6 @@ export declare abstract class PreferenceProvider implements Disposable {
|
|
|
67
54
|
* @returns the value stored for the given preference and resourceUri if it exists, otherwise `undefined`.
|
|
68
55
|
*/
|
|
69
56
|
get<T>(preferenceName: string, resourceUri?: string): T | undefined;
|
|
70
|
-
/**
|
|
71
|
-
* Resolve the value for the given preference and resource URI.
|
|
72
|
-
*
|
|
73
|
-
* @param preferenceName the preference identifier.
|
|
74
|
-
* @param resourceUri the URI of the resource for which this provider should resolve the preference. This is used to retrieve
|
|
75
|
-
* a potentially different value for the same preference for different resources, for example `files.encoding`.
|
|
76
|
-
*
|
|
77
|
-
* @returns an object containing the value stored for the given preference and resourceUri if it exists,
|
|
78
|
-
* otherwise `undefined`.
|
|
79
|
-
*/
|
|
80
|
-
resolve<T>(preferenceName: string, resourceUri?: string): PreferenceResolveResult<T>;
|
|
81
|
-
abstract getPreferences(resourceUri?: string): {
|
|
82
|
-
[p: string]: any;
|
|
83
|
-
};
|
|
84
57
|
/**
|
|
85
58
|
* Stores a new value for the given preference key in the provider.
|
|
86
59
|
* @param key the preference key (typically the name).
|
|
@@ -92,18 +65,18 @@ export declare abstract class PreferenceProvider implements Disposable {
|
|
|
92
65
|
* await on `this.emitPreferencesChangedEvent(...)` or
|
|
93
66
|
* `this.pendingChanges` if changes are fired indirectly.
|
|
94
67
|
*/
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* Resolved when the preference provider is ready to provide preferences
|
|
98
|
-
* It should be resolved by subclasses.
|
|
99
|
-
*/
|
|
100
|
-
get ready(): Promise<void>;
|
|
68
|
+
setPreference(key: string, value: JSONValue, resourceUri?: string): Promise<boolean>;
|
|
101
69
|
/**
|
|
102
|
-
*
|
|
70
|
+
* Resolve the value for the given preference and resource URI.
|
|
71
|
+
*
|
|
72
|
+
* @param preferenceName the preference identifier.
|
|
73
|
+
* @param resourceUri the URI of the resource for which this provider should resolve the preference. This is used to retrieve
|
|
74
|
+
* a potentially different value for the same preference for different resources, for example `files.encoding`.
|
|
103
75
|
*
|
|
104
|
-
* @returns the
|
|
76
|
+
* @returns an object containing the value stored for the given preference and resourceUri if it exists,
|
|
77
|
+
* otherwise `undefined`.
|
|
105
78
|
*/
|
|
106
|
-
|
|
79
|
+
resolve<T>(preferenceName: string, resourceUri?: string): PreferenceResolveResult<T>;
|
|
107
80
|
/**
|
|
108
81
|
* Retrieve the configuration URI for the given resource URI.
|
|
109
82
|
* @param resourceUri the uri of the resource or `undefined`.
|
|
@@ -111,7 +84,7 @@ export declare abstract class PreferenceProvider implements Disposable {
|
|
|
111
84
|
*
|
|
112
85
|
* @returns the corresponding resource URI or `undefined` if there is no valid URI.
|
|
113
86
|
*/
|
|
114
|
-
getConfigUri(resourceUri?: string, sectionName?: string): URI | undefined;
|
|
87
|
+
getConfigUri?(resourceUri?: string, sectionName?: string): URI | undefined;
|
|
115
88
|
/**
|
|
116
89
|
* Retrieves the first valid configuration URI contained by the given resource.
|
|
117
90
|
* @param resourceUri the uri of the container resource or `undefined`.
|
|
@@ -120,14 +93,16 @@ export declare abstract class PreferenceProvider implements Disposable {
|
|
|
120
93
|
* if there is no valid configuration URI at all.
|
|
121
94
|
*/
|
|
122
95
|
getContainingConfigUri?(resourceUri?: string, sectionName?: string): URI | undefined;
|
|
123
|
-
|
|
96
|
+
/**
|
|
97
|
+
* Return a JSONObject with all preferences stored in this preference provider
|
|
98
|
+
*/
|
|
99
|
+
getPreferences(resourceUri?: string): JSONObject;
|
|
100
|
+
}
|
|
101
|
+
export declare namespace PreferenceUtils {
|
|
102
|
+
function merge(source: JSONValue | undefined, target: JSONValue): JSONValue;
|
|
124
103
|
/**
|
|
125
104
|
* Handles deep equality with the possibility of `undefined`
|
|
126
105
|
*/
|
|
127
|
-
|
|
128
|
-
protected getParsedContent(jsonData: any): {
|
|
129
|
-
[key: string]: any;
|
|
130
|
-
};
|
|
131
|
-
canHandleScope(scope: PreferenceScope): boolean;
|
|
106
|
+
function deepEqual(a: JSONValue | undefined, b: JSONValue | undefined): boolean;
|
|
132
107
|
}
|
|
133
108
|
//# sourceMappingURL=preference-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preference-provider.d.ts","sourceRoot":"","sources":["../../../src/common/preferences/preference-provider.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAW,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAE5D,MAAM,WAAW,4BAA4B;IACzC;;OAEG;IACH,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;IAChC;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,yBAAiB,4BAA4B,CAAC;IAC1C,SAAgB,OAAO,CAAC,MAAM,EAAE,4BAA4B,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAI3F;CACJ;AAED,MAAM,WAAW,uBAAuB,CAAC,CAAC;IACtC,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,KAAK,CAAC,EAAE,CAAC,CAAA;CACZ;AAED,MAAM,WAAW,6BAA6B;IAC1C,CAAC,cAAc,EAAE,MAAM,GAAG,4BAA4B,CAAC;CAC1D;AACD,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAE/D,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IAClD,QAAQ,CAAC,uBAAuB,EAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACvE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAA;IAEpB;;;OAGG;IACH,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC;IAEhD;;;;;;;;OAQG;IACH,GAAG,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC;IACpE;;;;;;;;;;OAUG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACpF;;;;;;;;;OASG;IACH,OAAO,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC;IAErF;;;;;;OAMG;IACH,YAAY,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC;IAC3E;;;;;;OAMG;IACH,sBAAsB,CAAC,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC;IAErF;;OAEG;IACH,cAAc,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC;CACpD;AAED,yBAAiB,eAAe,CAAC;IAC7B,SAAgB,KAAK,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,CAqBjF;IAED;;OAEG;IACH,SAAgB,SAAS,CAAC,CAAC,EAAE,SAAS,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAIrF;CAEJ"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2023 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.PreferenceUtils = exports.PreferenceProvider = exports.PreferenceProviderDataChange = void 0;
|
|
19
|
+
const coreutils_1 = require("@lumino/coreutils");
|
|
20
|
+
const uri_1 = require("../uri");
|
|
21
|
+
var PreferenceProviderDataChange;
|
|
22
|
+
(function (PreferenceProviderDataChange) {
|
|
23
|
+
function affects(change, resourceUri) {
|
|
24
|
+
const resourcePath = resourceUri && new uri_1.URI(resourceUri).path;
|
|
25
|
+
const domain = change.domain;
|
|
26
|
+
return !resourcePath || !domain || domain.some(uri => new uri_1.URI(uri).path.relativity(resourcePath) >= 0);
|
|
27
|
+
}
|
|
28
|
+
PreferenceProviderDataChange.affects = affects;
|
|
29
|
+
})(PreferenceProviderDataChange || (exports.PreferenceProviderDataChange = PreferenceProviderDataChange = {}));
|
|
30
|
+
exports.PreferenceProvider = Symbol('PreferenceProvider');
|
|
31
|
+
var PreferenceUtils;
|
|
32
|
+
(function (PreferenceUtils) {
|
|
33
|
+
function merge(source, target) {
|
|
34
|
+
if (source === undefined || !coreutils_1.JSONExt.isObject(source)) {
|
|
35
|
+
return coreutils_1.JSONExt.deepCopy(target);
|
|
36
|
+
}
|
|
37
|
+
if (coreutils_1.JSONExt.isPrimitive(target)) {
|
|
38
|
+
return {};
|
|
39
|
+
}
|
|
40
|
+
for (const [key, value] of Object.entries(target)) {
|
|
41
|
+
if (key in source) {
|
|
42
|
+
const sourceValue = source[key];
|
|
43
|
+
if (coreutils_1.JSONExt.isObject(sourceValue) && coreutils_1.JSONExt.isObject(value)) {
|
|
44
|
+
merge(sourceValue, value);
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
else if (coreutils_1.JSONExt.isArray(sourceValue) && coreutils_1.JSONExt.isArray(value)) {
|
|
48
|
+
source[key] = [...coreutils_1.JSONExt.deepCopy(sourceValue), ...coreutils_1.JSONExt.deepCopy(value)];
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
source[key] = coreutils_1.JSONExt.deepCopy(value);
|
|
53
|
+
}
|
|
54
|
+
return source;
|
|
55
|
+
}
|
|
56
|
+
PreferenceUtils.merge = merge;
|
|
57
|
+
/**
|
|
58
|
+
* Handles deep equality with the possibility of `undefined`
|
|
59
|
+
*/
|
|
60
|
+
function deepEqual(a, b) {
|
|
61
|
+
if (a === b) {
|
|
62
|
+
return true;
|
|
63
|
+
}
|
|
64
|
+
if (a === undefined || b === undefined) {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
return coreutils_1.JSONExt.deepEqual(a, b);
|
|
68
|
+
}
|
|
69
|
+
PreferenceUtils.deepEqual = deepEqual;
|
|
70
|
+
})(PreferenceUtils || (exports.PreferenceUtils = PreferenceUtils = {}));
|
|
71
|
+
//# sourceMappingURL=preference-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preference-provider.js","sourceRoot":"","sources":["../../../src/common/preferences/preference-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preference-provider.spec.d.ts","sourceRoot":"","sources":["../../../src/common/preferences/preference-provider.spec.ts"],"names":[],"mappings":""}
|
|
@@ -17,17 +17,17 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
const preference_provider_1 = require("./preference-provider");
|
|
19
19
|
const { expect } = require('chai');
|
|
20
|
-
describe('
|
|
20
|
+
describe('PreferenceProviderImpl', () => {
|
|
21
21
|
it('should preserve extra source fields on merge', () => {
|
|
22
|
-
const result = preference_provider_1.
|
|
22
|
+
const result = preference_provider_1.PreferenceUtils.merge({ 'configurations': [], 'compounds': [] }, { 'configurations': [] });
|
|
23
23
|
expect(result).deep.equals({ 'configurations': [], 'compounds': [] });
|
|
24
24
|
});
|
|
25
25
|
it('should preserve extra target fields on merge', () => {
|
|
26
|
-
const result = preference_provider_1.
|
|
26
|
+
const result = preference_provider_1.PreferenceUtils.merge({ 'configurations': [] }, { 'configurations': [], 'compounds': [] });
|
|
27
27
|
expect(result).deep.equals({ 'configurations': [], 'compounds': [] });
|
|
28
28
|
});
|
|
29
29
|
it('should merge array values', () => {
|
|
30
|
-
const result = preference_provider_1.
|
|
30
|
+
const result = preference_provider_1.PreferenceUtils.merge({ 'configurations': [{ 'name': 'test1', 'request': 'launch' }], 'compounds': [] }, { 'configurations': [{ 'name': 'test2' }] });
|
|
31
31
|
expect(result).deep.equals({ 'configurations': [{ 'name': 'test1', 'request': 'launch' }, { 'name': 'test2' }], 'compounds': [] });
|
|
32
32
|
});
|
|
33
33
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preference-provider.spec.js","sourceRoot":"","sources":["../../../src/common/preferences/preference-provider.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,+DAAwD;AAExD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAEnC,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACpD,MAAM,MAAM,GAAG,qCAAe,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1G,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACpD,MAAM,MAAM,GAAG,qCAAe,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1G,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACjC,MAAM,MAAM,GAAG,qCAAe,CAAC,KAAK,CAChC,EAAE,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,EACjF,EAAE,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,CAC9C,CAAC;QACF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IACvI,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Disposable, Event, MaybePromise } from '../../common';
|
|
2
2
|
import { PreferenceService } from './preference-service';
|
|
3
|
-
import {
|
|
3
|
+
import { IJSONSchema } from '../../common/json-schema';
|
|
4
4
|
/**
|
|
5
5
|
* It is worth explaining the type for `PreferenceChangeEvent`:
|
|
6
6
|
*
|
|
@@ -147,5 +147,5 @@ export interface PreferenceProxyOptions {
|
|
|
147
147
|
*
|
|
148
148
|
* @deprecated @since 1.23.0 use `PreferenceProxyFactory` instead.
|
|
149
149
|
*/
|
|
150
|
-
export declare function createPreferenceProxy<T>(preferences: PreferenceService, promisedSchema: MaybePromise<
|
|
150
|
+
export declare function createPreferenceProxy<T>(preferences: PreferenceService, promisedSchema: MaybePromise<IJSONSchema>, options?: PreferenceProxyOptions): PreferenceProxy<T>;
|
|
151
151
|
//# sourceMappingURL=preference-proxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preference-proxy.d.ts","sourceRoot":"","sources":["../../../src/common/preferences/preference-proxy.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAY,YAAY,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI;IACnC,OAAO,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,kBAAkB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACvE,GAAG;KACC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG;QACd,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC;QAC3B,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACxB;;WAEG;QAEH,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KAC5B;CACJ,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,MAAM,WAAW,sBAAsB,CAAC,CAAC;IACrC,QAAQ,CAAC,mBAAmB,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC;IAClC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC,GAAG;QACvC,cAAc,EAAE,CAAC,CAAC;QAClB,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAC9B,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;CACvD;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,sBAAsB,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAC/G,eAAO,MAAM,sBAAsB,eAAmC,CAAC;AACvE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC;;OAEG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,eAAe,CAAC,CAAC,CAAC,CA8LxK"}
|
|
@@ -18,9 +18,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
exports.createPreferenceProxy = exports.PreferenceProxyOptions = void 0;
|
|
19
19
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
20
20
|
const common_1 = require("../../common");
|
|
21
|
-
const preference_contribution_1 = require("./preference-contribution");
|
|
22
21
|
const preference_scope_1 = require("./preference-scope");
|
|
23
|
-
const
|
|
22
|
+
const promise_util_1 = require("../../common/promise-util");
|
|
23
|
+
const preference_language_override_service_1 = require("../../common/preferences/preference-language-override-service");
|
|
24
24
|
exports.PreferenceProxyOptions = Symbol('PreferenceProxyOptions');
|
|
25
25
|
/**
|
|
26
26
|
* Creates a preference proxy for typesafe preference handling.
|
|
@@ -50,11 +50,11 @@ function createPreferenceProxy(preferences, promisedSchema, options) {
|
|
|
50
50
|
const isDeep = style === 'deep' || style === 'both';
|
|
51
51
|
const isFlat = style === 'both' || style === 'flat';
|
|
52
52
|
let schema;
|
|
53
|
-
if (
|
|
53
|
+
if (!(0, promise_util_1.isThenable)(promisedSchema)) {
|
|
54
54
|
schema = promisedSchema;
|
|
55
55
|
}
|
|
56
56
|
else {
|
|
57
|
-
promisedSchema.then(s => schema = s);
|
|
57
|
+
promisedSchema.then((s) => schema = s);
|
|
58
58
|
}
|
|
59
59
|
const onPreferenceChanged = (listener, thisArgs, disposables) => preferences.onPreferencesChanged(changes => {
|
|
60
60
|
if (schema) {
|
|
@@ -63,10 +63,10 @@ function createPreferenceProxy(preferences, promisedSchema, options) {
|
|
|
63
63
|
const overridden = preferences.overriddenPreferenceName(e.preferenceName);
|
|
64
64
|
const preferenceName = overridden ? overridden.preferenceName : e.preferenceName;
|
|
65
65
|
if (preferenceName.startsWith(prefix) && (!opts.overrideIdentifier || (overridden === null || overridden === void 0 ? void 0 : overridden.overrideIdentifier) === opts.overrideIdentifier)) {
|
|
66
|
-
if (schema.properties[preferenceName]) {
|
|
66
|
+
if (schema.properties && schema.properties[preferenceName]) {
|
|
67
67
|
const { newValue, oldValue } = e;
|
|
68
68
|
listener({
|
|
69
|
-
newValue, oldValue, preferenceName,
|
|
69
|
+
newValue: newValue, oldValue: oldValue, preferenceName: preferenceName,
|
|
70
70
|
affects: (resourceUri, overrideIdentifier) => {
|
|
71
71
|
if (overrideIdentifier !== (overridden === null || overridden === void 0 ? void 0 : overridden.overrideIdentifier)) {
|
|
72
72
|
return false;
|
|
@@ -90,7 +90,7 @@ function createPreferenceProxy(preferences, promisedSchema, options) {
|
|
|
90
90
|
};
|
|
91
91
|
const ownKeys = () => {
|
|
92
92
|
const properties = [];
|
|
93
|
-
if (schema) {
|
|
93
|
+
if (schema && schema.properties) {
|
|
94
94
|
for (const p of Object.keys(schema.properties)) {
|
|
95
95
|
if (p.startsWith(prefix)) {
|
|
96
96
|
const idx = p.indexOf('.', prefix.length);
|
|
@@ -116,7 +116,7 @@ function createPreferenceProxy(preferences, promisedSchema, options) {
|
|
|
116
116
|
if (style === 'deep' && property.indexOf('.') !== -1) {
|
|
117
117
|
return false;
|
|
118
118
|
}
|
|
119
|
-
if (schema) {
|
|
119
|
+
if (schema && schema.properties) {
|
|
120
120
|
const fullProperty = prefix ? prefix + property : property;
|
|
121
121
|
if (schema.properties[fullProperty]) {
|
|
122
122
|
preferences.set(fullProperty, value, preference_scope_1.PreferenceScope.Default);
|
|
@@ -144,7 +144,7 @@ function createPreferenceProxy(preferences, promisedSchema, options) {
|
|
|
144
144
|
throw new Error(`unexpected property: ${String(property)}`);
|
|
145
145
|
}
|
|
146
146
|
const fullProperty = prefix ? prefix + property : property;
|
|
147
|
-
if (schema) {
|
|
147
|
+
if (schema && schema.properties) {
|
|
148
148
|
if (isFlat || property.indexOf('.') === -1) {
|
|
149
149
|
if (schema.properties[fullProperty]) {
|
|
150
150
|
let value;
|
|
@@ -176,7 +176,7 @@ function createPreferenceProxy(preferences, promisedSchema, options) {
|
|
|
176
176
|
if (property === 'toJSON') {
|
|
177
177
|
return toJSON();
|
|
178
178
|
}
|
|
179
|
-
if (schema && isDeep) {
|
|
179
|
+
if (schema && schema.properties && isDeep) {
|
|
180
180
|
const newPrefix = fullProperty + '.';
|
|
181
181
|
for (const p of Object.keys(schema.properties)) {
|
|
182
182
|
if (p.startsWith(newPrefix)) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preference-proxy.js","sourceRoot":"","sources":["../../../src/common/preferences/preference-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { Disposable } from '../disposable';
|
|
2
|
+
import { Emitter } from '../event';
|
|
3
|
+
import { IJSONSchema } from '../json-schema';
|
|
4
|
+
import { JSONObject, JSONValue } from '@lumino/coreutils';
|
|
5
|
+
import { PreferenceDataProperty, PreferenceSchema, PreferenceSchemaService, DefaultValueChangedEvent, PreferenceContribution } from './preference-schema';
|
|
6
|
+
import { PreferenceScope } from './preference-scope';
|
|
7
|
+
import { ContributionProvider } from '../contribution-provider';
|
|
8
|
+
import { Deferred } from '../promise-util';
|
|
9
|
+
export declare class PreferenceSchemaServiceImpl implements PreferenceSchemaService {
|
|
10
|
+
protected readonly schemas: Set<PreferenceSchema>;
|
|
11
|
+
protected readonly properties: Map<string, PreferenceDataProperty>;
|
|
12
|
+
/**
|
|
13
|
+
* This map stores default overrides. The primary map key is the base preference name.
|
|
14
|
+
* The preference name maps to a second map keyed by the override identifier or a special object value `NO_OVERRIDE',
|
|
15
|
+
* representing default overrides for the base property. The value in this second map is an array
|
|
16
|
+
* of entries in reverse order of their insertion. This is necessary becuaus multiple clients might register
|
|
17
|
+
* overrides for the same preference key/override combination. The elements in this array consist of a unique, generated
|
|
18
|
+
* identifier and the actual override value. This allows us to always return the last registerd override even
|
|
19
|
+
* when overrides are later removed.
|
|
20
|
+
*/
|
|
21
|
+
protected readonly defaultOverrides: Map<string, Map<string | object, [number, JSONValue][]>>;
|
|
22
|
+
protected readonly _overrideIdentifiers: Set<string>;
|
|
23
|
+
protected readonly jsonSchemas: IJSONSchema[];
|
|
24
|
+
protected readonly _ready: Deferred<void>;
|
|
25
|
+
get ready(): Promise<void>;
|
|
26
|
+
get overrideIdentifiers(): ReadonlySet<string>;
|
|
27
|
+
getSchemaProperties(): ReadonlyMap<string, PreferenceDataProperty>;
|
|
28
|
+
protected nextSchemaTitle: number;
|
|
29
|
+
protected nextOverrideValueId: number;
|
|
30
|
+
protected readonly defaultValueChangedEmitter: Emitter<DefaultValueChangedEvent>;
|
|
31
|
+
protected readonly schemaChangedEmitter: Emitter<void>;
|
|
32
|
+
readonly onDidChangeDefaultValue: import("../event").Event<DefaultValueChangedEvent>;
|
|
33
|
+
readonly onDidChangeSchema: import("../event").Event<void>;
|
|
34
|
+
readonly validScopes: readonly PreferenceScope[];
|
|
35
|
+
protected readonly preferenceContributions: ContributionProvider<PreferenceContribution>;
|
|
36
|
+
protected init(): void;
|
|
37
|
+
dispose(): void;
|
|
38
|
+
registerOverrideIdentifier(overrideIdentifier: string): Disposable;
|
|
39
|
+
addSchema(schema: PreferenceSchema): Disposable;
|
|
40
|
+
isValidInScope(preferenceName: string, scope: PreferenceScope): boolean;
|
|
41
|
+
getSchemaProperty(key: string): PreferenceDataProperty | undefined;
|
|
42
|
+
updateSchemaProperty(key: string, property: PreferenceDataProperty): void;
|
|
43
|
+
registerOverride(key: string, overrideIdentifier: string | undefined, value: JSONValue): Disposable;
|
|
44
|
+
protected changeFor(key: string, overrideIdentifier: string | undefined, overrides: Map<string | object, [number, JSONValue][]> | undefined, oldValue: JSONValue | undefined, newValue: JSONValue | undefined): DefaultValueChangedEvent;
|
|
45
|
+
protected removeOverride(key: string, overrideIdentifier: string | undefined, overrideValueId: number): void;
|
|
46
|
+
getDefaultValue(key: string, overrideIdentifier: string | undefined): JSONValue | undefined;
|
|
47
|
+
inspectDefaultValue(key: string, overrideIdentifier: string | undefined): JSONValue | undefined;
|
|
48
|
+
getJSONSchema(scope: PreferenceScope): IJSONSchema;
|
|
49
|
+
private setJSONSchemasProperty;
|
|
50
|
+
private deleteFromJSONSchemas;
|
|
51
|
+
private setJSONSchemaProperty;
|
|
52
|
+
addOverrideToJsonSchema(overrideIdentifier: string): void;
|
|
53
|
+
getDefaultValues(): JSONObject;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=preference-schema-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preference-schema-service.d.ts","sourceRoot":"","sources":["../../../src/common/preferences/preference-schema-service.ts"],"names":[],"mappings":"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"}
|