Overview
Factory set that selects observer/proxy strategies for arrays, maps, sets, dates, promises, observables, and plain objects.
API Reference
Base class for object observer/proxy pair factories with shared wiring and observer-group integration.
import { AbstractObjectObserverProxyPairFactory } from '@rs-x/state-manager';import { AbstractObjectObserverProxyPairFactory } from '@rs-x/state-manager';
class MyAbstractObjectObserverProxyPairFactory extends AbstractObjectObserverProxyPairFactory {
// implement abstract members
}6 members in this abstract class.
protected constructor(
public readonly priority: number,
private readonly _observerRootObserver: boolean,
protected readonly _errorLog: IErrorLog,
protected readonly _indexAccessor: IIndexValueAccessor,
protected readonly _objectPropertyObserverProxyPairManager: IObjectPropertyObserverProxyPairManager
)Parameters
| Name | Type | Required |
|---|---|---|
| priority | number | required |
| _observerRootObserver | boolean | required |
| _errorLog | IErrorLog | required |
| _indexAccessor | IIndexValueAccessor | required |
| _objectPropertyObserverProxyPairManager | IObjectPropertyObserverProxyPairManager | required |
public abstract applies(object: object): booleanParameters
| Name | Type | Required |
|---|---|---|
| object | object | required |
Returns
boolean
public create(
owner: IDisposableOwner,
data: TData
): IObserverProxyPair<TTarget>Parameters
| Name | Type | Required |
|---|---|---|
| owner | IDisposableOwner | required |
| data | TData | required |
Returns
IObserverProxyPair<TTarget>
protected createDisposableOwner(
owner: IDisposableOwner,
_data: TData
): IDisposableOwnerParameters
| Name | Type | Required |
|---|---|---|
| owner | IDisposableOwner | required |
| _data | TData | required |
Returns
protected abstract createRootObserver( data: TData): IObserverProxyPair<TTarget> | undefinedParameters
| Name | Type | Required |
|---|---|---|
| data | TData | required |
Returns
IObserverProxyPair<TTarget> | undefined
protected onObserverGroupCreate(
target: TTarget,
observerGroup: ObserverGroup,
indexWatchRule?: IIndexWatchRule
): voidParameters
| Name | Type | Required |
|---|---|---|
| target | TTarget | required |
| observerGroup | ObserverGroup | required |
| indexWatchRule? | IIndexWatchRule | optional |
Returns
void