@common-stack/store-mongo 0.6.1-alpha.3 → 1.0.1-alpha.0

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.
Files changed (51) hide show
  1. package/lib/dataloaders/bulk-dataloader.cjs +26 -0
  2. package/lib/dataloaders/bulk-dataloader.cjs.map +1 -0
  3. package/lib/dataloaders/bulk-dataloader.d.ts +5 -3
  4. package/lib/dataloaders/bulk-dataloader.mjs +26 -0
  5. package/lib/dataloaders/bulk-dataloader.mjs.map +1 -0
  6. package/lib/helpers/mongoose-connection.cjs +18 -0
  7. package/lib/helpers/mongoose-connection.cjs.map +1 -0
  8. package/lib/helpers/mongoose-connection.mjs +18 -0
  9. package/lib/helpers/mongoose-connection.mjs.map +1 -0
  10. package/lib/index.cjs +1 -0
  11. package/lib/index.cjs.map +1 -0
  12. package/lib/index.mjs +1 -0
  13. package/lib/index.mjs.map +1 -0
  14. package/lib/interfaces/base-repository.cjs +5 -0
  15. package/lib/interfaces/base-repository.cjs.map +1 -0
  16. package/lib/interfaces/base-repository.d.ts +1 -4
  17. package/lib/interfaces/base-repository.mjs +5 -0
  18. package/lib/interfaces/base-repository.mjs.map +1 -0
  19. package/lib/interfaces/dataloaders.d.ts +9 -2
  20. package/lib/interfaces/generated-models.cjs +29 -0
  21. package/lib/interfaces/generated-models.cjs.map +1 -0
  22. package/lib/interfaces/generated-models.d.ts +17 -15
  23. package/lib/interfaces/generated-models.mjs +29 -0
  24. package/lib/interfaces/generated-models.mjs.map +1 -0
  25. package/lib/interfaces/mongoose-settings.d.ts +1 -5
  26. package/lib/mixins/base-service-mixin.cjs +123 -0
  27. package/lib/mixins/base-service-mixin.cjs.map +1 -0
  28. package/lib/mixins/base-service-mixin.d.ts +3 -3
  29. package/lib/mixins/base-service-mixin.mjs +123 -0
  30. package/lib/mixins/base-service-mixin.mjs.map +1 -0
  31. package/lib/services/base-proxy-service.cjs +45 -0
  32. package/lib/services/base-proxy-service.cjs.map +1 -0
  33. package/lib/services/base-proxy-service.d.ts +5 -5
  34. package/lib/services/base-proxy-service.mjs +45 -0
  35. package/lib/services/base-proxy-service.mjs.map +1 -0
  36. package/lib/services/base-service.cjs +61 -0
  37. package/lib/services/base-service.cjs.map +1 -0
  38. package/lib/services/base-service.mjs +61 -0
  39. package/lib/services/base-service.mjs.map +1 -0
  40. package/lib/store/models/common-options.cjs +20 -0
  41. package/lib/store/models/common-options.cjs.map +1 -0
  42. package/lib/store/models/common-options.mjs +20 -0
  43. package/lib/store/models/common-options.mjs.map +1 -0
  44. package/lib/store/repositories/base-repository.cjs +241 -0
  45. package/lib/store/repositories/base-repository.cjs.map +1 -0
  46. package/lib/store/repositories/base-repository.d.ts +7 -1
  47. package/lib/store/repositories/base-repository.mjs +241 -0
  48. package/lib/store/repositories/base-repository.mjs.map +1 -0
  49. package/package.json +11 -6
  50. package/lib/index.js +0 -993
  51. package/lib/index.js.map +0 -1
@@ -0,0 +1,26 @@
1
+ 'use strict';var tslib=require('tslib'),DataLoader=require('dataloader'),inversify=require('inversify');exports.BulkDataLoader = class BulkDataLoader extends DataLoader {
2
+ constructor(service) {
3
+ super(async (ids) => {
4
+ const data = await this.service.getByIds(ids);
5
+ return ids.map((id) => data.find((record) => record.id === id) || null);
6
+ });
7
+ this.service = service;
8
+ this.withOptions = new DataLoader(async (options) => {
9
+ const [{ searchKey, ...rest }] = options;
10
+ const ids = options.map((option) => option.id);
11
+ const results = await this.service.getAll({
12
+ ...rest,
13
+ criteria: {
14
+ ...rest.criteria,
15
+ [searchKey]: { $in: ids },
16
+ },
17
+ });
18
+ return ids.map((modelId) => results.filter((item) => item[searchKey].toString() === modelId.toString()));
19
+ });
20
+ }
21
+ };
22
+ exports.BulkDataLoader = tslib.__decorate([
23
+ inversify.injectable(),
24
+ tslib.__param(0, inversify.unmanaged()),
25
+ tslib.__metadata("design:paramtypes", [Object])
26
+ ], exports.BulkDataLoader);//# sourceMappingURL=bulk-dataloader.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk-dataloader.cjs","sources":["../../src/dataloaders/bulk-dataloader.ts"],"sourcesContent":[null],"names":["BulkDataLoader","__decorate","injectable","__param","unmanaged"],"mappings":"wGAKaA,sBAAc,GAApB,MAAM,cAAyC,SAAQ,UAA4B,CAAA;AACtF,IAAA,WAAA,CAA0C,OAAwB,EAAA;AAC9D,QAAA,KAAK,CAAC,OAAO,GAAa,KAAI;YAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9C,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;AAC5E,SAAC,CAAC,CAAC;QAJmC,IAAO,CAAA,OAAA,GAAP,OAAO,CAAiB;QAOlE,IAAW,CAAA,WAAA,GAAG,IAAI,UAAU,CAA4B,OAAO,OAAO,KAAI;YACtE,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC;AACzC,YAAA,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;AACtC,gBAAA,GAAG,IAAI;AACP,gBAAA,QAAQ,EAAE;oBACN,GAAG,IAAI,CAAC,QAAQ;AAChB,oBAAA,CAAC,SAAS,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;AAC5B,iBAAA;AACJ,aAAA,CAAC,CAAC;AACH,YAAA,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAC7G,SAAC,CAAC,CAAC;KAbF;EAcJ;AApBYA,sBAAc,GAAAC,gBAAA,CAAA;AAD1B,IAAAC,oBAAU,EAAE;IAEIC,aAAA,CAAA,CAAA,EAAAC,mBAAS,EAAE,CAAA;;AADf,CAAA,EAAAJ,sBAAc,CAoB1B"}
@@ -1,7 +1,9 @@
1
- import * as DataLoader from 'dataloader';
2
- import { IBaseService } from '../interfaces';
1
+ import DataLoader from 'dataloader';
2
+ import { DataLoaderOptions, IBaseService, IDataLoader } from '../interfaces';
3
3
  export declare class BulkDataLoader<T extends {
4
4
  id: string;
5
- }> extends DataLoader<string, T> {
5
+ }> extends DataLoader<string, T | null> implements IDataLoader<T> {
6
+ private readonly service;
6
7
  constructor(service: IBaseService<T>);
8
+ withOptions: DataLoader<DataLoaderOptions<T>, T[], DataLoaderOptions<T>>;
7
9
  }
@@ -0,0 +1,26 @@
1
+ import {__decorate,__param,__metadata}from'tslib';import DataLoader from'dataloader';import {injectable,unmanaged}from'inversify';let BulkDataLoader = class BulkDataLoader extends DataLoader {
2
+ constructor(service) {
3
+ super(async (ids) => {
4
+ const data = await this.service.getByIds(ids);
5
+ return ids.map((id) => data.find((record) => record.id === id) || null);
6
+ });
7
+ this.service = service;
8
+ this.withOptions = new DataLoader(async (options) => {
9
+ const [{ searchKey, ...rest }] = options;
10
+ const ids = options.map((option) => option.id);
11
+ const results = await this.service.getAll({
12
+ ...rest,
13
+ criteria: {
14
+ ...rest.criteria,
15
+ [searchKey]: { $in: ids },
16
+ },
17
+ });
18
+ return ids.map((modelId) => results.filter((item) => item[searchKey].toString() === modelId.toString()));
19
+ });
20
+ }
21
+ };
22
+ BulkDataLoader = __decorate([
23
+ injectable(),
24
+ __param(0, unmanaged()),
25
+ __metadata("design:paramtypes", [Object])
26
+ ], BulkDataLoader);export{BulkDataLoader};//# sourceMappingURL=bulk-dataloader.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bulk-dataloader.mjs","sources":["../../src/dataloaders/bulk-dataloader.ts"],"sourcesContent":[null],"names":[],"mappings":"kIAKO,IAAM,cAAc,GAApB,MAAM,cAAyC,SAAQ,UAA4B,CAAA;AACtF,IAAA,WAAA,CAA0C,OAAwB,EAAA;AAC9D,QAAA,KAAK,CAAC,OAAO,GAAa,KAAI;YAC1B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC9C,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC;AAC5E,SAAC,CAAC,CAAC;QAJmC,IAAO,CAAA,OAAA,GAAP,OAAO,CAAiB;QAOlE,IAAW,CAAA,WAAA,GAAG,IAAI,UAAU,CAA4B,OAAO,OAAO,KAAI;YACtE,MAAM,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC;AACzC,YAAA,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;AACtC,gBAAA,GAAG,IAAI;AACP,gBAAA,QAAQ,EAAE;oBACN,GAAG,IAAI,CAAC,QAAQ;AAChB,oBAAA,CAAC,SAAS,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;AAC5B,iBAAA;AACJ,aAAA,CAAC,CAAC;AACH,YAAA,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAC7G,SAAC,CAAC,CAAC;KAbF;EAcJ;AApBY,cAAc,GAAA,UAAA,CAAA;AAD1B,IAAA,UAAU,EAAE;IAEI,OAAA,CAAA,CAAA,EAAA,SAAS,EAAE,CAAA;;AADf,CAAA,EAAA,cAAc,CAoB1B"}
@@ -0,0 +1,18 @@
1
+ 'use strict';var mongoose=require('mongoose');function _interopNamespaceDefault(e){var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var mongoose__namespace=/*#__PURE__*/_interopNamespaceDefault(mongoose);const generateMongo = (mongoUrl) => {
2
+ // creates default connection
3
+ mongoose__namespace
4
+ .connect(mongoUrl, {})
5
+ .then(() => {
6
+ console.info('mogoose connect - success');
7
+ // console.info(`uri - ${uri}`);
8
+ // console.info(`connectionOptions - ${connectionOptions}`);
9
+ })
10
+ .catch((err) => {
11
+ console.error('mogoose connect - error - ', err);
12
+ // throw err;
13
+ process.kill(process.pid);
14
+ });
15
+ // to access default connection
16
+ const mongooseConnection = mongoose__namespace.connection;
17
+ return mongooseConnection;
18
+ };exports.generateMongo=generateMongo;//# sourceMappingURL=mongoose-connection.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongoose-connection.cjs","sources":["../../src/helpers/mongoose-connection.ts"],"sourcesContent":[null],"names":["mongoose"],"mappings":"oZAEA,MAAM,aAAa,GAAqC,CAAC,QAAQ,KAAI;;IAEjEA,mBAAQ;AACH,SAAA,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,IAAI,CAAC,MAAK;AACP,QAAA,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;;;AAG9C,KAAC,CAAC;AACD,SAAA,KAAK,CAAC,CAAC,GAAmB,KAAI;AAC3B,QAAA,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;;AAEjD,QAAA,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC9B,KAAC,CAAC,CAAC;;AAEP,IAAA,MAAM,kBAAkB,GAAwBA,mBAAQ,CAAC,UAAU,CAAC;AAEpE,IAAA,OAAO,kBAAkB,CAAC;AAC9B"}
@@ -0,0 +1,18 @@
1
+ import*as mongoose from'mongoose';const generateMongo = (mongoUrl) => {
2
+ // creates default connection
3
+ mongoose
4
+ .connect(mongoUrl, {})
5
+ .then(() => {
6
+ console.info('mogoose connect - success');
7
+ // console.info(`uri - ${uri}`);
8
+ // console.info(`connectionOptions - ${connectionOptions}`);
9
+ })
10
+ .catch((err) => {
11
+ console.error('mogoose connect - error - ', err);
12
+ // throw err;
13
+ process.kill(process.pid);
14
+ });
15
+ // to access default connection
16
+ const mongooseConnection = mongoose.connection;
17
+ return mongooseConnection;
18
+ };export{generateMongo};//# sourceMappingURL=mongoose-connection.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongoose-connection.mjs","sources":["../../src/helpers/mongoose-connection.ts"],"sourcesContent":[null],"names":[],"mappings":"kCAEA,MAAM,aAAa,GAAqC,CAAC,QAAQ,KAAI;;IAEjE,QAAQ;AACH,SAAA,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,IAAI,CAAC,MAAK;AACP,QAAA,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;;;AAG9C,KAAC,CAAC;AACD,SAAA,KAAK,CAAC,CAAC,GAAmB,KAAI;AAC3B,QAAA,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;;AAEjD,QAAA,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC9B,KAAC,CAAC,CAAC;;AAEP,IAAA,MAAM,kBAAkB,GAAwB,QAAQ,CAAC,UAAU,CAAC;AAEpE,IAAA,OAAO,kBAAkB,CAAC;AAC9B"}
package/lib/index.cjs ADDED
@@ -0,0 +1 @@
1
+ 'use strict';var baseRepository=require('./interfaces/base-repository.cjs'),generatedModels=require('./interfaces/generated-models.cjs'),mongooseConnection=require('./helpers/mongoose-connection.cjs'),baseService=require('./services/base-service.cjs'),baseProxyService=require('./services/base-proxy-service.cjs'),commonOptions=require('./store/models/common-options.cjs'),baseRepository$1=require('./store/repositories/base-repository.cjs'),bulkDataloader=require('./dataloaders/bulk-dataloader.cjs'),baseServiceMixin=require('./mixins/base-service-mixin.cjs');Object.defineProperty(exports,'PAGINATION_OPTIONS',{enumerable:true,get:function(){return baseRepository.PAGINATION_OPTIONS}});Object.defineProperty(exports,'IBaseServiceCommands',{enumerable:true,get:function(){return generatedModels.IBaseServiceCommands}});Object.defineProperty(exports,'ICacheControlScope',{enumerable:true,get:function(){return generatedModels.ICacheControlScope}});Object.defineProperty(exports,'IMoleculerServiceName',{enumerable:true,get:function(){return generatedModels.IMoleculerServiceName}});Object.defineProperty(exports,'ISortEnum',{enumerable:true,get:function(){return generatedModels.ISortEnum}});exports.generateMongo=mongooseConnection.generateMongo;Object.defineProperty(exports,'BaseService',{enumerable:true,get:function(){return baseService.BaseService}});Object.defineProperty(exports,'BaseProxyService',{enumerable:true,get:function(){return baseProxyService.BaseProxyService}});exports.addIdVirtualFields=commonOptions.addIdVirtualFields;exports.commonModeSchemaOptions=commonOptions.commonModeSchemaOptions;Object.defineProperty(exports,'BaseRepository',{enumerable:true,get:function(){return baseRepository$1.BaseRepository}});Object.defineProperty(exports,'BulkDataLoader',{enumerable:true,get:function(){return bulkDataloader.BulkDataLoader}});exports.BaseServiceMixin=baseServiceMixin.BaseServiceMixin;//# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/lib/index.mjs ADDED
@@ -0,0 +1 @@
1
+ export{PAGINATION_OPTIONS}from'./interfaces/base-repository.mjs';export{IBaseServiceCommands,ICacheControlScope,IMoleculerServiceName,ISortEnum}from'./interfaces/generated-models.mjs';export{generateMongo}from'./helpers/mongoose-connection.mjs';export{BaseService}from'./services/base-service.mjs';export{BaseProxyService}from'./services/base-proxy-service.mjs';export{addIdVirtualFields,commonModeSchemaOptions}from'./store/models/common-options.mjs';export{BaseRepository}from'./store/repositories/base-repository.mjs';export{BulkDataLoader}from'./dataloaders/bulk-dataloader.mjs';export{BaseServiceMixin}from'./mixins/base-service-mixin.mjs';//# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ 'use strict';exports.PAGINATION_OPTIONS=void 0;
2
+ (function (PAGINATION_OPTIONS) {
3
+ PAGINATION_OPTIONS[PAGINATION_OPTIONS["limit"] = 10] = "limit";
4
+ PAGINATION_OPTIONS[PAGINATION_OPTIONS["skip"] = 0] = "skip";
5
+ })(exports.PAGINATION_OPTIONS || (exports.PAGINATION_OPTIONS = {}));//# sourceMappingURL=base-repository.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-repository.cjs","sources":["../../src/interfaces/base-repository.ts"],"sourcesContent":[null],"names":["PAGINATION_OPTIONS"],"mappings":"aAGYA,kCAGX;AAHD,CAAA,UAAY,kBAAkB,EAAA;AAC1B,IAAA,kBAAA,CAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,EAAA,CAAA,GAAA,OAAU,CAAA;AACV,IAAA,kBAAA,CAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACZ,CAAC,EAHWA,0BAAkB,KAAlBA,0BAAkB,GAG7B,EAAA,CAAA,CAAA"}
@@ -1,12 +1,9 @@
1
- import { FilterQuery, Document, Model, UpdateQuery } from 'mongoose';
1
+ import { Document, FilterQuery, Model, UpdateQuery } from 'mongoose';
2
2
  import { GetAllArgs } from './get-all-args';
3
3
  export declare enum PAGINATION_OPTIONS {
4
4
  limit = 10,
5
5
  skip = 0
6
6
  }
7
- export declare const DEFAULT_SORTING: {
8
- id: string;
9
- };
10
7
  export interface IBaseRepository<T, D = Document<T>> {
11
8
  model: Model<D>;
12
9
  count(conditions?: FilterQuery<D>): Promise<number>;
@@ -0,0 +1,5 @@
1
+ var PAGINATION_OPTIONS;
2
+ (function (PAGINATION_OPTIONS) {
3
+ PAGINATION_OPTIONS[PAGINATION_OPTIONS["limit"] = 10] = "limit";
4
+ PAGINATION_OPTIONS[PAGINATION_OPTIONS["skip"] = 0] = "skip";
5
+ })(PAGINATION_OPTIONS || (PAGINATION_OPTIONS = {}));export{PAGINATION_OPTIONS};//# sourceMappingURL=base-repository.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-repository.mjs","sources":["../../src/interfaces/base-repository.ts"],"sourcesContent":[null],"names":[],"mappings":"IAGY,mBAGX;AAHD,CAAA,UAAY,kBAAkB,EAAA;AAC1B,IAAA,kBAAA,CAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,EAAA,CAAA,GAAA,OAAU,CAAA;AACV,IAAA,kBAAA,CAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACZ,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,GAG7B,EAAA,CAAA,CAAA"}
@@ -1,2 +1,9 @@
1
- import * as DataLoader from 'dataloader';
2
- export declare type IDataLoader<T> = DataLoader<string, T>;
1
+ import DataLoader from 'dataloader';
2
+ import { IBaseService } from './base-service';
3
+ export type DataLoaderOptions<T> = Parameters<IBaseService<T>['getAll']>[0] & {
4
+ id: string;
5
+ searchKey: keyof T;
6
+ };
7
+ export type IDataLoader<T> = DataLoader<string, T> & {
8
+ withOptions: DataLoader<DataLoaderOptions<T>, T[]>;
9
+ };
@@ -0,0 +1,29 @@
1
+ 'use strict';exports.IBaseServiceCommands=void 0;
2
+ (function (IBaseServiceCommands) {
3
+ IBaseServiceCommands["Count"] = "count";
4
+ IBaseServiceCommands["Get"] = "get";
5
+ IBaseServiceCommands["GetAll"] = "getAll";
6
+ IBaseServiceCommands["GetByIds"] = "getByIds";
7
+ IBaseServiceCommands["Create"] = "create";
8
+ IBaseServiceCommands["Insert"] = "insert";
9
+ IBaseServiceCommands["BulkCreate"] = "bulkCreate";
10
+ IBaseServiceCommands["Update"] = "update";
11
+ IBaseServiceCommands["Delete"] = "delete";
12
+ IBaseServiceCommands["DeleteMany"] = "deleteMany";
13
+ IBaseServiceCommands["GetAllWithCount"] = "getAllWithCount";
14
+ })(exports.IBaseServiceCommands || (exports.IBaseServiceCommands = {}));
15
+ exports.ICacheControlScope=void 0;
16
+ (function (ICacheControlScope) {
17
+ ICacheControlScope["Public"] = "PUBLIC";
18
+ ICacheControlScope["Private"] = "PRIVATE";
19
+ })(exports.ICacheControlScope || (exports.ICacheControlScope = {}));
20
+ /** All Moleculer Topic names are extended from this. */
21
+ exports.IMoleculerServiceName=void 0;
22
+ (function (IMoleculerServiceName) {
23
+ IMoleculerServiceName["Dummy"] = "dummy";
24
+ })(exports.IMoleculerServiceName || (exports.IMoleculerServiceName = {}));
25
+ exports.ISortEnum=void 0;
26
+ (function (ISortEnum) {
27
+ ISortEnum["Asc"] = "ASC";
28
+ ISortEnum["Desc"] = "DESC";
29
+ })(exports.ISortEnum || (exports.ISortEnum = {}));//# sourceMappingURL=generated-models.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-models.cjs","sources":["../../src/interfaces/generated-models.ts"],"sourcesContent":[null],"names":["IBaseServiceCommands","ICacheControlScope","IMoleculerServiceName","ISortEnum"],"mappings":"aA+BYA,oCAYX;AAZD,CAAA,UAAY,oBAAoB,EAAA;AAC9B,IAAA,oBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,oBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AACzB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AACzB,IAAA,oBAAA,CAAA,iBAAA,CAAA,GAAA,iBAAmC,CAAA;AACrC,CAAC,EAZWA,4BAAoB,KAApBA,4BAAoB,GAY/B,EAAA,CAAA,CAAA,CAAA;AAEWC,kCAGX;AAHD,CAAA,UAAY,kBAAkB,EAAA;AAC5B,IAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACrB,CAAC,EAHWA,0BAAkB,KAAlBA,0BAAkB,GAG7B,EAAA,CAAA,CAAA,CAAA;AAkBD;AACYC,qCAEX;AAFD,CAAA,UAAY,qBAAqB,EAAA;AAC/B,IAAA,qBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACjB,CAAC,EAFWA,6BAAqB,KAArBA,6BAAqB,GAEhC,EAAA,CAAA,CAAA,CAAA;AAmCWC,yBAGX;AAHD,CAAA,UAAY,SAAS,EAAA;AACnB,IAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,SAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACf,CAAC,EAHWA,iBAAS,KAATA,iBAAS,GAGpB,EAAA,CAAA,CAAA"}
@@ -1,17 +1,17 @@
1
- export declare type Maybe<T> = T | null;
2
- export declare type Exact<T extends {
1
+ export type Maybe<T> = T | null;
2
+ export type Exact<T extends {
3
3
  [key: string]: unknown;
4
4
  }> = {
5
5
  [K in keyof T]: T[K];
6
6
  };
7
- export declare type MakeOptional<T, K extends keyof T> = Omit<T, K> & {
7
+ export type MakeOptional<T, K extends keyof T> = Omit<T, K> & {
8
8
  [SubKey in K]?: Maybe<T[SubKey]>;
9
9
  };
10
- export declare type MakeMaybe<T, K extends keyof T> = Omit<T, K> & {
10
+ export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & {
11
11
  [SubKey in K]: Maybe<T[SubKey]>;
12
12
  };
13
13
  /** All built-in and custom scalars, mapped to their actual values */
14
- export declare type Scalars = {
14
+ export type Scalars = {
15
15
  ID: string;
16
16
  String: string;
17
17
  Boolean: boolean;
@@ -24,10 +24,11 @@ export declare type Scalars = {
24
24
  JSONObject: any;
25
25
  Observable: any;
26
26
  Time: any;
27
+ Timestamp: any;
27
28
  URI: any;
28
29
  URIInput: any;
29
30
  };
30
- export declare type IAdminIdeSettings = {
31
+ export type IAdminIdeSettings = {
31
32
  __typename?: 'AdminIdeSettings';
32
33
  dummy?: Maybe<Scalars['Int']>;
33
34
  };
@@ -41,6 +42,7 @@ export declare enum IBaseServiceCommands {
41
42
  BulkCreate = "bulkCreate",
42
43
  Update = "update",
43
44
  Delete = "delete",
45
+ DeleteMany = "deleteMany",
44
46
  GetAllWithCount = "getAllWithCount"
45
47
  }
46
48
  export declare enum ICacheControlScope {
@@ -48,11 +50,11 @@ export declare enum ICacheControlScope {
48
50
  Private = "PRIVATE"
49
51
  }
50
52
  /** Represents a null return value. */
51
- export declare type IEmptyResponse = {
53
+ export type IEmptyResponse = {
52
54
  __typename?: 'EmptyResponse';
53
55
  alwaysNil?: Maybe<Scalars['String']>;
54
56
  };
55
- export declare type IFieldError = {
57
+ export type IFieldError = {
56
58
  __typename?: 'FieldError';
57
59
  field: Scalars['String'];
58
60
  message: Scalars['String'];
@@ -61,28 +63,28 @@ export declare type IFieldError = {
61
63
  export declare enum IMoleculerServiceName {
62
64
  Dummy = "dummy"
63
65
  }
64
- export declare type IMutation = {
66
+ export type IMutation = {
65
67
  __typename?: 'Mutation';
66
68
  dummy?: Maybe<Scalars['Int']>;
67
69
  };
68
70
  /** An object with an ID. */
69
- export declare type INode = {
71
+ export type INode = {
70
72
  /** The ID of the node. */
71
73
  id: Scalars['ID'];
72
74
  };
73
- export declare type IPageInfo = {
75
+ export type IPageInfo = {
74
76
  __typename?: 'PageInfo';
75
77
  hasNextPage: Scalars['Boolean'];
76
78
  };
77
- export declare type IQuery = {
79
+ export type IQuery = {
78
80
  __typename?: 'Query';
79
81
  /** Looks up a node by ID. */
80
82
  node?: Maybe<INode>;
81
83
  };
82
- export declare type IQueryNodeArgs = {
84
+ export type IQueryNodeArgs = {
83
85
  id: Scalars['ID'];
84
86
  };
85
- export declare type ISort = {
87
+ export type ISort = {
86
88
  key: Scalars['String'];
87
89
  value: ISortEnum;
88
90
  };
@@ -90,7 +92,7 @@ export declare enum ISortEnum {
90
92
  Asc = "ASC",
91
93
  Desc = "DESC"
92
94
  }
93
- export declare type ISubscription = {
95
+ export type ISubscription = {
94
96
  __typename?: 'Subscription';
95
97
  dummy?: Maybe<Scalars['Int']>;
96
98
  };
@@ -0,0 +1,29 @@
1
+ var IBaseServiceCommands;
2
+ (function (IBaseServiceCommands) {
3
+ IBaseServiceCommands["Count"] = "count";
4
+ IBaseServiceCommands["Get"] = "get";
5
+ IBaseServiceCommands["GetAll"] = "getAll";
6
+ IBaseServiceCommands["GetByIds"] = "getByIds";
7
+ IBaseServiceCommands["Create"] = "create";
8
+ IBaseServiceCommands["Insert"] = "insert";
9
+ IBaseServiceCommands["BulkCreate"] = "bulkCreate";
10
+ IBaseServiceCommands["Update"] = "update";
11
+ IBaseServiceCommands["Delete"] = "delete";
12
+ IBaseServiceCommands["DeleteMany"] = "deleteMany";
13
+ IBaseServiceCommands["GetAllWithCount"] = "getAllWithCount";
14
+ })(IBaseServiceCommands || (IBaseServiceCommands = {}));
15
+ var ICacheControlScope;
16
+ (function (ICacheControlScope) {
17
+ ICacheControlScope["Public"] = "PUBLIC";
18
+ ICacheControlScope["Private"] = "PRIVATE";
19
+ })(ICacheControlScope || (ICacheControlScope = {}));
20
+ /** All Moleculer Topic names are extended from this. */
21
+ var IMoleculerServiceName;
22
+ (function (IMoleculerServiceName) {
23
+ IMoleculerServiceName["Dummy"] = "dummy";
24
+ })(IMoleculerServiceName || (IMoleculerServiceName = {}));
25
+ var ISortEnum;
26
+ (function (ISortEnum) {
27
+ ISortEnum["Asc"] = "ASC";
28
+ ISortEnum["Desc"] = "DESC";
29
+ })(ISortEnum || (ISortEnum = {}));export{IBaseServiceCommands,ICacheControlScope,IMoleculerServiceName,ISortEnum};//# sourceMappingURL=generated-models.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generated-models.mjs","sources":["../../src/interfaces/generated-models.ts"],"sourcesContent":[null],"names":[],"mappings":"IA+BY,qBAYX;AAZD,CAAA,UAAY,oBAAoB,EAAA;AAC9B,IAAA,oBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,oBAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,UAAA,CAAA,GAAA,UAAqB,CAAA;AACrB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AACzB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,oBAAA,CAAA,YAAA,CAAA,GAAA,YAAyB,CAAA;AACzB,IAAA,oBAAA,CAAA,iBAAA,CAAA,GAAA,iBAAmC,CAAA;AACrC,CAAC,EAZW,oBAAoB,KAApB,oBAAoB,GAY/B,EAAA,CAAA,CAAA,CAAA;IAEW,mBAGX;AAHD,CAAA,UAAY,kBAAkB,EAAA;AAC5B,IAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB,CAAA;AACrB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,GAG7B,EAAA,CAAA,CAAA,CAAA;AAkBD;IACY,sBAEX;AAFD,CAAA,UAAY,qBAAqB,EAAA;AAC/B,IAAA,qBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACjB,CAAC,EAFW,qBAAqB,KAArB,qBAAqB,GAEhC,EAAA,CAAA,CAAA,CAAA;IAmCW,UAGX;AAHD,CAAA,UAAY,SAAS,EAAA;AACnB,IAAA,SAAA,CAAA,KAAA,CAAA,GAAA,KAAW,CAAA;AACX,IAAA,SAAA,CAAA,MAAA,CAAA,GAAA,MAAa,CAAA;AACf,CAAC,EAHW,SAAS,KAAT,SAAS,GAGpB,EAAA,CAAA,CAAA"}
@@ -1,7 +1,3 @@
1
- import * as mongoose from 'mongoose';
2
- export interface IMongoDBSettings {
3
- mongoConnection: mongoose.Connection;
4
- }
5
1
  export interface IMongoOptions {
6
2
  collectionName?: string;
7
3
  sessionCollectionName?: string;
@@ -12,6 +8,6 @@ export interface IMongoOptions {
12
8
  convertUserIdToMongoObjectId?: boolean;
13
9
  convertSessionIdToMongoObjectId?: boolean;
14
10
  caseSensitiveUserName?: boolean;
15
- idProvider?: (() => string | Object);
11
+ idProvider?: () => string | Object;
16
12
  dateProvider?: (date?: Date) => any;
17
13
  }
@@ -0,0 +1,123 @@
1
+ 'use strict';var lodashEs=require('lodash-es');require('../interfaces/base-repository.cjs');var generatedModels=require('../interfaces/generated-models.cjs');const defaultEvents = [
2
+ generatedModels.IBaseServiceCommands.Create,
3
+ generatedModels.IBaseServiceCommands.BulkCreate,
4
+ generatedModels.IBaseServiceCommands.Update,
5
+ generatedModels.IBaseServiceCommands.Delete,
6
+ generatedModels.IBaseServiceCommands.DeleteMany
7
+ ];
8
+ const BaseServiceMixin = (service, broker, name, events = defaultEvents) => ({
9
+ name: 'BaseServiceMixin',
10
+ actions: {
11
+ [generatedModels.IBaseServiceCommands.Get]: {
12
+ params: {
13
+ id: 'string',
14
+ },
15
+ handler: async (ctx) => service.get(ctx.params.id),
16
+ },
17
+ [generatedModels.IBaseServiceCommands.Count]: {
18
+ params: {
19
+ criteria: { type: 'object', optional: true },
20
+ },
21
+ handler: async (ctx) => service.count(ctx.params.criteria),
22
+ },
23
+ [generatedModels.IBaseServiceCommands.BulkCreate]: {
24
+ params: {
25
+ data: { type: 'array', items: 'object' },
26
+ },
27
+ handler: async (ctx) => {
28
+ const response = await service.bulkCreate(ctx.params.data);
29
+ if (events.includes(generatedModels.IBaseServiceCommands.BulkCreate)) {
30
+ await broker?.emit(`${name}.on${lodashEs.upperFirst(generatedModels.IBaseServiceCommands.BulkCreate)}`, response);
31
+ }
32
+ return response;
33
+ },
34
+ },
35
+ [generatedModels.IBaseServiceCommands.Create]: {
36
+ params: {
37
+ data: 'object',
38
+ },
39
+ handler: async (ctx) => {
40
+ const response = await service.create(ctx.params.data);
41
+ if (events.includes(generatedModels.IBaseServiceCommands.Create)) {
42
+ await broker?.emit(`${name}.on${lodashEs.upperFirst(generatedModels.IBaseServiceCommands.Create)}`, response);
43
+ }
44
+ return response;
45
+ },
46
+ },
47
+ [generatedModels.IBaseServiceCommands.Delete]: {
48
+ params: {
49
+ id: 'string',
50
+ },
51
+ handler: async (ctx) => {
52
+ const { id } = ctx.params;
53
+ const response = await service.delete(id);
54
+ if (events.includes(generatedModels.IBaseServiceCommands.Delete)) {
55
+ await broker?.emit(`${name}.on${lodashEs.upperFirst(generatedModels.IBaseServiceCommands.Delete)}`, { id });
56
+ }
57
+ return response;
58
+ }
59
+ },
60
+ [generatedModels.IBaseServiceCommands.GetAll]: {
61
+ params: {
62
+ criteria: 'object|optional',
63
+ sort: 'object|optional',
64
+ skip: 'number|optional',
65
+ limit: 'number|optional',
66
+ selectedFields: 'string|optional',
67
+ },
68
+ handler: async (ctx) => service.getAll(ctx.params),
69
+ },
70
+ [generatedModels.IBaseServiceCommands.GetAllWithCount]: {
71
+ params: {
72
+ criteria: 'object|optional',
73
+ sort: 'object|optional',
74
+ skip: 'number|optional',
75
+ limit: 'number|optional',
76
+ selectedFields: 'string|optional',
77
+ },
78
+ handler: async (ctx) => service.getAllWithCount(ctx.params),
79
+ },
80
+ [generatedModels.IBaseServiceCommands.Insert]: {
81
+ params: {
82
+ data: 'object',
83
+ overwrite: 'boolean|optional',
84
+ },
85
+ handler: async (ctx) => {
86
+ const { data } = ctx.params;
87
+ const response = await service.insert(data, ctx.params.overwrite);
88
+ const action = data?.id ? generatedModels.IBaseServiceCommands.Update : generatedModels.IBaseServiceCommands.Create;
89
+ if (events.includes(action)) {
90
+ await broker?.emit(`${name}.on${lodashEs.upperFirst(action)}`, response);
91
+ }
92
+ return response;
93
+ },
94
+ },
95
+ [generatedModels.IBaseServiceCommands.Update]: {
96
+ params: {
97
+ id: 'string',
98
+ data: 'object',
99
+ overwrite: 'boolean|optional',
100
+ },
101
+ handler: async (ctx) => {
102
+ const response = await service.update(ctx.params.id, ctx.params.data, ctx.params.overwrite);
103
+ if (events.includes(generatedModels.IBaseServiceCommands.Update)) {
104
+ await broker?.emit(`${name}.on${lodashEs.upperFirst(generatedModels.IBaseServiceCommands.Update)}`, response);
105
+ }
106
+ return response;
107
+ }
108
+ },
109
+ [generatedModels.IBaseServiceCommands.DeleteMany]: {
110
+ params: {
111
+ criteria: 'object',
112
+ },
113
+ handler: async (ctx) => {
114
+ const { criteria } = ctx.params;
115
+ const response = await service.delete(criteria);
116
+ if (events.includes(generatedModels.IBaseServiceCommands.DeleteMany)) {
117
+ await broker?.emit(`${name}.on${lodashEs.upperFirst(generatedModels.IBaseServiceCommands.DeleteMany)}`, criteria);
118
+ }
119
+ return response;
120
+ },
121
+ },
122
+ },
123
+ });exports.BaseServiceMixin=BaseServiceMixin;//# sourceMappingURL=base-service-mixin.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-service-mixin.cjs","sources":["../../src/mixins/base-service-mixin.ts"],"sourcesContent":[null],"names":["IBaseServiceCommands","upperFirst"],"mappings":"8JAMA,MAAM,aAAa,GAAG;AAClB,IAAAA,oCAAoB,CAAC,MAAM;AAC3B,IAAAA,oCAAoB,CAAC,UAAU;AAC/B,IAAAA,oCAAoB,CAAC,MAAM;AAC3B,IAAAA,oCAAoB,CAAC,MAAM;AAC3B,IAAAA,oCAAoB,CAAC,UAAU;CAClC,CAAC;AAEW,MAAA,gBAAgB,GAAG,CAC5B,OAA8B,EAC9B,MAAsB,EACtB,IAAa,EACb,MAAM,GAAG,aAAa,MACI;AAC1B,IAAA,IAAI,EAAE,kBAAkB;AACxB,IAAA,OAAO,EAAE;AACL,QAAA,CAACA,oCAAoB,CAAC,GAAG,GAAG;AACxB,YAAA,MAAM,EAAE;AACJ,gBAAA,EAAE,EAAE,QAAQ;AACf,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAA4B,KAAK,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;AAC9E,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,KAAK,GAAG;AAC1B,YAAA,MAAM,EAAE;gBACJ,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;AAC/C,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAAqD,KACjE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;AACzC,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,UAAU,GAAG;AAC/B,YAAA,MAAM,EAAE;gBACJ,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE;AAC3C,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAA+B,KAAI;AAC/C,gBAAA,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3D,IAAI,MAAM,CAAC,QAAQ,CAACA,oCAAoB,CAAC,UAAU,CAAC,EAAE;AAClD,oBAAA,MAAM,MAAM,EAAE,IAAI,CAAC,CAAA,EAAG,IAAI,CAAM,GAAA,EAAAC,mBAAU,CAACD,oCAAoB,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC5F,iBAAA;AACD,gBAAA,OAAO,QAAQ,CAAC;aACnB;AACJ,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,MAAM,GAAG;AAC3B,YAAA,MAAM,EAAE;AACJ,gBAAA,IAAI,EAAE,QAAQ;AACjB,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAA6B,KAAI;AAC7C,gBAAA,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,MAAM,CAAC,QAAQ,CAACA,oCAAoB,CAAC,MAAM,CAAC,EAAE;AAC9C,oBAAA,MAAM,MAAM,EAAE,IAAI,CAAC,CAAA,EAAG,IAAI,CAAM,GAAA,EAAAC,mBAAU,CAACD,oCAAoB,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;AACxF,iBAAA;AACD,gBAAA,OAAO,QAAQ,CAAA;aAClB;AACJ,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,MAAM,GAAG;AAC3B,YAAA,MAAM,EAAE;AACJ,gBAAA,EAAE,EAAE,QAAQ;AACf,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAAuD,KAAI;AACvE,gBAAA,MAAM,EAAE,EAAE,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;gBAC1B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,EAAW,CAAC,CAAC;gBACnD,IAAI,MAAM,CAAC,QAAQ,CAACA,oCAAoB,CAAC,MAAM,CAAC,EAAE;AAC9C,oBAAA,MAAM,MAAM,EAAE,IAAI,CAAC,CAAG,EAAA,IAAI,MAAMC,mBAAU,CAACD,oCAAoB,CAAC,MAAM,CAAC,CAAE,CAAA,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACtF,iBAAA;AACD,gBAAA,OAAO,QAAQ,CAAA;aAClB;AACJ,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,MAAM,GAAG;AAC3B,YAAA,MAAM,EAAE;AACJ,gBAAA,QAAQ,EAAE,iBAAiB;AAC3B,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,KAAK,EAAE,iBAAiB;AACxB,gBAAA,cAAc,EAAE,iBAAiB;AACpC,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAAqC,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;AACvF,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,eAAe,GAAG;AACpC,YAAA,MAAM,EAAE;AACJ,gBAAA,QAAQ,EAAE,iBAAiB;AAC3B,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,IAAI,EAAE,iBAAiB;AACvB,gBAAA,KAAK,EAAE,iBAAiB;AACxB,gBAAA,cAAc,EAAE,iBAAiB;AACpC,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAAqC,KAAK,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;AAChG,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,MAAM,GAAG;AAC3B,YAAA,MAAM,EAAE;AACJ,gBAAA,IAAI,EAAE,QAAQ;AACd,gBAAA,SAAS,EAAE,kBAAkB;AAChC,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAAmE,KAAI;AACnF,gBAAA,MAAM,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;AAC5B,gBAAA,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAClE,gBAAA,MAAM,MAAM,GAAI,IAAuB,EAAE,EAAE,GAAGA,oCAAoB,CAAC,MAAM,GAAGA,oCAAoB,CAAC,MAAM,CAAC;AACxG,gBAAA,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;AACzB,oBAAA,MAAM,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAA,GAAA,EAAMC,mBAAU,CAAC,MAAM,CAAC,CAAA,CAAE,EAAE,QAAQ,CAAC,CAAC;AACnE,iBAAA;AACD,gBAAA,OAAO,QAAQ,CAAC;aACnB;AACJ,SAAA;AACD,QAAA,CAACD,oCAAoB,CAAC,MAAM,GAAG;AAC3B,YAAA,MAAM,EAAE;AACJ,gBAAA,EAAE,EAAE,QAAQ;AACZ,gBAAA,IAAI,EAAE,QAAQ;AACd,gBAAA,SAAS,EAAE,kBAAkB;AAChC,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAA6D,KAAI;gBAC7E,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC5F,IAAI,MAAM,CAAC,QAAQ,CAACA,oCAAoB,CAAC,MAAM,CAAC,EAAE;AAC9C,oBAAA,MAAM,MAAM,EAAE,IAAI,CAAC,CAAA,EAAG,IAAI,CAAM,GAAA,EAAAC,mBAAU,CAACD,oCAAoB,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;AACxF,iBAAA;AACD,gBAAA,OAAO,QAAQ,CAAA;aAClB;AACJ,SAAA;AACD,QAAA,CAACA,oCAAoB,CAAC,UAAU,GAAG;AAC/B,YAAA,MAAM,EAAE;AACJ,gBAAA,QAAQ,EAAE,QAAQ;AACrB,aAAA;AACD,YAAA,OAAO,EAAE,OAAO,GAA0B,KAAI;AAC1C,gBAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;gBAChC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAChD,IAAI,MAAM,CAAC,QAAQ,CAACA,oCAAoB,CAAC,UAAU,CAAC,EAAE;AAClD,oBAAA,MAAM,MAAM,EAAE,IAAI,CAAC,CAAA,EAAG,IAAI,CAAM,GAAA,EAAAC,mBAAU,CAACD,oCAAoB,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;AAC5F,iBAAA;AACD,gBAAA,OAAO,QAAQ,CAAA;aAClB;AACJ,SAAA;AACJ,KAAA;AACJ,CAAA"}
@@ -1,3 +1,3 @@
1
- import { ServiceSchema } from 'moleculer';
2
- import { IBaseService } from '../interfaces';
3
- export declare const BaseServiceMixin: <T, C, U>(service: IBaseService<T, C, U>) => Partial<ServiceSchema>;
1
+ import { ServiceBroker, ServiceSchema } from 'moleculer';
2
+ import { IBaseService, IBaseServiceCommands } from '../interfaces';
3
+ export declare const BaseServiceMixin: <T, C, U>(service: IBaseService<T, C, U>, broker?: ServiceBroker, name?: string, events?: IBaseServiceCommands[]) => Partial<ServiceSchema>;