This repository has been archived on 2022-08-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
outline/server/models/Revision.js
Tom Moor d0bee23432 Version History (#768)
* Stash. Super rough progress

* Stash

* 'h' how toggles history panel
Add documents.restore endpoint

* Add tests for documents.restore endpoint

* Document restore endpoint

* Tiding, RevisionMenu, remove scroll dep

* Add history menu item

* Paginate loading

* Fixed: Error boundary styling
Select first revision faster

* Diff summary, styling

* Add history loading placeholder
Fix move modal not opening

* Fixes: Refreshing page on specific revision

* documentation for document.revision

* Better handle versions with no text changes (will no longer be created)
2018-09-29 21:24:07 -07:00

50 lines
903 B
JavaScript

// @flow
import { DataTypes, sequelize } from '../sequelize';
const Revision = sequelize.define('revision', {
id: {
type: DataTypes.UUID,
defaultValue: DataTypes.UUIDV4,
primaryKey: true,
},
title: DataTypes.STRING,
text: DataTypes.TEXT,
userId: {
type: 'UUID',
allowNull: false,
references: {
model: 'users',
},
},
documentId: {
type: 'UUID',
allowNull: false,
references: {
model: 'documents',
onDelete: 'CASCADE',
},
},
});
Revision.associate = models => {
Revision.belongsTo(models.Document, {
as: 'document',
foreignKey: 'documentId',
});
Revision.belongsTo(models.User, {
as: 'user',
foreignKey: 'userId',
});
Revision.addScope(
'defaultScope',
{
include: [{ model: models.User, as: 'user', paranoid: false }],
},
{ override: true }
);
};
export default Revision;