mongodb-dynamic-api 2.3.17 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/package.json +5 -2
- package/src/adapters/socket-adapter.d.ts +8 -0
- package/src/adapters/socket-adapter.js +11 -0
- package/src/adapters/socket-adapter.js.map +1 -0
- package/src/builders/route-decorators/auth-decorators.builder.d.ts +4 -4
- package/src/builders/route-decorators/auth-decorators.builder.js +9 -6
- package/src/builders/route-decorators/auth-decorators.builder.js.map +1 -1
- package/src/dtos/index.d.ts +1 -1
- package/src/dtos/index.js +1 -1
- package/src/dtos/index.js.map +1 -1
- package/src/dtos/many-entity.query.d.ts +3 -0
- package/src/dtos/{delete-many-entity.query.js → many-entity.query.js} +5 -5
- package/src/dtos/many-entity.query.js.map +1 -0
- package/src/dynamic-api.module.d.ts +2 -2
- package/src/dynamic-api.module.js +10 -7
- package/src/dynamic-api.module.js.map +1 -1
- package/src/filters/ws-exception/dynamic-api-ws-exception.filter.d.ts +5 -0
- package/src/filters/ws-exception/dynamic-api-ws-exception.filter.js +29 -0
- package/src/filters/ws-exception/dynamic-api-ws-exception.filter.js.map +1 -0
- package/src/gateways/base.gateway.d.ts +10 -0
- package/src/gateways/base.gateway.js +45 -0
- package/src/gateways/base.gateway.js.map +1 -0
- package/src/gateways/index.d.ts +1 -0
- package/src/gateways/index.js +18 -0
- package/src/gateways/index.js.map +1 -0
- package/src/helpers/controller-mixin.helper.js +2 -20
- package/src/helpers/controller-mixin.helper.js.map +1 -1
- package/src/helpers/format.helper.d.ts +7 -4
- package/src/helpers/format.helper.js +12 -4
- package/src/helpers/format.helper.js.map +1 -1
- package/src/helpers/index.d.ts +1 -0
- package/src/helpers/index.js +1 -0
- package/src/helpers/index.js.map +1 -1
- package/src/helpers/socket-config.helper.d.ts +5 -0
- package/src/helpers/socket-config.helper.js +30 -0
- package/src/helpers/socket-config.helper.js.map +1 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/index.js.map +1 -1
- package/src/interfaces/dynamic-api-global-state.interface.d.ts +3 -0
- package/src/interfaces/dynamic-api-options.interface.d.ts +3 -0
- package/src/interfaces/dynamic-api-options.interface.js.map +1 -1
- package/src/interfaces/dynamic-api-policy-handler.interface.d.ts +2 -2
- package/src/interfaces/dynamic-api-route-config.interface.d.ts +2 -0
- package/src/interfaces/dynamic-api-web-socket.interface.d.ts +13 -0
- package/src/interfaces/dynamic-api-web-socket.interface.js +3 -0
- package/src/interfaces/dynamic-api-web-socket.interface.js.map +1 -0
- package/src/interfaces/index.d.ts +1 -0
- package/src/interfaces/index.js +1 -0
- package/src/interfaces/index.js.map +1 -1
- package/src/modules/auth/auth.helper.d.ts +7 -5
- package/src/modules/auth/auth.helper.js +29 -5
- package/src/modules/auth/auth.helper.js.map +1 -1
- package/src/modules/auth/auth.module.js +26 -8
- package/src/modules/auth/auth.module.js.map +1 -1
- package/src/modules/auth/guards/index.d.ts +4 -2
- package/src/modules/auth/guards/index.js +4 -2
- package/src/modules/auth/guards/index.js.map +1 -1
- package/src/modules/auth/guards/jwt-auth/jwt-auth.guard.js.map +1 -0
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.d.ts +5 -0
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js +57 -0
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js.map +1 -0
- package/src/modules/auth/guards/local-auth/local-auth.guard.js.map +1 -0
- package/src/modules/auth/guards/reset-password/reset-password.guard.d.ts +6 -0
- package/src/modules/auth/guards/reset-password/reset-password.guard.js +30 -0
- package/src/modules/auth/guards/reset-password/reset-password.guard.js.map +1 -0
- package/src/modules/auth/interfaces/auth-controller.interface.d.ts +3 -0
- package/src/modules/auth/interfaces/auth-gateway.interface.d.ts +16 -0
- package/src/modules/auth/interfaces/auth-gateway.interface.js +3 -0
- package/src/modules/auth/interfaces/auth-gateway.interface.js.map +1 -0
- package/src/modules/auth/interfaces/auth-options.interface.d.ts +14 -7
- package/src/modules/auth/interfaces/auth-service.interface.d.ts +1 -0
- package/src/modules/auth/interfaces/index.d.ts +1 -0
- package/src/modules/auth/interfaces/index.js +1 -0
- package/src/modules/auth/interfaces/index.js.map +1 -1
- package/src/modules/auth/mixins/auth-controller.mixin.d.ts +2 -2
- package/src/modules/auth/mixins/auth-controller.mixin.js +31 -5
- package/src/modules/auth/mixins/auth-controller.mixin.js.map +1 -1
- package/src/modules/auth/mixins/auth-gateway.mixin.d.ts +5 -0
- package/src/modules/auth/mixins/auth-gateway.mixin.js +191 -0
- package/src/modules/auth/mixins/auth-gateway.mixin.js.map +1 -0
- package/src/modules/auth/mixins/auth-policies-guard.mixin.d.ts +6 -0
- package/src/modules/auth/mixins/auth-policies-guard.mixin.js +52 -0
- package/src/modules/auth/mixins/auth-policies-guard.mixin.js.map +1 -0
- package/src/modules/auth/mixins/index.d.ts +2 -1
- package/src/modules/auth/mixins/index.js +2 -1
- package/src/modules/auth/mixins/index.js.map +1 -1
- package/src/modules/auth/services/base-auth.service.d.ts +2 -0
- package/src/modules/auth/services/base-auth.service.js +17 -1
- package/src/modules/auth/services/base-auth.service.js.map +1 -1
- package/src/routes/create-many/create-many-body-dto.mixin.d.ts +7 -0
- package/src/routes/create-many/create-many-body-dto.mixin.js +30 -0
- package/src/routes/create-many/create-many-body-dto.mixin.js.map +1 -0
- package/src/routes/create-many/create-many-controller.interface.d.ts +5 -4
- package/src/routes/create-many/create-many-gateway.interface.d.ts +10 -0
- package/src/routes/create-many/create-many-gateway.interface.js +3 -0
- package/src/routes/create-many/create-many-gateway.interface.js.map +1 -0
- package/src/routes/create-many/create-many-gateway.mixin.d.ts +6 -0
- package/src/routes/create-many/create-many-gateway.mixin.js +60 -0
- package/src/routes/create-many/create-many-gateway.mixin.js.map +1 -0
- package/src/routes/create-many/create-many.helper.d.ts +4 -2
- package/src/routes/create-many/create-many.helper.js +21 -1
- package/src/routes/create-many/create-many.helper.js.map +1 -1
- package/src/routes/create-many/create-many.module.d.ts +2 -2
- package/src/routes/create-many/create-many.module.js +12 -2
- package/src/routes/create-many/create-many.module.js.map +1 -1
- package/src/routes/create-many/index.d.ts +3 -0
- package/src/routes/create-many/index.js +3 -0
- package/src/routes/create-many/index.js.map +1 -1
- package/src/routes/create-one/create-one-gateway.interface.d.ts +9 -0
- package/src/routes/create-one/create-one-gateway.interface.js +3 -0
- package/src/routes/create-one/create-one-gateway.interface.js.map +1 -0
- package/src/routes/create-one/create-one-gateway.mixin.d.ts +6 -0
- package/src/routes/create-one/create-one-gateway.mixin.js +61 -0
- package/src/routes/create-one/create-one-gateway.mixin.js.map +1 -0
- package/src/routes/create-one/create-one.helper.d.ts +4 -2
- package/src/routes/create-one/create-one.helper.js +21 -1
- package/src/routes/create-one/create-one.helper.js.map +1 -1
- package/src/routes/create-one/create-one.module.d.ts +2 -2
- package/src/routes/create-one/create-one.module.js +12 -2
- package/src/routes/create-one/create-one.module.js.map +1 -1
- package/src/routes/create-one/index.d.ts +2 -0
- package/src/routes/create-one/index.js +2 -0
- package/src/routes/create-one/index.js.map +1 -1
- package/src/routes/delete-many/delete-many-controller.interface.d.ts +2 -2
- package/src/routes/delete-many/delete-many-controller.mixin.js +1 -1
- package/src/routes/delete-many/delete-many-controller.mixin.js.map +1 -1
- package/src/routes/delete-many/delete-many-gateway.interface.d.ts +10 -0
- package/src/routes/delete-many/delete-many-gateway.interface.js +3 -0
- package/src/routes/delete-many/delete-many-gateway.interface.js.map +1 -0
- package/src/routes/delete-many/delete-many-gateway.mixin.d.ts +6 -0
- package/src/routes/delete-many/delete-many-gateway.mixin.js +60 -0
- package/src/routes/delete-many/delete-many-gateway.mixin.js.map +1 -0
- package/src/routes/delete-many/delete-many.helper.d.ts +4 -2
- package/src/routes/delete-many/delete-many.helper.js +21 -1
- package/src/routes/delete-many/delete-many.helper.js.map +1 -1
- package/src/routes/delete-many/delete-many.module.d.ts +2 -2
- package/src/routes/delete-many/delete-many.module.js +12 -2
- package/src/routes/delete-many/delete-many.module.js.map +1 -1
- package/src/routes/delete-many/index.d.ts +2 -0
- package/src/routes/delete-many/index.js +2 -0
- package/src/routes/delete-many/index.js.map +1 -1
- package/src/routes/delete-one/delete-one-gateway.interface.d.ts +10 -0
- package/src/routes/delete-one/delete-one-gateway.interface.js +3 -0
- package/src/routes/delete-one/delete-one-gateway.interface.js.map +1 -0
- package/src/routes/delete-one/delete-one-gateway.mixin.d.ts +6 -0
- package/src/routes/delete-one/delete-one-gateway.mixin.js +60 -0
- package/src/routes/delete-one/delete-one-gateway.mixin.js.map +1 -0
- package/src/routes/delete-one/delete-one.helper.d.ts +4 -2
- package/src/routes/delete-one/delete-one.helper.js +21 -1
- package/src/routes/delete-one/delete-one.helper.js.map +1 -1
- package/src/routes/delete-one/delete-one.module.d.ts +2 -2
- package/src/routes/delete-one/delete-one.module.js +12 -2
- package/src/routes/delete-one/delete-one.module.js.map +1 -1
- package/src/routes/delete-one/index.d.ts +2 -0
- package/src/routes/delete-one/index.js +2 -0
- package/src/routes/delete-one/index.js.map +1 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.js +1 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many-gateway.interface.d.ts +10 -0
- package/src/routes/duplicate-many/duplicate-many-gateway.interface.js +3 -0
- package/src/routes/duplicate-many/duplicate-many-gateway.interface.js.map +1 -0
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.d.ts +6 -0
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js +60 -0
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js.map +1 -0
- package/src/routes/duplicate-many/duplicate-many.helper.d.ts +4 -2
- package/src/routes/duplicate-many/duplicate-many.helper.js +21 -1
- package/src/routes/duplicate-many/duplicate-many.helper.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many.module.d.ts +2 -2
- package/src/routes/duplicate-many/duplicate-many.module.js +12 -2
- package/src/routes/duplicate-many/duplicate-many.module.js.map +1 -1
- package/src/routes/duplicate-many/index.d.ts +2 -0
- package/src/routes/duplicate-many/index.js +2 -0
- package/src/routes/duplicate-many/index.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one-gateway.interface.d.ts +10 -0
- package/src/routes/duplicate-one/duplicate-one-gateway.interface.js +3 -0
- package/src/routes/duplicate-one/duplicate-one-gateway.interface.js.map +1 -0
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.d.ts +6 -0
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js +60 -0
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js.map +1 -0
- package/src/routes/duplicate-one/duplicate-one.helper.d.ts +4 -2
- package/src/routes/duplicate-one/duplicate-one.helper.js +21 -1
- package/src/routes/duplicate-one/duplicate-one.helper.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one.module.d.ts +2 -2
- package/src/routes/duplicate-one/duplicate-one.module.js +12 -2
- package/src/routes/duplicate-one/duplicate-one.module.js.map +1 -1
- package/src/routes/duplicate-one/index.d.ts +2 -0
- package/src/routes/duplicate-one/index.js +2 -0
- package/src/routes/duplicate-one/index.js.map +1 -1
- package/src/routes/get-many/get-many-gateway.interface.d.ts +9 -0
- package/src/routes/get-many/get-many-gateway.interface.js +3 -0
- package/src/routes/get-many/get-many-gateway.interface.js.map +1 -0
- package/src/routes/get-many/get-many-gateway.mixin.d.ts +6 -0
- package/src/routes/get-many/get-many-gateway.mixin.js +56 -0
- package/src/routes/get-many/get-many-gateway.mixin.js.map +1 -0
- package/src/routes/get-many/get-many.helper.d.ts +4 -2
- package/src/routes/get-many/get-many.helper.js +21 -1
- package/src/routes/get-many/get-many.helper.js.map +1 -1
- package/src/routes/get-many/get-many.module.d.ts +2 -2
- package/src/routes/get-many/get-many.module.js +12 -2
- package/src/routes/get-many/get-many.module.js.map +1 -1
- package/src/routes/get-many/index.d.ts +2 -0
- package/src/routes/get-many/index.js +2 -0
- package/src/routes/get-many/index.js.map +1 -1
- package/src/routes/get-one/get-one-gateway.interface.d.ts +10 -0
- package/src/routes/get-one/get-one-gateway.interface.js +3 -0
- package/src/routes/get-one/get-one-gateway.interface.js.map +1 -0
- package/src/routes/get-one/get-one-gateway.mixin.d.ts +6 -0
- package/src/routes/get-one/get-one-gateway.mixin.js +60 -0
- package/src/routes/get-one/get-one-gateway.mixin.js.map +1 -0
- package/src/routes/get-one/get-one.helper.d.ts +4 -2
- package/src/routes/get-one/get-one.helper.js +21 -1
- package/src/routes/get-one/get-one.helper.js.map +1 -1
- package/src/routes/get-one/get-one.module.d.ts +2 -2
- package/src/routes/get-one/get-one.module.js +12 -2
- package/src/routes/get-one/get-one.module.js.map +1 -1
- package/src/routes/get-one/index.d.ts +2 -0
- package/src/routes/get-one/index.js +2 -0
- package/src/routes/get-one/index.js.map +1 -1
- package/src/routes/replace-one/index.d.ts +2 -0
- package/src/routes/replace-one/index.js +2 -0
- package/src/routes/replace-one/index.js.map +1 -1
- package/src/routes/replace-one/replace-one-gateway.interface.d.ts +10 -0
- package/src/routes/replace-one/replace-one-gateway.interface.js +3 -0
- package/src/routes/replace-one/replace-one-gateway.interface.js.map +1 -0
- package/src/routes/replace-one/replace-one-gateway.mixin.d.ts +6 -0
- package/src/routes/replace-one/replace-one-gateway.mixin.js +60 -0
- package/src/routes/replace-one/replace-one-gateway.mixin.js.map +1 -0
- package/src/routes/replace-one/replace-one.helper.d.ts +4 -2
- package/src/routes/replace-one/replace-one.helper.js +21 -1
- package/src/routes/replace-one/replace-one.helper.js.map +1 -1
- package/src/routes/replace-one/replace-one.module.d.ts +2 -2
- package/src/routes/replace-one/replace-one.module.js +12 -2
- package/src/routes/replace-one/replace-one.module.js.map +1 -1
- package/src/routes/update-many/index.d.ts +2 -0
- package/src/routes/update-many/index.js +2 -0
- package/src/routes/update-many/index.js.map +1 -1
- package/src/routes/update-many/update-many-gateway.interface.d.ts +10 -0
- package/src/routes/update-many/update-many-gateway.interface.js +3 -0
- package/src/routes/update-many/update-many-gateway.interface.js.map +1 -0
- package/src/routes/update-many/update-many-gateway.mixin.d.ts +6 -0
- package/src/routes/update-many/update-many-gateway.mixin.js +63 -0
- package/src/routes/update-many/update-many-gateway.mixin.js.map +1 -0
- package/src/routes/update-many/update-many.helper.d.ts +4 -2
- package/src/routes/update-many/update-many.helper.js +21 -1
- package/src/routes/update-many/update-many.helper.js.map +1 -1
- package/src/routes/update-many/update-many.module.d.ts +2 -2
- package/src/routes/update-many/update-many.module.js +12 -2
- package/src/routes/update-many/update-many.module.js.map +1 -1
- package/src/routes/update-one/update-one-gateway.interface.d.ts +10 -0
- package/src/routes/update-one/update-one-gateway.interface.js +3 -0
- package/src/routes/update-one/update-one-gateway.interface.js.map +1 -0
- package/src/routes/update-one/update-one-gateway.mixin.d.ts +6 -0
- package/src/routes/update-one/update-one-gateway.mixin.js +60 -0
- package/src/routes/update-one/update-one-gateway.mixin.js.map +1 -0
- package/src/routes/update-one/update-one.helper.d.ts +4 -2
- package/src/routes/update-one/update-one.helper.js +21 -1
- package/src/routes/update-one/update-one.helper.js.map +1 -1
- package/src/routes/update-one/update-one.module.d.ts +2 -2
- package/src/routes/update-one/update-one.module.js +12 -2
- package/src/routes/update-one/update-one.module.js.map +1 -1
- package/src/services/base/base.service.d.ts +1 -0
- package/src/services/base/base.service.js +5 -0
- package/src/services/base/base.service.js.map +1 -1
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.js +1 -0
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.js.map +1 -1
- package/src/version.json +1 -1
- package/test/dynamic-api-for-root.e2e-spec.js +976 -641
- package/test/dynamic-api-for-root.e2e-spec.js.map +1 -1
- package/test/e2e.setup.d.ts +16 -1
- package/test/e2e.setup.js +62 -7
- package/test/e2e.setup.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/src/dtos/delete-many-entity.query.d.ts +0 -3
- package/src/dtos/delete-many-entity.query.js.map +0 -1
- package/src/modules/auth/guards/jwt-auth.guard.js.map +0 -1
- package/src/modules/auth/guards/local-auth.guard.js.map +0 -1
- package/src/modules/auth/mixins/auth-register-policies-guard.mixin.d.ts +0 -5
- package/src/modules/auth/mixins/auth-register-policies-guard.mixin.js +0 -31
- package/src/modules/auth/mixins/auth-register-policies-guard.mixin.js.map +0 -1
- /package/src/modules/auth/guards/{jwt-auth.guard.d.ts → jwt-auth/jwt-auth.guard.d.ts} +0 -0
- /package/src/modules/auth/guards/{jwt-auth.guard.js → jwt-auth/jwt-auth.guard.js} +0 -0
- /package/src/modules/auth/guards/{local-auth.guard.d.ts → local-auth/local-auth.guard.d.ts} +0 -0
- /package/src/modules/auth/guards/{local-auth.guard.js → local-auth/local-auth.guard.js} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
Changelog
|
|
2
2
|
|
|
3
|
+
## [2.4.1](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v2.4.0...v2.4.1) (2024-08-11)
|
|
4
|
+
|
|
5
|
+
## [2.4.0](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v2.3.17...v2.4.0) (2024-08-11)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### web-socket
|
|
9
|
+
|
|
10
|
+
* **web-socket:** add all modules configuration ([bf51c9a](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/bf51c9ae0037c285ad251250f9dbb3cd29e42dec))
|
|
11
|
+
|
|
3
12
|
## [2.3.17](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v2.3.16...v2.3.17) (2024-05-26)
|
|
4
13
|
|
|
5
14
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mongodb-dynamic-api",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.1",
|
|
4
4
|
"description": "Auto generated CRUD API for MongoDB using NestJS",
|
|
5
5
|
"readmeFilename": "README.md",
|
|
6
6
|
"main": "index.js",
|
|
@@ -47,7 +47,9 @@
|
|
|
47
47
|
"@nestjs/mongoose": "^10.0.4",
|
|
48
48
|
"@nestjs/passport": "^10.0.3",
|
|
49
49
|
"@nestjs/platform-express": "^10.3.2",
|
|
50
|
+
"@nestjs/platform-socket.io": "^10.3.8",
|
|
50
51
|
"@nestjs/swagger": "^7.3.0",
|
|
52
|
+
"@nestjs/websockets": "^10.3.8",
|
|
51
53
|
"@types/lodash": "^4.14.202",
|
|
52
54
|
"bcrypt": "^5.1.1",
|
|
53
55
|
"builder-pattern": "^2.2.0",
|
|
@@ -61,7 +63,8 @@
|
|
|
61
63
|
"passport-jwt": "^4.0.1",
|
|
62
64
|
"passport-local": "^1.0.0",
|
|
63
65
|
"reflect-metadata": "^0.2.1",
|
|
64
|
-
"rxjs": "^7.8.1"
|
|
66
|
+
"rxjs": "^7.8.1",
|
|
67
|
+
"socket.io-client": "^4.7.5"
|
|
65
68
|
},
|
|
66
69
|
"devDependencies": {
|
|
67
70
|
"@golevelup/ts-jest": "^0.4.0",
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { IoAdapter } from '@nestjs/platform-socket.io';
|
|
2
|
+
import { ServerOptions } from 'socket.io';
|
|
3
|
+
export declare class SocketAdapter extends IoAdapter {
|
|
4
|
+
createIOServer(port: number, options?: ServerOptions & {
|
|
5
|
+
namespace?: string;
|
|
6
|
+
server?: any;
|
|
7
|
+
}): any;
|
|
8
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SocketAdapter = void 0;
|
|
4
|
+
const platform_socket_io_1 = require("@nestjs/platform-socket.io");
|
|
5
|
+
class SocketAdapter extends platform_socket_io_1.IoAdapter {
|
|
6
|
+
createIOServer(port, options) {
|
|
7
|
+
return super.createIOServer(port, { ...options, cors: true });
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.SocketAdapter = SocketAdapter;
|
|
11
|
+
//# sourceMappingURL=socket-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socket-adapter.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/adapters/socket-adapter.ts"],"names":[],"mappings":";;;AAAA,mEAAuD;AAGvD,MAAa,aAAc,SAAQ,8BAAS;IAC1C,cAAc,CACZ,IAAY,EACZ,OAGC;QAED,OAAO,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAChE,CAAC;CACF;AAVD,sCAUC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Type } from '@nestjs/common';
|
|
2
2
|
import { DynamicApiDecoratorBuilder } from '../../interfaces';
|
|
3
3
|
declare class AuthDecoratorsBuilder implements DynamicApiDecoratorBuilder<any> {
|
|
4
|
-
private readonly
|
|
5
|
-
private readonly
|
|
6
|
-
constructor(
|
|
7
|
-
build(): (
|
|
4
|
+
private readonly isProtected;
|
|
5
|
+
private readonly AuthPoliciesGuard;
|
|
6
|
+
constructor(isProtected: boolean | undefined, AuthPoliciesGuard: Type);
|
|
7
|
+
build(): (ClassDecorator & MethodDecorator)[];
|
|
8
8
|
}
|
|
9
9
|
export { AuthDecoratorsBuilder };
|
|
@@ -6,14 +6,17 @@ const swagger_1 = require("@nestjs/swagger");
|
|
|
6
6
|
const decorators_1 = require("../../decorators");
|
|
7
7
|
const modules_1 = require("../../modules");
|
|
8
8
|
class AuthDecoratorsBuilder {
|
|
9
|
-
constructor(
|
|
10
|
-
this.
|
|
11
|
-
this.
|
|
9
|
+
constructor(isProtected, AuthPoliciesGuard) {
|
|
10
|
+
this.isProtected = isProtected;
|
|
11
|
+
this.AuthPoliciesGuard = AuthPoliciesGuard;
|
|
12
12
|
}
|
|
13
13
|
build() {
|
|
14
|
-
return !this.
|
|
15
|
-
? [(0, decorators_1.Public)()
|
|
16
|
-
: [
|
|
14
|
+
return !this.isProtected
|
|
15
|
+
? [(0, decorators_1.Public)()]
|
|
16
|
+
: [
|
|
17
|
+
(0, swagger_1.ApiBearerAuth)(),
|
|
18
|
+
(0, common_1.UseGuards)(modules_1.JwtAuthGuard, ...(this.AuthPoliciesGuard ? [this.AuthPoliciesGuard] : [])),
|
|
19
|
+
];
|
|
17
20
|
}
|
|
18
21
|
}
|
|
19
22
|
exports.AuthDecoratorsBuilder = AuthDecoratorsBuilder;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-decorators.builder.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/builders/route-decorators/auth-decorators.builder.ts"],"names":[],"mappings":";;;AAAA,2CAAiD;AACjD,6CAAgD;AAChD,iDAA0C;AAE1C,2CAA6C;AAE7C,MAAM,qBAAqB;IACzB,YACmB,
|
|
1
|
+
{"version":3,"file":"auth-decorators.builder.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/builders/route-decorators/auth-decorators.builder.ts"],"names":[],"mappings":";;;AAAA,2CAAiD;AACjD,6CAAgD;AAChD,iDAA0C;AAE1C,2CAA6C;AAE7C,MAAM,qBAAqB;IACzB,YACmB,WAAgC,EAChC,iBAAuB;QADvB,gBAAW,GAAX,WAAW,CAAqB;QAChC,sBAAiB,GAAjB,iBAAiB,CAAM;IACvC,CAAC;IAEG,KAAK;QACV,OAAO,CAAC,IAAI,CAAC,WAAW;YACtB,CAAC,CAAC,CAAC,IAAA,mBAAM,GAAE,CAAC;YACZ,CAAC,CAAC;gBACA,IAAA,uBAAa,GAAE;gBACf,IAAA,kBAAS,EACP,sBAAY,EACZ,GAAG,CACD,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CACvD,CACF;aACF,CAAC;IACN,CAAC;CACF;AAEQ,sDAAqB"}
|
package/src/dtos/index.d.ts
CHANGED
package/src/dtos/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./
|
|
17
|
+
__exportStar(require("./many-entity.query"), exports);
|
|
18
18
|
__exportStar(require("./delete.presenter"), exports);
|
|
19
19
|
__exportStar(require("./entity.param"), exports);
|
|
20
20
|
__exportStar(require("./entity.query"), exports);
|
package/src/dtos/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/dtos/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,qDAAmC;AACnC,iDAA+B;AAC/B,iDAA+B"}
|
|
@@ -9,17 +9,17 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.ManyEntityQuery = void 0;
|
|
13
13
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
|
-
class
|
|
15
|
+
class ManyEntityQuery {
|
|
16
16
|
}
|
|
17
|
-
exports.
|
|
17
|
+
exports.ManyEntityQuery = ManyEntityQuery;
|
|
18
18
|
__decorate([
|
|
19
19
|
(0, swagger_1.ApiProperty)({ type: [String], minItems: 1 }),
|
|
20
20
|
(0, class_validator_1.IsNotEmpty)({ each: true }),
|
|
21
21
|
(0, class_validator_1.IsString)({ each: true }),
|
|
22
22
|
(0, class_validator_1.ArrayMinSize)(1),
|
|
23
23
|
__metadata("design:type", Array)
|
|
24
|
-
],
|
|
25
|
-
//# sourceMappingURL=
|
|
24
|
+
], ManyEntityQuery.prototype, "ids", void 0);
|
|
25
|
+
//# sourceMappingURL=many-entity.query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"many-entity.query.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/dtos/many-entity.query.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,qDAAqE;AAErE,MAAa,eAAe;CAM3B;AAND,0CAMC;AADC;IAJC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IAC5C,IAAA,4BAAU,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,8BAAY,EAAC,CAAC,CAAC;;4CACF"}
|
|
@@ -4,8 +4,8 @@ import { BaseEntity } from './models';
|
|
|
4
4
|
import { DynamicApiGlobalStateService } from './services';
|
|
5
5
|
export declare class DynamicApiModule {
|
|
6
6
|
static readonly state: DynamicApiGlobalStateService;
|
|
7
|
-
static forRoot<Entity extends BaseEntity = any>(uri: string, { useGlobalCache, cacheOptions, useAuth, routesConfig, }?: DynamicApiForRootOptions<Entity>): DynamicModule;
|
|
8
|
-
static forFeature<Entity extends BaseEntity>({ entity, controllerOptions, routes, }: DynamicApiForFeatureOptions<Entity>): Promise<DynamicModule>;
|
|
7
|
+
static forRoot<Entity extends BaseEntity = any>(uri: string, { useGlobalCache, cacheOptions, useAuth, routesConfig, webSocket, }?: DynamicApiForRootOptions<Entity>): DynamicModule;
|
|
8
|
+
static forFeature<Entity extends BaseEntity>({ entity, controllerOptions, routes, webSocket: featureWebSocket, }: DynamicApiForFeatureOptions<Entity>): Promise<DynamicModule>;
|
|
9
9
|
private static buildStateFromOptions;
|
|
10
10
|
private static setDefaultRoutes;
|
|
11
11
|
}
|
|
@@ -21,13 +21,13 @@ const modules_1 = require("./modules");
|
|
|
21
21
|
const routes_1 = require("./routes");
|
|
22
22
|
const services_1 = require("./services");
|
|
23
23
|
let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
|
|
24
|
-
static forRoot(uri, { useGlobalCache = true, cacheOptions = {}, useAuth, routesConfig, } = {}) {
|
|
24
|
+
static forRoot(uri, { useGlobalCache = true, cacheOptions = {}, useAuth, routesConfig, webSocket, } = {}) {
|
|
25
25
|
if (!uri) {
|
|
26
26
|
throw new Error('You must provide a valid mongodb uri in the forRoot method to use MongoDB Dynamic API');
|
|
27
27
|
}
|
|
28
28
|
this.state.set([
|
|
29
29
|
'partial',
|
|
30
|
-
this.buildStateFromOptions(uri, useGlobalCache, cacheOptions, useAuth, routesConfig),
|
|
30
|
+
this.buildStateFromOptions(uri, useGlobalCache, cacheOptions, useAuth, routesConfig, webSocket),
|
|
31
31
|
]);
|
|
32
32
|
return {
|
|
33
33
|
module: DynamicApiModule_1,
|
|
@@ -36,13 +36,13 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
|
|
|
36
36
|
cache_manager_1.CacheModule.register({ isGlobal: true, ...cacheOptions }),
|
|
37
37
|
mongoose_1.MongooseModule.forRoot(uri, { connectionName: this.state.get('connectionName') }),
|
|
38
38
|
...(useAuth?.userEntity ? [
|
|
39
|
-
modules_1.AuthModule.forRoot(useAuth),
|
|
39
|
+
modules_1.AuthModule.forRoot({ ...useAuth, webSocket: useAuth.webSocket ?? webSocket }),
|
|
40
40
|
] : []),
|
|
41
41
|
],
|
|
42
42
|
exports: [modules_1.DynamicApiConfigModule],
|
|
43
43
|
};
|
|
44
44
|
}
|
|
45
|
-
static forFeature({ entity, controllerOptions, routes, }) {
|
|
45
|
+
static forFeature({ entity, controllerOptions, routes, webSocket: featureWebSocket, }) {
|
|
46
46
|
const schema = (0, helpers_1.buildSchemaFromEntity)(entity);
|
|
47
47
|
const databaseModule = mongoose_1.MongooseModule.forFeature([{ name: entity.name, schema }], this.state.get('connectionName'));
|
|
48
48
|
services_1.DynamicApiGlobalStateService.addEntitySchema(entity, schema);
|
|
@@ -78,7 +78,7 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
|
|
|
78
78
|
module: DynamicApiModule_1,
|
|
79
79
|
imports: [
|
|
80
80
|
...routes.map((routeConfig) => {
|
|
81
|
-
const { type, description: routeDescription, version: routeVersion, validationPipeOptions: routeValidationPipeOptions, } = routeConfig;
|
|
81
|
+
const { type, description: routeDescription, version: routeVersion, validationPipeOptions: routeValidationPipeOptions, webSocket: routeWebSocket, } = routeConfig;
|
|
82
82
|
const module = moduleByRouteType.get(type);
|
|
83
83
|
const description = routeDescription ?? (0, helpers_1.getDefaultRouteDescription)(type, entity.name);
|
|
84
84
|
const version = routeVersion ?? controllerVersion;
|
|
@@ -88,7 +88,7 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
|
|
|
88
88
|
return;
|
|
89
89
|
}
|
|
90
90
|
const validationPipeOptions = routeValidationPipeOptions ?? controllerValidationPipeOptions;
|
|
91
|
-
return module.forFeature(databaseModule, entity, controllerOptions, { ...routeConfig, description }, version, validationPipeOptions ?? { transform: true });
|
|
91
|
+
return module.forFeature(databaseModule, entity, controllerOptions, { ...routeConfig, description }, version, validationPipeOptions ?? { transform: true }, routeWebSocket ?? featureWebSocket);
|
|
92
92
|
}),
|
|
93
93
|
],
|
|
94
94
|
providers: [
|
|
@@ -112,7 +112,7 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
|
|
|
112
112
|
});
|
|
113
113
|
});
|
|
114
114
|
}
|
|
115
|
-
static buildStateFromOptions(uri, useGlobalCache, cacheOptions, useAuth, routesConfig) {
|
|
115
|
+
static buildStateFromOptions(uri, useGlobalCache, cacheOptions, useAuth, routesConfig, webSocket) {
|
|
116
116
|
const routesConfigState = this.state.get('routesConfig');
|
|
117
117
|
return {
|
|
118
118
|
uri,
|
|
@@ -126,6 +126,8 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
|
|
|
126
126
|
passwordField: !useAuth.login?.passwordField ? 'password' : String(useAuth.login.passwordField),
|
|
127
127
|
},
|
|
128
128
|
jwtSecret: useAuth.jwt?.secret ?? 'dynamic-api-jwt-secret',
|
|
129
|
+
jwtExpirationTime: useAuth.jwt?.expiresIn ?? '1d',
|
|
130
|
+
gatewayOptions: (0, helpers_1.initializeConfigFromOptions)(webSocket),
|
|
129
131
|
} : {}),
|
|
130
132
|
...(routesConfig?.excluded?.length || routesConfig?.defaults.length ? {
|
|
131
133
|
routesConfig: {
|
|
@@ -133,6 +135,7 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
|
|
|
133
135
|
excluded: routesConfig.excluded ?? [],
|
|
134
136
|
},
|
|
135
137
|
} : {}),
|
|
138
|
+
gatewayOptions: (0, helpers_1.initializeConfigFromOptions)(webSocket),
|
|
136
139
|
};
|
|
137
140
|
}
|
|
138
141
|
static setDefaultRoutes(stateRoutesConfig, controllerRoutesConfig = {}, routes = []) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-api.module.js","sourceRoot":"","sources":["../../libs/dynamic-api/src/dynamic-api.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,yDAAmE;AACnE,2CAAuD;AACvD,uCAAqE;AACrE,8EAAyE;AACzE,+CAAkD;AAElD,qCAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"dynamic-api.module.js","sourceRoot":"","sources":["../../libs/dynamic-api/src/dynamic-api.module.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ArgumentsHost, ExceptionFilter, HttpException } from '@nestjs/common';
|
|
2
|
+
import { WsException } from '@nestjs/websockets';
|
|
3
|
+
export declare class DynamicAPIWsExceptionFilter<T> implements ExceptionFilter {
|
|
4
|
+
catch(exception: WsException | HttpException, host: ArgumentsHost): void;
|
|
5
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.DynamicAPIWsExceptionFilter = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const websockets_1 = require("@nestjs/websockets");
|
|
12
|
+
let DynamicAPIWsExceptionFilter = class DynamicAPIWsExceptionFilter {
|
|
13
|
+
catch(exception, host) {
|
|
14
|
+
const client = host.switchToWs().getClient();
|
|
15
|
+
let message;
|
|
16
|
+
if (exception instanceof websockets_1.WsException) {
|
|
17
|
+
message = exception.message ?? 'An error occurred';
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
message = exception['response']?.message ?? exception.message;
|
|
21
|
+
}
|
|
22
|
+
client.emit('exception', { message });
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
exports.DynamicAPIWsExceptionFilter = DynamicAPIWsExceptionFilter;
|
|
26
|
+
exports.DynamicAPIWsExceptionFilter = DynamicAPIWsExceptionFilter = __decorate([
|
|
27
|
+
(0, common_1.Catch)()
|
|
28
|
+
], DynamicAPIWsExceptionFilter);
|
|
29
|
+
//# sourceMappingURL=dynamic-api-ws-exception.filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dynamic-api-ws-exception.filter.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/filters/ws-exception/dynamic-api-ws-exception.filter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAsF;AACtF,mDAAiD;AAG1C,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IACtC,KAAK,CAAC,SAAsC,EAAE,IAAmB;QAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,CAAC;QAE7C,IAAI,OAAe,CAAC;QAEpB,IAAI,SAAS,YAAY,wBAAW,EAAE,CAAC;YACrC,OAAO,GAAG,SAAS,CAAC,OAAO,IAAI,mBAAmB,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,EAAE,OAAO,IAAI,SAAS,CAAC,OAAO,CAAC;QAChE,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;CACF,CAAA;AAdY,kEAA2B;sCAA3B,2BAA2B;IADvC,IAAA,cAAK,GAAE;GACK,2BAA2B,CAcvC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { JwtService } from '@nestjs/jwt';
|
|
2
|
+
import { ExtendedSocket } from '../interfaces';
|
|
3
|
+
import { BaseEntity } from '../models';
|
|
4
|
+
export declare abstract class BaseGateway<Entity extends BaseEntity> {
|
|
5
|
+
protected readonly jwtService: JwtService;
|
|
6
|
+
private readonly logger;
|
|
7
|
+
protected constructor(jwtService: JwtService);
|
|
8
|
+
protected addUserToSocket(socket: ExtendedSocket<Entity>, isPublic: boolean): void;
|
|
9
|
+
protected isValidManyBody<T extends object>(body: T): boolean;
|
|
10
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseGateway = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
const websockets_1 = require("@nestjs/websockets");
|
|
6
|
+
const lodash_1 = require("lodash");
|
|
7
|
+
const dynamic_api_module_1 = require("../dynamic-api.module");
|
|
8
|
+
class BaseGateway {
|
|
9
|
+
constructor(jwtService) {
|
|
10
|
+
this.jwtService = jwtService;
|
|
11
|
+
this.logger = new common_1.Logger(BaseGateway.name);
|
|
12
|
+
}
|
|
13
|
+
addUserToSocket(socket, isPublic) {
|
|
14
|
+
const isAuthEnabled = dynamic_api_module_1.DynamicApiModule.state.get('isAuthEnabled');
|
|
15
|
+
if (!isAuthEnabled || isPublic) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const accessToken = socket.handshake.query.accessToken;
|
|
19
|
+
let verified;
|
|
20
|
+
if (accessToken) {
|
|
21
|
+
try {
|
|
22
|
+
verified = this.jwtService.verify(accessToken, {
|
|
23
|
+
secret: dynamic_api_module_1.DynamicApiModule.state.get('jwtSecret'),
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
catch (e) {
|
|
27
|
+
this.logger.warn('Invalid access token');
|
|
28
|
+
this.logger.error(e.message, e.stack);
|
|
29
|
+
}
|
|
30
|
+
const { iat, exp, ...user } = verified ?? {};
|
|
31
|
+
socket.user = !(0, lodash_1.isEmpty)(user) ? user : undefined;
|
|
32
|
+
}
|
|
33
|
+
if (socket.user?.id && verified?.exp > Date.now() / 1000) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
throw new websockets_1.WsException('Unauthorized');
|
|
37
|
+
}
|
|
38
|
+
isValidManyBody(body) {
|
|
39
|
+
return Boolean('ids' in body &&
|
|
40
|
+
Array.isArray(body.ids) &&
|
|
41
|
+
body.ids.length);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.BaseGateway = BaseGateway;
|
|
45
|
+
//# sourceMappingURL=base.gateway.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.gateway.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/gateways/base.gateway.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC,mDAAiD;AACjD,mCAAiC;AAEjC,8DAAyD;AAIzD,MAAsB,WAAW;IAG/B,YAAyC,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;QAF9C,WAAM,GAAG,IAAI,eAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEW,CAAC;IAEzD,eAAe,CAAC,MAA8B,EAAE,QAAiB;QACzE,MAAM,aAAa,GAAG,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAElE,IAAI,CAAC,aAAa,IAAI,QAAQ,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,WAAqB,CAAC;QACjE,IAAI,QAAyD,CAAC;QAE9D,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE;oBAC7C,MAAM,EAAE,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC;iBAChD,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YACxC,CAAC;YAGD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,IAAI,EAAE,CAAC;YAE7C,MAAM,CAAC,IAAI,GAAG,CAAC,IAAA,gBAAO,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAyB,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;YACzD,OAAO;QACT,CAAC;QAED,MAAM,IAAI,wBAAW,CAAC,cAAc,CAAC,CAAC;IACxC,CAAC;IAES,eAAe,CAAmB,IAAO;QACjD,OAAO,OAAO,CAAC,KAAK,IAAI,IAAI;YAC1B,KAAK,CAAC,OAAO,CACX,IACD,CAAC,GAAG,CAAC;YAEJ,IACD,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;CACF;AA/CD,kCA+CC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './base.gateway';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./base.gateway"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/gateways/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
|
|
@@ -1,20 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.getControllerMixinData = void 0;
|
|
13
4
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
|
-
const class_transformer_1 = require("class-transformer");
|
|
15
|
-
const class_validator_1 = require("class-validator");
|
|
16
5
|
const dtos_1 = require("../dtos");
|
|
17
6
|
const mixins_1 = require("../mixins");
|
|
7
|
+
const routes_1 = require("../routes");
|
|
18
8
|
const controller_ability_predicates_helper_1 = require("./controller-ability-predicates.helper");
|
|
19
9
|
const format_helper_1 = require("./format.helper");
|
|
20
10
|
const versioning_config_helper_1 = require("./versioning-config.helper");
|
|
@@ -25,16 +15,8 @@ function buildCreateManyBodyDTO(entity, displayedName, version, CustomBody) {
|
|
|
25
15
|
value: `${displayedName}${(0, versioning_config_helper_1.addVersionSuffix)(version)}Dto`,
|
|
26
16
|
writable: false,
|
|
27
17
|
});
|
|
28
|
-
class CreateManyBody {
|
|
18
|
+
class CreateManyBody extends (0, routes_1.CreateManyBodyDtoMixin)(DtoBody) {
|
|
29
19
|
}
|
|
30
|
-
__decorate([
|
|
31
|
-
(0, swagger_1.ApiProperty)({ type: [DtoBody] }),
|
|
32
|
-
(0, class_validator_1.ValidateNested)({ each: true }),
|
|
33
|
-
(0, class_validator_1.IsInstance)(DtoBody, { each: true }),
|
|
34
|
-
(0, class_validator_1.ArrayMinSize)(1),
|
|
35
|
-
(0, class_transformer_1.Type)(() => DtoBody),
|
|
36
|
-
__metadata("design:type", Array)
|
|
37
|
-
], CreateManyBody.prototype, "list", void 0);
|
|
38
20
|
class RouteBody extends (0, swagger_1.PickType)(CustomBody ?? CreateManyBody, ['list']) {
|
|
39
21
|
}
|
|
40
22
|
Object.defineProperty(RouteBody, 'name', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller-mixin.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/controller-mixin.helper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"controller-mixin.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/controller-mixin.helper.ts"],"names":[],"mappings":";;;AACA,6CAA2C;AAC3C,kCAAuD;AAEvD,sCAAkE;AAElE,sCAAmD;AACnD,iGAAqG;AACrG,mDAAqD;AACrD,yEAA8D;AAE9D,SAAS,sBAAsB,CAC7B,MAAoB,EACpB,aAAqB,EACrB,OAAe,EACf,UAAgB;IAEhB,MAAM,OAAQ,SAAQ,IAAA,wBAAe,EAAC,MAAM,CAAC;KAAG;IAEhD,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE;QACrC,KAAK,EAAE,GAAG,aAAa,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,KAAK;QACxD,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,cAAe,SAAQ,IAAA,+BAAsB,EAAC,OAAO,CAAC;KAAG;IAE/D,MAAM,SAAU,SAAQ,IAAA,kBAAQ,EAAC,UAAU,IAAI,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC;KAAG;IAE3E,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE;QACvC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,aAAa,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,KAAK;QACjG,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,uBAAuB,CAC9B,aAAqB,EACrB,OAAe,EACf,eAAqB;IAErB,MAAM,cAAe,SAAQ,CAC3B,eAAe,IAAI,sBAAe,CACnC;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE;QAC5C,KAAK,EAAE,SAAS,aAAa,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,WAAW;QACpE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAoB,EACpB,SAAiB,EACjB,aAAqB,EACrB,OAAe,EACf,UAAgB;IAEhB,MAAM,YAAY,GAAG,SAAS,KAAK,WAAW,IAAI,SAAS,KAAK,YAAY,CAAC;IAE7E,MAAM,SAAU,SAAQ,CACtB,UAAU,IAAI,IAAA,wBAAe,EAAC,MAAM,EAAE,YAAY,CAAC,CACpD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE;QACvC,KAAK,EAAE,GAAG,SAAS,GAAG,aAAa,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,KAAK;QACpE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,0BAA0B,CACjC,MAAoB,EACpB,SAAiB,EACjB,aAAqB,EACrB,OAAe,EACf,eAAqB;IAErB,MAAM,cAAe,SAAQ,CAC3B,eAAe,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE;QAC5C,KAAK,EAAE,eAAe;YACpB,CAAC,CAAC,GAAG,SAAS,GAAG,aAAa,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,WAAW;YACrE,CAAC,CAAC,GAAG,aAAa,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,WAAW;QAC3D,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,SAAS,kBAAkB,CACzB,MAAoB,EACpB,SAAiB,EACjB,aAAqB,EACrB,OAAe,EACf,IAAgB;IAEhB,MAAM,EACJ,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,eAAe,GAC3B,GAAG,IAAI,IAAI,EAAE,CAAC;IAEf,MAAM,CAAC,cAAc,CAAC,kBAAW,EAAE,MAAM,EAAE;QACzC,KAAK,EAAE,GAAG,aAAa,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,OAAO;QAC1D,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC/F,MAAM,cAAc,GAAG,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;IAE9G,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,YAAY;YACf,OAAO;gBACL,SAAS,EAAE,sBAAsB,CAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,CAAC;gBAC7E,cAAc;aACf,CAAC;QAEJ,KAAK,YAAY;YACf,OAAO;gBACL,cAAc,EAAE,uBAAuB,CAAC,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC;aACjF,CAAC;QAEJ,KAAK,WAAW;YACd,OAAO;gBACL,WAAW,EAAX,kBAAW;gBACX,cAAc,EAAE,uBAAuB,CAAC,aAAa,EAAE,OAAO,EAAE,eAAe,CAAC;aACjF,CAAC;QAEJ,KAAK,WAAW,CAAC;QACjB,KAAK,eAAe,CAAC;QACrB,KAAK,YAAY;YACf,OAAO;gBACL,SAAS;gBACT,cAAc;aACf,CAAC;QAEJ,KAAK,cAAc,CAAC;QACpB,KAAK,YAAY,CAAC;QAClB,KAAK,WAAW;YACd,OAAO;gBACL,SAAS;gBACT,cAAc;gBACd,WAAW,EAAX,kBAAW;aACZ,CAAC;QAEJ,KAAK,SAAS;YACZ,OAAO;gBACL,cAAc;aACf,CAAC;QAEJ,KAAK,QAAQ;YACX,OAAO;gBACL,WAAW,EAAX,kBAAW;gBACX,cAAc;aACf,CAAC;QAEJ;YACE,MAAM,IAAI,KAAK,CAAC,cAAc,SAAS,mBAAmB,CAAC,CAAC;IAChE,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,MAAoB,EACpB,EACE,IAAI,EACJ,MAAM,EACN,QAAQ,EAAE,kBAAkB,EAC5B,iBAAiB,EAAE,2BAA2B,GACV,EACtC,EACE,IAAI,EAAE,SAAS,EACf,WAAW,EACX,IAAI,EACJ,QAAQ,EAAE,aAAa,EACvB,gBAAgB,EAAE,qBAAqB,GACT,EAChC,OAAgB;IAEhB,MAAM,aAAa,GAAG,IAAA,kCAAkB,EAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAE9D,IAAI,QAAiB,CAAC;IACtB,IAAI,OAAO,aAAa,KAAK,SAAS,EAAE,CAAC;QACvC,QAAQ,GAAG,aAAa,CAAC;IAC3B,CAAC;SAAM,IAAI,OAAO,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACnD,QAAQ,GAAG,kBAAkB,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,KAAK,CAAC;IACnB,CAAC;IAED,MAAM,gBAAgB,GAAG,qBAAqB,IAAI,IAAA,kFAA2C,EAC3F,2BAA2B,EAC3B,SAAS,CACV,CAAC;IAEF,OAAO;QACL,GAAG,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC;QACtE,SAAS;QACT,aAAa;QACb,WAAW;QACX,QAAQ;QACR,gBAAgB;KACjB,CAAC;AACJ,CAAC;AAEQ,wDAAsB"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { RouteType } from '../interfaces';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
declare function pascalCase(str?: string): string;
|
|
3
|
+
declare function isValidVersion(version: string): boolean;
|
|
4
|
+
declare function getFormattedApiTag(apiTag: string | undefined, entityName: string): string;
|
|
5
|
+
declare function provideName(routeType: RouteType, entityName: string, version: string | undefined, suffix: 'Service' | 'Controller' | 'PoliciesGuard' | 'Gateway'): string;
|
|
6
|
+
declare function isEmptyObject(obj?: unknown): boolean;
|
|
7
|
+
declare function isNotEmptyObject(obj?: unknown): boolean;
|
|
8
|
+
export { pascalCase, isValidVersion, getFormattedApiTag, provideName, isEmptyObject, isNotEmptyObject, };
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.provideName = exports.getFormattedApiTag = exports.isValidVersion = exports.pascalCase = void 0;
|
|
3
|
+
exports.isNotEmptyObject = exports.isEmptyObject = exports.provideName = exports.getFormattedApiTag = exports.isValidVersion = exports.pascalCase = void 0;
|
|
4
4
|
const lodash_1 = require("lodash");
|
|
5
5
|
const versioning_config_helper_1 = require("./versioning-config.helper");
|
|
6
|
+
function getNamePrefix(routeType, entityName, version) {
|
|
7
|
+
return `${routeType}${entityName}${(0, versioning_config_helper_1.addVersionSuffix)(version)}`;
|
|
8
|
+
}
|
|
6
9
|
function pascalCase(str) {
|
|
7
10
|
return str ? (0, lodash_1.upperFirst)((0, lodash_1.camelCase)(str)) : undefined;
|
|
8
11
|
}
|
|
@@ -15,11 +18,16 @@ function getFormattedApiTag(apiTag, entityName) {
|
|
|
15
18
|
return pascalCase(apiTag) ?? entityName;
|
|
16
19
|
}
|
|
17
20
|
exports.getFormattedApiTag = getFormattedApiTag;
|
|
18
|
-
function getNamePrefix(routeType, entityName, version) {
|
|
19
|
-
return `${routeType}${entityName}${(0, versioning_config_helper_1.addVersionSuffix)(version)}`;
|
|
20
|
-
}
|
|
21
21
|
function provideName(routeType, entityName, version, suffix) {
|
|
22
22
|
return `${getNamePrefix(routeType, entityName, version)}${suffix}`;
|
|
23
23
|
}
|
|
24
24
|
exports.provideName = provideName;
|
|
25
|
+
function isEmptyObject(obj) {
|
|
26
|
+
return obj ? typeof obj === 'object' && Object.keys(obj).length === 0 : true;
|
|
27
|
+
}
|
|
28
|
+
exports.isEmptyObject = isEmptyObject;
|
|
29
|
+
function isNotEmptyObject(obj) {
|
|
30
|
+
return !isEmptyObject(obj);
|
|
31
|
+
}
|
|
32
|
+
exports.isNotEmptyObject = isNotEmptyObject;
|
|
25
33
|
//# sourceMappingURL=format.helper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/format.helper.ts"],"names":[],"mappings":";;;AAAA,mCAA+C;AAE/C,yEAA8D;AAE9D,
|
|
1
|
+
{"version":3,"file":"format.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/format.helper.ts"],"names":[],"mappings":";;;AAAA,mCAA+C;AAE/C,yEAA8D;AAE9D,SAAS,aAAa,CAAC,SAAoB,EAAE,UAAkB,EAAE,OAA2B;IAC1F,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,IAAA,2CAAgB,EAAC,OAAO,CAAC,EAAE,CAAC;AACjE,CAAC;AAED,SAAS,UAAU,CAAC,GAAY;IAC9B,OAAO,GAAG,CAAC,CAAC,CAAC,IAAA,mBAAU,EAAC,IAAA,kBAAS,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AA4BC,gCAAU;AA1BZ,SAAS,cAAc,CAAC,OAAe;IACrC,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAyBC,wCAAc;AAvBhB,SAAS,kBAAkB,CAAC,MAA0B,EAAE,UAAkB;IACxE,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC;AAC1C,CAAC;AAsBC,gDAAkB;AApBpB,SAAS,WAAW,CAClB,SAAoB,EACpB,UAAkB,EAClB,OAA2B,EAC3B,MAA8D;IAE9D,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAAC;AACrE,CAAC;AAcC,kCAAW;AAZb,SAAS,aAAa,CAAC,GAAa;IAClC,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/E,CAAC;AAWC,sCAAa;AATf,SAAS,gBAAgB,CAAC,GAAa;IACrC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC;AAQC,4CAAgB"}
|
package/src/helpers/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export * from './format.helper';
|
|
|
4
4
|
export * from './route-decorators.helper';
|
|
5
5
|
export * from './route-description.helper';
|
|
6
6
|
export * from './schema.helper';
|
|
7
|
+
export * from './socket-config.helper';
|
|
7
8
|
export * from './swagger-config.helper';
|
|
8
9
|
export * from './validation-config.helper';
|
|
9
10
|
export * from './versioning-config.helper';
|
package/src/helpers/index.js
CHANGED
|
@@ -20,6 +20,7 @@ __exportStar(require("./format.helper"), exports);
|
|
|
20
20
|
__exportStar(require("./route-decorators.helper"), exports);
|
|
21
21
|
__exportStar(require("./route-description.helper"), exports);
|
|
22
22
|
__exportStar(require("./schema.helper"), exports);
|
|
23
|
+
__exportStar(require("./socket-config.helper"), exports);
|
|
23
24
|
__exportStar(require("./swagger-config.helper"), exports);
|
|
24
25
|
__exportStar(require("./validation-config.helper"), exports);
|
|
25
26
|
__exportStar(require("./versioning-config.helper"), exports);
|
package/src/helpers/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yEAAuD;AACvD,4DAA0C;AAC1C,kDAAgC;AAChC,4DAA0C;AAC1C,6DAA2C;AAC3C,kDAAgC;AAChC,0DAAwC;AACxC,6DAA2C;AAC3C,6DAA2C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yEAAuD;AACvD,4DAA0C;AAC1C,kDAAgC;AAChC,4DAA0C;AAC1C,6DAA2C;AAC3C,kDAAgC;AAChC,yDAAuC;AACvC,0DAAwC;AACxC,6DAA2C;AAC3C,6DAA2C"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { INestApplication } from '@nestjs/common';
|
|
2
|
+
import { DynamicApiWebSocketOptions, GatewayOptions } from '../interfaces';
|
|
3
|
+
declare function enableDynamicAPIWebSockets(app: INestApplication, maxListeners?: number): void;
|
|
4
|
+
declare function initializeConfigFromOptions(options?: DynamicApiWebSocketOptions): GatewayOptions | undefined;
|
|
5
|
+
export { initializeConfigFromOptions, enableDynamicAPIWebSockets };
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.enableDynamicAPIWebSockets = exports.initializeConfigFromOptions = void 0;
|
|
4
|
+
const socket_adapter_1 = require("../adapters/socket-adapter");
|
|
5
|
+
function initEventsListeners(maxListeners = 10) {
|
|
6
|
+
require('events').EventEmitter.prototype._maxListeners = 100;
|
|
7
|
+
require('events').defaultMaxListeners = 100;
|
|
8
|
+
require('events').EventEmitter.prototype.setMaxListeners(maxListeners);
|
|
9
|
+
}
|
|
10
|
+
function enableDynamicAPIWebSockets(app, maxListeners) {
|
|
11
|
+
initEventsListeners(maxListeners);
|
|
12
|
+
process.on('warning', function (err) {
|
|
13
|
+
if ('MaxListenersExceededWarning' == err.name) {
|
|
14
|
+
console.warn('\nTo fix the MaxListenersExceededWarning, you can increase the maxListeners');
|
|
15
|
+
console.warn('by passing the value to the enableDynamicAPIWebSockets function as the second argument:\n');
|
|
16
|
+
console.warn('>>> enableDynamicAPIWebSockets(app, 15);\n\n');
|
|
17
|
+
process.exit(1);
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
app.useWebSocketAdapter(new socket_adapter_1.SocketAdapter(app));
|
|
21
|
+
}
|
|
22
|
+
exports.enableDynamicAPIWebSockets = enableDynamicAPIWebSockets;
|
|
23
|
+
function initializeConfigFromOptions(options) {
|
|
24
|
+
if (!options) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
return typeof options === 'boolean' ? {} : options;
|
|
28
|
+
}
|
|
29
|
+
exports.initializeConfigFromOptions = initializeConfigFromOptions;
|
|
30
|
+
//# sourceMappingURL=socket-config.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"socket-config.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/socket-config.helper.ts"],"names":[],"mappings":";;;AACA,+DAA2D;AAG3D,SAAS,mBAAmB,CAAC,YAAY,GAAG,EAAE;IAC5C,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,aAAa,GAAG,GAAG,CAAC;IAC7D,OAAO,CAAC,QAAQ,CAAC,CAAC,mBAAmB,GAAG,GAAG,CAAC;IAC5C,OAAO,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;AACzE,CAAC;AAOD,SAAS,0BAA0B,CAAC,GAAqB,EAAE,YAAqB;IAC9E,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAElC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,GAAG;QACjC,IAAI,6BAA6B,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9C,OAAO,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;YAC5F,OAAO,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAC;YAC1G,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,mBAAmB,CAAC,IAAI,8BAAa,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAUqC,gEAA0B;AARhE,SAAS,2BAA2B,CAAC,OAAoC;IACvE,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,OAAO,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AACrD,CAAC;AAEQ,kEAA2B"}
|