rubberguppe/store/setup.js
2019-09-22 00:20:37 -05:00

37 lines
752 B
JavaScript

'use strict'
module.exports = async function dbSetup (db, domain, dummyUser) {
// inbox
await db.collection('streams').createIndex({
'_meta._target': 1,
_id: -1
}, {
name: 'inbox'
})
// followers
await db.collection('streams').createIndex({
'_meta._target': 1
}, {
partialFilterExpression: { type: 'Follow' },
name: 'followers'
})
// outbox
await db.collection('streams').createIndex({
actor: 1,
_id: -1
})
// object lookup
await db.collection('objects').createIndex({
id: 1
})
if (dummyUser) {
return db.collection('objects').findOneAndReplace(
{ preferredUsername: 'dummy' },
dummyUser,
{
upsert: true,
returnOriginal: false
}
)
}
}