@netacea/cloudfront 5.2.46 → 5.2.47

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.2.47 (2024-05-24)
7
+
8
+ **Note:** Version bump only for package @netacea/cloudfront
9
+
10
+
11
+
12
+
13
+
6
14
  ## 5.2.46 (2024-05-24)
7
15
 
8
16
  **Note:** Version bump only for package @netacea/cloudfront
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netacea/cloudfront",
3
- "version": "5.2.46",
3
+ "version": "5.2.47",
4
4
  "description": "Netacea Cloudfront CDN integration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -24,7 +24,7 @@
24
24
  "license": "ISC",
25
25
  "devDependencies": {
26
26
  "@netacea/bundler": "^1.0.0",
27
- "@netacea/kinesisingest": "^1.5.46",
27
+ "@netacea/kinesisingest": "^1.5.47",
28
28
  "@types/chai": "^4.3.5",
29
29
  "@types/mocha": "^10.0.1",
30
30
  "@types/node": "^14.11.2",
@@ -42,9 +42,9 @@
42
42
  "typescript": "^5.4.5"
43
43
  },
44
44
  "dependencies": {
45
- "@netacea/netaceaintegrationbase": "^2.0.28",
45
+ "@netacea/netaceaintegrationbase": "^2.0.29",
46
46
  "axios": "^0.21.0",
47
47
  "jose": "^4.11.2"
48
48
  },
49
- "gitHead": "9b917cee8b330d70482637ceb7459f23255347c9"
49
+ "gitHead": "729446935964643bd7f7e4d8c3016ec561ce39dd"
50
50
  }
@@ -1,6 +1,11 @@
1
- import { type MakeRequestArgs, type MakeRequestResponse, type MitigateResponse, type InjectResponse, type ComposeResultResponse, NetaceaMitigationType, type NetaceaMitigationResponse, NetaceaIngestType, NetaceaLogVersion, type ProcessMitigateRequestArgs, type APICallResponse, type IngestArgs, type WebLog, type V2WebLog, type NetaceaResponseBase, type FindBestMitigationResponse } from '@netacea/netaceaintegrationbase';
1
+ import { type MakeRequestArgs, type MitigateResponse, type InjectResponse, type ComposeResultResponse, NetaceaMitigationType, type NetaceaMitigationResponse, NetaceaIngestType, NetaceaLogVersion, type ProcessMitigateRequestArgs, type APICallResponse, type IngestArgs, type WebLog, type V2WebLog, type NetaceaResponseBase, type FindBestMitigationResponse } from '@netacea/netaceaintegrationbase';
2
2
  import NetaceaKinesis from '@netacea/kinesisingest';
3
3
  import type { RequestArgs, CloudfrontConstructorArgs, CloudfrontEvent, CloudfrontResponse } from './types';
4
+ interface MakeRequestResponse {
5
+ status: number;
6
+ headers: Record<string, string | string[]>;
7
+ body?: any;
8
+ }
4
9
  export default class Cloudfront {
5
10
  static NetaceaCookieHeader: string;
6
11
  static NetaceaTrueUserAgentHeader: string;
@@ -69,7 +74,7 @@ export default class Cloudfront {
69
74
  private getApiCallResponseFromResponse;
70
75
  protected APIError(response: APICallResponse): Error;
71
76
  protected createMitata(clientIP: string, userId: string | undefined, match: number, mitigate: number, captcha: number, maxAge?: number, expiry?: number | undefined): Promise<string>;
72
- protected createMitataCaptcha(headers: Record<string, string>): Promise<string | undefined>;
77
+ protected createMitataCaptcha(headers: Record<string, string | string[]>): Promise<string | undefined>;
73
78
  private buildCookieFromValues;
74
79
  protected callIngest(args: IngestArgs): Promise<void>;
75
80
  protected constructWebLog(args: IngestArgs): WebLog | V2WebLog;
@@ -85,3 +90,4 @@ export default class Cloudfront {
85
90
  private buildCookieHeader;
86
91
  private composeResult;
87
92
  }
93
+ export {};
@@ -9,6 +9,9 @@ const cookieEncryption_1 = require("./cookieEncryption");
9
9
  const captchaGet_1 = require("./captchaGet");
10
10
  const dynamicContentType_1 = require("./dynamicContentType");
11
11
  const retrieveClientIp_1 = require("./retrieveClientIp");
12
+ const headers_1 = require("./headers");
13
+ const { extractCookieAttr, extractAndRemoveCookieAttr, removeDuplicateAttrs } = netaceaintegrationbase_1.lib.cookie.attributes;
14
+ const parseSetCookie = netaceaintegrationbase_1.lib.cookie.parse.parseSetCookie;
12
15
  const { configureCookiesDomain } = netaceaintegrationbase_1.lib.cookie.attributes;
13
16
  const { matchMap, mitigationTypes, mitigateMap, bestMitigationMap, bestMitigationCaptchaMap, captchaMap, netaceaHeaders } = netaceaintegrationbase_1.dictionary;
14
17
  const ONE_HOUR_IN_SECONDS = 60 * 60;
@@ -16,7 +19,7 @@ const ONE_DAY_IN_SECONDS = ONE_HOUR_IN_SECONDS * 24;
16
19
  class Cloudfront {
17
20
  // eslint-disable-next-line complexity, max-lines-per-function
18
21
  constructor(options) {
19
- var _a, _b, _c, _d, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
22
+ var _a, _b, _c, _d, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
20
23
  this.ingestEnabled = true;
21
24
  this.encryptedCookies = [];
22
25
  // Only kinesis ingest is currently supported.
@@ -65,16 +68,17 @@ class Cloudfront {
65
68
  this.netaceaCaptchaCookieName = (_j = options.netaceaCaptchaCookieName) !== null && _j !== void 0 ? _j : '_mitatacaptcha';
66
69
  this.netaceaCaptchaPath = options.netaceaCaptchaPath;
67
70
  this.dynamicCaptchaContentType = (_k = options.dynamicCaptchaContentType) !== null && _k !== void 0 ? _k : false;
68
- this.netaceaCookieAttributes = (_l = options.netaceaCookieAttributes) !== null && _l !== void 0 ? _l : '';
69
- this.netaceaCaptchaCookieAttributes = (_m = options.netaceaCaptchaCookieAttributes) !== null && _m !== void 0 ? _m : '';
71
+ const configuredCookieAttributes = configureCookiesDomain((_l = options.netaceaCookieAttributes) !== null && _l !== void 0 ? _l : '', (_m = options.netaceaCaptchaCookieAttributes) !== null && _m !== void 0 ? _m : '');
72
+ this.netaceaCookieAttributes = (_o = configuredCookieAttributes.cookieAttributes) !== null && _o !== void 0 ? _o : '';
73
+ this.netaceaCaptchaCookieAttributes = (_p = configuredCookieAttributes.captchaCookieAttributes) !== null && _p !== void 0 ? _p : '';
70
74
  this.captchaHeader = options.captchaHeader;
71
- this.ipHeaderName = (_p = (_o = options.ipHeaderName) === null || _o === void 0 ? void 0 : _o.toLowerCase()) === null || _p === void 0 ? void 0 : _p.trim();
75
+ this.ipHeaderName = (_r = (_q = options.ipHeaderName) === null || _q === void 0 ? void 0 : _q.toLowerCase()) === null || _r === void 0 ? void 0 : _r.trim();
72
76
  this.encryptedCookies = [
73
77
  this.netaceaCookieName,
74
78
  this.netaceaCaptchaCookieName
75
79
  ];
76
- this.mitataCookieExpirySeconds = (0, netaceaintegrationbase_1.configureMitataExpiry)(this.mitigationType, (_q = options.netaceaCookieExpirySeconds) !== null && _q !== void 0 ? _q : options.mitataCookieExpirySeconds);
77
- this.ingestEnabled = (_r = options.ingestEnabled) !== null && _r !== void 0 ? _r : true;
80
+ this.mitataCookieExpirySeconds = (0, netaceaintegrationbase_1.configureMitataExpiry)(this.mitigationType, (_s = options.netaceaCookieExpirySeconds) !== null && _s !== void 0 ? _s : options.mitataCookieExpirySeconds);
81
+ this.ingestEnabled = (_t = options.ingestEnabled) !== null && _t !== void 0 ? _t : true;
78
82
  this.cookieEncryptionKey = options.cookieEncryptionKey;
79
83
  }
80
84
  async run(cloudfrontEvent) {
@@ -545,23 +549,23 @@ class Cloudfront {
545
549
  return await this.getApiCallResponseFromResponse(res, mitata === null || mitata === void 0 ? void 0 : mitata.userId, clientIP);
546
550
  }
547
551
  async getApiCallResponseFromResponse(response, userId, clientIP, defaultMitataCodes) {
548
- var _a, _b, _c;
552
+ var _a, _b, _c, _d, _f, _g, _h;
549
553
  if (response.status !== 200) {
550
554
  throw this.APIError(response);
551
555
  }
552
- let match = parseInt(response.headers[netaceaHeaders.match]);
553
- let mitigate = parseInt(response.headers[netaceaHeaders.mitigate]);
554
- let captcha = parseInt(response.headers[netaceaHeaders.captcha]);
556
+ let match = (_a = (0, headers_1.getHeaderAsInt)(response.headers, netaceaHeaders.match)) !== null && _a !== void 0 ? _a : NaN;
557
+ let mitigate = (_b = (0, headers_1.getHeaderAsInt)(response.headers, netaceaHeaders.mitigate)) !== null && _b !== void 0 ? _b : NaN;
558
+ let captcha = (_c = (0, headers_1.getHeaderAsInt)(response.headers, netaceaHeaders.captcha)) !== null && _c !== void 0 ? _c : NaN;
555
559
  if (isNaN(match)) {
556
- match = (_a = defaultMitataCodes === null || defaultMitataCodes === void 0 ? void 0 : defaultMitataCodes.match) !== null && _a !== void 0 ? _a : 0;
560
+ match = (_d = defaultMitataCodes === null || defaultMitataCodes === void 0 ? void 0 : defaultMitataCodes.match) !== null && _d !== void 0 ? _d : 0;
557
561
  }
558
562
  if (isNaN(mitigate)) {
559
- mitigate = (_b = defaultMitataCodes === null || defaultMitataCodes === void 0 ? void 0 : defaultMitataCodes.mitigate) !== null && _b !== void 0 ? _b : 0;
563
+ mitigate = (_f = defaultMitataCodes === null || defaultMitataCodes === void 0 ? void 0 : defaultMitataCodes.mitigate) !== null && _f !== void 0 ? _f : 0;
560
564
  }
561
565
  if (isNaN(captcha)) {
562
- captcha = (_c = defaultMitataCodes === null || defaultMitataCodes === void 0 ? void 0 : defaultMitataCodes.captcha) !== null && _c !== void 0 ? _c : 0;
566
+ captcha = (_g = defaultMitataCodes === null || defaultMitataCodes === void 0 ? void 0 : defaultMitataCodes.captcha) !== null && _g !== void 0 ? _g : 0;
563
567
  }
564
- let mitataMaxAge = parseInt(response.headers[netaceaHeaders.mitataExpiry]);
568
+ let mitataMaxAge = (_h = (0, headers_1.getHeaderAsInt)(response.headers, netaceaHeaders.mitataExpiry)) !== null && _h !== void 0 ? _h : NaN;
565
569
  if (isNaN(mitataMaxAge)) {
566
570
  mitataMaxAge = 86400;
567
571
  }
@@ -571,7 +575,7 @@ class Cloudfront {
571
575
  mitata,
572
576
  mitataCaptcha
573
577
  ].filter(c => c !== undefined);
574
- const eventId = response.headers[netaceaHeaders.eventId];
578
+ const eventId = (0, headers_1.getHeader)(response.headers, netaceaHeaders.eventId);
575
579
  return {
576
580
  status: response.status,
577
581
  match,
@@ -605,7 +609,6 @@ class Cloudfront {
605
609
  return new Error(`Error reaching Netacea API (${message}), status: ${response.status}`);
606
610
  }
607
611
  async createMitata(clientIP, userId, match, mitigate, captcha, maxAge = 86400, expiry = undefined) {
608
- var _a;
609
612
  // serve, fail, cookiefail
610
613
  const isCaptchaServe = [1, 3, 5].includes(captcha);
611
614
  const isHardBlocked = mitigate === 3;
@@ -622,9 +625,7 @@ class Cloudfront {
622
625
  let path;
623
626
  let finalCookieAttr;
624
627
  if (this.netaceaCookieAttributes !== '') {
625
- const { configureCookiesDomain, extractAndRemoveCookieAttr } = netaceaintegrationbase_1.lib.cookie.attributes;
626
- const normalizedAttr = configureCookiesDomain(this.netaceaCookieAttributes, this.netaceaCaptchaCookieAttributes);
627
- const { extractedAttribute: exctractedMaxAge, cookieAttributes: cookieAttrsWithoutMaxAge } = extractAndRemoveCookieAttr((_a = normalizedAttr.cookieAttributes) !== null && _a !== void 0 ? _a : '', 'Max-Age');
628
+ const { extractedAttribute: exctractedMaxAge, cookieAttributes: cookieAttrsWithoutMaxAge } = extractAndRemoveCookieAttr(this.netaceaCookieAttributes, 'Max-Age');
628
629
  maxAgeAttr = exctractedMaxAge !== undefined ? Number(exctractedMaxAge) : maxAge;
629
630
  const { extractedAttribute: extractedPath, cookieAttributes } = extractAndRemoveCookieAttr(cookieAttrsWithoutMaxAge, 'Path');
630
631
  path = extractedPath !== null && extractedPath !== void 0 ? extractedPath : '/';
@@ -633,37 +634,42 @@ class Cloudfront {
633
634
  return await this.buildCookieFromValues(this.netaceaCookieName, mitataValue, maxAgeAttr, finalCookieAttr, path);
634
635
  }
635
636
  async createMitataCaptcha(headers) {
636
- var _a;
637
- if (Object.prototype.hasOwnProperty.call(headers, 'set-cookie')) {
638
- const setCookie = headers['set-cookie'];
639
- let mitataCaptchaMaxAge = '86400';
640
- if (Array.isArray(setCookie)) {
641
- const mitataCaptcha = setCookie.find(cookie => cookie.startsWith('_mitatacaptcha'));
642
- if (mitataCaptcha !== undefined && mitataCaptcha !== '') {
643
- mitataCaptchaMaxAge = mitataCaptcha.split(';').filter(attr => attr.trim().startsWith('Max-Age'))[0].trim().split('=')[1];
644
- }
645
- }
646
- else {
647
- if (setCookie.startsWith('_mitatacaptcha')) {
648
- mitataCaptchaMaxAge = setCookie.split(';').filter(attr => attr.trim().startsWith('Max-Age'))[0].trim().split('=')[1];
649
- }
637
+ var _a, _b;
638
+ let setCookieHeaders = (_a = headers['set-cookie']) !== null && _a !== void 0 ? _a : [];
639
+ setCookieHeaders = typeof setCookieHeaders === 'string'
640
+ ? [setCookieHeaders]
641
+ : setCookieHeaders;
642
+ const mitataCaptcha = setCookieHeaders
643
+ .find(cookie => cookie.startsWith('_mitatacaptcha='));
644
+ let mitataCaptchaValue;
645
+ let mitataCaptchaMaxAge = '86400';
646
+ if (mitataCaptcha !== undefined && mitataCaptcha !== '') {
647
+ try {
648
+ const parsed = parseSetCookie(mitataCaptcha);
649
+ mitataCaptchaValue = parsed.value;
650
+ mitataCaptchaMaxAge = (_b = extractCookieAttr(parsed.attributes, 'Max-Age')) !== null && _b !== void 0 ? _b : '86400';
650
651
  }
651
- const mitataCaptchaValue = (_a = await this.readCookie('_mitatacaptcha', setCookie)) !== null && _a !== void 0 ? _a : '';
652
- const { captchaCookieAttributes } = configureCookiesDomain(this.netaceaCookieAttributes, this.netaceaCaptchaCookieAttributes);
653
- const { extractedAttribute: maxAge, cookieAttributes: capCookieAttrsWithoutMaxAge } = netaceaintegrationbase_1.lib.cookie.attributes.extractAndRemoveCookieAttr(captchaCookieAttributes !== null && captchaCookieAttributes !== void 0 ? captchaCookieAttributes : '', 'Max-Age');
654
- const mitataCaptchaExpiry = maxAge !== undefined && maxAge !== ''
655
- ? parseInt(maxAge)
656
- : parseInt(mitataCaptchaMaxAge);
657
- const { extractedAttribute: mitataCaptchaPath, cookieAttributes: finalCapCookieAttr } = netaceaintegrationbase_1.lib.cookie.attributes.extractAndRemoveCookieAttr(capCookieAttrsWithoutMaxAge, 'Path');
658
- const mitataCaptchaCookie = await this.buildCookieFromValues(this.netaceaCaptchaCookieName, mitataCaptchaValue, mitataCaptchaExpiry, finalCapCookieAttr, mitataCaptchaPath);
659
- if (mitataCaptchaCookie !== undefined) {
660
- return mitataCaptchaCookie;
652
+ catch (e) {
653
+ return undefined;
661
654
  }
662
655
  }
663
- return undefined;
656
+ if (mitataCaptchaValue === '' || mitataCaptchaValue === undefined) {
657
+ return undefined;
658
+ }
659
+ const attributes = removeDuplicateAttrs([
660
+ this.netaceaCaptchaCookieAttributes,
661
+ 'Path=/',
662
+ `Max-Age=${mitataCaptchaMaxAge}`
663
+ ]);
664
+ mitataCaptchaValue = this.encryptedCookies.includes(this.netaceaCaptchaCookieName)
665
+ ? await this.encryptCookieValue(mitataCaptchaValue)
666
+ : mitataCaptchaValue;
667
+ return `${this.netaceaCaptchaCookieName}=${mitataCaptchaValue}; ${attributes}`;
664
668
  }
665
669
  async buildCookieFromValues(cookieName, value, maxAge, cookieAttributes, path = '/') {
666
- const cookieValue = this.encryptedCookies.includes(cookieName) ? await this.encryptCookieValue(value) : value;
670
+ const cookieValue = this.encryptedCookies.includes(cookieName)
671
+ ? await this.encryptCookieValue(value)
672
+ : value;
667
673
  const setCookie = `${cookieName}=${cookieValue}; Max-Age=${maxAge}; Path=${path}`;
668
674
  return cookieAttributes !== undefined && cookieAttributes !== ''
669
675
  ? `${setCookie}; ${cookieAttributes}`
@@ -1 +1 @@
1
- {"version":3,"file":"Cloudfront.js","sourceRoot":"","sources":["../../src/Cloudfront.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Cloudfront.js","sourceRoot":"","sources":["../../src/Cloudfront.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Get a header with a given name.
3
+ * In the case of a multi-header, the first value found is returned.
4
+ * @param headers The full collection of headers to read from.
5
+ * @param name The name of the header to be read.
6
+ */
7
+ export declare function getHeader(headers: Record<string, string | string[]>, name: string): string | undefined;
8
+ /**
9
+ * Get a header with a given name, then attempt to parse it as an int.
10
+ * In the case of a multi-header, the value found is used.
11
+ * @param headers The full collection of headers to read from.
12
+ * @param name The name of the header to be read.
13
+ */
14
+ export declare function getHeaderAsInt(headers: Record<string, string | string[]>, name: string): number | undefined;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getHeaderAsInt = exports.getHeader = void 0;
4
+ /**
5
+ * Get a header with a given name.
6
+ * In the case of a multi-header, the first value found is returned.
7
+ * @param headers The full collection of headers to read from.
8
+ * @param name The name of the header to be read.
9
+ */
10
+ function getHeader(headers, name) {
11
+ const h = headers[name];
12
+ if (typeof h === 'string') {
13
+ return h;
14
+ }
15
+ return h === null || h === void 0 ? void 0 : h[0];
16
+ }
17
+ exports.getHeader = getHeader;
18
+ /**
19
+ * Get a header with a given name, then attempt to parse it as an int.
20
+ * In the case of a multi-header, the value found is used.
21
+ * @param headers The full collection of headers to read from.
22
+ * @param name The name of the header to be read.
23
+ */
24
+ function getHeaderAsInt(headers, name) {
25
+ const h = getHeader(headers, name);
26
+ if (h !== undefined) {
27
+ return parseInt(h);
28
+ }
29
+ }
30
+ exports.getHeaderAsInt = getHeaderAsInt;
31
+ //# sourceMappingURL=headers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headers.js","sourceRoot":"","sources":["../../src/headers.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,SAAgB,SAAS,CACvB,OAA0C,EAC1C,IAAY;IAEZ,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACvB,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC1B,OAAO,CAAC,CAAA;IACV,CAAC;IACD,OAAO,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAG,CAAC,CAAC,CAAA;AACf,CAAC;AATD,8BASC;AAED;;;;;GAKG;AACH,SAAgB,cAAc,CAC5B,OAA0C,EAC1C,IAAY;IAEZ,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAClC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QACpB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAA;IACpB,CAAC;AACH,CAAC;AARD,wCAQC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netacea/cloudfront",
3
- "version": "5.2.46",
3
+ "version": "5.2.47",
4
4
  "description": "Netacea Cloudfront CDN integration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -14,9 +14,9 @@
14
14
  },
15
15
  "license": "ISC",
16
16
  "dependencies": {
17
- "@netacea/netaceaintegrationbase": "^2.0.28",
17
+ "@netacea/netaceaintegrationbase": "^2.0.29",
18
18
  "axios": "^0.21.0",
19
19
  "jose": "^4.11.2"
20
20
  },
21
- "gitHead": "9b917cee8b330d70482637ceb7459f23255347c9"
21
+ "gitHead": "729446935964643bd7f7e4d8c3016ec561ce39dd"
22
22
  }
package/package.json.bak CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@netacea/cloudfront",
3
- "version": "5.2.46",
3
+ "version": "5.2.47",
4
4
  "description": "Netacea Cloudfront CDN integration",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -24,7 +24,7 @@
24
24
  "license": "ISC",
25
25
  "devDependencies": {
26
26
  "@netacea/bundler": "^1.0.0",
27
- "@netacea/kinesisingest": "^1.5.46",
27
+ "@netacea/kinesisingest": "^1.5.47",
28
28
  "@types/chai": "^4.3.5",
29
29
  "@types/mocha": "^10.0.1",
30
30
  "@types/node": "^14.11.2",
@@ -42,9 +42,9 @@
42
42
  "typescript": "^5.4.5"
43
43
  },
44
44
  "dependencies": {
45
- "@netacea/netaceaintegrationbase": "^2.0.28",
45
+ "@netacea/netaceaintegrationbase": "^2.0.29",
46
46
  "axios": "^0.21.0",
47
47
  "jose": "^4.11.2"
48
48
  },
49
- "gitHead": "9b917cee8b330d70482637ceb7459f23255347c9"
49
+ "gitHead": "729446935964643bd7f7e4d8c3016ec561ce39dd"
50
50
  }