@aws-sdk/client-servicediscovery 3.712.0 → 3.714.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/dist-cjs/runtimeConfig.js +8 -6
- package/dist-es/runtimeConfig.js +8 -6
- package/dist-types/ServiceDiscoveryClient.d.ts +18 -0
- package/dist-types/commands/DeleteServiceAttributesCommand.d.ts +14 -0
- package/dist-types/commands/GetServiceAttributesCommand.d.ts +21 -0
- package/dist-types/commands/UpdatePrivateDnsNamespaceCommand.d.ts +8 -8
- package/dist-types/commands/UpdateServiceAttributesCommand.d.ts +14 -0
- package/dist-types/runtimeConfig.browser.d.ts +1 -0
- package/dist-types/runtimeConfig.d.ts +1 -0
- package/dist-types/runtimeConfig.native.d.ts +1 -0
- package/dist-types/ts3.4/ServiceDiscoveryClient.d.ts +1 -0
- package/dist-types/ts3.4/runtimeConfig.browser.d.ts +1 -0
- package/dist-types/ts3.4/runtimeConfig.d.ts +1 -0
- package/dist-types/ts3.4/runtimeConfig.native.d.ts +1 -0
- package/package.json +14 -14
|
@@ -23,6 +23,7 @@ const getRuntimeConfig = (config) => {
|
|
|
23
23
|
const defaultConfigProvider = () => defaultsMode().then(smithy_client_1.loadConfigsForDefaultMode);
|
|
24
24
|
const clientSharedValues = (0, runtimeConfig_shared_1.getRuntimeConfig)(config);
|
|
25
25
|
(0, core_1.emitWarningIfUnsupportedVersion)(process.version);
|
|
26
|
+
const profileConfig = { profile: config?.profile };
|
|
26
27
|
return {
|
|
27
28
|
...clientSharedValues,
|
|
28
29
|
...config,
|
|
@@ -32,19 +33,20 @@ const getRuntimeConfig = (config) => {
|
|
|
32
33
|
credentialDefaultProvider: config?.credentialDefaultProvider ?? credential_provider_node_1.defaultProvider,
|
|
33
34
|
defaultUserAgentProvider: config?.defaultUserAgentProvider ??
|
|
34
35
|
(0, util_user_agent_node_1.createDefaultUserAgentProvider)({ serviceId: clientSharedValues.serviceId, clientVersion: package_json_1.default.version }),
|
|
35
|
-
maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
|
|
36
|
-
region: config?.region ??
|
|
36
|
+
maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS, config),
|
|
37
|
+
region: config?.region ??
|
|
38
|
+
(0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, { ...config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS, ...profileConfig }),
|
|
37
39
|
requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
|
|
38
40
|
retryMode: config?.retryMode ??
|
|
39
41
|
(0, node_config_provider_1.loadConfig)({
|
|
40
42
|
...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
|
|
41
43
|
default: async () => (await defaultConfigProvider()).retryMode || util_retry_1.DEFAULT_RETRY_MODE,
|
|
42
|
-
}),
|
|
44
|
+
}, config),
|
|
43
45
|
sha256: config?.sha256 ?? hash_node_1.Hash.bind(null, "sha256"),
|
|
44
46
|
streamCollector: config?.streamCollector ?? node_http_handler_1.streamCollector,
|
|
45
|
-
useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
|
|
46
|
-
useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),
|
|
47
|
-
userAgentAppId: config?.userAgentAppId ?? (0, node_config_provider_1.loadConfig)(util_user_agent_node_1.NODE_APP_ID_CONFIG_OPTIONS),
|
|
47
|
+
useDualstackEndpoint: config?.useDualstackEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, profileConfig),
|
|
48
|
+
useFipsEndpoint: config?.useFipsEndpoint ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, profileConfig),
|
|
49
|
+
userAgentAppId: config?.userAgentAppId ?? (0, node_config_provider_1.loadConfig)(util_user_agent_node_1.NODE_APP_ID_CONFIG_OPTIONS, profileConfig),
|
|
48
50
|
};
|
|
49
51
|
};
|
|
50
52
|
exports.getRuntimeConfig = getRuntimeConfig;
|
package/dist-es/runtimeConfig.js
CHANGED
|
@@ -19,6 +19,7 @@ export const getRuntimeConfig = (config) => {
|
|
|
19
19
|
const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);
|
|
20
20
|
const clientSharedValues = getSharedRuntimeConfig(config);
|
|
21
21
|
awsCheckVersion(process.version);
|
|
22
|
+
const profileConfig = { profile: config?.profile };
|
|
22
23
|
return {
|
|
23
24
|
...clientSharedValues,
|
|
24
25
|
...config,
|
|
@@ -28,18 +29,19 @@ export const getRuntimeConfig = (config) => {
|
|
|
28
29
|
credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,
|
|
29
30
|
defaultUserAgentProvider: config?.defaultUserAgentProvider ??
|
|
30
31
|
createDefaultUserAgentProvider({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),
|
|
31
|
-
maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
|
|
32
|
-
region: config?.region ??
|
|
32
|
+
maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS, config),
|
|
33
|
+
region: config?.region ??
|
|
34
|
+
loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, { ...NODE_REGION_CONFIG_FILE_OPTIONS, ...profileConfig }),
|
|
33
35
|
requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),
|
|
34
36
|
retryMode: config?.retryMode ??
|
|
35
37
|
loadNodeConfig({
|
|
36
38
|
...NODE_RETRY_MODE_CONFIG_OPTIONS,
|
|
37
39
|
default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,
|
|
38
|
-
}),
|
|
40
|
+
}, config),
|
|
39
41
|
sha256: config?.sha256 ?? Hash.bind(null, "sha256"),
|
|
40
42
|
streamCollector: config?.streamCollector ?? streamCollector,
|
|
41
|
-
useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),
|
|
42
|
-
useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),
|
|
43
|
-
userAgentAppId: config?.userAgentAppId ?? loadNodeConfig(NODE_APP_ID_CONFIG_OPTIONS),
|
|
43
|
+
useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, profileConfig),
|
|
44
|
+
useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, profileConfig),
|
|
45
|
+
userAgentAppId: config?.userAgentAppId ?? loadNodeConfig(NODE_APP_ID_CONFIG_OPTIONS, profileConfig),
|
|
44
46
|
};
|
|
45
47
|
};
|
|
@@ -124,6 +124,24 @@ export interface ClientDefaults extends Partial<__SmithyConfiguration<__HttpHand
|
|
|
124
124
|
* The AWS region to which this client will send requests
|
|
125
125
|
*/
|
|
126
126
|
region?: string | __Provider<string>;
|
|
127
|
+
/**
|
|
128
|
+
* Setting a client profile is similar to setting a value for the
|
|
129
|
+
* AWS_PROFILE environment variable. Setting a profile on a client
|
|
130
|
+
* in code only affects the single client instance, unlike AWS_PROFILE.
|
|
131
|
+
*
|
|
132
|
+
* When set, and only for environments where an AWS configuration
|
|
133
|
+
* file exists, fields configurable by this file will be retrieved
|
|
134
|
+
* from the specified profile within that file.
|
|
135
|
+
* Conflicting code configuration and environment variables will
|
|
136
|
+
* still have higher priority.
|
|
137
|
+
*
|
|
138
|
+
* For client credential resolution that involves checking the AWS
|
|
139
|
+
* configuration file, the client's profile (this value) will be
|
|
140
|
+
* used unless a different profile is set in the credential
|
|
141
|
+
* provider options.
|
|
142
|
+
*
|
|
143
|
+
*/
|
|
144
|
+
profile?: string;
|
|
127
145
|
/**
|
|
128
146
|
* The provider populating default tracking information to be sent with `user-agent`, `x-amz-user-agent` header
|
|
129
147
|
* @internal
|
|
@@ -63,6 +63,20 @@ declare const DeleteServiceAttributesCommand_base: {
|
|
|
63
63
|
* <p>Base exception class for all service exceptions from ServiceDiscovery service.</p>
|
|
64
64
|
*
|
|
65
65
|
* @public
|
|
66
|
+
* @example DeleteServiceAttributes example
|
|
67
|
+
* ```javascript
|
|
68
|
+
* // Example: Delete service attribute by providing attribute key and service ID
|
|
69
|
+
* const input = {
|
|
70
|
+
* "Attributes": [
|
|
71
|
+
* "port"
|
|
72
|
+
* ],
|
|
73
|
+
* "ServiceId": "srv-e4anhexample0004"
|
|
74
|
+
* };
|
|
75
|
+
* const command = new DeleteServiceAttributesCommand(input);
|
|
76
|
+
* await client.send(command);
|
|
77
|
+
* // example id: example-delete-service-attributes-1587416462902
|
|
78
|
+
* ```
|
|
79
|
+
*
|
|
66
80
|
*/
|
|
67
81
|
export declare class DeleteServiceAttributesCommand extends DeleteServiceAttributesCommand_base {
|
|
68
82
|
/** @internal type navigation helper, not in runtime. */
|
|
@@ -67,6 +67,27 @@ declare const GetServiceAttributesCommand_base: {
|
|
|
67
67
|
* <p>Base exception class for all service exceptions from ServiceDiscovery service.</p>
|
|
68
68
|
*
|
|
69
69
|
* @public
|
|
70
|
+
* @example GetServiceAttributes Example
|
|
71
|
+
* ```javascript
|
|
72
|
+
* // This example gets the attributes for a specified service.
|
|
73
|
+
* const input = {
|
|
74
|
+
* "ServiceId": "srv-e4anhexample0004"
|
|
75
|
+
* };
|
|
76
|
+
* const command = new GetServiceAttributesCommand(input);
|
|
77
|
+
* const response = await client.send(command);
|
|
78
|
+
* /* response ==
|
|
79
|
+
* {
|
|
80
|
+
* "ServiceAttributes": {
|
|
81
|
+
* "Attributes": {
|
|
82
|
+
* "port": "80"
|
|
83
|
+
* },
|
|
84
|
+
* "ServiceArn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-e4anhexample0004"
|
|
85
|
+
* }
|
|
86
|
+
* }
|
|
87
|
+
* *\/
|
|
88
|
+
* // example id: get-service-attributes-example-1590117234294
|
|
89
|
+
* ```
|
|
90
|
+
*
|
|
70
91
|
*/
|
|
71
92
|
export declare class GetServiceAttributesCommand extends GetServiceAttributesCommand_base {
|
|
72
93
|
/** @internal type navigation helper, not in runtime. */
|
|
@@ -81,9 +81,9 @@ declare const UpdatePrivateDnsNamespaceCommand_base: {
|
|
|
81
81
|
* <p>Base exception class for all service exceptions from ServiceDiscovery service.</p>
|
|
82
82
|
*
|
|
83
83
|
* @public
|
|
84
|
-
* @example To update a
|
|
84
|
+
* @example To update a public DNS namespace
|
|
85
85
|
* ```javascript
|
|
86
|
-
* // The following example updates the description of a
|
|
86
|
+
* // The following example updates the description of a public DNS namespace.
|
|
87
87
|
* const input = {
|
|
88
88
|
* "Id": "ns-bk3aEXAMPLE",
|
|
89
89
|
* "Namespace": {
|
|
@@ -95,15 +95,15 @@ declare const UpdatePrivateDnsNamespaceCommand_base: {
|
|
|
95
95
|
* const response = await client.send(command);
|
|
96
96
|
* /* response ==
|
|
97
97
|
* {
|
|
98
|
-
* "OperationId": "
|
|
98
|
+
* "OperationId": "ft52xe2koxhoeormaceymagglsdjEXAMPLE"
|
|
99
99
|
* }
|
|
100
100
|
* *\/
|
|
101
|
-
* // example id: to-update-a-
|
|
101
|
+
* // example id: to-update-a-public-dns-namespace-1712868389604
|
|
102
102
|
* ```
|
|
103
103
|
*
|
|
104
|
-
* @example To update a
|
|
104
|
+
* @example To update a private DNS namespace
|
|
105
105
|
* ```javascript
|
|
106
|
-
* // The following example updates the description of a
|
|
106
|
+
* // The following example updates the description of a private DNS namespace.
|
|
107
107
|
* const input = {
|
|
108
108
|
* "Id": "ns-bk3aEXAMPLE",
|
|
109
109
|
* "Namespace": {
|
|
@@ -115,10 +115,10 @@ declare const UpdatePrivateDnsNamespaceCommand_base: {
|
|
|
115
115
|
* const response = await client.send(command);
|
|
116
116
|
* /* response ==
|
|
117
117
|
* {
|
|
118
|
-
* "OperationId": "
|
|
118
|
+
* "OperationId": "ft52xe2koxhoeormaceymagglsdjyvEXAMPLE"
|
|
119
119
|
* }
|
|
120
120
|
* *\/
|
|
121
|
-
* // example id: to-update-a-
|
|
121
|
+
* // example id: to-update-a-private-dns-namespace-1712868389604
|
|
122
122
|
* ```
|
|
123
123
|
*
|
|
124
124
|
*/
|
|
@@ -66,6 +66,20 @@ declare const UpdateServiceAttributesCommand_base: {
|
|
|
66
66
|
* <p>Base exception class for all service exceptions from ServiceDiscovery service.</p>
|
|
67
67
|
*
|
|
68
68
|
* @public
|
|
69
|
+
* @example UpdateServiceAttributes Example
|
|
70
|
+
* ```javascript
|
|
71
|
+
* // This example submits a request to update the specified service to add a port attribute with the value 80.
|
|
72
|
+
* const input = {
|
|
73
|
+
* "Attributes": {
|
|
74
|
+
* "port": "80"
|
|
75
|
+
* },
|
|
76
|
+
* "ServiceId": "srv-e4anhexample0004"
|
|
77
|
+
* };
|
|
78
|
+
* const command = new UpdateServiceAttributesCommand(input);
|
|
79
|
+
* await client.send(command);
|
|
80
|
+
* // example id: update-service-attributes-example-1590117830880
|
|
81
|
+
* ```
|
|
82
|
+
*
|
|
69
83
|
*/
|
|
70
84
|
export declare class UpdateServiceAttributesCommand extends UpdateServiceAttributesCommand_base {
|
|
71
85
|
/** @internal type navigation helper, not in runtime. */
|
|
@@ -26,6 +26,7 @@ export declare const getRuntimeConfig: (config: ServiceDiscoveryClientConfig) =>
|
|
|
26
26
|
utf8Encoder: (input: string | Uint8Array) => string;
|
|
27
27
|
disableHostPrefix: boolean;
|
|
28
28
|
serviceId: string;
|
|
29
|
+
profile?: string | undefined;
|
|
29
30
|
logger: import("@smithy/types").Logger;
|
|
30
31
|
extensions: import("./runtimeExtensions").RuntimeExtension[];
|
|
31
32
|
customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
|
|
@@ -27,6 +27,7 @@ export declare const getRuntimeConfig: (config: ServiceDiscoveryClientConfig) =>
|
|
|
27
27
|
utf8Encoder: (input: string | Uint8Array) => string;
|
|
28
28
|
disableHostPrefix: boolean;
|
|
29
29
|
serviceId: string;
|
|
30
|
+
profile?: string | undefined;
|
|
30
31
|
logger: import("@smithy/types").Logger;
|
|
31
32
|
extensions: import("./runtimeExtensions").RuntimeExtension[];
|
|
32
33
|
customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
|
|
@@ -20,6 +20,7 @@ export declare const getRuntimeConfig: (config: ServiceDiscoveryClientConfig) =>
|
|
|
20
20
|
useDualstackEndpoint: boolean | import("@smithy/types").Provider<boolean>;
|
|
21
21
|
useFipsEndpoint: boolean | import("@smithy/types").Provider<boolean>;
|
|
22
22
|
region: string | import("@smithy/types").Provider<any>;
|
|
23
|
+
profile?: string | undefined;
|
|
23
24
|
defaultUserAgentProvider: (config?: import("@aws-sdk/util-user-agent-browser").PreviouslyResolved | undefined) => Promise<import("@smithy/types").UserAgent>;
|
|
24
25
|
credentialDefaultProvider: (input: any) => import("@smithy/types").AwsCredentialIdentityProvider;
|
|
25
26
|
maxAttempts: number | import("@smithy/types").Provider<number>;
|
|
@@ -251,6 +251,7 @@ export interface ClientDefaults
|
|
|
251
251
|
useDualstackEndpoint?: boolean | __Provider<boolean>;
|
|
252
252
|
useFipsEndpoint?: boolean | __Provider<boolean>;
|
|
253
253
|
region?: string | __Provider<string>;
|
|
254
|
+
profile?: string;
|
|
254
255
|
defaultUserAgentProvider?: Provider<__UserAgent>;
|
|
255
256
|
credentialDefaultProvider?: (input: any) => AwsCredentialIdentityProvider;
|
|
256
257
|
maxAttempts?: number | __Provider<number>;
|
|
@@ -35,6 +35,7 @@ export declare const getRuntimeConfig: (
|
|
|
35
35
|
utf8Encoder: (input: string | Uint8Array) => string;
|
|
36
36
|
disableHostPrefix: boolean;
|
|
37
37
|
serviceId: string;
|
|
38
|
+
profile?: string | undefined;
|
|
38
39
|
logger: import("@smithy/types").Logger;
|
|
39
40
|
extensions: import("./runtimeExtensions").RuntimeExtension[];
|
|
40
41
|
customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
|
|
@@ -40,6 +40,7 @@ export declare const getRuntimeConfig: (
|
|
|
40
40
|
utf8Encoder: (input: string | Uint8Array) => string;
|
|
41
41
|
disableHostPrefix: boolean;
|
|
42
42
|
serviceId: string;
|
|
43
|
+
profile?: string | undefined;
|
|
43
44
|
logger: import("@smithy/types").Logger;
|
|
44
45
|
extensions: import("./runtimeExtensions").RuntimeExtension[];
|
|
45
46
|
customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
|
|
@@ -24,6 +24,7 @@ export declare const getRuntimeConfig: (
|
|
|
24
24
|
useDualstackEndpoint: boolean | import("@smithy/types").Provider<boolean>;
|
|
25
25
|
useFipsEndpoint: boolean | import("@smithy/types").Provider<boolean>;
|
|
26
26
|
region: string | import("@smithy/types").Provider<any>;
|
|
27
|
+
profile?: string | undefined;
|
|
27
28
|
defaultUserAgentProvider: (
|
|
28
29
|
config?:
|
|
29
30
|
| import("@aws-sdk/util-user-agent-browser").PreviouslyResolved
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/client-servicediscovery",
|
|
3
3
|
"description": "AWS SDK for JavaScript Servicediscovery Client for Node.js, Browser and React Native",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.714.0",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
|
|
7
7
|
"build:cjs": "node ../../scripts/compilation/inline client-servicediscovery",
|
|
@@ -20,19 +20,19 @@
|
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"@aws-crypto/sha256-browser": "5.2.0",
|
|
22
22
|
"@aws-crypto/sha256-js": "5.2.0",
|
|
23
|
-
"@aws-sdk/client-sso-oidc": "3.
|
|
24
|
-
"@aws-sdk/client-sts": "3.
|
|
25
|
-
"@aws-sdk/core": "3.
|
|
26
|
-
"@aws-sdk/credential-provider-node": "3.
|
|
27
|
-
"@aws-sdk/middleware-host-header": "3.
|
|
28
|
-
"@aws-sdk/middleware-logger": "3.
|
|
29
|
-
"@aws-sdk/middleware-recursion-detection": "3.
|
|
30
|
-
"@aws-sdk/middleware-user-agent": "3.
|
|
31
|
-
"@aws-sdk/region-config-resolver": "3.
|
|
32
|
-
"@aws-sdk/types": "3.
|
|
33
|
-
"@aws-sdk/util-endpoints": "3.
|
|
34
|
-
"@aws-sdk/util-user-agent-browser": "3.
|
|
35
|
-
"@aws-sdk/util-user-agent-node": "3.
|
|
23
|
+
"@aws-sdk/client-sso-oidc": "3.714.0",
|
|
24
|
+
"@aws-sdk/client-sts": "3.714.0",
|
|
25
|
+
"@aws-sdk/core": "3.714.0",
|
|
26
|
+
"@aws-sdk/credential-provider-node": "3.714.0",
|
|
27
|
+
"@aws-sdk/middleware-host-header": "3.714.0",
|
|
28
|
+
"@aws-sdk/middleware-logger": "3.714.0",
|
|
29
|
+
"@aws-sdk/middleware-recursion-detection": "3.714.0",
|
|
30
|
+
"@aws-sdk/middleware-user-agent": "3.714.0",
|
|
31
|
+
"@aws-sdk/region-config-resolver": "3.714.0",
|
|
32
|
+
"@aws-sdk/types": "3.714.0",
|
|
33
|
+
"@aws-sdk/util-endpoints": "3.714.0",
|
|
34
|
+
"@aws-sdk/util-user-agent-browser": "3.714.0",
|
|
35
|
+
"@aws-sdk/util-user-agent-node": "3.714.0",
|
|
36
36
|
"@smithy/config-resolver": "^3.0.13",
|
|
37
37
|
"@smithy/core": "^2.5.5",
|
|
38
38
|
"@smithy/fetch-http-handler": "^4.1.2",
|