Files
speckle-server/packages/server/modules/core/index.js
T
Kristaps Fabians Geikins b02a07e2b6 feat: Frontend 2.0 MVP
2023-05-08 10:47:01 +03:00

46 lines
1.2 KiB
JavaScript

const { registerOrUpdateScope, registerOrUpdateRole } = require('@/modules/shared')
const { moduleLogger } = require('@/logging/logging')
const {
setupResultListener,
shutdownResultListener
} = require('@/modules/core/utils/dbNotificationListener')
const mp = require('@/modules/shared/utils/mixpanel')
exports.init = async (app) => {
moduleLogger.info('💥 Init core module')
// Initialize the static route
require('./rest/static')(app)
// Initialises the two main bulk upload/download endpoints
require('./rest/upload')(app)
require('./rest/download')(app)
// Initialises the two diff-based upload/download endpoints
require('./rest/diffUpload')(app)
require('./rest/diffDownload')(app)
// Register core-based scoeps
const scopes = require('./scopes.js')
for (const scope of scopes) {
await registerOrUpdateScope(scope)
}
// Register core-based roles
const roles = require('./roles.js')
for (const role of roles) {
await registerOrUpdateRole(role)
}
// Setup global pg notification listener
setupResultListener()
// Init mp
mp.initialize()
}
exports.finalize = () => {}
exports.shutdown = () => {
shutdownResultListener()
}