| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- const Objection = require('objection')
- const Schmervice = require('@hapipal/schmervice')
-
- const ProfileModel = require('../models/profile')
- const TagModel = require('../models/tag')
- const TagAssociationModel = require('../models/tag-association')
- const AspectModel = require('../models/aspect')
- const AspectLabelModel = require('../models/aspect_label')
- const ResponseModel = require('../models/response')
- const ZipCodeModel = require('../models/zip-code')
- const MatchQueueModel = require('../models/matchqueue')
-
- const ProfileService = require('../services/profile')
- const MatchQueueService = require('../services/matchqueue')
- const MatchService = require('../services/match')
-
- const ProfileScoreRoute = require('../routes/profile/score')
- const ProfileUpdateRoute = require('../routes/profile/update')
- const ProfileInsertRoute = require('../routes/profile/insert')
- const ProfileRespondRoute = require('../routes/profile/respond')
- const ProfileMatchRoute = require('../routes/profile/match')
- const ProfileQueueRoute = require('../routes/profile/queue')
- const ProfileGetRoute = require('../routes/profile/get')
- const ProfilePatchQueueRoute = require('../routes/profile/patch-queue')
- const TagRevealRoute = require('../routes/tag/reveal')
- const TagGetRoute = require('../routes/tag/get')
-
- module.exports = {
- name: 'profile-plugin',
- version: '1.0.0',
- register: async (server, options) => {
- await server.registerModel(ProfileModel)
- await server.registerModel(TagModel)
- await server.registerModel(TagAssociationModel)
- await server.registerModel(AspectModel)
- await server.registerModel(AspectLabelModel)
- await server.registerModel(ResponseModel)
- await server.registerModel(ZipCodeModel)
- await server.registerModel(MatchQueueModel)
-
- // Bind to global context
- // So we can use Objection transactions
- server.bind({
- transaction: fn => Objection.transaction(server.knex(), fn),
- })
-
- await server.register(Schmervice)
- await server.registerService(ProfileService)
- await server.registerService(MatchQueueService)
- await server.registerService(MatchService)
-
- await server.route(ProfileScoreRoute)
- await server.route(ProfileRespondRoute)
- await server.route(ProfileUpdateRoute)
- await server.route(ProfileInsertRoute)
- await server.route(ProfileMatchRoute)
- await server.route(ProfileQueueRoute)
- await server.route(ProfileGetRoute)
- await server.route(ProfilePatchQueueRoute)
- await server.route(TagRevealRoute)
- await server.route(TagGetRoute)
- },
- }
|