Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

index.js 1.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. const UserPlugin = require('./plugins/user')
  2. const MembershipPlugin = require('./plugins/membership')
  3. const SurveyPlugin = require('./plugins/survey')
  4. const ProfilePlugin = require('./plugins/profile')
  5. /**
  6. * A Hapi server instance
  7. * @typedef {Object} Server
  8. */
  9. /**
  10. * A plugin for Hapi
  11. * @typedef {Object} Plugin
  12. */
  13. exports.plugin = {
  14. name: 'main-app-plugin',
  15. /**
  16. * Main Hapi plugin that grabs all our
  17. * other plugins to create the API app
  18. * @param {Server} server
  19. * @param {Object} options
  20. */
  21. register: async (server, options) => {
  22. await server.register(UserPlugin, {
  23. routes: { prefix: '/user' },
  24. })
  25. await server.register(MembershipPlugin, {
  26. routes: { prefix: '/membership' },
  27. })
  28. await server.register(SurveyPlugin, {
  29. routes: {
  30. prefix: '/survey',
  31. },
  32. })
  33. await server.register(ProfilePlugin, {
  34. routes: { prefix: '/profile' },
  35. })
  36. },
  37. }