UNPKG

armisa-models

Version:
28 lines (25 loc) 1.23 kB
import { IResultOfValidate } from "../.."; import { IMainStateFactory } from "../Types"; export class Cach { constructor( public value: any, public hasChange: any, public validation: any ) { } public static isCached(obj: { mainStateFactory: IMainStateFactory, factoryFieldName: string }) { return obj.mainStateFactory.any.cach && obj.mainStateFactory.any.cach[obj.factoryFieldName] && obj.mainStateFactory.any.cach[obj.factoryFieldName] instanceof Cach; } public static getCached(obj: { mainStateFactory: IMainStateFactory, factoryFieldName: string }) { return obj.mainStateFactory.any.cach[obj.factoryFieldName] as Cach; } public static clear(obj: { mainStateFactory: IMainStateFactory, factoryFieldName: string }) { delete obj.mainStateFactory.any.cach[obj.factoryFieldName]; } public static setValue(obj: { mainStateFactory: IMainStateFactory, factoryFieldName: string, hasChange: boolean, validation: IResultOfValidate }, value: any) { const result = new Cach(value, obj.hasChange, obj.validation); obj.mainStateFactory.any.cach[obj.factoryFieldName] = result; } }