@paykit-sdk/comgate 1.0.9 → 1.3.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.
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var core = require('@paykit-sdk/core');
4
+ var crypto = require('crypto');
4
5
 
5
6
  var __defProp = Object.defineProperty;
6
7
  var __export = (target, all) => {
@@ -4522,7 +4523,9 @@ var ComgateProvider = class extends core.AbstractPayKitProvider {
4522
4523
  body,
4523
4524
  "Missing required webhook parameters: {keys}"
4524
4525
  );
4525
- if (secret !== this.opts.secret) {
4526
+ const secretBuf = Buffer.from(secret);
4527
+ const expectedSecretBuf = Buffer.from(this.opts.secret);
4528
+ if (secretBuf.length !== expectedSecretBuf.length || !crypto.timingSafeEqual(secretBuf, expectedSecretBuf)) {
4526
4529
  throw new core.WebhookError("Webhook secret mismatch", {
4527
4530
  provider: this.providerName
4528
4531
  });
@@ -1,4 +1,5 @@
1
1
  import { schema, AbstractPayKitProvider, HTTPClient, OperationFailedError, createPaymentSchema, isEmailCustomer, InvalidTypeError, ProviderNotSupportedError, ValidationError, isIdCustomer, validateRequiredKeys, capturePaymentSchema, createRefundSchema, WebhookError, paykitEvent$InboundSchema, omitInternalMetadata } from '@paykit-sdk/core';
2
+ import { timingSafeEqual } from 'crypto';
2
3
 
3
4
  var __defProp = Object.defineProperty;
4
5
  var __export = (target, all) => {
@@ -4520,7 +4521,9 @@ var ComgateProvider = class extends AbstractPayKitProvider {
4520
4521
  body,
4521
4522
  "Missing required webhook parameters: {keys}"
4522
4523
  );
4523
- if (secret !== this.opts.secret) {
4524
+ const secretBuf = Buffer.from(secret);
4525
+ const expectedSecretBuf = Buffer.from(this.opts.secret);
4526
+ if (secretBuf.length !== expectedSecretBuf.length || !timingSafeEqual(secretBuf, expectedSecretBuf)) {
4524
4527
  throw new WebhookError("Webhook secret mismatch", {
4525
4528
  provider: this.providerName
4526
4529
  });
package/dist/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var core = require('@paykit-sdk/core');
4
+ var crypto = require('crypto');
4
5
 
5
6
  var __defProp = Object.defineProperty;
6
7
  var __export = (target, all) => {
@@ -4522,7 +4523,9 @@ var ComgateProvider = class extends core.AbstractPayKitProvider {
4522
4523
  body,
4523
4524
  "Missing required webhook parameters: {keys}"
4524
4525
  );
4525
- if (secret !== this.opts.secret) {
4526
+ const secretBuf = Buffer.from(secret);
4527
+ const expectedSecretBuf = Buffer.from(this.opts.secret);
4528
+ if (secretBuf.length !== expectedSecretBuf.length || !crypto.timingSafeEqual(secretBuf, expectedSecretBuf)) {
4526
4529
  throw new core.WebhookError("Webhook secret mismatch", {
4527
4530
  provider: this.providerName
4528
4531
  });
package/dist/index.mjs CHANGED
@@ -1,4 +1,5 @@
1
1
  import { schema, validateRequiredKeys, AbstractPayKitProvider, HTTPClient, OperationFailedError, createPaymentSchema, isEmailCustomer, InvalidTypeError, ProviderNotSupportedError, ValidationError, isIdCustomer, capturePaymentSchema, createRefundSchema, WebhookError, paykitEvent$InboundSchema, omitInternalMetadata } from '@paykit-sdk/core';
2
+ import { timingSafeEqual } from 'crypto';
2
3
 
3
4
  var __defProp = Object.defineProperty;
4
5
  var __export = (target, all) => {
@@ -4520,7 +4521,9 @@ var ComgateProvider = class extends AbstractPayKitProvider {
4520
4521
  body,
4521
4522
  "Missing required webhook parameters: {keys}"
4522
4523
  );
4523
- if (secret !== this.opts.secret) {
4524
+ const secretBuf = Buffer.from(secret);
4525
+ const expectedSecretBuf = Buffer.from(this.opts.secret);
4526
+ if (secretBuf.length !== expectedSecretBuf.length || !timingSafeEqual(secretBuf, expectedSecretBuf)) {
4524
4527
  throw new WebhookError("Webhook secret mismatch", {
4525
4528
  provider: this.providerName
4526
4529
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paykit-sdk/comgate",
3
- "version": "1.0.9",
3
+ "version": "1.3.0",
4
4
  "description": "Comgate provider for PayKit",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -8,6 +8,9 @@
8
8
  "files": [
9
9
  "dist"
10
10
  ],
11
+ "paykit": {
12
+ "type": "provider"
13
+ },
11
14
  "keywords": [
12
15
  "paykit",
13
16
  "comgate"
@@ -15,13 +18,13 @@
15
18
  "author": "Emmanuel Odii",
16
19
  "license": "ISC",
17
20
  "peerDependencies": {
18
- "@paykit-sdk/core": ">=1.1.103"
21
+ "@paykit-sdk/core": "^1.2.3"
19
22
  },
20
23
  "devDependencies": {
21
24
  "tsup": "^8.5.0",
22
25
  "typescript": "^5.9.2",
23
26
  "zod": "^3.24.2",
24
- "@paykit-sdk/core": "1.1.103"
27
+ "@paykit-sdk/core": "1.3.0"
25
28
  },
26
29
  "publishConfig": {
27
30
  "access": "public"
@@ -34,6 +37,8 @@
34
37
  "url": "https://github.com/usepaykit/paykit-sdk/issues"
35
38
  },
36
39
  "scripts": {
37
- "build": "tsup"
40
+ "build": "tsup",
41
+ "test": "vitest run --config ../../vitest.config.ts packages/comgate/src",
42
+ "typecheck": "tsc --noEmit"
38
43
  }
39
44
  }