Path: blob/main/extensions/copilot/src/util/vs/base/common/observableInternal/index.ts
13406 views
//!!! DO NOT modify, this file was COPIED from 'microsoft/vscode'12/*---------------------------------------------------------------------------------------------3* Copyright (c) Microsoft Corporation. All rights reserved.4* Licensed under the MIT License. See License.txt in the project root for license information.5*--------------------------------------------------------------------------------------------*/67// This is a facade for the observable implementation. Only import from here!89export { observableValueOpts } from './observables/observableValueOpts';10export { autorun, autorunDelta, autorunHandleChanges, autorunOpts, autorunWithStore, autorunWithStoreHandleChanges, autorunIterableDelta, autorunSelfDisposable } from './reactions/autorun';11export { type IObservable, type IObservableWithChange, type IObserver, type IReader, type ISettable, type ISettableObservable, type ITransaction } from './base';12export { disposableObservableValue } from './observables/observableValue';13export { derived, derivedDisposable, derivedHandleChanges, derivedOpts, derivedWithSetter, derivedWithStore } from './observables/derived';14export { type IDerivedReader } from './observables/derivedImpl';15export { ObservableLazy, ObservableLazyPromise, ObservablePromise, PromiseResult, } from './utils/promise';16export { derivedWithCancellationToken, waitForState } from './utils/utilsCancellation';17export {18debouncedObservable, debouncedObservable2, derivedObservableWithCache,19derivedObservableWithWritableCache, keepObserved, mapObservableArrayCached, observableFromPromise,20recomputeInitiallyAndOnChange,21signalFromObservable, wasEventTriggeredRecently,22isObservable,23} from './utils/utils';24export { type DebugOwner } from './debugName';25export { type IChangeContext, type IChangeTracker, recordChanges, recordChangesLazy } from './changeTracker';26export { constObservable } from './observables/constObservable';27export { type IObservableSignal, observableSignal } from './observables/observableSignal';28export { observableFromEventOpts } from './observables/observableFromEvent';29export { observableSignalFromEvent } from './observables/observableSignalFromEvent';30export { asyncTransaction, globalTransaction, subtransaction, transaction, TransactionImpl } from './transaction';31export { observableFromValueWithChangeEvent, ValueWithChangeEventFromObservable } from './utils/valueWithChangeEvent';32export { runOnChange, runOnChangeWithCancellationToken, runOnChangeWithStore, type RemoveUndefined } from './utils/runOnChange';33export { derivedConstOnceDefined, latestChangedValue } from './experimental/utils';34export { observableFromEvent } from './observables/observableFromEvent';35export { observableValue } from './observables/observableValue';3637export { ObservableSet } from './set';38export { ObservableMap } from './map';39export { DebugLocation } from './debugLocation';4041import { addLogger, setLogObservableFn } from './logging/logging';42import { ConsoleObservableLogger, logObservableToConsole } from './logging/consoleObservableLogger';43import { DevToolsLogger } from './logging/debugger/devToolsLogger';44import { env } from '../process';45import { _setDebugGetObservableGraph } from './observables/baseObservable';46import { debugGetObservableGraph } from './logging/debugGetDependencyGraph';4748_setDebugGetObservableGraph(debugGetObservableGraph);49setLogObservableFn(logObservableToConsole);5051// Remove "//" in the next line to enable logging52const enableLogging = false53// || Boolean("true") // done "weirdly" so that a lint warning prevents you from pushing this54;5556if (enableLogging) {57addLogger(new ConsoleObservableLogger());58}5960if (env && env['VSCODE_DEV_DEBUG_OBSERVABLES']) {61// To debug observables you also need the extension "ms-vscode.debug-value-editor"62addLogger(DevToolsLogger.getInstance());63}646566