UNPKG

reduct-js

Version:

ReductStore Client SDK for Javascript/NodeJS/Typescript

71 lines (70 loc) 1.7 kB
import { ReplicationSettings, } from "./ReplicationSettings"; import { Diagnostics } from "./Diagnostics"; /** * Original Replication Info */ export class OriginalReplicationInfo { constructor() { this.name = ""; this.is_active = false; this.is_provisioned = false; this.pending_records = 0n; } } /** * Replication info */ export class ReplicationInfo { constructor() { /** * Replication name */ this.name = ""; /** * Remote instance is available and replication is active */ this.isActive = false; /** * Replication is provisioned */ this.isProvisioned = false; /** * Number of records pending replication */ this.pendingRecords = 0n; } static parse(data) { return { name: data.name, isActive: data.is_active, isProvisioned: data.is_provisioned, pendingRecords: BigInt(data.pending_records), }; } } /** * Replication full info */ export class FullReplicationInfo { constructor() { /** * Replication info */ this.info = new ReplicationInfo(); /** * Replication settings */ this.settings = new ReplicationSettings(); /** * Replication statistics */ this.diagnostics = new Diagnostics(); } static parse(data) { return { info: ReplicationInfo.parse(data.info), settings: ReplicationSettings.parse(data.settings), diagnostics: Diagnostics.parse(data.diagnostics), }; } }