LocalOnlyCollectionUtils

Interface: LocalOnlyCollectionUtils

Defined in: packages/db/src/local-only.ts:40

Local-only collection utilities type

Extends

Indexable

ts
[key: string]: any
[key: string]: any

Properties

acceptMutations()

ts
acceptMutations: (transaction) => void;
acceptMutations: (transaction) => void;

Defined in: packages/db/src/local-only.ts:58

Accepts mutations from a transaction that belong to this collection and persists them. This should be called in your transaction's mutationFn to persist local-only data.

Parameters

transaction

The transaction containing mutations to accept

mutations

PendingMutation<Record<string, unknown>, OperationType, Collection<Record<string, unknown>, any, any, any, any>>[]

Returns

void

Example

ts
const localData = createCollection(localOnlyCollectionOptions({...}))

const tx = createTransaction({
  mutationFn: async ({ transaction }) => {
    // Make API call first
    await api.save(...)
    // Then persist local-only mutations after success
    localData.utils.acceptMutations(transaction)
  }
})
const localData = createCollection(localOnlyCollectionOptions({...}))

const tx = createTransaction({
  mutationFn: async ({ transaction }) => {
    // Make API call first
    await api.save(...)
    // Then persist local-only mutations after success
    localData.utils.acceptMutations(transaction)
  }
})