UNPKG

1.69 kBJavaScriptView Raw
1const {
2 ServiceProvider,
3} = require('@adonisjs/fold');
4
5class AppProvider extends ServiceProvider {
6 registerApp() {
7 this.app.singleton('Lesswork/Src/App', (app) => {
8 const App = require('../src/App');
9
10 return new App();
11 });
12
13 return this;
14 }
15
16 registerConfig() {
17 this.app.singleton('Lesswork/Src/Config', (app) => {
18 const Config = require('@adonisjs/framework/src/Config');
19
20 return new Config(app.use('Helpers').configPath());
21 });
22 this.app.alias('Lesswork/Src/Config', 'Adonis/Src/Config');
23
24 return this;
25 }
26
27 registerRoute() {
28 this.app.singleton('Lesswork/Src/Route', () => {
29 return require('../src/Route');
30 });
31
32 return this;
33 }
34
35 registerCommand() {
36 this.app.bind('Lesswork/Src/Command', () => {
37 const work = require('@adonisjs/ace');
38
39 return work.Command;
40 });
41 this.app.alias('Lesswork/Src/Command', 'Adonis/Src/Command');
42
43 return this;
44 }
45
46 registerEnv() {
47 this.app.singleton('Lesswork/Src/Env', (app) => {
48 const Env = require('@adonisjs/framework/src/Env');
49
50 return new Env(app.use('Helpers')._appRoot);
51 });
52 this.app.alias('Lesswork/Src/Env', 'Adonis/Src/Env');
53
54 return this;
55 }
56
57 registerException() {
58 this.app.bind('Lesswork/Src/Exception', () => {
59 const Exception = require('@adonisjs/framework/src/Exception');
60
61 return Exception;
62 });
63 this.app.alias('Lesswork/Src/Exception', 'Adonis/Src/Exception');
64
65 return this;
66 }
67
68 register() {
69 this.registerApp()
70 .registerConfig()
71 .registerCommand()
72 .registerEnv()
73 .registerException()
74 .registerRoute();
75 }
76}
77
78module.exports = AppProvider;
\No newline at end of file