@vscode/observables 0.1.1-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 (159) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +164 -0
  3. package/dist/assert.d.ts +3 -0
  4. package/dist/assert.d.ts.map +1 -0
  5. package/dist/deps.d.ts +29 -0
  6. package/dist/deps.d.ts.map +1 -0
  7. package/dist/disposables.d.ts +20 -0
  8. package/dist/disposables.d.ts.map +1 -0
  9. package/dist/disposables.js +66 -0
  10. package/dist/disposables.js.map +1 -0
  11. package/dist/equals.d.ts +33 -0
  12. package/dist/equals.d.ts.map +1 -0
  13. package/dist/index.d.ts +3 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +27 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/index.min.js +124 -0
  18. package/dist/index.min.js.map +1 -0
  19. package/dist/observableInternal/base.d.ts +173 -0
  20. package/dist/observableInternal/base.d.ts.map +1 -0
  21. package/dist/observableInternal/base.js +21 -0
  22. package/dist/observableInternal/base.js.map +1 -0
  23. package/dist/observableInternal/changeTracker.d.ts +45 -0
  24. package/dist/observableInternal/changeTracker.d.ts.map +1 -0
  25. package/dist/observableInternal/changeTracker.js +78 -0
  26. package/dist/observableInternal/changeTracker.js.map +1 -0
  27. package/dist/observableInternal/commonFacade/cancellation.d.ts +25 -0
  28. package/dist/observableInternal/commonFacade/cancellation.d.ts.map +1 -0
  29. package/dist/observableInternal/commonFacade/cancellation.js +55 -0
  30. package/dist/observableInternal/commonFacade/cancellation.js.map +1 -0
  31. package/dist/observableInternal/commonFacade/deps.d.ts +25 -0
  32. package/dist/observableInternal/commonFacade/deps.d.ts.map +1 -0
  33. package/dist/observableInternal/commonFacade/deps.js +37 -0
  34. package/dist/observableInternal/commonFacade/deps.js.map +1 -0
  35. package/dist/observableInternal/debugLocation.d.ts +22 -0
  36. package/dist/observableInternal/debugLocation.d.ts.map +1 -0
  37. package/dist/observableInternal/debugLocation.js +77 -0
  38. package/dist/observableInternal/debugLocation.js.map +1 -0
  39. package/dist/observableInternal/debugName.d.ts +34 -0
  40. package/dist/observableInternal/debugName.d.ts.map +1 -0
  41. package/dist/observableInternal/debugName.js +114 -0
  42. package/dist/observableInternal/debugName.js.map +1 -0
  43. package/dist/observableInternal/experimental/deferUnobserve.d.ts +17 -0
  44. package/dist/observableInternal/experimental/deferUnobserve.d.ts.map +1 -0
  45. package/dist/observableInternal/experimental/deferUnobserve.js +68 -0
  46. package/dist/observableInternal/experimental/deferUnobserve.js.map +1 -0
  47. package/dist/observableInternal/experimental/reducer.d.ts +38 -0
  48. package/dist/observableInternal/experimental/reducer.d.ts.map +1 -0
  49. package/dist/observableInternal/experimental/utils.d.ts +16 -0
  50. package/dist/observableInternal/experimental/utils.d.ts.map +1 -0
  51. package/dist/observableInternal/experimental/utils.js +64 -0
  52. package/dist/observableInternal/experimental/utils.js.map +1 -0
  53. package/dist/observableInternal/index.d.ts +26 -0
  54. package/dist/observableInternal/index.d.ts.map +1 -0
  55. package/dist/observableInternal/index.js +21 -0
  56. package/dist/observableInternal/index.js.map +1 -0
  57. package/dist/observableInternal/logging/consoleObservableLogger.d.ts +41 -0
  58. package/dist/observableInternal/logging/consoleObservableLogger.d.ts.map +1 -0
  59. package/dist/observableInternal/logging/consoleObservableLogger.js +355 -0
  60. package/dist/observableInternal/logging/consoleObservableLogger.js.map +1 -0
  61. package/dist/observableInternal/logging/debugGetDependencyGraph.d.ts +5 -0
  62. package/dist/observableInternal/logging/debugGetDependencyGraph.d.ts.map +1 -0
  63. package/dist/observableInternal/logging/debugGetDependencyGraph.js +78 -0
  64. package/dist/observableInternal/logging/debugGetDependencyGraph.js.map +1 -0
  65. package/dist/observableInternal/logging/debugger/debuggerRpc.d.ts +5 -0
  66. package/dist/observableInternal/logging/debugger/debuggerRpc.d.ts.map +1 -0
  67. package/dist/observableInternal/logging/debugger/devToolsLogger.d.ts +44 -0
  68. package/dist/observableInternal/logging/debugger/devToolsLogger.d.ts.map +1 -0
  69. package/dist/observableInternal/logging/debugger/rpc.d.ts +42 -0
  70. package/dist/observableInternal/logging/debugger/rpc.d.ts.map +1 -0
  71. package/dist/observableInternal/logging/debugger/utils.d.ts +14 -0
  72. package/dist/observableInternal/logging/debugger/utils.d.ts.map +1 -0
  73. package/dist/observableInternal/logging/logging.d.ts +31 -0
  74. package/dist/observableInternal/logging/logging.d.ts.map +1 -0
  75. package/dist/observableInternal/logging/logging.js +100 -0
  76. package/dist/observableInternal/logging/logging.js.map +1 -0
  77. package/dist/observableInternal/map.d.ts +19 -0
  78. package/dist/observableInternal/map.d.ts.map +1 -0
  79. package/dist/observableInternal/map.js +71 -0
  80. package/dist/observableInternal/map.js.map +1 -0
  81. package/dist/observableInternal/observables/baseObservable.d.ts +59 -0
  82. package/dist/observableInternal/observables/baseObservable.d.ts.map +1 -0
  83. package/dist/observableInternal/observables/baseObservable.js +142 -0
  84. package/dist/observableInternal/observables/baseObservable.js.map +1 -0
  85. package/dist/observableInternal/observables/constObservable.d.ts +6 -0
  86. package/dist/observableInternal/observables/constObservable.d.ts.map +1 -0
  87. package/dist/observableInternal/observables/constObservable.js +43 -0
  88. package/dist/observableInternal/observables/constObservable.js.map +1 -0
  89. package/dist/observableInternal/observables/derived.d.ts +47 -0
  90. package/dist/observableInternal/observables/derived.d.ts.map +1 -0
  91. package/dist/observableInternal/observables/derived.js +102 -0
  92. package/dist/observableInternal/observables/derived.js.map +1 -0
  93. package/dist/observableInternal/observables/derivedImpl.d.ts +84 -0
  94. package/dist/observableInternal/observables/derivedImpl.d.ts.map +1 -0
  95. package/dist/observableInternal/observables/derivedImpl.js +370 -0
  96. package/dist/observableInternal/observables/derivedImpl.js.map +1 -0
  97. package/dist/observableInternal/observables/lazyObservableValue.d.ts +28 -0
  98. package/dist/observableInternal/observables/lazyObservableValue.d.ts.map +1 -0
  99. package/dist/observableInternal/observables/lazyObservableValue.js +130 -0
  100. package/dist/observableInternal/observables/lazyObservableValue.js.map +1 -0
  101. package/dist/observableInternal/observables/observableFromEvent.d.ts +38 -0
  102. package/dist/observableInternal/observables/observableFromEvent.d.ts.map +1 -0
  103. package/dist/observableInternal/observables/observableFromEvent.js +125 -0
  104. package/dist/observableInternal/observables/observableFromEvent.js.map +1 -0
  105. package/dist/observableInternal/observables/observableSignal.d.ts +12 -0
  106. package/dist/observableInternal/observables/observableSignal.d.ts.map +1 -0
  107. package/dist/observableInternal/observables/observableSignal.js +52 -0
  108. package/dist/observableInternal/observables/observableSignal.js.map +1 -0
  109. package/dist/observableInternal/observables/observableSignalFromEvent.d.ts +6 -0
  110. package/dist/observableInternal/observables/observableSignalFromEvent.d.ts.map +1 -0
  111. package/dist/observableInternal/observables/observableSignalFromEvent.js +46 -0
  112. package/dist/observableInternal/observables/observableSignalFromEvent.js.map +1 -0
  113. package/dist/observableInternal/observables/observableValue.d.ts +38 -0
  114. package/dist/observableInternal/observables/observableValue.d.ts.map +1 -0
  115. package/dist/observableInternal/observables/observableValue.js +108 -0
  116. package/dist/observableInternal/observables/observableValue.js.map +1 -0
  117. package/dist/observableInternal/observables/observableValueOpts.d.ts +9 -0
  118. package/dist/observableInternal/observables/observableValueOpts.d.ts.map +1 -0
  119. package/dist/observableInternal/observables/observableValueOpts.js +23 -0
  120. package/dist/observableInternal/observables/observableValueOpts.js.map +1 -0
  121. package/dist/observableInternal/reactions/createEffect.d.ts +65 -0
  122. package/dist/observableInternal/reactions/createEffect.d.ts.map +1 -0
  123. package/dist/observableInternal/reactions/createEffect.js +148 -0
  124. package/dist/observableInternal/reactions/createEffect.js.map +1 -0
  125. package/dist/observableInternal/reactions/createEffectImpl.d.ts +54 -0
  126. package/dist/observableInternal/reactions/createEffectImpl.d.ts.map +1 -0
  127. package/dist/observableInternal/reactions/createEffectImpl.js +225 -0
  128. package/dist/observableInternal/reactions/createEffectImpl.js.map +1 -0
  129. package/dist/observableInternal/set.d.ts +18 -0
  130. package/dist/observableInternal/set.d.ts.map +1 -0
  131. package/dist/observableInternal/set.js +69 -0
  132. package/dist/observableInternal/set.js.map +1 -0
  133. package/dist/observableInternal/transaction.d.ts +28 -0
  134. package/dist/observableInternal/transaction.d.ts.map +1 -0
  135. package/dist/observableInternal/transaction.js +114 -0
  136. package/dist/observableInternal/transaction.js.map +1 -0
  137. package/dist/observableInternal/utils/promise.d.ts +76 -0
  138. package/dist/observableInternal/utils/promise.d.ts.map +1 -0
  139. package/dist/observableInternal/utils/promise.js +112 -0
  140. package/dist/observableInternal/utils/promise.js.map +1 -0
  141. package/dist/observableInternal/utils/runOnChange.d.ts +8 -0
  142. package/dist/observableInternal/utils/runOnChange.d.ts.map +1 -0
  143. package/dist/observableInternal/utils/runOnChange.js +64 -0
  144. package/dist/observableInternal/utils/runOnChange.js.map +1 -0
  145. package/dist/observableInternal/utils/utils.d.ts +44 -0
  146. package/dist/observableInternal/utils/utils.d.ts.map +1 -0
  147. package/dist/observableInternal/utils/utils.js +249 -0
  148. package/dist/observableInternal/utils/utils.js.map +1 -0
  149. package/dist/observableInternal/utils/utilsCancellation.d.ts +11 -0
  150. package/dist/observableInternal/utils/utilsCancellation.d.ts.map +1 -0
  151. package/dist/observableInternal/utils/utilsCancellation.js +91 -0
  152. package/dist/observableInternal/utils/utilsCancellation.js.map +1 -0
  153. package/dist/observableInternal/utils/valueWithChangeEvent.d.ts +11 -0
  154. package/dist/observableInternal/utils/valueWithChangeEvent.d.ts.map +1 -0
  155. package/dist/observableInternal/utils/valueWithChangeEvent.js +48 -0
  156. package/dist/observableInternal/utils/valueWithChangeEvent.js.map +1 -0
  157. package/dist/utils.d.ts +16 -0
  158. package/dist/utils.d.ts.map +1 -0
  159. package/package.json +50 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.min.js","sources":["../src/observableInternal/debugName.ts","../src/disposables.ts","../src/observableInternal/commonFacade/deps.ts","../src/observableInternal/base.ts","../src/observableInternal/logging/logging.ts","../src/observableInternal/transaction.ts","../src/observableInternal/debugLocation.ts","../src/observableInternal/observables/baseObservable.ts","../src/observableInternal/observables/observableValue.ts","../src/observableInternal/observables/lazyObservableValue.ts","../src/observableInternal/observables/observableValueOpts.ts","../src/observableInternal/reactions/createEffectImpl.ts","../src/observableInternal/reactions/createEffect.ts","../src/observableInternal/observables/derivedImpl.ts","../src/observableInternal/observables/derived.ts","../src/observableInternal/utils/promise.ts","../src/observableInternal/commonFacade/cancellation.ts","../src/observableInternal/utils/utilsCancellation.ts","../src/observableInternal/observables/observableFromEvent.ts","../src/observableInternal/observables/observableSignal.ts","../src/observableInternal/utils/utils.ts","../src/observableInternal/changeTracker.ts","../src/observableInternal/observables/constObservable.ts","../src/observableInternal/observables/observableSignalFromEvent.ts","../src/observableInternal/utils/valueWithChangeEvent.ts","../src/observableInternal/utils/runOnChange.ts","../src/observableInternal/experimental/utils.ts","../src/observableInternal/experimental/deferUnobserve.ts","../src/observableInternal/set.ts","../src/observableInternal/map.ts","../src/observableInternal/logging/consoleObservableLogger.ts","../src/observableInternal/logging/debugGetDependencyGraph.ts","../src/observableInternal/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["DebugNameData","constructor","owner","debugNameSource","referenceFn","this","getDebugName","target","countPerName","Map","cachedDebugName","WeakMap","data","cached","get","dbgName","self","ownerStr","id","ownerId","className","getClassName","count","countPerClassName","set","result","formatOwner","undefined","getFunctionName","key","obj","value","findKey","computeDebugName","ctor","name","fn","fnSrc","toString","match","exec","trim","DisposableStore","disposables","_isDisposed","isDisposed","dispose","clear","add","disposable","push","remove","index","indexOf","splice","leakItems","Disposable","_store","_register","t","_registerOrDispose","toDisposable","BugIndicatingError","Error","message","super","Object","setPrototypeOf","prototype","onBugIndicatingError","error","strictEquals","a","b","handleBugIndicatingErrorRecovery","err","console","globalObservableLogger","globalObservableLoggerFn","_globalTransaction","getLogger","ComposedLogger","loggers","handleObservableCreated","observable","location","logger","handleOnListenerCountChanged","newCount","handleObservableUpdated","info","handleAutorunCreated","autorun","handleAutorunDisposed","handleAutorunDependencyChanged","change","handleAutorunStarted","handleAutorunFinished","handleDerivedDependencyChanged","derived","handleDerivedCleared","handleBeginTransaction","transaction","handleEndTransaction","tx","TransactionImpl","finish","globalTransaction","async","asyncTransaction","subtransaction","_fn","_getDebugName","_updatingObservers","updateObserver","observer","beginUpdate","updatingObservers","i","length","endUpdate","debugGetUpdatingObservers","DebugLocation","enabled","ofNthCaller","n","Err","l","stackTraceLimit","stack","DebugLocationImpl","fromStack","enable","ofCaller","parentIdx","stackLine","fileName","line","parseInt","column","match2","parseLine","split","_derived","_recomputeInitiallyAndOnChange","_keepObserved","_debugGetDependencyGraph","ConvenientObservable","TChange","reportChanges","read","reader","readObservable","map","fnOrOwner","fnOrUndefined","debugLocation","debugName","debugReferenceFn","flatten","recomputeInitiallyAndOnChange","store","handleValue","keepObserved","debugValue","debugGetDependencyGraph","BaseObservable","_observers","Set","addObserver","len","size","onFirstObserverAdded","removeObserver","deleted","delete","onLastObserverRemoved","log","hadLogger","obs","debugGetObservers","observableValue","nameOrOwner","initialValue","debugNameData","ObservableValue","_debugNameData","_equalityComparator","_value","hadValue","newValue","didChange","oldValue","_tx","_setValue","handleChange","debugGetState","debugSetValue","disposableObservableValue","DisposableObservableValue","LazyObservableValue","_isUpToDate","_deltas","_updateCounter","_update","_beginUpdate","_endUpdate","observers","r","shouldCallBeginUpdate","has","shouldCallEndUpdate","handlePossibleChange","observableValueOpts","options","lazy","equalsFn","autorunStateToString","state","AutorunObserver","_runFn","_changeTracker","_state","_updateCount","_disposed","_dependencies","_dependenciesToBeRemoved","_isRunning","_delayedStore","_changeSummary","createChangeSummary","_run","o","emptySet","changeSummary","delayedStore","beforeUpdate","e","_observable","d","_isDependency","changedObservable","_ensureNoRunning","isRunning","updateCount","dependencies","stateStr","debugRerun","createEffect","createEffectOpts","autorunOpts","autorunHandleChanges","changeTracker","autorunWithStoreHandleChanges","autorunWithStore","autorunDelta","handler","_lastValue","lastValue","autorunIterableDelta","getValue","getUniqueIdentifier","v","lastValues","newValues","removedValues","keys","addedValues","values","autorunSelfDisposable","ar","disposed","bind","derivedStateToString","Derived","_computeFn","_handleLastObserverRemoved","_isUpdating","_isComputing","_didReportChange","_isInBeforeUpdate","_isReaderValid","_removedObserverToCallEndUpdateOn","_recompute","propagateBeginUpdate","shouldReact","wasUpToDate","_ensureReaderValid","reportChange","isComputing","debugRecompute","setValue","DerivedWithSetter","computeFn","handleLastObserverRemoved","equalityComparator","computeFnOrOwner","derivedWithSetter","setter","derivedOpts","derivedHandleChanges","equalityComparer","derivedWithStore","computeFnOrUndefined","derivedDisposable","_setDerivedOpts","ObservableLazy","cachedValue","_computeValue","ObservablePromise","fromFn","promise","promiseResult","resolvedValue","getDataOrThrow","then","PromiseResult","ObservableLazyPromise","_computePromise","_lazyValue","cachedPromiseResult","getPromise","CancellationError","CancellationTokenSource","_isCancelled","_listeners","token","isCancellationRequested","onCancellationRequested","listener","cancel","waitForState","predicate","isError","cancellationToken","Promise","resolve","reject","isImmediateRun","shouldDispose","stateObs","isFinished","dc","derivedWithCancellationToken","cancellationTokenSource","observableFromEvent","args","event","FromEventObservable","observableFromEventOpts","_getValue","_getTransaction","_hasValue","handleEvent","didRunTransaction","_subscription","hasValue","observableSignal","debugNameOrOwner","ObservableSignal","Observer","batchEventsGlobally","didSet","_owner","_debugName","trigger","observableFromPromise","signalFromObservable","debouncedObservableDeprecated","debounceMs","disposableStore","debouncedObservable","timeout","clearTimeout","setTimeout","cb","wasEventTriggeredRecently","timeoutMs","KeepAliveObserver","_setKeepObserved","_setRecomputeInitiallyAndOnChange","_forceRecompute","_handleValue","_counter","derivedObservableWithCache","derivedObservableWithWritableCache","onChange","assign","clearCache","setCache","mapObservableArrayCached","items","keySelector","m","ArrayMap","setItems","getItems","_map","_keySelector","_cache","_items","forEach","entry","newItems","itemsToRemove","item","out","recordChanges","_previousChangeSummary","changes","ctx","recordChangesLazy","getObs","constObservable","ConstObservable","observableSignalFromEvent","FromEventObservableSignal","debugNameDataOrName","subscription","ValueWithChangeEventFromObservable","onDidChange","isFirst","observableFromValueWithChangeEvent","runOnChange","_previousValue","_firstRun","deltas","context","previousValue","runOnChangeWithStore","runOnChangeWithCancellationToken","source","cancelOnDispose","latestChangedValue","observables","lastChangedValue","hasLastChangedValue","derivedConstOnceDefined","deferUnobserve","maxIdleTimeMs","keepAliveHandle","timeoutHandle","lifetimeTracker","_","ObservableSet","_data","_obs","callbackfn","thisArg","value2","_set","call","entries","Symbol","iterator","toStringTag","ObservableMap","hadKey","consoleObservableLogger","ConsoleObservableLogger","indentation","changedObservablesSets","addFilteredObj","_filteredObjects","_isIncluded","textToConsoleArgs","text","styles","Array","firstArg","process","style","consoleTextToArgs","normalText","repeat","formatInfo","styled","formatValue","color","strikeThrough","_handleDerivedRecomputed","formatKind","formatChanges","join","changedObservables","handleFromEventObservableTriggered","transactionName","kind","str","padStr","bold","styleObj","reduce","styleString","propName","propValue","availableLen","substr","isArray","first","val","formatArray","substring","formatObject","formatValueUnsafe","formatObservableInfo","indentLevel","alreadyListed","indent","lines","sourceObj","type","dep","Info","from","debugNamePostProcessor","unknown","_setDebugGetDependencyGraph"],"mappings":"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"}
@@ -0,0 +1,173 @@
1
+ import { DisposableStore } from './commonFacade/deps';
2
+ /**
3
+ * Represents an observable value.
4
+ *
5
+ * @template T The type of the values the observable can hold.
6
+ */
7
+ export interface IObservable<T> extends IObservableWithChange<T, unknown> {
8
+ }
9
+ /**
10
+ * Represents an observable value.
11
+ *
12
+ * @template T The type of the values the observable can hold.
13
+ * @template TChange The type used to describe value changes
14
+ * (usually `void` and only used in advanced scenarios).
15
+ * While observers can miss temporary values of an observable,
16
+ * they will receive all change values (as long as they are subscribed)!
17
+ */
18
+ export interface IObservableWithChange<T, TChange = unknown> {
19
+ /**
20
+ * Returns the current value.
21
+ *
22
+ * Calls {@link IObserver.handleChange} if the observable notices that the value changed.
23
+ * Must not be called from {@link IObserver.handleChange}!
24
+ */
25
+ get(): T;
26
+ /**
27
+ * Forces the observable to check for changes and report them.
28
+ *
29
+ * Has the same effect as calling {@link IObservable.get}, but does not force the observable
30
+ * to actually construct the value, e.g. if change deltas are used.
31
+ * Calls {@link IObserver.handleChange} if the observable notices that the value changed.
32
+ * Must not be called from {@link IObserver.handleChange}!
33
+ */
34
+ reportChanges(): void;
35
+ /**
36
+ * Adds the observer to the set of subscribed observers.
37
+ * This method is idempotent.
38
+ */
39
+ addObserver(observer: IObserver): void;
40
+ /**
41
+ * Removes the observer from the set of subscribed observers.
42
+ * This method is idempotent.
43
+ */
44
+ removeObserver(observer: IObserver): void;
45
+ /**
46
+ * Reads the current value and subscribes the reader to this observable.
47
+ *
48
+ * Calls {@link IReader.readObservable} if a reader is given, otherwise {@link IObservable.get}
49
+ * (see {@link ConvenientObservable.read} for the implementation).
50
+ */
51
+ read(reader: IReader | undefined): T;
52
+ /**
53
+ * Makes sure this value is computed eagerly.
54
+ */
55
+ recomputeInitiallyAndOnChange(store: DisposableStore, handleValue?: (value: T) => void): IObservable<T>;
56
+ /**
57
+ * Makes sure this value is cached.
58
+ */
59
+ keepObserved(store: DisposableStore): IObservable<T>;
60
+ /**
61
+ * Creates a derived observable that depends on this observable.
62
+ * Use the reader to read other observables
63
+ * (see {@link ConvenientObservable.map} for the implementation).
64
+ */
65
+ map<TNew>(fn: (value: T, reader: IReader) => TNew): IObservable<TNew>;
66
+ map<TNew>(owner: object, fn: (value: T, reader: IReader) => TNew): IObservable<TNew>;
67
+ flatten<TNew>(this: IObservable<IObservable<TNew>>): IObservable<TNew>;
68
+ /**
69
+ * ONLY FOR DEBUGGING!
70
+ * Logs computations of this derived.
71
+ */
72
+ log(): IObservableWithChange<T, TChange>;
73
+ /**
74
+ * A human-readable name for debugging purposes.
75
+ */
76
+ readonly debugName: string;
77
+ /**
78
+ * ONLY FOR DEBUGGING!
79
+ */
80
+ debugGetDependencyGraph(): string;
81
+ /**
82
+ * This property captures the type of the change object. Do not use it at runtime!
83
+ */
84
+ readonly TChange: TChange;
85
+ }
86
+ /**
87
+ * Represents an observer that can be subscribed to an observable.
88
+ *
89
+ * If an observer is subscribed to an observable and that observable didn't signal
90
+ * a change through one of the observer methods, the observer can assume that the
91
+ * observable didn't change.
92
+ * If an observable reported a possible change, {@link IObservable.reportChanges} forces
93
+ * the observable to report an actual change if there was one.
94
+ */
95
+ export interface IObserver {
96
+ /**
97
+ * Signals that the given observable might have changed and a transaction potentially modifying that observable started.
98
+ * Before the given observable can call this method again, is must call {@link IObserver.endUpdate}.
99
+ *
100
+ * Implementations must not get/read the value of other observables, as they might not have received this event yet!
101
+ * The method {@link IObservable.reportChanges} can be used to force the observable to report the changes.
102
+ */
103
+ beginUpdate<T>(observable: IObservable<T>): void;
104
+ /**
105
+ * Signals that the transaction that potentially modified the given observable ended.
106
+ * This is a good place to react to (potential) changes.
107
+ */
108
+ endUpdate<T>(observable: IObservable<T>): void;
109
+ /**
110
+ * Signals that the given observable might have changed.
111
+ * The method {@link IObservable.reportChanges} can be used to force the observable to report the changes.
112
+ *
113
+ * Implementations must not get/read the value of other observables, as they might not have received this event yet!
114
+ * The change should be processed lazily or in {@link IObserver.endUpdate}.
115
+ */
116
+ handlePossibleChange<T>(observable: IObservable<T>): void;
117
+ /**
118
+ * Signals that the given {@link observable} changed.
119
+ *
120
+ * Implementations must not get/read the value of other observables, as they might not have received this event yet!
121
+ * The change should be processed lazily or in {@link IObserver.endUpdate}.
122
+ *
123
+ * @param change Indicates how or why the value changed.
124
+ */
125
+ handleChange<T, TChange>(observable: IObservableWithChange<T, TChange>, change: TChange): void;
126
+ }
127
+ export interface IReader {
128
+ /**
129
+ * Reads the value of an observable and subscribes to it.
130
+ */
131
+ readObservable<T>(observable: IObservableWithChange<T, any>): T;
132
+ }
133
+ export interface ISettable<T, TChange = void> {
134
+ /**
135
+ * Sets the value of the observable.
136
+ * Use a transaction to batch multiple changes (with a transaction, observers only react at the end of the transaction).
137
+ *
138
+ * @param transaction When given, value changes are handled on demand or when the transaction ends.
139
+ * @param change Describes how or why the value changed.
140
+ */
141
+ set(value: T, transaction: ITransaction | undefined, change: TChange): void;
142
+ }
143
+ export interface ITransaction {
144
+ /**
145
+ * Calls {@link Observer.beginUpdate} immediately
146
+ * and {@link Observer.endUpdate} when the transaction ends.
147
+ */
148
+ updateObserver(observer: IObserver, observable: IObservableWithChange<any, any>): void;
149
+ }
150
+ /**
151
+ * This function is used to indicate that the caller recovered from an error that indicates a bug.
152
+ */
153
+ export declare function handleBugIndicatingErrorRecovery(message: string): void;
154
+ /**
155
+ * A settable observable.
156
+ */
157
+ export interface ISettableObservable<T, TChange = void> extends IObservableWithChange<T, TChange>, ISettable<T, TChange> {
158
+ }
159
+ export interface IReaderWithStore extends IReader {
160
+ /**
161
+ * Items in this store get disposed just before the observable recomputes/reruns or when it becomes unobserved.
162
+ */
163
+ get store(): DisposableStore;
164
+ /**
165
+ * Items in this store get disposed just after the observable recomputes/reruns or when it becomes unobserved.
166
+ * This is important if the current run needs the undisposed result from the last run.
167
+ *
168
+ * Warning: Items in this store might still get disposed before dependents (that read the now disposed value in the past) are recomputed with the new (undisposed) value!
169
+ * A clean solution for this is ref counting.
170
+ */
171
+ get delayedStore(): DisposableStore;
172
+ }
173
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/observableInternal/base.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
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
+ import { onUnexpectedError } from './commonFacade/deps.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
+ * This function is used to indicate that the caller recovered from an error that indicates a bug.
13
+ */
14
+ function handleBugIndicatingErrorRecovery(message) {
15
+ const err = new Error('BugIndicatingErrorRecovery: ' + message);
16
+ onUnexpectedError(err);
17
+ console.error('recovered from an error that indicates a bug', err);
18
+ }
19
+
20
+ export { handleBugIndicatingErrorRecovery };
21
+ //# sourceMappingURL=base.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.js","sources":["../../src/observableInternal/base.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAAA;;;AAGgG;AAkLhG;;AAEE;AACI,SAAU,gCAAgC,CAAC,OAAe,EAAA;IAC/D,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,8BAA8B,GAAG,OAAO,CAAC,CAAC;IAChE,iBAAiB,CAAC,GAAG,CAAC,CAAC;AACvB,IAAA,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,GAAG,CAAC,CAAC;AACpE;;;;"}
@@ -0,0 +1,45 @@
1
+ import { IObservableWithChange, IReader } from './base';
2
+ export interface IChangeTracker<TChangeSummary> {
3
+ createChangeSummary(previousChangeSummary: TChangeSummary | undefined): TChangeSummary;
4
+ handleChange(ctx: IChangeContext, change: TChangeSummary): boolean;
5
+ beforeUpdate?(reader: IReader, change: TChangeSummary): void;
6
+ }
7
+ export interface IChangeContext {
8
+ readonly changedObservable: IObservableWithChange<any, any>;
9
+ readonly change: unknown;
10
+ /**
11
+ * Returns if the given observable caused the change.
12
+ */
13
+ didChange<T, TChange>(observable: IObservableWithChange<T, TChange>): this is {
14
+ change: TChange;
15
+ };
16
+ }
17
+ /**
18
+ * Subscribes to and records changes and the last value of the given observables.
19
+ * Don't use the key "changes", as it is reserved for the changes array!
20
+ */
21
+ export declare function recordChanges<TObs extends Record<any, IObservableWithChange<any, any>>>(obs: TObs): IChangeTracker<{
22
+ [TKey in keyof TObs]: ReturnType<TObs[TKey]['get']>;
23
+ } & {
24
+ changes: readonly ({
25
+ [TKey in keyof TObs]: {
26
+ key: TKey;
27
+ change: TObs[TKey]['TChange'];
28
+ };
29
+ }[keyof TObs])[];
30
+ }>;
31
+ /**
32
+ * Subscribes to and records changes and the last value of the given observables.
33
+ * Don't use the key "changes", as it is reserved for the changes array!
34
+ */
35
+ export declare function recordChangesLazy<TObs extends Record<any, IObservableWithChange<any, any>>>(getObs: () => TObs): IChangeTracker<{
36
+ [TKey in keyof TObs]: ReturnType<TObs[TKey]['get']>;
37
+ } & {
38
+ changes: readonly ({
39
+ [TKey in keyof TObs]: {
40
+ key: TKey;
41
+ change: TObs[TKey]['TChange'];
42
+ };
43
+ }[keyof TObs])[];
44
+ }>;
45
+ //# sourceMappingURL=changeTracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changeTracker.d.ts","sourceRoot":"","sources":["../../src/observableInternal/changeTracker.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAExD,MAAM,WAAW,cAAc,CAAC,cAAc;IAC7C,mBAAmB,CAAC,qBAAqB,EAAE,cAAc,GAAG,SAAS,GAAG,cAAc,CAAC;IACvF,YAAY,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC;IACnE,YAAY,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;CAC7D;AAED,MAAM,WAAW,cAAc;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5D,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,qBAAqB,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG,IAAI,IAAI;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;CAClG;AAED;;;EAGE;AACF,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,CAAC,GAAG,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,GACjG,cAAc,CAAC;KAAG,IAAI,IAAI,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;CAAE,GACnE;IAAE,OAAO,EAAE,SAAS,CAAC;SAAG,IAAI,IAAI,MAAM,IAAI,GAAG;YAAE,GAAG,EAAE,IAAI,CAAC;YAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAA;SAAE;KAAE,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAA;CAAE,CAAC,CAwBhH;AAED;;;EAGE;AACF,wBAAgB,iBAAiB,CAAC,IAAI,SAAS,MAAM,CAAC,GAAG,EAAE,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,IAAI,GAC9G,cAAc,CAAC;KAAG,IAAI,IAAI,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;CAAE,GACnE;IAAE,OAAO,EAAE,SAAS,CAAC;SAAG,IAAI,IAAI,MAAM,IAAI,GAAG;YAAE,GAAG,EAAE,IAAI,CAAC;YAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAA;SAAE;KAAE,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAA;CAAE,CAAC,CA+BhH"}
@@ -0,0 +1,78 @@
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
+ import { BugIndicatingError } from './commonFacade/deps.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
+ * Subscribes to and records changes and the last value of the given observables.
13
+ * Don't use the key "changes", as it is reserved for the changes array!
14
+ */
15
+ function recordChanges(obs) {
16
+ return {
17
+ createChangeSummary: (_previousChangeSummary) => {
18
+ return {
19
+ changes: [],
20
+ };
21
+ },
22
+ handleChange(ctx, changeSummary) {
23
+ for (const key in obs) {
24
+ if (ctx.didChange(obs[key])) {
25
+ changeSummary.changes.push({ key, change: ctx.change });
26
+ }
27
+ }
28
+ return true;
29
+ },
30
+ beforeUpdate(reader, changeSummary) {
31
+ for (const key in obs) {
32
+ if (key === 'changes') {
33
+ throw new BugIndicatingError('property name "changes" is reserved for change tracking');
34
+ }
35
+ changeSummary[key] = obs[key].read(reader);
36
+ }
37
+ }
38
+ };
39
+ }
40
+ /**
41
+ * Subscribes to and records changes and the last value of the given observables.
42
+ * Don't use the key "changes", as it is reserved for the changes array!
43
+ */
44
+ function recordChangesLazy(getObs) {
45
+ let obs = undefined;
46
+ return {
47
+ createChangeSummary: (_previousChangeSummary) => {
48
+ return {
49
+ changes: [],
50
+ };
51
+ },
52
+ handleChange(ctx, changeSummary) {
53
+ if (!obs) {
54
+ obs = getObs();
55
+ }
56
+ for (const key in obs) {
57
+ if (ctx.didChange(obs[key])) {
58
+ changeSummary.changes.push({ key, change: ctx.change });
59
+ }
60
+ }
61
+ return true;
62
+ },
63
+ beforeUpdate(reader, changeSummary) {
64
+ if (!obs) {
65
+ obs = getObs();
66
+ }
67
+ for (const key in obs) {
68
+ if (key === 'changes') {
69
+ throw new BugIndicatingError('property name "changes" is reserved for change tracking');
70
+ }
71
+ changeSummary[key] = obs[key].read(reader);
72
+ }
73
+ }
74
+ };
75
+ }
76
+
77
+ export { recordChanges, recordChangesLazy };
78
+ //# sourceMappingURL=changeTracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changeTracker.js","sources":["../../src/observableInternal/changeTracker.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAAA;;;AAGgG;AAqBhG;;;AAGE;AACI,SAAU,aAAa,CAA4D,GAAS,EAAA;IAGjG,OAAO;AACN,QAAA,mBAAmB,EAAE,CAAC,sBAAsB,KAAI;YAC/C,OAAO;AACN,gBAAA,OAAO,EAAE,EAAE;aACJ,CAAC;SACT;QACD,YAAY,CAAC,GAAG,EAAE,aAAa,EAAA;AAC9B,YAAA,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACtB,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;AAC3B,oBAAA,aAAa,CAAC,OAAe,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;iBACjE;aACD;AACD,YAAA,OAAO,IAAI,CAAC;SACZ;QACD,YAAY,CAAC,MAAM,EAAE,aAAa,EAAA;AACjC,YAAA,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;AACtB,gBAAA,IAAI,GAAG,KAAK,SAAS,EAAE;AACtB,oBAAA,MAAM,IAAI,kBAAkB,CAAC,yDAAyD,CAAC,CAAC;iBACxF;AACD,gBAAA,aAAa,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC3C;SACD;KACD,CAAC;AACH,CAAC;AAED;;;AAGE;AACI,SAAU,iBAAiB,CAA4D,MAAkB,EAAA;IAG9G,IAAI,GAAG,GAAqB,SAAS,CAAC;IACtC,OAAO;AACN,QAAA,mBAAmB,EAAE,CAAC,sBAAsB,KAAI;YAC/C,OAAO;AACN,gBAAA,OAAO,EAAE,EAAE;aACJ,CAAC;SACT;QACD,YAAY,CAAC,GAAG,EAAE,aAAa,EAAA;YAC9B,IAAI,CAAC,GAAG,EAAE;gBACT,GAAG,GAAG,MAAM,EAAE,CAAC;aACf;AACD,YAAA,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACtB,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;AAC3B,oBAAA,aAAa,CAAC,OAAe,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;iBACjE;aACD;AACD,YAAA,OAAO,IAAI,CAAC;SACZ;QACD,YAAY,CAAC,MAAM,EAAE,aAAa,EAAA;YACjC,IAAI,CAAC,GAAG,EAAE;gBACT,GAAG,GAAG,MAAM,EAAE,CAAC;aACf;AACD,YAAA,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;AACtB,gBAAA,IAAI,GAAG,KAAK,SAAS,EAAE;AACtB,oBAAA,MAAM,IAAI,kBAAkB,CAAC,yDAAyD,CAAC,CAAC;iBACxF;AACD,gBAAA,aAAa,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAC3C;SACD;KACD,CAAC;AACH;;;;"}
@@ -0,0 +1,25 @@
1
+ export declare class CancellationError extends Error {
2
+ constructor(message?: string);
3
+ }
4
+ export interface CancellationToken {
5
+ readonly isCancellationRequested: boolean;
6
+ readonly onCancellationRequested: (listener: () => void) => {
7
+ dispose: () => void;
8
+ };
9
+ }
10
+ export declare class CancellationTokenSource {
11
+ private _isCancelled;
12
+ private _listeners;
13
+ get token(): CancellationToken;
14
+ cancel(): void;
15
+ dispose(): void;
16
+ }
17
+ /**
18
+ * Creates a CancellationToken that is cancelled when the given disposable is disposed.
19
+ */
20
+ export declare function cancelOnDispose(disposable: {
21
+ add: (d: {
22
+ dispose: () => void;
23
+ }) => void;
24
+ }): CancellationToken;
25
+ //# sourceMappingURL=cancellation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancellation.d.ts","sourceRoot":"","sources":["../../../src/observableInternal/commonFacade/cancellation.ts"],"names":[],"mappings":"AAAA,qBAAa,iBAAkB,SAAQ,KAAK;gBAC5B,OAAO,GAAE,MAAkC;CAI1D;AAED,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,uBAAuB,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;CACvF;AAED,qBAAa,uBAAuB;IAChC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,UAAU,CAA8B;IAEhD,IAAI,KAAK,IAAI,iBAAiB,CAe7B;IAED,MAAM,IAAI,IAAI;IASd,OAAO,IAAI,IAAI;CAIlB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE;IAAE,GAAG,EAAE,CAAC,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,IAAI,CAAA;CAAE,GAAG,iBAAiB,CAI5G"}
@@ -0,0 +1,55 @@
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
+ class CancellationError extends Error {
6
+ constructor(message = 'Operation was cancelled') {
7
+ super(message);
8
+ this.name = 'CancellationError';
9
+ }
10
+ }
11
+ class CancellationTokenSource {
12
+ constructor() {
13
+ this._isCancelled = false;
14
+ this._listeners = new Set();
15
+ }
16
+ get token() {
17
+ return {
18
+ isCancellationRequested: this._isCancelled,
19
+ onCancellationRequested: (listener) => {
20
+ this._listeners.add(listener);
21
+ if (this._isCancelled) {
22
+ listener();
23
+ }
24
+ return {
25
+ dispose: () => {
26
+ this._listeners.delete(listener);
27
+ }
28
+ };
29
+ }
30
+ };
31
+ }
32
+ cancel() {
33
+ if (!this._isCancelled) {
34
+ this._isCancelled = true;
35
+ for (const listener of this._listeners) {
36
+ listener();
37
+ }
38
+ }
39
+ }
40
+ dispose() {
41
+ this.cancel();
42
+ this._listeners.clear();
43
+ }
44
+ }
45
+ /**
46
+ * Creates a CancellationToken that is cancelled when the given disposable is disposed.
47
+ */
48
+ function cancelOnDispose(disposable) {
49
+ const source = new CancellationTokenSource();
50
+ disposable.add(source);
51
+ return source.token;
52
+ }
53
+
54
+ export { CancellationError, CancellationTokenSource, cancelOnDispose };
55
+ //# sourceMappingURL=cancellation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancellation.js","sources":["../../../src/observableInternal/commonFacade/cancellation.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAAM,MAAO,iBAAkB,SAAQ,KAAK,CAAA;AACxC,IAAA,WAAA,CAAY,UAAkB,yBAAyB,EAAA;QACnD,KAAK,CAAC,OAAO,CAAC,CAAC;AACf,QAAA,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;KACnC;AACJ,CAAA;MAOY,uBAAuB,CAAA;AAApC,IAAA,WAAA,GAAA;QACY,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;AACrB,QAAA,IAAA,CAAA,UAAU,GAAoB,IAAI,GAAG,EAAE,CAAC;KAgCnD;AA9BG,IAAA,IAAI,KAAK,GAAA;QACL,OAAO;YACH,uBAAuB,EAAE,IAAI,CAAC,YAAY;AAC1C,YAAA,uBAAuB,EAAE,CAAC,QAAoB,KAAI;AAC9C,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC9B,gBAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACnB,oBAAA,QAAQ,EAAE,CAAC;iBACd;gBACD,OAAO;oBACH,OAAO,EAAE,MAAK;AACV,wBAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;qBACpC;iBACJ,CAAC;aACL;SACJ,CAAC;KACL;IAED,MAAM,GAAA;AACF,QAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;AACpB,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;AACzB,YAAA,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE;AACpC,gBAAA,QAAQ,EAAE,CAAC;aACd;SACJ;KACJ;IAED,OAAO,GAAA;QACH,IAAI,CAAC,MAAM,EAAE,CAAC;AACd,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;KAC3B;AACJ,CAAA;AAED;;AAEG;AACG,SAAU,eAAe,CAAC,UAAyD,EAAA;AACrF,IAAA,MAAM,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC;AAC7C,IAAA,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,OAAO,MAAM,CAAC,KAAK,CAAC;AACxB;;;;"}
@@ -0,0 +1,25 @@
1
+ import { IDisposable } from '../../disposables';
2
+ export { DisposableStore, IDisposable } from '../../disposables';
3
+ export declare function markAsDisposed(_obj: any): void;
4
+ export declare function trackDisposable(_obj: any): void;
5
+ export declare function assertFn(_condition: () => boolean): void;
6
+ export declare function toDisposable(fn: () => void): IDisposable;
7
+ export declare class BugIndicatingError extends Error {
8
+ constructor(message?: string);
9
+ }
10
+ export declare function onBugIndicatingError(error: any): void;
11
+ export declare function onUnexpectedError(error: any): void;
12
+ export type EqualityComparer<T> = (a: T, b: T) => boolean;
13
+ /**
14
+ * Compares two items for equality using strict equality.
15
+ */
16
+ export declare const strictEquals: EqualityComparer<any>;
17
+ export interface IValueWithChangeEvent<T> {
18
+ readonly onDidChange: Event<void>;
19
+ get value(): T;
20
+ }
21
+ export interface Event<T> {
22
+ (listener: (e: T) => any, thisArgs?: any): IDisposable;
23
+ }
24
+ export declare function isDefined<T>(arg: T | undefined | null): arg is T;
25
+ //# sourceMappingURL=deps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../../src/observableInternal/commonFacade/deps.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEjE,wBAAgB,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAC9C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAC/C;AAED,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,OAAO,GAAG,IAAI,CACxD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,IAAI,GAAG,WAAW,CAIxD;AAED,qBAAa,kBAAmB,SAAQ,KAAK;gBAChC,OAAO,CAAC,EAAE,MAAM;CAS5B;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,CAGrD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI,CAElD;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC;AAE1D;;EAEE;AACF,eAAO,MAAM,YAAY,EAAE,gBAAgB,CAAC,GAAG,CAAqB,CAAC;AAErE,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,KAAK,IAAI,CAAC,CAAC;CACf;AAED,MAAM,WAAW,KAAK,CAAC,CAAC;IACvB,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,WAAW,CAAC;CACvD;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,SAAS,GAAG,IAAI,GAAG,GAAG,IAAI,CAAC,CAEhE"}
@@ -0,0 +1,37 @@
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
+ function toDisposable(fn) {
10
+ return {
11
+ dispose: fn
12
+ };
13
+ }
14
+ class BugIndicatingError extends Error {
15
+ constructor(message) {
16
+ super(message || 'An unexpected bug occurred.');
17
+ Object.setPrototypeOf(this, BugIndicatingError.prototype);
18
+ // Because we know for sure only buggy code throws this,
19
+ // we definitely want to break here and fix the bug.
20
+ // eslint-disable-next-line no-debugger
21
+ // debugger;
22
+ }
23
+ }
24
+ function onBugIndicatingError(error) {
25
+ // debugger;
26
+ throw error;
27
+ }
28
+ function onUnexpectedError(error) {
29
+ console.error('Unexpected error:', error);
30
+ }
31
+ /**
32
+ * Compares two items for equality using strict equality.
33
+ */
34
+ const strictEquals = (a, b) => a === b;
35
+
36
+ export { BugIndicatingError, onBugIndicatingError, onUnexpectedError, strictEquals, toDisposable };
37
+ //# sourceMappingURL=deps.js.map