| 123456789101112131415161718192021222324252627282930313233 |
- const Objection = require('objection')
- const Schmervice = require('@hapipal/schmervice')
-
- const GroupingModel = require('../models/grouping')
- const MembershipModel = require('../models/membership')
-
- const MembershipService = require('../services/membership')
-
- const MembershipJoinRoute = require('../routes/membership/join')
- const MembershipLeaveRoute = require('../routes/membership/leave')
- const MembershipActiveRoute = require('../routes/membership/active')
-
- module.exports = {
- name: 'membership-plugin',
- version: '1.0.0',
- register: async (server, options) => {
- await server.registerModel(GroupingModel)
- await server.registerModel(MembershipModel)
-
- // Bind to global context
- // So we can use Objection transactions
- server.bind({
- transaction: fn => Objection.transaction(server.knex(), fn),
- })
-
- await server.register(Schmervice)
- server.registerService(MembershipService)
-
- await server.route(MembershipJoinRoute)
- await server.route(MembershipLeaveRoute)
- await server.route(MembershipActiveRoute)
- },
- }
|