@splitsoftware/splitio-commons
Version:
Split JavaScript SDK common components
18 lines (13 loc) • 817 B
text/typescript
import { ERROR_CLIENT_DESTROYED, CLIENT_NOT_READY } from '../../logger/constants';
import { ILogger } from '../../logger/types';
import { IReadinessManager } from '../../readiness/types';
export function validateIfNotDestroyed(log: ILogger, readinessManager: IReadinessManager, method: string): boolean {
if (!readinessManager.isDestroyed()) return true;
log.error(ERROR_CLIENT_DESTROYED, [method]);
return false;
}
export function validateIfOperational(log: ILogger, readinessManager: IReadinessManager, method: string, featureFlagNameOrNames?: string | string[] | false) {
if (readinessManager.isReady() || readinessManager.isReadyFromCache()) return true;
log.warn(CLIENT_NOT_READY, [method, featureFlagNameOrNames ? ` for feature flag ${featureFlagNameOrNames.toString()}` : '']);
return false;
}