@theia/plugin-ext 1.28.0 → 1.29.0-next.11

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 (93) hide show
  1. package/lib/common/plugin-api-rpc-model.d.ts +7 -0
  2. package/lib/common/plugin-api-rpc-model.d.ts.map +1 -1
  3. package/lib/common/plugin-api-rpc-model.js.map +1 -1
  4. package/lib/common/plugin-api-rpc.d.ts +15 -9
  5. package/lib/common/plugin-api-rpc.d.ts.map +1 -1
  6. package/lib/common/plugin-api-rpc.js.map +1 -1
  7. package/lib/common/rpc-protocol.d.ts +1 -1
  8. package/lib/common/rpc-protocol.d.ts.map +1 -1
  9. package/lib/common/rpc-protocol.js +3 -3
  10. package/lib/common/rpc-protocol.js.map +1 -1
  11. package/lib/main/browser/languages-main.d.ts +6 -1
  12. package/lib/main/browser/languages-main.d.ts.map +1 -1
  13. package/lib/main/browser/languages-main.js +15 -1
  14. package/lib/main/browser/languages-main.js.map +1 -1
  15. package/lib/main/browser/preference-registry-main.d.ts +4 -3
  16. package/lib/main/browser/preference-registry-main.d.ts.map +1 -1
  17. package/lib/main/browser/preference-registry-main.js +26 -14
  18. package/lib/main/browser/preference-registry-main.js.map +1 -1
  19. package/lib/main/browser/view/tree-view-decorator-service.d.ts +1 -1
  20. package/lib/main/browser/view/tree-view-decorator-service.d.ts.map +1 -1
  21. package/lib/main/browser/view/tree-view-decorator-service.js +1 -1
  22. package/lib/main/browser/view/tree-view-decorator-service.js.map +1 -1
  23. package/lib/main/browser/workspace-main.d.ts.map +1 -1
  24. package/lib/main/browser/workspace-main.js +1 -4
  25. package/lib/main/browser/workspace-main.js.map +1 -1
  26. package/lib/plugin/languages/code-action.d.ts.map +1 -1
  27. package/lib/plugin/languages/code-action.js +8 -9
  28. package/lib/plugin/languages/code-action.js.map +1 -1
  29. package/lib/plugin/languages/document-highlight.d.ts.map +1 -1
  30. package/lib/plugin/languages/document-highlight.js +0 -1
  31. package/lib/plugin/languages/document-highlight.js.map +1 -1
  32. package/lib/plugin/languages/evaluatable-expression.d.ts +12 -0
  33. package/lib/plugin/languages/evaluatable-expression.d.ts.map +1 -0
  34. package/lib/plugin/languages/evaluatable-expression.js +41 -0
  35. package/lib/plugin/languages/evaluatable-expression.js.map +1 -0
  36. package/lib/plugin/languages/util.d.ts +2 -2
  37. package/lib/plugin/languages/util.d.ts.map +1 -1
  38. package/lib/plugin/languages/util.js +0 -2
  39. package/lib/plugin/languages/util.js.map +1 -1
  40. package/lib/plugin/languages.d.ts +3 -1
  41. package/lib/plugin/languages.d.ts.map +1 -1
  42. package/lib/plugin/languages.js +11 -0
  43. package/lib/plugin/languages.js.map +1 -1
  44. package/lib/plugin/plugin-context.d.ts.map +1 -1
  45. package/lib/plugin/plugin-context.js +4 -0
  46. package/lib/plugin/plugin-context.js.map +1 -1
  47. package/lib/plugin/plugin-storage.d.ts +1 -0
  48. package/lib/plugin/plugin-storage.d.ts.map +1 -1
  49. package/lib/plugin/plugin-storage.js +3 -0
  50. package/lib/plugin/plugin-storage.js.map +1 -1
  51. package/lib/plugin/preference-registry.d.ts +15 -2
  52. package/lib/plugin/preference-registry.d.ts.map +1 -1
  53. package/lib/plugin/preference-registry.js +105 -62
  54. package/lib/plugin/preference-registry.js.map +1 -1
  55. package/lib/plugin/preference-registry.spec.js +207 -35
  56. package/lib/plugin/preference-registry.spec.js.map +1 -1
  57. package/lib/plugin/type-converters.d.ts +7 -6
  58. package/lib/plugin/type-converters.d.ts.map +1 -1
  59. package/lib/plugin/type-converters.js +54 -55
  60. package/lib/plugin/type-converters.js.map +1 -1
  61. package/lib/plugin/types-impl.d.ts +8 -3
  62. package/lib/plugin/types-impl.d.ts.map +1 -1
  63. package/lib/plugin/types-impl.js +22 -10
  64. package/lib/plugin/types-impl.js.map +1 -1
  65. package/package.json +24 -24
  66. package/src/common/plugin-api-rpc-model.ts +10 -0
  67. package/src/common/plugin-api-rpc.ts +18 -9
  68. package/src/common/rpc-protocol.ts +5 -5
  69. package/src/main/browser/languages-main.ts +23 -1
  70. package/src/main/browser/preference-registry-main.ts +23 -14
  71. package/src/main/browser/view/tree-view-decorator-service.ts +2 -2
  72. package/src/main/browser/workspace-main.ts +1 -5
  73. package/src/plugin/languages/code-action.ts +9 -12
  74. package/src/plugin/languages/document-highlight.ts +1 -2
  75. package/src/plugin/languages/evaluatable-expression.ts +47 -0
  76. package/src/plugin/languages/util.ts +2 -4
  77. package/src/plugin/languages.ts +15 -0
  78. package/src/plugin/plugin-context.ts +6 -1
  79. package/src/plugin/plugin-storage.ts +4 -0
  80. package/src/plugin/preference-registry.spec.ts +247 -39
  81. package/src/plugin/preference-registry.ts +107 -71
  82. package/src/plugin/type-converters.ts +58 -59
  83. package/src/plugin/types-impl.ts +30 -14
  84. package/lib/plugin/preferences/configuration.d.ts +0 -35
  85. package/lib/plugin/preferences/configuration.d.ts.map +0 -1
  86. package/lib/plugin/preferences/configuration.js +0 -137
  87. package/lib/plugin/preferences/configuration.js.map +0 -1
  88. package/lib/plugin/preferences/configuration.spec.d.ts +0 -2
  89. package/lib/plugin/preferences/configuration.spec.d.ts.map +0 -1
  90. package/lib/plugin/preferences/configuration.spec.js +0 -178
  91. package/lib/plugin/preferences/configuration.spec.js.map +0 -1
  92. package/src/plugin/preferences/configuration.spec.ts +0 -292
  93. package/src/plugin/preferences/configuration.ts +0 -167
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-storage.d.ts","sourceRoot":"","sources":["../../src/plugin/plugin-storage.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,KAAK,EAAW,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAmC,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,qBAAa,OAAQ,YAAW,KAAK,CAAC,OAAO;IAKrC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL5B,OAAO,CAAC,KAAK,CAAkB;gBAGV,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,OAAO,EAC3B,OAAO,EAAE,oBAAoB;IAWlD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAClC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC;IAUvC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAQjD;AAED,qBAAa,WAAY,SAAQ,OAAO;IAEpC,yCAAyC;IACzC,cAAc,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;CAChD;AAED;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,UAAU;IAEnD,OAAO,CAAC,yBAAyB,CAAuC;IACxE,SAAgB,uBAAuB,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAwC;IAE5G,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IAEpC,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,kBAAkB,CAAuB;gBAErC,GAAG,EAAE,WAAW;IAI5B,IAAI,CAAC,cAAc,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,oBAAoB,GAAG,IAAI;IAKzF,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,eAAe;IAUjE,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAU1F,2BAA2B,CAAC,aAAa,EAAE,oBAAoB,GAAG,IAAI;CAKzE"}
1
+ {"version":3,"file":"plugin-storage.d.ts","sourceRoot":"","sources":["../../src/plugin/plugin-storage.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,KAAK,EAAW,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAmC,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,qBAAa,OAAQ,YAAW,KAAK,CAAC,OAAO;IAKrC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL5B,OAAO,CAAC,KAAK,CAAkB;gBAGV,QAAQ,EAAE,MAAM,EAChB,kBAAkB,EAAE,OAAO,EAC3B,OAAO,EAAE,oBAAoB;IAWlD,IAAI,IAAI,MAAM,EAAE;IAIhB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAClC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC;IAUvC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;CAQjD;AAED,qBAAa,WAAY,SAAQ,OAAO;IAEpC,yCAAyC;IACzC,cAAc,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI;CAChD;AAED;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,UAAU;IAEnD,OAAO,CAAC,yBAAyB,CAAuC;IACxE,SAAgB,uBAAuB,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAwC;IAE5G,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAc;IAEpC,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,kBAAkB,CAAuB;gBAErC,GAAG,EAAE,WAAW;IAI5B,IAAI,CAAC,cAAc,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,oBAAoB,GAAG,IAAI;IAKzF,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,eAAe;IAUjE,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAU1F,2BAA2B,CAAC,aAAa,EAAE,oBAAoB,GAAG,IAAI;CAKzE"}
@@ -30,6 +30,9 @@ class Memento {
30
30
  });
31
31
  }
32
32
  }
33
+ keys() {
34
+ return Object.entries(this.cache).filter(([, value]) => value !== undefined).map(([key]) => key);
35
+ }
33
36
  get(key, defaultValue) {
34
37
  if (key && this.cache.hasOwnProperty(key)) {
35
38
  return this.cache[key];
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-storage.js","sourceRoot":"","sources":["../../src/plugin/plugin-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-storage.js","sourceRoot":"","sources":["../../src/plugin/plugin-storage.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,19 @@
1
1
  import { Event } from '@theia/core/lib/common/event';
2
+ import { IConfigurationOverrides } from '@theia/monaco-editor-core/esm/vs/platform/configuration/common/configuration';
3
+ import { Workspace } from '@theia/monaco-editor-core/esm/vs/platform/workspace/common/workspace';
2
4
  import * as theia from '@theia/plugin';
3
- import { PreferenceRegistryExt, PreferenceData, PreferenceChangeExt } from '../common/plugin-api-rpc';
5
+ import { PreferenceChangeExt, PreferenceData, PreferenceRegistryExt } from '../common/plugin-api-rpc';
4
6
  import { RPCProtocol } from '../common/rpc-protocol';
5
7
  import { WorkspaceExtImpl } from './workspace';
8
+ export declare enum PreferenceScope {
9
+ Default = 0,
10
+ User = 1,
11
+ Workspace = 2,
12
+ Folder = 3
13
+ }
14
+ export declare class TheiaWorkspace extends Workspace {
15
+ constructor(ext: WorkspaceExtImpl);
16
+ }
6
17
  export declare class PreferenceRegistryExtImpl implements PreferenceRegistryExt {
7
18
  private readonly workspace;
8
19
  private proxy;
@@ -12,13 +23,15 @@ export declare class PreferenceRegistryExtImpl implements PreferenceRegistryExt
12
23
  constructor(rpc: RPCProtocol, workspace: WorkspaceExtImpl);
13
24
  init(data: PreferenceData): void;
14
25
  $acceptConfigurationChanged(data: PreferenceData, eventData: PreferenceChangeExt[]): void;
15
- getConfiguration(section?: string, resource?: theia.Uri | null, extensionId?: string): theia.WorkspaceConfiguration;
26
+ getConfiguration(rawSection?: string, rawScope?: theia.ConfigurationScope | null, extensionId?: string): theia.WorkspaceConfiguration;
16
27
  private toReadonlyValue;
17
28
  private parse;
18
29
  private getConfigurationModel;
19
30
  private readonly OVERRIDE_PROPERTY;
20
31
  private readonly OVERRIDE_PROPERTY_PATTERN;
32
+ private readonly OVERRIDE_KEY_TEST;
21
33
  private parseConfigurationData;
22
34
  private toConfigurationChangeEvent;
35
+ protected parseConfigurationAccessOptions(scope?: theia.ConfigurationScope | null): IConfigurationOverrides;
23
36
  }
24
37
  //# sourceMappingURL=preference-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"preference-registry.d.ts","sourceRoot":"","sources":["../../src/plugin/preference-registry.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAW,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AACvC,OAAO,EAEH,qBAAqB,EAErB,cAAc,EACd,mBAAmB,EACtB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAGrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAwC/C,qBAAa,yBAA0B,YAAW,qBAAqB;IAS/D,OAAO,CAAC,QAAQ,CAAC,SAAS;IAR9B,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAiD;IAE3F,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAwC;gBAG5G,GAAG,EAAE,WAAW,EACC,SAAS,EAAE,gBAAgB;IAKhD,IAAI,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAIhC,2BAA2B,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,IAAI;IAKzF,gBAAgB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,sBAAsB;IAwGnH,OAAO,CAAC,eAAe;IAuBvB,OAAO,CAAC,KAAK;IAWb,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAiB;IACnD,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAsC;IAEhF,OAAO,CAAC,sBAAsB;IAgC9B,OAAO,CAAC,0BAA0B;CAiBrC"}
1
+ {"version":3,"file":"preference-registry.d.ts","sourceRoot":"","sources":["../../src/plugin/preference-registry.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAW,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAG9D,OAAO,EAAE,uBAAuB,EAAc,MAAM,8EAA8E,CAAC;AAEnI,OAAO,EAAE,SAAS,EAAmB,MAAM,sEAAsE,CAAC;AAClH,OAAO,KAAK,KAAK,MAAM,eAAe,CAAC;AAGvC,OAAO,EACiB,mBAAmB,EAAE,cAAc,EAAE,qBAAqB,EAEjF,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAW/C,oBAAY,eAAe;IACvB,OAAO,IAAA;IACP,IAAI,IAAA;IACJ,SAAS,IAAA;IACT,MAAM,IAAA;CACT;AAwBD,qBAAa,cAAe,SAAQ,SAAS;gBAC7B,GAAG,EAAE,gBAAgB;CAIpC;AAED,qBAAa,yBAA0B,YAAW,qBAAqB;IAS/D,OAAO,CAAC,QAAQ,CAAC,SAAS;IAR9B,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAiD;IAE3F,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAwC;gBAG5G,GAAG,EAAE,WAAW,EACC,SAAS,EAAE,gBAAgB;IAKhD,IAAI,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAIhC,2BAA2B,CAAC,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,mBAAmB,EAAE,GAAG,IAAI;IAKzF,gBAAgB,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,kBAAkB,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,sBAAsB;IAoGrI,OAAO,CAAC,eAAe;IA8BvB,OAAO,CAAC,KAAK;IAWb,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkB;IACpD,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAsC;IAChF,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAqB;IAEvD,OAAO,CAAC,sBAAsB;IAmC9B,OAAO,CAAC,0BAA0B;IAkBlC,SAAS,CAAC,+BAA+B,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,kBAAkB,GAAG,IAAI,GAAG,uBAAuB;CAiB9G"}
@@ -15,19 +15,24 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.PreferenceRegistryExtImpl = void 0;
18
+ exports.PreferenceRegistryExtImpl = exports.TheiaWorkspace = exports.PreferenceScope = void 0;
19
19
  /* eslint-disable @typescript-eslint/no-explicit-any */
20
20
  const event_1 = require("@theia/core/lib/common/event");
21
+ const vscode_uri_1 = require("@theia/core/shared/vscode-uri");
22
+ const map_1 = require("@theia/monaco-editor-core/esm/vs/base/common/map");
23
+ const configurationModels_1 = require("@theia/monaco-editor-core/esm/vs/platform/configuration/common/configurationModels");
24
+ const workspace_1 = require("@theia/monaco-editor-core/esm/vs/platform/workspace/common/workspace");
25
+ const os_1 = require("os");
26
+ const uuid_1 = require("uuid");
21
27
  const plugin_api_rpc_1 = require("../common/plugin-api-rpc");
22
28
  const types_1 = require("../common/types");
23
- const configuration_1 = require("./preferences/configuration");
24
29
  const cloneDeep = require("lodash.clonedeep");
25
30
  const injectionRe = /\b__proto__\b|\bconstructor\.prototype\b/;
26
31
  var ConfigurationTarget;
27
32
  (function (ConfigurationTarget) {
28
33
  ConfigurationTarget[ConfigurationTarget["Global"] = 1] = "Global";
29
34
  ConfigurationTarget[ConfigurationTarget["Workspace"] = 2] = "Workspace";
30
- ConfigurationTarget[ConfigurationTarget["WorkspaceFolder"] = 3] = "WorkspaceFolder";
35
+ ConfigurationTarget[ConfigurationTarget["WorkspaceFolder"] = 3] = "WorkspaceFolder"; // eslint-disable-line @typescript-eslint/no-shadow
31
36
  })(ConfigurationTarget || (ConfigurationTarget = {}));
32
37
  var PreferenceScope;
33
38
  (function (PreferenceScope) {
@@ -35,7 +40,7 @@ var PreferenceScope;
35
40
  PreferenceScope[PreferenceScope["User"] = 1] = "User";
36
41
  PreferenceScope[PreferenceScope["Workspace"] = 2] = "Workspace";
37
42
  PreferenceScope[PreferenceScope["Folder"] = 3] = "Folder";
38
- })(PreferenceScope || (PreferenceScope = {}));
43
+ })(PreferenceScope = exports.PreferenceScope || (exports.PreferenceScope = {}));
39
44
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
45
  function lookUp(tree, key) {
41
46
  if (!key) {
@@ -48,13 +53,22 @@ function lookUp(tree, key) {
48
53
  }
49
54
  return node;
50
55
  }
56
+ class TheiaWorkspace extends workspace_1.Workspace {
57
+ constructor(ext) {
58
+ var _a, _b;
59
+ const folders = ((_a = ext.workspaceFolders) !== null && _a !== void 0 ? _a : []).map(folder => new workspace_1.WorkspaceFolder(folder));
60
+ super((0, uuid_1.v4)(), folders, false, (_b = ext.workspaceFile) !== null && _b !== void 0 ? _b : null, () => ['win32', 'darwin'].includes((0, os_1.platform)()));
61
+ }
62
+ }
63
+ exports.TheiaWorkspace = TheiaWorkspace;
51
64
  class PreferenceRegistryExtImpl {
52
65
  constructor(rpc, workspace) {
53
66
  this.workspace = workspace;
54
67
  this._onDidChangeConfiguration = new event_1.Emitter();
55
68
  this.onDidChangeConfiguration = this._onDidChangeConfiguration.event;
56
- this.OVERRIDE_PROPERTY = '\\[(.*)\\]$';
69
+ this.OVERRIDE_PROPERTY = '^\\[(.*)\\]$';
57
70
  this.OVERRIDE_PROPERTY_PATTERN = new RegExp(this.OVERRIDE_PROPERTY);
71
+ this.OVERRIDE_KEY_TEST = /^\[([^\]]+)\]\./;
58
72
  this.proxy = rpc.getProxy(plugin_api_rpc_1.PLUGIN_RPC_CONTEXT.PREFERENCE_REGISTRY_MAIN);
59
73
  }
60
74
  init(data) {
@@ -64,11 +78,9 @@ class PreferenceRegistryExtImpl {
64
78
  this.init(data);
65
79
  this._onDidChangeConfiguration.fire(this.toConfigurationChangeEvent(eventData));
66
80
  }
67
- getConfiguration(section, resource, extensionId) {
68
- resource = resource === null ? undefined : resource;
69
- const preferences = this.toReadonlyValue(section
70
- ? lookUp(this._preferences.getValue(undefined, this.workspace, resource), section)
71
- : this._preferences.getValue(undefined, this.workspace, resource));
81
+ getConfiguration(rawSection, rawScope, extensionId) {
82
+ const overrides = this.parseConfigurationAccessOptions(rawScope);
83
+ const preferences = this.toReadonlyValue(this._preferences.getValue(rawSection, overrides, new TheiaWorkspace(this.workspace)));
72
84
  const configuration = {
73
85
  has(key) {
74
86
  return typeof lookUp(preferences, key) !== 'undefined';
@@ -91,6 +103,11 @@ class PreferenceRegistryExtImpl {
91
103
  }
92
104
  return new Proxy(target, {
93
105
  get: (targ, prop) => {
106
+ const config = Object.getOwnPropertyDescriptor(targ, prop);
107
+ // This check ensures that https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/get#invariants are satisfied
108
+ if ((config === null || config === void 0 ? void 0 : config.configurable) === false && (config === null || config === void 0 ? void 0 : config.writable) === false) {
109
+ return targ[prop];
110
+ }
94
111
  if (typeof prop === 'string' && prop.toLowerCase() === 'tojson') {
95
112
  cloneTarget();
96
113
  return () => clonedTarget;
@@ -125,36 +142,29 @@ class PreferenceRegistryExtImpl {
125
142
  return cloneOnWriteProxy(result, key);
126
143
  }
127
144
  },
128
- update: (key, value, arg) => {
129
- key = section ? `${section}.${key}` : key;
130
- const resourceStr = resource ? resource.toString() : undefined;
145
+ update: (key, value, targetScope, withLanguageOverride) => {
146
+ var _a;
147
+ const resourceStr = (_a = overrides.resource) === null || _a === void 0 ? void 0 : _a.toString();
148
+ const fullPath = `${overrides.overrideIdentifier ? `[${overrides.overrideIdentifier}].` : ''}${rawSection}.${key}`;
131
149
  if (typeof value !== 'undefined') {
132
- return this.proxy.$updateConfigurationOption(arg, key, value, resourceStr);
150
+ return this.proxy.$updateConfigurationOption(targetScope, fullPath, value, resourceStr, withLanguageOverride);
133
151
  }
134
152
  else {
135
- return this.proxy.$removeConfigurationOption(arg, key, resourceStr);
153
+ return this.proxy.$removeConfigurationOption(targetScope, fullPath, resourceStr, withLanguageOverride);
136
154
  }
137
155
  },
138
156
  inspect: (key) => {
139
- key = section ? `${section}.${key}` : key;
140
- resource = resource === null ? undefined : resource;
141
- const result = cloneDeep(this._preferences.inspect(key, this.workspace, resource));
157
+ var _a, _b, _c, _d;
158
+ const path = `${rawSection}.${key}`;
159
+ const result = this._preferences.inspect(path, overrides, new TheiaWorkspace(this.workspace));
142
160
  if (!result) {
143
161
  return undefined;
144
162
  }
145
163
  const configInspect = { key };
146
- if (typeof result.default !== 'undefined') {
147
- configInspect.defaultValue = result.default;
148
- }
149
- if (typeof result.user !== 'undefined') {
150
- configInspect.globalValue = result.user;
151
- }
152
- if (typeof result.workspace !== 'undefined') {
153
- configInspect.workspaceValue = result.workspace;
154
- }
155
- if (typeof result.workspaceFolder !== 'undefined') {
156
- configInspect.workspaceFolderValue = result.workspaceFolder;
157
- }
164
+ configInspect.defaultValue = (_a = result.default) === null || _a === void 0 ? void 0 : _a.value;
165
+ configInspect.globalValue = (_b = result.user) === null || _b === void 0 ? void 0 : _b.value;
166
+ configInspect.workspaceValue = (_c = result.workspace) === null || _c === void 0 ? void 0 : _c.value;
167
+ configInspect.workspaceFolderValue = (_d = result.workspaceFolder) === null || _d === void 0 ? void 0 : _d.value;
158
168
  return configInspect;
159
169
  }
160
170
  };
@@ -166,7 +176,14 @@ class PreferenceRegistryExtImpl {
166
176
  toReadonlyValue(data) {
167
177
  const readonlyProxy = (target) => (0, types_1.isObject)(target)
168
178
  ? new Proxy(target, {
169
- get: (targ, prop) => readonlyProxy(targ[prop]),
179
+ get: (targ, prop) => {
180
+ const config = Object.getOwnPropertyDescriptor(targ, prop);
181
+ // This check ensures that https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy/Proxy/get#invariants are satisfied
182
+ if ((config === null || config === void 0 ? void 0 : config.configurable) === false && (config === null || config === void 0 ? void 0 : config.writable) === false) {
183
+ return targ[prop];
184
+ }
185
+ return readonlyProxy(targ[prop]);
186
+ },
170
187
  set: (targ, prop, val) => {
171
188
  throw new Error(`TypeError: Cannot assign to read only property '${prop}' of object`);
172
189
  },
@@ -189,63 +206,89 @@ class PreferenceRegistryExtImpl {
189
206
  const defaultConfiguration = this.getConfigurationModel(data[PreferenceScope.Default]);
190
207
  const userConfiguration = this.getConfigurationModel(data[PreferenceScope.User]);
191
208
  const workspaceConfiguration = this.getConfigurationModel(data[PreferenceScope.Workspace]);
192
- const folderConfigurations = {};
209
+ const folderConfigurations = new map_1.ResourceMap();
193
210
  Object.keys(data[PreferenceScope.Folder]).forEach(resource => {
194
- folderConfigurations[resource] = this.getConfigurationModel(data[PreferenceScope.Folder][resource]);
211
+ folderConfigurations.set(vscode_uri_1.URI.parse(resource), this.getConfigurationModel(data[PreferenceScope.Folder][resource]));
195
212
  });
196
- return new configuration_1.Configuration(defaultConfiguration, userConfiguration, workspaceConfiguration, folderConfigurations);
213
+ return new configurationModels_1.Configuration(defaultConfiguration, userConfiguration, undefined, workspaceConfiguration, folderConfigurations);
197
214
  }
198
215
  getConfigurationModel(data) {
199
216
  if (!data) {
200
- return new configuration_1.ConfigurationModel();
217
+ return new configurationModels_1.ConfigurationModel();
201
218
  }
202
- return new configuration_1.ConfigurationModel(this.parseConfigurationData(data), Object.keys(data));
219
+ const configData = this.parseConfigurationData(data);
220
+ return new configurationModels_1.ConfigurationModel(configData.contents, configData.keys, configData.overrides);
203
221
  }
204
222
  parseConfigurationData(data) {
205
- return Object.keys(data).reduce((result, key) => {
223
+ const keys = new Array();
224
+ const overrides = Object.create(null);
225
+ const contents = Object.keys(data).reduce((result, key) => {
206
226
  if (injectionRe.test(key)) {
207
227
  return result;
208
228
  }
209
229
  const parts = key.split('.');
210
230
  let branch = result;
231
+ const isOverride = this.OVERRIDE_KEY_TEST.test(key);
232
+ if (!isOverride) {
233
+ keys.push(key);
234
+ }
211
235
  for (let i = 0; i < parts.length; i++) {
212
- if (i === parts.length - 1) {
213
- branch[parts[i]] = data[key];
214
- continue;
236
+ if (i === 0 && isOverride) {
237
+ const identifier = this.OVERRIDE_PROPERTY_PATTERN.exec(parts[i])[1];
238
+ if (!overrides[identifier]) {
239
+ overrides[identifier] = { keys: [], identifiers: [identifier], contents: Object.create(null) };
240
+ }
241
+ branch = overrides[identifier].contents;
242
+ overrides[identifier].keys.push(key.slice(parts[i].length + 1));
215
243
  }
216
- if (!branch[parts[i]]) {
217
- branch[parts[i]] = Object.create(null);
244
+ else if (i === parts.length - 1) {
245
+ branch[parts[i]] = data[key];
218
246
  }
219
- branch = branch[parts[i]];
220
- // overridden properties should be transformed into
221
- // "[overridden_identifier]" : {
222
- // "property1" : "value1"
223
- // "property2" : "value2"
224
- // }
225
- if (i === 0 && this.OVERRIDE_PROPERTY_PATTERN.test(parts[i])) {
226
- branch[key.substring(parts[0].length + 1)] = data[key];
227
- break;
247
+ else {
248
+ if (!branch[parts[i]]) {
249
+ branch[parts[i]] = Object.create(null);
250
+ }
251
+ branch = branch[parts[i]];
228
252
  }
229
253
  }
230
254
  return result;
231
255
  }, Object.create(null));
256
+ return { contents, keys, overrides: Object.values(overrides) };
232
257
  }
233
258
  toConfigurationChangeEvent(eventData) {
234
259
  return Object.freeze({
235
- affectsConfiguration: (section, uri) => {
236
- // TODO respect uri
237
- // TODO respect scopes shadowing
238
- for (const change of eventData) {
239
- const tree = change.preferenceName
240
- .split('.')
241
- .reverse()
242
- .reduce((prevValue, curValue) => ({ [curValue]: prevValue }), change.newValue);
243
- return typeof lookUp(tree, section) !== 'undefined';
244
- }
245
- return false;
260
+ affectsConfiguration: (section, scope) => {
261
+ const { resource, overrideIdentifier } = this.parseConfigurationAccessOptions(scope);
262
+ const sectionWithLanguage = overrideIdentifier ? `[${overrideIdentifier}].${section}` : section;
263
+ return eventData.some(change => {
264
+ var _a, _b;
265
+ const matchesUri = !resource || !change.scope || (resource.toString() + '/').startsWith(change.scope.endsWith('/') ? change.scope : change.scope + '/');
266
+ const sliceIndex = overrideIdentifier ? 0 : ((_b = (_a = this.OVERRIDE_KEY_TEST.exec(change.preferenceName)) === null || _a === void 0 ? void 0 : _a[0].length) !== null && _b !== void 0 ? _b : 0);
267
+ const changedPreferenceName = sliceIndex ? change.preferenceName.slice(sliceIndex) : change.preferenceName;
268
+ return matchesUri && (sectionWithLanguage === changedPreferenceName
269
+ || sectionWithLanguage.startsWith(`${changedPreferenceName}.`)
270
+ || changedPreferenceName.startsWith(`${sectionWithLanguage}.`));
271
+ });
246
272
  }
247
273
  });
248
274
  }
275
+ parseConfigurationAccessOptions(scope) {
276
+ if (!scope) {
277
+ return {};
278
+ }
279
+ let overrideIdentifier = undefined;
280
+ let resource;
281
+ if ('uri' in scope || 'languageId' in scope) {
282
+ resource = scope.uri;
283
+ }
284
+ else {
285
+ resource = scope;
286
+ }
287
+ if ('languageId' in scope) {
288
+ overrideIdentifier = scope.languageId;
289
+ }
290
+ return { resource, overrideIdentifier };
291
+ }
249
292
  }
250
293
  exports.PreferenceRegistryExtImpl = PreferenceRegistryExtImpl;
251
294
  //# sourceMappingURL=preference-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"preference-registry.js","sourceRoot":"","sources":["../../src/plugin/preference-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preference-registry.js","sourceRoot":"","sources":["../../src/plugin/preference-registry.ts"],"names":[],"mappings":"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"}