Db Replication

Functions

Functions

createMetricsStorage

Create a metrics storage instance with default configuration

Signature:

createMetricsStorage(config?: Partial<StorageConfig> | undefined): ReplicationMetricsStorage

Parameters:

ParameterTypeRequiredDescription
configPartial<StorageConfig> | undefinedNo

Returns:

ReplicationMetricsStorage -

statusToSnapshot

Convert ReplicationStatus to MetricSnapshot

Signature:

statusToSnapshot(status: ReplicationStatus): MetricSnapshot

Parameters:

ParameterTypeRequiredDescription
statusReplicationStatusYes

Returns:

MetricSnapshot -

createThrottledFunction

Create throttled version of a function with performance tracking

Signature:

createThrottledFunction(fn: T, wait: number, options?: { leading?: boolean; trailing?: boolean; trackPerformance?: boolean; }): T & { flush: () => void; cancel: () => void; }

Parameters:

ParameterTypeRequiredDescription
fnTYes
waitnumberYes
options{ leading?: boolean; trailing?: boolean; trackPerformance?: boolean; }No

Returns:

T & { flush: () => void; cancel: () => void; } -

createDebouncedFunction

Create debounced version of a function with performance tracking

Signature:

createDebouncedFunction(fn: T, wait: number, options?: { leading?: boolean; trailing?: boolean; maxWait?: number; trackPerformance?: boolean; }): T & { flush: () => void; cancel: () => void; }

Parameters:

ParameterTypeRequiredDescription
fnTYes
waitnumberYes
options{ leading?: boolean; trailing?: boolean; maxWait?: number; trackPerformance?: boolean; }No

Returns:

T & { flush: () => void; cancel: () => void; } -

ReplicationProvider

Signature:

ReplicationProvider({
  children,
  authToken,
  domainId,
  userId,
  serverUrl,
  serverProtocol
}: ReplicationProviderProps): React.JSX.Element

Parameters:

ParameterTypeRequiredDescription
`{
children,
authToken,
domainId,
userId,
serverUrl,
serverProtocol
}`ReplicationProviderPropsYes

Returns:

React.JSX.Element -

createRecoveryManager

Create a default recovery manager instance

Signature:

createRecoveryManager(config?: Partial<RecoveryConfig> | undefined): ReplicationRecoveryManager

Parameters:

ParameterTypeRequiredDescription
configPartial<RecoveryConfig> | undefinedNo

Returns:

ReplicationRecoveryManager -

isRecoverableError

Determine if an error is recoverable

Signature:

isRecoverableError(error: Error): boolean

Parameters:

ParameterTypeRequiredDescription
errorErrorYes

Returns:

boolean -

getSuggestedStrategies

Get suggested recovery strategies for an error

Signature:

getSuggestedStrategies(error: Error): string[]

Parameters:

ParameterTypeRequiredDescription
errorErrorYes

Returns:

string[] -

withRetryRecovery

Create retry observable with recovery

Signature:

withRetryRecovery(source: Observable<T>, context: RecoveryContext, recoveryManager?: ReplicationRecoveryManager | undefined): Observable<T>

Parameters:

ParameterTypeRequiredDescription
sourceObservable<T>Yes
contextRecoveryContextYes
recoveryManagerReplicationRecoveryManager | undefinedNo

Returns:

Observable<T> -

useReplicationMonitoring

Enhanced replication monitoring hook with comprehensive RxDB observable integration Provides real-time monitoring of replication states, events, and performance metrics

Signature:

useReplicationMonitoring(options?: UseReplicationMonitoringOptions): UseReplicationMonitoringReturn

Parameters:

ParameterTypeRequiredDescription
optionsUseReplicationMonitoringOptionsNo

Returns:

UseReplicationMonitoringReturn -

useReplicationSync

React hook for managing replication sync with authentication

Signature:

useReplicationSync(options: UseReplicationSyncOptions): { status: ReplicationStatus; startSync: () => Promise<void>; stopSync: () => void; forceSync: () => Promise<void>; isReady: boolean; }

Parameters:

ParameterTypeRequiredDescription
optionsUseReplicationSyncOptionsYes

Returns:

{ status: ReplicationStatus; startSync: () => Promise<void>; stopSync: () => void; forceSync: () => Promise<void>; isReady: boolean; } -

withReplicationSync

Higher-order component for automatic replication sync

Signature:

withReplicationSync(Component: React.ComponentType<P>, options: UseReplicationSyncOptions): (props: P) => React.JSX.Element

Parameters:

ParameterTypeRequiredDescription
ComponentReact.ComponentType<P>Yes
optionsUseReplicationSyncOptionsYes

Returns:

(props: P) => React.JSX.Element -

useRxdbServerReplication

Hook for RxDB server replication using the official RxDB server replication plugin Connects to the RxDB server running at https://localhost:3443 (nginx HTTP/3 reverse proxy)

Signature:

useRxdbServerReplication(config: RxdbServerReplicationConfig): RxdbServerReplicationState

Parameters:

ParameterTypeRequiredDescription
configRxdbServerReplicationConfigYes

Returns:

RxdbServerReplicationState -

useMultipleRxdbServerReplications

Hook for managing multiple collection replications

Signature:

useMultipleRxdbServerReplications(collections: { collection: RxCollection; name: string; }[], config?: Partial<Omit<RxdbServerReplicationConfig, "collection" | "collectionName">> | undefined): { replications: RxdbServerReplicationState[]; isAllConnected: boolean; isAnyReplicating: boolean; hasErrors: boolean; totalDocs: number; totalPending: number; startAll: () => void; stopAll: () => void; restartAll: () => void; }

Parameters:

ParameterTypeRequiredDescription
collections{ collection: RxCollection; name: string; }[]Yes
configPartial<Omit<RxdbServerReplicationConfig, "collection" | "collectionName">> | undefinedNo

Returns:

{ replications: RxdbServerReplicationState[]; isAllConnected: boolean; isAnyReplicating: boolean; hasErrors: boolean; totalDocs: number; totalPending: number; startAll: () => void; stopAll: () => void; restartAll: () => void; } -

convertToUTC

Convert a date to UTC ISO 8601 string format

Signature:

convertToUTC(date: string | Date): string

Parameters:

ParameterTypeRequiredDescription
datestring | DateYes

Returns:

string -

fromUTC

Convert UTC string to local Date object

Signature:

fromUTC(utcString: string): Date

Parameters:

ParameterTypeRequiredDescription
utcStringstringYes

Returns:

Date -

formatUTC

Format UTC date string for display

Signature:

formatUTC(utcString: string, formatString?: string): string

Parameters:

ParameterTypeRequiredDescription
utcStringstringYes
formatStringstringNo

Returns:

string -

getCurrentUTC

Get current UTC timestamp as ISO string

Signature:

getCurrentUTC(): string

Returns:

string -

isValidUTC

Check if a string is valid UTC ISO 8601 format

Signature:

isValidUTC(dateString: string): boolean

Parameters:

ParameterTypeRequiredDescription
dateStringstringYes

Returns:

boolean -

Previous
Classes