restoreVersion property

MutationSignal<DeskDocument, ({String documentId, String versionId})> restoreVersion
latefinal

Restores a previous version's data into the current draft by fetching the reconstructed version state and pushing it through updateDocumentData. Does not auto-publish.

Implementation

late final restoreVersion =
    mutationSignal<DeskDocument, ({String documentId, String versionId})>(
      (args) async {
        final versionData = await dataSource.getDocumentVersionData(
          args.versionId,
        );
        final updated = await dataSource.updateDocumentData(
          args.documentId,
          versionData ?? {},
        );
        versionsContainer(args.documentId).awaitableReload();
        selectedDocumentContainer(args.documentId).awaitableReload();
        return updated;
      },
      debugLabel: 'restoreVersion',
    );