@netacea/cloudflare 5.1.22 → 5.1.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 5.1.23 (2023-05-25)
7
+
8
+ **Note:** Version bump only for package @netacea/cloudflare
9
+
10
+
11
+
12
+
13
+
6
14
  ## 5.1.22 (2023-05-16)
7
15
 
8
16
  **Note:** Version bump only for package @netacea/cloudflare
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netacea/cloudflare",
3
- "version": "5.1.22",
3
+ "version": "5.1.23",
4
4
  "description": "Netacea Cloudflare CDN Integration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -16,8 +16,8 @@
16
16
  },
17
17
  "license": "ISC",
18
18
  "dependencies": {
19
- "@netacea/kinesisingest": "^1.4.21",
20
- "@netacea/netaceaintegrationbase": "^1.16.20",
19
+ "@netacea/kinesisingest": "^1.4.22",
20
+ "@netacea/netaceaintegrationbase": "^1.16.21",
21
21
  "jose": "^4.11.2"
22
22
  },
23
23
  "devDependencies": {
@@ -34,5 +34,5 @@
34
34
  "tsconfig-paths": "^3.9.0",
35
35
  "typescript": "^3.9.7"
36
36
  },
37
- "gitHead": "9ddcdbfeee58bdae09fb5034378eb76e8eb53e72"
37
+ "gitHead": "550a70aa58da1b0fdb4df3087d80c8591c6d42d5"
38
38
  }
@@ -3,6 +3,7 @@ import NetaceaKinesis from '@netacea/kinesisingest';
3
3
  export declare type CloudflareConstructorArgs = NetaceaBaseArgs & {
4
4
  cookieEncryptionKey?: string;
5
5
  enableDynamicCaptchaContentType?: boolean | string;
6
+ netaceaCaptchaPath?: string;
6
7
  };
7
8
  declare type CloudflareMitigateResponse = MitigateResponse<Response>;
8
9
  declare type RequestArgs = Request;
@@ -24,6 +25,7 @@ export default class Cloudflare {
24
25
  protected readonly netaceaCaptchaCookieName: string;
25
26
  private readonly cookieEncryptionKey;
26
27
  private readonly enableDynamicCaptchaContentType;
28
+ private readonly netaceaCaptchaPath;
27
29
  constructor(args: CloudflareConstructorArgs);
28
30
  /**
29
31
  *
@@ -36,6 +38,7 @@ export default class Cloudflare {
36
38
  inject(request: Request): Promise<InjectResponse>;
37
39
  protected mitigate(request: Request): Promise<CloudflareMitigateResponse>;
38
40
  ingest(request: Request, response: Response): Promise<void>;
41
+ protected handleGetCaptchaRequest(netaceaCookie: string | undefined, clientIP: string, userAgent: string, captchaPageContentType: string, trackingId: string | null, url: string, captchaCookie?: string): Promise<ComposeResultResponse>;
39
42
  protected makeRequest({ host, method, path, headers, body }: MakeRequestArgs): Promise<MakeRequestResponse>;
40
43
  private addHeadersToResponse;
41
44
  private addHeadersToRequest;
@@ -65,11 +68,12 @@ export default class Cloudflare {
65
68
  private constructV2WebLog;
66
69
  private constructV1WebLog;
67
70
  protected constructWebLog(args: IngestArgs): WebLog | V2WebLog;
68
- protected check(netaceaCookie: string | undefined, clientIP: string, userAgent: string, captchaPageContentType: string, captchaCookie?: string): Promise<ComposeResultResponse>;
71
+ protected check(netaceaCookie: string | undefined, clientIP: string, userAgent: string, captchaPageContentType: string, url: string, captchaCookie?: string): Promise<ComposeResultResponse>;
69
72
  protected createMitata(clientIP: string, userId: string | undefined, match: number, mitigate: number, captcha: number, maxAge?: number, expiry?: number | undefined): Promise<string>;
70
73
  private processCaptcha;
71
74
  private getMitataCaptchaFromHeaders;
72
75
  private makeCaptchaAPICall;
76
+ private checkResponseIfCaptchaJson;
73
77
  private getApiCallResponseFromResponse;
74
78
  private buildCookieFromValues;
75
79
  private buildCookieHeader;
@@ -5,7 +5,7 @@ const netaceaintegrationbase_1 = require("@netacea/netaceaintegrationbase");
5
5
  const kinesisingest_1 = require("@netacea/kinesisingest");
6
6
  const pack = require("../package.json");
7
7
  const cookieEncryption_1 = require("./cookieEncryption");
8
- const checkCaptchaContentType_1 = require("./checkCaptchaContentType");
8
+ const captchaHelpers_1 = require("./captchaHelpers");
9
9
  const ONE_HOUR_IN_SECONDS = 60 * 60;
10
10
  const ONE_DAY_IN_SECONDS = ONE_HOUR_IN_SECONDS * 24;
11
11
  function configureMitataExpiry(mitigationType, expirySeconds) {
@@ -18,7 +18,7 @@ class Cloudflare {
18
18
  // eslint-disable-next-line complexity, max-lines-per-function
19
19
  constructor(args) {
20
20
  this.encryptedCookies = [];
21
- const { apiKey, secretKey, timeout = 3000, mitigationServiceUrl = 'https://mitigations.netacea.net', ingestServiceUrl = 'https://ingest.netacea.net', mitigationType = netaceaintegrationbase_1.NetaceaMitigationType.INGEST, captchaSiteKey, captchaSecretKey, ingestType = netaceaintegrationbase_1.NetaceaIngestType.HTTP, kinesis, logVersion, mitataCookieExpirySeconds, netaceaCookieExpirySeconds, netaceaCookieName, netaceaCaptchaCookieName, enableDynamicCaptchaContentType = false } = args;
21
+ const { apiKey, secretKey, timeout = 3000, mitigationServiceUrl = 'https://mitigations.netacea.net', ingestServiceUrl = 'https://ingest.netacea.net', mitigationType = netaceaintegrationbase_1.NetaceaMitigationType.INGEST, captchaSiteKey, captchaSecretKey, ingestType = netaceaintegrationbase_1.NetaceaIngestType.HTTP, kinesis, logVersion, mitataCookieExpirySeconds, netaceaCookieExpirySeconds, netaceaCookieName, netaceaCaptchaCookieName, enableDynamicCaptchaContentType = false, netaceaCaptchaPath = '' } = args;
22
22
  if (apiKey === null || apiKey === undefined) {
23
23
  throw new Error('apiKey is a required parameter');
24
24
  }
@@ -57,6 +57,7 @@ class Cloudflare {
57
57
  this.enableDynamicCaptchaContentType = typeof enableDynamicCaptchaContentType === 'boolean'
58
58
  ? enableDynamicCaptchaContentType
59
59
  : enableDynamicCaptchaContentType === 'true';
60
+ this.netaceaCaptchaPath = netaceaCaptchaPath;
60
61
  }
61
62
  /**
62
63
  *
@@ -82,8 +83,11 @@ class Cloudflare {
82
83
  const result = await this.getMitigationResponse(request);
83
84
  if (result.mitigated) {
84
85
  const responseHeaders = new Headers();
85
- for (const cookie of result.setCookie) {
86
- responseHeaders.append('set-cookie', cookie);
86
+ const isCaptchaGet = await captchaHelpers_1.isUrlCaptchaGet(request.url, request.method, this.netaceaCaptchaPath);
87
+ if (!isCaptchaGet) {
88
+ for (const cookie of result.setCookie) {
89
+ responseHeaders.append('set-cookie', cookie);
90
+ }
87
91
  }
88
92
  let body = 'Forbidden';
89
93
  if (result.mitigation === 'captcha') {
@@ -136,6 +140,23 @@ class Cloudflare {
136
140
  integrationVersion: pack.version
137
141
  });
138
142
  }
143
+ async handleGetCaptchaRequest(netaceaCookie, clientIP, userAgent, captchaPageContentType, trackingId, url, captchaCookie) {
144
+ var _a;
145
+ if (this.secretKey === undefined) {
146
+ throw new Error('Secret key is required to mitigate');
147
+ }
148
+ const cookieInfo = netaceaintegrationbase_1.checkMitataCookie(netaceaCookie, clientIP, this.secretKey);
149
+ const apiResponse = await this.makeMitigateAPICall((_a = cookieInfo.mitata) === null || _a === void 0 ? void 0 : _a.userId, clientIP, userAgent, captchaCookie, captchaPageContentType, true, trackingId, url);
150
+ const result = {
151
+ body: apiResponse.body,
152
+ apiCallStatus: apiResponse.status,
153
+ setCookie: [],
154
+ sessionStatus: '',
155
+ mitigation: 'captcha',
156
+ mitigated: true
157
+ };
158
+ return result;
159
+ }
139
160
  async makeRequest({ host, method, path, headers, body }) {
140
161
  const url = `${host}${path}`;
141
162
  const request = new Request(url, {
@@ -217,7 +238,7 @@ class Cloudflare {
217
238
  const clientIp = (_b = request.headers.get('cf-connecting-ip')) !== null && _b !== void 0 ? _b : '';
218
239
  const userAgent = (_c = request.headers.get('user-agent')) !== null && _c !== void 0 ? _c : '';
219
240
  const accept = (_d = request.headers.get('Accept')) !== null && _d !== void 0 ? _d : '';
220
- const captchaPageContentType = await checkCaptchaContentType_1.getCaptchaPageContentType(accept);
241
+ const captchaPageContentType = await captchaHelpers_1.getCaptchaPageContentType(accept);
221
242
  return await this.processMitigateRequest({
222
243
  clientIp,
223
244
  getBodyFn: async () => await Promise.resolve(request.body),
@@ -415,7 +436,7 @@ class Cloudflare {
415
436
  }
416
437
  return this.constructV1WebLog(args);
417
438
  }
418
- async check(netaceaCookie, clientIP, userAgent, captchaPageContentType, captchaCookie) {
439
+ async check(netaceaCookie, clientIP, userAgent, captchaPageContentType, url, captchaCookie) {
419
440
  var _a, _b;
420
441
  let status, match, mitigate, captcha, body, setCookie, eventId;
421
442
  if (this.secretKey === undefined) {
@@ -424,7 +445,7 @@ class Cloudflare {
424
445
  const cookieInfo = netaceaintegrationbase_1.checkMitataCookie(netaceaCookie, clientIP, this.secretKey);
425
446
  if (!cookieInfo.isPrimaryHashValid || cookieInfo.requiresReissue) {
426
447
  // Get latest mitigation information
427
- const result = await this.makeMitigateAPICall((_a = cookieInfo.mitata) === null || _a === void 0 ? void 0 : _a.userId, clientIP, userAgent, captchaCookie, captchaPageContentType);
448
+ const result = await this.makeMitigateAPICall((_a = cookieInfo.mitata) === null || _a === void 0 ? void 0 : _a.userId, clientIP, userAgent, captchaCookie, captchaPageContentType, false, null, url);
428
449
  status = result.status;
429
450
  match = result.match;
430
451
  mitigate = result.mitigate;
@@ -495,9 +516,19 @@ class Cloudflare {
495
516
  body: captchaData,
496
517
  timeout: this.timeout
497
518
  });
498
- return await this.getApiCallResponseFromResponse(res, mitata === null || mitata === void 0 ? void 0 : mitata.userId, clientIP);
519
+ return await this.getApiCallResponseFromResponse(res, mitata === null || mitata === void 0 ? void 0 : mitata.userId, clientIP, '');
520
+ }
521
+ checkResponseIfCaptchaJson(body) {
522
+ if (body === null || body === void 0 ? void 0 : body.includes('captchaSiteKey')) {
523
+ const parsedBody = JSON.parse(body);
524
+ return (parsedBody.captchaSiteKey !== undefined &&
525
+ parsedBody.trackingId !== undefined &&
526
+ parsedBody.captchaURL !== undefined);
527
+ }
528
+ return false;
499
529
  }
500
- async getApiCallResponseFromResponse(response, userId, clientIP) {
530
+ /* eslint max-lines-per-function: ["error", 60] */
531
+ async getApiCallResponseFromResponse(response, userId, clientIP, url) {
501
532
  if (response.status !== 200) {
502
533
  throw this.APIError(response);
503
534
  }
@@ -515,6 +546,9 @@ class Cloudflare {
515
546
  mitataCaptcha
516
547
  ].filter(c => c !== undefined);
517
548
  const eventId = response.headers[netaceaintegrationbase_1.dictionary.netaceaHeaders.eventId];
549
+ if (this.checkResponseIfCaptchaJson(response.body)) {
550
+ response.body = await captchaHelpers_1.modifyCaptchaJsonResponse(response.body, this.netaceaCaptchaPath, url);
551
+ }
518
552
  return {
519
553
  status: response.status,
520
554
  match,
@@ -545,7 +579,7 @@ class Cloudflare {
545
579
  }
546
580
  return cookiestr;
547
581
  }
548
- async makeMitigateAPICall(userId, clientIP, userAgent, captchaCookie, captchaPageContentType) {
582
+ async makeMitigateAPICall(userId, clientIP, userAgent, captchaCookie, captchaPageContentType, isCaptchaGet, trackingId, url) {
549
583
  const headers = {
550
584
  'X-Netacea-API-Key': this.apiKey,
551
585
  'X-Netacea-Client-IP': clientIP,
@@ -566,12 +600,12 @@ class Cloudflare {
566
600
  }
567
601
  const res = await this.makeRequest({
568
602
  host: this.mitigationServiceUrl,
569
- path: '/',
603
+ path: isCaptchaGet ? `/captcha${trackingId !== null ? `?trackingId=${trackingId}` : ''}` : '/',
570
604
  headers,
571
605
  method: 'GET',
572
606
  timeout: this.timeout
573
607
  });
574
- return await this.getApiCallResponseFromResponse(res, userId, clientIP);
608
+ return await this.getApiCallResponseFromResponse(res, userId, clientIP, url);
575
609
  }
576
610
  composeResult(body, setCookie, status, match, mitigate, captcha, isCaptchaPost, eventId) {
577
611
  const bestMitigation = this.findBestMitigation(match, mitigate, captcha, isCaptchaPost);
@@ -659,10 +693,16 @@ class Cloudflare {
659
693
  return url.includes('/AtaVerifyCaptcha') && method.toLowerCase() === 'post';
660
694
  }
661
695
  async processMitigateRequest(args) {
696
+ const isCaptchaGet = await captchaHelpers_1.isUrlCaptchaGet(args.url, args.method, this.netaceaCaptchaPath);
697
+ if (isCaptchaGet) {
698
+ const trackingId = await captchaHelpers_1.getTrackingId(args.url);
699
+ return await this.handleGetCaptchaRequest(args.mitata, args.clientIp, args.userAgent, args.captchaPageContentType, trackingId, args.url, args.mitataCaptcha);
700
+ }
662
701
  const isCaptchaPost = this.isUrlCaptchaPost(args.url, args.method);
663
- return await (isCaptchaPost
664
- ? this.processCaptcha(args.mitata, args.clientIp, args.userAgent, await args.getBodyFn())
665
- : this.check(args.mitata, args.clientIp, args.userAgent, args.captchaPageContentType, args.mitataCaptcha));
702
+ if (isCaptchaPost) {
703
+ return await this.processCaptcha(args.mitata, args.clientIp, args.userAgent, await args.getBodyFn());
704
+ }
705
+ return await this.check(args.mitata, args.clientIp, args.userAgent, args.captchaPageContentType, args.url, args.mitataCaptcha);
666
706
  }
667
707
  async setIngestOnlyMitataCookie(userId) {
668
708
  const mitataCookie = await this.createMitata(netaceaintegrationbase_1.ingestIgnoredIpValue, userId, 0, 0, 0, ONE_DAY_IN_SECONDS);
@@ -1 +1 @@
1
- {"version":3,"file":"Cloudflare.js","sourceRoot":"","sources":["../../src/Cloudflare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Cloudflare.js","sourceRoot":"","sources":["../../src/Cloudflare.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function getCaptchaPageContentType(acceptHeader: string): Promise<string>;
2
+ export declare function modifyCaptchaJsonResponse(captchaJsonBody: string, captchaUrlPath: string, url: string): Promise<string>;
3
+ export declare function getTrackingId(url: string): Promise<string | null>;
4
+ export declare function isUrlCaptchaGet(url: string, method: string, netaceaCaptchaPath: string): Promise<boolean>;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isUrlCaptchaGet = exports.getTrackingId = exports.modifyCaptchaJsonResponse = exports.getCaptchaPageContentType = void 0;
4
+ async function getCaptchaPageContentType(acceptHeader) {
5
+ const acceptedContetType = acceptHeader.toLowerCase();
6
+ const acceptsHtml = acceptedContetType.includes('application/html') || acceptedContetType.includes('text/html');
7
+ const acceptsJson = acceptedContetType.includes('application/json');
8
+ return !acceptsHtml && acceptsJson ? 'application/json' : 'text/html';
9
+ }
10
+ exports.getCaptchaPageContentType = getCaptchaPageContentType;
11
+ async function modifyCaptchaJsonResponse(captchaJsonBody, captchaUrlPath, url) {
12
+ const trackingId = captchaJsonBody.length > 0 ? JSON.parse(captchaJsonBody).trackingId : undefined;
13
+ const { hostname } = new URL(url);
14
+ return (captchaUrlPath.length < 2 || trackingId === undefined)
15
+ ? ''
16
+ : JSON.stringify({
17
+ captchaRelativeURL: `${captchaUrlPath}?trackingId=${trackingId}`,
18
+ captchaAbsoluteURL: `https://${hostname}${captchaUrlPath}?trackingId=${trackingId}`
19
+ });
20
+ }
21
+ exports.modifyCaptchaJsonResponse = modifyCaptchaJsonResponse;
22
+ async function getTrackingId(url) {
23
+ try {
24
+ const { searchParams } = new URL(url);
25
+ return searchParams.get('trackingId');
26
+ }
27
+ catch (error) {
28
+ return null;
29
+ }
30
+ }
31
+ exports.getTrackingId = getTrackingId;
32
+ async function isUrlCaptchaGet(url, method, netaceaCaptchaPath) {
33
+ if (!Boolean(netaceaCaptchaPath)) {
34
+ return false;
35
+ }
36
+ if (!netaceaCaptchaPath.startsWith('/')) {
37
+ netaceaCaptchaPath = '/' + netaceaCaptchaPath;
38
+ }
39
+ const { pathname, search } = new URL(url);
40
+ return (pathname.includes(netaceaCaptchaPath) &&
41
+ search.includes('trackingId') &&
42
+ method.toLowerCase() === 'get');
43
+ }
44
+ exports.isUrlCaptchaGet = isUrlCaptchaGet;
45
+ //# sourceMappingURL=captchaHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"captchaHelpers.js","sourceRoot":"","sources":["../../src/captchaHelpers.ts"],"names":[],"mappings":";;;AAAO,KAAK,UAAU,yBAAyB,CAAE,YAAoB;IACnE,MAAM,kBAAkB,GAAG,YAAY,CAAC,WAAW,EAAE,CAAA;IACrD,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IAC/G,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IACnE,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAA;AACvE,CAAC;AALD,8DAKC;AAEM,KAAK,UAAU,yBAAyB,CAC7C,eAAuB,EACvB,cAAsB,EACtB,GAAW;IAEX,MAAM,UAAU,GAAuB,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAA;IACtH,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IAEjC,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,KAAK,SAAS,CAAC;QAC5D,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YACf,kBAAkB,EAAE,GAAG,cAAc,eAAe,UAAU,EAAE;YAChE,kBAAkB,EAAE,WAAW,QAAQ,GAAG,cAAc,eAAe,UAAU,EAAE;SACpF,CAAC,CAAA;AACN,CAAC;AAdD,8DAcC;AAEM,KAAK,UAAU,aAAa,CAAE,GAAW;IAC9C,IAAI;QACF,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QACrC,OAAO,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;KACtC;IAAC,OAAO,KAAK,EAAE;QACd,OAAO,IAAI,CAAA;KACZ;AACH,CAAC;AAPD,sCAOC;AAEM,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,MAAc,EACd,kBAA0B;IAE1B,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;QAChC,OAAO,KAAK,CAAA;KACb;IAED,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QACvC,kBAAkB,GAAG,GAAG,GAAG,kBAAkB,CAAA;KAC9C;IAED,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IAEzC,OAAO,CACL,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACrC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;QAC7B,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAC/B,CAAA;AACH,CAAC;AApBD,0CAoBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netacea/cloudflare",
3
- "version": "5.1.22",
3
+ "version": "5.1.23",
4
4
  "description": "Netacea Cloudflare CDN Integration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -16,8 +16,8 @@
16
16
  },
17
17
  "license": "ISC",
18
18
  "dependencies": {
19
- "@netacea/kinesisingest": "^1.4.21",
20
- "@netacea/netaceaintegrationbase": "^1.16.20",
19
+ "@netacea/kinesisingest": "^1.4.22",
20
+ "@netacea/netaceaintegrationbase": "^1.16.21",
21
21
  "jose": "^4.11.2"
22
22
  },
23
23
  "devDependencies": {
@@ -34,5 +34,5 @@
34
34
  "tsconfig-paths": "^3.9.0",
35
35
  "typescript": "^3.9.7"
36
36
  },
37
- "gitHead": "9ddcdbfeee58bdae09fb5034378eb76e8eb53e72"
37
+ "gitHead": "550a70aa58da1b0fdb4df3087d80c8591c6d42d5"
38
38
  }
@@ -1 +0,0 @@
1
- export declare function getCaptchaPageContentType(acceptHeader: string): Promise<string>;
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getCaptchaPageContentType = void 0;
4
- async function getCaptchaPageContentType(acceptHeader) {
5
- const acceptedContetType = acceptHeader.toLowerCase();
6
- const acceptsHtml = acceptedContetType.includes('application/html') || acceptedContetType.includes('text/html');
7
- const acceptsJson = acceptedContetType.includes('application/json');
8
- return !acceptsHtml && acceptsJson ? 'application/json' : 'text/html';
9
- }
10
- exports.getCaptchaPageContentType = getCaptchaPageContentType;
11
- //# sourceMappingURL=checkCaptchaContentType.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkCaptchaContentType.js","sourceRoot":"","sources":["../../src/checkCaptchaContentType.ts"],"names":[],"mappings":";;;AAAO,KAAK,UAAU,yBAAyB,CAAE,YAAoB;IACnE,MAAM,kBAAkB,GAAG,YAAY,CAAC,WAAW,EAAE,CAAA;IACrD,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IAC/G,MAAM,WAAW,GAAG,kBAAkB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IACnE,OAAO,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,CAAA;AACvE,CAAC;AALD,8DAKC"}