The history viewer controller replaces the CMSPageHistoryController and uses the React based HistoryViewerField} to display the history for a {@link DataObject} that has the {@link Versioned extension.

The history controller factory decides which CMS history controller to use, out of the default from the silverstripe/cms module or the history viewer controller from this module, depending on the current page type

The HistoryViewerController provides AJAX endpoints for React to enable functionality, such as retrieving the form schema.