55 lines
2.4 KiB
TypeScript
55 lines
2.4 KiB
TypeScript
import { AutorunObserver } from './autorun.js';
|
|
import { IObservable, TransactionImpl } from './base.js';
|
|
import { Derived } from './derived.js';
|
|
import { FromEventObservable } from './utils.js';
|
|
export declare function setLogger(logger: IObservableLogger): void;
|
|
export declare function getLogger(): IObservableLogger | undefined;
|
|
export declare function logObservable(obs: IObservable<any>): void;
|
|
interface IChangeInformation {
|
|
oldValue: unknown;
|
|
newValue: unknown;
|
|
change: unknown;
|
|
didChange: boolean;
|
|
hadValue: boolean;
|
|
}
|
|
export interface IObservableLogger {
|
|
handleObservableChanged(observable: IObservable<any>, info: IChangeInformation): void;
|
|
handleFromEventObservableTriggered(observable: FromEventObservable<any, any>, info: IChangeInformation): void;
|
|
handleAutorunCreated(autorun: AutorunObserver): void;
|
|
handleAutorunTriggered(autorun: AutorunObserver): void;
|
|
handleAutorunFinished(autorun: AutorunObserver): void;
|
|
handleDerivedCreated(observable: Derived<any>): void;
|
|
handleDerivedRecomputed(observable: Derived<any>, info: IChangeInformation): void;
|
|
handleDerivedCleared(observable: Derived<any>): void;
|
|
handleBeginTransaction(transaction: TransactionImpl): void;
|
|
handleEndTransaction(): void;
|
|
}
|
|
export declare class ConsoleObservableLogger implements IObservableLogger {
|
|
private indentation;
|
|
private _filteredObjects;
|
|
addFilteredObj(obj: unknown): void;
|
|
private _isIncluded;
|
|
private textToConsoleArgs;
|
|
private formatInfo;
|
|
handleObservableChanged(observable: IObservable<unknown>, info: IChangeInformation): void;
|
|
private readonly changedObservablesSets;
|
|
formatChanges(changes: Set<IObservable<any>>): ConsoleText | undefined;
|
|
handleDerivedCreated(derived: Derived<unknown>): void;
|
|
handleDerivedRecomputed(derived: Derived<unknown>, info: IChangeInformation): void;
|
|
handleDerivedCleared(derived: Derived<unknown>): void;
|
|
handleFromEventObservableTriggered(observable: FromEventObservable<any, any>, info: IChangeInformation): void;
|
|
handleAutorunCreated(autorun: AutorunObserver): void;
|
|
handleAutorunTriggered(autorun: AutorunObserver): void;
|
|
handleAutorunFinished(autorun: AutorunObserver): void;
|
|
handleBeginTransaction(transaction: TransactionImpl): void;
|
|
handleEndTransaction(): void;
|
|
}
|
|
type ConsoleText = (ConsoleText | undefined)[] | {
|
|
text: string;
|
|
style: string;
|
|
data?: unknown[];
|
|
} | {
|
|
data: unknown[];
|
|
};
|
|
export {};
|