@mablhq/mabl-cli 2.51.10 → 2.51.18

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.
@@ -84,7 +84,7 @@ exports.builder = (yargs) => {
84
84
  type: 'string',
85
85
  })
86
86
  .option(constants_1.CommandArgProject, {
87
- describe: 'Playwright project to run. This project must have tracing enabled.',
87
+ describe: 'Name of the Playwright project to run. You will find the list of your playwright projects in the playwright.config.ts file under the projects array. This project must have tracing enabled.',
88
88
  nargs: 1,
89
89
  type: 'string',
90
90
  })
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.PRE_REQUEST_LISTEN = exports.convertMablAssertionsToExecArray = exports.convertMablVariableAssignmentsToExecArray = exports.createMablGeneratedScripts = exports.insertMablAssertionScripts = exports.toPostmanScript = exports.replaceVariables = exports.getActualValue = exports.readBody = exports.getResponseContentType = exports.valueToUnquotedString = exports.assertionTypeSupportsCaseSensitivity = exports.assertionTargetSupportsCaseSensitivity = exports.humanizeAssertion = exports.getAssertionTargetArgument = exports.assertionHasTest = exports.isValidMablAssertion = exports.normalizeRegExpExpectedValue = exports.normalizeExpectedValue = exports.normalizeAssertionValue = exports.assertionRequiresValue = exports.filterValidMablAssertions = exports.filterValidMablVariableAssignments = exports.isValidMablVariableAssignment = exports.removeMablGeneratedScripts = exports.createEmptyRequestEvent = exports.findFirstMatchingEvent = exports.restoreCustomRequestFields = exports.deduplicateApiTestExecutionResults = exports.createEmptyVariable = exports.createEmptyAssertion = exports.humanizeAssertionType = exports.getAssertionTypesForTarget = exports.caseInsensitiveEquals = exports.compareStringsCaseInsensitive = exports.ASSERT_TYPES = exports.ASSERT_TARGETS = exports.COLLECTION_WITH_FOLDERS_ERROR = exports.HMAC_SHA1_SIGNATURE = exports.DEFAULT_ADD_OAUTH1_TO_HEADER_VALUE = exports.DEFAULT_OAUTH1_VERSION = exports.OAUTH1_AUTH = exports.NO_AUTH = exports.BEARER_TOKEN_AUTH = exports.BASIC_AUTH = exports.API_KEY_AUTH = exports.INHERIT_AUTH_FROM_PARENT_VALUE = exports.MABL_GENERATED_COMMENT = exports.MABL_GENERATED_ASSERTION_TOKEN = exports.TEST_LISTEN = void 0;
7
- exports.uuid = exports.postmanEventToExecutableSnippets = exports.postmanAuthToApiTestAuth = exports.getValueFromAuthVariables = exports.insertTestConfigurationIntoFlow = exports.createCommentForApiTestSnippet = exports.convertMablSnippetsToExecArray = exports.createPostmanScript = exports.insertMablScriptsIntoCollection = exports.processPostmanItem = exports.replaceRawScriptWithExecArray = exports.removeInvalidHeaders = exports.processItemAuth = exports.mablAuthToPostman = exports.formatContent = exports.getRequestMode = exports.getFormDataArray = exports.isText = exports.isXML = exports.isJson = exports.isSupportedAuthType = exports.isItemDefinition = exports.isCollectionDefinition = exports.isItemGroupDefinition = exports.isFolder = exports.validateCollectionFeaturesForApiTestEditor = exports.generateRawScriptField = exports.processPostmanItems = exports.createEmptyRequest = exports.createEmptyRequestEventArray = exports.splitLines = void 0;
7
+ exports.uuid = exports.postmanEventToExecutableSnippets = exports.postmanAuthToApiTestAuth = exports.getValueFromAuthVariables = exports.executableSnippetToApiTestSnippet = exports.executableSnippetsToPostmanEvent = exports.apiTestAuthToPostmanAuth = exports.insertTestConfigurationIntoFlow = exports.createCommentForApiTestSnippet = exports.convertMablSnippetsToExecArray = exports.createPostmanScript = exports.insertMablScriptsIntoCollection = exports.processPostmanItem = exports.replaceRawScriptWithExecArray = exports.removeInvalidHeaders = exports.processItemAuth = exports.mablAuthToPostman = exports.formatContent = exports.getRequestMode = exports.getFormDataArray = exports.isText = exports.isXML = exports.isJson = exports.isSupportedAuthType = exports.isItemDefinition = exports.isCollectionDefinition = exports.isItemGroupDefinition = exports.isFolder = exports.validateCollectionFeaturesForApiTestEditor = exports.generateRawScriptField = exports.processPostmanItems = exports.createEmptyRequest = exports.createEmptyRequestEventArray = exports.splitLines = void 0;
8
8
  const newman_types_1 = require("./newman-types");
9
9
  const lodash_1 = __importDefault(require("lodash"));
10
10
  const uuid_1 = require("uuid");
@@ -69,6 +69,7 @@ const EXPECT_FUNCTIONS = {
69
69
  EndsWith: `satisfy(value => value.endsWith(${EXPECTED_VALUE_TOKEN}))`,
70
70
  MatchesRegExp: `match(${EXPECTED_VALUE_TOKEN})`,
71
71
  };
72
+ const MEDIA_TYPE_TOKEN = "[0-9A-Za-z!#$%&'*+.^_`|~-]+";
72
73
  function compareStringsCaseInsensitive(a, b) {
73
74
  a = a === null || a === void 0 ? void 0 : a.toUpperCase().toLowerCase();
74
75
  b = b === null || b === void 0 ? void 0 : b.toUpperCase().toLowerCase();
@@ -810,21 +811,23 @@ function isSupportedAuthType(authDefinition) {
810
811
  }
811
812
  exports.isSupportedAuthType = isSupportedAuthType;
812
813
  function isJson(contentType) {
813
- return (!!contentType &&
814
- (contentType.startsWith('application/json') ||
815
- contentType.startsWith('application/vnd.api+json')));
814
+ return contentTypeMatches(contentType, (ct) => ct.startsWith('application/json'), (ct) => ct.match(new RegExp(`${MEDIA_TYPE_TOKEN}\/${MEDIA_TYPE_TOKEN}\\+json.*`, 'i')));
816
815
  }
817
816
  exports.isJson = isJson;
818
817
  function isXML(contentType) {
819
- return (!!contentType &&
820
- (contentType.startsWith('application/xml') ||
821
- contentType.startsWith('text/xml')));
818
+ return contentTypeMatches(contentType, (ct) => ct.startsWith('application/xml'), (ct) => ct.startsWith('text/xml'), (ct) => ct.match(new RegExp(`${MEDIA_TYPE_TOKEN}\/${MEDIA_TYPE_TOKEN}\\+xml.*`, 'i')));
822
819
  }
823
820
  exports.isXML = isXML;
824
821
  function isText(contentType) {
825
- return !!contentType && (contentType === null || contentType === void 0 ? void 0 : contentType.startsWith('text/'));
822
+ return contentTypeMatches(contentType, (ct) => ct.startsWith('text/'));
826
823
  }
827
824
  exports.isText = isText;
825
+ function contentTypeMatches(contentType, ...predicates) {
826
+ if (!contentType) {
827
+ return false;
828
+ }
829
+ return predicates.some((predicate) => predicate(contentType));
830
+ }
828
831
  function getFormDataArray(item) {
829
832
  var _a, _b, _c;
830
833
  if (getRequestMode(item) === 'formdata') {
@@ -1127,6 +1130,7 @@ function apiTestAuthToPostmanAuth(apiTestAuth) {
1127
1130
  }
1128
1131
  return postmanAuth;
1129
1132
  }
1133
+ exports.apiTestAuthToPostmanAuth = apiTestAuthToPostmanAuth;
1130
1134
  function apiKeyAuthenticationToPostman(auth) {
1131
1135
  return removeUndefinedValues([
1132
1136
  toPostmanConfigurationValue('key', auth === null || auth === void 0 ? void 0 : auth.key),
@@ -1192,6 +1196,7 @@ function executableSnippetsToPostmanEvent(snippets, type) {
1192
1196
  },
1193
1197
  };
1194
1198
  }
1199
+ exports.executableSnippetsToPostmanEvent = executableSnippetsToPostmanEvent;
1195
1200
  function executableSnippetToApiTestSnippet(executableSnippet) {
1196
1201
  const { invariant_id: invariantId, ...snippet } = { ...executableSnippet };
1197
1202
  if (executableSnippet.reusable) {
@@ -1205,6 +1210,7 @@ function executableSnippetToApiTestSnippet(executableSnippet) {
1205
1210
  reusable: false,
1206
1211
  };
1207
1212
  }
1213
+ exports.executableSnippetToApiTestSnippet = executableSnippetToApiTestSnippet;
1208
1214
  function getValueFromAuthVariables(authVariables, variableName) {
1209
1215
  var _a;
1210
1216
  return (_a = authVariables === null || authVariables === void 0 ? void 0 : authVariables.find((variable) => variable.key === variableName)) === null || _a === void 0 ? void 0 : _a.value;