API Reference

ArrayProxyFactoryclass

Creates array proxies that emit index-scoped changes for array mutations.

Overview

Array proxy factory and contracts that emit semantic index/mutation changes.

Import

import { ArrayProxyFactory } from '@rs-x/state-manager';

Example

import { InjectionContainer } from '@rs-x/core';
import {
  RsXStateManagerInjectionTokens,
  RsXStateManagerModule,
  type IArrayProxyFactory,
} from '@rs-x/state-manager';

await InjectionContainer.load(RsXStateManagerModule);

// Resolve from DI container (do not construct this service directly).
const arrayProxy = InjectionContainer.get<IArrayProxyFactory>(
  RsXStateManagerInjectionTokens.IArrayProxyFactory,
);
console.log(arrayProxy);

Constructor injection example

import { Inject } from '@rs-x/core';
import {
  RsXStateManagerInjectionTokens,
  type IArrayProxyFactory,
} from '@rs-x/state-manager';

class MyConsumer {
  constructor(
    @Inject(RsXStateManagerInjectionTokens.IArrayProxyFactory)
    private readonly dependency: IArrayProxyFactory,
  ) {}
}

Members

5 members in this class.

constructor
constructorpublic
constructor( @Inject(RsXCoreInjectionTokens.IProxyRegistry) private readonly _proxyRegistry: IProxyRegistry)

Parameters

NameTypeRequired
_proxyRegistryIProxyRegistryrequired
getId
methodpublic
public override getId(data: IArrayProxyIdData): unknown[]

Parameters

NameTypeRequired
dataIArrayProxyIdDatarequired

Returns

unknown[]

createId
methodprotected
protected override createId(data: IArrayProxyIdData): unknown[]

Parameters

NameTypeRequired
dataIArrayProxyIdDatarequired

Returns

unknown[]

createInstance
methodprotected
protected override createInstance(
  data: IArrayProxyData,
  id: unknown[]
): IArrayObserverProxyPair

Parameters

NameTypeRequired
dataIArrayProxyDatarequired
idunknown[]required
releaseInstance
methodprotected
protected override releaseInstance(
  arrayObserverWithProxy: IArrayObserverProxyPair,
  id: unknown[]
): void

Parameters

NameTypeRequired
arrayObserverWithProxyIArrayObserverProxyPairrequired
idunknown[]required

Returns

void