API Reference

DateProxyFactoryclass

Creates date proxies that map setter calls to semantic date-part change events.

Overview

Date proxy factory that maps setter calls to semantic date-part changes.

Import

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

Example

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

await InjectionContainer.load(RsXStateManagerModule);

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

Constructor injection example

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

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

Members

5 members in this class.

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

Parameters

NameTypeRequired
_proxyRegistryIProxyRegistryrequired
createInstance
methodprotected
protected override createInstance(
  dateProxyData: IDateProxyData,
  id: number
): IDateObserverProxyPair

Parameters

NameTypeRequired
dateProxyDataIDateProxyDatarequired
idnumberrequired
createUniqueId
methodprotected
protected override createUniqueId(_data: IDateProxyIdData): number

Parameters

NameTypeRequired
_dataIDateProxyIdDatarequired

Returns

number

getGroupId
methodprotected
protected override getGroupId(data: IDateProxyIdData): Date

Parameters

NameTypeRequired
dataIDateProxyIdDatarequired

Returns

Date

getGroupMemberId
methodprotected
protected override getGroupMemberId( data: IDateProxyIdData): IIndexWatchRule | undefined

Parameters

NameTypeRequired
dataIDateProxyIdDatarequired

Returns

IIndexWatchRule | undefined