@aws-sdk/util-user-agent-node
Advanced tools
Comparing version 3.0.0 to 3.1.0
@@ -6,2 +6,13 @@ # Change Log | ||
# [3.1.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.0.0...v3.1.0) (2020-12-23) | ||
### Features | ||
* standardize user agent value ([#1775](https://github.com/aws/aws-sdk-js-v3/issues/1775)) ([388b180](https://github.com/aws/aws-sdk-js-v3/commit/388b18071146171b42d283a93f9590cb23956e1a)) | ||
# [3.0.0](https://github.com/aws/aws-sdk-js-v3/compare/v1.0.0-rc.10...v3.0.0) (2020-12-15) | ||
@@ -8,0 +19,0 @@ |
@@ -1,1 +0,12 @@ | ||
export declare function defaultUserAgent(packageName: string, packageVersion: string): string; | ||
import { Provider, UserAgent } from "@aws-sdk/types"; | ||
export declare const UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID"; | ||
export declare const UA_APP_ID_INI_NAME = "sdk-ua-app-id"; | ||
interface DefaultUserAgentOptions { | ||
serviceId?: string; | ||
clientVersion: string; | ||
} | ||
/** | ||
* Collect metrics from runtime to put into user agent. | ||
*/ | ||
export declare const defaultUserAgent: ({ serviceId, clientVersion, }: DefaultUserAgentOptions) => Provider<UserAgent>; | ||
export {}; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.defaultUserAgent = void 0; | ||
const tslib_1 = require("tslib"); | ||
const process_1 = tslib_1.__importDefault(require("process")); | ||
function defaultUserAgent(packageName, packageVersion) { | ||
let engine = `${process_1.default.platform}/${process_1.default.version}`; | ||
if (process_1.default.env.AWS_EXECUTION_ENV) { | ||
engine += ` exec-env/${process_1.default.env.AWS_EXECUTION_ENV}`; | ||
exports.defaultUserAgent = exports.UA_APP_ID_INI_NAME = exports.UA_APP_ID_ENV_NAME = void 0; | ||
const node_config_provider_1 = require("@aws-sdk/node-config-provider"); | ||
const os_1 = require("os"); | ||
const process_1 = require("process"); | ||
exports.UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID"; | ||
exports.UA_APP_ID_INI_NAME = "sdk-ua-app-id"; | ||
/** | ||
* Collect metrics from runtime to put into user agent. | ||
*/ | ||
const defaultUserAgent = ({ serviceId, clientVersion, }) => async () => { | ||
const sections = [ | ||
// sdk-metadata | ||
["aws-sdk-js", clientVersion], | ||
// os-metadata | ||
[`os/${os_1.platform()}`, os_1.release()], | ||
// language-metadata | ||
// ECMAScript edition doesn't matter in JS, so no version needed. | ||
["lang/js"], | ||
["md/nodejs", `${process_1.versions.node}`], | ||
]; | ||
if (serviceId) { | ||
// api-metadata | ||
// service Id may not appear in non-AWS clients | ||
sections.push([`api/${serviceId}`, clientVersion]); | ||
} | ||
return `aws-sdk-nodejs-v3-${packageName}/${packageVersion} ${engine}`; | ||
} | ||
if (process_1.env.AWS_EXECUTION_ENV) { | ||
// env-metadata | ||
sections.push([`exec-env/${process_1.env.AWS_EXECUTION_ENV}`]); | ||
} | ||
const appId = await node_config_provider_1.loadConfig({ | ||
environmentVariableSelector: (env) => env[exports.UA_APP_ID_ENV_NAME], | ||
configFileSelector: (profile) => profile[exports.UA_APP_ID_INI_NAME], | ||
default: undefined, | ||
})(); | ||
if (appId) { | ||
sections.push([`app/${appId}`]); | ||
} | ||
return sections; | ||
}; | ||
exports.defaultUserAgent = defaultUserAgent; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLDhEQUE4QjtBQUU5QixTQUFnQixnQkFBZ0IsQ0FBQyxXQUFtQixFQUFFLGNBQXNCO0lBQzFFLElBQUksTUFBTSxHQUFHLEdBQUcsaUJBQU8sQ0FBQyxRQUFRLElBQUksaUJBQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN0RCxJQUFJLGlCQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFO1FBQ2pDLE1BQU0sSUFBSSxhQUFhLGlCQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLENBQUM7S0FDeEQ7SUFDRCxPQUFPLHFCQUFxQixXQUFXLElBQUksY0FBYyxJQUFJLE1BQU0sRUFBRSxDQUFDO0FBQ3hFLENBQUM7QUFORCw0Q0FNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwcm9jZXNzIGZyb20gXCJwcm9jZXNzXCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWZhdWx0VXNlckFnZW50KHBhY2thZ2VOYW1lOiBzdHJpbmcsIHBhY2thZ2VWZXJzaW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuICBsZXQgZW5naW5lID0gYCR7cHJvY2Vzcy5wbGF0Zm9ybX0vJHtwcm9jZXNzLnZlcnNpb259YDtcbiAgaWYgKHByb2Nlc3MuZW52LkFXU19FWEVDVVRJT05fRU5WKSB7XG4gICAgZW5naW5lICs9IGAgZXhlYy1lbnYvJHtwcm9jZXNzLmVudi5BV1NfRVhFQ1VUSU9OX0VOVn1gO1xuICB9XG4gIHJldHVybiBgYXdzLXNkay1ub2RlanMtdjMtJHtwYWNrYWdlTmFtZX0vJHtwYWNrYWdlVmVyc2lvbn0gJHtlbmdpbmV9YDtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0VBQTJEO0FBRTNELDJCQUF1QztBQUN2QyxxQ0FBd0M7QUFFM0IsUUFBQSxrQkFBa0IsR0FBRyxtQkFBbUIsQ0FBQztBQUN6QyxRQUFBLGtCQUFrQixHQUFHLGVBQWUsQ0FBQztBQU9sRDs7R0FFRztBQUNJLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxFQUMvQixTQUFTLEVBQ1QsYUFBYSxHQUNXLEVBQXVCLEVBQUUsQ0FBQyxLQUFLLElBQUksRUFBRTtJQUM3RCxNQUFNLFFBQVEsR0FBYztRQUMxQixlQUFlO1FBQ2YsQ0FBQyxZQUFZLEVBQUUsYUFBYSxDQUFDO1FBQzdCLGNBQWM7UUFDZCxDQUFDLE1BQU0sYUFBUSxFQUFFLEVBQUUsRUFBRSxZQUFPLEVBQUUsQ0FBQztRQUMvQixvQkFBb0I7UUFDcEIsaUVBQWlFO1FBQ2pFLENBQUMsU0FBUyxDQUFDO1FBQ1gsQ0FBQyxXQUFXLEVBQUUsR0FBRyxrQkFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0tBQ2xDLENBQUM7SUFFRixJQUFJLFNBQVMsRUFBRTtRQUNiLGVBQWU7UUFDZiwrQ0FBK0M7UUFDL0MsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sU0FBUyxFQUFFLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztLQUNwRDtJQUVELElBQUksYUFBRyxDQUFDLGlCQUFpQixFQUFFO1FBQ3pCLGVBQWU7UUFDZixRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWSxhQUFHLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FDdEQ7SUFFRCxNQUFNLEtBQUssR0FBRyxNQUFNLGlDQUFVLENBQXFCO1FBQ2pELDJCQUEyQixFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsMEJBQWtCLENBQUM7UUFDN0Qsa0JBQWtCLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQywwQkFBa0IsQ0FBQztRQUM1RCxPQUFPLEVBQUUsU0FBUztLQUNuQixDQUFDLEVBQUUsQ0FBQztJQUNMLElBQUksS0FBSyxFQUFFO1FBQ1QsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0tBQ2pDO0lBRUQsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQyxDQUFDO0FBcENXLFFBQUEsZ0JBQWdCLG9CQW9DM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBsb2FkQ29uZmlnIH0gZnJvbSBcIkBhd3Mtc2RrL25vZGUtY29uZmlnLXByb3ZpZGVyXCI7XG5pbXBvcnQgeyBQcm92aWRlciwgVXNlckFnZW50IH0gZnJvbSBcIkBhd3Mtc2RrL3R5cGVzXCI7XG5pbXBvcnQgeyBwbGF0Zm9ybSwgcmVsZWFzZSB9IGZyb20gXCJvc1wiO1xuaW1wb3J0IHsgZW52LCB2ZXJzaW9ucyB9IGZyb20gXCJwcm9jZXNzXCI7XG5cbmV4cG9ydCBjb25zdCBVQV9BUFBfSURfRU5WX05BTUUgPSBcIkFXU19TREtfVUFfQVBQX0lEXCI7XG5leHBvcnQgY29uc3QgVUFfQVBQX0lEX0lOSV9OQU1FID0gXCJzZGstdWEtYXBwLWlkXCI7XG5cbmludGVyZmFjZSBEZWZhdWx0VXNlckFnZW50T3B0aW9ucyB7XG4gIHNlcnZpY2VJZD86IHN0cmluZztcbiAgY2xpZW50VmVyc2lvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbGxlY3QgbWV0cmljcyBmcm9tIHJ1bnRpbWUgdG8gcHV0IGludG8gdXNlciBhZ2VudC5cbiAqL1xuZXhwb3J0IGNvbnN0IGRlZmF1bHRVc2VyQWdlbnQgPSAoe1xuICBzZXJ2aWNlSWQsXG4gIGNsaWVudFZlcnNpb24sXG59OiBEZWZhdWx0VXNlckFnZW50T3B0aW9ucyk6IFByb3ZpZGVyPFVzZXJBZ2VudD4gPT4gYXN5bmMgKCkgPT4ge1xuICBjb25zdCBzZWN0aW9uczogVXNlckFnZW50ID0gW1xuICAgIC8vIHNkay1tZXRhZGF0YVxuICAgIFtcImF3cy1zZGstanNcIiwgY2xpZW50VmVyc2lvbl0sXG4gICAgLy8gb3MtbWV0YWRhdGFcbiAgICBbYG9zLyR7cGxhdGZvcm0oKX1gLCByZWxlYXNlKCldLFxuICAgIC8vIGxhbmd1YWdlLW1ldGFkYXRhXG4gICAgLy8gRUNNQVNjcmlwdCBlZGl0aW9uIGRvZXNuJ3QgbWF0dGVyIGluIEpTLCBzbyBubyB2ZXJzaW9uIG5lZWRlZC5cbiAgICBbXCJsYW5nL2pzXCJdLFxuICAgIFtcIm1kL25vZGVqc1wiLCBgJHt2ZXJzaW9ucy5ub2RlfWBdLFxuICBdO1xuXG4gIGlmIChzZXJ2aWNlSWQpIHtcbiAgICAvLyBhcGktbWV0YWRhdGFcbiAgICAvLyBzZXJ2aWNlIElkIG1heSBub3QgYXBwZWFyIGluIG5vbi1BV1MgY2xpZW50c1xuICAgIHNlY3Rpb25zLnB1c2goW2BhcGkvJHtzZXJ2aWNlSWR9YCwgY2xpZW50VmVyc2lvbl0pO1xuICB9XG5cbiAgaWYgKGVudi5BV1NfRVhFQ1VUSU9OX0VOVikge1xuICAgIC8vIGVudi1tZXRhZGF0YVxuICAgIHNlY3Rpb25zLnB1c2goW2BleGVjLWVudi8ke2Vudi5BV1NfRVhFQ1VUSU9OX0VOVn1gXSk7XG4gIH1cblxuICBjb25zdCBhcHBJZCA9IGF3YWl0IGxvYWRDb25maWc8c3RyaW5nIHwgdW5kZWZpbmVkPih7XG4gICAgZW52aXJvbm1lbnRWYXJpYWJsZVNlbGVjdG9yOiAoZW52KSA9PiBlbnZbVUFfQVBQX0lEX0VOVl9OQU1FXSxcbiAgICBjb25maWdGaWxlU2VsZWN0b3I6IChwcm9maWxlKSA9PiBwcm9maWxlW1VBX0FQUF9JRF9JTklfTkFNRV0sXG4gICAgZGVmYXVsdDogdW5kZWZpbmVkLFxuICB9KSgpO1xuICBpZiAoYXBwSWQpIHtcbiAgICBzZWN0aW9ucy5wdXNoKFtgYXBwLyR7YXBwSWR9YF0pO1xuICB9XG5cbiAgcmV0dXJuIHNlY3Rpb25zO1xufTtcbiJdfQ== |
@@ -1,1 +0,12 @@ | ||
export declare function defaultUserAgent(packageName: string, packageVersion: string): string; | ||
import { Provider, UserAgent } from "@aws-sdk/types"; | ||
export declare const UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID"; | ||
export declare const UA_APP_ID_INI_NAME = "sdk-ua-app-id"; | ||
interface DefaultUserAgentOptions { | ||
serviceId?: string; | ||
clientVersion: string; | ||
} | ||
/** | ||
* Collect metrics from runtime to put into user agent. | ||
*/ | ||
export declare const defaultUserAgent: ({ serviceId, clientVersion, }: DefaultUserAgentOptions) => Provider<UserAgent>; | ||
export {}; |
@@ -1,9 +0,51 @@ | ||
import process from "process"; | ||
export function defaultUserAgent(packageName, packageVersion) { | ||
var engine = process.platform + "/" + process.version; | ||
if (process.env.AWS_EXECUTION_ENV) { | ||
engine += " exec-env/" + process.env.AWS_EXECUTION_ENV; | ||
} | ||
return "aws-sdk-nodejs-v3-" + packageName + "/" + packageVersion + " " + engine; | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxPQUFPLE1BQU0sU0FBUyxDQUFDO0FBRTlCLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxXQUFtQixFQUFFLGNBQXNCO0lBQzFFLElBQUksTUFBTSxHQUFNLE9BQU8sQ0FBQyxRQUFRLFNBQUksT0FBTyxDQUFDLE9BQVMsQ0FBQztJQUN0RCxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUU7UUFDakMsTUFBTSxJQUFJLGVBQWEsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBbUIsQ0FBQztLQUN4RDtJQUNELE9BQU8sdUJBQXFCLFdBQVcsU0FBSSxjQUFjLFNBQUksTUFBUSxDQUFDO0FBQ3hFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcHJvY2VzcyBmcm9tIFwicHJvY2Vzc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZGVmYXVsdFVzZXJBZ2VudChwYWNrYWdlTmFtZTogc3RyaW5nLCBwYWNrYWdlVmVyc2lvbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgbGV0IGVuZ2luZSA9IGAke3Byb2Nlc3MucGxhdGZvcm19LyR7cHJvY2Vzcy52ZXJzaW9ufWA7XG4gIGlmIChwcm9jZXNzLmVudi5BV1NfRVhFQ1VUSU9OX0VOVikge1xuICAgIGVuZ2luZSArPSBgIGV4ZWMtZW52LyR7cHJvY2Vzcy5lbnYuQVdTX0VYRUNVVElPTl9FTlZ9YDtcbiAgfVxuICByZXR1cm4gYGF3cy1zZGstbm9kZWpzLXYzLSR7cGFja2FnZU5hbWV9LyR7cGFja2FnZVZlcnNpb259ICR7ZW5naW5lfWA7XG59XG4iXX0= | ||
import { __awaiter, __generator } from "tslib"; | ||
import { loadConfig } from "@aws-sdk/node-config-provider"; | ||
import { platform, release } from "os"; | ||
import { env, versions } from "process"; | ||
export var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID"; | ||
export var UA_APP_ID_INI_NAME = "sdk-ua-app-id"; | ||
/** | ||
* Collect metrics from runtime to put into user agent. | ||
*/ | ||
export var defaultUserAgent = function (_a) { | ||
var serviceId = _a.serviceId, clientVersion = _a.clientVersion; | ||
return function () { return __awaiter(void 0, void 0, void 0, function () { | ||
var sections, appId; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
sections = [ | ||
// sdk-metadata | ||
["aws-sdk-js", clientVersion], | ||
// os-metadata | ||
["os/" + platform(), release()], | ||
// language-metadata | ||
// ECMAScript edition doesn't matter in JS, so no version needed. | ||
["lang/js"], | ||
["md/nodejs", "" + versions.node], | ||
]; | ||
if (serviceId) { | ||
// api-metadata | ||
// service Id may not appear in non-AWS clients | ||
sections.push(["api/" + serviceId, clientVersion]); | ||
} | ||
if (env.AWS_EXECUTION_ENV) { | ||
// env-metadata | ||
sections.push(["exec-env/" + env.AWS_EXECUTION_ENV]); | ||
} | ||
return [4 /*yield*/, loadConfig({ | ||
environmentVariableSelector: function (env) { return env[UA_APP_ID_ENV_NAME]; }, | ||
configFileSelector: function (profile) { return profile[UA_APP_ID_INI_NAME]; }, | ||
default: undefined, | ||
})()]; | ||
case 1: | ||
appId = _a.sent(); | ||
if (appId) { | ||
sections.push(["app/" + appId]); | ||
} | ||
return [2 /*return*/, sections]; | ||
} | ||
}); | ||
}); }; | ||
}; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUN2QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV4QyxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRyxtQkFBbUIsQ0FBQztBQUN0RCxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRyxlQUFlLENBQUM7QUFPbEQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsSUFBTSxnQkFBZ0IsR0FBRyxVQUFDLEVBR1A7UUFGeEIsU0FBUyxlQUFBLEVBQ1QsYUFBYSxtQkFBQTtJQUNxQyxPQUFBOzs7OztvQkFDNUMsUUFBUSxHQUFjO3dCQUMxQixlQUFlO3dCQUNmLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQzt3QkFDN0IsY0FBYzt3QkFDZCxDQUFDLFFBQU0sUUFBUSxFQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7d0JBQy9CLG9CQUFvQjt3QkFDcEIsaUVBQWlFO3dCQUNqRSxDQUFDLFNBQVMsQ0FBQzt3QkFDWCxDQUFDLFdBQVcsRUFBRSxLQUFHLFFBQVEsQ0FBQyxJQUFNLENBQUM7cUJBQ2xDLENBQUM7b0JBRUYsSUFBSSxTQUFTLEVBQUU7d0JBQ2IsZUFBZTt3QkFDZiwrQ0FBK0M7d0JBQy9DLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFPLFNBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO3FCQUNwRDtvQkFFRCxJQUFJLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRTt3QkFDekIsZUFBZTt3QkFDZixRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsY0FBWSxHQUFHLENBQUMsaUJBQW1CLENBQUMsQ0FBQyxDQUFDO3FCQUN0RDtvQkFFYSxxQkFBTSxVQUFVLENBQXFCOzRCQUNqRCwyQkFBMkIsRUFBRSxVQUFDLEdBQUcsSUFBSyxPQUFBLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxFQUF2QixDQUF1Qjs0QkFDN0Qsa0JBQWtCLEVBQUUsVUFBQyxPQUFPLElBQUssT0FBQSxPQUFPLENBQUMsa0JBQWtCLENBQUMsRUFBM0IsQ0FBMkI7NEJBQzVELE9BQU8sRUFBRSxTQUFTO3lCQUNuQixDQUFDLEVBQUUsRUFBQTs7b0JBSkUsS0FBSyxHQUFHLFNBSVY7b0JBQ0osSUFBSSxLQUFLLEVBQUU7d0JBQ1QsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQU8sS0FBTyxDQUFDLENBQUMsQ0FBQztxQkFDakM7b0JBRUQsc0JBQU8sUUFBUSxFQUFDOzs7U0FDakI7QUFqQ21ELENBaUNuRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9hZENvbmZpZyB9IGZyb20gXCJAYXdzLXNkay9ub2RlLWNvbmZpZy1wcm92aWRlclwiO1xuaW1wb3J0IHsgUHJvdmlkZXIsIFVzZXJBZ2VudCB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgcGxhdGZvcm0sIHJlbGVhc2UgfSBmcm9tIFwib3NcIjtcbmltcG9ydCB7IGVudiwgdmVyc2lvbnMgfSBmcm9tIFwicHJvY2Vzc1wiO1xuXG5leHBvcnQgY29uc3QgVUFfQVBQX0lEX0VOVl9OQU1FID0gXCJBV1NfU0RLX1VBX0FQUF9JRFwiO1xuZXhwb3J0IGNvbnN0IFVBX0FQUF9JRF9JTklfTkFNRSA9IFwic2RrLXVhLWFwcC1pZFwiO1xuXG5pbnRlcmZhY2UgRGVmYXVsdFVzZXJBZ2VudE9wdGlvbnMge1xuICBzZXJ2aWNlSWQ/OiBzdHJpbmc7XG4gIGNsaWVudFZlcnNpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb2xsZWN0IG1ldHJpY3MgZnJvbSBydW50aW1lIHRvIHB1dCBpbnRvIHVzZXIgYWdlbnQuXG4gKi9cbmV4cG9ydCBjb25zdCBkZWZhdWx0VXNlckFnZW50ID0gKHtcbiAgc2VydmljZUlkLFxuICBjbGllbnRWZXJzaW9uLFxufTogRGVmYXVsdFVzZXJBZ2VudE9wdGlvbnMpOiBQcm92aWRlcjxVc2VyQWdlbnQ+ID0+IGFzeW5jICgpID0+IHtcbiAgY29uc3Qgc2VjdGlvbnM6IFVzZXJBZ2VudCA9IFtcbiAgICAvLyBzZGstbWV0YWRhdGFcbiAgICBbXCJhd3Mtc2RrLWpzXCIsIGNsaWVudFZlcnNpb25dLFxuICAgIC8vIG9zLW1ldGFkYXRhXG4gICAgW2Bvcy8ke3BsYXRmb3JtKCl9YCwgcmVsZWFzZSgpXSxcbiAgICAvLyBsYW5ndWFnZS1tZXRhZGF0YVxuICAgIC8vIEVDTUFTY3JpcHQgZWRpdGlvbiBkb2Vzbid0IG1hdHRlciBpbiBKUywgc28gbm8gdmVyc2lvbiBuZWVkZWQuXG4gICAgW1wibGFuZy9qc1wiXSxcbiAgICBbXCJtZC9ub2RlanNcIiwgYCR7dmVyc2lvbnMubm9kZX1gXSxcbiAgXTtcblxuICBpZiAoc2VydmljZUlkKSB7XG4gICAgLy8gYXBpLW1ldGFkYXRhXG4gICAgLy8gc2VydmljZSBJZCBtYXkgbm90IGFwcGVhciBpbiBub24tQVdTIGNsaWVudHNcbiAgICBzZWN0aW9ucy5wdXNoKFtgYXBpLyR7c2VydmljZUlkfWAsIGNsaWVudFZlcnNpb25dKTtcbiAgfVxuXG4gIGlmIChlbnYuQVdTX0VYRUNVVElPTl9FTlYpIHtcbiAgICAvLyBlbnYtbWV0YWRhdGFcbiAgICBzZWN0aW9ucy5wdXNoKFtgZXhlYy1lbnYvJHtlbnYuQVdTX0VYRUNVVElPTl9FTlZ9YF0pO1xuICB9XG5cbiAgY29uc3QgYXBwSWQgPSBhd2FpdCBsb2FkQ29uZmlnPHN0cmluZyB8IHVuZGVmaW5lZD4oe1xuICAgIGVudmlyb25tZW50VmFyaWFibGVTZWxlY3RvcjogKGVudikgPT4gZW52W1VBX0FQUF9JRF9FTlZfTkFNRV0sXG4gICAgY29uZmlnRmlsZVNlbGVjdG9yOiAocHJvZmlsZSkgPT4gcHJvZmlsZVtVQV9BUFBfSURfSU5JX05BTUVdLFxuICAgIGRlZmF1bHQ6IHVuZGVmaW5lZCxcbiAgfSkoKTtcbiAgaWYgKGFwcElkKSB7XG4gICAgc2VjdGlvbnMucHVzaChbYGFwcC8ke2FwcElkfWBdKTtcbiAgfVxuXG4gIHJldHVybiBzZWN0aW9ucztcbn07XG4iXX0= |
{ | ||
"name": "@aws-sdk/util-user-agent-node", | ||
"version": "3.0.0", | ||
"version": "3.1.0", | ||
"scripts": { | ||
@@ -21,7 +21,8 @@ "prepublishOnly": "yarn build:cjs && yarn build:es", | ||
"dependencies": { | ||
"@aws-sdk/node-config-provider": "3.1.0", | ||
"@aws-sdk/types": "3.1.0", | ||
"tslib": "^1.8.0" | ||
}, | ||
"devDependencies": { | ||
"@aws-sdk/protocol-http": "3.0.0", | ||
"@aws-sdk/types": "3.0.0", | ||
"@aws-sdk/protocol-http": "3.1.0", | ||
"@types/jest": "^26.0.4", | ||
@@ -28,0 +29,0 @@ "@types/node": "^10.0.0", |
# @aws-sdk/util-user-agent-node | ||
[![NPM version](https://img.shields.io/npm/v/@aws-sdk/util-user-agent-node/rc.svg)](https://www.npmjs.com/package/@aws-sdk/util-user-agent-node) | ||
[![NPM version](https://img.shields.io/npm/v/@aws-sdk/util-user-agent-node/latest.svg)](https://www.npmjs.com/package/@aws-sdk/util-user-agent-node) | ||
[![NPM downloads](https://img.shields.io/npm/dm/@aws-sdk/util-user-agent-node.svg)](https://www.npmjs.com/package/@aws-sdk/util-user-agent-node) | ||
@@ -5,0 +5,0 @@ |
@@ -1,9 +0,53 @@ | ||
import process from "process"; | ||
import { loadConfig } from "@aws-sdk/node-config-provider"; | ||
import { Provider, UserAgent } from "@aws-sdk/types"; | ||
import { platform, release } from "os"; | ||
import { env, versions } from "process"; | ||
export function defaultUserAgent(packageName: string, packageVersion: string): string { | ||
let engine = `${process.platform}/${process.version}`; | ||
if (process.env.AWS_EXECUTION_ENV) { | ||
engine += ` exec-env/${process.env.AWS_EXECUTION_ENV}`; | ||
export const UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID"; | ||
export const UA_APP_ID_INI_NAME = "sdk-ua-app-id"; | ||
interface DefaultUserAgentOptions { | ||
serviceId?: string; | ||
clientVersion: string; | ||
} | ||
/** | ||
* Collect metrics from runtime to put into user agent. | ||
*/ | ||
export const defaultUserAgent = ({ | ||
serviceId, | ||
clientVersion, | ||
}: DefaultUserAgentOptions): Provider<UserAgent> => async () => { | ||
const sections: UserAgent = [ | ||
// sdk-metadata | ||
["aws-sdk-js", clientVersion], | ||
// os-metadata | ||
[`os/${platform()}`, release()], | ||
// language-metadata | ||
// ECMAScript edition doesn't matter in JS, so no version needed. | ||
["lang/js"], | ||
["md/nodejs", `${versions.node}`], | ||
]; | ||
if (serviceId) { | ||
// api-metadata | ||
// service Id may not appear in non-AWS clients | ||
sections.push([`api/${serviceId}`, clientVersion]); | ||
} | ||
return `aws-sdk-nodejs-v3-${packageName}/${packageVersion} ${engine}`; | ||
} | ||
if (env.AWS_EXECUTION_ENV) { | ||
// env-metadata | ||
sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]); | ||
} | ||
const appId = await loadConfig<string | undefined>({ | ||
environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME], | ||
configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME], | ||
default: undefined, | ||
})(); | ||
if (appId) { | ||
sections.push([`app/${appId}`]); | ||
} | ||
return sections; | ||
}; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 1 instance in 1 package
57885
5
180
0
3
1
+ Added@aws-sdk/types@3.1.0
+ Added@aws-sdk/node-config-provider@3.1.0(transitive)
+ Added@aws-sdk/property-provider@3.1.0(transitive)
+ Added@aws-sdk/shared-ini-file-loader@3.1.0(transitive)
+ Added@aws-sdk/types@3.1.0(transitive)