[chore] added prettier
This commit is contained in:
@@ -1,22 +1,15 @@
|
||||
import slug from 'slug';
|
||||
import _ from 'lodash';
|
||||
import randomstring from 'randomstring';
|
||||
import {
|
||||
DataTypes,
|
||||
sequelize,
|
||||
} from '../sequelize';
|
||||
import {
|
||||
convertToMarkdown,
|
||||
} from '../../frontend/utils/markdown';
|
||||
import {
|
||||
truncateMarkdown,
|
||||
} from '../utils/truncate';
|
||||
import { DataTypes, sequelize } from '../sequelize';
|
||||
import { convertToMarkdown } from '../../frontend/utils/markdown';
|
||||
import { truncateMarkdown } from '../utils/truncate';
|
||||
import User from './User';
|
||||
import Revision from './Revision';
|
||||
|
||||
slug.defaults.mode = 'rfc3986';
|
||||
|
||||
const createRevision = async (doc) => {
|
||||
const createRevision = async doc => {
|
||||
// Create revision of the current (latest)
|
||||
await Revision.create({
|
||||
title: doc.title,
|
||||
@@ -28,7 +21,7 @@ const createRevision = async (doc) => {
|
||||
});
|
||||
};
|
||||
|
||||
const documentBeforeSave = async (doc) => {
|
||||
const documentBeforeSave = async doc => {
|
||||
doc.html = convertToMarkdown(doc.text);
|
||||
doc.preview = truncateMarkdown(doc.text, 160);
|
||||
|
||||
@@ -52,50 +45,58 @@ const documentBeforeSave = async (doc) => {
|
||||
return doc;
|
||||
};
|
||||
|
||||
const Document = sequelize.define('document', {
|
||||
id: { type: DataTypes.UUID, defaultValue: DataTypes.UUIDV4, primaryKey: true },
|
||||
urlId: { type: DataTypes.STRING, primaryKey: true },
|
||||
private: { type: DataTypes.BOOLEAN, defaultValue: true },
|
||||
title: DataTypes.STRING,
|
||||
text: DataTypes.TEXT,
|
||||
html: DataTypes.TEXT,
|
||||
preview: DataTypes.TEXT,
|
||||
revisionCount: { type: DataTypes.INTEGER, defaultValue: 0 },
|
||||
const Document = sequelize.define(
|
||||
'document',
|
||||
{
|
||||
id: {
|
||||
type: DataTypes.UUID,
|
||||
defaultValue: DataTypes.UUIDV4,
|
||||
primaryKey: true,
|
||||
},
|
||||
urlId: { type: DataTypes.STRING, primaryKey: true },
|
||||
private: { type: DataTypes.BOOLEAN, defaultValue: true },
|
||||
title: DataTypes.STRING,
|
||||
text: DataTypes.TEXT,
|
||||
html: DataTypes.TEXT,
|
||||
preview: DataTypes.TEXT,
|
||||
revisionCount: { type: DataTypes.INTEGER, defaultValue: 0 },
|
||||
|
||||
parentDocumentId: DataTypes.UUID,
|
||||
createdById: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'users',
|
||||
parentDocumentId: DataTypes.UUID,
|
||||
createdById: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'users',
|
||||
},
|
||||
},
|
||||
},
|
||||
lastModifiedById: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'users',
|
||||
lastModifiedById: {
|
||||
type: DataTypes.UUID,
|
||||
allowNull: false,
|
||||
references: {
|
||||
model: 'users',
|
||||
},
|
||||
},
|
||||
collaboratorIds: DataTypes.ARRAY(DataTypes.UUID),
|
||||
},
|
||||
collaboratorIds: DataTypes.ARRAY(DataTypes.UUID),
|
||||
}, {
|
||||
paranoid: true,
|
||||
hooks: {
|
||||
beforeValidate: (doc) => {
|
||||
doc.urlId = doc.urlId || randomstring.generate(10);
|
||||
{
|
||||
paranoid: true,
|
||||
hooks: {
|
||||
beforeValidate: doc => {
|
||||
doc.urlId = doc.urlId || randomstring.generate(10);
|
||||
},
|
||||
beforeCreate: documentBeforeSave,
|
||||
beforeUpdate: documentBeforeSave,
|
||||
afterCreate: async doc => await createRevision(doc),
|
||||
afterUpdate: async doc => await createRevision(doc),
|
||||
},
|
||||
beforeCreate: documentBeforeSave,
|
||||
beforeUpdate: documentBeforeSave,
|
||||
afterCreate: async (doc) => await createRevision(doc),
|
||||
afterUpdate: async (doc) => await createRevision(doc),
|
||||
},
|
||||
instanceMethods: {
|
||||
getUrl() {
|
||||
const slugifiedTitle = slug(this.title);
|
||||
return `/d/${slugifiedTitle}-${this.urlId}`;
|
||||
instanceMethods: {
|
||||
getUrl() {
|
||||
const slugifiedTitle = slug(this.title);
|
||||
return `/d/${slugifiedTitle}-${this.urlId}`;
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
}
|
||||
);
|
||||
|
||||
Document.belongsTo(User);
|
||||
|
||||
@@ -112,18 +113,14 @@ Document.searchForUser = async (user, query, options = {}) => {
|
||||
LIMIT :limit OFFSET :offset;
|
||||
`;
|
||||
|
||||
const documents = await sequelize
|
||||
.query(
|
||||
sql,
|
||||
{
|
||||
replacements: {
|
||||
query,
|
||||
limit,
|
||||
offset,
|
||||
},
|
||||
model: Document,
|
||||
}
|
||||
);
|
||||
const documents = await sequelize.query(sql, {
|
||||
replacements: {
|
||||
query,
|
||||
limit,
|
||||
offset,
|
||||
},
|
||||
model: Document,
|
||||
});
|
||||
|
||||
return documents;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user