Socket
Socket
Sign inDemoInstall

ibm-cloud-sdk-core

Package Overview
Dependencies
Maintainers
3
Versions
144
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ibm-cloud-sdk-core - npm Package Compare versions

Comparing version 2.17.0 to 2.17.1

api-extractor.json

7

auth/authenticators/basic-authenticator.js

@@ -30,4 +30,7 @@ "use strict";

})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var extend = require("extend");
var extend_1 = __importDefault(require("extend"));
var utils_1 = require("../utils");

@@ -76,3 +79,3 @@ var authenticator_1 = require("./authenticator");

return new Promise(function (resolve) {
requestOptions.headers = extend(true, {}, requestOptions.headers, _this.authHeader);
requestOptions.headers = extend_1.default(true, {}, requestOptions.headers, _this.authHeader);
resolve();

@@ -79,0 +82,0 @@ });

@@ -30,4 +30,7 @@ "use strict";

})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var extend = require("extend");
var extend_1 = __importDefault(require("extend"));
var utils_1 = require("../utils");

@@ -84,3 +87,3 @@ var authenticator_1 = require("./authenticator");

var authHeader = { Authorization: "Bearer " + _this.bearerToken };
requestOptions.headers = extend(true, {}, requestOptions.headers, authHeader);
requestOptions.headers = extend_1.default(true, {}, requestOptions.headers, authHeader);
resolve();

@@ -87,0 +90,0 @@ });

@@ -30,4 +30,7 @@ "use strict";

})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var extend = require("extend");
var extend_1 = __importDefault(require("extend"));
var token_managers_1 = require("../token-managers");

@@ -110,3 +113,3 @@ var authenticator_1 = require("./authenticator");

var authHeader = { Authorization: "Bearer " + token };
requestOptions.headers = extend(true, {}, requestOptions.headers, authHeader);
requestOptions.headers = extend_1.default(true, {}, requestOptions.headers, authHeader);
});

@@ -113,0 +116,0 @@ };

@@ -66,4 +66,7 @@ "use strict";

};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var logger_1 = require("../../lib/logger");
var logger_1 = __importDefault(require("../../lib/logger"));
var utils_1 = require("../utils");

@@ -70,0 +73,0 @@ var iam_request_based_token_manager_1 = require("./iam-request-based-token-manager");

@@ -30,4 +30,7 @@ "use strict";

})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var extend = require("extend");
var extend_1 = __importDefault(require("extend"));
var utils_1 = require("../utils");

@@ -90,3 +93,3 @@ var jwt_token_manager_1 = require("./jwt-token-manager");

method: 'POST',
headers: extend(true, {}, this.headers, requiredHeaders),
headers: extend_1.default(true, {}, this.headers, requiredHeaders),
rejectUnauthorized: !this.disableSslVerification,

@@ -93,0 +96,0 @@ },

@@ -30,5 +30,8 @@ "use strict";

})();
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var extend = require("extend");
var logger_1 = require("../../lib/logger");
var extend_1 = __importDefault(require("extend"));
var logger_1 = __importDefault(require("../../lib/logger"));
var utils_1 = require("../utils");

@@ -164,3 +167,3 @@ var jwt_token_manager_1 = require("./jwt-token-manager");

method: 'POST',
headers: extend(true, {}, this.headers, requiredHeaders),
headers: extend_1.default(true, {}, this.headers, requiredHeaders),
form: this.formData,

@@ -167,0 +170,0 @@ rejectUnauthorized: !this.disableSslVerification,

@@ -27,2 +27,5 @@ "use strict";

};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });

@@ -44,4 +47,4 @@ /**

*/
var jwt = require("jsonwebtoken");
var logger_1 = require("../../lib/logger");
var jsonwebtoken_1 = require("jsonwebtoken");
var logger_1 = __importDefault(require("../../lib/logger"));
var token_manager_1 = require("./token-manager");

@@ -104,3 +107,3 @@ /**

// exp is the time of expire and iat is the time of token retrieval
var decodedResponse = jwt.decode(this.accessToken);
var decodedResponse = jsonwebtoken_1.decode(this.accessToken);
if (!decodedResponse) {

@@ -107,0 +110,0 @@ var err = 'Access token recieved is not a valid JWT';

"use strict";
/* eslint-disable @typescript-eslint/no-unused-vars, class-methods-use-this */
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var helper_1 = require("../../lib/helper");
var logger_1 = require("../../lib/logger");
var logger_1 = __importDefault(require("../../lib/logger"));
var request_wrapper_1 = require("../../lib/request-wrapper");

@@ -7,0 +10,0 @@ var utils_1 = require("../utils");

@@ -66,4 +66,7 @@ "use strict";

};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var logger_1 = require("../../lib/logger");
var logger_1 = __importDefault(require("../../lib/logger"));
var utils_1 = require("../utils");

@@ -70,0 +73,0 @@ var jwt_token_manager_1 = require("./jwt-token-manager");

@@ -17,8 +17,11 @@ "use strict";

*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var dotenv = require("dotenv");
var fs = require("fs");
var os = require("os");
var path = require("path");
var logger_1 = require("../../lib/logger");
var dotenv_1 = require("dotenv");
var fs_1 = require("fs");
var os_1 = require("os");
var path_1 = require("path");
var logger_1 = __importDefault(require("../../lib/logger"));
// Putting all file-reading related code in this file to isolate the usage of the

@@ -32,3 +35,3 @@ // `fs` module, as it causes problems in browser environments.

function readCredentialsFile() {
if (!fs.existsSync) {
if (!fs_1.existsSync) {
return {};

@@ -42,3 +45,3 @@ }

var workingDir = constructFilepath(process.cwd());
var homeDir = constructFilepath(os.homedir());
var homeDir = constructFilepath(os_1.homedir());
var filepathToUse;

@@ -66,9 +69,9 @@ if (givenFilepath) {

}
var credsFile = fs.readFileSync(filepathToUse);
return dotenv.parse(credsFile);
var credsFile = fs_1.readFileSync(filepathToUse);
return dotenv_1.parse(credsFile);
}
exports.readCredentialsFile = readCredentialsFile;
function fileExistsAtPath(filepath) {
if (fs.existsSync(filepath)) {
var stats = fs.lstatSync(filepath);
if (fs_1.existsSync(filepath)) {
var stats = fs_1.lstatSync(filepath);
return stats.isFile() || stats.isSymbolicLink();

@@ -82,3 +85,3 @@ }

if (!filepath.endsWith(defaultCredsFilename)) {
filepath = path.join(filepath, defaultCredsFilename);
filepath = path_1.join(filepath, defaultCredsFilename);
}

@@ -89,3 +92,3 @@ return filepath;

function readCrTokenFile(filepath) {
if (!fs.existsSync) {
if (!fs_1.existsSync) {
return '';

@@ -96,3 +99,3 @@ }

if (fileExists) {
token = fs.readFileSync(filepath, 'utf8');
token = fs_1.readFileSync(filepath, 'utf8');
logger_1.default.debug("Successfully read CR token from file: " + filepath);

@@ -99,0 +102,0 @@ }

"use strict";
/* eslint-disable no-restricted-syntax */
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });

@@ -19,5 +22,5 @@ /**

*/
var camelcase = require("camelcase");
var isEmpty = require("lodash.isempty");
var logger_1 = require("../../lib/logger");
var camelcase_1 = __importDefault(require("camelcase"));
var lodash_isempty_1 = __importDefault(require("lodash.isempty"));
var logger_1 = __importDefault(require("../../lib/logger"));
var file_reading_helpers_1 = require("./file-reading-helpers");

@@ -48,6 +51,6 @@ /**

properties = filterPropertiesByServiceName(file_reading_helpers_1.readCredentialsFile(), serviceName);
if (isEmpty(properties)) {
if (lodash_isempty_1.default(properties)) {
properties = filterPropertiesByServiceName(process.env, serviceName);
}
if (isEmpty(properties)) {
if (lodash_isempty_1.default(properties)) {
properties = getPropertiesFromVCAP(serviceName);

@@ -74,3 +77,3 @@ }

if (key.startsWith(name)) {
var propName = camelcase(key.substring(name.length)); // remove the name from the front of the string and make camelcase
var propName = camelcase_1.default(key.substring(name.length)); // remove the name from the front of the string and make camelcase
credentials[propName] = envObj[key];

@@ -77,0 +80,0 @@ }

@@ -0,1 +1,8 @@

## [2.17.1](https://github.com/IBM/node-sdk-core/compare/v2.17.0...v2.17.1) (2021-12-06)
### Bug Fixes
* add new validateParams function ([#180](https://github.com/IBM/node-sdk-core/issues/180)) ([514d187](https://github.com/IBM/node-sdk-core/commit/514d187895cb1aa9ca5c642a9dcfccf8e09eb0ed))
# [2.17.0](https://github.com/IBM/node-sdk-core/compare/v2.16.0...v2.17.0) (2021-11-08)

@@ -2,0 +9,0 @@

@@ -20,2 +20,9 @@ "use strict";

}
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });

@@ -25,3 +32,3 @@ /**

*/
var unitTestUtils = require("./lib/sdk-test-helpers");
var unitTestUtils = __importStar(require("./lib/sdk-test-helpers"));
exports.unitTestUtils = unitTestUtils;

@@ -28,0 +35,0 @@ var base_service_1 = require("./lib/base-service");

@@ -28,6 +28,9 @@ "use strict";

};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var auth_1 = require("../auth");
var helper_1 = require("./helper");
var logger_1 = require("./logger");
var logger_1 = __importDefault(require("./logger"));
var request_wrapper_1 = require("./request-wrapper");

@@ -34,0 +37,0 @@ /**

@@ -68,2 +68,18 @@ /**

/**
* Validates that "params" contains a value for each key listed in "requiredParams",
* and that each key contained in "params" is a valid key listed in "allParams".
* In essence, we want params to contain only valid keys and we want params
* to contain at least the required keys.
*
* @param params - the "params" object passed into an operation containing method parameters.
* @param requiredParams - the names of required parameters.
* If null, then the "required params" check is bypassed.
* @param allParams - the names of all valid parameters.
* If null, then the "valid params" check is bypassed.
* @returns {Error|null}
*/
export declare function validateParams(params: {
[key: string]: any;
}, requiredParams: string[], allParams: string[]): null | Error;
/**
* Return true if 'text' is html

@@ -70,0 +86,0 @@ * @param {string} text - The 'text' to analyze

@@ -24,8 +24,11 @@ "use strict";

};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var fileType = require("file-type");
var file_type_1 = __importDefault(require("file-type"));
var isstream_1 = require("isstream");
var mime_types_1 = require("mime-types");
var path_1 = require("path");
var logger_1 = require("./logger");
var logger_1 = __importDefault(require("./logger"));
// custom type guards

@@ -59,3 +62,3 @@ function isFileObject(obj) {

// if the inputData is a NodeJS.ReadableStream
var mimeType = mime_types_1.lookup(inputData.path);
var mimeType = mime_types_1.lookup(inputData.path); // TODO: cleue quick hack, per type definition path could also be a Buffer
contentType = { mime: mimeType || null };

@@ -65,3 +68,3 @@ }

// if the inputData is a Buffer
contentType = fileType(inputData);
contentType = file_type_1.default(inputData);
}

@@ -124,2 +127,54 @@ return contentType ? contentType.mime : null;

/**
* Validates that "params" contains a value for each key listed in "requiredParams",
* and that each key contained in "params" is a valid key listed in "allParams".
* In essence, we want params to contain only valid keys and we want params
* to contain at least the required keys.
*
* @param params - the "params" object passed into an operation containing method parameters.
* @param requiredParams - the names of required parameters.
* If null, then the "required params" check is bypassed.
* @param allParams - the names of all valid parameters.
* If null, then the "valid params" check is bypassed.
* @returns {Error|null}
*/
function validateParams(params, requiredParams, allParams) {
var missing = [];
var invalid = [];
// If there are any required fields, then make sure they are present in "params".
if (requiredParams) {
if (!params) {
missing = requiredParams;
}
else {
requiredParams.forEach(function (require) {
if (isMissing(params[require])) {
missing.push(require);
}
});
}
}
// Make sure that each field specified in "params" is a valid param.
if (allParams && params) {
Object.keys(params).forEach(function (key) {
if (!allParams.includes(key)) {
invalid.push(key);
}
});
}
// If no errors found, then bail now.
if (missing.length === 0 && invalid.length === 0) {
return null;
}
// Return an Error object identifying the errors we found.
var errorMsg = 'Parameter validation errors:';
if (missing.length > 0) {
errorMsg += "\n Missing required parameters: " + missing.join(', ');
}
if (invalid.length > 0) {
errorMsg += "\n Found invalid parameters: " + invalid.join(', ');
}
return new Error(errorMsg);
}
exports.validateParams = validateParams;
/**
* Returns true if value is determined to be "missing". Currently defining "missing"

@@ -126,0 +181,0 @@ * as `undefined`, `null`, or the empty string.

@@ -16,9 +16,10 @@ /**

*/
import logger from 'debug';
declare const _default: {
debug: any;
error: any;
info: any;
verbose: any;
warn: any;
debug: logger.Debugger;
error: logger.Debugger;
info: logger.Debugger;
verbose: logger.Debugger;
warn: logger.Debugger;
};
export default _default;

@@ -17,9 +17,12 @@ "use strict";

*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var logger = require("debug");
var debug = logger('ibm-cloud-sdk-core:debug');
var error = logger('ibm-cloud-sdk-core:error');
var info = logger('ibm-cloud-sdk-core:info');
var verbose = logger('ibm-cloud-sdk-core:verbose');
var warn = logger('ibm-cloud-sdk-core:warning');
var debug_1 = __importDefault(require("debug"));
var debug = debug_1.default('ibm-cloud-sdk-core:debug');
var error = debug_1.default('ibm-cloud-sdk-core:error');
var info = debug_1.default('ibm-cloud-sdk-core:info');
var verbose = debug_1.default('ibm-cloud-sdk-core:verbose');
var warn = debug_1.default('ibm-cloud-sdk-core:warning');
// enable loggers if axios flag is set & mimic log levels severity

@@ -26,0 +29,0 @@ if (process.env.NODE_DEBUG === 'axios') {

@@ -50,2 +50,12 @@ "use strict";

};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });

@@ -67,13 +77,13 @@ /**

*/
var axios_1 = require("axios");
var rax = require("retry-axios");
var axios_cookiejar_support_1 = require("axios-cookiejar-support");
var extend = require("extend");
var FormData = require("form-data");
var https = require("https");
var isStream = require("isstream");
var querystring = require("querystring");
var zlib = require("zlib");
var axios_1 = __importDefault(require("axios"));
var rax = __importStar(require("retry-axios"));
var axios_cookiejar_support_1 = __importDefault(require("axios-cookiejar-support"));
var extend_1 = __importDefault(require("extend"));
var form_data_1 = __importDefault(require("form-data"));
var https_1 = require("https");
var isstream_1 = __importDefault(require("isstream"));
var querystring_1 = require("querystring");
var zlib_1 = require("zlib");
var helper_1 = require("./helper");
var logger_1 = require("./logger");
var logger_1 = __importDefault(require("./logger"));
var stream_to_promise_1 = require("./stream-to-promise");

@@ -104,3 +114,3 @@ var RequestWrapper = /** @class */ (function () {

// merge axios config into default
extend(true, axiosConfig, axiosOptions);
extend_1.default(true, axiosConfig, axiosOptions);
// if the user explicitly sets `disableSslVerification` to true,

@@ -118,3 +128,3 @@ // `rejectUnauthorized` must be set to false in the https agent

// if no agent is present, create a new one
axiosConfig.httpsAgent = new https.Agent({
axiosConfig.httpsAgent = new https_1.Agent({
rejectUnauthorized: false,

@@ -204,6 +214,6 @@ });

case 0:
options = extend(true, {}, parameters.defaultOptions, parameters.options);
options = extend_1.default(true, {}, parameters.defaultOptions, parameters.options);
path = options.path, body = options.body, form = options.form, formData = options.formData, qs = options.qs, method = options.method, serviceUrl = options.serviceUrl;
headers = options.headers, url = options.url;
multipartForm = new FormData();
multipartForm = new form_data_1.default();
// Form params

@@ -254,3 +264,3 @@ if (formData) {

if (form) {
data = querystring.stringify(form);
data = querystring_1.stringify(form);
headers['Content-type'] = 'application/x-www-form-urlencoded';

@@ -261,3 +271,3 @@ }

// form-data generates headers that MUST be included or the request will fail
headers = extend(true, {}, headers, multipartForm.getHeaders());
headers = extend_1.default(true, {}, headers, multipartForm.getHeaders());
}

@@ -280,3 +290,3 @@ // accept gzip encoded responses if Accept-Encoding is not already set

responseType: options.responseType || 'json',
paramsSerializer: function (params) { return querystring.stringify(params); },
paramsSerializer: function (params) { return querystring_1.stringify(params); },
};

@@ -423,3 +433,3 @@ return [2 /*return*/, this.axiosInstance(requestParams).then(function (res) {

_c.trys.push([1, 5, , 6]);
if (!isStream(data)) return [3 /*break*/, 3];
if (!isstream_1.default(data)) return [3 /*break*/, 3];
_b = (_a = Buffer).from;

@@ -447,3 +457,3 @@ return [4 /*yield*/, stream_to_promise_1.streamToPromise(data)];

try {
data = zlib.gzipSync(reqBuffer);
data = zlib_1.gzipSync(reqBuffer);
// update the headers by reference - only if the data was actually compressed

@@ -450,0 +460,0 @@ headers['Content-Encoding'] = 'gzip';

@@ -17,4 +17,7 @@ "use strict";

*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var expect = require("expect");
var expect_1 = __importDefault(require("expect"));
/**

@@ -35,4 +38,4 @@ * This module provides a set of helper methods used to reduce code duplication in the generated unit tests

function checkUrlAndMethod(options, url, method) {
expect(options.url).toEqual(url);
expect(options.method).toEqual(method);
expect_1.default(options.url).toEqual(url);
expect_1.default(options.method).toEqual(method);
}

@@ -52,4 +55,4 @@ exports.checkUrlAndMethod = checkUrlAndMethod;

var headers = createRequestMock.mock.calls[0][0].defaultOptions.headers;
expect(headers.Accept).toEqual(accept);
expect(headers['Content-Type']).toEqual(contentType);
expect_1.default(headers.Accept).toEqual(accept);
expect_1.default(headers['Content-Type']).toEqual(contentType);
}

@@ -69,3 +72,3 @@ exports.checkMediaHeaders = checkMediaHeaders;

var headers = createRequestMock.mock.calls[0][0].defaultOptions.headers;
expect(headers[userHeaderName]).toEqual(userHeaderValue);
expect_1.default(headers[userHeaderName]).toEqual(userHeaderValue);
}

@@ -82,3 +85,3 @@ exports.checkUserHeader = checkUserHeader;

var sdkParams = createRequestMock.mock.calls[0][0];
expect(typeof sdkParams).toEqual('object');
expect_1.default(typeof sdkParams).toEqual('object');
}

@@ -106,4 +109,4 @@ exports.checkForSuccessfulExecution = checkForSuccessfulExecution;

function expectToBePromise(sdkPromise) {
expect(typeof sdkPromise.then).toBe('function');
expect_1.default(typeof sdkPromise.then).toBe('function');
}
exports.expectToBePromise = expectToBePromise;
{
"name": "ibm-cloud-sdk-core",
"version": "2.17.0",
"version": "2.17.1",
"description": "Core functionality to support SDKs generated with IBM's OpenAPI SDK Generator.",
"main": "index",
"main": "index.js",
"module": "./es/index.js",
"typings": "./es/index.d.ts",
"sideEffects": false,
"repository": {

@@ -76,6 +79,14 @@ "type": "git",

"test-travis": "jest --runInBand test/unit/",
"report-coverage": "codecov",
"build": "tsc",
"build:clean": "rimraf dist",
"build": "npm-run-all build:code build:doc copy:pkg",
"build:code": "npm-run-all -p build:umd build:es",
"build:umd": "tsc",
"build:es": "tsc -p tsconfig-es6.json",
"build:api": "api-extractor run --local",
"build:md": "api-documenter markdown -i temp --output-folder build/docs",
"build:doc": "npm-run-all build:api build:md copy:doc",
"copy:doc": "cpx \"temp/ibm-cloud-sdk-core.api.json\" dist/docs",
"copy:pkg": "package-json-reducer -s \"config devDependencies directories scripts jestSonar jest\" -o ./dist/package.json package.json",
"postversion": "tsc-publish --no-checks --dry-run",
"all": "npm run build && npm run test && npm run lint"
"all": "npm-run-all build test lint"
},

@@ -82,0 +93,0 @@ "jest": {

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc