@opensumi/ide-core-common 3.4.5-next-1730102270.0 → 3.4.5-next-1730119322.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/lib/browser-fs/ensure-dir.js +1 -2
  2. package/lib/browser-fs/ensure-dir.js.map +1 -1
  3. package/lib/browser-fs/util.js +1 -2
  4. package/lib/browser-fs/util.js.map +1 -1
  5. package/lib/codicons.d.ts +70 -70
  6. package/lib/codicons.d.ts.map +1 -1
  7. package/lib/codicons.js +5 -5
  8. package/lib/codicons.js.map +1 -1
  9. package/lib/command.js +17 -9
  10. package/lib/command.js.map +1 -1
  11. package/lib/comparers.js +5 -6
  12. package/lib/comparers.js.map +1 -1
  13. package/lib/const/application.d.ts +1 -1
  14. package/lib/const/application.js +2 -2
  15. package/lib/const/application.js.map +1 -1
  16. package/lib/const/locale-types.d.ts.map +1 -1
  17. package/lib/contribution-provider.js +2 -2
  18. package/lib/contribution-provider.js.map +1 -1
  19. package/lib/devtools/index.js +2 -2
  20. package/lib/devtools/index.js.map +1 -1
  21. package/lib/di-helper/domain-helper.d.ts.map +1 -1
  22. package/lib/di-helper/domain-helper.js +1 -2
  23. package/lib/di-helper/domain-helper.js.map +1 -1
  24. package/lib/error.js +1 -2
  25. package/lib/error.js.map +1 -1
  26. package/lib/event-bus/event-bus.js +2 -2
  27. package/lib/event-bus/event-bus.js.map +1 -1
  28. package/lib/event-bus/event-decorator.d.ts.map +1 -1
  29. package/lib/event-bus/event-decorator.js +3 -3
  30. package/lib/event-bus/event-decorator.js.map +1 -1
  31. package/lib/hash-calculate/WASMInterface.d.ts +1 -1
  32. package/lib/hash-calculate/WASMInterface.js +2 -2
  33. package/lib/hash-calculate/WASMInterface.js.map +1 -1
  34. package/lib/hash-calculate/hash-calculate.js +2 -2
  35. package/lib/hash-calculate/hash-calculate.js.map +1 -1
  36. package/lib/hash-calculate/lockedCreate.js +1 -2
  37. package/lib/hash-calculate/lockedCreate.js.map +1 -1
  38. package/lib/hash-calculate/mutex.js.map +1 -1
  39. package/lib/hash-calculate/util.js +8 -8
  40. package/lib/hash-calculate/util.js.map +1 -1
  41. package/lib/keyboard/keymap.js +2 -2
  42. package/lib/keyboard/keymap.js.map +1 -1
  43. package/lib/line-text.js.map +1 -1
  44. package/lib/localize.js +13 -13
  45. package/lib/localize.js.map +1 -1
  46. package/lib/log.js +4 -4
  47. package/lib/log.js.map +1 -1
  48. package/lib/markdown.js +5 -3
  49. package/lib/markdown.js.map +1 -1
  50. package/lib/mime.js +3 -3
  51. package/lib/mime.js.map +1 -1
  52. package/lib/mocks/electron/browserMock.js +1 -2
  53. package/lib/mocks/electron/browserMock.js.map +1 -1
  54. package/lib/mocks/electron/ipcRenderer.d.ts +0 -1
  55. package/lib/mocks/electron/ipcRenderer.d.ts.map +1 -1
  56. package/lib/module.js +5 -5
  57. package/lib/module.js.map +1 -1
  58. package/lib/network.js +1 -1
  59. package/lib/network.js.map +1 -1
  60. package/lib/node/port.js +3 -4
  61. package/lib/node/port.js.map +1 -1
  62. package/lib/node/utils.d.ts +0 -1
  63. package/lib/node/utils.d.ts.map +1 -1
  64. package/lib/node/utils.js +2 -3
  65. package/lib/node/utils.js.map +1 -1
  66. package/lib/preferences/preference-schema.js +3 -3
  67. package/lib/preferences/preference-schema.js.map +1 -1
  68. package/lib/preferences/preference-scope.js +2 -2
  69. package/lib/preferences/preference-scope.js.map +1 -1
  70. package/lib/problem-matcher.js +3 -3
  71. package/lib/problem-matcher.js.map +1 -1
  72. package/lib/problem-pattern.d.ts +1 -1
  73. package/lib/problem-pattern.d.ts.map +1 -1
  74. package/lib/problem-pattern.js +20 -20
  75. package/lib/problem-pattern.js.map +1 -1
  76. package/lib/reference.js +2 -2
  77. package/lib/reference.js.map +1 -1
  78. package/lib/remote-service/README.md +9 -9
  79. package/lib/remote-service/data-store/decorators.d.ts +2 -2
  80. package/lib/remote-service/data-store/decorators.d.ts.map +1 -1
  81. package/lib/remote-service/data-store/decorators.js +23 -26
  82. package/lib/remote-service/data-store/decorators.js.map +1 -1
  83. package/lib/remote-service/data-store/select.d.ts +2 -2
  84. package/lib/remote-service/data-store/select.d.ts.map +1 -1
  85. package/lib/remote-service/data-store/select.js +1 -2
  86. package/lib/remote-service/data-store/select.js.map +1 -1
  87. package/lib/remote-service/data-store/store.d.ts +20 -17
  88. package/lib/remote-service/data-store/store.d.ts.map +1 -1
  89. package/lib/remote-service/data-store/store.js +32 -4
  90. package/lib/remote-service/data-store/store.js.map +1 -1
  91. package/lib/remote-service/index.d.ts +1 -1
  92. package/lib/remote-service/index.d.ts.map +1 -1
  93. package/lib/remote-service/index.js +4 -4
  94. package/lib/remote-service/index.js.map +1 -1
  95. package/lib/reporter.d.ts.map +1 -1
  96. package/lib/reporter.js +4 -4
  97. package/lib/reporter.js.map +1 -1
  98. package/lib/settings/ai-native.js +1 -1
  99. package/lib/settings/ai-native.js.map +1 -1
  100. package/lib/settings/general.js +1 -1
  101. package/lib/settings/general.js.map +1 -1
  102. package/lib/storage.js +3 -3
  103. package/lib/storage.js.map +1 -1
  104. package/lib/task-definition.d.ts.map +1 -1
  105. package/lib/task-definition.js +3 -3
  106. package/lib/task-definition.js.map +1 -1
  107. package/lib/theme.js +4 -4
  108. package/lib/theme.js.map +1 -1
  109. package/lib/types/ai-native/index.d.ts +4 -0
  110. package/lib/types/ai-native/index.d.ts.map +1 -1
  111. package/lib/types/ai-native/index.js +9 -2
  112. package/lib/types/ai-native/index.js.map +1 -1
  113. package/lib/types/ai-native/reporter.d.ts +21 -11
  114. package/lib/types/ai-native/reporter.d.ts.map +1 -1
  115. package/lib/types/ai-native/reporter.js +19 -18
  116. package/lib/types/ai-native/reporter.js.map +1 -1
  117. package/lib/types/authentication.d.ts +0 -8
  118. package/lib/types/authentication.d.ts.map +1 -1
  119. package/lib/types/editor.js +4 -4
  120. package/lib/types/editor.js.map +1 -1
  121. package/lib/types/extension.js +3 -3
  122. package/lib/types/extension.js.map +1 -1
  123. package/lib/types/file-watch.js +4 -4
  124. package/lib/types/file-watch.js.map +1 -1
  125. package/lib/types/file.d.ts +0 -1
  126. package/lib/types/file.d.ts.map +1 -1
  127. package/lib/types/file.js +2 -2
  128. package/lib/types/file.js.map +1 -1
  129. package/lib/types/markers/markers-manager.js +7 -4
  130. package/lib/types/markers/markers-manager.js.map +1 -1
  131. package/lib/types/markers/markers.js +3 -3
  132. package/lib/types/markers/markers.js.map +1 -1
  133. package/lib/types/message.js +1 -1
  134. package/lib/types/message.js.map +1 -1
  135. package/lib/types/reporter.js +3 -3
  136. package/lib/types/reporter.js.map +1 -1
  137. package/lib/utils/ipc.js +2 -3
  138. package/lib/utils/ipc.js.map +1 -1
  139. package/package.json +4 -4
  140. package/src/const/application.ts +1 -1
  141. package/src/problem-pattern.ts +2 -3
  142. package/src/remote-service/README.md +9 -9
  143. package/src/remote-service/data-store/decorators.ts +39 -25
  144. package/src/remote-service/data-store/select.ts +3 -3
  145. package/src/remote-service/data-store/store.ts +60 -21
  146. package/src/types/ai-native/index.ts +7 -0
  147. package/src/types/ai-native/reporter.ts +20 -9
  148. package/src/types/authentication.ts +0 -7
@@ -16,7 +16,9 @@
16
16
  ********************************************************************************/
17
17
  // Some code copied and modified from https://github.com/eclipse-theia/theia/tree/v1.14.0/packages/core/src/common/severity.ts
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.ProblemPatternRegistryImpl = exports.IProblemPatternRegistry = exports.Severity = exports.ProblemMatchData = exports.diagnosticAreEquals = exports.rangeAreEqual = exports.ProblemPattern = exports.NamedMultiLineCheckedProblemPattern = exports.NamedProblemPattern = exports.MultiLineCheckedProblemPattern = exports.MultiLineProblemPattern = exports.CheckedProblemPattern = exports.FileLocationKind = exports.ProblemLocationKind = exports.ApplyToKind = void 0;
19
+ exports.ProblemPatternRegistryImpl = exports.IProblemPatternRegistry = exports.Severity = exports.ProblemMatchData = exports.ProblemPattern = exports.NamedMultiLineCheckedProblemPattern = exports.NamedProblemPattern = exports.MultiLineCheckedProblemPattern = exports.MultiLineProblemPattern = exports.CheckedProblemPattern = exports.FileLocationKind = exports.ProblemLocationKind = exports.ApplyToKind = void 0;
20
+ exports.rangeAreEqual = rangeAreEqual;
21
+ exports.diagnosticAreEquals = diagnosticAreEquals;
20
22
  const tslib_1 = require("tslib");
21
23
  const di_1 = require("@opensumi/di");
22
24
  const ide_utils_1 = require("@opensumi/ide-utils");
@@ -25,7 +27,7 @@ var ApplyToKind;
25
27
  ApplyToKind[ApplyToKind["allDocuments"] = 0] = "allDocuments";
26
28
  ApplyToKind[ApplyToKind["openDocuments"] = 1] = "openDocuments";
27
29
  ApplyToKind[ApplyToKind["closedDocuments"] = 2] = "closedDocuments";
28
- })(ApplyToKind = exports.ApplyToKind || (exports.ApplyToKind = {}));
30
+ })(ApplyToKind || (exports.ApplyToKind = ApplyToKind = {}));
29
31
  var DiagnosticSeverity;
30
32
  (function (DiagnosticSeverity) {
31
33
  DiagnosticSeverity[DiagnosticSeverity["Error"] = 1] = "Error";
@@ -50,12 +52,12 @@ var DiagnosticSeverity;
50
52
  return undefined;
51
53
  }
52
54
  ApplyToKind.fromString = fromString;
53
- })(ApplyToKind = exports.ApplyToKind || (exports.ApplyToKind = {}));
55
+ })(ApplyToKind || (exports.ApplyToKind = ApplyToKind = {}));
54
56
  var ProblemLocationKind;
55
57
  (function (ProblemLocationKind) {
56
58
  ProblemLocationKind[ProblemLocationKind["File"] = 0] = "File";
57
59
  ProblemLocationKind[ProblemLocationKind["Location"] = 1] = "Location";
58
- })(ProblemLocationKind = exports.ProblemLocationKind || (exports.ProblemLocationKind = {}));
60
+ })(ProblemLocationKind || (exports.ProblemLocationKind = ProblemLocationKind = {}));
59
61
  (function (ProblemLocationKind) {
60
62
  function fromString(value) {
61
63
  value = value.toLowerCase();
@@ -70,7 +72,7 @@ var ProblemLocationKind;
70
72
  }
71
73
  }
72
74
  ProblemLocationKind.fromString = fromString;
73
- })(ProblemLocationKind = exports.ProblemLocationKind || (exports.ProblemLocationKind = {}));
75
+ })(ProblemLocationKind || (exports.ProblemLocationKind = ProblemLocationKind = {}));
74
76
  var FileLocationKind;
75
77
  (function (FileLocationKind) {
76
78
  function fromString(value) {
@@ -86,13 +88,13 @@ var FileLocationKind;
86
88
  }
87
89
  }
88
90
  FileLocationKind.fromString = fromString;
89
- })(FileLocationKind = exports.FileLocationKind || (exports.FileLocationKind = {}));
91
+ })(FileLocationKind || (exports.FileLocationKind = FileLocationKind = {}));
90
92
  (function (FileLocationKind) {
91
93
  FileLocationKind[FileLocationKind["Default"] = 0] = "Default";
92
94
  FileLocationKind[FileLocationKind["Relative"] = 1] = "Relative";
93
95
  FileLocationKind[FileLocationKind["Absolute"] = 2] = "Absolute";
94
96
  FileLocationKind[FileLocationKind["AutoDetect"] = 3] = "AutoDetect";
95
- })(FileLocationKind = exports.FileLocationKind || (exports.FileLocationKind = {}));
97
+ })(FileLocationKind || (exports.FileLocationKind = FileLocationKind = {}));
96
98
  var CheckedProblemPattern;
97
99
  (function (CheckedProblemPattern) {
98
100
  function is(value) {
@@ -100,14 +102,14 @@ var CheckedProblemPattern;
100
102
  return candidate && (0, ide_utils_1.isString)(candidate.regexp);
101
103
  }
102
104
  CheckedProblemPattern.is = is;
103
- })(CheckedProblemPattern = exports.CheckedProblemPattern || (exports.CheckedProblemPattern = {}));
105
+ })(CheckedProblemPattern || (exports.CheckedProblemPattern = CheckedProblemPattern = {}));
104
106
  var MultiLineProblemPattern;
105
107
  (function (MultiLineProblemPattern) {
106
108
  function is(value) {
107
109
  return value && (0, ide_utils_1.isArray)(value);
108
110
  }
109
111
  MultiLineProblemPattern.is = is;
110
- })(MultiLineProblemPattern = exports.MultiLineProblemPattern || (exports.MultiLineProblemPattern = {}));
112
+ })(MultiLineProblemPattern || (exports.MultiLineProblemPattern = MultiLineProblemPattern = {}));
111
113
  var MultiLineCheckedProblemPattern;
112
114
  (function (MultiLineCheckedProblemPattern) {
113
115
  function is(value) {
@@ -122,7 +124,7 @@ var MultiLineCheckedProblemPattern;
122
124
  return true;
123
125
  }
124
126
  MultiLineCheckedProblemPattern.is = is;
125
- })(MultiLineCheckedProblemPattern = exports.MultiLineCheckedProblemPattern || (exports.MultiLineCheckedProblemPattern = {}));
127
+ })(MultiLineCheckedProblemPattern || (exports.MultiLineCheckedProblemPattern = MultiLineCheckedProblemPattern = {}));
126
128
  var NamedProblemPattern;
127
129
  (function (NamedProblemPattern) {
128
130
  function is(value) {
@@ -130,7 +132,7 @@ var NamedProblemPattern;
130
132
  return candidate && (0, ide_utils_1.isString)(candidate.name);
131
133
  }
132
134
  NamedProblemPattern.is = is;
133
- })(NamedProblemPattern = exports.NamedProblemPattern || (exports.NamedProblemPattern = {}));
135
+ })(NamedProblemPattern || (exports.NamedProblemPattern = NamedProblemPattern = {}));
134
136
  var NamedMultiLineCheckedProblemPattern;
135
137
  (function (NamedMultiLineCheckedProblemPattern) {
136
138
  function is(value) {
@@ -141,7 +143,7 @@ var NamedMultiLineCheckedProblemPattern;
141
143
  MultiLineCheckedProblemPattern.is(candidate.patterns));
142
144
  }
143
145
  NamedMultiLineCheckedProblemPattern.is = is;
144
- })(NamedMultiLineCheckedProblemPattern = exports.NamedMultiLineCheckedProblemPattern || (exports.NamedMultiLineCheckedProblemPattern = {}));
146
+ })(NamedMultiLineCheckedProblemPattern || (exports.NamedMultiLineCheckedProblemPattern = NamedMultiLineCheckedProblemPattern = {}));
145
147
  var ProblemPattern;
146
148
  (function (ProblemPattern) {
147
149
  function fromProblemPatternContribution(value) {
@@ -162,7 +164,7 @@ var ProblemPattern;
162
164
  };
163
165
  }
164
166
  ProblemPattern.fromProblemPatternContribution = fromProblemPatternContribution;
165
- })(ProblemPattern = exports.ProblemPattern || (exports.ProblemPattern = {}));
167
+ })(ProblemPattern || (exports.ProblemPattern = ProblemPattern = {}));
166
168
  function rangeAreEqual(a, b) {
167
169
  if (typeof a === 'undefined' && typeof b === 'undefined') {
168
170
  return true;
@@ -172,7 +174,6 @@ function rangeAreEqual(a, b) {
172
174
  a.end.line === b.end.line &&
173
175
  a.end.character === b.end.character);
174
176
  }
175
- exports.rangeAreEqual = rangeAreEqual;
176
177
  function codeAreEquals(a, b) {
177
178
  if (typeof a === 'object' && typeof b === 'object') {
178
179
  return a.value === b.value && a.target === b.target;
@@ -185,14 +186,13 @@ function diagnosticAreEquals(a, b) {
185
186
  (a === null || a === void 0 ? void 0 : a.source) === (b === null || b === void 0 ? void 0 : b.source) &&
186
187
  rangeAreEqual(a === null || a === void 0 ? void 0 : a.range, b === null || b === void 0 ? void 0 : b.range));
187
188
  }
188
- exports.diagnosticAreEquals = diagnosticAreEquals;
189
189
  var ProblemMatchData;
190
190
  (function (ProblemMatchData) {
191
191
  function is(data) {
192
192
  return 'marker' in data;
193
193
  }
194
194
  ProblemMatchData.is = is;
195
- })(ProblemMatchData = exports.ProblemMatchData || (exports.ProblemMatchData = {}));
195
+ })(ProblemMatchData || (exports.ProblemMatchData = ProblemMatchData = {}));
196
196
  var Severity;
197
197
  (function (Severity) {
198
198
  Severity[Severity["Ignore"] = 0] = "Ignore";
@@ -200,7 +200,7 @@ var Severity;
200
200
  Severity[Severity["Warning"] = 2] = "Warning";
201
201
  Severity[Severity["Info"] = 3] = "Info";
202
202
  Severity[Severity["Log"] = 4] = "Log";
203
- })(Severity = exports.Severity || (exports.Severity = {}));
203
+ })(Severity || (exports.Severity = Severity = {}));
204
204
  (function (Severity) {
205
205
  const error = 'Errors';
206
206
  const warning = 'Warnings';
@@ -263,7 +263,7 @@ var Severity;
263
263
  return [ignore, error, warning, info, log];
264
264
  }
265
265
  Severity.toArray = toArray;
266
- })(Severity = exports.Severity || (exports.Severity = {}));
266
+ })(Severity || (exports.Severity = Severity = {}));
267
267
  exports.IProblemPatternRegistry = Symbol('ProblemPatternRegistry');
268
268
  let ProblemPatternRegistryImpl = class ProblemPatternRegistryImpl {
269
269
  constructor() {
@@ -435,9 +435,9 @@ let ProblemPatternRegistryImpl = class ProblemPatternRegistryImpl {
435
435
  });
436
436
  }
437
437
  };
438
- ProblemPatternRegistryImpl = tslib_1.__decorate([
438
+ exports.ProblemPatternRegistryImpl = ProblemPatternRegistryImpl;
439
+ exports.ProblemPatternRegistryImpl = ProblemPatternRegistryImpl = tslib_1.__decorate([
439
440
  (0, di_1.Injectable)(),
440
441
  tslib_1.__metadata("design:paramtypes", [])
441
442
  ], ProblemPatternRegistryImpl);
442
- exports.ProblemPatternRegistryImpl = ProblemPatternRegistryImpl;
443
443
  //# sourceMappingURL=problem-pattern.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"problem-pattern.js","sourceRoot":"","sources":["../src/problem-pattern.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"problem-pattern.js","sourceRoot":"","sources":["../src/problem-pattern.ts"],"names":[],"mappings":"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"}
package/lib/reference.js CHANGED
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Ref = exports.ReferenceManager = exports.normalizeFileUrl = void 0;
3
+ exports.Ref = exports.ReferenceManager = void 0;
4
+ exports.normalizeFileUrl = normalizeFileUrl;
4
5
  const ide_utils_1 = require("@opensumi/ide-utils");
5
6
  function normalizeFileUrl(uri) {
6
7
  // 部分情况下可能出现类似 `file:///a//` 的路径,此时需要替换路径中的 `//` 为 `/`
7
8
  // 从 `file:///a//b` 规范为 `file:///a/b`
8
9
  return uri.replace(/\w+\/\/\w+/gi, (match) => match.replace('//', '/'));
9
10
  }
10
- exports.normalizeFileUrl = normalizeFileUrl;
11
11
  class ReferenceManager {
12
12
  constructor(factory) {
13
13
  this.factory = factory;
@@ -1 +1 @@
1
- {"version":3,"file":"reference.js","sourceRoot":"","sources":["../src/reference.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reference.js","sourceRoot":"","sources":["../src/reference.ts"],"names":[],"mappings":"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"}
@@ -345,16 +345,18 @@ class TerminalService {
345
345
  由于装饰器的执行是在类实例化之前,所以我们可以在 `GDataStore` 这个装饰器中收集 token,然后将它们加入 Injector 即可:
346
346
 
347
347
  ```ts
348
- const dataStore = [] as [string, DataStoreOptions][];
348
+ function generateToken(type: 'global' | 'session', token: string, options?: DataStoreOptions) {
349
+ // ...
350
+ }
351
+
352
+ export type GDataStore<T, K = number> = InMemoryDataStore<T, K>;
349
353
  export function GDataStore(token: string, options?: DataStoreOptions): PropertyDecorator {
350
- dataStore.push([token, options]);
354
+ const sym = generateToken('global', token, options);
351
355
 
352
- return Autowired(GDataStore, {
353
- tag: String(token),
356
+ return Autowired(sym, {
357
+ tag: token,
354
358
  });
355
359
  }
356
-
357
- export type GDataStore<T> = InMemoryDataStore<T>;
358
360
  ```
359
361
 
360
362
  用一个闭包中的变量 `dataStore` 来储存,然后在创建 Injector 的时候将所有的 token 放入 injector:
@@ -363,10 +365,8 @@ export type GDataStore<T> = InMemoryDataStore<T>;
363
365
  function _injectDataStores(injector: Injector) {
364
366
  dataStore.forEach(([token, opts]) => {
365
367
  injector.addProviders({
366
- token: GDataStore,
368
+ token,
367
369
  useValue: new InMemoryDataStore(opts),
368
- tag: String(token),
369
- dropdownForTag: false,
370
370
  });
371
371
  });
372
372
  }
@@ -1,8 +1,8 @@
1
1
  import { Injector } from '@opensumi/di';
2
2
  import { DataStoreOptions, InMemoryDataStore } from './store';
3
- export type GDataStore<T> = InMemoryDataStore<T>;
3
+ export type GDataStore<Item extends Record<any, any>, PrimaryKey = keyof Item, PrimaryKeyType = Item[PrimaryKey]> = InMemoryDataStore<Item, PrimaryKey, PrimaryKeyType>;
4
4
  export declare function GDataStore(token: string, options?: DataStoreOptions): PropertyDecorator;
5
- export type SessionDataStore<T> = InMemoryDataStore<T>;
5
+ export type SessionDataStore<Item extends Record<any, any>, PrimaryKey = keyof Item, PrimaryKeyType = Item[PrimaryKey]> = InMemoryDataStore<Item, PrimaryKey, PrimaryKeyType>;
6
6
  export declare function SessionDataStore(token: string, options?: DataStoreOptions): PropertyDecorator;
7
7
  export declare function injectGDataStores(injector: Injector): void;
8
8
  export declare function injectSessionDataStores(injector: Injector): void;
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../../src/remote-service/data-store/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAgB9D,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;AACjD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,CAMvF;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;AACvD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,CAM7F;AAkBD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,QAEnD;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,QAEzD"}
1
+ {"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../../../src/remote-service/data-store/decorators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,QAAQ,EAAE,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AA8B9D,MAAM,MAAM,UAAU,CACpB,IAAI,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAC7B,UAAU,GAAG,MAAM,IAAI,EACvB,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,IAC/B,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;AACxD,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,CAIvF;AAED,MAAM,MAAM,gBAAgB,CAC1B,IAAI,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAC7B,UAAU,GAAG,MAAM,IAAI,EACvB,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,IAC/B,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;AACxD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,iBAAiB,CAI7F;AAcD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,QAEnD;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,QAEzD"}
@@ -1,51 +1,48 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.injectSessionDataStores = exports.injectGDataStores = exports.SessionDataStore = exports.GDataStore = void 0;
3
+ exports.GDataStore = GDataStore;
4
+ exports.SessionDataStore = SessionDataStore;
5
+ exports.injectGDataStores = injectGDataStores;
6
+ exports.injectSessionDataStores = injectSessionDataStores;
4
7
  const di_1 = require("@opensumi/di");
5
8
  const store_1 = require("./store");
6
9
  const dataStore = {
7
- global: {},
8
- session: {},
10
+ GDataStore: {},
11
+ SessionDataStore: {},
9
12
  };
10
- function saveToken(type, token, options) {
13
+ function generateToken(type, token, options) {
11
14
  if (dataStore[type][token]) {
12
15
  // 同样的 token 只能被注入一次,options 也以第一次为准
13
- return;
16
+ return dataStore[type][token].sym;
14
17
  }
15
- dataStore[type][token] = options;
18
+ const sym = Symbol(`${type}:${token}`);
19
+ dataStore[type][token] = {
20
+ sym,
21
+ options,
22
+ };
23
+ return sym;
16
24
  }
17
25
  function GDataStore(token, options) {
18
- saveToken('global', token, options);
19
- return (0, di_1.Autowired)(GDataStore, {
20
- tag: String(token),
21
- });
26
+ const sym = generateToken('GDataStore', token, options);
27
+ return (0, di_1.Autowired)(sym);
22
28
  }
23
- exports.GDataStore = GDataStore;
24
29
  function SessionDataStore(token, options) {
25
- saveToken('session', token, options);
26
- return (0, di_1.Autowired)(SessionDataStore, {
27
- tag: String(token),
28
- });
30
+ const sym = generateToken('SessionDataStore', token, options);
31
+ return (0, di_1.Autowired)(sym);
29
32
  }
30
- exports.SessionDataStore = SessionDataStore;
31
33
  function _injectDataStores(type, injector) {
32
34
  const stores = dataStore[type];
33
35
  if (stores) {
34
- const token = type === 'global' ? GDataStore : SessionDataStore;
35
- injector.addProviders(...Object.entries(stores).map(([tag, opts]) => ({
36
- token,
37
- useValue: new store_1.InMemoryDataStore(opts),
38
- tag,
39
- dropdownForTag: false,
36
+ injector.addProviders(...Object.values(stores).map((opts) => ({
37
+ token: opts.sym,
38
+ useValue: new store_1.InMemoryDataStore(opts.options),
40
39
  })));
41
40
  }
42
41
  }
43
42
  function injectGDataStores(injector) {
44
- _injectDataStores('global', injector);
43
+ _injectDataStores('GDataStore', injector);
45
44
  }
46
- exports.injectGDataStores = injectGDataStores;
47
45
  function injectSessionDataStores(injector) {
48
- _injectDataStores('session', injector);
46
+ _injectDataStores('SessionDataStore', injector);
49
47
  }
50
- exports.injectSessionDataStores = injectSessionDataStores;
51
48
  //# sourceMappingURL=decorators.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/remote-service/data-store/decorators.ts"],"names":[],"mappings":";;;AAAA,qCAAmD;AAEnD,mCAA8D;AAE9D,MAAM,SAAS,GAAG;IAChB,MAAM,EAAE,EAAkD;IAC1D,OAAO,EAAE,EAAkD;CACnD,CAAC;AAEX,SAAS,SAAS,CAAC,IAA0B,EAAE,KAAa,EAAE,OAA0B;IACtF,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE;QAC1B,oCAAoC;QACpC,OAAO;KACR;IAED,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;AACnC,CAAC;AAGD,SAAgB,UAAU,CAAC,KAAa,EAAE,OAA0B;IAClE,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAEpC,OAAO,IAAA,cAAS,EAAC,UAAU,EAAE;QAC3B,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC;KACnB,CAAC,CAAC;AACL,CAAC;AAND,gCAMC;AAGD,SAAgB,gBAAgB,CAAC,KAAa,EAAE,OAA0B;IACxE,SAAS,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAErC,OAAO,IAAA,cAAS,EAAC,gBAAgB,EAAE;QACjC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC;KACnB,CAAC,CAAC;AACL,CAAC;AAND,4CAMC;AAED,SAAS,iBAAiB,CAAC,IAA0B,EAAE,QAAkB;IACvE,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,MAAM,EAAE;QACV,MAAM,KAAK,GAAG,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAEhE,QAAQ,CAAC,YAAY,CACnB,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9C,KAAK;YACL,QAAQ,EAAE,IAAI,yBAAiB,CAAC,IAAI,CAAC;YACrC,GAAG;YACH,cAAc,EAAE,KAAK;SACtB,CAAC,CAAC,CACJ,CAAC;KACH;AACH,CAAC;AAED,SAAgB,iBAAiB,CAAC,QAAkB;IAClD,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACxC,CAAC;AAFD,8CAEC;AAED,SAAgB,uBAAuB,CAAC,QAAkB;IACxD,iBAAiB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;AACzC,CAAC;AAFD,0DAEC"}
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/remote-service/data-store/decorators.ts"],"names":[],"mappings":";;AAqCA,gCAIC;AAOD,4CAIC;AAcD,8CAEC;AAED,0DAEC;AAxED,qCAAmD;AAEnD,mCAA8D;AAU9D,MAAM,SAAS,GAAG;IAChB,UAAU,EAAE,EAAmB;IAC/B,gBAAgB,EAAE,EAAmB;CAC7B,CAAC;AAGX,SAAS,aAAa,CAAC,IAAmB,EAAE,KAAa,EAAE,OAA0B;IACnF,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,oCAAoC;QACpC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;IACpC,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC;IACvC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG;QACvB,GAAG;QACH,OAAO;KACR,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC;AAOD,SAAgB,UAAU,CAAC,KAAa,EAAE,OAA0B;IAClE,MAAM,GAAG,GAAG,aAAa,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAExD,OAAO,IAAA,cAAS,EAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAOD,SAAgB,gBAAgB,CAAC,KAAa,EAAE,OAA0B;IACxE,MAAM,GAAG,GAAG,aAAa,CAAC,kBAAkB,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAE9D,OAAO,IAAA,cAAS,EAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAmB,EAAE,QAAkB;IAChE,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,MAAM,EAAE,CAAC;QACX,QAAQ,CAAC,YAAY,CACnB,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACtC,KAAK,EAAE,IAAI,CAAC,GAAG;YACf,QAAQ,EAAE,IAAI,yBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;SAC9C,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,iBAAiB,CAAC,QAAkB;IAClD,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;AAC5C,CAAC;AAED,SAAgB,uBAAuB,CAAC,QAAkB;IACxD,iBAAiB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;AAClD,CAAC"}
@@ -1,4 +1,4 @@
1
- export type Query = Record<string, any>;
2
- export type Store<T> = Iterable<T> | Record<string, T> | Map<string, T>;
1
+ export type Query = Record<any, any>;
2
+ export type Store<T> = Iterable<T> | Record<any, T> | Map<any, T>;
3
3
  export declare function select<I, T extends Store<I>>(items: T, query: Query): I[];
4
4
  //# sourceMappingURL=select.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/remote-service/data-store/select.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AACxC,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAexE,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAqBzE"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/remote-service/data-store/select.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACrC,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AAelE,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAqBzE"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.select = void 0;
3
+ exports.select = select;
4
4
  const ide_utils_1 = require("@opensumi/ide-utils");
5
5
  function makeMatcher(query) {
6
6
  const statements = [];
@@ -32,5 +32,4 @@ function select(items, query) {
32
32
  }
33
33
  return result;
34
34
  }
35
- exports.select = select;
36
35
  //# sourceMappingURL=select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/remote-service/data-store/select.ts"],"names":[],"mappings":";;;AAAA,mDAAiD;AAKjD,SAAS,WAAW,CAAC,KAAY;IAC/B,MAAM,UAAU,GAAG,EAAc,CAAC;IAClC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC7C,UAAU,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;aACL,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;GACjC,CAAC;IAEF,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,OAAO,CAA6B,CAAC;AACnE,CAAC;AAED,SAAgB,MAAM,CAAwB,KAAQ,EAAE,KAAY;IAClE,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,EAAS,CAAC;IAEzB,IAAI,SAAoC,CAAC;IAEzC,IAAI,KAAK,YAAY,GAAG,EAAE;QACxB,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;KAC5B;SAAM,IAAI,IAAA,sBAAU,EAAC,KAAK,CAAC,EAAE;QAC5B,SAAS,GAAG,KAAK,CAAC;KACnB;SAAM;QACL,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KAClC;IAED,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;QAC5B,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE;YACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACnB;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AArBD,wBAqBC"}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../../src/remote-service/data-store/select.ts"],"names":[],"mappings":";;AAkBA,wBAqBC;AAvCD,mDAAiD;AAKjD,SAAS,WAAW,CAAC,KAAY;IAC/B,MAAM,UAAU,GAAG,EAAc,CAAC;IAClC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;QAC7C,UAAU,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG;aACL,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;GACjC,CAAC;IAEF,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,OAAO,CAA2B,CAAC;AACjE,CAAC;AAED,SAAgB,MAAM,CAAwB,KAAQ,EAAE,KAAY;IAClE,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,EAAS,CAAC;IAEzB,IAAI,SAAoC,CAAC;IAEzC,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;QACzB,SAAS,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;SAAM,IAAI,IAAA,sBAAU,EAAC,KAAK,CAAC,EAAE,CAAC;QAC7B,SAAS,GAAG,KAAK,CAAC;IACpB,CAAC;SAAM,CAAC;QACN,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,21 +1,21 @@
1
1
  import { EventEmitter } from '@opensumi/events';
2
- export interface DataStore<Item> {
3
- create(item: Item): Item;
4
- find(query: Record<string, any>): Item[] | undefined;
5
- size(query: Record<string, any>): number;
6
- get(id: string, query?: Record<string, any>): Item | undefined;
7
- update(id: string, item: Partial<Item>): void;
8
- remove(id: string): void;
9
- }
10
- export interface DataStoreEvent<Item> extends Record<string, any> {
2
+ /**
3
+ * The query looks like:
4
+ * { field: value }
5
+ * { field: conditions }
6
+ */
7
+ export type Query = Record<string, any>;
8
+ export interface DataStoreEvent<Item> {
11
9
  created: [item: Item];
12
10
  updated: [oldItem: Item, newItem: Item];
13
11
  removed: [item: Item];
12
+ [key: string]: any[];
14
13
  }
15
14
  export interface DataStoreOptions {
16
15
  id?: string;
17
16
  }
18
- export declare class InMemoryDataStore<Item> extends EventEmitter<DataStoreEvent<Item>> implements DataStore<Item> {
17
+ type MarkOptional<T, K extends keyof T> = Omit<T, K> & Partial<T>;
18
+ export declare class InMemoryDataStore<Item extends Record<any, any>, PrimaryKey extends keyof Item = 'id', PrimaryKeyType = Required<Item>[PrimaryKey]> extends EventEmitter<DataStoreEvent<Item>> {
19
19
  protected options?: DataStoreOptions | undefined;
20
20
  private store;
21
21
  private _uid;
@@ -24,12 +24,15 @@ export declare class InMemoryDataStore<Item> extends EventEmitter<DataStoreEvent
24
24
  */
25
25
  private id;
26
26
  constructor(options?: DataStoreOptions | undefined);
27
- create(item: Item): Item;
28
- find(query: Record<string, any>): Item[] | undefined;
29
- size(query?: Record<string, any>): number;
30
- get(id: string): Item | undefined;
31
- has(id: string): boolean;
32
- update(id: string, item: Partial<Item>): void;
33
- remove(id: string): void;
27
+ create(item: MarkOptional<Item, PrimaryKey>): Item;
28
+ find(query?: Query): Item[] | undefined;
29
+ count(query?: Query): number;
30
+ get(id: PrimaryKeyType): Item | undefined;
31
+ has(id: PrimaryKeyType): boolean;
32
+ update(id: PrimaryKeyType, item: Partial<Item>): void;
33
+ remove(id: PrimaryKeyType): void;
34
+ removeItem(item: Item): void;
35
+ removeAll(query?: Query): void;
34
36
  }
37
+ export {};
35
38
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/remote-service/data-store/store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIhD,MAAM,WAAW,SAAS,CAAC,IAAI;IAC7B,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC;IACrD,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;IACzC,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/D,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC9C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc,CAAC,IAAI,CAAE,SAAQ,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC/D,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtB,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACxC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,iBAAiB,CAAC,IAAI,CAAE,SAAQ,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAE,YAAW,SAAS,CAAC,IAAI,CAAC;IAQ5F,SAAS,CAAC,OAAO,CAAC;IAP9B,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,IAAI,CAAK;IACjB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAS;gBAEG,OAAO,CAAC,8BAAkB;IAKhD,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAUxB,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,SAAS;IAIpD,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM;IAQzC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAIjC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIxB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAY7C,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;CAQzB"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/remote-service/data-store/store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAKhD;;;;GAIG;AACH,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAExC,MAAM,WAAW,cAAc,CAAC,IAAI;IAClC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtB,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACxC,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAEtB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,KAAK,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAElE,qBAAa,iBAAiB,CAC5B,IAAI,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAC7B,UAAU,SAAS,MAAM,IAAI,GAAG,IAAI,EACpC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAC3C,SAAQ,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAQ9B,SAAS,CAAC,OAAO,CAAC,EAAE,gBAAgB;IAPhD,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,IAAI,CAAK;IACjB;;OAEG;IACH,OAAO,CAAC,EAAE,CAAS;gBAEG,OAAO,CAAC,EAAE,gBAAgB,YAAA;IAKhD,MAAM,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,IAAI;IAUlD,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,SAAS;IAOvC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM;IAQ5B,GAAG,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS;IAIzC,GAAG,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO;IAIhC,MAAM,CAAC,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAYrD,MAAM,CAAC,EAAE,EAAE,cAAc,GAAG,IAAI;IAShC,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAS5B,SAAS,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI;CAmB/B"}
@@ -4,6 +4,7 @@ exports.InMemoryDataStore = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const extend_1 = tslib_1.__importDefault(require("lodash/extend"));
6
6
  const events_1 = require("@opensumi/events");
7
+ const ide_utils_1 = require("@opensumi/ide-utils");
7
8
  const select_1 = require("./select");
8
9
  class InMemoryDataStore extends events_1.EventEmitter {
9
10
  constructor(options) {
@@ -14,18 +15,21 @@ class InMemoryDataStore extends events_1.EventEmitter {
14
15
  this.id = (options === null || options === void 0 ? void 0 : options.id) || 'id';
15
16
  }
16
17
  create(item) {
17
- const id = item[this.id] || String(this._uid++);
18
+ const id = item[this.id] || this._uid++;
18
19
  const result = (0, extend_1.default)({}, item, { [this.id]: id });
19
20
  this.store.set(id, result);
20
21
  this.emit('created', result);
21
22
  return result;
22
23
  }
23
24
  find(query) {
25
+ if ((0, ide_utils_1.isUndefined)(query)) {
26
+ return Array.from(this.store.values());
27
+ }
24
28
  return (0, select_1.select)(this.store, query);
25
29
  }
26
- size(query) {
30
+ count(query) {
27
31
  var _a;
28
- if (!query) {
32
+ if ((0, ide_utils_1.isUndefined)(query)) {
29
33
  return this.store.size;
30
34
  }
31
35
  return ((_a = this.find(query)) === null || _a === void 0 ? void 0 : _a.length) || 0;
@@ -38,7 +42,7 @@ class InMemoryDataStore extends events_1.EventEmitter {
38
42
  }
39
43
  update(id, item) {
40
44
  const current = this.store.get(id);
41
- if (!current) {
45
+ if ((0, ide_utils_1.isUndefined)(current)) {
42
46
  return;
43
47
  }
44
48
  const result = (0, extend_1.default)({}, current, item);
@@ -52,6 +56,30 @@ class InMemoryDataStore extends events_1.EventEmitter {
52
56
  }
53
57
  this.store.delete(id);
54
58
  }
59
+ removeItem(item) {
60
+ const id = item[this.id];
61
+ if ((0, ide_utils_1.isUndefined)(id)) {
62
+ return;
63
+ }
64
+ this.remove(id);
65
+ }
66
+ removeAll(query) {
67
+ if ((0, ide_utils_1.isUndefined)(query)) {
68
+ const items = Array.from(this.store.values());
69
+ this.store.clear();
70
+ items.forEach((item) => {
71
+ this.emit('removed', item);
72
+ });
73
+ return;
74
+ }
75
+ const items = this.find(query);
76
+ if (items) {
77
+ items.forEach((item) => {
78
+ this.store.delete(item[this.id]);
79
+ this.emit('removed', item);
80
+ });
81
+ }
82
+ }
55
83
  }
56
84
  exports.InMemoryDataStore = InMemoryDataStore;
57
85
  //# sourceMappingURL=store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/remote-service/data-store/store.ts"],"names":[],"mappings":";;;;AAAA,mEAAmC;AAEnC,6CAAgD;AAEhD,qCAAkC;AAqBlC,MAAa,iBAAwB,SAAQ,qBAAkC;IAQ7E,YAAsB,OAA0B;QAC9C,KAAK,EAAE,CAAC;QADY,YAAO,GAAP,OAAO,CAAmB;QAPxC,UAAK,GAAG,IAAI,GAAG,EAAgB,CAAC;QAChC,SAAI,GAAG,CAAC,CAAC;QAQf,IAAI,CAAC,EAAE,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,EAAE,KAAI,IAAI,CAAC;IAChC,CAAC;IAED,MAAM,CAAC,IAAU;QACf,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,IAAA,gBAAM,EAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAS,CAAC;QAE3D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAE3B,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC7B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,KAA0B;QAC7B,OAAO,IAAA,eAAM,EAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,KAA2B;;QAC9B,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;SACxB;QAED,OAAO,CAAA,MAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,0CAAE,MAAM,KAAI,CAAC,CAAC;IACvC,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,IAAmB;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;SACR;QAED,MAAM,MAAM,GAAG,IAAA,gBAAM,EAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAEtC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,EAAU;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;SAC5B;QAED,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;CACF;AA/DD,8CA+DC"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/remote-service/data-store/store.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export declare function getRemoteServiceData(target: any): {
8
8
  } | undefined;
9
9
  export declare function RemoteService(servicePath: string, protocol?: RPCProtocol<any>): <T extends new (...args: any[]) => any>(constructor: T) => void;
10
10
  export declare namespace RemoteService {
11
- var getName: (service: ConstructorOf<any> | Token) => string;
11
+ var getName: (service: Token | ConstructorOf<any>) => string;
12
12
  }
13
13
  export interface RemoteServiceInternal<Client = any> {
14
14
  rpcClient: Client[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/remote-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAU,QAAQ,EAAE,KAAK,EAAiC,MAAM,cAAc,CAAC;AAErG,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,cAAc,cAAc,CAAC;AAE7B,eAAO,MAAM,eAAe,eAA4B,CAAC;AAUzD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,GAAG,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,SAAS,CAElH;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,4BACnC,GAAG,EAAE,KAAK,GAAG,0BAMvD;yBAPe,aAAa;;;AAgB7B,MAAM,WAAW,qBAAqB,CAAC,MAAM,GAAG,GAAG;IACjD,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,qBAAqB,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,QAAQ,CAYtF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/remote-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAU,QAAQ,EAAE,KAAK,EAAiC,MAAM,cAAc,CAAC;AAErG,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,cAAc,cAAc,CAAC;AAE7B,eAAO,MAAM,eAAe,eAA4B,CAAC;AAUzD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,GAAG,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAA;CAAE,GAAG,SAAS,CAElH;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,IAC3D,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,eAAe,CAAC,UAMvE;yBAPe,aAAa;2BASc,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,KAAG,MAAM;;AAO9E,MAAM,WAAW,qBAAqB,CAAC,MAAM,GAAG,GAAG;IACjD,SAAS,EAAE,MAAM,EAAE,CAAC;IAEpB,qBAAqB,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,QAAQ,CAYtF"}