@tc-libs/api-key 0.9.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.
- package/README.md +11 -0
- package/package.json +11 -0
- package/src/api-key.module.d.ts +2 -0
- package/src/api-key.module.js +20 -0
- package/src/api-key.module.js.map +1 -0
- package/src/api-key.module.options.d.ts +8 -0
- package/src/api-key.module.options.js +5 -0
- package/src/api-key.module.options.js.map +1 -0
- package/src/constants/api-key.constant.d.ts +1 -0
- package/src/constants/api-key.constant.js +5 -0
- package/src/constants/api-key.constant.js.map +1 -0
- package/src/constants/api-key.doc.d.ts +15 -0
- package/src/constants/api-key.doc.js +24 -0
- package/src/constants/api-key.doc.js.map +1 -0
- package/src/constants/api-key.list.constant.d.ts +7 -0
- package/src/constants/api-key.list.constant.js +11 -0
- package/src/constants/api-key.list.constant.js.map +1 -0
- package/src/constants/api-key.permissions.constants.d.ts +2 -0
- package/src/constants/api-key.permissions.constants.js +9 -0
- package/src/constants/api-key.permissions.constants.js.map +1 -0
- package/src/constants/index.d.ts +4 -0
- package/src/constants/index.js +8 -0
- package/src/constants/index.js.map +1 -0
- package/src/controllers/api-key.admin.controller.d.ts +11 -0
- package/src/controllers/api-key.admin.controller.js +97 -0
- package/src/controllers/api-key.admin.controller.js.map +1 -0
- package/src/controllers/api-key.controller.d.ts +16 -0
- package/src/controllers/api-key.controller.js +156 -0
- package/src/controllers/api-key.controller.js.map +1 -0
- package/src/controllers/api-key.public.controller.d.ts +16 -0
- package/src/controllers/api-key.public.controller.js +144 -0
- package/src/controllers/api-key.public.controller.js.map +1 -0
- package/src/controllers/index.d.ts +3 -0
- package/src/controllers/index.js +7 -0
- package/src/controllers/index.js.map +1 -0
- package/src/decorators/api-key.admin.decorator.d.ts +5 -0
- package/src/decorators/api-key.admin.decorator.js +26 -0
- package/src/decorators/api-key.admin.decorator.js.map +1 -0
- package/src/decorators/api-key.decorator.d.ts +3 -0
- package/src/decorators/api-key.decorator.js +18 -0
- package/src/decorators/api-key.decorator.js.map +1 -0
- package/src/decorators/api-key.public.decorator.d.ts +1 -0
- package/src/decorators/api-key.public.decorator.js +10 -0
- package/src/decorators/api-key.public.decorator.js.map +1 -0
- package/src/decorators/index.d.ts +2 -0
- package/src/decorators/index.js +6 -0
- package/src/decorators/index.js.map +1 -0
- package/src/docs/api-key.admin.doc.d.ts +7 -0
- package/src/docs/api-key.admin.doc.js +105 -0
- package/src/docs/api-key.admin.doc.js.map +1 -0
- package/src/docs/api-key.public.doc.d.ts +1 -0
- package/src/docs/api-key.public.doc.js +18 -0
- package/src/docs/api-key.public.doc.js.map +1 -0
- package/src/docs/index.d.ts +2 -0
- package/src/docs/index.js +6 -0
- package/src/docs/index.js.map +1 -0
- package/src/dtos/api-key.active.dto.d.ts +3 -0
- package/src/dtos/api-key.active.dto.js +22 -0
- package/src/dtos/api-key.active.dto.js.map +1 -0
- package/src/dtos/api-key.create.dto.d.ts +11 -0
- package/src/dtos/api-key.create.dto.js +62 -0
- package/src/dtos/api-key.create.dto.js.map +1 -0
- package/src/dtos/api-key.request.dto.d.ts +3 -0
- package/src/dtos/api-key.request.dto.js +23 -0
- package/src/dtos/api-key.request.dto.js.map +1 -0
- package/src/dtos/api-key.update-date.dto.d.ts +4 -0
- package/src/dtos/api-key.update-date.dto.js +39 -0
- package/src/dtos/api-key.update-date.dto.js.map +1 -0
- package/src/dtos/api-key.update.dto.d.ts +5 -0
- package/src/dtos/api-key.update.dto.js +12 -0
- package/src/dtos/api-key.update.dto.js.map +1 -0
- package/src/dtos/index.d.ts +5 -0
- package/src/dtos/index.js +9 -0
- package/src/dtos/index.js.map +1 -0
- package/src/errors/409/api.409.api-key.error.d.ts +7 -0
- package/src/errors/409/api.409.api-key.error.js +11 -0
- package/src/errors/409/api.409.api-key.error.js.map +1 -0
- package/src/guards/api-key.active.guard.d.ts +7 -0
- package/src/guards/api-key.active.guard.js +30 -0
- package/src/guards/api-key.active.guard.js.map +1 -0
- package/src/guards/api-key.expired.guard.d.ts +7 -0
- package/src/guards/api-key.expired.guard.js +29 -0
- package/src/guards/api-key.expired.guard.js.map +1 -0
- package/src/guards/api-key.not-found.guard.d.ts +4 -0
- package/src/guards/api-key.not-found.guard.js +20 -0
- package/src/guards/api-key.not-found.guard.js.map +1 -0
- package/src/guards/api-key.put-to-request-by-user.guard.d.ts +7 -0
- package/src/guards/api-key.put-to-request-by-user.guard.js +31 -0
- package/src/guards/api-key.put-to-request-by-user.guard.js.map +1 -0
- package/src/guards/api-key.put-to-request.guard.d.ts +7 -0
- package/src/guards/api-key.put-to-request.guard.js +25 -0
- package/src/guards/api-key.put-to-request.guard.js.map +1 -0
- package/src/guards/index.d.ts +6 -0
- package/src/guards/index.js +10 -0
- package/src/guards/index.js.map +1 -0
- package/src/guards/x-api-key/api-key.x-api-key.guard.d.ts +8 -0
- package/src/guards/x-api-key/api-key.x-api-key.guard.js +35 -0
- package/src/guards/x-api-key/api-key.x-api-key.guard.js.map +1 -0
- package/src/guards/x-api-key/api-key.x-api-key.strategy.d.ts +14 -0
- package/src/guards/x-api-key/api-key.x-api-key.strategy.js +69 -0
- package/src/guards/x-api-key/api-key.x-api-key.strategy.js.map +1 -0
- package/src/index.d.ts +12 -0
- package/src/index.js +16 -0
- package/src/index.js.map +1 -0
- package/src/interfaces/api-key.interface.d.ts +10 -0
- package/src/interfaces/api-key.interface.js +3 -0
- package/src/interfaces/api-key.interface.js.map +1 -0
- package/src/interfaces/index.d.ts +1 -0
- package/src/interfaces/index.js +5 -0
- package/src/interfaces/index.js.map +1 -0
- package/src/repository/api-key.repository.module.d.ts +2 -0
- package/src/repository/api-key.repository.module.js +27 -0
- package/src/repository/api-key.repository.module.js.map +1 -0
- package/src/repository/entities/api-key.entity.d.ts +21 -0
- package/src/repository/entities/api-key.entity.js +98 -0
- package/src/repository/entities/api-key.entity.js.map +1 -0
- package/src/repository/index.d.ts +3 -0
- package/src/repository/index.js +7 -0
- package/src/repository/index.js.map +1 -0
- package/src/repository/repositories/api-key.repository.d.ts +11 -0
- package/src/repository/repositories/api-key.repository.js +28 -0
- package/src/repository/repositories/api-key.repository.js.map +1 -0
- package/src/serializations/api-key.create.serialization.d.ts +6 -0
- package/src/serializations/api-key.create.serialization.js +18 -0
- package/src/serializations/api-key.create.serialization.js.map +1 -0
- package/src/serializations/api-key.get.serialization.d.ts +13 -0
- package/src/serializations/api-key.get.serialization.js +86 -0
- package/src/serializations/api-key.get.serialization.js.map +1 -0
- package/src/serializations/api-key.list.serialization.d.ts +5 -0
- package/src/serializations/api-key.list.serialization.js +11 -0
- package/src/serializations/api-key.list.serialization.js.map +1 -0
- package/src/serializations/api-key.reset.serialization.d.ts +3 -0
- package/src/serializations/api-key.reset.serialization.js +8 -0
- package/src/serializations/api-key.reset.serialization.js.map +1 -0
- package/src/serializations/index.d.ts +4 -0
- package/src/serializations/index.js +8 -0
- package/src/serializations/index.js.map +1 -0
- package/src/services/api-key.service.d.ts +34 -0
- package/src/services/api-key.service.js +136 -0
- package/src/services/api-key.service.js.map +1 -0
- package/src/services/index.d.ts +1 -0
- package/src/services/index.js +5 -0
- package/src/services/index.js.map +1 -0
- package/src/tasks/api-key.inactive.task.d.ts +6 -0
- package/src/tasks/api-key.inactive.task.js +35 -0
- package/src/tasks/api-key.inactive.task.js.map +1 -0
- package/src/tasks/index.d.ts +1 -0
- package/src/tasks/index.js +5 -0
- package/src/tasks/index.js.map +1 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyUpdateDto = void 0;
|
|
4
|
+
const swagger_1 = require("@nestjs/swagger");
|
|
5
|
+
const api_key_create_dto_1 = require("./api-key.create.dto");
|
|
6
|
+
class ApiKeyUpdateDto extends (0, swagger_1.PickType)(api_key_create_dto_1.ApiKeyCreateDto, [
|
|
7
|
+
'name',
|
|
8
|
+
'description',
|
|
9
|
+
]) {
|
|
10
|
+
}
|
|
11
|
+
exports.ApiKeyUpdateDto = ApiKeyUpdateDto;
|
|
12
|
+
//# sourceMappingURL=api-key.update.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.update.dto.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/dtos/api-key.update.dto.ts"],"names":[],"mappings":";;;AAAA,6CAA2C;AAC3C,6DAAuD;AAEvD,MAAa,eAAgB,SAAQ,IAAA,kBAAQ,EAAC,oCAAe,EAAE;IAC7D,MAAM;IACN,aAAa;CACL,CAAC;CAAG;AAHd,0CAGc"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./api-key.active.dto"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./api-key.create.dto"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./api-key.request.dto"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./api-key.update-date.dto"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./api-key.update.dto"), exports);
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/dtos/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC;AACrC,+DAAqC;AACrC,gEAAsC;AACtC,oEAA0C;AAC1C,+DAAqC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Api409ApiKeyCappedError = void 0;
|
|
4
|
+
const errors_1 = require("@tc-libs/errors");
|
|
5
|
+
class Api409ApiKeyCappedError extends errors_1.Api409Error {
|
|
6
|
+
constructor(data) {
|
|
7
|
+
super('error.409.api_key_capped', 40941, `User can have max [${data.max}] api keys.`);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.Api409ApiKeyCappedError = Api409ApiKeyCappedError;
|
|
11
|
+
//# sourceMappingURL=api.409.api-key.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.409.api-key.error.js","sourceRoot":"","sources":["../../../../../../packages/api-key/src/errors/409/api.409.api-key.error.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAM9C,MAAa,uBAAwB,SAAQ,oBAAW;IACtD,YAAY,IAAiC;QAC3C,KAAK,CACH,0BAA0B,EAC1B,KAAK,EACL,sBAAsB,IAAI,CAAC,GAAG,aAAa,CAC5C,CAAC;IACJ,CAAC;CACF;AARD,0DAQC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
2
|
+
import { Reflector } from '@nestjs/core';
|
|
3
|
+
export declare class ApiKeyActiveGuard implements CanActivate {
|
|
4
|
+
private reflector;
|
|
5
|
+
constructor(reflector: Reflector);
|
|
6
|
+
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyActiveGuard = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const core_1 = require("@nestjs/core");
|
|
7
|
+
const constants_1 = require("../constants");
|
|
8
|
+
const errors_1 = require("@tc-libs/errors");
|
|
9
|
+
let ApiKeyActiveGuard = class ApiKeyActiveGuard {
|
|
10
|
+
constructor(reflector) {
|
|
11
|
+
this.reflector = reflector;
|
|
12
|
+
}
|
|
13
|
+
async canActivate(context) {
|
|
14
|
+
const required = this.reflector.getAllAndOverride(constants_1.API_KEY_ACTIVE_META_KEY, [context.getHandler(), context.getClass()]);
|
|
15
|
+
if (!required) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
const { __apiKey } = context.switchToHttp().getRequest();
|
|
19
|
+
if (!required.includes(__apiKey.active)) {
|
|
20
|
+
throw new errors_1.Api403ApiKeyInactiveError();
|
|
21
|
+
}
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
exports.ApiKeyActiveGuard = ApiKeyActiveGuard;
|
|
26
|
+
exports.ApiKeyActiveGuard = ApiKeyActiveGuard = tslib_1.__decorate([
|
|
27
|
+
(0, common_1.Injectable)(),
|
|
28
|
+
tslib_1.__metadata("design:paramtypes", [core_1.Reflector])
|
|
29
|
+
], ApiKeyActiveGuard);
|
|
30
|
+
//# sourceMappingURL=api-key.active.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.active.guard.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/guards/api-key.active.guard.ts"],"names":[],"mappings":";;;;AAAA,2CAA2E;AAC3E,uCAAyC;AACzC,4CAAuD;AACvD,4CAA4D;AAGrD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAG,CAAC;IAE5C,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,QAAQ,GAAc,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAC1D,mCAAuB,EACvB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAC3C,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QAEzD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,kCAAyB,EAAE,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AApBY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;6CAEoB,gBAAS;GAD7B,iBAAiB,CAoB7B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DateService } from '@tc-libs/helper';
|
|
2
|
+
import { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
3
|
+
export declare class ApiKeyExpiredGuard implements CanActivate {
|
|
4
|
+
private readonly helperDateService;
|
|
5
|
+
constructor(helperDateService: DateService);
|
|
6
|
+
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyExpiredGuard = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const helper_1 = require("@tc-libs/helper");
|
|
6
|
+
const errors_1 = require("@tc-libs/errors");
|
|
7
|
+
const common_1 = require("@nestjs/common");
|
|
8
|
+
let ApiKeyExpiredGuard = class ApiKeyExpiredGuard {
|
|
9
|
+
constructor(helperDateService) {
|
|
10
|
+
this.helperDateService = helperDateService;
|
|
11
|
+
}
|
|
12
|
+
async canActivate(context) {
|
|
13
|
+
const { __apiKey } = context.switchToHttp().getRequest();
|
|
14
|
+
const today = this.helperDateService.create();
|
|
15
|
+
if (__apiKey.startDate && __apiKey.endDate && today > __apiKey.endDate) {
|
|
16
|
+
throw new errors_1.Api400ApiKeyExpiredError({
|
|
17
|
+
endDate: __apiKey.endDate,
|
|
18
|
+
ts: today,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return true;
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
exports.ApiKeyExpiredGuard = ApiKeyExpiredGuard;
|
|
25
|
+
exports.ApiKeyExpiredGuard = ApiKeyExpiredGuard = tslib_1.__decorate([
|
|
26
|
+
(0, common_1.Injectable)(),
|
|
27
|
+
tslib_1.__metadata("design:paramtypes", [helper_1.DateService])
|
|
28
|
+
], ApiKeyExpiredGuard);
|
|
29
|
+
//# sourceMappingURL=api-key.expired.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.expired.guard.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/guards/api-key.expired.guard.ts"],"names":[],"mappings":";;;;AAAA,4CAA8C;AAC9C,4CAA2D;AAC3D,2CAA2E;AAGpE,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,YAA6B,iBAA8B;QAA9B,sBAAiB,GAAjB,iBAAiB,CAAa;IAAG,CAAC;IAE/D,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACzD,MAAM,KAAK,GAAS,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;QAEpD,IAAI,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,OAAO,IAAI,KAAK,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YACvE,MAAM,IAAI,iCAAwB,CAAC;gBACjC,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,EAAE,EAAE,KAAK;aACV,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAfY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;6CAEqC,oBAAW;GADhD,kBAAkB,CAe9B"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyNotFoundGuard = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const errors_1 = require("@tc-libs/errors");
|
|
6
|
+
const common_1 = require("@nestjs/common");
|
|
7
|
+
let ApiKeyNotFoundGuard = class ApiKeyNotFoundGuard {
|
|
8
|
+
async canActivate(context) {
|
|
9
|
+
const { __apiKey } = context.switchToHttp().getRequest();
|
|
10
|
+
if (!__apiKey) {
|
|
11
|
+
throw new errors_1.Api403ApiKeyNotFoundError();
|
|
12
|
+
}
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
exports.ApiKeyNotFoundGuard = ApiKeyNotFoundGuard;
|
|
17
|
+
exports.ApiKeyNotFoundGuard = ApiKeyNotFoundGuard = tslib_1.__decorate([
|
|
18
|
+
(0, common_1.Injectable)()
|
|
19
|
+
], ApiKeyNotFoundGuard);
|
|
20
|
+
//# sourceMappingURL=api-key.not-found.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.not-found.guard.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/guards/api-key.not-found.guard.ts"],"names":[],"mappings":";;;;AAAA,4CAA4D;AAC5D,2CAA2E;AAGpE,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QAEzD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,kCAAyB,EAAE,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AATY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,mBAAU,GAAE;GACA,mBAAmB,CAS/B"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
2
|
+
import { ApiKeyService } from '../services';
|
|
3
|
+
export declare class ApiKeyPutToRequestByUserGuard implements CanActivate {
|
|
4
|
+
private readonly _apiKey;
|
|
5
|
+
constructor(_apiKey: ApiKeyService);
|
|
6
|
+
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyPutToRequestByUserGuard = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const services_1 = require("../services");
|
|
7
|
+
let ApiKeyPutToRequestByUserGuard = class ApiKeyPutToRequestByUserGuard {
|
|
8
|
+
constructor(_apiKey) {
|
|
9
|
+
this._apiKey = _apiKey;
|
|
10
|
+
}
|
|
11
|
+
async canActivate(context) {
|
|
12
|
+
const request = context.switchToHttp().getRequest();
|
|
13
|
+
// deconstruct params and user
|
|
14
|
+
const { params, user } = request;
|
|
15
|
+
const { apiKey } = params;
|
|
16
|
+
const check = await this._apiKey.findOne({
|
|
17
|
+
_id: apiKey,
|
|
18
|
+
user: user._id,
|
|
19
|
+
}, {
|
|
20
|
+
join: true,
|
|
21
|
+
});
|
|
22
|
+
request.__apiKey = check;
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
exports.ApiKeyPutToRequestByUserGuard = ApiKeyPutToRequestByUserGuard;
|
|
27
|
+
exports.ApiKeyPutToRequestByUserGuard = ApiKeyPutToRequestByUserGuard = tslib_1.__decorate([
|
|
28
|
+
(0, common_1.Injectable)(),
|
|
29
|
+
tslib_1.__metadata("design:paramtypes", [services_1.ApiKeyService])
|
|
30
|
+
], ApiKeyPutToRequestByUserGuard);
|
|
31
|
+
//# sourceMappingURL=api-key.put-to-request-by-user.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.put-to-request-by-user.guard.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/guards/api-key.put-to-request-by-user.guard.ts"],"names":[],"mappings":";;;;AAAA,2CAA2E;AAC3E,0CAA4C;AAIrC,IAAM,6BAA6B,GAAnC,MAAM,6BAA6B;IACxC,YAA6B,OAAsB;QAAtB,YAAO,GAAP,OAAO,CAAe;IAAG,CAAC;IAEvD,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACpD,8BAA8B;QAC9B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;QACjC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAC1B,MAAM,KAAK,GAAc,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CACjD;YACE,GAAG,EAAE,MAAM;YACX,IAAI,EAAE,IAAI,CAAC,GAAG;SACf,EACD;YACE,IAAI,EAAE,IAAI;SACX,CACF,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEzB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AArBY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,mBAAU,GAAE;6CAE2B,wBAAa;GADxC,6BAA6B,CAqBzC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CanActivate, ExecutionContext } from '@nestjs/common';
|
|
2
|
+
import { ApiKeyService } from '../services';
|
|
3
|
+
export declare class ApiKeyPutToRequestGuard implements CanActivate {
|
|
4
|
+
private readonly apiKeyService;
|
|
5
|
+
constructor(apiKeyService: ApiKeyService);
|
|
6
|
+
canActivate(context: ExecutionContext): Promise<boolean>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyPutToRequestGuard = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const services_1 = require("../services");
|
|
7
|
+
let ApiKeyPutToRequestGuard = class ApiKeyPutToRequestGuard {
|
|
8
|
+
constructor(apiKeyService) {
|
|
9
|
+
this.apiKeyService = apiKeyService;
|
|
10
|
+
}
|
|
11
|
+
async canActivate(context) {
|
|
12
|
+
const request = context.switchToHttp().getRequest();
|
|
13
|
+
const { params } = request;
|
|
14
|
+
const { apiKey } = params;
|
|
15
|
+
const check = await this.apiKeyService.findById(apiKey);
|
|
16
|
+
request.__apiKey = check;
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
exports.ApiKeyPutToRequestGuard = ApiKeyPutToRequestGuard;
|
|
21
|
+
exports.ApiKeyPutToRequestGuard = ApiKeyPutToRequestGuard = tslib_1.__decorate([
|
|
22
|
+
(0, common_1.Injectable)(),
|
|
23
|
+
tslib_1.__metadata("design:paramtypes", [services_1.ApiKeyService])
|
|
24
|
+
], ApiKeyPutToRequestGuard);
|
|
25
|
+
//# sourceMappingURL=api-key.put-to-request.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.put-to-request.guard.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/guards/api-key.put-to-request.guard.ts"],"names":[],"mappings":";;;;AAAA,2CAA2E;AAC3E,0CAA4C;AAIrC,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAClC,YAA6B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAE7D,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACpD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAC3B,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;QAE1B,MAAM,KAAK,GAAc,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnE,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEzB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAbY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;6CAEiC,wBAAa;GAD9C,uBAAuB,CAanC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './x-api-key/api-key.x-api-key.guard';
|
|
2
|
+
export * from './x-api-key/api-key.x-api-key.strategy';
|
|
3
|
+
export * from './api-key.active.guard';
|
|
4
|
+
export * from './api-key.expired.guard';
|
|
5
|
+
export * from './api-key.not-found.guard';
|
|
6
|
+
export * from './api-key.put-to-request.guard';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./x-api-key/api-key.x-api-key.guard"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./x-api-key/api-key.x-api-key.strategy"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./api-key.active.guard"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./api-key.expired.guard"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./api-key.not-found.guard"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./api-key.put-to-request.guard"), exports);
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/guards/index.ts"],"names":[],"mappings":";;;AAAA,8EAAoD;AACpD,iFAAuD;AACvD,iEAAuC;AACvC,kEAAwC;AACxC,oEAA0C;AAC1C,yEAA+C"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ExecutionContext } from '@nestjs/common';
|
|
2
|
+
declare const ApiKeyXApiKeyGuard_base: import("@nestjs/passport").Type<import("@nestjs/passport").IAuthGuard>;
|
|
3
|
+
export declare class ApiKeyXApiKeyGuard extends ApiKeyXApiKeyGuard_base {
|
|
4
|
+
constructor();
|
|
5
|
+
canActivate(context: ExecutionContext): boolean | Promise<boolean> | import("rxjs").Observable<boolean>;
|
|
6
|
+
handleRequest<IApiKeyPayload = any>(err: Record<string, any>, apiKey: IApiKeyPayload, info: Error | string): IApiKeyPayload;
|
|
7
|
+
}
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyXApiKeyGuard = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const passport_1 = require("@nestjs/passport");
|
|
6
|
+
const common_1 = require("@nestjs/common");
|
|
7
|
+
const passport_headerapikey_1 = require("passport-headerapikey");
|
|
8
|
+
const errors_1 = require("@tc-libs/errors");
|
|
9
|
+
let ApiKeyXApiKeyGuard = class ApiKeyXApiKeyGuard extends (0, passport_1.AuthGuard)('api-key') {
|
|
10
|
+
constructor() {
|
|
11
|
+
super();
|
|
12
|
+
}
|
|
13
|
+
canActivate(context) {
|
|
14
|
+
return super.canActivate(context);
|
|
15
|
+
}
|
|
16
|
+
handleRequest(err, apiKey, info) {
|
|
17
|
+
if (err || !apiKey) {
|
|
18
|
+
if (info instanceof passport_headerapikey_1.BadRequestError &&
|
|
19
|
+
info.message === 'Missing API Key') {
|
|
20
|
+
throw new errors_1.Api401ApiKeyInvalidError();
|
|
21
|
+
}
|
|
22
|
+
else if (err instanceof errors_1.Api403Error) {
|
|
23
|
+
throw err;
|
|
24
|
+
}
|
|
25
|
+
throw new errors_1.Api401ApiKeyInvalidError();
|
|
26
|
+
}
|
|
27
|
+
return apiKey;
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
exports.ApiKeyXApiKeyGuard = ApiKeyXApiKeyGuard;
|
|
31
|
+
exports.ApiKeyXApiKeyGuard = ApiKeyXApiKeyGuard = tslib_1.__decorate([
|
|
32
|
+
(0, common_1.Injectable)(),
|
|
33
|
+
tslib_1.__metadata("design:paramtypes", [])
|
|
34
|
+
], ApiKeyXApiKeyGuard);
|
|
35
|
+
//# sourceMappingURL=api-key.x-api-key.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.x-api-key.guard.js","sourceRoot":"","sources":["../../../../../../packages/api-key/src/guards/x-api-key/api-key.x-api-key.guard.ts"],"names":[],"mappings":";;;;AAAA,+CAA6C;AAC7C,2CAA8D;AAC9D,iEAAwD;AACxD,4CAAwE;AAGjE,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,IAAA,oBAAS,EAAC,SAAS,CAAC;IAC1D;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAEQ,WAAW,CAAC,OAAyB;QAC5C,OAAO,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAEQ,aAAa,CACpB,GAAwB,EACxB,MAAsB,EACtB,IAAoB;QAEpB,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACnB,IACE,IAAI,YAAY,uCAAe;gBAC/B,IAAI,CAAC,OAAO,KAAK,iBAAiB,EAClC,CAAC;gBACD,MAAM,IAAI,iCAAwB,EAAE,CAAC;YACvC,CAAC;iBAAM,IAAI,GAAG,YAAY,oBAAW,EAAE,CAAC;gBACtC,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,MAAM,IAAI,iCAAwB,EAAE,CAAC;QACvC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAA;AA7BY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;;GACA,kBAAkB,CA6B9B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { DateService } from '@tc-libs/helper';
|
|
2
|
+
import { IRequestApp } from '@tc-libs/request';
|
|
3
|
+
import Strategy from 'passport-headerapikey';
|
|
4
|
+
import { ApiKeyService } from '../../services';
|
|
5
|
+
import { IUserPayloadSerialization, IUserService } from '@tc-libs/user';
|
|
6
|
+
declare const ApiKeyXApiKeyStrategy_base: new (...args: any[]) => Strategy;
|
|
7
|
+
export declare class ApiKeyXApiKeyStrategy extends ApiKeyXApiKeyStrategy_base {
|
|
8
|
+
private readonly apiKeyService;
|
|
9
|
+
private readonly _date;
|
|
10
|
+
private readonly _user;
|
|
11
|
+
constructor(apiKeyService: ApiKeyService, _date: DateService, _user: IUserService);
|
|
12
|
+
validate(apiKey: string, verified: (error?: Error, user?: IUserPayloadSerialization, info?: string | number) => Promise<void>, req: IRequestApp): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyXApiKeyStrategy = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const helper_1 = require("@tc-libs/helper");
|
|
6
|
+
const errors_1 = require("@tc-libs/errors");
|
|
7
|
+
const common_1 = require("@nestjs/common");
|
|
8
|
+
const passport_1 = require("@nestjs/passport");
|
|
9
|
+
const passport_headerapikey_1 = tslib_1.__importDefault(require("passport-headerapikey"));
|
|
10
|
+
const services_1 = require("../../services");
|
|
11
|
+
let ApiKeyXApiKeyStrategy = class ApiKeyXApiKeyStrategy extends (0, passport_1.PassportStrategy)(passport_headerapikey_1.default, 'api-key') {
|
|
12
|
+
constructor(apiKeyService, _date, _user) {
|
|
13
|
+
super({ header: 'X-API-KEY', prefix: '' }, true, async (apiKey, verified, req) => this.validate(apiKey, verified, req));
|
|
14
|
+
this.apiKeyService = apiKeyService;
|
|
15
|
+
this._date = _date;
|
|
16
|
+
this._user = _user;
|
|
17
|
+
}
|
|
18
|
+
async validate(apiKey, verified, req) {
|
|
19
|
+
const xApiKey = apiKey.split(':');
|
|
20
|
+
if (xApiKey.length !== 2) {
|
|
21
|
+
verified(new errors_1.Api401ApiKeyInvalidError());
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const key = xApiKey[0];
|
|
25
|
+
const today = this._date.create();
|
|
26
|
+
const authApi = await this.apiKeyService.findOneByActiveKey(key);
|
|
27
|
+
if (!authApi) {
|
|
28
|
+
verified(new errors_1.Api403ApiKeyNotFoundError());
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
else if (!authApi.active) {
|
|
32
|
+
verified(new errors_1.Api403ApiKeyInactiveError());
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
else if (authApi.startDate &&
|
|
36
|
+
authApi.endDate &&
|
|
37
|
+
(authApi.startDate < today || authApi.endDate > today)) {
|
|
38
|
+
verified(new errors_1.Api403ApiKeyExpiredError());
|
|
39
|
+
}
|
|
40
|
+
const validateApiKey = await this.apiKeyService.validateHashApiKey(apiKey, authApi.hash);
|
|
41
|
+
if (!validateApiKey) {
|
|
42
|
+
verified(new errors_1.Api401ApiKeyInvalidError());
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
req.apiKey = {
|
|
46
|
+
_id: `${authApi._id}`,
|
|
47
|
+
key: authApi.key,
|
|
48
|
+
name: authApi.name,
|
|
49
|
+
};
|
|
50
|
+
const user = await this._user.findById(authApi.user);
|
|
51
|
+
verified(undefined, {
|
|
52
|
+
_id: authApi.user.toString(),
|
|
53
|
+
accessFor: authApi.accessFor,
|
|
54
|
+
rememberMe: true,
|
|
55
|
+
email: user.email,
|
|
56
|
+
firstName: user.firstName,
|
|
57
|
+
lastName: user.lastName,
|
|
58
|
+
lang: user.lang,
|
|
59
|
+
});
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
exports.ApiKeyXApiKeyStrategy = ApiKeyXApiKeyStrategy;
|
|
64
|
+
exports.ApiKeyXApiKeyStrategy = ApiKeyXApiKeyStrategy = tslib_1.__decorate([
|
|
65
|
+
(0, common_1.Injectable)(),
|
|
66
|
+
tslib_1.__metadata("design:paramtypes", [services_1.ApiKeyService,
|
|
67
|
+
helper_1.DateService, Object])
|
|
68
|
+
], ApiKeyXApiKeyStrategy);
|
|
69
|
+
//# sourceMappingURL=api-key.x-api-key.strategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.x-api-key.strategy.js","sourceRoot":"","sources":["../../../../../../packages/api-key/src/guards/x-api-key/api-key.x-api-key.strategy.ts"],"names":[],"mappings":"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"}
|
package/src/index.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from './constants';
|
|
2
|
+
export * from './controllers';
|
|
3
|
+
export * from './decorators';
|
|
4
|
+
export * from './docs';
|
|
5
|
+
export * from './dtos';
|
|
6
|
+
export * from './guards';
|
|
7
|
+
export * from './interfaces';
|
|
8
|
+
export * from './repository';
|
|
9
|
+
export * from './serializations';
|
|
10
|
+
export * from './services';
|
|
11
|
+
export * from './tasks';
|
|
12
|
+
export * from './api-key.module';
|
package/src/index.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./constants"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./controllers"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./decorators"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./docs"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./dtos"), exports);
|
|
9
|
+
tslib_1.__exportStar(require("./guards"), exports);
|
|
10
|
+
tslib_1.__exportStar(require("./interfaces"), exports);
|
|
11
|
+
tslib_1.__exportStar(require("./repository"), exports);
|
|
12
|
+
tslib_1.__exportStar(require("./serializations"), exports);
|
|
13
|
+
tslib_1.__exportStar(require("./services"), exports);
|
|
14
|
+
tslib_1.__exportStar(require("./tasks"), exports);
|
|
15
|
+
tslib_1.__exportStar(require("./api-key.module"), exports);
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/api-key/src/index.ts"],"names":[],"mappings":";;;AAAA,sDAA4B;AAC5B,wDAA8B;AAC9B,uDAA6B;AAC7B,iDAAuB;AACvB,iDAAuB;AACvB,mDAAyB;AACzB,uDAA6B;AAC7B,uDAA6B;AAC7B,2DAAiC;AACjC,qDAA2B;AAC3B,kDAAwB;AACxB,2DAAiC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.interface.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/interfaces/api-key.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './api-key.interface';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/interfaces/index.ts"],"names":[],"mappings":";;;AAAA,8DAAoC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiKeyRepositoryModule = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const mongoose_1 = require("@nestjs/mongoose");
|
|
7
|
+
const api_key_entity_1 = require("./entities/api-key.entity");
|
|
8
|
+
const api_key_repository_1 = require("./repositories/api-key.repository");
|
|
9
|
+
let ApiKeyRepositoryModule = class ApiKeyRepositoryModule {
|
|
10
|
+
};
|
|
11
|
+
exports.ApiKeyRepositoryModule = ApiKeyRepositoryModule;
|
|
12
|
+
exports.ApiKeyRepositoryModule = ApiKeyRepositoryModule = tslib_1.__decorate([
|
|
13
|
+
(0, common_1.Module)({
|
|
14
|
+
providers: [api_key_repository_1.ApiKeyRepository],
|
|
15
|
+
exports: [api_key_repository_1.ApiKeyRepository],
|
|
16
|
+
controllers: [],
|
|
17
|
+
imports: [
|
|
18
|
+
mongoose_1.MongooseModule.forFeature([
|
|
19
|
+
{
|
|
20
|
+
name: api_key_entity_1.ApiKeyEntity.name,
|
|
21
|
+
schema: api_key_entity_1.ApiKeySchema,
|
|
22
|
+
},
|
|
23
|
+
]),
|
|
24
|
+
],
|
|
25
|
+
})
|
|
26
|
+
], ApiKeyRepositoryModule);
|
|
27
|
+
//# sourceMappingURL=api-key.repository.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-key.repository.module.js","sourceRoot":"","sources":["../../../../../packages/api-key/src/repository/api-key.repository.module.ts"],"names":[],"mappings":";;;;AAAA,2CAAwC;AACxC,+CAAkD;AAClD,8DAAuE;AACvE,0EAAqE;AAe9D,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;CAAG,CAAA;AAAzB,wDAAsB;iCAAtB,sBAAsB;IAblC,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,qCAAgB,CAAC;QAC7B,OAAO,EAAE,CAAC,qCAAgB,CAAC;QAC3B,WAAW,EAAE,EAAE;QACf,OAAO,EAAE;YACP,yBAAc,CAAC,UAAU,CAAC;gBACxB;oBACE,IAAI,EAAE,6BAAY,CAAC,IAAI;oBACvB,MAAM,EAAE,6BAAY;iBACrB;aACF,CAAC;SACH;KACF,CAAC;GACW,sBAAsB,CAAG"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ENUM_AUTH_ACCESS_FOR } from '@tc-libs/authentication';
|
|
2
|
+
import { DatabaseMongoEntityAbstract } from '@tc-libs/database';
|
|
3
|
+
import { Document } from 'mongoose';
|
|
4
|
+
export declare const ApiKeyDatabaseName = "apikeys";
|
|
5
|
+
export declare class ApiKeyEntity extends DatabaseMongoEntityAbstract {
|
|
6
|
+
user: string;
|
|
7
|
+
accessFor: ENUM_AUTH_ACCESS_FOR;
|
|
8
|
+
name: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
key: string;
|
|
11
|
+
hash: string;
|
|
12
|
+
active: boolean;
|
|
13
|
+
startDate?: Date;
|
|
14
|
+
endDate?: Date;
|
|
15
|
+
}
|
|
16
|
+
export declare const ApiKeySchema: import("mongoose").Schema<ApiKeyEntity, import("mongoose").Model<ApiKeyEntity, any, any, any, Document<unknown, any, ApiKeyEntity> & ApiKeyEntity & Required<{
|
|
17
|
+
_id: import("mongoose").Types.ObjectId;
|
|
18
|
+
}>, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, ApiKeyEntity, Document<unknown, {}, ApiKeyEntity> & ApiKeyEntity & Required<{
|
|
19
|
+
_id: import("mongoose").Types.ObjectId;
|
|
20
|
+
}>>;
|
|
21
|
+
export type ApiKeyDoc = ApiKeyEntity & Document;
|