@mondart/nestjs-common-module-google-recaptcha 3.0.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/dist/decorators/recaptcha-result.d.ts +2 -0
- package/dist/decorators/recaptcha-result.d.ts.map +1 -0
- package/dist/decorators/recaptcha-result.js +17 -0
- package/dist/decorators/recaptcha-result.js.map +1 -0
- package/dist/decorators/recaptcha.d.ts +3 -0
- package/dist/decorators/recaptcha.d.ts.map +1 -0
- package/dist/decorators/recaptcha.js +10 -0
- package/dist/decorators/recaptcha.js.map +1 -0
- package/dist/decorators/set-recaptcha-options.d.ts +3 -0
- package/dist/decorators/set-recaptcha-options.d.ts.map +1 -0
- package/dist/decorators/set-recaptcha-options.js +9 -0
- package/dist/decorators/set-recaptcha-options.js.map +1 -0
- package/dist/enums/classification-reason.d.ts +9 -0
- package/dist/enums/classification-reason.d.ts.map +1 -0
- package/dist/enums/classification-reason.js +13 -0
- package/dist/enums/classification-reason.js.map +1 -0
- package/dist/enums/error-code.d.ts +17 -0
- package/dist/enums/error-code.d.ts.map +1 -0
- package/dist/enums/error-code.js +21 -0
- package/dist/enums/error-code.js.map +1 -0
- package/dist/enums/google-recaptcha-context.d.ts +5 -0
- package/dist/enums/google-recaptcha-context.d.ts.map +1 -0
- package/dist/enums/google-recaptcha-context.js +9 -0
- package/dist/enums/google-recaptcha-context.js.map +1 -0
- package/dist/enums/google-recaptcha-enterprise-reason.d.ts +11 -0
- package/dist/enums/google-recaptcha-enterprise-reason.d.ts.map +1 -0
- package/dist/enums/google-recaptcha-enterprise-reason.js +15 -0
- package/dist/enums/google-recaptcha-enterprise-reason.js.map +1 -0
- package/dist/enums/google-recaptcha-network.d.ts +5 -0
- package/dist/enums/google-recaptcha-network.d.ts.map +1 -0
- package/dist/enums/google-recaptcha-network.js +9 -0
- package/dist/enums/google-recaptcha-network.js.map +1 -0
- package/dist/exceptions/google-recaptcha-network.exception.d.ts +6 -0
- package/dist/exceptions/google-recaptcha-network.exception.d.ts.map +1 -0
- package/dist/exceptions/google-recaptcha-network.exception.js +15 -0
- package/dist/exceptions/google-recaptcha-network.exception.js.map +1 -0
- package/dist/exceptions/google-recaptcha.exception.d.ts +9 -0
- package/dist/exceptions/google-recaptcha.exception.d.ts.map +1 -0
- package/dist/exceptions/google-recaptcha.exception.js +55 -0
- package/dist/exceptions/google-recaptcha.exception.js.map +1 -0
- package/dist/google-recaptcha.module.d.ts +13 -0
- package/dist/google-recaptcha.module.d.ts.map +1 -0
- package/dist/google-recaptcha.module.js +162 -0
- package/dist/google-recaptcha.module.js.map +1 -0
- package/dist/guards/google-recaptcha.guard.d.ts +16 -0
- package/dist/guards/google-recaptcha.guard.d.ts.map +1 -0
- package/dist/guards/google-recaptcha.guard.js +90 -0
- package/dist/guards/google-recaptcha.guard.js.map +1 -0
- package/dist/helpers/get-error-info.d.ts +5 -0
- package/dist/helpers/get-error-info.d.ts.map +1 -0
- package/dist/helpers/get-error-info.js +14 -0
- package/dist/helpers/get-error-info.js.map +1 -0
- package/dist/helpers/load-module.d.ts +3 -0
- package/dist/helpers/load-module.d.ts.map +1 -0
- package/dist/helpers/load-module.js +16 -0
- package/dist/helpers/load-module.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/google-recaptcha-enterprise-options.d.ts +6 -0
- package/dist/interfaces/google-recaptcha-enterprise-options.d.ts.map +1 -0
- package/dist/interfaces/google-recaptcha-enterprise-options.js +3 -0
- package/dist/interfaces/google-recaptcha-enterprise-options.js.map +1 -0
- package/dist/interfaces/google-recaptcha-guard-options.d.ts +8 -0
- package/dist/interfaces/google-recaptcha-guard-options.d.ts.map +1 -0
- package/dist/interfaces/google-recaptcha-guard-options.js +3 -0
- package/dist/interfaces/google-recaptcha-guard-options.js.map +1 -0
- package/dist/interfaces/google-recaptcha-module-options.d.ts +22 -0
- package/dist/interfaces/google-recaptcha-module-options.d.ts.map +1 -0
- package/dist/interfaces/google-recaptcha-module-options.js +3 -0
- package/dist/interfaces/google-recaptcha-module-options.js.map +1 -0
- package/dist/interfaces/google-recaptcha-validator-options.d.ts +13 -0
- package/dist/interfaces/google-recaptcha-validator-options.d.ts.map +1 -0
- package/dist/interfaces/google-recaptcha-validator-options.js +3 -0
- package/dist/interfaces/google-recaptcha-validator-options.js.map +1 -0
- package/dist/interfaces/literal-object.d.ts +4 -0
- package/dist/interfaces/literal-object.d.ts.map +1 -0
- package/dist/interfaces/literal-object.js +3 -0
- package/dist/interfaces/literal-object.js.map +1 -0
- package/dist/interfaces/verify-response-decorator-options.d.ts +14 -0
- package/dist/interfaces/verify-response-decorator-options.d.ts.map +1 -0
- package/dist/interfaces/verify-response-decorator-options.js +3 -0
- package/dist/interfaces/verify-response-decorator-options.js.map +1 -0
- package/dist/interfaces/verify-response-enterprise.d.ts +31 -0
- package/dist/interfaces/verify-response-enterprise.d.ts.map +1 -0
- package/dist/interfaces/verify-response-enterprise.js +3 -0
- package/dist/interfaces/verify-response-enterprise.js.map +1 -0
- package/dist/interfaces/verify-response.d.ts +12 -0
- package/dist/interfaces/verify-response.d.ts.map +1 -0
- package/dist/interfaces/verify-response.js +3 -0
- package/dist/interfaces/verify-response.js.map +1 -0
- package/dist/models/recaptcha-config-ref.d.ts +13 -0
- package/dist/models/recaptcha-config-ref.d.ts.map +1 -0
- package/dist/models/recaptcha-config-ref.js +31 -0
- package/dist/models/recaptcha-config-ref.js.map +1 -0
- package/dist/models/recaptcha-verification-result.d.ts +27 -0
- package/dist/models/recaptcha-verification-result.d.ts.map +1 -0
- package/dist/models/recaptcha-verification-result.js +35 -0
- package/dist/models/recaptcha-verification-result.js.map +1 -0
- package/dist/provider.declarations.d.ts +5 -0
- package/dist/provider.declarations.d.ts.map +1 -0
- package/dist/provider.declarations.js +8 -0
- package/dist/provider.declarations.js.map +1 -0
- package/dist/services/enterprise-reason.transformer.d.ts +6 -0
- package/dist/services/enterprise-reason.transformer.d.ts.map +1 -0
- package/dist/services/enterprise-reason.transformer.js +39 -0
- package/dist/services/enterprise-reason.transformer.js.map +1 -0
- package/dist/services/recaptcha-request.resolver.d.ts +5 -0
- package/dist/services/recaptcha-request.resolver.d.ts.map +1 -0
- package/dist/services/recaptcha-request.resolver.js +33 -0
- package/dist/services/recaptcha-request.resolver.js.map +1 -0
- package/dist/services/recaptcha-validator.resolver.d.ts +12 -0
- package/dist/services/recaptcha-validator.resolver.d.ts.map +1 -0
- package/dist/services/recaptcha-validator.resolver.js +41 -0
- package/dist/services/recaptcha-validator.resolver.js.map +1 -0
- package/dist/services/validators/abstract-google-recaptcha-validator.d.ts +12 -0
- package/dist/services/validators/abstract-google-recaptcha-validator.d.ts.map +1 -0
- package/dist/services/validators/abstract-google-recaptcha-validator.js +28 -0
- package/dist/services/validators/abstract-google-recaptcha-validator.js.map +1 -0
- package/dist/services/validators/google-recaptcha-enterprise.validator.d.ts +18 -0
- package/dist/services/validators/google-recaptcha-enterprise.validator.d.ts.map +1 -0
- package/dist/services/validators/google-recaptcha-enterprise.validator.js +127 -0
- package/dist/services/validators/google-recaptcha-enterprise.validator.js.map +1 -0
- package/dist/services/validators/google-recaptcha.validator.d.ts +18 -0
- package/dist/services/validators/google-recaptcha.validator.d.ts.map +1 -0
- package/dist/services/validators/google-recaptcha.validator.js +162 -0
- package/dist/services/validators/google-recaptcha.validator.js.map +1 -0
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +33 -0
|
@@ -0,0 +1,90 @@
|
|
|
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
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.GoogleRecaptchaGuard = void 0;
|
|
16
|
+
const common_1 = require("@nestjs/common");
|
|
17
|
+
const provider_declarations_1 = require("../provider.declarations");
|
|
18
|
+
const google_recaptcha_exception_1 = require("../exceptions/google-recaptcha.exception");
|
|
19
|
+
const core_1 = require("@nestjs/core");
|
|
20
|
+
const recaptcha_request_resolver_1 = require("../services/recaptcha-request.resolver");
|
|
21
|
+
const recaptcha_validator_resolver_1 = require("../services/recaptcha-validator.resolver");
|
|
22
|
+
const google_recaptcha_context_1 = require("../enums/google-recaptcha-context");
|
|
23
|
+
const google_recaptcha_enterprise_validator_1 = require("../services/validators/google-recaptcha-enterprise.validator");
|
|
24
|
+
const recaptcha_config_ref_1 = require("../models/recaptcha-config-ref");
|
|
25
|
+
let GoogleRecaptchaGuard = class GoogleRecaptchaGuard {
|
|
26
|
+
constructor(reflector, requestResolver, validatorResolver, logger, configRef) {
|
|
27
|
+
this.reflector = reflector;
|
|
28
|
+
this.requestResolver = requestResolver;
|
|
29
|
+
this.validatorResolver = validatorResolver;
|
|
30
|
+
this.logger = logger;
|
|
31
|
+
this.configRef = configRef;
|
|
32
|
+
}
|
|
33
|
+
async canActivate(context) {
|
|
34
|
+
const isDisabled = this.configRef.valueOf.disable;
|
|
35
|
+
if (isDisabled) {
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
const request = this.requestResolver.resolve(context);
|
|
39
|
+
const skipIfValue = this.configRef.valueOf.skipIf;
|
|
40
|
+
const skip = typeof skipIfValue === 'function'
|
|
41
|
+
? await skipIfValue(request)
|
|
42
|
+
: !!skipIfValue;
|
|
43
|
+
if (skip) {
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
const options = this.reflector.get(provider_declarations_1.RECAPTCHA_VALIDATION_OPTIONS, context.getHandler());
|
|
47
|
+
const [response, remoteIp] = await Promise.all([
|
|
48
|
+
options?.response
|
|
49
|
+
? await options.response(request)
|
|
50
|
+
: await this.configRef.valueOf.response(request),
|
|
51
|
+
options?.remoteIp
|
|
52
|
+
? await options.remoteIp(request)
|
|
53
|
+
: (await this.configRef.valueOf.remoteIp) &&
|
|
54
|
+
this.configRef.valueOf.remoteIp(request),
|
|
55
|
+
]);
|
|
56
|
+
const score = options?.score || this.configRef.valueOf.score;
|
|
57
|
+
const action = options?.action;
|
|
58
|
+
const validator = this.validatorResolver.resolve();
|
|
59
|
+
request.recaptchaValidationResult = await validator.validate({
|
|
60
|
+
response,
|
|
61
|
+
remoteIp,
|
|
62
|
+
score,
|
|
63
|
+
action,
|
|
64
|
+
});
|
|
65
|
+
if (this.configRef.valueOf.debug) {
|
|
66
|
+
const loggerCtx = this.resolveLogContext(validator);
|
|
67
|
+
this.logger.debug(request.recaptchaValidationResult.toObject(), `${loggerCtx}.result`);
|
|
68
|
+
}
|
|
69
|
+
if (request.recaptchaValidationResult.success) {
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
throw new google_recaptcha_exception_1.GoogleRecaptchaException(request.recaptchaValidationResult.errors);
|
|
73
|
+
}
|
|
74
|
+
resolveLogContext(validator) {
|
|
75
|
+
return validator instanceof google_recaptcha_enterprise_validator_1.GoogleRecaptchaEnterpriseValidator
|
|
76
|
+
? google_recaptcha_context_1.GoogleRecaptchaContext.GoogleRecaptchaEnterprise
|
|
77
|
+
: google_recaptcha_context_1.GoogleRecaptchaContext.GoogleRecaptcha;
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
exports.GoogleRecaptchaGuard = GoogleRecaptchaGuard;
|
|
81
|
+
exports.GoogleRecaptchaGuard = GoogleRecaptchaGuard = __decorate([
|
|
82
|
+
(0, common_1.Injectable)(),
|
|
83
|
+
__param(3, (0, common_1.Inject)(provider_declarations_1.RECAPTCHA_LOGGER)),
|
|
84
|
+
__metadata("design:paramtypes", [core_1.Reflector,
|
|
85
|
+
recaptcha_request_resolver_1.RecaptchaRequestResolver,
|
|
86
|
+
recaptcha_validator_resolver_1.RecaptchaValidatorResolver,
|
|
87
|
+
common_1.Logger,
|
|
88
|
+
recaptcha_config_ref_1.RecaptchaConfigRef])
|
|
89
|
+
], GoogleRecaptchaGuard);
|
|
90
|
+
//# sourceMappingURL=google-recaptcha.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha.guard.js","sourceRoot":"","sources":["../../src/guards/google-recaptcha.guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as axios from 'axios';
|
|
2
|
+
import { LiteralObject } from '../interfaces/literal-object';
|
|
3
|
+
export declare function isAxiosError<T = LiteralObject>(error: Error | axios.AxiosError<T>): error is axios.AxiosError<T>;
|
|
4
|
+
export declare function getErrorInfo(error: Error): string | LiteralObject;
|
|
5
|
+
//# sourceMappingURL=get-error-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-error-info.d.ts","sourceRoot":"","sources":["../../src/helpers/get-error-info.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,wBAAgB,YAAY,CAAC,CAAC,GAAG,aAAa,EAC5C,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,GACjC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAE9B;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,aAAa,CAMjE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isAxiosError = isAxiosError;
|
|
4
|
+
exports.getErrorInfo = getErrorInfo;
|
|
5
|
+
function isAxiosError(error) {
|
|
6
|
+
return error.isAxiosError;
|
|
7
|
+
}
|
|
8
|
+
function getErrorInfo(error) {
|
|
9
|
+
if (isAxiosError(error)) {
|
|
10
|
+
return error.response?.data || error.code || 'Unknown axios error';
|
|
11
|
+
}
|
|
12
|
+
return { error: error.name, message: error.message, stack: error.stack };
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=get-error-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-error-info.js","sourceRoot":"","sources":["../../src/helpers/get-error-info.ts"],"names":[],"mappings":";;AAGA,oCAIC;AAED,oCAMC;AAZD,SAAgB,YAAY,CAC1B,KAAkC;IAElC,OAA0B,KAAM,CAAC,YAAY,CAAC;AAChD,CAAC;AAED,SAAgB,YAAY,CAAC,KAAY;IACvC,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,KAAK,CAAC,IAAI,IAAI,qBAAqB,CAAC;IACrE,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;AAC3E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-module.d.ts","sourceRoot":"","sources":["../../src/helpers/load-module.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,wBAAgB,UAAU,CACxB,UAAU,EAAE,MAAM,EAClB,QAAQ,UAAQ,GACf,aAAa,CAWf"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadModule = loadModule;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
function loadModule(moduleName, logError = false) {
|
|
6
|
+
try {
|
|
7
|
+
return require(moduleName);
|
|
8
|
+
}
|
|
9
|
+
catch (e) {
|
|
10
|
+
if (logError) {
|
|
11
|
+
common_1.Logger.error(`Module '${moduleName}' not found. \nPotential solution npm i ${moduleName}`);
|
|
12
|
+
}
|
|
13
|
+
throw e;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=load-module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-module.js","sourceRoot":"","sources":["../../src/helpers/load-module.ts"],"names":[],"mappings":";;AAGA,gCAcC;AAjBD,2CAAwC;AAGxC,SAAgB,UAAU,CACxB,UAAkB,EAClB,QAAQ,GAAG,KAAK;IAEhB,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,QAAQ,EAAE,CAAC;YACb,eAAM,CAAC,KAAK,CACV,WAAW,UAAU,4CAA4C,UAAU,EAAE,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export { Recaptcha } from './decorators/recaptcha';
|
|
2
|
+
export { SetRecaptchaOptions } from './decorators/set-recaptcha-options';
|
|
3
|
+
export { RecaptchaResult } from './decorators/recaptcha-result';
|
|
4
|
+
export { GoogleRecaptchaGuard } from './guards/google-recaptcha.guard';
|
|
5
|
+
export { GoogleRecaptchaModule } from './google-recaptcha.module';
|
|
6
|
+
export { GoogleRecaptchaModuleOptions } from './interfaces/google-recaptcha-module-options';
|
|
7
|
+
export { ErrorCode } from './enums/error-code';
|
|
8
|
+
export { GoogleRecaptchaNetwork } from './enums/google-recaptcha-network';
|
|
9
|
+
export { GoogleRecaptchaException } from './exceptions/google-recaptcha.exception';
|
|
10
|
+
export { GoogleRecaptchaNetworkException } from './exceptions/google-recaptcha-network.exception';
|
|
11
|
+
export { GoogleRecaptchaValidator } from './services/validators/google-recaptcha.validator';
|
|
12
|
+
export { GoogleRecaptchaEnterpriseValidator } from './services/validators/google-recaptcha-enterprise.validator';
|
|
13
|
+
export { RecaptchaVerificationResult } from './models/recaptcha-verification-result';
|
|
14
|
+
export { ClassificationReason } from './enums/classification-reason';
|
|
15
|
+
export { RecaptchaConfigRef } from './models/recaptcha-config-ref';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,+BAA+B,EAAE,MAAM,iDAAiD,CAAC;AAClG,OAAO,EAAE,wBAAwB,EAAE,MAAM,kDAAkD,CAAC;AAC5F,OAAO,EAAE,kCAAkC,EAAE,MAAM,6DAA6D,CAAC;AACjH,OAAO,EAAE,2BAA2B,EAAE,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecaptchaConfigRef = exports.ClassificationReason = exports.RecaptchaVerificationResult = exports.GoogleRecaptchaEnterpriseValidator = exports.GoogleRecaptchaValidator = exports.GoogleRecaptchaNetworkException = exports.GoogleRecaptchaException = exports.GoogleRecaptchaNetwork = exports.ErrorCode = exports.GoogleRecaptchaModule = exports.GoogleRecaptchaGuard = exports.RecaptchaResult = exports.SetRecaptchaOptions = exports.Recaptcha = void 0;
|
|
4
|
+
var recaptcha_1 = require("./decorators/recaptcha");
|
|
5
|
+
Object.defineProperty(exports, "Recaptcha", { enumerable: true, get: function () { return recaptcha_1.Recaptcha; } });
|
|
6
|
+
var set_recaptcha_options_1 = require("./decorators/set-recaptcha-options");
|
|
7
|
+
Object.defineProperty(exports, "SetRecaptchaOptions", { enumerable: true, get: function () { return set_recaptcha_options_1.SetRecaptchaOptions; } });
|
|
8
|
+
var recaptcha_result_1 = require("./decorators/recaptcha-result");
|
|
9
|
+
Object.defineProperty(exports, "RecaptchaResult", { enumerable: true, get: function () { return recaptcha_result_1.RecaptchaResult; } });
|
|
10
|
+
var google_recaptcha_guard_1 = require("./guards/google-recaptcha.guard");
|
|
11
|
+
Object.defineProperty(exports, "GoogleRecaptchaGuard", { enumerable: true, get: function () { return google_recaptcha_guard_1.GoogleRecaptchaGuard; } });
|
|
12
|
+
var google_recaptcha_module_1 = require("./google-recaptcha.module");
|
|
13
|
+
Object.defineProperty(exports, "GoogleRecaptchaModule", { enumerable: true, get: function () { return google_recaptcha_module_1.GoogleRecaptchaModule; } });
|
|
14
|
+
var error_code_1 = require("./enums/error-code");
|
|
15
|
+
Object.defineProperty(exports, "ErrorCode", { enumerable: true, get: function () { return error_code_1.ErrorCode; } });
|
|
16
|
+
var google_recaptcha_network_1 = require("./enums/google-recaptcha-network");
|
|
17
|
+
Object.defineProperty(exports, "GoogleRecaptchaNetwork", { enumerable: true, get: function () { return google_recaptcha_network_1.GoogleRecaptchaNetwork; } });
|
|
18
|
+
var google_recaptcha_exception_1 = require("./exceptions/google-recaptcha.exception");
|
|
19
|
+
Object.defineProperty(exports, "GoogleRecaptchaException", { enumerable: true, get: function () { return google_recaptcha_exception_1.GoogleRecaptchaException; } });
|
|
20
|
+
var google_recaptcha_network_exception_1 = require("./exceptions/google-recaptcha-network.exception");
|
|
21
|
+
Object.defineProperty(exports, "GoogleRecaptchaNetworkException", { enumerable: true, get: function () { return google_recaptcha_network_exception_1.GoogleRecaptchaNetworkException; } });
|
|
22
|
+
var google_recaptcha_validator_1 = require("./services/validators/google-recaptcha.validator");
|
|
23
|
+
Object.defineProperty(exports, "GoogleRecaptchaValidator", { enumerable: true, get: function () { return google_recaptcha_validator_1.GoogleRecaptchaValidator; } });
|
|
24
|
+
var google_recaptcha_enterprise_validator_1 = require("./services/validators/google-recaptcha-enterprise.validator");
|
|
25
|
+
Object.defineProperty(exports, "GoogleRecaptchaEnterpriseValidator", { enumerable: true, get: function () { return google_recaptcha_enterprise_validator_1.GoogleRecaptchaEnterpriseValidator; } });
|
|
26
|
+
var recaptcha_verification_result_1 = require("./models/recaptcha-verification-result");
|
|
27
|
+
Object.defineProperty(exports, "RecaptchaVerificationResult", { enumerable: true, get: function () { return recaptcha_verification_result_1.RecaptchaVerificationResult; } });
|
|
28
|
+
var classification_reason_1 = require("./enums/classification-reason");
|
|
29
|
+
Object.defineProperty(exports, "ClassificationReason", { enumerable: true, get: function () { return classification_reason_1.ClassificationReason; } });
|
|
30
|
+
var recaptcha_config_ref_1 = require("./models/recaptcha-config-ref");
|
|
31
|
+
Object.defineProperty(exports, "RecaptchaConfigRef", { enumerable: true, get: function () { return recaptcha_config_ref_1.RecaptchaConfigRef; } });
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,oDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,4EAAyE;AAAhE,4HAAA,mBAAmB,OAAA;AAC5B,kEAAgE;AAAvD,mHAAA,eAAe,OAAA;AACxB,0EAAuE;AAA9D,8HAAA,oBAAoB,OAAA;AAC7B,qEAAkE;AAAzD,gIAAA,qBAAqB,OAAA;AAE9B,iDAA+C;AAAtC,uGAAA,SAAS,OAAA;AAClB,6EAA0E;AAAjE,kIAAA,sBAAsB,OAAA;AAC/B,sFAAmF;AAA1E,sIAAA,wBAAwB,OAAA;AACjC,sGAAkG;AAAzF,qJAAA,+BAA+B,OAAA;AACxC,+FAA4F;AAAnF,sIAAA,wBAAwB,OAAA;AACjC,qHAAiH;AAAxG,2JAAA,kCAAkC,OAAA;AAC3C,wFAAqF;AAA5E,4IAAA,2BAA2B,OAAA;AACpC,uEAAqE;AAA5D,6HAAA,oBAAoB,OAAA;AAC7B,sEAAmE;AAA1D,0HAAA,kBAAkB,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-enterprise-options.d.ts","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-enterprise-options.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gCAAgC;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-enterprise-options.js","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-enterprise-options.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { RecaptchaRemoteIpProvider, RecaptchaResponseProvider, ScoreValidator, SkipIfValue } from '../types';
|
|
2
|
+
export interface GoogleRecaptchaGuardOptions {
|
|
3
|
+
response: RecaptchaResponseProvider;
|
|
4
|
+
remoteIp?: RecaptchaRemoteIpProvider;
|
|
5
|
+
skipIf?: SkipIfValue;
|
|
6
|
+
score?: ScoreValidator;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=google-recaptcha-guard-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-guard-options.d.ts","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-guard-options.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,cAAc,EACd,WAAW,EACZ,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,yBAAyB,CAAC;IACpC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,cAAc,CAAC;CACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-guard-options.js","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-guard-options.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { GoogleRecaptchaGuardOptions } from './google-recaptcha-guard-options';
|
|
2
|
+
import { GoogleRecaptchaValidatorOptions } from './google-recaptcha-validator-options';
|
|
3
|
+
import { ModuleMetadata, Type } from '@nestjs/common/interfaces';
|
|
4
|
+
import { Logger } from '@nestjs/common';
|
|
5
|
+
import { Abstract } from '@nestjs/common/interfaces/abstract.interface';
|
|
6
|
+
export interface GoogleRecaptchaModuleOptions extends GoogleRecaptchaValidatorOptions, GoogleRecaptchaGuardOptions {
|
|
7
|
+
disable?: boolean;
|
|
8
|
+
debug?: boolean;
|
|
9
|
+
logger?: Logger;
|
|
10
|
+
global?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface GoogleRecaptchaOptionsFactory {
|
|
13
|
+
createGoogleRecaptchaOptions(): Promise<GoogleRecaptchaModuleOptions> | GoogleRecaptchaModuleOptions;
|
|
14
|
+
}
|
|
15
|
+
export interface GoogleRecaptchaModuleAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
|
|
16
|
+
inject?: Array<string | symbol | Type | Abstract<any> | Function>;
|
|
17
|
+
useClass?: Type<GoogleRecaptchaOptionsFactory>;
|
|
18
|
+
useExisting?: Type<GoogleRecaptchaOptionsFactory>;
|
|
19
|
+
useFactory?: (...args: any[]) => Promise<Omit<GoogleRecaptchaModuleOptions, 'global'>> | Omit<GoogleRecaptchaModuleOptions, 'global'>;
|
|
20
|
+
global?: boolean;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=google-recaptcha-module-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-module-options.d.ts","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-module-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,8CAA8C,CAAC;AAExE,MAAM,WAAW,4BACf,SAAQ,+BAA+B,EAAE,2BAA2B;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,6BAA6B;IAC5C,4BAA4B,IACxB,OAAO,CAAC,4BAA4B,CAAC,GACrC,4BAA4B,CAAC;CAClC;AAED,MAAM,WAAW,iCAAkC,SAAQ,IAAI,CAC7D,cAAc,EACd,SAAS,CACV;IAEA,MAAM,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;IACjE,QAAQ,CAAC,EAAE,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAElD,UAAU,CAAC,EAAE,CACX,GAAG,IAAI,EAAE,GAAG,EAAE,KAEZ,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAC,GACrD,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAC;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-module-options.js","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-module-options.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { GoogleRecaptchaNetwork } from '../enums/google-recaptcha-network';
|
|
2
|
+
import { ScoreValidator } from '../types';
|
|
3
|
+
import { AxiosRequestConfig } from 'axios';
|
|
4
|
+
import { GoogleRecaptchaEnterpriseOptions } from './google-recaptcha-enterprise-options';
|
|
5
|
+
export interface GoogleRecaptchaValidatorOptions {
|
|
6
|
+
secretKey?: string;
|
|
7
|
+
actions?: string[];
|
|
8
|
+
score?: ScoreValidator;
|
|
9
|
+
network?: GoogleRecaptchaNetwork | string;
|
|
10
|
+
axiosConfig?: AxiosRequestConfig;
|
|
11
|
+
enterprise?: GoogleRecaptchaEnterpriseOptions;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=google-recaptcha-validator-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-validator-options.d.ts","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-validator-options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAEzF,MAAM,WAAW,+BAA+B;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,cAAc,CAAC;IAQvB,OAAO,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC;IAE1C,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAEjC,UAAU,CAAC,EAAE,gCAAgC,CAAC;CAC/C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"google-recaptcha-validator-options.js","sourceRoot":"","sources":["../../src/interfaces/google-recaptcha-validator-options.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"literal-object.d.ts","sourceRoot":"","sources":["../../src/interfaces/literal-object.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"literal-object.js","sourceRoot":"","sources":["../../src/interfaces/literal-object.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { RecaptchaRemoteIpProvider, RecaptchaResponseProvider, ScoreValidator } from '../types';
|
|
2
|
+
export interface VerifyResponseDecoratorOptions {
|
|
3
|
+
response?: RecaptchaResponseProvider;
|
|
4
|
+
remoteIp?: RecaptchaRemoteIpProvider;
|
|
5
|
+
score?: ScoreValidator;
|
|
6
|
+
action?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface VerifyResponseOptions {
|
|
9
|
+
response: string;
|
|
10
|
+
remoteIp?: string;
|
|
11
|
+
score?: ScoreValidator;
|
|
12
|
+
action?: string;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=verify-response-decorator-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-response-decorator-options.d.ts","sourceRoot":"","sources":["../../src/interfaces/verify-response-decorator-options.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,cAAc,EACf,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-response-decorator-options.js","sourceRoot":"","sources":["../../src/interfaces/verify-response-decorator-options.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { GoogleRecaptchaEnterpriseReason } from '../enums/google-recaptcha-enterprise-reason';
|
|
2
|
+
import { ClassificationReason } from '../enums/classification-reason';
|
|
3
|
+
export interface VerifyResponseEnterprise {
|
|
4
|
+
tokenProperties?: VerifyResponseEnterpriseTokenProperties;
|
|
5
|
+
riskAnalysis?: VerifyResponseEnterpriseRiskAnalysis;
|
|
6
|
+
event: VerifyTokenEnterpriseResponseEvent;
|
|
7
|
+
name: string;
|
|
8
|
+
}
|
|
9
|
+
export interface VerifyTokenEnterpriseEvent {
|
|
10
|
+
token: string;
|
|
11
|
+
siteKey: string;
|
|
12
|
+
expectedAction: string;
|
|
13
|
+
userIpAddress?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface VerifyTokenEnterpriseResponseEvent extends VerifyTokenEnterpriseEvent {
|
|
16
|
+
userAgent: string;
|
|
17
|
+
userIpAddress: string;
|
|
18
|
+
hashedAccountId: string;
|
|
19
|
+
}
|
|
20
|
+
export interface VerifyResponseEnterpriseTokenProperties {
|
|
21
|
+
valid: boolean;
|
|
22
|
+
invalidReason?: GoogleRecaptchaEnterpriseReason;
|
|
23
|
+
hostname: string;
|
|
24
|
+
action: string;
|
|
25
|
+
createTime: string;
|
|
26
|
+
}
|
|
27
|
+
export interface VerifyResponseEnterpriseRiskAnalysis {
|
|
28
|
+
score: number;
|
|
29
|
+
reasons: ClassificationReason[];
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=verify-response-enterprise.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-response-enterprise.d.ts","sourceRoot":"","sources":["../../src/interfaces/verify-response-enterprise.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,6CAA6C,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,MAAM,WAAW,wBAAwB;IACvC,eAAe,CAAC,EAAE,uCAAuC,CAAC;IAC1D,YAAY,CAAC,EAAE,oCAAoC,CAAC;IACpD,KAAK,EAAE,kCAAkC,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kCACf,SAAQ,0BAA0B;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,uCAAuC;IACtD,KAAK,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,+BAA+B,CAAC;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oCAAoC;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,oBAAoB,EAAE,CAAC;CACjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-response-enterprise.js","sourceRoot":"","sources":["../../src/interfaces/verify-response-enterprise.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ErrorCode } from '../enums/error-code';
|
|
2
|
+
export interface VerifyResponseV2 {
|
|
3
|
+
success: boolean;
|
|
4
|
+
challenge_ts: string;
|
|
5
|
+
hostname: string;
|
|
6
|
+
errors: ErrorCode[];
|
|
7
|
+
}
|
|
8
|
+
export interface VerifyResponseV3 extends VerifyResponseV2 {
|
|
9
|
+
score: number;
|
|
10
|
+
action: string;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=verify-response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-response.d.ts","sourceRoot":"","sources":["../../src/interfaces/verify-response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify-response.js","sourceRoot":"","sources":["../../src/interfaces/verify-response.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { GoogleRecaptchaModuleOptions } from '../interfaces/google-recaptcha-module-options';
|
|
2
|
+
import { GoogleRecaptchaEnterpriseOptions } from '../interfaces/google-recaptcha-enterprise-options';
|
|
3
|
+
import { ScoreValidator, SkipIfValue } from '../types';
|
|
4
|
+
export declare class RecaptchaConfigRef {
|
|
5
|
+
private readonly value;
|
|
6
|
+
get valueOf(): GoogleRecaptchaModuleOptions;
|
|
7
|
+
constructor(value: GoogleRecaptchaModuleOptions);
|
|
8
|
+
setSecretKey(secretKey: string): this;
|
|
9
|
+
setEnterpriseOptions(options: GoogleRecaptchaEnterpriseOptions): this;
|
|
10
|
+
setScore(score: ScoreValidator): this;
|
|
11
|
+
setSkipIf(skipIf: SkipIfValue): this;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=recaptcha-config-ref.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recaptcha-config-ref.d.ts","sourceRoot":"","sources":["../../src/models/recaptcha-config-ref.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAC;AAC7F,OAAO,EAAE,gCAAgC,EAAE,MAAM,mDAAmD,CAAC;AACrG,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvD,qBAAa,kBAAkB;IAKjB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAJlC,IAAI,OAAO,IAAI,4BAA4B,CAE1C;gBAE4B,KAAK,EAAE,4BAA4B;IAEhE,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAOrC,oBAAoB,CAAC,OAAO,EAAE,gCAAgC,GAAG,IAAI;IAOrE,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAMrC,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;CAKrC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecaptchaConfigRef = void 0;
|
|
4
|
+
class RecaptchaConfigRef {
|
|
5
|
+
get valueOf() {
|
|
6
|
+
return this.value;
|
|
7
|
+
}
|
|
8
|
+
constructor(value) {
|
|
9
|
+
this.value = value;
|
|
10
|
+
}
|
|
11
|
+
setSecretKey(secretKey) {
|
|
12
|
+
this.value.secretKey = secretKey;
|
|
13
|
+
this.value.enterprise = undefined;
|
|
14
|
+
return this;
|
|
15
|
+
}
|
|
16
|
+
setEnterpriseOptions(options) {
|
|
17
|
+
this.value.secretKey = undefined;
|
|
18
|
+
this.value.enterprise = options;
|
|
19
|
+
return this;
|
|
20
|
+
}
|
|
21
|
+
setScore(score) {
|
|
22
|
+
this.value.score = score;
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
setSkipIf(skipIf) {
|
|
26
|
+
this.value.skipIf = skipIf;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.RecaptchaConfigRef = RecaptchaConfigRef;
|
|
31
|
+
//# sourceMappingURL=recaptcha-config-ref.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recaptcha-config-ref.js","sourceRoot":"","sources":["../../src/models/recaptcha-config-ref.ts"],"names":[],"mappings":";;;AAIA,MAAa,kBAAkB;IAC7B,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,YAA6B,KAAmC;QAAnC,UAAK,GAAL,KAAK,CAA8B;IAAG,CAAC;IAEpE,YAAY,CAAC,SAAiB;QAC5B,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;QAElC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oBAAoB,CAAC,OAAyC;QAC5D,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC;QAEhC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,KAAqB;QAC5B,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;QAEzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,MAAmB;QAC3B,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAE3B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAhCD,gDAgCC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ErrorCode } from '../enums/error-code';
|
|
2
|
+
import { VerifyResponseEnterpriseRiskAnalysis } from '../interfaces/verify-response-enterprise';
|
|
3
|
+
import { LiteralObject } from '../interfaces/literal-object';
|
|
4
|
+
export interface RecaptchaVerificationResultOptions<Res> {
|
|
5
|
+
success: boolean;
|
|
6
|
+
nativeResponse: Res;
|
|
7
|
+
hostname: string;
|
|
8
|
+
action?: string;
|
|
9
|
+
score?: number;
|
|
10
|
+
remoteIp?: string;
|
|
11
|
+
errors: ErrorCode[];
|
|
12
|
+
}
|
|
13
|
+
export declare class RecaptchaVerificationResult<Res = LiteralObject> {
|
|
14
|
+
private readonly options;
|
|
15
|
+
readonly success: boolean;
|
|
16
|
+
readonly hostname: string;
|
|
17
|
+
readonly remoteIp: string | undefined;
|
|
18
|
+
readonly action: string | undefined;
|
|
19
|
+
readonly score: number | undefined;
|
|
20
|
+
readonly nativeResponse: Res;
|
|
21
|
+
readonly errors: ErrorCode[];
|
|
22
|
+
constructor(options: RecaptchaVerificationResultOptions<Res>);
|
|
23
|
+
toObject(): LiteralObject;
|
|
24
|
+
getResponse(): Res;
|
|
25
|
+
getEnterpriseRiskAnalytics(): VerifyResponseEnterpriseRiskAnalysis | null;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=recaptcha-verification-result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recaptcha-verification-result.d.ts","sourceRoot":"","sources":["../../src/models/recaptcha-verification-result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,oCAAoC,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,WAAW,kCAAkC,CAAC,GAAG;IACrD,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,GAAG,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED,qBAAa,2BAA2B,CAAC,GAAG,GAAG,aAAa;IAgBxD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAf1B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAEtC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAEpC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC,QAAQ,CAAC,cAAc,EAAE,GAAG,CAAC;IAE7B,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;gBAGV,OAAO,EAAE,kCAAkC,CAAC,GAAG,CAAC;IAWnE,QAAQ,IAAI,aAAa;IAYzB,WAAW,IAAI,GAAG;IAIlB,0BAA0B,IAAI,oCAAoC,GAAG,IAAI;CAK1E"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RecaptchaVerificationResult = void 0;
|
|
4
|
+
class RecaptchaVerificationResult {
|
|
5
|
+
constructor(options) {
|
|
6
|
+
this.options = options;
|
|
7
|
+
this.success = options.success;
|
|
8
|
+
this.hostname = options.hostname;
|
|
9
|
+
this.action = options.action;
|
|
10
|
+
this.remoteIp = options.remoteIp;
|
|
11
|
+
this.score = options.score;
|
|
12
|
+
this.errors = options.errors;
|
|
13
|
+
this.nativeResponse = options.nativeResponse;
|
|
14
|
+
}
|
|
15
|
+
toObject() {
|
|
16
|
+
return {
|
|
17
|
+
success: this.success,
|
|
18
|
+
hostname: this.hostname,
|
|
19
|
+
action: this.action,
|
|
20
|
+
score: this.score,
|
|
21
|
+
remoteIp: this.remoteIp,
|
|
22
|
+
errors: this.errors,
|
|
23
|
+
nativeResponse: this.nativeResponse,
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
getResponse() {
|
|
27
|
+
return this.nativeResponse;
|
|
28
|
+
}
|
|
29
|
+
getEnterpriseRiskAnalytics() {
|
|
30
|
+
const res = this.getResponse();
|
|
31
|
+
return res['riskAnalysis'] || null;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.RecaptchaVerificationResult = RecaptchaVerificationResult;
|
|
35
|
+
//# sourceMappingURL=recaptcha-verification-result.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recaptcha-verification-result.js","sourceRoot":"","sources":["../../src/models/recaptcha-verification-result.ts"],"names":[],"mappings":";;;AAcA,MAAa,2BAA2B;IAetC,YACmB,OAAgD;QAAhD,YAAO,GAAP,OAAO,CAAyC;QAEjE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAC/C,CAAC;IAED,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC;IACJ,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,0BAA0B;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAE/B,OAAO,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;IACrC,CAAC;CACF;AAhDD,kEAgDC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const RECAPTCHA_OPTIONS: unique symbol;
|
|
2
|
+
export declare const RECAPTCHA_VALIDATION_OPTIONS: unique symbol;
|
|
3
|
+
export declare const RECAPTCHA_AXIOS_INSTANCE = "RECAPTCHA_AXIOS_INSTANCE";
|
|
4
|
+
export declare const RECAPTCHA_LOGGER = "RECAPTCHA_LOGGER";
|
|
5
|
+
//# sourceMappingURL=provider.declarations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.declarations.d.ts","sourceRoot":"","sources":["../src/provider.declarations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,eAA8B,CAAC;AAE7D,eAAO,MAAM,4BAA4B,eAExC,CAAC;AAEF,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AAEnE,eAAO,MAAM,gBAAgB,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RECAPTCHA_LOGGER = exports.RECAPTCHA_AXIOS_INSTANCE = exports.RECAPTCHA_VALIDATION_OPTIONS = exports.RECAPTCHA_OPTIONS = void 0;
|
|
4
|
+
exports.RECAPTCHA_OPTIONS = Symbol('RECAPTCHA_OPTIONS');
|
|
5
|
+
exports.RECAPTCHA_VALIDATION_OPTIONS = Symbol('RECAPTCHA_VALIDATION_OPTIONS');
|
|
6
|
+
exports.RECAPTCHA_AXIOS_INSTANCE = 'RECAPTCHA_AXIOS_INSTANCE';
|
|
7
|
+
exports.RECAPTCHA_LOGGER = 'RECAPTCHA_LOGGER';
|
|
8
|
+
//# sourceMappingURL=provider.declarations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.declarations.js","sourceRoot":"","sources":["../src/provider.declarations.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;AAEhD,QAAA,4BAA4B,GAAG,MAAM,CAChD,8BAA8B,CAC/B,CAAC;AAEW,QAAA,wBAAwB,GAAG,0BAA0B,CAAC;AAEtD,QAAA,gBAAgB,GAAG,kBAAkB,CAAC"}
|