Skip to content

Commit adce807

Browse files
lsilvstalyssonoc
authored andcommitted
Update awilix to version 3 (#34)
* Update awilix to version 3 * Update dependencies using yarn instead of npm
1 parent 35c81ef commit adce807

File tree

3 files changed

+34
-53
lines changed

3 files changed

+34
-53
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"author": "Talysson <[email protected]>",
2727
"license": "MIT",
2828
"dependencies": {
29-
"awilix": "^2.2.3",
29+
"awilix": "^3.0.9",
3030
"awilix-express": "^0.11.0",
3131
"body-parser": "^1.17.1",
3232
"compression": "^1.6.2",

src/container.js

Lines changed: 29 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const { createContainer, Lifetime } = require('awilix');
1+
const { createContainer, asClass, asFunction, asValue } = require('awilix');
22
const { scopePerRequest } = require('awilix-express');
33

44
const config = require('../config');
@@ -28,50 +28,52 @@ const container = createContainer();
2828

2929
// System
3030
container
31-
.registerClass({
32-
app: [Application, { lifetime: Lifetime.SINGLETON }],
33-
server: [Server, { lifetime: Lifetime.SINGLETON }]
31+
.register({
32+
app: asClass(Application).singleton(),
33+
server: asClass(Server).singleton()
3434
})
35-
.registerFunction({
36-
router: [router, { lifetime: Lifetime.SINGLETON }],
37-
logger: [logger, { lifetime: Lifetime.SINGLETON }]
35+
.register({
36+
router: asFunction(router).singleton(),
37+
logger: asFunction(logger).singleton()
3838
})
39-
.registerValue({ config });
39+
.register({
40+
config: asValue(config)
41+
});
4042

4143
// Middlewares
4244
container
43-
.registerFunction({
44-
loggerMiddleware: [loggerMiddleware, { lifetime: Lifetime.SINGLETON }]
45+
.register({
46+
loggerMiddleware: asFunction(loggerMiddleware).singleton()
4547
})
46-
.registerValue({
47-
containerMiddleware: scopePerRequest(container),
48-
errorHandler: config.production ? errorHandler : devErrorHandler,
49-
swaggerMiddleware: [swaggerMiddleware]
48+
.register({
49+
containerMiddleware: asValue(scopePerRequest(container)),
50+
errorHandler: asValue(config.production ? errorHandler : devErrorHandler),
51+
swaggerMiddleware: asValue([swaggerMiddleware])
5052
});
5153

5254
// Repositories
53-
container.registerClass({
54-
usersRepository: [SequelizeUsersRepository, { lifetime: Lifetime.SINGLETON }]
55+
container.register({
56+
usersRepository: asClass(SequelizeUsersRepository).singleton()
5557
});
5658

5759
// Database
58-
container.registerValue({
59-
database,
60-
UserModel
60+
container.register({
61+
database: asValue(database),
62+
UserModel: asValue(UserModel)
6163
});
6264

6365
// Operations
64-
container.registerClass({
65-
createUser: CreateUser,
66-
getAllUsers: GetAllUsers,
67-
getUser: GetUser,
68-
updateUser: UpdateUser,
69-
deleteUser: DeleteUser
66+
container.register({
67+
createUser: asClass(CreateUser),
68+
getAllUsers: asClass(GetAllUsers),
69+
getUser: asClass(GetUser),
70+
updateUser: asClass(UpdateUser),
71+
deleteUser: asClass(DeleteUser)
7072
});
7173

7274
// Serializers
73-
container.registerValue({
74-
userSerializer: UserSerializer
75+
container.register({
76+
userSerializer: asValue(UserSerializer)
7577
});
7678

7779
module.exports = container;

yarn.lock

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -212,15 +212,12 @@ awilix-express@^0.11.0:
212212
version "0.11.0"
213213
resolved "https://registry.yarnpkg.com/awilix-express/-/awilix-express-0.11.0.tgz#6c41d30219dea53b83982045c5235b4804791425"
214214

215-
awilix@^2.2.3:
216-
version "2.2.3"
217-
resolved "https://registry.yarnpkg.com/awilix/-/awilix-2.2.3.tgz#a6e10a37a4eec59056bf1bd1bfe386475e7688f5"
215+
awilix@^3.0.9:
216+
version "3.0.9"
217+
resolved "https://registry.yarnpkg.com/awilix/-/awilix-3.0.9.tgz#3bd5cdf1d95b02888a8dc937fdb4d31e790b6380"
218218
dependencies:
219219
camel-case "^3.0.0"
220-
glob "^7.1.1"
221-
is-class "0.0.4"
222-
is-plain-object "^2.0.1"
223-
is-string "^1.0.4"
220+
glob "^7.1.2"
224221

225222
aws-sign2@~0.6.0:
226223
version "0.6.0"
@@ -1825,10 +1822,6 @@ is-builtin-module@^1.0.0:
18251822
dependencies:
18261823
builtin-modules "^1.0.0"
18271824

1828-
1829-
version "0.0.4"
1830-
resolved "https://registry.yarnpkg.com/is-class/-/is-class-0.0.4.tgz#e057451705bb34e39e3e33598c93a9837296b736"
1831-
18321825
is-dotfile@^1.0.0:
18331826
version "1.0.2"
18341827
resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d"
@@ -1895,12 +1888,6 @@ is-path-inside@^1.0.0:
18951888
dependencies:
18961889
path-is-inside "^1.0.1"
18971890

1898-
is-plain-object@^2.0.1:
1899-
version "2.0.1"
1900-
resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.1.tgz#4d7ca539bc9db9b737b8acb612f2318ef92f294f"
1901-
dependencies:
1902-
isobject "^1.0.0"
1903-
19041891
is-posix-bracket@^0.1.0:
19051892
version "0.1.1"
19061893
resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4"
@@ -1927,10 +1914,6 @@ is-stream@^1.0.0, is-stream@^1.1.0:
19271914
version "1.1.0"
19281915
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
19291916

1930-
is-string@^1.0.4:
1931-
version "1.0.4"
1932-
resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64"
1933-
19341917
is-typedarray@~1.0.0:
19351918
version "1.0.0"
19361919
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
@@ -1959,10 +1942,6 @@ isexe@^1.1.1:
19591942
version "1.1.2"
19601943
resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0"
19611944

1962-
isobject@^1.0.0:
1963-
version "1.0.2"
1964-
resolved "https://registry.yarnpkg.com/isobject/-/isobject-1.0.2.tgz#f0f9b8ce92dd540fa0740882e3835a2e022ec78a"
1965-
19661945
isobject@^2.0.0:
19671946
version "2.1.0"
19681947
resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89"

0 commit comments

Comments
 (0)