@aws-sdk/util-user-agent-node 3.34.0 → 3.38.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.
- package/CHANGELOG.md +35 -0
- package/dist-cjs/index.js +41 -0
- package/dist-cjs/is-crt-available.js +15 -0
- package/dist-es/index.js +47 -0
- package/dist-es/is-crt-available.js +11 -0
- package/{dist/types → dist-types}/index.d.ts +0 -0
- package/{dist/types → dist-types}/is-crt-available.d.ts +0 -0
- package/{dist/types → dist-types}/ts3.4/index.d.ts +1 -3
- package/{dist/types → dist-types}/ts3.4/is-crt-available.d.ts +0 -0
- package/package.json +13 -10
- package/dist/cjs/index.js +0 -42
- package/dist/cjs/is-crt-available.js +0 -16
- package/dist/es/index.js +0 -58
- package/dist/es/is-crt-available.js +0 -19
- package/src/index.ts +0 -61
- package/src/is-crt-available.ts +0 -19
- package/tsconfig.cjs.json +0 -9
- package/tsconfig.es.json +0 -9
- package/tsconfig.types.json +0 -9
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,41 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.38.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.37.0...v3.38.0) (2021-10-22)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @aws-sdk/util-user-agent-node
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [3.37.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.36.1...v3.37.0) (2021-10-15)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @aws-sdk/util-user-agent-node
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# [3.36.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.35.0...v3.36.0) (2021-10-08)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
* publish files in dist-* only ([#2873](https://github.com/aws/aws-sdk-js-v3/issues/2873)) ([53b4243](https://github.com/aws/aws-sdk-js-v3/commit/53b4243b066f25ff2412d5f0dea1036054b2df32))
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
# [3.35.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.34.0...v3.35.0) (2021-10-04)
|
|
34
|
+
|
|
35
|
+
**Note:** Version bump only for package @aws-sdk/util-user-agent-node
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
6
41
|
# [3.34.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.33.0...v3.34.0) (2021-09-24)
|
|
7
42
|
|
|
8
43
|
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.defaultUserAgent = exports.UA_APP_ID_INI_NAME = exports.UA_APP_ID_ENV_NAME = void 0;
|
|
4
|
+
const node_config_provider_1 = require("@aws-sdk/node-config-provider");
|
|
5
|
+
const os_1 = require("os");
|
|
6
|
+
const process_1 = require("process");
|
|
7
|
+
const is_crt_available_1 = require("./is-crt-available");
|
|
8
|
+
exports.UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
|
|
9
|
+
exports.UA_APP_ID_INI_NAME = "sdk-ua-app-id";
|
|
10
|
+
const defaultUserAgent = ({ serviceId, clientVersion }) => {
|
|
11
|
+
const sections = [
|
|
12
|
+
["aws-sdk-js", clientVersion],
|
|
13
|
+
[`os/${os_1.platform()}`, os_1.release()],
|
|
14
|
+
["lang/js"],
|
|
15
|
+
["md/nodejs", `${process_1.versions.node}`],
|
|
16
|
+
];
|
|
17
|
+
const crtAvailable = is_crt_available_1.isCrtAvailable();
|
|
18
|
+
if (crtAvailable) {
|
|
19
|
+
sections.push(crtAvailable);
|
|
20
|
+
}
|
|
21
|
+
if (serviceId) {
|
|
22
|
+
sections.push([`api/${serviceId}`, clientVersion]);
|
|
23
|
+
}
|
|
24
|
+
if (process_1.env.AWS_EXECUTION_ENV) {
|
|
25
|
+
sections.push([`exec-env/${process_1.env.AWS_EXECUTION_ENV}`]);
|
|
26
|
+
}
|
|
27
|
+
const appIdPromise = node_config_provider_1.loadConfig({
|
|
28
|
+
environmentVariableSelector: (env) => env[exports.UA_APP_ID_ENV_NAME],
|
|
29
|
+
configFileSelector: (profile) => profile[exports.UA_APP_ID_INI_NAME],
|
|
30
|
+
default: undefined,
|
|
31
|
+
})();
|
|
32
|
+
let resolvedUserAgent = undefined;
|
|
33
|
+
return async () => {
|
|
34
|
+
if (!resolvedUserAgent) {
|
|
35
|
+
const appId = await appIdPromise;
|
|
36
|
+
resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
|
|
37
|
+
}
|
|
38
|
+
return resolvedUserAgent;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
exports.defaultUserAgent = defaultUserAgent;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isCrtAvailable = void 0;
|
|
4
|
+
const isCrtAvailable = () => {
|
|
5
|
+
try {
|
|
6
|
+
if (typeof require === "function" && typeof module !== "undefined" && module.require && require("aws-crt")) {
|
|
7
|
+
return ["md/crt-avail"];
|
|
8
|
+
}
|
|
9
|
+
return null;
|
|
10
|
+
}
|
|
11
|
+
catch (e) {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
exports.isCrtAvailable = isCrtAvailable;
|
package/dist-es/index.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { __awaiter, __generator, __read, __spreadArray } from "tslib";
|
|
2
|
+
import { loadConfig } from "@aws-sdk/node-config-provider";
|
|
3
|
+
import { platform, release } from "os";
|
|
4
|
+
import { env, versions } from "process";
|
|
5
|
+
import { isCrtAvailable } from "./is-crt-available";
|
|
6
|
+
export var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
|
|
7
|
+
export var UA_APP_ID_INI_NAME = "sdk-ua-app-id";
|
|
8
|
+
export var defaultUserAgent = function (_a) {
|
|
9
|
+
var serviceId = _a.serviceId, clientVersion = _a.clientVersion;
|
|
10
|
+
var sections = [
|
|
11
|
+
["aws-sdk-js", clientVersion],
|
|
12
|
+
["os/" + platform(), release()],
|
|
13
|
+
["lang/js"],
|
|
14
|
+
["md/nodejs", "" + versions.node],
|
|
15
|
+
];
|
|
16
|
+
var crtAvailable = isCrtAvailable();
|
|
17
|
+
if (crtAvailable) {
|
|
18
|
+
sections.push(crtAvailable);
|
|
19
|
+
}
|
|
20
|
+
if (serviceId) {
|
|
21
|
+
sections.push(["api/" + serviceId, clientVersion]);
|
|
22
|
+
}
|
|
23
|
+
if (env.AWS_EXECUTION_ENV) {
|
|
24
|
+
sections.push(["exec-env/" + env.AWS_EXECUTION_ENV]);
|
|
25
|
+
}
|
|
26
|
+
var appIdPromise = loadConfig({
|
|
27
|
+
environmentVariableSelector: function (env) { return env[UA_APP_ID_ENV_NAME]; },
|
|
28
|
+
configFileSelector: function (profile) { return profile[UA_APP_ID_INI_NAME]; },
|
|
29
|
+
default: undefined,
|
|
30
|
+
})();
|
|
31
|
+
var resolvedUserAgent = undefined;
|
|
32
|
+
return function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
33
|
+
var appId;
|
|
34
|
+
return __generator(this, function (_a) {
|
|
35
|
+
switch (_a.label) {
|
|
36
|
+
case 0:
|
|
37
|
+
if (!!resolvedUserAgent) return [3, 2];
|
|
38
|
+
return [4, appIdPromise];
|
|
39
|
+
case 1:
|
|
40
|
+
appId = _a.sent();
|
|
41
|
+
resolvedUserAgent = appId ? __spreadArray(__spreadArray([], __read(sections)), [["app/" + appId]]) : __spreadArray([], __read(sections));
|
|
42
|
+
_a.label = 2;
|
|
43
|
+
case 2: return [2, resolvedUserAgent];
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
}); };
|
|
47
|
+
};
|
|
File without changes
|
|
File without changes
|
|
@@ -5,8 +5,6 @@ interface DefaultUserAgentOptions {
|
|
|
5
5
|
serviceId?: string;
|
|
6
6
|
clientVersion: string;
|
|
7
7
|
}
|
|
8
|
-
|
|
9
|
-
* Collect metrics from runtime to put into user agent.
|
|
10
|
-
*/
|
|
8
|
+
|
|
11
9
|
export declare const defaultUserAgent: ({ serviceId, clientVersion }: DefaultUserAgentOptions) => Provider<UserAgent>;
|
|
12
10
|
export {};
|
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/util-user-agent-node",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.38.0",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"build": "yarn build:cjs && yarn build:es && yarn build:types",
|
|
6
6
|
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
7
7
|
"build:es": "tsc -p tsconfig.es.json",
|
|
8
8
|
"build:types": "tsc -p tsconfig.types.json",
|
|
9
|
-
"downlevel-dts": "downlevel-dts dist
|
|
9
|
+
"downlevel-dts": "downlevel-dts dist-types dist-types/ts3.4",
|
|
10
10
|
"test": "jest"
|
|
11
11
|
},
|
|
12
|
-
"main": "./dist
|
|
13
|
-
"module": "./dist
|
|
14
|
-
"types": "./dist
|
|
12
|
+
"main": "./dist-cjs/index.js",
|
|
13
|
+
"module": "./dist-es/index.js",
|
|
14
|
+
"types": "./dist-types/index.d.ts",
|
|
15
15
|
"author": {
|
|
16
16
|
"name": "AWS SDK for JavaScript Team",
|
|
17
17
|
"url": "https://aws.amazon.com/javascript/"
|
|
18
18
|
},
|
|
19
19
|
"license": "Apache-2.0",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@aws-sdk/node-config-provider": "3.
|
|
22
|
-
"@aws-sdk/types": "3.
|
|
21
|
+
"@aws-sdk/node-config-provider": "3.38.0",
|
|
22
|
+
"@aws-sdk/types": "3.38.0",
|
|
23
23
|
"tslib": "^2.3.0"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@aws-sdk/protocol-http": "3.
|
|
26
|
+
"@aws-sdk/protocol-http": "3.38.0",
|
|
27
27
|
"@types/jest": "^26.0.4",
|
|
28
28
|
"@types/node": "^10.0.0",
|
|
29
29
|
"jest": "^26.1.0",
|
|
@@ -34,11 +34,14 @@
|
|
|
34
34
|
},
|
|
35
35
|
"typesVersions": {
|
|
36
36
|
"<4.0": {
|
|
37
|
-
"dist
|
|
38
|
-
"dist
|
|
37
|
+
"dist-types/*": [
|
|
38
|
+
"dist-types/ts3.4/*"
|
|
39
39
|
]
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
|
+
"files": [
|
|
43
|
+
"dist-*"
|
|
44
|
+
],
|
|
42
45
|
"homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/packages/util-user-agent-node",
|
|
43
46
|
"repository": {
|
|
44
47
|
"type": "git",
|
package/dist/cjs/index.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.defaultUserAgent = exports.UA_APP_ID_INI_NAME = exports.UA_APP_ID_ENV_NAME = void 0;
|
|
4
|
-
const node_config_provider_1 = require("@aws-sdk/node-config-provider");
|
|
5
|
-
const os_1 = require("os");
|
|
6
|
-
const process_1 = require("process");
|
|
7
|
-
const is_crt_available_1 = require("./is-crt-available");
|
|
8
|
-
exports.UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
|
|
9
|
-
exports.UA_APP_ID_INI_NAME = "sdk-ua-app-id";
|
|
10
|
-
const defaultUserAgent = ({ serviceId, clientVersion }) => {
|
|
11
|
-
const sections = [
|
|
12
|
-
["aws-sdk-js", clientVersion],
|
|
13
|
-
[`os/${os_1.platform()}`, os_1.release()],
|
|
14
|
-
["lang/js"],
|
|
15
|
-
["md/nodejs", `${process_1.versions.node}`],
|
|
16
|
-
];
|
|
17
|
-
const crtAvailable = is_crt_available_1.isCrtAvailable();
|
|
18
|
-
if (crtAvailable) {
|
|
19
|
-
sections.push(crtAvailable);
|
|
20
|
-
}
|
|
21
|
-
if (serviceId) {
|
|
22
|
-
sections.push([`api/${serviceId}`, clientVersion]);
|
|
23
|
-
}
|
|
24
|
-
if (process_1.env.AWS_EXECUTION_ENV) {
|
|
25
|
-
sections.push([`exec-env/${process_1.env.AWS_EXECUTION_ENV}`]);
|
|
26
|
-
}
|
|
27
|
-
const appIdPromise = node_config_provider_1.loadConfig({
|
|
28
|
-
environmentVariableSelector: (env) => env[exports.UA_APP_ID_ENV_NAME],
|
|
29
|
-
configFileSelector: (profile) => profile[exports.UA_APP_ID_INI_NAME],
|
|
30
|
-
default: undefined,
|
|
31
|
-
})();
|
|
32
|
-
let resolvedUserAgent = undefined;
|
|
33
|
-
return async () => {
|
|
34
|
-
if (!resolvedUserAgent) {
|
|
35
|
-
const appId = await appIdPromise;
|
|
36
|
-
resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
|
|
37
|
-
}
|
|
38
|
-
return resolvedUserAgent;
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
exports.defaultUserAgent = defaultUserAgent;
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsd0VBQTJEO0FBRTNELDJCQUF1QztBQUN2QyxxQ0FBd0M7QUFFeEMseURBQW9EO0FBRXZDLFFBQUEsa0JBQWtCLEdBQUcsbUJBQW1CLENBQUM7QUFDekMsUUFBQSxrQkFBa0IsR0FBRyxlQUFlLENBQUM7QUFVM0MsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBMkIsRUFBdUIsRUFBRTtJQUM3RyxNQUFNLFFBQVEsR0FBYztRQUUxQixDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7UUFFN0IsQ0FBQyxNQUFNLGFBQVEsRUFBRSxFQUFFLEVBQUUsWUFBTyxFQUFFLENBQUM7UUFHL0IsQ0FBQyxTQUFTLENBQUM7UUFDWCxDQUFDLFdBQVcsRUFBRSxHQUFHLGtCQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7S0FDbEMsQ0FBQztJQUVGLE1BQU0sWUFBWSxHQUFHLGlDQUFjLEVBQUUsQ0FBQztJQUN0QyxJQUFJLFlBQVksRUFBRTtRQUNoQixRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQzdCO0lBRUQsSUFBSSxTQUFTLEVBQUU7UUFHYixRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxTQUFTLEVBQUUsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO0tBQ3BEO0lBRUQsSUFBSSxhQUFHLENBQUMsaUJBQWlCLEVBQUU7UUFFekIsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLFlBQVksYUFBRyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDO0tBQ3REO0lBRUQsTUFBTSxZQUFZLEdBQUcsaUNBQVUsQ0FBcUI7UUFDbEQsMkJBQTJCLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQywwQkFBa0IsQ0FBQztRQUM3RCxrQkFBa0IsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLDBCQUFrQixDQUFDO1FBQzVELE9BQU8sRUFBRSxTQUFTO0tBQ25CLENBQUMsRUFBRSxDQUFDO0lBRUwsSUFBSSxpQkFBaUIsR0FBMEIsU0FBUyxDQUFDO0lBQ3pELE9BQU8sS0FBSyxJQUFJLEVBQUU7UUFDaEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ3RCLE1BQU0sS0FBSyxHQUFHLE1BQU0sWUFBWSxDQUFDO1lBQ2pDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFFBQVEsRUFBRSxDQUFDLE9BQU8sS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsUUFBUSxDQUFDLENBQUM7U0FDN0U7UUFDRCxPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQTFDVyxRQUFBLGdCQUFnQixvQkEwQzNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9hZENvbmZpZyB9IGZyb20gXCJAYXdzLXNkay9ub2RlLWNvbmZpZy1wcm92aWRlclwiO1xuaW1wb3J0IHsgUHJvdmlkZXIsIFVzZXJBZ2VudCB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuaW1wb3J0IHsgcGxhdGZvcm0sIHJlbGVhc2UgfSBmcm9tIFwib3NcIjtcbmltcG9ydCB7IGVudiwgdmVyc2lvbnMgfSBmcm9tIFwicHJvY2Vzc1wiO1xuXG5pbXBvcnQgeyBpc0NydEF2YWlsYWJsZSB9IGZyb20gXCIuL2lzLWNydC1hdmFpbGFibGVcIjtcblxuZXhwb3J0IGNvbnN0IFVBX0FQUF9JRF9FTlZfTkFNRSA9IFwiQVdTX1NES19VQV9BUFBfSURcIjtcbmV4cG9ydCBjb25zdCBVQV9BUFBfSURfSU5JX05BTUUgPSBcInNkay11YS1hcHAtaWRcIjtcblxuaW50ZXJmYWNlIERlZmF1bHRVc2VyQWdlbnRPcHRpb25zIHtcbiAgc2VydmljZUlkPzogc3RyaW5nO1xuICBjbGllbnRWZXJzaW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29sbGVjdCBtZXRyaWNzIGZyb20gcnVudGltZSB0byBwdXQgaW50byB1c2VyIGFnZW50LlxuICovXG5leHBvcnQgY29uc3QgZGVmYXVsdFVzZXJBZ2VudCA9ICh7IHNlcnZpY2VJZCwgY2xpZW50VmVyc2lvbiB9OiBEZWZhdWx0VXNlckFnZW50T3B0aW9ucyk6IFByb3ZpZGVyPFVzZXJBZ2VudD4gPT4ge1xuICBjb25zdCBzZWN0aW9uczogVXNlckFnZW50ID0gW1xuICAgIC8vIHNkay1tZXRhZGF0YVxuICAgIFtcImF3cy1zZGstanNcIiwgY2xpZW50VmVyc2lvbl0sXG4gICAgLy8gb3MtbWV0YWRhdGFcbiAgICBbYG9zLyR7cGxhdGZvcm0oKX1gLCByZWxlYXNlKCldLFxuICAgIC8vIGxhbmd1YWdlLW1ldGFkYXRhXG4gICAgLy8gRUNNQVNjcmlwdCBlZGl0aW9uIGRvZXNuJ3QgbWF0dGVyIGluIEpTLCBzbyBubyB2ZXJzaW9uIG5lZWRlZC5cbiAgICBbXCJsYW5nL2pzXCJdLFxuICAgIFtcIm1kL25vZGVqc1wiLCBgJHt2ZXJzaW9ucy5ub2RlfWBdLFxuICBdO1xuXG4gIGNvbnN0IGNydEF2YWlsYWJsZSA9IGlzQ3J0QXZhaWxhYmxlKCk7XG4gIGlmIChjcnRBdmFpbGFibGUpIHtcbiAgICBzZWN0aW9ucy5wdXNoKGNydEF2YWlsYWJsZSk7XG4gIH1cblxuICBpZiAoc2VydmljZUlkKSB7XG4gICAgLy8gYXBpLW1ldGFkYXRhXG4gICAgLy8gc2VydmljZSBJZCBtYXkgbm90IGFwcGVhciBpbiBub24tQVdTIGNsaWVudHNcbiAgICBzZWN0aW9ucy5wdXNoKFtgYXBpLyR7c2VydmljZUlkfWAsIGNsaWVudFZlcnNpb25dKTtcbiAgfVxuXG4gIGlmIChlbnYuQVdTX0VYRUNVVElPTl9FTlYpIHtcbiAgICAvLyBlbnYtbWV0YWRhdGFcbiAgICBzZWN0aW9ucy5wdXNoKFtgZXhlYy1lbnYvJHtlbnYuQVdTX0VYRUNVVElPTl9FTlZ9YF0pO1xuICB9XG5cbiAgY29uc3QgYXBwSWRQcm9taXNlID0gbG9hZENvbmZpZzxzdHJpbmcgfCB1bmRlZmluZWQ+KHtcbiAgICBlbnZpcm9ubWVudFZhcmlhYmxlU2VsZWN0b3I6IChlbnYpID0+IGVudltVQV9BUFBfSURfRU5WX05BTUVdLFxuICAgIGNvbmZpZ0ZpbGVTZWxlY3RvcjogKHByb2ZpbGUpID0+IHByb2ZpbGVbVUFfQVBQX0lEX0lOSV9OQU1FXSxcbiAgICBkZWZhdWx0OiB1bmRlZmluZWQsXG4gIH0pKCk7XG5cbiAgbGV0IHJlc29sdmVkVXNlckFnZW50OiBVc2VyQWdlbnQgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gIHJldHVybiBhc3luYyAoKSA9PiB7XG4gICAgaWYgKCFyZXNvbHZlZFVzZXJBZ2VudCkge1xuICAgICAgY29uc3QgYXBwSWQgPSBhd2FpdCBhcHBJZFByb21pc2U7XG4gICAgICByZXNvbHZlZFVzZXJBZ2VudCA9IGFwcElkID8gWy4uLnNlY3Rpb25zLCBbYGFwcC8ke2FwcElkfWBdXSA6IFsuLi5zZWN0aW9uc107XG4gICAgfVxuICAgIHJldHVybiByZXNvbHZlZFVzZXJBZ2VudDtcbiAgfTtcbn07XG4iXX0=
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isCrtAvailable = void 0;
|
|
4
|
-
const isCrtAvailable = () => {
|
|
5
|
-
try {
|
|
6
|
-
if (typeof require === "function" && typeof module !== "undefined" && module.require && require("aws-crt")) {
|
|
7
|
-
return ["md/crt-avail"];
|
|
8
|
-
}
|
|
9
|
-
return null;
|
|
10
|
-
}
|
|
11
|
-
catch (e) {
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
};
|
|
15
|
-
exports.isCrtAvailable = isCrtAvailable;
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY3J0LWF2YWlsYWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pcy1jcnQtYXZhaWxhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVPLE1BQU0sY0FBYyxHQUFHLEdBQXlCLEVBQUU7SUFDdkQsSUFBSTtRQUtGLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUcxRyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDekI7UUFDRCxPQUFPLElBQUksQ0FBQztLQUNiO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFFVixPQUFPLElBQUksQ0FBQztLQUNiO0FBQ0gsQ0FBQyxDQUFDO0FBaEJXLFFBQUEsY0FBYyxrQkFnQnpCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlckFnZW50UGFpciB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuXG5leHBvcnQgY29uc3QgaXNDcnRBdmFpbGFibGUgPSAoKTogVXNlckFnZW50UGFpciB8IG51bGwgPT4ge1xuICB0cnkge1xuICAgIC8vIEF0dGVtcHQgdG8gbG9hZCBhbWJpZW50IHBhY2thZ2UgYXdzLWNydCB0byB2ZXJpZnkgaWYgaXQgZXhpc3RzLlxuICAgIC8vIFdlIGNhbm5vdCB1c2UgZHluYW1pYyBpbXBvcnQoaHR0cHM6Ly9naXRodWIuY29tL3RjMzkvcHJvcG9zYWwtZHluYW1pYy1pbXBvcnQpIGhlcmUgYmVjYXVzZSBidW5kbGVyc1xuICAgIC8vIChXZWJQYWNrLCBSb2xsdXApIHdpbGwgdHJ5IHRvIGJ1bmRsZSB0aGlzIG9wdGlvbmFsIGRlcGVuZGVuY3kgYW5kIGZhaWwgdG8gYnVpbGQgaWYgbm90IGV4aXN0LlxuICAgIC8vIFRodXMgdGhpcyB1c2VyIGFnZW50IGtleSB3aWxsIG9ubHkgYXZhaWxhYmxlIGluIE5vZGUuanMgcnVudGltZS5cbiAgICBpZiAodHlwZW9mIHJlcXVpcmUgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgbW9kdWxlICE9PSBcInVuZGVmaW5lZFwiICYmIG1vZHVsZS5yZXF1aXJlICYmIHJlcXVpcmUoXCJhd3MtY3J0XCIpKSB7XG4gICAgICAvLyBWYWxpZGF0ZSBgbW9kdWxlYCB0byBtYWtlIHN1cmUgdGhpcyBpcyBub3QgaW4gYSBgcmVxdWlyZS5qc2Agc2NvcGUuXG4gICAgICAvLyBUT0RPOiBsb2FkIHBhY2thZ2UgdmVyc2lvbi5cbiAgICAgIHJldHVybiBbXCJtZC9jcnQtYXZhaWxcIl07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gTm8gYXdzLWNydCBwYWNrYWdlIGF2YWlsYWJsZSBpbiB0aGUgcnVudGltZS5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufTtcbiJdfQ==
|
package/dist/es/index.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { __awaiter, __generator, __read, __spreadArray } from "tslib";
|
|
2
|
-
import { loadConfig } from "@aws-sdk/node-config-provider";
|
|
3
|
-
import { platform, release } from "os";
|
|
4
|
-
import { env, versions } from "process";
|
|
5
|
-
import { isCrtAvailable } from "./is-crt-available";
|
|
6
|
-
export var UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
|
|
7
|
-
export var UA_APP_ID_INI_NAME = "sdk-ua-app-id";
|
|
8
|
-
/**
|
|
9
|
-
* Collect metrics from runtime to put into user agent.
|
|
10
|
-
*/
|
|
11
|
-
export var defaultUserAgent = function (_a) {
|
|
12
|
-
var serviceId = _a.serviceId, clientVersion = _a.clientVersion;
|
|
13
|
-
var sections = [
|
|
14
|
-
// sdk-metadata
|
|
15
|
-
["aws-sdk-js", clientVersion],
|
|
16
|
-
// os-metadata
|
|
17
|
-
["os/" + platform(), release()],
|
|
18
|
-
// language-metadata
|
|
19
|
-
// ECMAScript edition doesn't matter in JS, so no version needed.
|
|
20
|
-
["lang/js"],
|
|
21
|
-
["md/nodejs", "" + versions.node],
|
|
22
|
-
];
|
|
23
|
-
var crtAvailable = isCrtAvailable();
|
|
24
|
-
if (crtAvailable) {
|
|
25
|
-
sections.push(crtAvailable);
|
|
26
|
-
}
|
|
27
|
-
if (serviceId) {
|
|
28
|
-
// api-metadata
|
|
29
|
-
// service Id may not appear in non-AWS clients
|
|
30
|
-
sections.push(["api/" + serviceId, clientVersion]);
|
|
31
|
-
}
|
|
32
|
-
if (env.AWS_EXECUTION_ENV) {
|
|
33
|
-
// env-metadata
|
|
34
|
-
sections.push(["exec-env/" + env.AWS_EXECUTION_ENV]);
|
|
35
|
-
}
|
|
36
|
-
var appIdPromise = loadConfig({
|
|
37
|
-
environmentVariableSelector: function (env) { return env[UA_APP_ID_ENV_NAME]; },
|
|
38
|
-
configFileSelector: function (profile) { return profile[UA_APP_ID_INI_NAME]; },
|
|
39
|
-
default: undefined,
|
|
40
|
-
})();
|
|
41
|
-
var resolvedUserAgent = undefined;
|
|
42
|
-
return function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
43
|
-
var appId;
|
|
44
|
-
return __generator(this, function (_a) {
|
|
45
|
-
switch (_a.label) {
|
|
46
|
-
case 0:
|
|
47
|
-
if (!!resolvedUserAgent) return [3 /*break*/, 2];
|
|
48
|
-
return [4 /*yield*/, appIdPromise];
|
|
49
|
-
case 1:
|
|
50
|
-
appId = _a.sent();
|
|
51
|
-
resolvedUserAgent = appId ? __spreadArray(__spreadArray([], __read(sections)), [["app/" + appId]]) : __spreadArray([], __read(sections));
|
|
52
|
-
_a.label = 2;
|
|
53
|
-
case 2: return [2 /*return*/, resolvedUserAgent];
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
}); };
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQztBQUN2QyxPQUFPLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUV4QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFcEQsTUFBTSxDQUFDLElBQU0sa0JBQWtCLEdBQUcsbUJBQW1CLENBQUM7QUFDdEQsTUFBTSxDQUFDLElBQU0sa0JBQWtCLEdBQUcsZUFBZSxDQUFDO0FBT2xEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLElBQU0sZ0JBQWdCLEdBQUcsVUFBQyxFQUFxRDtRQUFuRCxTQUFTLGVBQUEsRUFBRSxhQUFhLG1CQUFBO0lBQ3pELElBQU0sUUFBUSxHQUFjO1FBQzFCLGVBQWU7UUFDZixDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7UUFDN0IsY0FBYztRQUNkLENBQUMsUUFBTSxRQUFRLEVBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUMvQixvQkFBb0I7UUFDcEIsaUVBQWlFO1FBQ2pFLENBQUMsU0FBUyxDQUFDO1FBQ1gsQ0FBQyxXQUFXLEVBQUUsS0FBRyxRQUFRLENBQUMsSUFBTSxDQUFDO0tBQ2xDLENBQUM7SUFFRixJQUFNLFlBQVksR0FBRyxjQUFjLEVBQUUsQ0FBQztJQUN0QyxJQUFJLFlBQVksRUFBRTtRQUNoQixRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQzdCO0lBRUQsSUFBSSxTQUFTLEVBQUU7UUFDYixlQUFlO1FBQ2YsK0NBQStDO1FBQy9DLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFPLFNBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQyxDQUFDO0tBQ3BEO0lBRUQsSUFBSSxHQUFHLENBQUMsaUJBQWlCLEVBQUU7UUFDekIsZUFBZTtRQUNmLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxjQUFZLEdBQUcsQ0FBQyxpQkFBbUIsQ0FBQyxDQUFDLENBQUM7S0FDdEQ7SUFFRCxJQUFNLFlBQVksR0FBRyxVQUFVLENBQXFCO1FBQ2xELDJCQUEyQixFQUFFLFVBQUMsR0FBRyxJQUFLLE9BQUEsR0FBRyxDQUFDLGtCQUFrQixDQUFDLEVBQXZCLENBQXVCO1FBQzdELGtCQUFrQixFQUFFLFVBQUMsT0FBTyxJQUFLLE9BQUEsT0FBTyxDQUFDLGtCQUFrQixDQUFDLEVBQTNCLENBQTJCO1FBQzVELE9BQU8sRUFBRSxTQUFTO0tBQ25CLENBQUMsRUFBRSxDQUFDO0lBRUwsSUFBSSxpQkFBaUIsR0FBMEIsU0FBUyxDQUFDO0lBQ3pELE9BQU87Ozs7O3lCQUNELENBQUMsaUJBQWlCLEVBQWxCLHdCQUFrQjtvQkFDTixxQkFBTSxZQUFZLEVBQUE7O29CQUExQixLQUFLLEdBQUcsU0FBa0I7b0JBQ2hDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxDQUFDLHdDQUFLLFFBQVEsS0FBRSxDQUFDLFNBQU8sS0FBTyxDQUFDLEdBQUUsQ0FBQywwQkFBSyxRQUFRLEVBQUMsQ0FBQzs7d0JBRTlFLHNCQUFPLGlCQUFpQixFQUFDOzs7U0FDMUIsQ0FBQztBQUNKLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxvYWRDb25maWcgfSBmcm9tIFwiQGF3cy1zZGsvbm9kZS1jb25maWctcHJvdmlkZXJcIjtcbmltcG9ydCB7IFByb3ZpZGVyLCBVc2VyQWdlbnQgfSBmcm9tIFwiQGF3cy1zZGsvdHlwZXNcIjtcbmltcG9ydCB7IHBsYXRmb3JtLCByZWxlYXNlIH0gZnJvbSBcIm9zXCI7XG5pbXBvcnQgeyBlbnYsIHZlcnNpb25zIH0gZnJvbSBcInByb2Nlc3NcIjtcblxuaW1wb3J0IHsgaXNDcnRBdmFpbGFibGUgfSBmcm9tIFwiLi9pcy1jcnQtYXZhaWxhYmxlXCI7XG5cbmV4cG9ydCBjb25zdCBVQV9BUFBfSURfRU5WX05BTUUgPSBcIkFXU19TREtfVUFfQVBQX0lEXCI7XG5leHBvcnQgY29uc3QgVUFfQVBQX0lEX0lOSV9OQU1FID0gXCJzZGstdWEtYXBwLWlkXCI7XG5cbmludGVyZmFjZSBEZWZhdWx0VXNlckFnZW50T3B0aW9ucyB7XG4gIHNlcnZpY2VJZD86IHN0cmluZztcbiAgY2xpZW50VmVyc2lvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbGxlY3QgbWV0cmljcyBmcm9tIHJ1bnRpbWUgdG8gcHV0IGludG8gdXNlciBhZ2VudC5cbiAqL1xuZXhwb3J0IGNvbnN0IGRlZmF1bHRVc2VyQWdlbnQgPSAoeyBzZXJ2aWNlSWQsIGNsaWVudFZlcnNpb24gfTogRGVmYXVsdFVzZXJBZ2VudE9wdGlvbnMpOiBQcm92aWRlcjxVc2VyQWdlbnQ+ID0+IHtcbiAgY29uc3Qgc2VjdGlvbnM6IFVzZXJBZ2VudCA9IFtcbiAgICAvLyBzZGstbWV0YWRhdGFcbiAgICBbXCJhd3Mtc2RrLWpzXCIsIGNsaWVudFZlcnNpb25dLFxuICAgIC8vIG9zLW1ldGFkYXRhXG4gICAgW2Bvcy8ke3BsYXRmb3JtKCl9YCwgcmVsZWFzZSgpXSxcbiAgICAvLyBsYW5ndWFnZS1tZXRhZGF0YVxuICAgIC8vIEVDTUFTY3JpcHQgZWRpdGlvbiBkb2Vzbid0IG1hdHRlciBpbiBKUywgc28gbm8gdmVyc2lvbiBuZWVkZWQuXG4gICAgW1wibGFuZy9qc1wiXSxcbiAgICBbXCJtZC9ub2RlanNcIiwgYCR7dmVyc2lvbnMubm9kZX1gXSxcbiAgXTtcblxuICBjb25zdCBjcnRBdmFpbGFibGUgPSBpc0NydEF2YWlsYWJsZSgpO1xuICBpZiAoY3J0QXZhaWxhYmxlKSB7XG4gICAgc2VjdGlvbnMucHVzaChjcnRBdmFpbGFibGUpO1xuICB9XG5cbiAgaWYgKHNlcnZpY2VJZCkge1xuICAgIC8vIGFwaS1tZXRhZGF0YVxuICAgIC8vIHNlcnZpY2UgSWQgbWF5IG5vdCBhcHBlYXIgaW4gbm9uLUFXUyBjbGllbnRzXG4gICAgc2VjdGlvbnMucHVzaChbYGFwaS8ke3NlcnZpY2VJZH1gLCBjbGllbnRWZXJzaW9uXSk7XG4gIH1cblxuICBpZiAoZW52LkFXU19FWEVDVVRJT05fRU5WKSB7XG4gICAgLy8gZW52LW1ldGFkYXRhXG4gICAgc2VjdGlvbnMucHVzaChbYGV4ZWMtZW52LyR7ZW52LkFXU19FWEVDVVRJT05fRU5WfWBdKTtcbiAgfVxuXG4gIGNvbnN0IGFwcElkUHJvbWlzZSA9IGxvYWRDb25maWc8c3RyaW5nIHwgdW5kZWZpbmVkPih7XG4gICAgZW52aXJvbm1lbnRWYXJpYWJsZVNlbGVjdG9yOiAoZW52KSA9PiBlbnZbVUFfQVBQX0lEX0VOVl9OQU1FXSxcbiAgICBjb25maWdGaWxlU2VsZWN0b3I6IChwcm9maWxlKSA9PiBwcm9maWxlW1VBX0FQUF9JRF9JTklfTkFNRV0sXG4gICAgZGVmYXVsdDogdW5kZWZpbmVkLFxuICB9KSgpO1xuXG4gIGxldCByZXNvbHZlZFVzZXJBZ2VudDogVXNlckFnZW50IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICByZXR1cm4gYXN5bmMgKCkgPT4ge1xuICAgIGlmICghcmVzb2x2ZWRVc2VyQWdlbnQpIHtcbiAgICAgIGNvbnN0IGFwcElkID0gYXdhaXQgYXBwSWRQcm9taXNlO1xuICAgICAgcmVzb2x2ZWRVc2VyQWdlbnQgPSBhcHBJZCA/IFsuLi5zZWN0aW9ucywgW2BhcHAvJHthcHBJZH1gXV0gOiBbLi4uc2VjdGlvbnNdO1xuICAgIH1cbiAgICByZXR1cm4gcmVzb2x2ZWRVc2VyQWdlbnQ7XG4gIH07XG59O1xuIl19
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export var isCrtAvailable = function () {
|
|
2
|
-
try {
|
|
3
|
-
// Attempt to load ambient package aws-crt to verify if it exists.
|
|
4
|
-
// We cannot use dynamic import(https://github.com/tc39/proposal-dynamic-import) here because bundlers
|
|
5
|
-
// (WebPack, Rollup) will try to bundle this optional dependency and fail to build if not exist.
|
|
6
|
-
// Thus this user agent key will only available in Node.js runtime.
|
|
7
|
-
if (typeof require === "function" && typeof module !== "undefined" && module.require && require("aws-crt")) {
|
|
8
|
-
// Validate `module` to make sure this is not in a `require.js` scope.
|
|
9
|
-
// TODO: load package version.
|
|
10
|
-
return ["md/crt-avail"];
|
|
11
|
-
}
|
|
12
|
-
return null;
|
|
13
|
-
}
|
|
14
|
-
catch (e) {
|
|
15
|
-
// No aws-crt package available in the runtime.
|
|
16
|
-
return null;
|
|
17
|
-
}
|
|
18
|
-
};
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtY3J0LWF2YWlsYWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pcy1jcnQtYXZhaWxhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBRztJQUM1QixJQUFJO1FBQ0Ysa0VBQWtFO1FBQ2xFLHNHQUFzRztRQUN0RyxnR0FBZ0c7UUFDaEcsbUVBQW1FO1FBQ25FLElBQUksT0FBTyxPQUFPLEtBQUssVUFBVSxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsSUFBSSxNQUFNLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUMxRyxzRUFBc0U7WUFDdEUsOEJBQThCO1lBQzlCLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUN6QjtRQUNELE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLCtDQUErQztRQUMvQyxPQUFPLElBQUksQ0FBQztLQUNiO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlckFnZW50UGFpciB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuXG5leHBvcnQgY29uc3QgaXNDcnRBdmFpbGFibGUgPSAoKTogVXNlckFnZW50UGFpciB8IG51bGwgPT4ge1xuICB0cnkge1xuICAgIC8vIEF0dGVtcHQgdG8gbG9hZCBhbWJpZW50IHBhY2thZ2UgYXdzLWNydCB0byB2ZXJpZnkgaWYgaXQgZXhpc3RzLlxuICAgIC8vIFdlIGNhbm5vdCB1c2UgZHluYW1pYyBpbXBvcnQoaHR0cHM6Ly9naXRodWIuY29tL3RjMzkvcHJvcG9zYWwtZHluYW1pYy1pbXBvcnQpIGhlcmUgYmVjYXVzZSBidW5kbGVyc1xuICAgIC8vIChXZWJQYWNrLCBSb2xsdXApIHdpbGwgdHJ5IHRvIGJ1bmRsZSB0aGlzIG9wdGlvbmFsIGRlcGVuZGVuY3kgYW5kIGZhaWwgdG8gYnVpbGQgaWYgbm90IGV4aXN0LlxuICAgIC8vIFRodXMgdGhpcyB1c2VyIGFnZW50IGtleSB3aWxsIG9ubHkgYXZhaWxhYmxlIGluIE5vZGUuanMgcnVudGltZS5cbiAgICBpZiAodHlwZW9mIHJlcXVpcmUgPT09IFwiZnVuY3Rpb25cIiAmJiB0eXBlb2YgbW9kdWxlICE9PSBcInVuZGVmaW5lZFwiICYmIG1vZHVsZS5yZXF1aXJlICYmIHJlcXVpcmUoXCJhd3MtY3J0XCIpKSB7XG4gICAgICAvLyBWYWxpZGF0ZSBgbW9kdWxlYCB0byBtYWtlIHN1cmUgdGhpcyBpcyBub3QgaW4gYSBgcmVxdWlyZS5qc2Agc2NvcGUuXG4gICAgICAvLyBUT0RPOiBsb2FkIHBhY2thZ2UgdmVyc2lvbi5cbiAgICAgIHJldHVybiBbXCJtZC9jcnQtYXZhaWxcIl07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gTm8gYXdzLWNydCBwYWNrYWdlIGF2YWlsYWJsZSBpbiB0aGUgcnVudGltZS5cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufTtcbiJdfQ==
|
package/src/index.ts
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { loadConfig } from "@aws-sdk/node-config-provider";
|
|
2
|
-
import { Provider, UserAgent } from "@aws-sdk/types";
|
|
3
|
-
import { platform, release } from "os";
|
|
4
|
-
import { env, versions } from "process";
|
|
5
|
-
|
|
6
|
-
import { isCrtAvailable } from "./is-crt-available";
|
|
7
|
-
|
|
8
|
-
export const UA_APP_ID_ENV_NAME = "AWS_SDK_UA_APP_ID";
|
|
9
|
-
export const UA_APP_ID_INI_NAME = "sdk-ua-app-id";
|
|
10
|
-
|
|
11
|
-
interface DefaultUserAgentOptions {
|
|
12
|
-
serviceId?: string;
|
|
13
|
-
clientVersion: string;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Collect metrics from runtime to put into user agent.
|
|
18
|
-
*/
|
|
19
|
-
export const defaultUserAgent = ({ serviceId, clientVersion }: DefaultUserAgentOptions): Provider<UserAgent> => {
|
|
20
|
-
const sections: UserAgent = [
|
|
21
|
-
// sdk-metadata
|
|
22
|
-
["aws-sdk-js", clientVersion],
|
|
23
|
-
// os-metadata
|
|
24
|
-
[`os/${platform()}`, release()],
|
|
25
|
-
// language-metadata
|
|
26
|
-
// ECMAScript edition doesn't matter in JS, so no version needed.
|
|
27
|
-
["lang/js"],
|
|
28
|
-
["md/nodejs", `${versions.node}`],
|
|
29
|
-
];
|
|
30
|
-
|
|
31
|
-
const crtAvailable = isCrtAvailable();
|
|
32
|
-
if (crtAvailable) {
|
|
33
|
-
sections.push(crtAvailable);
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
if (serviceId) {
|
|
37
|
-
// api-metadata
|
|
38
|
-
// service Id may not appear in non-AWS clients
|
|
39
|
-
sections.push([`api/${serviceId}`, clientVersion]);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
if (env.AWS_EXECUTION_ENV) {
|
|
43
|
-
// env-metadata
|
|
44
|
-
sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
const appIdPromise = loadConfig<string | undefined>({
|
|
48
|
-
environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME],
|
|
49
|
-
configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],
|
|
50
|
-
default: undefined,
|
|
51
|
-
})();
|
|
52
|
-
|
|
53
|
-
let resolvedUserAgent: UserAgent | undefined = undefined;
|
|
54
|
-
return async () => {
|
|
55
|
-
if (!resolvedUserAgent) {
|
|
56
|
-
const appId = await appIdPromise;
|
|
57
|
-
resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];
|
|
58
|
-
}
|
|
59
|
-
return resolvedUserAgent;
|
|
60
|
-
};
|
|
61
|
-
};
|
package/src/is-crt-available.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { UserAgentPair } from "@aws-sdk/types";
|
|
2
|
-
|
|
3
|
-
export const isCrtAvailable = (): UserAgentPair | null => {
|
|
4
|
-
try {
|
|
5
|
-
// Attempt to load ambient package aws-crt to verify if it exists.
|
|
6
|
-
// We cannot use dynamic import(https://github.com/tc39/proposal-dynamic-import) here because bundlers
|
|
7
|
-
// (WebPack, Rollup) will try to bundle this optional dependency and fail to build if not exist.
|
|
8
|
-
// Thus this user agent key will only available in Node.js runtime.
|
|
9
|
-
if (typeof require === "function" && typeof module !== "undefined" && module.require && require("aws-crt")) {
|
|
10
|
-
// Validate `module` to make sure this is not in a `require.js` scope.
|
|
11
|
-
// TODO: load package version.
|
|
12
|
-
return ["md/crt-avail"];
|
|
13
|
-
}
|
|
14
|
-
return null;
|
|
15
|
-
} catch (e) {
|
|
16
|
-
// No aws-crt package available in the runtime.
|
|
17
|
-
return null;
|
|
18
|
-
}
|
|
19
|
-
};
|
package/tsconfig.cjs.json
DELETED
package/tsconfig.es.json
DELETED