API Reference

SetProxyFactoryclass

Creates set proxies that emit member-scoped changes for add/delete/clear operations.

Overview

Set proxy factory and contracts that emit semantic membership changes.

Import

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

Example

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

await InjectionContainer.load(RsXStateManagerModule);

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

Constructor injection example

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

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

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: ISetProxifyIdData): Set<unknown>

Parameters

NameTypeRequired
dataISetProxifyIdDatarequired

Returns

Set<unknown>

createId
methodprotected
protected override createId(data: ISetProxifyIdData): Set<unknown>

Parameters

NameTypeRequired
dataISetProxifyIdDatarequired

Returns

Set<unknown>

createInstance
methodprotected
protected override createInstance(
  data: ISetProxifyData,
  id: Set<unknown>
): ISetObserverProxyPair

Parameters

NameTypeRequired
dataISetProxifyDatarequired
idSet<unknown>required
releaseInstance
methodprotected
protected override releaseInstance( setObserverWithProxy: ISetObserverProxyPair): void

Parameters

NameTypeRequired
setObserverWithProxyISetObserverProxyPairrequired

Returns

void