From a3944914e7b0d4d58103b404d32a2c3479fe3b9b Mon Sep 17 00:00:00 2001 From: zendagin Date: Thu, 9 Sep 2021 17:57:07 +0800 Subject: [PATCH] aws sdk v3 --- index.js | 23 +- lib/cloudwatch-integration.js | 10 +- package-lock.json | 1769 +++++++++++++++++++++++----- package.json | 3 +- test/cloudwatch-integration.js | 1 - test/index.js | 18 +- typescript/winston-cloudwatch.d.ts | 6 +- 7 files changed, 1536 insertions(+), 294 deletions(-) diff --git a/index.js b/index.js index 323851a..44aa4b8 100644 --- a/index.js +++ b/index.js @@ -2,8 +2,8 @@ var util = require('util'), winston = require('winston'), - AWS = require('aws-sdk'), cloudWatchIntegration = require('./lib/cloudwatch-integration'), + {CloudWatchLogs} = require('@aws-sdk/client-cloudwatch-logs'), isEmpty = require('lodash.isempty'), assign = require('lodash.assign'), isError = require('lodash.iserror'), @@ -35,14 +35,6 @@ var WinstonCloudWatch = function(options) { if (options.cloudWatchLogs) { this.cloudwatchlogs = options.cloudWatchLogs; } else { - if (this.proxyServer) { - AWS.config.update({ - httpOptions: { - agent: require('proxy-agent')(this.proxyServer) - } - }); - } - var config = {}; if (awsAccessKeyId && awsSecretKey && awsRegion) { @@ -54,11 +46,18 @@ var WinstonCloudWatch = function(options) { config = { region: awsRegion }; } + if (this.proxyServer) { + config.requestHandler = new (require('@aws-sdk/node-http-handler').NodeHttpHandler)({ + httpAgent: require('proxy-agent')(this.proxyServer), + httpsAgent: require('proxy-agent')(this.proxyServer) + }) + } + if (options.awsOptions) { config = assign(config, options.awsOptions); } - this.cloudwatchlogs = new AWS.CloudWatchLogs(config); + this.cloudwatchlogs = new CloudWatchLogs(config); } debug('constructor finished'); @@ -69,7 +68,7 @@ util.inherits(WinstonCloudWatch, winston.Transport); WinstonCloudWatch.prototype.log = function (info, callback) { debug('log (called by winston)', info); - if (!isEmpty(info.message) || isError(info.message)) { + if (!isEmpty(info.message) || isError(info.message)) { this.add(info); } @@ -134,7 +133,7 @@ WinstonCloudWatch.prototype.submit = function(callback) { ); }; -WinstonCloudWatch.prototype.kthxbye = function(callback) { +WinstonCloudWatch.prototype.kthxbye = function(callback) { debug('clearing interval'); clearInterval(this.intervalId); this.intervalId = null; diff --git a/lib/cloudwatch-integration.js b/lib/cloudwatch-integration.js index 2963f66..76b4161 100644 --- a/lib/cloudwatch-integration.js +++ b/lib/cloudwatch-integration.js @@ -81,8 +81,8 @@ lib.upload = function(aws, groupName, streamName, logEvents, retentionInDays, op // InvalidSequenceToken means we need to do a describe to get another token // also do the same if ResourceNotFound as that will result in the last token // for the group being set to null - if (err.code === 'InvalidSequenceTokenException' || err.code === 'ResourceNotFoundException') { - debug(err.code + ', retrying', true); + if (err.name === 'InvalidSequenceTokenException' || err.name === 'ResourceNotFoundException') { + debug(err.name + ', retrying', true); lib.submitWithAnotherToken(aws, groupName, streamName, payload, retentionInDays, options, cb) } else { debug('error during putLogEvents', err, true) @@ -162,7 +162,7 @@ lib.ensureGroupPresent = function ensureGroupPresent(aws, name, retentionInDays, var params = { logGroupName: name }; aws.describeLogStreams(params, function(err, data) { // TODO we should cb(err, false) if there's an error? - if (err && err.code == 'ResourceNotFoundException') { + if (err && err.name == 'ResourceNotFoundException') { debug('create group'); return aws.createLogGroup(params, lib.ignoreInProgress(function(err) { if(!err) lib.putRetentionPolicy(aws, name, retentionInDays); @@ -219,8 +219,8 @@ lib.getStream = function getStream(aws, groupName, streamName, cb) { lib.ignoreInProgress = function ignoreInProgress(cb) { return function(err, data) { - if (err && (err.code == 'OperationAbortedException' || - err.code == 'ResourceAlreadyExistsException')) { + if (err && (err.name == 'OperationAbortedException' || + err.name == 'ResourceAlreadyExistsException')) { debug('ignore operation in progress', err.message); cb(null, data); } else { diff --git a/package-lock.json b/package-lock.json index 2d1febf..94b72a6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,18 +1,16 @@ { "name": "winston-cloudwatch", - "version": "2.5.2", -<<<<<<< HEAD + "version": "3.0.2", "lockfileVersion": 2, -======= - "lockfileVersion": 1, ->>>>>>> 94e3e43df5e6d16a4fe741cb3929f17d5b316601 "requires": true, "packages": { "": { "name": "winston-cloudwatch", - "version": "2.5.2", + "version": "3.0.2", "license": "MIT", "dependencies": { + "@aws-sdk/client-cloudwatch-logs": "^3.30.0", + "@aws-sdk/node-http-handler": "^3.29.0", "async": "^3.1.0", "chalk": "^4.0.0", "fast-safe-stringify": "^2.0.7", @@ -25,7 +23,6 @@ "devDependencies": { "@types/node": "13.11.0", "@types/winston": "2.4.4", - "aws-sdk": "^2.553.0", "clarify": "^2.1.0", "coveralls": "^3.0.7", "istanbul": "^0.4.5", @@ -39,6 +36,780 @@ "winston": "^3.0.0" } }, + "node_modules/@aws-crypto/ie11-detection": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-1.0.0.tgz", + "integrity": "sha512-kCKVhCF1oDxFYgQrxXmIrS5oaWulkvRcPz+QBDMsUr2crbF4VGgGT6+uQhSwJFdUAQ2A//Vq+uT83eJrkzFgXA==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/sha256-browser": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-1.1.1.tgz", + "integrity": "sha512-nS4vdan97It6HcweV58WXtjPbPSc0JXd3sAwlw3Ou5Mc3WllSycAS32Tv2LRn8butNQoU9AE3jEQAOgiMdNC1Q==", + "dependencies": { + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.1.0", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-1.1.0.tgz", + "integrity": "sha512-VIhuqbPgXDVr8sZe2yhgQcDRRmzf4CI8fmC1A3bHiRfE6wlz1d8KpeemqbuoEHotz/Dch9yOxlshyQDNjNFeHA==", + "dependencies": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-1.0.0.tgz", + "integrity": "sha512-IHLfv+WmVH89EW4n6a5eE8/hUlz6qkWGMn/v4r5ZgzcXdTC5nolii2z3k46y01hWRiC2PPhOdeSLzMUCUMco7g==", + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@aws-sdk/abort-controller": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.29.0.tgz", + "integrity": "sha512-MLeexxMs06WkPKuA/ltOCA3TV+vN1WQjEhojNtylQzz/AJDDq4z/7nmIf4lJKM7h1PDuD4XHLPfbxNuv75mu6A==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/client-cloudwatch-logs": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.30.0.tgz", + "integrity": "sha512-ACW7j/5SmmDD+K8cRN1yR+j0gcADu0/4pf2NeXsABwQya6iBane9RWg6qJhEFkig0FC7MTwiiGiaaEdp3jxXxA==", + "dependencies": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/client-sts": "3.30.0", + "@aws-sdk/config-resolver": "3.30.0", + "@aws-sdk/credential-provider-node": "3.30.0", + "@aws-sdk/fetch-http-handler": "3.29.0", + "@aws-sdk/hash-node": "3.29.0", + "@aws-sdk/invalid-dependency": "3.29.0", + "@aws-sdk/middleware-content-length": "3.29.0", + "@aws-sdk/middleware-host-header": "3.29.0", + "@aws-sdk/middleware-logger": "3.29.0", + "@aws-sdk/middleware-retry": "3.29.0", + "@aws-sdk/middleware-serde": "3.29.0", + "@aws-sdk/middleware-signing": "3.30.0", + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/middleware-user-agent": "3.29.0", + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/node-http-handler": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/smithy-client": "3.30.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "@aws-sdk/util-base64-node": "3.29.0", + "@aws-sdk/util-body-length-browser": "3.29.0", + "@aws-sdk/util-body-length-node": "3.29.0", + "@aws-sdk/util-user-agent-browser": "3.29.0", + "@aws-sdk/util-user-agent-node": "3.29.0", + "@aws-sdk/util-utf8-browser": "3.29.0", + "@aws-sdk/util-utf8-node": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@aws-sdk/client-sso": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.30.0.tgz", + "integrity": "sha512-Ctt9CXV8ElFBs05oXGjOIYhJ/aTJZsGEX+dsRP7C3D/oswE/z+Uo7rS7sGkiLo4GOroeqSFduMYRcZtl6gvzyw==", + "dependencies": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.30.0", + "@aws-sdk/fetch-http-handler": "3.29.0", + "@aws-sdk/hash-node": "3.29.0", + "@aws-sdk/invalid-dependency": "3.29.0", + "@aws-sdk/middleware-content-length": "3.29.0", + "@aws-sdk/middleware-host-header": "3.29.0", + "@aws-sdk/middleware-logger": "3.29.0", + "@aws-sdk/middleware-retry": "3.29.0", + "@aws-sdk/middleware-serde": "3.29.0", + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/middleware-user-agent": "3.29.0", + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/node-http-handler": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/smithy-client": "3.30.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "@aws-sdk/util-base64-node": "3.29.0", + "@aws-sdk/util-body-length-browser": "3.29.0", + "@aws-sdk/util-body-length-node": "3.29.0", + "@aws-sdk/util-user-agent-browser": "3.29.0", + "@aws-sdk/util-user-agent-node": "3.29.0", + "@aws-sdk/util-utf8-browser": "3.29.0", + "@aws-sdk/util-utf8-node": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@aws-sdk/client-sts": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.30.0.tgz", + "integrity": "sha512-iJm5XlAcgLiRO3lHbAuVkjT8FpueJsCBZQOmjP7JVk9D8DUTV1NdMQOoqY9iuOZsuY5q8725teIqKL9SmZJqfA==", + "dependencies": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.30.0", + "@aws-sdk/credential-provider-node": "3.30.0", + "@aws-sdk/fetch-http-handler": "3.29.0", + "@aws-sdk/hash-node": "3.29.0", + "@aws-sdk/invalid-dependency": "3.29.0", + "@aws-sdk/middleware-content-length": "3.29.0", + "@aws-sdk/middleware-host-header": "3.29.0", + "@aws-sdk/middleware-logger": "3.29.0", + "@aws-sdk/middleware-retry": "3.29.0", + "@aws-sdk/middleware-sdk-sts": "3.30.0", + "@aws-sdk/middleware-serde": "3.29.0", + "@aws-sdk/middleware-signing": "3.30.0", + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/middleware-user-agent": "3.29.0", + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/node-http-handler": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/smithy-client": "3.30.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "@aws-sdk/util-base64-node": "3.29.0", + "@aws-sdk/util-body-length-browser": "3.29.0", + "@aws-sdk/util-body-length-node": "3.29.0", + "@aws-sdk/util-user-agent-browser": "3.29.0", + "@aws-sdk/util-user-agent-node": "3.29.0", + "@aws-sdk/util-utf8-browser": "3.29.0", + "@aws-sdk/util-utf8-node": "3.29.0", + "entities": "2.2.0", + "fast-xml-parser": "3.19.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@aws-sdk/config-resolver": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.30.0.tgz", + "integrity": "sha512-1qb8WB2uiH2O1UYc98adfmQX3/Rxh1bwU1VW2FxEfCGBTT6wi+Ic1nVTdVy+2gd3usCeIim5mEs8REXgvjLENQ==", + "dependencies": { + "@aws-sdk/signature-v4": "3.30.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.29.0.tgz", + "integrity": "sha512-FUhdZODjkUeTFNfH7EnqN9piQwBR1gg+8NUJt6Rn7G4rj5lN2n2ryAatowIlzIB+/oWDvpPj+yMIE+XGjQrMhg==", + "dependencies": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.29.0.tgz", + "integrity": "sha512-sjyJrJoLhP2ekx+Z3m5g+/YIWYtuKII9eXuTTwRhzBKTpqv0WQm1ilISdNcz691JueF5jHQs4bP6FWk55RUWEg==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.30.0.tgz", + "integrity": "sha512-EEg3x60sAPO8xQc/tm631pk5yxOMOoiw2fsE0ojBeF8X78pYKT6sE2Uz0aj8/d8RtqqA3lsXr4O0txtdYbRokg==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.29.0", + "@aws-sdk/credential-provider-imds": "3.29.0", + "@aws-sdk/credential-provider-sso": "3.30.0", + "@aws-sdk/credential-provider-web-identity": "3.29.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.30.0.tgz", + "integrity": "sha512-mT1ImT8nvo062Yf4WE5xZoEl2Wz4lkkA1oewOjvmNUi/AfBkf0YgIK6+XtoC06O2VWqXUhYv7N357/CzGP2I+w==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.29.0", + "@aws-sdk/credential-provider-imds": "3.29.0", + "@aws-sdk/credential-provider-ini": "3.30.0", + "@aws-sdk/credential-provider-process": "3.29.0", + "@aws-sdk/credential-provider-sso": "3.30.0", + "@aws-sdk/credential-provider-web-identity": "3.29.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.29.0.tgz", + "integrity": "sha512-1dMq84uGh3zcu+/bGohibWYMSxcrjwaIAc4dBU/3+rkNzPPdRA83hzYS34EizQ61JQHnM3z/xX9SLMeaNRKaSA==", + "dependencies": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.30.0.tgz", + "integrity": "sha512-zZ9T7QLGxOHryDTEEojtpZbDtI3Xu5tSNDvAIg7AzCIE75cRbcc8X9bXD2RUFRZTYDCVg2sSHHOcki1uIonOzA==", + "dependencies": { + "@aws-sdk/client-sso": "3.30.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.29.0.tgz", + "integrity": "sha512-TwICG9y/iw08urlCymroQfRRJY++4JZwdhR0/2ycU+/Cgac6u4MfZsB1qD+u9+Q39/TqSz6QwtNhKLNdf0N23A==", + "dependencies": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.29.0.tgz", + "integrity": "sha512-rx+YlHFYzgGsCZMEvJBUdRsqfMGW4RY6J3USQvz63a32jVlMC3Kw9xINaXGhCEmOlUlzdeeIMQOZW5VxavLnjQ==", + "dependencies": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/querystring-builder": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "tslib": "^2.3.0" + } + }, + "node_modules/@aws-sdk/hash-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.29.0.tgz", + "integrity": "sha512-iANkXAGNgUSX17GjyTdrFRE357AmAgnIsuyKhuaK8vi4SPPxHYCyXOdxtUx5TjkzW4bUym3cRJS8zeirayTEHA==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-buffer-from": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/invalid-dependency": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.29.0.tgz", + "integrity": "sha512-0TyZZbPs5SWCF2tT1DXccK5SUx7/bDJCVojgBuW3QRJn9ta3US/u5l7w8k6jwWFU3CQhLAWuG0TD7FhATiM2HQ==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "node_modules/@aws-sdk/is-array-buffer": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.29.0.tgz", + "integrity": "sha512-QqIhHGp2qTfDlW7uNh/T4kcyAU2TfxHA29cppQusuTJjploAXXMzvBdmxjFH1ZvPbKs0Rd7owQ0YnC9Lnq+Nzg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-content-length": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.29.0.tgz", + "integrity": "sha512-g+tOOXQXqKG84XwFrJexZa2iTuYJce9jnjHV4vyfXwVuKrwuf+ZFguPZ4hzEd40vDo5aLM49JtF/OcO4plCneg==", + "dependencies": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.29.0.tgz", + "integrity": "sha512-aBifr86Owrhvy29cvZD17JzdoTtKMxzdjCkMA7ckNP+9Lg7kLI/6ws1yZ6BJlmcOnKxtNSnkvunGmJy8BU8EWQ==", + "dependencies": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.29.0.tgz", + "integrity": "sha512-0rLvuTvfaMWNb7+FApXAH0111FEp/AfG3fO7QkyVrXmHlTrNIJozilhkd0FwEMcQqqM9UK5lPLXwloH9Rkp9vw==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-retry": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.29.0.tgz", + "integrity": "sha512-yRQ48UIGPmK3/jWMJ2LC4trltFevMDEXyvtT6knwDnwXxmuwv7K6udk6TnGaUU5TlLVI1XdRQHaZY7xZH1KbGw==", + "dependencies": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/service-error-classification": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-retry/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.30.0.tgz", + "integrity": "sha512-TZQQ0LA/rjYNgV+DbU0KvyHZaNhihrWf4IeJeKoez1vpvQmU58G5zAm0+rVHbzazJaOQuHYKKdPttOPxl/JAAg==", + "dependencies": { + "@aws-sdk/middleware-signing": "3.30.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/signature-v4": "3.30.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-serde": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.29.0.tgz", + "integrity": "sha512-jN6zuaXg3k9HiWJZjBROiVJEdFaZrMikhyVdqYTT3hR+i08M/9UgVuX84HP/dALChZazOn9MPhvPWGvxrMOr9A==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.30.0.tgz", + "integrity": "sha512-T/zGCijEGODmpbS/HlwnxT0Bn69FhZpBrVAjfofLUFzHteJ5Ab2q7AEt1dOdi3GrtTGStdwbfiZVeTxMKIjaTw==", + "dependencies": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/signature-v4": "3.30.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-stack": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.29.0.tgz", + "integrity": "sha512-S6Jt108uxs/PEoLAgGow9SdMKWXhlg0EGgY77Z4pNPQDrBYoca2kwWeTsyTpgBXSsyV0z0WZB4TJK5/doGv6CA==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.29.0.tgz", + "integrity": "sha512-AVbn9QEbqBgScaD3cxLv7/yi9Up10vYKy/AWIwgTrW0LxOuy9+Za2hdk5eZRP/QpqS/Ibz2/CqcmK1GQ/03kmg==", + "dependencies": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/node-config-provider": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.29.0.tgz", + "integrity": "sha512-ANRnPz4IT4FiSAc+9p0HqGSjL+cdzB2E68BFmbbGin0fZwhflX1BksjuUEibw8Emf8jvhvbUxdtAIUWctTYxOA==", + "dependencies": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/node-http-handler": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.29.0.tgz", + "integrity": "sha512-FnPdoK0hmEr2JO/g7MVE3oeC2TvMpoRDQqUnDrn9C1bzRzgzhHqGVyaiRmc1HECMKjPFYVn02NCzY4qx56K0Ag==", + "dependencies": { + "@aws-sdk/abort-controller": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/querystring-builder": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/property-provider": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.29.0.tgz", + "integrity": "sha512-N2fd3H4mGGE51PgmMbEzBGSNwcyPkEgMxgfZsrQUaFh+CE5uuelOAL70Yzr4IZ4yZJvf1F9e8drtCuUcHnSUEw==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/protocol-http": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.29.0.tgz", + "integrity": "sha512-OIeJ7ukfgGkaIL0/NNM5sxIlfxtOqQN+KoaQ89YeLBlJPVoKnptAw+eWjjLwxLs+r/SbyZHXbBawP+sbzq0mSQ==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/querystring-builder": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.29.0.tgz", + "integrity": "sha512-htrHPmwGfWxl/Mt0JpR63NmlDtmwMJTjvLVrdbxBBXfjiyB8023lEFfyMSDHzD6fegQcw/rOwaliQNAuaVNnXQ==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-uri-escape": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/querystring-parser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.29.0.tgz", + "integrity": "sha512-v22PBXafAHw+wMaSGbq4B9wEsSYV2e0nZgGHZBNML3HPDiAYJqsQHiYEbiz8nzkmoayU0wrVFZ/XfKNXXcXGbw==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/service-error-classification": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.29.0.tgz", + "integrity": "sha512-VqOjXXTLTGbifzg3Fg2g/Ac6W3uzC3llPZjm/b0goM17KLWMGU7JKiem2l+CFyN4sxkver7InNlIUJCJAPB6+Q==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.29.0.tgz", + "integrity": "sha512-x4Chk4+iMiYaxcomZjdg7IwU1mQhJ7iPl/3RrIqCShPIOZDwwH4vLl6Fw0bniOZiHK30JQ1wlAgLxzVP0JMHTw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/signature-v4": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.30.0.tgz", + "integrity": "sha512-uBvut8RrhXGunTDYuJMALlV8IaFHyZHPzadhrqx12QJT+LQevSB4CR2WXZknz0JZ4HcFvpaJqbiionLobwVEuQ==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-hex-encoding": "3.29.0", + "@aws-sdk/util-uri-escape": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/smithy-client": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.30.0.tgz", + "integrity": "sha512-Kokc3OHDY0T5ppjeMnsJEaxOBvonzNvYSQrCEvPbj9yUCLHvEWw4g6USQDfzqyofCwwhuFKFS6hS/bbiW6cXvQ==", + "dependencies": { + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.29.0.tgz", + "integrity": "sha512-8ilWQU5ZTdiRfblmmjl38+6JZKKM8EqA5Sbn8djgDLShCLeVJ2TsL2guzNi+WHcL7BHdv1pI/NNmTcgRUo6yOw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/url-parser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.29.0.tgz", + "integrity": "sha512-385f+g4xeRym2S4bzF+Nc0MB8addAlCSb5hIUJu1JKH6FwFLrNRuixeaelGLyWr77xv25P0ruyXQAFf2ISxzKw==", + "dependencies": { + "@aws-sdk/querystring-parser": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "node_modules/@aws-sdk/util-base64-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.29.0.tgz", + "integrity": "sha512-yMgn5vZ7laVO/497iPDjTdmia3sDdFBDq6k42EZxVTpkUcd8JS2nWJ+9ePuIMwqOgPjhhkOOXiidrbZaUQ+L6Q==", + "dependencies": { + "tslib": "^2.3.0" + } + }, + "node_modules/@aws-sdk/util-base64-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.29.0.tgz", + "integrity": "sha512-4pRwjQ6+yS7SQm+yK3pchrsmGPEuoR2YiNsBG0LVNecQmnxWUbOhaEWIxXKTnAzs9bAt7AWEbLzsW8/cN/yTNw==", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.29.0.tgz", + "integrity": "sha512-cKSwlDlZkcxuhSdoiq1TxleaBvveEgKA2Yo4TYP4DKVPHZuYZtbFv8r1driml1SaIKXg4GQpe+pJit3mxDRxAg==", + "dependencies": { + "tslib": "^2.3.0" + } + }, + "node_modules/@aws-sdk/util-body-length-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.29.0.tgz", + "integrity": "sha512-8rG65GMpsjVFd9jhx5y/dhwbJVIKq0OqwNRK+GoIVDo0KKaGtjNbCVHYYDjpwIuksZumiqvlC0E3AUcXn7p1rQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-buffer-from": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.29.0.tgz", + "integrity": "sha512-4ODxK5y/yONgsuc9SAzZ0j/v0IQkJVCRApziF4Q8NiZ1z9050nZ08rgTEhrTbWgLmDju4SDvJhn/nUNTrsLhug==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-credentials": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-credentials/-/util-credentials-3.29.0.tgz", + "integrity": "sha512-xCWQizP5d6SwbwB2HmxpDqu0WYY7/E7pNrZ+7tSMrJxZlT8Zsd+lFaO23JVFMEBqjjBnpLBr+XkNZgOpD1BYwA==", + "dependencies": { + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.29.0.tgz", + "integrity": "sha512-YZ9fhJ2HKnnPL+8M9/YMFo4906Cvh1NaVOZT61joPM5Vv1rSYXdD1/tvn2qNjVhAJAGFWdBsIqZWw43km5DNpw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.29.0.tgz", + "integrity": "sha512-gvcbl9UdTOvuCCzgbtTTsKnL1l/cnT/CFl0f6ZCQ6qubUTRCuL/aK8DvgWa1n9p/ddCiVKPLmHu/L1xtX4gc0A==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-uri-escape": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.29.0.tgz", + "integrity": "sha512-js834TiNTdwIZOxmGSCPiLETUoc2JslY07D6A+yLNI/kZmmTHa0tKCyPxMqo7LBb+iU9ymky2LLJuDGp6aZNHw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.29.0.tgz", + "integrity": "sha512-se9WLQS3H36u8FUA3/DfnzH3LU77QBRpJN4FmQtcQHR3A5mR2tRty+eOrvIf2R4QtveMWXrQbvScTrca7ZFZug==", + "dependencies": { + "@aws-sdk/types": "3.29.0", + "bowser": "^2.11.0", + "tslib": "^2.3.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.29.0.tgz", + "integrity": "sha512-atyjuDnD1WtIR1sZzcCJcD0JyYKGZ6bYqAhh/apaiPs0LoTyaFGYN8K7wSr3gL8PqD9YYNKfiNiPU3AbY6pW5A==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.29.0.tgz", + "integrity": "sha512-ZIHbBYByMq5vadQ1SZOQTHVtrkGAFiuypATYF5ST8YB3j7XKvflv+fiBX2xQ8xpqb28noEg6dNPnvqkQQ1n/aw==", + "dependencies": { + "tslib": "^2.3.0" + } + }, + "node_modules/@aws-sdk/util-utf8-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.29.0.tgz", + "integrity": "sha512-CIZPDnSvtfv7MeHM/hA1fHXcXJR2f7ULjw4nXsX/BLaKGKf/O6IhOXPt1ecUIpGeUrCgPCqxkDjmThUCa87Bcg==", + "dependencies": { + "@aws-sdk/util-buffer-from": "3.29.0", + "tslib": "^2.3.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, "node_modules/@npmcli/ci-detect": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.3.0.tgz", @@ -486,26 +1257,6 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", "dev": true }, - "node_modules/aws-sdk": { - "version": "2.653.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.653.0.tgz", - "integrity": "sha512-vtpHfoAKoudNa5kknUgQeXzdnmkI63hqKYHuk5u7mx0HelP8iybTxmKfKENlOvkfKtBdCEbcmJRa3DxZUbQPHQ==", - "dev": true, - "dependencies": { - "buffer": "4.9.1", - "events": "1.1.1", - "ieee754": "1.1.13", - "jmespath": "0.15.0", - "querystring": "0.2.0", - "sax": "1.2.1", - "url": "0.10.3", - "uuid": "3.3.2", - "xml2js": "0.4.19" - }, - "engines": { - "node": ">= 0.8.0" - } - }, "node_modules/aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -527,12 +1278,6 @@ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, - "node_modules/base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true - }, "node_modules/bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -551,6 +1296,11 @@ "node": ">=8" } }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==" + }, "node_modules/boxen": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", @@ -664,18 +1414,6 @@ "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, - "node_modules/buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "deprecated": "This version of 'buffer' is out-of-date. You must update to v4.9.2 or newer", - "dev": true, - "dependencies": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, "node_modules/builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", @@ -1345,6 +2083,14 @@ "once": "^1.4.0" } }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/env-variable": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.6.tgz", @@ -1465,15 +2211,6 @@ "node": ">=0.10.0" } }, - "node_modules/events": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -1517,6 +2254,18 @@ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" }, + "node_modules/fast-xml-parser": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz", + "integrity": "sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==", + "bin": { + "xml2js": "cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, "node_modules/fecha": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz", @@ -2024,12 +2773,6 @@ "node": ">=0.10.0" } }, - "node_modules/ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, "node_modules/iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", @@ -2437,15 +3180,6 @@ "integrity": "sha1-o6vicYryQaKykE+EpiWXDzia4yo=", "dev": true }, - "node_modules/jmespath": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz", - "integrity": "sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc=", - "dev": true, - "engines": { - "node": ">= 0.6.0" - } - }, "node_modules/js-yaml": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", @@ -4308,12 +5042,6 @@ "once": "^1.3.1" } }, - "node_modules/punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - }, "node_modules/pupa": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", @@ -4335,16 +5063,6 @@ "node": ">=0.6" } }, - "node_modules/querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, "node_modules/raw-body": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", @@ -4620,12 +5338,6 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "node_modules/sax": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", - "integrity": "sha1-e45lYZCyKOgaZq6nSEgNgozS03o=", - "dev": true - }, "node_modules/semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -4814,6 +5526,7 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "devOptional": true, "engines": { "node": ">=0.10.0" } @@ -5111,9 +5824,9 @@ "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==" }, "node_modules/tslib": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", - "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "node_modules/tunnel-agent": { "version": "0.6.0", @@ -5292,16 +6005,6 @@ "node": ">=6" } }, - "node_modules/url": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz", - "integrity": "sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ=", - "dev": true, - "dependencies": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, "node_modules/url-parse-lax": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", @@ -5623,25 +6326,6 @@ "node": ">=8" } }, - "node_modules/xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "dev": true, - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "node_modules/xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/xregexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", @@ -5740,6 +6424,658 @@ } }, "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-1.0.0.tgz", + "integrity": "sha512-kCKVhCF1oDxFYgQrxXmIrS5oaWulkvRcPz+QBDMsUr2crbF4VGgGT6+uQhSwJFdUAQ2A//Vq+uT83eJrkzFgXA==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-1.1.1.tgz", + "integrity": "sha512-nS4vdan97It6HcweV58WXtjPbPSc0JXd3sAwlw3Ou5Mc3WllSycAS32Tv2LRn8butNQoU9AE3jEQAOgiMdNC1Q==", + "requires": { + "@aws-crypto/ie11-detection": "^1.0.0", + "@aws-crypto/sha256-js": "^1.1.0", + "@aws-crypto/supports-web-crypto": "^1.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/sha256-js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-1.1.0.tgz", + "integrity": "sha512-VIhuqbPgXDVr8sZe2yhgQcDRRmzf4CI8fmC1A3bHiRfE6wlz1d8KpeemqbuoEHotz/Dch9yOxlshyQDNjNFeHA==", + "requires": { + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-1.0.0.tgz", + "integrity": "sha512-IHLfv+WmVH89EW4n6a5eE8/hUlz6qkWGMn/v4r5ZgzcXdTC5nolii2z3k46y01hWRiC2PPhOdeSLzMUCUMco7g==", + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.29.0.tgz", + "integrity": "sha512-MLeexxMs06WkPKuA/ltOCA3TV+vN1WQjEhojNtylQzz/AJDDq4z/7nmIf4lJKM7h1PDuD4XHLPfbxNuv75mu6A==", + "requires": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/client-cloudwatch-logs": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudwatch-logs/-/client-cloudwatch-logs-3.30.0.tgz", + "integrity": "sha512-ACW7j/5SmmDD+K8cRN1yR+j0gcADu0/4pf2NeXsABwQya6iBane9RWg6qJhEFkig0FC7MTwiiGiaaEdp3jxXxA==", + "requires": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/client-sts": "3.30.0", + "@aws-sdk/config-resolver": "3.30.0", + "@aws-sdk/credential-provider-node": "3.30.0", + "@aws-sdk/fetch-http-handler": "3.29.0", + "@aws-sdk/hash-node": "3.29.0", + "@aws-sdk/invalid-dependency": "3.29.0", + "@aws-sdk/middleware-content-length": "3.29.0", + "@aws-sdk/middleware-host-header": "3.29.0", + "@aws-sdk/middleware-logger": "3.29.0", + "@aws-sdk/middleware-retry": "3.29.0", + "@aws-sdk/middleware-serde": "3.29.0", + "@aws-sdk/middleware-signing": "3.30.0", + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/middleware-user-agent": "3.29.0", + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/node-http-handler": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/smithy-client": "3.30.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "@aws-sdk/util-base64-node": "3.29.0", + "@aws-sdk/util-body-length-browser": "3.29.0", + "@aws-sdk/util-body-length-node": "3.29.0", + "@aws-sdk/util-user-agent-browser": "3.29.0", + "@aws-sdk/util-user-agent-node": "3.29.0", + "@aws-sdk/util-utf8-browser": "3.29.0", + "@aws-sdk/util-utf8-node": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/client-sso": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.30.0.tgz", + "integrity": "sha512-Ctt9CXV8ElFBs05oXGjOIYhJ/aTJZsGEX+dsRP7C3D/oswE/z+Uo7rS7sGkiLo4GOroeqSFduMYRcZtl6gvzyw==", + "requires": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.30.0", + "@aws-sdk/fetch-http-handler": "3.29.0", + "@aws-sdk/hash-node": "3.29.0", + "@aws-sdk/invalid-dependency": "3.29.0", + "@aws-sdk/middleware-content-length": "3.29.0", + "@aws-sdk/middleware-host-header": "3.29.0", + "@aws-sdk/middleware-logger": "3.29.0", + "@aws-sdk/middleware-retry": "3.29.0", + "@aws-sdk/middleware-serde": "3.29.0", + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/middleware-user-agent": "3.29.0", + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/node-http-handler": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/smithy-client": "3.30.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "@aws-sdk/util-base64-node": "3.29.0", + "@aws-sdk/util-body-length-browser": "3.29.0", + "@aws-sdk/util-body-length-node": "3.29.0", + "@aws-sdk/util-user-agent-browser": "3.29.0", + "@aws-sdk/util-user-agent-node": "3.29.0", + "@aws-sdk/util-utf8-browser": "3.29.0", + "@aws-sdk/util-utf8-node": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/client-sts": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.30.0.tgz", + "integrity": "sha512-iJm5XlAcgLiRO3lHbAuVkjT8FpueJsCBZQOmjP7JVk9D8DUTV1NdMQOoqY9iuOZsuY5q8725teIqKL9SmZJqfA==", + "requires": { + "@aws-crypto/sha256-browser": "^1.0.0", + "@aws-crypto/sha256-js": "^1.0.0", + "@aws-sdk/config-resolver": "3.30.0", + "@aws-sdk/credential-provider-node": "3.30.0", + "@aws-sdk/fetch-http-handler": "3.29.0", + "@aws-sdk/hash-node": "3.29.0", + "@aws-sdk/invalid-dependency": "3.29.0", + "@aws-sdk/middleware-content-length": "3.29.0", + "@aws-sdk/middleware-host-header": "3.29.0", + "@aws-sdk/middleware-logger": "3.29.0", + "@aws-sdk/middleware-retry": "3.29.0", + "@aws-sdk/middleware-sdk-sts": "3.30.0", + "@aws-sdk/middleware-serde": "3.29.0", + "@aws-sdk/middleware-signing": "3.30.0", + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/middleware-user-agent": "3.29.0", + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/node-http-handler": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/smithy-client": "3.30.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "@aws-sdk/util-base64-node": "3.29.0", + "@aws-sdk/util-body-length-browser": "3.29.0", + "@aws-sdk/util-body-length-node": "3.29.0", + "@aws-sdk/util-user-agent-browser": "3.29.0", + "@aws-sdk/util-user-agent-node": "3.29.0", + "@aws-sdk/util-utf8-browser": "3.29.0", + "@aws-sdk/util-utf8-node": "3.29.0", + "entities": "2.2.0", + "fast-xml-parser": "3.19.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.30.0.tgz", + "integrity": "sha512-1qb8WB2uiH2O1UYc98adfmQX3/Rxh1bwU1VW2FxEfCGBTT6wi+Ic1nVTdVy+2gd3usCeIim5mEs8REXgvjLENQ==", + "requires": { + "@aws-sdk/signature-v4": "3.30.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.29.0.tgz", + "integrity": "sha512-FUhdZODjkUeTFNfH7EnqN9piQwBR1gg+8NUJt6Rn7G4rj5lN2n2ryAatowIlzIB+/oWDvpPj+yMIE+XGjQrMhg==", + "requires": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.29.0.tgz", + "integrity": "sha512-sjyJrJoLhP2ekx+Z3m5g+/YIWYtuKII9eXuTTwRhzBKTpqv0WQm1ilISdNcz691JueF5jHQs4bP6FWk55RUWEg==", + "requires": { + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/url-parser": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.30.0.tgz", + "integrity": "sha512-EEg3x60sAPO8xQc/tm631pk5yxOMOoiw2fsE0ojBeF8X78pYKT6sE2Uz0aj8/d8RtqqA3lsXr4O0txtdYbRokg==", + "requires": { + "@aws-sdk/credential-provider-env": "3.29.0", + "@aws-sdk/credential-provider-imds": "3.29.0", + "@aws-sdk/credential-provider-sso": "3.30.0", + "@aws-sdk/credential-provider-web-identity": "3.29.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.30.0.tgz", + "integrity": "sha512-mT1ImT8nvo062Yf4WE5xZoEl2Wz4lkkA1oewOjvmNUi/AfBkf0YgIK6+XtoC06O2VWqXUhYv7N357/CzGP2I+w==", + "requires": { + "@aws-sdk/credential-provider-env": "3.29.0", + "@aws-sdk/credential-provider-imds": "3.29.0", + "@aws-sdk/credential-provider-ini": "3.30.0", + "@aws-sdk/credential-provider-process": "3.29.0", + "@aws-sdk/credential-provider-sso": "3.30.0", + "@aws-sdk/credential-provider-web-identity": "3.29.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.29.0.tgz", + "integrity": "sha512-1dMq84uGh3zcu+/bGohibWYMSxcrjwaIAc4dBU/3+rkNzPPdRA83hzYS34EizQ61JQHnM3z/xX9SLMeaNRKaSA==", + "requires": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.30.0.tgz", + "integrity": "sha512-zZ9T7QLGxOHryDTEEojtpZbDtI3Xu5tSNDvAIg7AzCIE75cRbcc8X9bXD2RUFRZTYDCVg2sSHHOcki1uIonOzA==", + "requires": { + "@aws-sdk/client-sso": "3.30.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-credentials": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.29.0.tgz", + "integrity": "sha512-TwICG9y/iw08urlCymroQfRRJY++4JZwdhR0/2ycU+/Cgac6u4MfZsB1qD+u9+Q39/TqSz6QwtNhKLNdf0N23A==", + "requires": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.29.0.tgz", + "integrity": "sha512-rx+YlHFYzgGsCZMEvJBUdRsqfMGW4RY6J3USQvz63a32jVlMC3Kw9xINaXGhCEmOlUlzdeeIMQOZW5VxavLnjQ==", + "requires": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/querystring-builder": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-base64-browser": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/hash-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.29.0.tgz", + "integrity": "sha512-iANkXAGNgUSX17GjyTdrFRE357AmAgnIsuyKhuaK8vi4SPPxHYCyXOdxtUx5TjkzW4bUym3cRJS8zeirayTEHA==", + "requires": { + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-buffer-from": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.29.0.tgz", + "integrity": "sha512-0TyZZbPs5SWCF2tT1DXccK5SUx7/bDJCVojgBuW3QRJn9ta3US/u5l7w8k6jwWFU3CQhLAWuG0TD7FhATiM2HQ==", + "requires": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/is-array-buffer": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.29.0.tgz", + "integrity": "sha512-QqIhHGp2qTfDlW7uNh/T4kcyAU2TfxHA29cppQusuTJjploAXXMzvBdmxjFH1ZvPbKs0Rd7owQ0YnC9Lnq+Nzg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.29.0.tgz", + "integrity": "sha512-g+tOOXQXqKG84XwFrJexZa2iTuYJce9jnjHV4vyfXwVuKrwuf+ZFguPZ4hzEd40vDo5aLM49JtF/OcO4plCneg==", + "requires": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.29.0.tgz", + "integrity": "sha512-aBifr86Owrhvy29cvZD17JzdoTtKMxzdjCkMA7ckNP+9Lg7kLI/6ws1yZ6BJlmcOnKxtNSnkvunGmJy8BU8EWQ==", + "requires": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.29.0.tgz", + "integrity": "sha512-0rLvuTvfaMWNb7+FApXAH0111FEp/AfG3fO7QkyVrXmHlTrNIJozilhkd0FwEMcQqqM9UK5lPLXwloH9Rkp9vw==", + "requires": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.29.0.tgz", + "integrity": "sha512-yRQ48UIGPmK3/jWMJ2LC4trltFevMDEXyvtT6knwDnwXxmuwv7K6udk6TnGaUU5TlLVI1XdRQHaZY7xZH1KbGw==", + "requires": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/service-error-classification": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0", + "uuid": "^8.3.2" + }, + "dependencies": { + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + } + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.30.0.tgz", + "integrity": "sha512-TZQQ0LA/rjYNgV+DbU0KvyHZaNhihrWf4IeJeKoez1vpvQmU58G5zAm0+rVHbzazJaOQuHYKKdPttOPxl/JAAg==", + "requires": { + "@aws-sdk/middleware-signing": "3.30.0", + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/signature-v4": "3.30.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.29.0.tgz", + "integrity": "sha512-jN6zuaXg3k9HiWJZjBROiVJEdFaZrMikhyVdqYTT3hR+i08M/9UgVuX84HP/dALChZazOn9MPhvPWGvxrMOr9A==", + "requires": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.30.0.tgz", + "integrity": "sha512-T/zGCijEGODmpbS/HlwnxT0Bn69FhZpBrVAjfofLUFzHteJ5Ab2q7AEt1dOdi3GrtTGStdwbfiZVeTxMKIjaTw==", + "requires": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/signature-v4": "3.30.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.29.0.tgz", + "integrity": "sha512-S6Jt108uxs/PEoLAgGow9SdMKWXhlg0EGgY77Z4pNPQDrBYoca2kwWeTsyTpgBXSsyV0z0WZB4TJK5/doGv6CA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.29.0.tgz", + "integrity": "sha512-AVbn9QEbqBgScaD3cxLv7/yi9Up10vYKy/AWIwgTrW0LxOuy9+Za2hdk5eZRP/QpqS/Ibz2/CqcmK1GQ/03kmg==", + "requires": { + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.29.0.tgz", + "integrity": "sha512-ANRnPz4IT4FiSAc+9p0HqGSjL+cdzB2E68BFmbbGin0fZwhflX1BksjuUEibw8Emf8jvhvbUxdtAIUWctTYxOA==", + "requires": { + "@aws-sdk/property-provider": "3.29.0", + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.29.0.tgz", + "integrity": "sha512-FnPdoK0hmEr2JO/g7MVE3oeC2TvMpoRDQqUnDrn9C1bzRzgzhHqGVyaiRmc1HECMKjPFYVn02NCzY4qx56K0Ag==", + "requires": { + "@aws-sdk/abort-controller": "3.29.0", + "@aws-sdk/protocol-http": "3.29.0", + "@aws-sdk/querystring-builder": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/property-provider": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.29.0.tgz", + "integrity": "sha512-N2fd3H4mGGE51PgmMbEzBGSNwcyPkEgMxgfZsrQUaFh+CE5uuelOAL70Yzr4IZ4yZJvf1F9e8drtCuUcHnSUEw==", + "requires": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.29.0.tgz", + "integrity": "sha512-OIeJ7ukfgGkaIL0/NNM5sxIlfxtOqQN+KoaQ89YeLBlJPVoKnptAw+eWjjLwxLs+r/SbyZHXbBawP+sbzq0mSQ==", + "requires": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.29.0.tgz", + "integrity": "sha512-htrHPmwGfWxl/Mt0JpR63NmlDtmwMJTjvLVrdbxBBXfjiyB8023lEFfyMSDHzD6fegQcw/rOwaliQNAuaVNnXQ==", + "requires": { + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-uri-escape": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.29.0.tgz", + "integrity": "sha512-v22PBXafAHw+wMaSGbq4B9wEsSYV2e0nZgGHZBNML3HPDiAYJqsQHiYEbiz8nzkmoayU0wrVFZ/XfKNXXcXGbw==", + "requires": { + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.29.0.tgz", + "integrity": "sha512-VqOjXXTLTGbifzg3Fg2g/Ac6W3uzC3llPZjm/b0goM17KLWMGU7JKiem2l+CFyN4sxkver7InNlIUJCJAPB6+Q==" + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.29.0.tgz", + "integrity": "sha512-x4Chk4+iMiYaxcomZjdg7IwU1mQhJ7iPl/3RrIqCShPIOZDwwH4vLl6Fw0bniOZiHK30JQ1wlAgLxzVP0JMHTw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.30.0.tgz", + "integrity": "sha512-uBvut8RrhXGunTDYuJMALlV8IaFHyZHPzadhrqx12QJT+LQevSB4CR2WXZknz0JZ4HcFvpaJqbiionLobwVEuQ==", + "requires": { + "@aws-sdk/is-array-buffer": "3.29.0", + "@aws-sdk/types": "3.29.0", + "@aws-sdk/util-hex-encoding": "3.29.0", + "@aws-sdk/util-uri-escape": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.30.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.30.0.tgz", + "integrity": "sha512-Kokc3OHDY0T5ppjeMnsJEaxOBvonzNvYSQrCEvPbj9yUCLHvEWw4g6USQDfzqyofCwwhuFKFS6hS/bbiW6cXvQ==", + "requires": { + "@aws-sdk/middleware-stack": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/types": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.29.0.tgz", + "integrity": "sha512-8ilWQU5ZTdiRfblmmjl38+6JZKKM8EqA5Sbn8djgDLShCLeVJ2TsL2guzNi+WHcL7BHdv1pI/NNmTcgRUo6yOw==" + }, + "@aws-sdk/url-parser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.29.0.tgz", + "integrity": "sha512-385f+g4xeRym2S4bzF+Nc0MB8addAlCSb5hIUJu1JKH6FwFLrNRuixeaelGLyWr77xv25P0ruyXQAFf2ISxzKw==", + "requires": { + "@aws-sdk/querystring-parser": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-base64-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.29.0.tgz", + "integrity": "sha512-yMgn5vZ7laVO/497iPDjTdmia3sDdFBDq6k42EZxVTpkUcd8JS2nWJ+9ePuIMwqOgPjhhkOOXiidrbZaUQ+L6Q==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-base64-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.29.0.tgz", + "integrity": "sha512-4pRwjQ6+yS7SQm+yK3pchrsmGPEuoR2YiNsBG0LVNecQmnxWUbOhaEWIxXKTnAzs9bAt7AWEbLzsW8/cN/yTNw==", + "requires": { + "@aws-sdk/util-buffer-from": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-body-length-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.29.0.tgz", + "integrity": "sha512-cKSwlDlZkcxuhSdoiq1TxleaBvveEgKA2Yo4TYP4DKVPHZuYZtbFv8r1driml1SaIKXg4GQpe+pJit3mxDRxAg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-body-length-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.29.0.tgz", + "integrity": "sha512-8rG65GMpsjVFd9jhx5y/dhwbJVIKq0OqwNRK+GoIVDo0KKaGtjNbCVHYYDjpwIuksZumiqvlC0E3AUcXn7p1rQ==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-buffer-from": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.29.0.tgz", + "integrity": "sha512-4ODxK5y/yONgsuc9SAzZ0j/v0IQkJVCRApziF4Q8NiZ1z9050nZ08rgTEhrTbWgLmDju4SDvJhn/nUNTrsLhug==", + "requires": { + "@aws-sdk/is-array-buffer": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-credentials": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-credentials/-/util-credentials-3.29.0.tgz", + "integrity": "sha512-xCWQizP5d6SwbwB2HmxpDqu0WYY7/E7pNrZ+7tSMrJxZlT8Zsd+lFaO23JVFMEBqjjBnpLBr+XkNZgOpD1BYwA==", + "requires": { + "@aws-sdk/shared-ini-file-loader": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-hex-encoding": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.29.0.tgz", + "integrity": "sha512-YZ9fhJ2HKnnPL+8M9/YMFo4906Cvh1NaVOZT61joPM5Vv1rSYXdD1/tvn2qNjVhAJAGFWdBsIqZWw43km5DNpw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-locate-window": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.29.0.tgz", + "integrity": "sha512-gvcbl9UdTOvuCCzgbtTTsKnL1l/cnT/CFl0f6ZCQ6qubUTRCuL/aK8DvgWa1n9p/ddCiVKPLmHu/L1xtX4gc0A==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-uri-escape": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.29.0.tgz", + "integrity": "sha512-js834TiNTdwIZOxmGSCPiLETUoc2JslY07D6A+yLNI/kZmmTHa0tKCyPxMqo7LBb+iU9ymky2LLJuDGp6aZNHw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.29.0.tgz", + "integrity": "sha512-se9WLQS3H36u8FUA3/DfnzH3LU77QBRpJN4FmQtcQHR3A5mR2tRty+eOrvIf2R4QtveMWXrQbvScTrca7ZFZug==", + "requires": { + "@aws-sdk/types": "3.29.0", + "bowser": "^2.11.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.29.0.tgz", + "integrity": "sha512-atyjuDnD1WtIR1sZzcCJcD0JyYKGZ6bYqAhh/apaiPs0LoTyaFGYN8K7wSr3gL8PqD9YYNKfiNiPU3AbY6pW5A==", + "requires": { + "@aws-sdk/node-config-provider": "3.29.0", + "@aws-sdk/types": "3.29.0", + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-utf8-browser": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.29.0.tgz", + "integrity": "sha512-ZIHbBYByMq5vadQ1SZOQTHVtrkGAFiuypATYF5ST8YB3j7XKvflv+fiBX2xQ8xpqb28noEg6dNPnvqkQQ1n/aw==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@aws-sdk/util-utf8-node": { + "version": "3.29.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.29.0.tgz", + "integrity": "sha512-CIZPDnSvtfv7MeHM/hA1fHXcXJR2f7ULjw4nXsX/BLaKGKf/O6IhOXPt1ecUIpGeUrCgPCqxkDjmThUCa87Bcg==", + "requires": { + "@aws-sdk/util-buffer-from": "3.29.0", + "tslib": "^2.3.0" + } + }, "@npmcli/ci-detect": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.3.0.tgz", @@ -6102,23 +7438,6 @@ "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", "dev": true }, - "aws-sdk": { - "version": "2.653.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.653.0.tgz", - "integrity": "sha512-vtpHfoAKoudNa5kknUgQeXzdnmkI63hqKYHuk5u7mx0HelP8iybTxmKfKENlOvkfKtBdCEbcmJRa3DxZUbQPHQ==", - "dev": true, - "requires": { - "buffer": "4.9.1", - "events": "1.1.1", - "ieee754": "1.1.13", - "jmespath": "0.15.0", - "querystring": "0.2.0", - "sax": "1.2.1", - "url": "0.10.3", - "uuid": "3.3.2", - "xml2js": "0.4.19" - } - }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", @@ -6137,12 +7456,6 @@ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", "dev": true }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true - }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -6158,6 +7471,11 @@ "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", "dev": true }, + "bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==" + }, "boxen": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", @@ -6249,17 +7567,6 @@ "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", "dev": true }, - "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, "builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", @@ -6538,16 +7845,9 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "color-string": { -<<<<<<< HEAD "version": "1.5.3", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", -======= - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.6.0.tgz", - "integrity": "sha512-c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA==", - "dev": true, ->>>>>>> 94e3e43df5e6d16a4fe741cb3929f17d5b316601 "requires": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -6820,6 +8120,11 @@ "once": "^1.4.0" } }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==" + }, "env-variable": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/env-variable/-/env-variable-0.0.6.tgz", @@ -6900,12 +8205,6 @@ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, - "events": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", - "dev": true - }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -6946,6 +8245,11 @@ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" }, + "fast-xml-parser": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-3.19.0.tgz", + "integrity": "sha512-4pXwmBplsCPv8FOY1WRakF970TjNGnGnfbOnLqjlYvMiF1SR3yOHyxMR/YCXpPTOspNF5gwudqktIP4VsWkvBg==" + }, "fecha": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fecha/-/fecha-2.3.3.tgz", @@ -7140,9 +8444,9 @@ } }, "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", "dev": true, "requires": { "is-glob": "^4.0.1" @@ -7188,9 +8492,9 @@ "dev": true }, "handlebars": { - "version": "4.7.7", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.7.tgz", - "integrity": "sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==", + "version": "4.7.6", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", + "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, "requires": { "minimist": "^1.2.5", @@ -7266,29 +8570,12 @@ "dev": true }, "hosted-git-info": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", - "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", + "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", "dev": true, "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "lru-cache": "^5.1.1" } }, "http-cache-semantics": { @@ -7356,12 +8643,6 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", @@ -7667,12 +8948,6 @@ "integrity": "sha1-o6vicYryQaKykE+EpiWXDzia4yo=", "dev": true }, - "jmespath": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/jmespath/-/jmespath-0.15.0.tgz", - "integrity": "sha1-o/Iiqarp+Wb10nx5ZRDigJF2Qhc=", - "dev": true - }, "js-yaml": { "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", @@ -8041,6 +9316,17 @@ "ssri": "^8.0.1", "tar": "^6.0.2", "unique-filename": "^1.1.1" + }, + "dependencies": { + "ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "dev": true, + "requires": { + "minipass": "^3.1.1" + } + } } }, "chownr": { @@ -8562,9 +9848,9 @@ "dev": true }, "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", + "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", "dev": true }, "npm-bundled": { @@ -9143,12 +10429,6 @@ "once": "^1.3.1" } }, - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - }, "pupa": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.0.1.tgz", @@ -9164,12 +10444,6 @@ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, "raw-body": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", @@ -9411,12 +10685,6 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "sax": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz", - "integrity": "sha1-e45lYZCyKOgaZq6nSEgNgozS03o=", - "dev": true - }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -9581,7 +10849,8 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "devOptional": true }, "spawn-please": { "version": "0.3.0", @@ -9613,9 +10882,9 @@ } }, "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", + "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", "dev": true, "requires": { "minipass": "^3.1.1" @@ -9800,9 +11069,9 @@ "integrity": "sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==" }, "tslib": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.2.0.tgz", - "integrity": "sha512-gS9GVHRU+RGn5KQM2rllAlR3dU6m7AcpJKdtH8gFvQiC4Otgk98XnmMU+nZenHt/+VhnBPWwgrJsyrdcw6i23w==" + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "tunnel-agent": { "version": "0.6.0", @@ -9946,16 +11215,6 @@ } } }, - "url": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz", - "integrity": "sha1-Ah5NnHcF8hu/N9A861h2dAJ3TGQ=", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - } - }, "url-parse-lax": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", @@ -10225,22 +11484,6 @@ "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "dev": true, - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", - "dev": true - }, "xregexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", diff --git a/package.json b/package.json index 465d7b3..c93d963 100644 --- a/package.json +++ b/package.json @@ -23,6 +23,8 @@ "winston": "^3.0.0" }, "dependencies": { + "@aws-sdk/client-cloudwatch-logs": "^3.30.0", + "@aws-sdk/node-http-handler": "^3.29.0", "async": "^3.1.0", "chalk": "^4.0.0", "fast-safe-stringify": "^2.0.7", @@ -33,7 +35,6 @@ "proxy-agent": "^4.0.1" }, "devDependencies": { - "aws-sdk": "^2.553.0", "@types/node": "13.11.0", "@types/winston": "2.4.4", "clarify": "^2.1.0", diff --git a/test/cloudwatch-integration.js b/test/cloudwatch-integration.js index b5a0922..ed0100b 100644 --- a/test/cloudwatch-integration.js +++ b/test/cloudwatch-integration.js @@ -1,7 +1,6 @@ describe('cloudwatch-integration', function() { var lib = require('../lib/cloudwatch-integration'), - AWS = require('aws-sdk'), sinon = require('sinon'), should = require('should'); diff --git a/test/index.js b/test/index.js index adf5451..dcf4363 100644 --- a/test/index.js +++ b/test/index.js @@ -39,7 +39,7 @@ describe('index', function() { mockery.registerMock('proxy-agent', function() { return 'fake' }); mockery.registerMock('winston', stubbedWinston); - mockery.registerMock('aws-sdk', stubbedAWS); + mockery.registerMock('@aws-sdk/client-cloudwatch-logs', stubbedAWS); mockery.registerMock('./lib/cloudwatch-integration', stubbedCloudwatchIntegration); mockery.registerAllowable('../index.js'); @@ -91,8 +91,8 @@ describe('index', function() { proxyServer: 'http://test.com' }; var transport = new WinstonCloudWatch(options); - stubbedAWS.config.update.calledOnce.should.equal(true); - stubbedAWS.config.update.args[0][0].httpOptions.agent.should.equal('fake'); + transport.cloudwatchlogs.fakeOptions.requestHandler.httpAgent.should.equal('fake'); + transport.cloudwatchlogs.fakeOptions.requestHandler.httpsAgent.should.equal('fake'); }); }); @@ -134,7 +134,7 @@ describe('index', function() { before(function(done) { transport = new WinstonCloudWatch(options); - transport.log({ level: 'level', message: 'message', something: 'else' }, + transport.log({ level: 'level', message: 'message', something: 'else' }, function() { clock.tick(2000); done(); @@ -172,7 +172,7 @@ describe('index', function() { var options = { messageFormatter: function(log) { - return log.level + ' ' + log.message + ' ' + log.something; + return log.level + ' ' + log.message + ' ' + log.something; } }; @@ -279,20 +279,20 @@ describe('index', function() { transport.add({ message: 'message' + index }); } - transport.kthxbye(function() { + transport.kthxbye(function() { transport.logEvents.length.should.equal(0); done(); }); clock.tick(1); }); - - it('should exit if logs are not cleared by the timeout period', function(done) { + + it('should exit if logs are not cleared by the timeout period', function(done) { transport.add({ message: 'message' }); transport.submit.callsFake(function(cb){ clock.tick(500); cb(); // callback is called but logEvents is not cleared - }); + }); transport.kthxbye(function(error) { error.should.be.Error(); diff --git a/typescript/winston-cloudwatch.d.ts b/typescript/winston-cloudwatch.d.ts index cd0f609..91a510e 100644 --- a/typescript/winston-cloudwatch.d.ts +++ b/typescript/winston-cloudwatch.d.ts @@ -1,6 +1,6 @@ import TransportStream = require("winston-transport"); -import { CloudWatch, CloudWatchLogs } from "aws-sdk"; +import {CloudWatchLogs, CloudWatchLogsClientConfig, DescribeLogStreamsCommandOutput} from "@aws-sdk/client-cloudwatch-logs"; import winston = require('winston'); @@ -36,7 +36,7 @@ declare class WinstonCloudwatch extends TransportStream { streamName: string, cb: (( err: Error, - data: CloudWatchLogs.Types.DescribeLogStreamsResponse + data: DescribeLogStreamsCommandOutput ) => void) ): void; ignoreInProgress(cb: ((err: Error) => void)): void; @@ -60,7 +60,7 @@ declare namespace WinstonCloudwatch { awsAccessKeyId?: string; awsSecretKey?: string; awsRegion?: string; - awsOptions?: CloudWatch.Types.ClientConfiguration; + awsOptions?: CloudWatchLogsClientConfig; jsonMessage?: boolean; messageFormatter?: (logObject: LogObject) => string; proxyServer?: string;