@vscode/component-explorer-cli 0.1.1-0 → 0.1.1-10

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 (167) hide show
  1. package/README.md +177 -0
  2. package/dist/browserPage.js +4 -2
  3. package/dist/browserPage.js.map +1 -1
  4. package/dist/commands/acceptCommand.d.ts +3 -1
  5. package/dist/commands/acceptCommand.d.ts.map +1 -1
  6. package/dist/commands/acceptCommand.js +20 -8
  7. package/dist/commands/acceptCommand.js.map +1 -1
  8. package/dist/commands/compareCommand.d.ts +6 -1
  9. package/dist/commands/compareCommand.d.ts.map +1 -1
  10. package/dist/commands/compareCommand.js +51 -73
  11. package/dist/commands/compareCommand.js.map +1 -1
  12. package/dist/commands/mcpCommand.d.ts +10 -0
  13. package/dist/commands/mcpCommand.d.ts.map +1 -0
  14. package/dist/commands/mcpCommand.js +58 -0
  15. package/dist/commands/mcpCommand.js.map +1 -0
  16. package/dist/commands/screenshotCommand.d.ts +8 -2
  17. package/dist/commands/screenshotCommand.d.ts.map +1 -1
  18. package/dist/commands/screenshotCommand.js +70 -17
  19. package/dist/commands/screenshotCommand.js.map +1 -1
  20. package/dist/commands/serveCommand.d.ts +19 -0
  21. package/dist/commands/serveCommand.d.ts.map +1 -0
  22. package/dist/commands/serveCommand.js +194 -0
  23. package/dist/commands/serveCommand.js.map +1 -0
  24. package/dist/commands/watchCommand.d.ts +2 -2
  25. package/dist/commands/watchCommand.d.ts.map +1 -1
  26. package/dist/commands/watchCommand.js +39 -26
  27. package/dist/commands/watchCommand.js.map +1 -1
  28. package/dist/comparison.d.ts +60 -0
  29. package/dist/comparison.d.ts.map +1 -0
  30. package/dist/comparison.js +250 -0
  31. package/dist/comparison.js.map +1 -0
  32. package/dist/component-explorer-config.schema.json +183 -0
  33. package/dist/componentExplorer.d.ts +44 -2
  34. package/dist/componentExplorer.d.ts.map +1 -1
  35. package/dist/componentExplorer.js +103 -18
  36. package/dist/componentExplorer.js.map +1 -1
  37. package/dist/daemon/DaemonContext.d.ts +4 -0
  38. package/dist/daemon/DaemonContext.d.ts.map +1 -0
  39. package/dist/daemon/DaemonService.d.ts +188 -0
  40. package/dist/daemon/DaemonService.d.ts.map +1 -0
  41. package/dist/daemon/DaemonService.js +610 -0
  42. package/dist/daemon/DaemonService.js.map +1 -0
  43. package/dist/daemon/approvalStore.d.ts +51 -0
  44. package/dist/daemon/approvalStore.d.ts.map +1 -0
  45. package/dist/daemon/approvalStore.js +58 -0
  46. package/dist/daemon/approvalStore.js.map +1 -0
  47. package/dist/daemon/lifecycle.d.ts +13 -0
  48. package/dist/daemon/lifecycle.d.ts.map +1 -0
  49. package/dist/daemon/lifecycle.js +68 -0
  50. package/dist/daemon/lifecycle.js.map +1 -0
  51. package/dist/daemon/pipeClient.d.ts +9 -0
  52. package/dist/daemon/pipeClient.d.ts.map +1 -0
  53. package/dist/daemon/pipeClient.js +111 -0
  54. package/dist/daemon/pipeClient.js.map +1 -0
  55. package/dist/daemon/pipeName.d.ts +2 -0
  56. package/dist/daemon/pipeName.d.ts.map +1 -0
  57. package/dist/daemon/pipeName.js +14 -0
  58. package/dist/daemon/pipeName.js.map +1 -0
  59. package/dist/daemon/pipeServer.d.ts +4 -0
  60. package/dist/daemon/pipeServer.d.ts.map +1 -0
  61. package/dist/daemon/pipeServer.js +25 -0
  62. package/dist/daemon/pipeServer.js.map +1 -0
  63. package/dist/daemon/types.d.ts +12 -0
  64. package/dist/daemon/types.d.ts.map +1 -0
  65. package/dist/dependencyInstaller.js +8 -5
  66. package/dist/dependencyInstaller.js.map +1 -1
  67. package/dist/explorerSession.d.ts +5 -3
  68. package/dist/explorerSession.d.ts.map +1 -1
  69. package/dist/explorerSession.js +11 -5
  70. package/dist/explorerSession.js.map +1 -1
  71. package/dist/external/vscode-observables/observables/dist/disposables.js +66 -0
  72. package/dist/external/vscode-observables/observables/dist/disposables.js.map +1 -0
  73. package/dist/external/vscode-observables/observables/dist/observableInternal/base.js +22 -0
  74. package/dist/external/vscode-observables/observables/dist/observableInternal/base.js.map +1 -0
  75. package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js +37 -0
  76. package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js.map +1 -0
  77. package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js +77 -0
  78. package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +1 -0
  79. package/dist/external/vscode-observables/observables/dist/observableInternal/debugName.js +114 -0
  80. package/dist/external/vscode-observables/observables/dist/observableInternal/debugName.js.map +1 -0
  81. package/dist/external/vscode-observables/observables/dist/observableInternal/index.js +22 -0
  82. package/dist/external/vscode-observables/observables/dist/observableInternal/index.js.map +1 -0
  83. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js +356 -0
  84. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js.map +1 -0
  85. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js +79 -0
  86. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js.map +1 -0
  87. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/logging.js +100 -0
  88. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/logging.js.map +1 -0
  89. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js +143 -0
  90. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +1 -0
  91. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js +28 -0
  92. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js.map +1 -0
  93. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js +362 -0
  94. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js.map +1 -0
  95. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js +123 -0
  96. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js.map +1 -0
  97. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js +81 -0
  98. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js.map +1 -0
  99. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorun.js +23 -0
  100. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorun.js.map +1 -0
  101. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js +226 -0
  102. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js.map +1 -0
  103. package/dist/external/vscode-observables/observables/dist/observableInternal/transaction.js +87 -0
  104. package/dist/external/vscode-observables/observables/dist/observableInternal/transaction.js.map +1 -0
  105. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utils.js +68 -0
  106. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utils.js.map +1 -0
  107. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js +55 -0
  108. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js.map +1 -0
  109. package/dist/formatValue.d.ts +2 -0
  110. package/dist/formatValue.d.ts.map +1 -0
  111. package/dist/formatValue.js +96 -0
  112. package/dist/formatValue.js.map +1 -0
  113. package/dist/formatValue.test.d.ts +2 -0
  114. package/dist/formatValue.test.d.ts.map +1 -0
  115. package/dist/git/gitCommitId.js +4 -2
  116. package/dist/git/gitCommitId.js.map +1 -1
  117. package/dist/git/gitCommitResolver.js +11 -3
  118. package/dist/git/gitCommitResolver.js.map +1 -1
  119. package/dist/git/gitService.js +5 -2
  120. package/dist/git/gitService.js.map +1 -1
  121. package/dist/git/gitUtils.js +10 -7
  122. package/dist/git/gitUtils.js.map +1 -1
  123. package/dist/git/gitWorktreeManager.js +5 -2
  124. package/dist/git/gitWorktreeManager.js.map +1 -1
  125. package/dist/httpServer.d.ts +9 -7
  126. package/dist/httpServer.d.ts.map +1 -1
  127. package/dist/httpServer.js +75 -11
  128. package/dist/httpServer.js.map +1 -1
  129. package/dist/index.js +6 -1
  130. package/dist/index.js.map +1 -1
  131. package/dist/logger.d.ts +17 -1
  132. package/dist/logger.d.ts.map +1 -1
  133. package/dist/logger.js +43 -6
  134. package/dist/logger.js.map +1 -1
  135. package/dist/mcp/McpServer.d.ts +58 -0
  136. package/dist/mcp/McpServer.d.ts.map +1 -0
  137. package/dist/mcp/McpServer.js +820 -0
  138. package/dist/mcp/McpServer.js.map +1 -0
  139. package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js +137 -0
  140. package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js.map +1 -0
  141. package/dist/packages/simple-api/dist/chunk-Q24JOMNK.js +27 -0
  142. package/dist/packages/simple-api/dist/chunk-Q24JOMNK.js.map +1 -0
  143. package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js +24 -0
  144. package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js.map +1 -0
  145. package/dist/packages/simple-api/dist/express.js +104 -0
  146. package/dist/packages/simple-api/dist/express.js.map +1 -0
  147. package/dist/resolveProject.d.ts +21 -0
  148. package/dist/resolveProject.d.ts.map +1 -0
  149. package/dist/resolveProject.js +39 -0
  150. package/dist/resolveProject.js.map +1 -0
  151. package/dist/screenshotCache.js +7 -4
  152. package/dist/screenshotCache.js.map +1 -1
  153. package/dist/sourceTreeId.js +4 -2
  154. package/dist/sourceTreeId.js.map +1 -1
  155. package/dist/storage.js +5 -2
  156. package/dist/storage.js.map +1 -1
  157. package/dist/utils.d.ts +24 -0
  158. package/dist/utils.d.ts.map +1 -0
  159. package/dist/utils.js +50 -0
  160. package/dist/utils.js.map +1 -0
  161. package/dist/viteProjectRef.js +5 -2
  162. package/dist/viteProjectRef.js.map +1 -1
  163. package/dist/watchConfig.d.ts +41 -0
  164. package/dist/watchConfig.d.ts.map +1 -1
  165. package/dist/watchConfig.js +48 -23
  166. package/dist/watchConfig.js.map +1 -1
  167. package/package.json +19 -6
@@ -0,0 +1,356 @@
1
+ import { addLogger } from './logging.js';
2
+ import { getClassName } from '../debugName.js';
3
+ import { Derived } from '../observables/derivedImpl.js';
4
+
5
+ /*---------------------------------------------------------------------------------------------
6
+ * Copyright (c) Microsoft Corporation. All rights reserved.
7
+ * Licensed under the MIT License. See License.txt in the project root for license information.
8
+ *--------------------------------------------------------------------------------------------*/
9
+
10
+ /*---------------------------------------------------------------------------------------------
11
+ * Copyright (c) Microsoft Corporation. All rights reserved.
12
+ * Licensed under the MIT License. See License.txt in the project root for license information.
13
+ *--------------------------------------------------------------------------------------------*/
14
+ let consoleObservableLogger;
15
+ function logObservableToConsole(obs) {
16
+ if (!consoleObservableLogger) {
17
+ consoleObservableLogger = new ConsoleObservableLogger();
18
+ addLogger(consoleObservableLogger);
19
+ }
20
+ consoleObservableLogger.addFilteredObj(obs);
21
+ }
22
+ class ConsoleObservableLogger {
23
+ constructor() {
24
+ this.indentation = 0;
25
+ this.changedObservablesSets = new WeakMap();
26
+ }
27
+ addFilteredObj(obj) {
28
+ if (!this._filteredObjects) {
29
+ this._filteredObjects = new Set();
30
+ }
31
+ this._filteredObjects.add(obj);
32
+ }
33
+ _isIncluded(obj) {
34
+ return this._filteredObjects?.has(obj) ?? true;
35
+ }
36
+ textToConsoleArgs(text) {
37
+ return consoleTextToArgs([
38
+ normalText(repeat('| ', this.indentation)),
39
+ text,
40
+ ]);
41
+ }
42
+ formatInfo(info) {
43
+ if (!info.hadValue) {
44
+ return [
45
+ normalText(` `),
46
+ styled(formatValue(info.newValue, 60), {
47
+ color: 'green',
48
+ }),
49
+ normalText(` (initial)`),
50
+ ];
51
+ }
52
+ return info.didChange
53
+ ? [
54
+ normalText(` `),
55
+ styled(formatValue(info.oldValue, 70), {
56
+ color: 'red',
57
+ strikeThrough: true,
58
+ }),
59
+ normalText(` `),
60
+ styled(formatValue(info.newValue, 60), {
61
+ color: 'green',
62
+ }),
63
+ ]
64
+ : [normalText(` (unchanged)`)];
65
+ }
66
+ handleObservableCreated(observable) {
67
+ if (observable instanceof Derived) {
68
+ const derived = observable;
69
+ this.changedObservablesSets.set(derived, new Set());
70
+ }
71
+ }
72
+ handleOnListenerCountChanged(observable, newCount) {
73
+ }
74
+ handleObservableUpdated(observable, info) {
75
+ if (!this._isIncluded(observable)) {
76
+ return;
77
+ }
78
+ if (observable instanceof Derived) {
79
+ this._handleDerivedRecomputed(observable, info);
80
+ return;
81
+ }
82
+ console.log(...this.textToConsoleArgs([
83
+ formatKind('observable value changed'),
84
+ styled(observable.debugName, { color: 'BlueViolet' }),
85
+ ...this.formatInfo(info),
86
+ ]));
87
+ }
88
+ formatChanges(changes) {
89
+ if (changes.size === 0) {
90
+ return undefined;
91
+ }
92
+ return styled(' (changed deps: ' +
93
+ [...changes].map((o) => o.debugName).join(', ') +
94
+ ')', { color: 'gray' });
95
+ }
96
+ handleDerivedDependencyChanged(derived, observable, change) {
97
+ if (!this._isIncluded(derived)) {
98
+ return;
99
+ }
100
+ this.changedObservablesSets.get(derived)?.add(observable);
101
+ }
102
+ _handleDerivedRecomputed(derived, info) {
103
+ if (!this._isIncluded(derived)) {
104
+ return;
105
+ }
106
+ const changedObservables = this.changedObservablesSets.get(derived);
107
+ if (!changedObservables) {
108
+ return;
109
+ }
110
+ console.log(...this.textToConsoleArgs([
111
+ formatKind('derived recomputed'),
112
+ styled(derived.debugName, { color: 'BlueViolet' }),
113
+ ...this.formatInfo(info),
114
+ this.formatChanges(changedObservables),
115
+ { data: [{ fn: derived._debugNameData.referenceFn ?? derived._computeFn }] }
116
+ ]));
117
+ changedObservables.clear();
118
+ }
119
+ handleDerivedCleared(derived) {
120
+ if (!this._isIncluded(derived)) {
121
+ return;
122
+ }
123
+ console.log(...this.textToConsoleArgs([
124
+ formatKind('derived cleared'),
125
+ styled(derived.debugName, { color: 'BlueViolet' }),
126
+ ]));
127
+ }
128
+ handleFromEventObservableTriggered(observable, info) {
129
+ if (!this._isIncluded(observable)) {
130
+ return;
131
+ }
132
+ console.log(...this.textToConsoleArgs([
133
+ formatKind('observable from event triggered'),
134
+ styled(observable.debugName, { color: 'BlueViolet' }),
135
+ ...this.formatInfo(info),
136
+ { data: [{ fn: observable._getValue }] }
137
+ ]));
138
+ }
139
+ handleAutorunCreated(autorun) {
140
+ if (!this._isIncluded(autorun)) {
141
+ return;
142
+ }
143
+ this.changedObservablesSets.set(autorun, new Set());
144
+ }
145
+ handleAutorunDisposed(autorun) {
146
+ }
147
+ handleAutorunDependencyChanged(autorun, observable, change) {
148
+ if (!this._isIncluded(autorun)) {
149
+ return;
150
+ }
151
+ this.changedObservablesSets.get(autorun).add(observable);
152
+ }
153
+ handleAutorunStarted(autorun) {
154
+ const changedObservables = this.changedObservablesSets.get(autorun);
155
+ if (!changedObservables) {
156
+ return;
157
+ }
158
+ if (this._isIncluded(autorun)) {
159
+ console.log(...this.textToConsoleArgs([
160
+ formatKind('autorun'),
161
+ styled(autorun.debugName, { color: 'BlueViolet' }),
162
+ this.formatChanges(changedObservables),
163
+ { data: [{ fn: autorun._debugNameData.referenceFn ?? autorun._runFn }] }
164
+ ]));
165
+ }
166
+ changedObservables.clear();
167
+ this.indentation++;
168
+ }
169
+ handleAutorunFinished(autorun) {
170
+ this.indentation--;
171
+ }
172
+ handleBeginTransaction(transaction) {
173
+ let transactionName = transaction.getDebugName();
174
+ if (transactionName === undefined) {
175
+ transactionName = '';
176
+ }
177
+ if (this._isIncluded(transaction)) {
178
+ console.log(...this.textToConsoleArgs([
179
+ formatKind('transaction'),
180
+ styled(transactionName, { color: 'BlueViolet' }),
181
+ { data: [{ fn: transaction._fn }] }
182
+ ]));
183
+ }
184
+ this.indentation++;
185
+ }
186
+ handleEndTransaction() {
187
+ this.indentation--;
188
+ }
189
+ }
190
+ function consoleTextToArgs(text) {
191
+ const styles = new Array();
192
+ const data = [];
193
+ let firstArg = '';
194
+ function process(t) {
195
+ if ('length' in t) {
196
+ for (const item of t) {
197
+ if (item) {
198
+ process(item);
199
+ }
200
+ }
201
+ }
202
+ else if ('text' in t) {
203
+ firstArg += `%c${t.text}`;
204
+ styles.push(t.style);
205
+ if (t.data) {
206
+ data.push(...t.data);
207
+ }
208
+ }
209
+ else if ('data' in t) {
210
+ data.push(...t.data);
211
+ }
212
+ }
213
+ process(text);
214
+ const result = [firstArg, ...styles];
215
+ result.push(...data);
216
+ return result;
217
+ }
218
+ function normalText(text) {
219
+ return styled(text, { color: 'black' });
220
+ }
221
+ function formatKind(kind) {
222
+ return styled(padStr(`${kind}: `, 10), { color: 'black', bold: true });
223
+ }
224
+ function styled(text, options = {
225
+ color: 'black',
226
+ }) {
227
+ function objToCss(styleObj) {
228
+ return Object.entries(styleObj).reduce((styleString, [propName, propValue]) => {
229
+ return `${styleString}${propName}:${propValue};`;
230
+ }, '');
231
+ }
232
+ const style = {
233
+ color: options.color,
234
+ };
235
+ if (options.strikeThrough) {
236
+ style['text-decoration'] = 'line-through';
237
+ }
238
+ if (options.bold) {
239
+ style['font-weight'] = 'bold';
240
+ }
241
+ return {
242
+ text,
243
+ style: objToCss(style),
244
+ };
245
+ }
246
+ function formatValue(value, availableLen) {
247
+ try {
248
+ return formatValueUnsafe(value, availableLen);
249
+ }
250
+ catch {
251
+ // Value could not be formatted (e.g., a Proxy that throws on coercion)
252
+ return '[[???]]';
253
+ }
254
+ }
255
+ function formatValueUnsafe(value, availableLen) {
256
+ switch (typeof value) {
257
+ case 'number':
258
+ return '' + value;
259
+ case 'string':
260
+ if (value.length + 2 <= availableLen) {
261
+ return `"${value}"`;
262
+ }
263
+ return `"${value.substr(0, availableLen - 7)}"+...`;
264
+ case 'boolean':
265
+ return value ? 'true' : 'false';
266
+ case 'undefined':
267
+ return 'undefined';
268
+ case 'object':
269
+ if (value === null) {
270
+ return 'null';
271
+ }
272
+ if (Array.isArray(value)) {
273
+ return formatArray(value, availableLen);
274
+ }
275
+ return formatObject(value, availableLen);
276
+ case 'symbol':
277
+ return value.toString();
278
+ case 'function':
279
+ return `[[Function${value.name ? ' ' + value.name : ''}]]`;
280
+ default:
281
+ return '' + value;
282
+ }
283
+ }
284
+ function formatArray(value, availableLen) {
285
+ let result = '[ ';
286
+ let first = true;
287
+ for (const val of value) {
288
+ if (!first) {
289
+ result += ', ';
290
+ }
291
+ if (result.length - 5 > availableLen) {
292
+ result += '...';
293
+ break;
294
+ }
295
+ first = false;
296
+ result += `${formatValue(val, availableLen - result.length)}`;
297
+ }
298
+ result += ' ]';
299
+ return result;
300
+ }
301
+ function formatObject(value, availableLen) {
302
+ // Avoid drilling into Proxies - wrap operations that could trigger traps
303
+ try {
304
+ if (typeof value.toString === 'function' && value.toString !== Object.prototype.toString) {
305
+ const val = value.toString();
306
+ if (val.length <= availableLen) {
307
+ return val;
308
+ }
309
+ return val.substring(0, availableLen - 3) + '...';
310
+ }
311
+ }
312
+ catch {
313
+ // toString triggered a Proxy trap or threw - bail out
314
+ return '[[Object]]';
315
+ }
316
+ const className = getClassName(value);
317
+ let result = className ? className + '(' : '{ ';
318
+ let first = true;
319
+ let entries;
320
+ try {
321
+ entries = Object.entries(value);
322
+ }
323
+ catch {
324
+ // Object.entries triggered a Proxy trap - bail out
325
+ return className ? `${className}(...)` : '[[Object]]';
326
+ }
327
+ for (const [key, val] of entries) {
328
+ if (!first) {
329
+ result += ', ';
330
+ }
331
+ if (result.length - 5 > availableLen) {
332
+ result += '...';
333
+ break;
334
+ }
335
+ first = false;
336
+ result += `${key}: ${formatValue(val, availableLen - result.length)}`;
337
+ }
338
+ result += className ? ')' : ' }';
339
+ return result;
340
+ }
341
+ function repeat(str, count) {
342
+ let result = '';
343
+ for (let i = 1; i <= count; i++) {
344
+ result += str;
345
+ }
346
+ return result;
347
+ }
348
+ function padStr(str, length) {
349
+ while (str.length < length) {
350
+ str += ' ';
351
+ }
352
+ return str;
353
+ }
354
+
355
+ export { ConsoleObservableLogger, formatValue, logObservableToConsole };
356
+ //# sourceMappingURL=consoleObservableLogger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consoleObservableLogger.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { addLogger } from './logging.js';\nimport { getClassName } from '../debugName.js';\nimport { Derived } from '../observables/derivedImpl.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nlet consoleObservableLogger;\nfunction logObservableToConsole(obs) {\n if (!consoleObservableLogger) {\n consoleObservableLogger = new ConsoleObservableLogger();\n addLogger(consoleObservableLogger);\n }\n consoleObservableLogger.addFilteredObj(obs);\n}\nclass ConsoleObservableLogger {\n constructor() {\n this.indentation = 0;\n this.changedObservablesSets = new WeakMap();\n }\n addFilteredObj(obj) {\n if (!this._filteredObjects) {\n this._filteredObjects = new Set();\n }\n this._filteredObjects.add(obj);\n }\n _isIncluded(obj) {\n return this._filteredObjects?.has(obj) ?? true;\n }\n textToConsoleArgs(text) {\n return consoleTextToArgs([\n normalText(repeat('| ', this.indentation)),\n text,\n ]);\n }\n formatInfo(info) {\n if (!info.hadValue) {\n return [\n normalText(` `),\n styled(formatValue(info.newValue, 60), {\n color: 'green',\n }),\n normalText(` (initial)`),\n ];\n }\n return info.didChange\n ? [\n normalText(` `),\n styled(formatValue(info.oldValue, 70), {\n color: 'red',\n strikeThrough: true,\n }),\n normalText(` `),\n styled(formatValue(info.newValue, 60), {\n color: 'green',\n }),\n ]\n : [normalText(` (unchanged)`)];\n }\n handleObservableCreated(observable) {\n if (observable instanceof Derived) {\n const derived = observable;\n this.changedObservablesSets.set(derived, new Set());\n }\n }\n handleOnListenerCountChanged(observable, newCount) {\n }\n handleObservableUpdated(observable, info) {\n if (!this._isIncluded(observable)) {\n return;\n }\n if (observable instanceof Derived) {\n this._handleDerivedRecomputed(observable, info);\n return;\n }\n console.log(...this.textToConsoleArgs([\n formatKind('observable value changed'),\n styled(observable.debugName, { color: 'BlueViolet' }),\n ...this.formatInfo(info),\n ]));\n }\n formatChanges(changes) {\n if (changes.size === 0) {\n return undefined;\n }\n return styled(' (changed deps: ' +\n [...changes].map((o) => o.debugName).join(', ') +\n ')', { color: 'gray' });\n }\n handleDerivedDependencyChanged(derived, observable, change) {\n if (!this._isIncluded(derived)) {\n return;\n }\n this.changedObservablesSets.get(derived)?.add(observable);\n }\n _handleDerivedRecomputed(derived, info) {\n if (!this._isIncluded(derived)) {\n return;\n }\n const changedObservables = this.changedObservablesSets.get(derived);\n if (!changedObservables) {\n return;\n }\n console.log(...this.textToConsoleArgs([\n formatKind('derived recomputed'),\n styled(derived.debugName, { color: 'BlueViolet' }),\n ...this.formatInfo(info),\n this.formatChanges(changedObservables),\n { data: [{ fn: derived._debugNameData.referenceFn ?? derived._computeFn }] }\n ]));\n changedObservables.clear();\n }\n handleDerivedCleared(derived) {\n if (!this._isIncluded(derived)) {\n return;\n }\n console.log(...this.textToConsoleArgs([\n formatKind('derived cleared'),\n styled(derived.debugName, { color: 'BlueViolet' }),\n ]));\n }\n handleFromEventObservableTriggered(observable, info) {\n if (!this._isIncluded(observable)) {\n return;\n }\n console.log(...this.textToConsoleArgs([\n formatKind('observable from event triggered'),\n styled(observable.debugName, { color: 'BlueViolet' }),\n ...this.formatInfo(info),\n { data: [{ fn: observable._getValue }] }\n ]));\n }\n handleAutorunCreated(autorun) {\n if (!this._isIncluded(autorun)) {\n return;\n }\n this.changedObservablesSets.set(autorun, new Set());\n }\n handleAutorunDisposed(autorun) {\n }\n handleAutorunDependencyChanged(autorun, observable, change) {\n if (!this._isIncluded(autorun)) {\n return;\n }\n this.changedObservablesSets.get(autorun).add(observable);\n }\n handleAutorunStarted(autorun) {\n const changedObservables = this.changedObservablesSets.get(autorun);\n if (!changedObservables) {\n return;\n }\n if (this._isIncluded(autorun)) {\n console.log(...this.textToConsoleArgs([\n formatKind('autorun'),\n styled(autorun.debugName, { color: 'BlueViolet' }),\n this.formatChanges(changedObservables),\n { data: [{ fn: autorun._debugNameData.referenceFn ?? autorun._runFn }] }\n ]));\n }\n changedObservables.clear();\n this.indentation++;\n }\n handleAutorunFinished(autorun) {\n this.indentation--;\n }\n handleBeginTransaction(transaction) {\n let transactionName = transaction.getDebugName();\n if (transactionName === undefined) {\n transactionName = '';\n }\n if (this._isIncluded(transaction)) {\n console.log(...this.textToConsoleArgs([\n formatKind('transaction'),\n styled(transactionName, { color: 'BlueViolet' }),\n { data: [{ fn: transaction._fn }] }\n ]));\n }\n this.indentation++;\n }\n handleEndTransaction() {\n this.indentation--;\n }\n}\nfunction consoleTextToArgs(text) {\n const styles = new Array();\n const data = [];\n let firstArg = '';\n function process(t) {\n if ('length' in t) {\n for (const item of t) {\n if (item) {\n process(item);\n }\n }\n }\n else if ('text' in t) {\n firstArg += `%c${t.text}`;\n styles.push(t.style);\n if (t.data) {\n data.push(...t.data);\n }\n }\n else if ('data' in t) {\n data.push(...t.data);\n }\n }\n process(text);\n const result = [firstArg, ...styles];\n result.push(...data);\n return result;\n}\nfunction normalText(text) {\n return styled(text, { color: 'black' });\n}\nfunction formatKind(kind) {\n return styled(padStr(`${kind}: `, 10), { color: 'black', bold: true });\n}\nfunction styled(text, options = {\n color: 'black',\n}) {\n function objToCss(styleObj) {\n return Object.entries(styleObj).reduce((styleString, [propName, propValue]) => {\n return `${styleString}${propName}:${propValue};`;\n }, '');\n }\n const style = {\n color: options.color,\n };\n if (options.strikeThrough) {\n style['text-decoration'] = 'line-through';\n }\n if (options.bold) {\n style['font-weight'] = 'bold';\n }\n return {\n text,\n style: objToCss(style),\n };\n}\nfunction formatValue(value, availableLen) {\n try {\n return formatValueUnsafe(value, availableLen);\n }\n catch {\n // Value could not be formatted (e.g., a Proxy that throws on coercion)\n return '[[???]]';\n }\n}\nfunction formatValueUnsafe(value, availableLen) {\n switch (typeof value) {\n case 'number':\n return '' + value;\n case 'string':\n if (value.length + 2 <= availableLen) {\n return `\"${value}\"`;\n }\n return `\"${value.substr(0, availableLen - 7)}\"+...`;\n case 'boolean':\n return value ? 'true' : 'false';\n case 'undefined':\n return 'undefined';\n case 'object':\n if (value === null) {\n return 'null';\n }\n if (Array.isArray(value)) {\n return formatArray(value, availableLen);\n }\n return formatObject(value, availableLen);\n case 'symbol':\n return value.toString();\n case 'function':\n return `[[Function${value.name ? ' ' + value.name : ''}]]`;\n default:\n return '' + value;\n }\n}\nfunction formatArray(value, availableLen) {\n let result = '[ ';\n let first = true;\n for (const val of value) {\n if (!first) {\n result += ', ';\n }\n if (result.length - 5 > availableLen) {\n result += '...';\n break;\n }\n first = false;\n result += `${formatValue(val, availableLen - result.length)}`;\n }\n result += ' ]';\n return result;\n}\nfunction formatObject(value, availableLen) {\n // Avoid drilling into Proxies - wrap operations that could trigger traps\n try {\n if (typeof value.toString === 'function' && value.toString !== Object.prototype.toString) {\n const val = value.toString();\n if (val.length <= availableLen) {\n return val;\n }\n return val.substring(0, availableLen - 3) + '...';\n }\n }\n catch {\n // toString triggered a Proxy trap or threw - bail out\n return '[[Object]]';\n }\n const className = getClassName(value);\n let result = className ? className + '(' : '{ ';\n let first = true;\n let entries;\n try {\n entries = Object.entries(value);\n }\n catch {\n // Object.entries triggered a Proxy trap - bail out\n return className ? `${className}(...)` : '[[Object]]';\n }\n for (const [key, val] of entries) {\n if (!first) {\n result += ', ';\n }\n if (result.length - 5 > availableLen) {\n result += '...';\n break;\n }\n first = false;\n result += `${key}: ${formatValue(val, availableLen - result.length)}`;\n }\n result += className ? ')' : ' }';\n return result;\n}\nfunction repeat(str, count) {\n let result = '';\n for (let i = 1; i <= count; i++) {\n result += str;\n }\n return result;\n}\nfunction padStr(str, length) {\n while (str.length < length) {\n str += ' ';\n }\n return str;\n}\n\nexport { ConsoleObservableLogger, formatValue, logObservableToConsole };\n//# sourceMappingURL=consoleObservableLogger.js.map\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ import { Derived } from '../observables/derivedImpl.js';
2
+ import { FromEventObservable } from '../observables/observableFromEvent.js';
3
+ import { ObservableValue } from '../observables/observableValue.js';
4
+ import { AutorunObserver } from '../reactions/autorunImpl.js';
5
+ import { formatValue } from './consoleObservableLogger.js';
6
+
7
+ /*---------------------------------------------------------------------------------------------
8
+ * Copyright (c) Microsoft Corporation. All rights reserved.
9
+ * Licensed under the MIT License. See License.txt in the project root for license information.
10
+ *--------------------------------------------------------------------------------------------*/
11
+
12
+ /*---------------------------------------------------------------------------------------------
13
+ * Copyright (c) Microsoft Corporation. All rights reserved.
14
+ * Licensed under the MIT License. See License.txt in the project root for license information.
15
+ *--------------------------------------------------------------------------------------------*/
16
+ function debugGetDependencyGraph(obs, options) {
17
+ const debugNamePostProcessor = options?.debugNamePostProcessor ?? ((str) => str);
18
+ const info = Info.from(obs, debugNamePostProcessor);
19
+ if (!info) {
20
+ return '';
21
+ }
22
+ const alreadyListed = new Set();
23
+ return formatObservableInfo(info, 0, alreadyListed).trim();
24
+ }
25
+ function formatObservableInfo(info, indentLevel, alreadyListed) {
26
+ const indent = '\t\t'.repeat(indentLevel);
27
+ const lines = [];
28
+ const isAlreadyListed = alreadyListed.has(info.sourceObj);
29
+ if (isAlreadyListed) {
30
+ lines.push(`${indent}* ${info.type} ${info.name} (already listed)`);
31
+ return lines.join('\n');
32
+ }
33
+ alreadyListed.add(info.sourceObj);
34
+ lines.push(`${indent}* ${info.type} ${info.name}:`);
35
+ lines.push(`${indent} value: ${formatValue(info.value, 50)}`);
36
+ lines.push(`${indent} state: ${info.state}`);
37
+ if (info.dependencies.length > 0) {
38
+ lines.push(`${indent} dependencies:`);
39
+ for (const dep of info.dependencies) {
40
+ lines.push(formatObservableInfo(dep, indentLevel + 1, alreadyListed));
41
+ }
42
+ }
43
+ return lines.join('\n');
44
+ }
45
+ class Info {
46
+ static from(obs, debugNamePostProcessor) {
47
+ if (obs instanceof AutorunObserver) {
48
+ const state = obs.debugGetState();
49
+ return new Info(obs, debugNamePostProcessor(obs.debugName), 'autorun', undefined, state.stateStr, Array.from(state.dependencies).map(dep => Info.from(dep, debugNamePostProcessor) || Info.unknown(dep)));
50
+ }
51
+ else if (obs instanceof Derived) {
52
+ const state = obs.debugGetState();
53
+ return new Info(obs, debugNamePostProcessor(obs.debugName), 'derived', state.value, state.stateStr, Array.from(state.dependencies).map(dep => Info.from(dep, debugNamePostProcessor) || Info.unknown(dep)));
54
+ }
55
+ else if (obs instanceof ObservableValue) {
56
+ const state = obs.debugGetState();
57
+ return new Info(obs, debugNamePostProcessor(obs.debugName), 'observableValue', state.value, 'upToDate', []);
58
+ }
59
+ else if (obs instanceof FromEventObservable) {
60
+ const state = obs.debugGetState();
61
+ return new Info(obs, debugNamePostProcessor(obs.debugName), 'fromEvent', state.value, state.hasValue ? 'upToDate' : 'initial', []);
62
+ }
63
+ return undefined;
64
+ }
65
+ static unknown(obs) {
66
+ return new Info(obs, '(unknown)', 'unknown', undefined, 'unknown', []);
67
+ }
68
+ constructor(sourceObj, name, type, value, state, dependencies) {
69
+ this.sourceObj = sourceObj;
70
+ this.name = name;
71
+ this.type = type;
72
+ this.value = value;
73
+ this.state = state;
74
+ this.dependencies = dependencies;
75
+ }
76
+ }
77
+
78
+ export { debugGetDependencyGraph };
79
+ //# sourceMappingURL=debugGetDependencyGraph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debugGetDependencyGraph.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nimport { Derived } from '../observables/derivedImpl.js';\nimport { FromEventObservable } from '../observables/observableFromEvent.js';\nimport { ObservableValue } from '../observables/observableValue.js';\nimport { AutorunObserver } from '../reactions/autorunImpl.js';\nimport { formatValue } from './consoleObservableLogger.js';\n\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nfunction debugGetDependencyGraph(obs, options) {\n const debugNamePostProcessor = options?.debugNamePostProcessor ?? ((str) => str);\n const info = Info.from(obs, debugNamePostProcessor);\n if (!info) {\n return '';\n }\n const alreadyListed = new Set();\n return formatObservableInfo(info, 0, alreadyListed).trim();\n}\nfunction formatObservableInfo(info, indentLevel, alreadyListed) {\n const indent = '\\t\\t'.repeat(indentLevel);\n const lines = [];\n const isAlreadyListed = alreadyListed.has(info.sourceObj);\n if (isAlreadyListed) {\n lines.push(`${indent}* ${info.type} ${info.name} (already listed)`);\n return lines.join('\\n');\n }\n alreadyListed.add(info.sourceObj);\n lines.push(`${indent}* ${info.type} ${info.name}:`);\n lines.push(`${indent} value: ${formatValue(info.value, 50)}`);\n lines.push(`${indent} state: ${info.state}`);\n if (info.dependencies.length > 0) {\n lines.push(`${indent} dependencies:`);\n for (const dep of info.dependencies) {\n lines.push(formatObservableInfo(dep, indentLevel + 1, alreadyListed));\n }\n }\n return lines.join('\\n');\n}\nclass Info {\n static from(obs, debugNamePostProcessor) {\n if (obs instanceof AutorunObserver) {\n const state = obs.debugGetState();\n return new Info(obs, debugNamePostProcessor(obs.debugName), 'autorun', undefined, state.stateStr, Array.from(state.dependencies).map(dep => Info.from(dep, debugNamePostProcessor) || Info.unknown(dep)));\n }\n else if (obs instanceof Derived) {\n const state = obs.debugGetState();\n return new Info(obs, debugNamePostProcessor(obs.debugName), 'derived', state.value, state.stateStr, Array.from(state.dependencies).map(dep => Info.from(dep, debugNamePostProcessor) || Info.unknown(dep)));\n }\n else if (obs instanceof ObservableValue) {\n const state = obs.debugGetState();\n return new Info(obs, debugNamePostProcessor(obs.debugName), 'observableValue', state.value, 'upToDate', []);\n }\n else if (obs instanceof FromEventObservable) {\n const state = obs.debugGetState();\n return new Info(obs, debugNamePostProcessor(obs.debugName), 'fromEvent', state.value, state.hasValue ? 'upToDate' : 'initial', []);\n }\n return undefined;\n }\n static unknown(obs) {\n return new Info(obs, '(unknown)', 'unknown', undefined, 'unknown', []);\n }\n constructor(sourceObj, name, type, value, state, dependencies) {\n this.sourceObj = sourceObj;\n this.name = name;\n this.type = type;\n this.value = value;\n this.state = state;\n this.dependencies = dependencies;\n }\n}\n\nexport { debugGetDependencyGraph };\n//# sourceMappingURL=debugGetDependencyGraph.js.map\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /*---------------------------------------------------------------------------------------------
6
+ * Copyright (c) Microsoft Corporation. All rights reserved.
7
+ * Licensed under the MIT License. See License.txt in the project root for license information.
8
+ *--------------------------------------------------------------------------------------------*/
9
+ let globalObservableLogger;
10
+ function addLogger(logger) {
11
+ if (!globalObservableLogger) {
12
+ globalObservableLogger = logger;
13
+ }
14
+ else if (globalObservableLogger instanceof ComposedLogger) {
15
+ globalObservableLogger.loggers.push(logger);
16
+ }
17
+ else {
18
+ globalObservableLogger = new ComposedLogger([globalObservableLogger, logger]);
19
+ }
20
+ }
21
+ function getLogger() {
22
+ return globalObservableLogger;
23
+ }
24
+ let globalObservableLoggerFn = undefined;
25
+ function setLogObservableFn(fn) {
26
+ globalObservableLoggerFn = fn;
27
+ }
28
+ function logObservable(obs) {
29
+ if (globalObservableLoggerFn) {
30
+ globalObservableLoggerFn(obs);
31
+ }
32
+ }
33
+ class ComposedLogger {
34
+ constructor(loggers) {
35
+ this.loggers = loggers;
36
+ }
37
+ handleObservableCreated(observable, location) {
38
+ for (const logger of this.loggers) {
39
+ logger.handleObservableCreated(observable, location);
40
+ }
41
+ }
42
+ handleOnListenerCountChanged(observable, newCount) {
43
+ for (const logger of this.loggers) {
44
+ logger.handleOnListenerCountChanged(observable, newCount);
45
+ }
46
+ }
47
+ handleObservableUpdated(observable, info) {
48
+ for (const logger of this.loggers) {
49
+ logger.handleObservableUpdated(observable, info);
50
+ }
51
+ }
52
+ handleAutorunCreated(autorun, location) {
53
+ for (const logger of this.loggers) {
54
+ logger.handleAutorunCreated(autorun, location);
55
+ }
56
+ }
57
+ handleAutorunDisposed(autorun) {
58
+ for (const logger of this.loggers) {
59
+ logger.handleAutorunDisposed(autorun);
60
+ }
61
+ }
62
+ handleAutorunDependencyChanged(autorun, observable, change) {
63
+ for (const logger of this.loggers) {
64
+ logger.handleAutorunDependencyChanged(autorun, observable, change);
65
+ }
66
+ }
67
+ handleAutorunStarted(autorun) {
68
+ for (const logger of this.loggers) {
69
+ logger.handleAutorunStarted(autorun);
70
+ }
71
+ }
72
+ handleAutorunFinished(autorun) {
73
+ for (const logger of this.loggers) {
74
+ logger.handleAutorunFinished(autorun);
75
+ }
76
+ }
77
+ handleDerivedDependencyChanged(derived, observable, change) {
78
+ for (const logger of this.loggers) {
79
+ logger.handleDerivedDependencyChanged(derived, observable, change);
80
+ }
81
+ }
82
+ handleDerivedCleared(observable) {
83
+ for (const logger of this.loggers) {
84
+ logger.handleDerivedCleared(observable);
85
+ }
86
+ }
87
+ handleBeginTransaction(transaction) {
88
+ for (const logger of this.loggers) {
89
+ logger.handleBeginTransaction(transaction);
90
+ }
91
+ }
92
+ handleEndTransaction(transaction) {
93
+ for (const logger of this.loggers) {
94
+ logger.handleEndTransaction(transaction);
95
+ }
96
+ }
97
+ }
98
+
99
+ export { addLogger, getLogger, logObservable, setLogObservableFn };
100
+ //# sourceMappingURL=logging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.js","sources":["../../../../../../../../../external/vscode-observables/observables/dist/observableInternal/logging/logging.js"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nlet globalObservableLogger;\nfunction addLogger(logger) {\n if (!globalObservableLogger) {\n globalObservableLogger = logger;\n }\n else if (globalObservableLogger instanceof ComposedLogger) {\n globalObservableLogger.loggers.push(logger);\n }\n else {\n globalObservableLogger = new ComposedLogger([globalObservableLogger, logger]);\n }\n}\nfunction getLogger() {\n return globalObservableLogger;\n}\nlet globalObservableLoggerFn = undefined;\nfunction setLogObservableFn(fn) {\n globalObservableLoggerFn = fn;\n}\nfunction logObservable(obs) {\n if (globalObservableLoggerFn) {\n globalObservableLoggerFn(obs);\n }\n}\nclass ComposedLogger {\n constructor(loggers) {\n this.loggers = loggers;\n }\n handleObservableCreated(observable, location) {\n for (const logger of this.loggers) {\n logger.handleObservableCreated(observable, location);\n }\n }\n handleOnListenerCountChanged(observable, newCount) {\n for (const logger of this.loggers) {\n logger.handleOnListenerCountChanged(observable, newCount);\n }\n }\n handleObservableUpdated(observable, info) {\n for (const logger of this.loggers) {\n logger.handleObservableUpdated(observable, info);\n }\n }\n handleAutorunCreated(autorun, location) {\n for (const logger of this.loggers) {\n logger.handleAutorunCreated(autorun, location);\n }\n }\n handleAutorunDisposed(autorun) {\n for (const logger of this.loggers) {\n logger.handleAutorunDisposed(autorun);\n }\n }\n handleAutorunDependencyChanged(autorun, observable, change) {\n for (const logger of this.loggers) {\n logger.handleAutorunDependencyChanged(autorun, observable, change);\n }\n }\n handleAutorunStarted(autorun) {\n for (const logger of this.loggers) {\n logger.handleAutorunStarted(autorun);\n }\n }\n handleAutorunFinished(autorun) {\n for (const logger of this.loggers) {\n logger.handleAutorunFinished(autorun);\n }\n }\n handleDerivedDependencyChanged(derived, observable, change) {\n for (const logger of this.loggers) {\n logger.handleDerivedDependencyChanged(derived, observable, change);\n }\n }\n handleDerivedCleared(observable) {\n for (const logger of this.loggers) {\n logger.handleDerivedCleared(observable);\n }\n }\n handleBeginTransaction(transaction) {\n for (const logger of this.loggers) {\n logger.handleBeginTransaction(transaction);\n }\n }\n handleEndTransaction(transaction) {\n for (const logger of this.loggers) {\n logger.handleEndTransaction(transaction);\n }\n }\n}\n\nexport { addLogger, getLogger, logObservable, setLogObservableFn };\n//# sourceMappingURL=logging.js.map\n"],"names":[],"mappings":"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"}