| 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)
- }
- }
|