OfflineDomain
@mineflow/client-react / OfflineDomain
Interface: OfflineDomain<TOps>
Defined in: client-react/src/offline-domain.ts:70
Поверхность offline-домена, возвращаемая createOfflineDomain:
данные для live-хуков (scope/ops/mutationKeys) + механика устойчивости
(registerDefaults/useOutbox/useRetryFailed).
Type Parameters
| Type Parameter |
|---|
TOps extends Record<string, OfflineOp> |
Properties
mutationKeys
readonly mutationKeys: { [K in string | number | symbol]: readonly string[] };
Defined in: client-react/src/offline-domain.ts:76
Стабильные mutationKey'и (ключи совпадают с ops).
ops
readonly ops: TOps;
Defined in: client-react/src/offline-domain.ts:74
Операции-эндпоинты домена (используются и в live-хуках, и в replay).
scope
readonly scope: string;
Defined in: client-react/src/offline-domain.ts:72
Общий scope.id домена (для строго-FIFO replay в live-хуках).
Methods
registerDefaults()
registerDefaults(queryClient: QueryClient, client: MineflowClient): void;
Defined in: client-react/src/offline-domain.ts:83
Регистрирует mutation defaults, чтобы мутации, восстановленные из персиста
ПОСЛЕ рестарта (у них нет mutationFn — только key + variables), знали, как
себя проиграть. Вызывать ВНУТРИ MineflowProvider (нужен client), до
resumePausedMutations.
Parameters
| Parameter | Type |
|---|---|
queryClient | QueryClient |
client | MineflowClient |
Returns
void
useOutbox()
useOutbox(): OutboxStatus;
Defined in: client-react/src/offline-domain.ts:85
Сводка outbox'а: сколько write-мутаций домена в очереди/в полёте/упало.
Returns
useRetryFailed()
useRetryFailed(): () => void;
Defined in: client-react/src/offline-domain.ts:92
Повторяет упавшие (error) write-мутации домена. Re-execute переиспользует
state.variables (тот же стабильный Idempotency-Key) → повтор идемпотентен
на бэке. Errored-мутации НЕ резюмятся resumePausedMutations (только
paused), поэтому нужен явный re-execute.
Returns
() => void