mongodb-dynamic-api 1.2.0-beta.5 → 1.2.0-beta.6

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 CHANGED
@@ -1,5 +1,7 @@
1
1
  Changelog
2
2
 
3
+ ## [1.2.0-beta.6](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/prerelease...1.2.0-beta.6) (2024-03-01)
4
+
3
5
  ## [1.2.0-beta.5](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/prerelease...1.2.0-beta.5) (2024-03-01)
4
6
 
5
7
  ## [1.2.0-beta.4](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/prerelease...1.2.0-beta.4) (2024-02-29)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mongodb-dynamic-api",
3
- "version": "1.2.0-beta.5",
3
+ "version": "1.2.0-beta.6",
4
4
  "description": "Auto generated CRUD API for MongoDB using NestJS",
5
5
  "author": "Mickaël NODANCHE <mikeonline75@gmail.com> (https://cv-mikeonline.web.app)",
6
6
  "homepage": "https://mikedev75015.github.io",
@@ -35,7 +35,6 @@
35
35
  ],
36
36
  "dependencies": {
37
37
  "@nestjs/common": "^10.3.2",
38
- "@nestjs/config": "^3.2.0",
39
38
  "@nestjs/core": "^10.3.2",
40
39
  "@nestjs/mongoose": "^10.0.4",
41
40
  "@nestjs/platform-express": "^10.3.2",
@@ -2,6 +2,7 @@ import { DynamicModule } from '@nestjs/common';
2
2
  import { DynamicApiOptions } from './interfaces';
3
3
  import { BaseEntity } from './models';
4
4
  export declare class DynamicApiModule {
5
- static forRoot(mongodbUri?: string): DynamicModule;
5
+ static connectionName: string;
6
+ static forRoot(uri: string): DynamicModule;
6
7
  static forFeature<Entity extends BaseEntity>({ entity, controllerOptions: { path, apiTag, version: apiVersion }, routes, }: DynamicApiOptions<Entity>): DynamicModule;
7
8
  }
@@ -11,20 +11,16 @@ exports.DynamicApiModule = void 0;
11
11
  const common_1 = require("@nestjs/common");
12
12
  const mongoose_1 = require("@nestjs/mongoose");
13
13
  const decorators_1 = require("./decorators");
14
- const dynamic_api_constant_1 = require("./dynamic-api.constant");
15
14
  const modules_1 = require("./modules");
16
15
  let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
17
- static forRoot(mongodbUri) {
18
- if (!mongodbUri && (!process.env.BDD_URL || !process.env.BDD_BASE)) {
19
- throw new Error('You must provide a mongodbUri or set the BDD_URL and BDD_BASE environment variables');
16
+ static forRoot(uri) {
17
+ if (!uri) {
18
+ throw new Error('You must provide a valid mongodb uri in the forRoot method to use MongoDB Dynamic API');
20
19
  }
21
20
  return {
22
21
  module: DynamicApiModule_1,
23
22
  imports: [
24
- mongoose_1.MongooseModule.forRoot(mongodbUri ??
25
- `${process.env.BDD_URL}/${process.env.BDD_BASE}?retryWrites=true&w=majority`, {
26
- connectionName: process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME,
27
- }),
23
+ mongoose_1.MongooseModule.forRoot(uri, { connectionName: DynamicApiModule_1.connectionName }),
28
24
  ],
29
25
  };
30
26
  }
@@ -41,7 +37,7 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
41
37
  schema[method](type, { document: true, query: true, ...options }, callback);
42
38
  });
43
39
  }
44
- const databaseModule = mongoose_1.MongooseModule.forFeature([{ name: entity.name, schema }], process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME);
40
+ const databaseModule = mongoose_1.MongooseModule.forFeature([{ name: entity.name, schema }], DynamicApiModule_1.connectionName);
45
41
  return {
46
42
  module: DynamicApiModule_1,
47
43
  imports: [
@@ -75,6 +71,7 @@ let DynamicApiModule = DynamicApiModule_1 = class DynamicApiModule {
75
71
  }
76
72
  };
77
73
  exports.DynamicApiModule = DynamicApiModule;
74
+ DynamicApiModule.connectionName = 'dynamic-api-connection';
78
75
  exports.DynamicApiModule = DynamicApiModule = DynamicApiModule_1 = __decorate([
79
76
  (0, common_1.Module)({})
80
77
  ], DynamicApiModule);
@@ -1 +1,2 @@
1
1
  export * from './route-decorators.helper';
2
+ export * from './swagger.helper';
@@ -15,3 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./route-decorators.helper"), exports);
18
+ __exportStar(require("./swagger.helper"), exports);
@@ -0,0 +1,12 @@
1
+ import { INestApplication } from '@nestjs/common';
2
+ import { OpenAPIObject, SwaggerDocumentOptions } from '@nestjs/swagger';
3
+ interface DynamicAPISwaggerOptions {
4
+ title?: string;
5
+ description?: string;
6
+ version?: string;
7
+ path?: string;
8
+ swaggerConfig?: Omit<OpenAPIObject, "paths">;
9
+ swaggerOptions?: SwaggerDocumentOptions;
10
+ }
11
+ declare function enableDynamicAPISwagger(app: INestApplication, options?: DynamicAPISwaggerOptions): void;
12
+ export { enableDynamicAPISwagger };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.enableDynamicAPISwagger = void 0;
4
+ const swagger_1 = require("@nestjs/swagger");
5
+ const version_json_1 = require("../version.json");
6
+ function enableDynamicAPISwagger(app, options) {
7
+ const { title = 'MongoDB Dynamic API', description = 'Auto generated CRUD for MongoDB', version = version_json_1.default?.version, path = '/api', swaggerOptions, swaggerConfig, } = options ?? {};
8
+ const defaultConfig = new swagger_1.DocumentBuilder()
9
+ .setTitle(title)
10
+ .setDescription(description)
11
+ .setVersion(version)
12
+ .build();
13
+ const document = swagger_1.SwaggerModule.createDocument(app, { ...defaultConfig, ...swaggerConfig }, swaggerOptions);
14
+ swagger_1.SwaggerModule.setup(path, app, document);
15
+ }
16
+ exports.enableDynamicAPISwagger = enableDynamicAPISwagger;
package/src/index.d.ts CHANGED
@@ -8,4 +8,3 @@ export * from './models';
8
8
  export * from './modules';
9
9
  export * from './services';
10
10
  export * from './dynamic-api.module';
11
- export * from './dynamic-api.constant';
package/src/index.js CHANGED
@@ -24,4 +24,3 @@ __exportStar(require("./models"), exports);
24
24
  __exportStar(require("./modules"), exports);
25
25
  __exportStar(require("./services"), exports);
26
26
  __exportStar(require("./dynamic-api.module"), exports);
27
- __exportStar(require("./dynamic-api.constant"), exports);
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_create_many_service_1 = require("./base-create-many.service");
22
22
  const create_many_controller_mixin_1 = require("./create-many-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createCreateManyServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  CreateManyService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], CreateManyService);
38
38
  Object.defineProperty(CreateManyService, 'name', {
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_create_one_service_1 = require("./base-create-one.service");
22
22
  const create_one_controller_mixin_1 = require("./create-one-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createCreateOneServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  CreateOneService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], CreateOneService);
38
38
  Object.defineProperty(CreateOneService, 'name', {
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_delete_one_service_1 = require("./base-delete-one.service");
22
22
  const delete_one_controller_mixin_1 = require("./delete-one-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createDeleteOneServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  DeleteOneService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], DeleteOneService);
38
38
  Object.defineProperty(DeleteOneService, 'name', {
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_duplicate_one_service_1 = require("./base-duplicate-one.service");
22
22
  const duplicate_one_controller_mixin_1 = require("./duplicate-one-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createDuplicateOneServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  DuplicateOneService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], DuplicateOneService);
38
38
  Object.defineProperty(DuplicateOneService, 'name', {
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_get_many_service_1 = require("./base-get-many.service");
22
22
  const get_many_controller_mixin_1 = require("./get-many-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createGetManyServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  GetManyService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], GetManyService);
38
38
  Object.defineProperty(GetManyService, 'name', {
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_get_one_service_1 = require("./base-get-one.service");
22
22
  const get_one_controller_mixin_1 = require("./get-one-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createGetOneServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  GetOneService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], GetOneService);
38
38
  Object.defineProperty(GetOneService, 'name', {
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_replace_one_service_1 = require("./base-replace-one.service");
22
22
  const replace_one_controller_mixin_1 = require("./replace-one-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createReplaceOneServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  ReplaceOneService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], ReplaceOneService);
38
38
  Object.defineProperty(ReplaceOneService, 'name', {
@@ -17,7 +17,7 @@ const common_1 = require("@nestjs/common");
17
17
  const mongoose_1 = require("@nestjs/mongoose");
18
18
  const swagger_1 = require("@nestjs/swagger");
19
19
  const mongoose_2 = require("mongoose");
20
- const dynamic_api_constant_1 = require("../../dynamic-api.constant");
20
+ const dynamic_api_module_1 = require("../../dynamic-api.module");
21
21
  const base_update_one_service_1 = require("./base-update-one.service");
22
22
  const update_one_controller_mixin_1 = require("./update-one-controller.mixin");
23
23
  function provideServiceName(entityName) {
@@ -32,7 +32,7 @@ function createUpdateOneServiceProvider(entity) {
32
32
  }
33
33
  };
34
34
  UpdateOneService = __decorate([
35
- __param(0, (0, mongoose_1.InjectModel)(entity.name, process.env.BBD_CONNECTION_NAME || dynamic_api_constant_1.DEFAULT_BDD_CONNECTION_NAME)),
35
+ __param(0, (0, mongoose_1.InjectModel)(entity.name, dynamic_api_module_1.DynamicApiModule.connectionName)),
36
36
  __metadata("design:paramtypes", [mongoose_2.Model])
37
37
  ], UpdateOneService);
38
38
  Object.defineProperty(UpdateOneService, 'name', {
@@ -0,0 +1,3 @@
1
+ {
2
+ "version": "1.2.0-beta.6"
3
+ }