@pact-foundation/pact-core 19.2.0 → 20.1.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.
Files changed (92) hide show
  1. package/.editorconfig +13 -0
  2. package/CHANGELOG.md +24 -0
  3. package/biome.jsonc +32 -0
  4. package/{src → dist}/consumer/checkErrors.js +1 -1
  5. package/dist/consumer/checkErrors.js.map +1 -0
  6. package/dist/consumer/index.d.ts +24 -0
  7. package/{src → dist}/consumer/index.js +43 -2
  8. package/dist/consumer/index.js.map +1 -0
  9. package/{src → dist}/consumer/internals.d.ts +2 -2
  10. package/dist/consumer/internals.js.map +1 -0
  11. package/{src → dist}/consumer/types.d.ts +58 -0
  12. package/dist/consumer/types.js.map +1 -0
  13. package/{src → dist}/ffi/index.d.ts +3 -3
  14. package/{src → dist}/ffi/index.js +18 -2
  15. package/dist/ffi/index.js.map +1 -0
  16. package/{src → dist}/ffi/types.d.ts +44 -11
  17. package/{src → dist}/ffi/types.js +16 -0
  18. package/dist/ffi/types.js.map +1 -0
  19. package/{src → dist}/index.js +4 -5
  20. package/dist/index.js.map +1 -0
  21. package/dist/logger/crashMessage.js.map +1 -0
  22. package/{src → dist}/logger/index.d.ts +1 -1
  23. package/{src → dist}/logger/index.js +2 -0
  24. package/dist/logger/index.js.map +1 -0
  25. package/dist/logger/pino.d.ts +3 -0
  26. package/{src → dist}/logger/pino.js +3 -0
  27. package/dist/logger/pino.js.map +1 -0
  28. package/dist/logger/types.js.map +1 -0
  29. package/{src → dist}/pact-environment.js +1 -1
  30. package/dist/pact-environment.js.map +1 -0
  31. package/{src → dist}/pact.d.ts +2 -2
  32. package/{src → dist}/pact.js +3 -2
  33. package/dist/pact.js.map +1 -0
  34. package/{src → dist}/verifier/argumentMapper/arguments.d.ts +3 -3
  35. package/{src → dist}/verifier/argumentMapper/arguments.js +22 -9
  36. package/dist/verifier/argumentMapper/arguments.js.map +1 -0
  37. package/{src → dist}/verifier/argumentMapper/index.d.ts +2 -2
  38. package/{src → dist}/verifier/argumentMapper/index.js +1 -1
  39. package/dist/verifier/argumentMapper/index.js.map +1 -0
  40. package/{src → dist}/verifier/argumentMapper/types.d.ts +1 -1
  41. package/dist/verifier/argumentMapper/types.js.map +1 -0
  42. package/{src → dist}/verifier/index.d.ts +2 -2
  43. package/{src → dist}/verifier/index.js +4 -0
  44. package/dist/verifier/index.js.map +1 -0
  45. package/{src → dist}/verifier/nativeVerifier.d.ts +1 -1
  46. package/{src → dist}/verifier/nativeVerifier.js +4 -1
  47. package/dist/verifier/nativeVerifier.js.map +1 -0
  48. package/{src → dist}/verifier/types.d.ts +5 -1
  49. package/dist/verifier/types.js.map +1 -0
  50. package/{src → dist}/verifier/validateOptions.d.ts +1 -1
  51. package/{src → dist}/verifier/validateOptions.js +4 -0
  52. package/dist/verifier/validateOptions.js.map +1 -0
  53. package/junit.xml +541 -0
  54. package/package.json +39 -58
  55. package/eslint.config.mjs +0 -68
  56. package/src/consumer/checkErrors.js.map +0 -1
  57. package/src/consumer/index.d.ts +0 -5
  58. package/src/consumer/index.js.map +0 -1
  59. package/src/consumer/internals.js.map +0 -1
  60. package/src/consumer/types.js.map +0 -1
  61. package/src/ffi/index.js.map +0 -1
  62. package/src/ffi/node-gyp-build.d.ts +0 -1
  63. package/src/ffi/node-gyp-build.js +0 -2
  64. package/src/ffi/node-gyp-build.js.map +0 -1
  65. package/src/ffi/types.js.map +0 -1
  66. package/src/index.js.map +0 -1
  67. package/src/logger/crashMessage.js.map +0 -1
  68. package/src/logger/index.js.map +0 -1
  69. package/src/logger/pino.d.ts +0 -3
  70. package/src/logger/pino.js.map +0 -1
  71. package/src/logger/types.js.map +0 -1
  72. package/src/pact-environment.js.map +0 -1
  73. package/src/pact.js.map +0 -1
  74. package/src/verifier/argumentMapper/arguments.js.map +0 -1
  75. package/src/verifier/argumentMapper/index.js.map +0 -1
  76. package/src/verifier/argumentMapper/types.js.map +0 -1
  77. package/src/verifier/index.js.map +0 -1
  78. package/src/verifier/nativeVerifier.js.map +0 -1
  79. package/src/verifier/types.js.map +0 -1
  80. package/src/verifier/validateOptions.js.map +0 -1
  81. package/tsconfig.test.json +0 -13
  82. package/{src → dist}/consumer/checkErrors.d.ts +0 -0
  83. package/{src → dist}/consumer/internals.js +0 -0
  84. package/{src → dist}/consumer/types.js +0 -0
  85. package/{src → dist}/index.d.ts +4 -4
  86. /package/{src → dist}/logger/crashMessage.d.ts +0 -0
  87. /package/{src → dist}/logger/crashMessage.js +0 -0
  88. /package/{src → dist}/logger/types.d.ts +0 -0
  89. /package/{src → dist}/logger/types.js +0 -0
  90. /package/{src → dist}/pact-environment.d.ts +0 -0
  91. /package/{src → dist}/verifier/argumentMapper/types.js +0 -0
  92. /package/{src → dist}/verifier/types.js +0 -0
@@ -1,4 +1,4 @@
1
- import { LogLevel } from './types';
1
+ import type { LogLevel } from './types';
2
2
  export declare const DEFAULT_LOG_LEVEL: LogLevel;
3
3
  export declare const setLogLevel: (level?: LogLevel) => void;
4
4
  export declare const getLogLevel: () => LogLevel;
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.logCrashAndThrow = exports.logErrorAndThrow = exports.verboseIsImplied = exports.getLogLevel = exports.setLogLevel = exports.DEFAULT_LOG_LEVEL = void 0;
4
4
  const crashMessage_1 = require("./crashMessage");
5
5
  const pino_1 = require("./pino");
6
+ // TODO: Replace this hack with https://www.npmjs.com/package/@npmcli/package-json
7
+ // TODO: abstract this so it's not repeated in src/verifier/nativeVerifier.ts
6
8
  const pkg = require('../../package.json');
7
9
  const logContext = `pact-core@${pkg.version}`;
8
10
  let currentLogLevel = process.env['LOG_LEVEL']
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type Logger } from 'pino';
2
+ import type { LogLevel } from './types';
3
+ export declare const createLogger: (level: LogLevel) => Logger;
@@ -5,6 +5,9 @@ const pino_1 = require("pino");
5
5
  const pino_pretty_1 = require("pino-pretty");
6
6
  const createLogger = (level) => {
7
7
  const prettify = (0, pino_pretty_1.prettyFactory)({ sync: true });
8
+ // Configure custom stream that forwards pretty message to console
9
+ // to address issues with pino pretty and Jest
10
+ // Thanks to https://github.com/pinojs/pino-pretty/issues/480#issuecomment-2271709217 for the solution
8
11
  return (0, pino_1.pino)({
9
12
  level: level.toLowerCase(),
10
13
  }, {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pino.js","sourceRoot":"","sources":["../../src/logger/pino.ts"],"names":[],"mappings":";;;AAAA,+BAAyC;AACzC,6CAA4C;AAIrC,MAAM,YAAY,GAAG,CAAC,KAAe,EAAU,EAAE;IACtD,MAAM,QAAQ,GAAG,IAAA,2BAAa,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,kEAAkE;IAClE,8CAA8C;IAC9C,sGAAsG;IACtG,OAAO,IAAA,WAAI,EACT;QACE,KAAK,EAAE,KAAK,CAAC,WAAW,EAAE;KAC3B,EACD;QACE,KAAK,CAAC,IAAa;YACjB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9B,CAAC;KACF,CACF,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,YAAY,GAAZ,YAAY,CAevB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logger/types.ts"],"names":[],"mappings":""}
@@ -34,7 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.PactEnvironment = void 0;
37
- const path = __importStar(require("path"));
37
+ const path = __importStar(require("node:path"));
38
38
  class PactEnvironment {
39
39
  get cwd() {
40
40
  return path.resolve(__dirname, '..');
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pact-environment.js","sourceRoot":"","sources":["../src/pact-environment.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAY,IAAI,sCAAkB;AAElC;IACE,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IAEM,SAAS,CAAC,QAAQ,GAAW,OAAO,CAAC,QAAQ;QAClD,OAAO,QAAQ,KAAK,OAAO,CAAC;IAC9B,CAAC;CACF;;kBAEc,IAAI,eAAe,EAAE"}
@@ -1,5 +1,5 @@
1
- import { VerifierOptions } from './verifier/types';
2
- import { LogLevel } from './logger/types';
1
+ import type { LogLevel } from './logger/types';
2
+ import type { VerifierOptions } from './verifier/types';
3
3
  export declare class Pact {
4
4
  logLevel(level?: LogLevel): void;
5
5
  verifyPacts(options: VerifierOptions): Promise<string>;
@@ -37,12 +37,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.Pact = void 0;
40
- const verifier_1 = __importDefault(require("./verifier"));
41
40
  const logger_1 = __importStar(require("./logger"));
41
+ const verifier_1 = __importDefault(require("./verifier"));
42
42
  class Pact {
43
43
  logLevel(level) {
44
- return (0, logger_1.setLogLevel)(level);
44
+ (0, logger_1.setLogLevel)(level);
45
45
  }
46
+ // Run the Pact Verification process
46
47
  verifyPacts(options) {
47
48
  logger_1.default.info('Verifying Pacts.');
48
49
  return (0, verifier_1.default)(options).verify();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pact.js","sourceRoot":"","sources":["../src/pact.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mDAA+C;AAE/C,0DAAyC;AAGzC;IACS,QAAQ,CAAC,KAAgB;QAC9B,IAAA,oBAAW,EAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,oCAAoC;IAC7B,WAAW,CAAC,OAAwB;QACzC,gBAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAChC,OAAO,IAAA,kBAAe,EAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3C,CAAC;CACF;;kBAEc,IAAI,IAAI,EAAE"}
@@ -1,6 +1,6 @@
1
- import { FnMapping } from './types';
2
- import { InternalPactVerifierOptions } from '../types';
3
- import { FfiVerificationFunctions } from '../../ffi/types';
1
+ import type { FfiVerificationFunctions } from '../../ffi/types';
2
+ import type { InternalPactVerifierOptions } from '../types';
3
+ import { type FnMapping } from './types';
4
4
  type IgnoredFfiFunctions = {
5
5
  pactffiVerifierNewForApplication: 1;
6
6
  pactffiVerifierExecute: 1;
@@ -4,9 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.ffiFnMapping = exports.orderOfExecution = void 0;
7
- const fs = require("fs");
8
- const url = require("url");
9
- const url_1 = require("url");
7
+ const fs = require("node:fs");
8
+ const url = require("node:url");
9
+ const node_url_1 = require("node:url");
10
10
  const logger_1 = __importDefault(require("../../logger"));
11
11
  const types_1 = require("./types");
12
12
  const DEFAULT_TIMEOUT = 30000;
@@ -19,10 +19,11 @@ exports.orderOfExecution = {
19
19
  pactffiVerifierSetPublishOptions: 5,
20
20
  pactffiVerifierSetConsumerFilters: 6,
21
21
  pactffiVerifierSetFailIfNoPactsFound: 7,
22
- pactffiVerifierAddCustomHeader: 8,
23
- pactffiVerifierAddDirectorySource: 9,
24
- pactffiVerifierBrokerSourceWithSelectors: 10,
25
- pactffiVerifierAddProviderTransport: 11,
22
+ pactffiVerifierSetFollowRedirects: 8,
23
+ pactffiVerifierAddCustomHeader: 9,
24
+ pactffiVerifierAddDirectorySource: 10,
25
+ pactffiVerifierBrokerSourceWithSelectors: 11,
26
+ pactffiVerifierAddProviderTransport: 12,
26
27
  };
27
28
  exports.ffiFnMapping = {
28
29
  pactffiVerifierAddCustomHeader: {
@@ -64,7 +65,7 @@ exports.ffiFnMapping = {
64
65
  logger_1.default.debug(`checking source type of given pactUrl: ${file}`);
65
66
  if (/https?:/.test(url.parse(file).protocol || '')) {
66
67
  try {
67
- const u = new url_1.URL(file);
68
+ const u = new node_url_1.URL(file);
68
69
  if (u.hostname) {
69
70
  logger_1.default.debug(`adding ${file} as a Url source`);
70
71
  ffi.pactffiVerifierUrlSource(handle, file, options.pactBrokerUsername ||
@@ -151,6 +152,18 @@ exports.ffiFnMapping = {
151
152
  };
152
153
  },
153
154
  },
155
+ pactffiVerifierSetFollowRedirects: {
156
+ validateAndExecute(ffi, handle, options) {
157
+ if (options.followRedirects !== undefined) {
158
+ ffi.pactffiVerifierSetFollowRedirects(handle, options.followRedirects);
159
+ return { status: types_1.FnValidationStatus.SUCCESS };
160
+ }
161
+ return {
162
+ status: types_1.FnValidationStatus.IGNORE,
163
+ messages: ['No followRedirects option provided'],
164
+ };
165
+ },
166
+ },
154
167
  pactffiVerifierSetFilterInfo: {
155
168
  validateAndExecute(ffi, handle) {
156
169
  if (process.env['PACT_DESCRIPTION'] ||
@@ -172,7 +185,7 @@ exports.ffiFnMapping = {
172
185
  },
173
186
  pactffiVerifierSetProviderInfo: {
174
187
  validateAndExecute(ffi, handle, options) {
175
- const uri = new url_1.URL(options.providerBaseUrl);
188
+ const uri = new node_url_1.URL(options.providerBaseUrl);
176
189
  ffi.pactffiVerifierSetProviderInfo(handle, options.provider || '', uri.protocol.split(':')[0], uri.hostname, parseInt(uri.port, 10), uri.pathname);
177
190
  return { status: types_1.FnValidationStatus.SUCCESS };
178
191
  },
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arguments.js","sourceRoot":"","sources":["../../../src/verifier/argumentMapper/arguments.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { InternalPactVerifierOptions } from '../types';
2
- import { Ffi, FfiVerifierHandle } from '../../ffi/types';
1
+ import type { Ffi, FfiVerifierHandle } from '../../ffi/types';
2
+ import type { InternalPactVerifierOptions } from '../types';
3
3
  export declare const setupVerification: (ffi: Ffi, handle: FfiVerifierHandle, options: InternalPactVerifierOptions) => void;
@@ -35,9 +35,9 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.setupVerification = void 0;
37
37
  const underscore_1 = require("underscore");
38
- const types_1 = require("./types");
39
38
  const logger_1 = __importStar(require("../../logger"));
40
39
  const arguments_1 = require("./arguments");
40
+ const types_1 = require("./types");
41
41
  const setupVerification = (ffi, handle, options) => {
42
42
  const order = (0, underscore_1.values)(arguments_1.orderOfExecution).sort((a, b) => a - b);
43
43
  const functionsToCall = (0, underscore_1.invert)(arguments_1.orderOfExecution);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/verifier/argumentMapper/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4C;AAE5C,uDAA0E;AAE1E,2CAA6D;AAC7D,mCAAsE;AAE/D,MAAM,iBAAiB,GAAG,CAC/B,GAAQ,EACR,MAAyB,EACzB,OAAoC,EAC9B,EAAE;IACR,MAAM,KAAK,GAAG,IAAA,mBAAM,EAAC,4BAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAA,mBAAM,EAAC,4BAAgB,CAAC,CAAC;IAEjD,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAClB,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC,CAA8B,CAAC;QAC3D,MAAM,UAAU,GAAuB,wBAAY,CAAC,EAAE,CAAC,CAAC,kBAAkB,CACxE,GAAG,EACH,MAAM,EACN,OAAO,CACR,CAAC;QAEF,QAAQ,UAAU,CAAC,MAAM,EAAE,CAAC;YAC1B,KAAK,0BAAkB,CAAC,IAAI;gBAC1B,IAAA,yBAAgB,EACd,8BAA8B,EAAE,oCAAoC,UAAU,CAAC,QAAQ,EAAE,CAC1F,CAAC;gBACF,MAAM;YACR,KAAK,0BAAkB,CAAC,MAAM;gBAC5B,gBAAM,CAAC,KAAK,CACV,8BAA8B,EAAE,6DAA6D,UAAU,CAAC,QAAQ,EAAE,CACnH,CAAC;gBACF,MAAM;YACR,KAAK,0BAAkB,CAAC,OAAO;gBAC7B,MAAM;YACR;gBACE,IAAA,yBAAgB,EACd,qBAAqB,EAAE,6DACpB,UAAiC,CAAC,MACrC,GAAG,CACJ,CAAC;QACN,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AArCW,QAAA,iBAAiB,GAAjB,iBAAiB,CAqC5B"}
@@ -1,4 +1,4 @@
1
- import { Ffi, FfiHandle } from '../../ffi/types';
1
+ import type { Ffi, FfiHandle } from '../../ffi/types';
2
2
  export declare const deprecatedFunction: (_: unknown, property: string) => boolean;
3
3
  type KeyedObject = {
4
4
  [key: string]: unknown;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/verifier/argumentMapper/types.ts"],"names":[],"mappings":";;;;;;AACA,0DAAkC;AAE3B,MAAM,kBAAkB,GAAG,CAAC,CAAU,EAAE,QAAgB,EAAW,EAAE;IAC1E,gBAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,6CAA6C,CAAC,CAAC;IAEtE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAJW,QAAA,kBAAkB,GAAlB,kBAAkB,CAI7B;AAkBF,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,iEAAW,CAAA;IACX,+DAAU,CAAA;IACV,2DAAQ,CAAA;AACV,CAAC,EAJW,kBAAkB,aAAlB,kBAAkB,GAAlB,kBAAkB,QAI7B"}
@@ -1,8 +1,8 @@
1
- import { VerifierOptions } from './types';
1
+ import type { VerifierOptions } from './types';
2
2
  export declare class Verifier {
3
3
  readonly options: VerifierOptions;
4
4
  constructor(options: VerifierOptions);
5
5
  verify(): Promise<string>;
6
6
  }
7
- declare const _default: (options: VerifierOptions) => Verifier;
8
7
  export default _default;
8
+ declare function _default(options: VerifierOptions): Verifier;
@@ -17,11 +17,15 @@ class Verifier {
17
17
  constructor(options) {
18
18
  this.options = (0, validateOptions_1.validateOptions)(applyDefaults(options));
19
19
  }
20
+ // Deprecated?
21
+ // This might be hard to validate, given the new FFI interface
22
+ // and potential extensions
20
23
  verify() {
21
24
  logger_1.default.info('Verifying Pact Files');
22
25
  return (0, nativeVerifier_1.verify)(this.options);
23
26
  }
24
27
  }
25
28
  exports.Verifier = Verifier;
29
+ // Creates a new instance of the pact server with the specified option
26
30
  exports.default = (options) => new Verifier(options);
27
31
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/verifier/index.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA+B;AAC/B,qDAA0C;AAE1C,uDAAoD;AAEpD,MAAM,aAAa,GAAG,CAAC,OAAwB,EAAmB,EAAE,CAAC,CAAC;IACpE,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,MAAM;IAChB,GAAG,OAAO;CACX,CAAC,CAAC;AAEH;IACkB,OAAO,CAAkB;IAEzC,YAAY,OAAwB;QAClC,IAAI,CAAC,OAAO,GAAG,IAAA,iCAAe,EAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,cAAc;IACd,8DAA8D;IAC9D,2BAA2B;IACpB,MAAM;QACX,gBAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAEpC,OAAO,IAAA,uBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;CACF;;AAED,sEAAsE;kBACvD,CAAC,OAAwB,EAAY,EAAE,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC"}
@@ -1,2 +1,2 @@
1
- import { VerifierOptions } from './types';
1
+ import type { VerifierOptions } from './types';
2
2
  export declare const verify: (opts: VerifierOptions) => Promise<string>;
@@ -34,10 +34,12 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.verify = void 0;
37
- const logger_1 = __importStar(require("../logger"));
38
37
  const ffi_1 = require("../ffi");
39
38
  const types_1 = require("../ffi/types");
39
+ const logger_1 = __importStar(require("../logger"));
40
40
  const argumentMapper_1 = require("./argumentMapper");
41
+ // TODO: Replace this hack with https://www.npmjs.com/package/@npmcli/package-json
42
+ // TODO: abstract this so it's not repeated in src/logger.ts
41
43
  const pkg = require('../../package.json');
42
44
  const verify = (opts) => {
43
45
  if (opts.logLevel) {
@@ -54,6 +56,7 @@ const verify = (opts) => {
54
56
  logger_1.default.debug(`response from verifier: ${err}, ${res}`);
55
57
  if (err) {
56
58
  if (typeof err === 'string') {
59
+ // It might not really be an `Error`, because it comes from native code.
57
60
  logger_1.default.error(err);
58
61
  }
59
62
  else if (err.message) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeVerifier.js","sourceRoot":"","sources":["../../src/verifier/nativeVerifier.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gCAAmC;AACnC,wCAAwD;AACxD,oDAAgD;AAChD,qDAAqD;AAGrD,kFAAkF;AAClF,4DAA4D;AAE5D,MAAM,GAAG,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEnC,MAAM,MAAM,GAAG,CAAC,IAAqB,EAAmB,EAAE;IAC/D,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,IAAA,oBAAW,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IACD,MAAM,GAAG,GAAG,IAAA,eAAS,EAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,GAAG,CAAC,gCAAgC,CACjD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EACtB,GAAG,CAAC,OAAO,CACZ,CAAC;IAEF,IAAA,kCAAiB,EAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAErC,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,GAAG,CAAC,sBAAsB,CAAC,MAAM,EAAE,CAAC,GAAU,EAAE,GAAW,EAAE,EAAE;YAC7D,gBAAM,CAAC,KAAK,CAAC,sCAAsC,MAAM,EAAE,CAAC,CAAC;YAE7D,MAAM,OAAO,GAAG,GAAG,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAChD,GAAG,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAEpC,gBAAM,CAAC,KAAK,CAAC,2BAA2B,GAAG,KAAK,GAAG,EAAE,CAAC,CAAC;YACvD,IAAI,GAAG,EAAE,CAAC;gBACR,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;oBAC5B,wEAAwE;oBACxE,gBAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC;qBAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBACvB,gBAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC5B,CAAC;gBACD,gBAAM,CAAC,SAAS,CACd,sEAAsE,CACvE,CAAC;gBACF,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,EAAE,CAAC;oBACZ,KAAK,gCAAwB,CAAC,uBAAuB;wBACnD,gBAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;wBACvC,OAAO,CAAC,OAAO,CAAC,CAAC;wBACjB,MAAM;oBACR,KAAK,gCAAwB,CAAC,mBAAmB;wBAC/C,gBAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;wBAC1C,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;wBAC3B,MAAM;oBACR,KAAK,gCAAwB,CAAC,iBAAiB;wBAC7C,gBAAM,CAAC,SAAS,CACd,mDAAmD,CACpD,CAAC;wBACF,MAAM,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;wBACpD,MAAM;oBACR;wBACE,gBAAM,CAAC,SAAS,CACd,wDAAwD,CACzD,CAAC;wBACF,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;wBACvC,MAAM;gBACV,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AA1DW,QAAA,MAAM,GAAN,MAAM,CA0DjB"}
@@ -1,4 +1,4 @@
1
- import { LogLevel } from '../logger/types';
1
+ import type { LogLevel } from '../logger/types';
2
2
  export interface ConsumerVersionSelector {
3
3
  tag?: string;
4
4
  latest?: boolean;
@@ -48,6 +48,10 @@ export interface VerifierOptions {
48
48
  customProviderHeaders?: CustomHeaders | string[];
49
49
  consumerFilters?: string[];
50
50
  transports?: Transport[];
51
+ /**
52
+ * @deprecated use providerVersionBranch instead
53
+ */
51
54
  providerBranch?: string;
52
55
  failIfNoPactsFound?: boolean;
56
+ followRedirects?: boolean;
53
57
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/verifier/types.ts"],"names":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- import { InternalPactVerifierOptions, VerifierOptions } from './types';
1
+ import type { InternalPactVerifierOptions, VerifierOptions } from './types';
2
2
  export declare const deprecatedFunction: () => (_: unknown, property: string) => boolean;
3
3
  export declare const deprecatedBy: (preferredOption: string) => () => (_: unknown, property: string) => boolean;
4
4
  export declare const incompatibleWith: (keys: (keyof InternalPactVerifierOptions)[]) => (options: InternalPactVerifierOptions) => (_: unknown, property: string) => boolean;
@@ -199,17 +199,21 @@ exports.validationRules = {
199
199
  logFile: [assertNonEmptyString],
200
200
  consumerFilters: [assertNonEmptyString],
201
201
  failIfNoPactsFound: [assertBoolean],
202
+ followRedirects: [assertBoolean],
202
203
  transports: [],
203
204
  };
204
205
  const validateOptions = (options) => {
206
+ // Check that at least one of pactUrls or providerBaseUrl is provided
205
207
  if (!options.pactUrls && !options.providerBaseUrl) {
206
208
  throw new Error('Either pactUrls or providerBaseUrl must be provided');
207
209
  }
208
210
  Object.keys(options).concat('providerBaseUrl').forEach((k) => {
209
211
  const rules = exports.validationRules[k];
212
+ // get type of parameter (if an array, we apply the rule to each item of the array instead)
210
213
  if (k in options && Array.isArray(options[k])) {
211
214
  options[k].forEach((item) => {
212
215
  (rules || []).forEach((rule) => {
216
+ // rule(item) // If the messages aren't clear, we can do this
213
217
  rule(options)(item, k);
214
218
  });
215
219
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateOptions.js","sourceRoot":"","sources":["../../src/verifier/validateOptions.ts"],"names":[],"mappings":"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"}