feature/IO-3587-Commision-Cut - Improved localstack client

This commit is contained in:
Dave
2026-03-19 18:23:58 -04:00
parent fcc05156bc
commit 285043a6ba
4 changed files with 1863 additions and 39 deletions

View File

@@ -3,6 +3,7 @@ This app connects to your Docker LocalStack endpoints and gives you a compact in
- SES generated emails
- CloudWatch log groups, streams, and recent events
- Secrets Manager secrets and values
- S3 buckets and object previews
```shell
npm start
@@ -21,9 +22,14 @@ Features:
- SES email workspace with manual refresh, live refresh, search, HTML/text/raw views,
attachment downloads, and new-message highlighting
- CloudWatch Logs workspace with log group selection, stream filtering, adjustable time window,
adjustable event limit, live refresh, and in-browser log search
adjustable event limit, live refresh, in-browser log search, log-level highlighting, wrap toggle,
and optional tail-to-newest mode
- Secrets Manager workspace with live refresh, search, expandable secret metadata, lazy-loaded
secret values, and copyable JSON/text values
secret values, masked-by-default secret viewing, and quick copy actions
- S3 Explorer workspace with bucket selection, prefix filtering, object search, lazy object
previews,
object key/URI copy actions, and downloads
- Shared LocalStack service health strip plus a reset action for clearing saved viewer state
- Compact single-page UI for switching between the local stack tools you use most
Optional environment variables:
@@ -40,4 +46,9 @@ CLOUDWATCH_VIEWER_WINDOW_MS=900000
CLOUDWATCH_VIEWER_LIMIT=200
SECRETS_VIEWER_ENDPOINT=http://localhost:4566
SECRETS_VIEWER_REGION=ca-central-1
S3_VIEWER_ENDPOINT=http://localhost:4566
S3_VIEWER_REGION=ca-central-1
S3_VIEWER_BUCKET=
S3_VIEWER_PREVIEW_BYTES=262144
S3_VIEWER_IMAGE_PREVIEW_BYTES=1048576
```

File diff suppressed because it is too large Load Diff

View File

@@ -10,6 +10,7 @@
"license": "ISC",
"dependencies": {
"@aws-sdk/client-cloudwatch-logs": "^3.1012.0",
"@aws-sdk/client-s3": "^3.1013.0",
"@aws-sdk/client-secrets-manager": "^3.1013.0",
"express": "^5.1.0",
"mailparser": "^3.7.4",
@@ -30,6 +31,69 @@
"node": ">=16.0.0"
}
},
"node_modules/@aws-crypto/crc32c": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-5.2.0.tgz",
"integrity": "sha512-+iWb8qaHLYKrNvGRbiYRHSdKRWhto5XlZUEBwDjYNf+ly5SVYG6zEoYIdxvf5R3zyeP16w4PLBn3rH1xc74Rag==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/util": "^5.2.0",
"@aws-sdk/types": "^3.222.0",
"tslib": "^2.6.2"
}
},
"node_modules/@aws-crypto/sha1-browser": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-5.2.0.tgz",
"integrity": "sha512-OH6lveCFfcDjX4dbAvCFSYUjJZjDr/3XJ3xHtjn3Oj5b9RjojQo8npoLeA/bNwkOkrSQ0wgrHzXk4tDRxGKJeg==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/supports-web-crypto": "^5.2.0",
"@aws-crypto/util": "^5.2.0",
"@aws-sdk/types": "^3.222.0",
"@aws-sdk/util-locate-window": "^3.0.0",
"@smithy/util-utf8": "^2.0.0",
"tslib": "^2.6.2"
}
},
"node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/is-array-buffer": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
"integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.6.2"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-buffer-from": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
"integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/is-array-buffer": "^2.2.0",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@aws-crypto/sha1-browser/node_modules/@smithy/util-utf8": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
"integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/util-buffer-from": "^2.2.0",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@aws-crypto/sha256-browser": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
@@ -208,6 +272,72 @@
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/client-s3": {
"version": "3.1013.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.1013.0.tgz",
"integrity": "sha512-vFdyRyRatF+xP9Fi+4alZkmzZadqOAM34Pm6SUZsYtumNrWkgMc/pFWITnsq6eltM8qcV/vcinQ1ZBXWm/PlKg==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha1-browser": "5.2.0",
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "^3.973.22",
"@aws-sdk/credential-provider-node": "^3.972.23",
"@aws-sdk/middleware-bucket-endpoint": "^3.972.8",
"@aws-sdk/middleware-expect-continue": "^3.972.8",
"@aws-sdk/middleware-flexible-checksums": "^3.974.2",
"@aws-sdk/middleware-host-header": "^3.972.8",
"@aws-sdk/middleware-location-constraint": "^3.972.8",
"@aws-sdk/middleware-logger": "^3.972.8",
"@aws-sdk/middleware-recursion-detection": "^3.972.8",
"@aws-sdk/middleware-sdk-s3": "^3.972.22",
"@aws-sdk/middleware-ssec": "^3.972.8",
"@aws-sdk/middleware-user-agent": "^3.972.23",
"@aws-sdk/region-config-resolver": "^3.972.8",
"@aws-sdk/signature-v4-multi-region": "^3.996.10",
"@aws-sdk/types": "^3.973.6",
"@aws-sdk/util-endpoints": "^3.996.5",
"@aws-sdk/util-user-agent-browser": "^3.972.8",
"@aws-sdk/util-user-agent-node": "^3.973.9",
"@smithy/config-resolver": "^4.4.11",
"@smithy/core": "^3.23.12",
"@smithy/eventstream-serde-browser": "^4.2.12",
"@smithy/eventstream-serde-config-resolver": "^4.3.12",
"@smithy/eventstream-serde-node": "^4.2.12",
"@smithy/fetch-http-handler": "^5.3.15",
"@smithy/hash-blob-browser": "^4.2.13",
"@smithy/hash-node": "^4.2.12",
"@smithy/hash-stream-node": "^4.2.12",
"@smithy/invalid-dependency": "^4.2.12",
"@smithy/md5-js": "^4.2.12",
"@smithy/middleware-content-length": "^4.2.12",
"@smithy/middleware-endpoint": "^4.4.26",
"@smithy/middleware-retry": "^4.4.43",
"@smithy/middleware-serde": "^4.2.15",
"@smithy/middleware-stack": "^4.2.12",
"@smithy/node-config-provider": "^4.3.12",
"@smithy/node-http-handler": "^4.5.0",
"@smithy/protocol-http": "^5.3.12",
"@smithy/smithy-client": "^4.12.6",
"@smithy/types": "^4.13.1",
"@smithy/url-parser": "^4.2.12",
"@smithy/util-base64": "^4.3.2",
"@smithy/util-body-length-browser": "^4.2.2",
"@smithy/util-body-length-node": "^4.2.3",
"@smithy/util-defaults-mode-browser": "^4.3.42",
"@smithy/util-defaults-mode-node": "^4.2.45",
"@smithy/util-endpoints": "^3.3.3",
"@smithy/util-middleware": "^4.2.12",
"@smithy/util-retry": "^4.2.12",
"@smithy/util-stream": "^4.5.20",
"@smithy/util-utf8": "^4.2.2",
"@smithy/util-waiter": "^4.2.13",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/client-secrets-manager": {
"version": "3.1013.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-secrets-manager/-/client-secrets-manager-3.1013.0.tgz",
@@ -282,6 +412,19 @@
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/crc64-nvme": {
"version": "3.972.5",
"resolved": "https://registry.npmjs.org/@aws-sdk/crc64-nvme/-/crc64-nvme-3.972.5.tgz",
"integrity": "sha512-2VbTstbjKdT+yKi8m7b3a9CiVac+pL/IY2PHJwsaGkkHmuuqkJZIErPck1h6P3T9ghQMLSdMPyW6Qp7Di5swFg==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/types": "^4.13.1",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/credential-provider-env": {
"version": "3.972.20",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.20.tgz",
@@ -440,6 +583,64 @@
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-bucket-endpoint": {
"version": "3.972.8",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.972.8.tgz",
"integrity": "sha512-WR525Rr2QJSETa9a050isktyWi/4yIGcmY3BQ1kpHqb0LqUglQHCS8R27dTJxxWNZvQ0RVGtEZjTCbZJpyF3Aw==",
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/types": "^3.973.6",
"@aws-sdk/util-arn-parser": "^3.972.3",
"@smithy/node-config-provider": "^4.3.12",
"@smithy/protocol-http": "^5.3.12",
"@smithy/types": "^4.13.1",
"@smithy/util-config-provider": "^4.2.2",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-expect-continue": {
"version": "3.972.8",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.972.8.tgz",
"integrity": "sha512-5DTBTiotEES1e2jOHAq//zyzCjeMB78lEHd35u15qnrid4Nxm7diqIf9fQQ3Ov0ChH1V3Vvt13thOnrACmfGVQ==",
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/types": "^3.973.6",
"@smithy/protocol-http": "^5.3.12",
"@smithy/types": "^4.13.1",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-flexible-checksums": {
"version": "3.974.2",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.974.2.tgz",
"integrity": "sha512-4soN/N4R6ptdnHw7hXPVDZMIIL+vhN8rwtLdDyS0uD7ExhadtJzolTBIM5eKSkbw5uBEbIwtJc8HCG2NM6tN/g==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/crc32": "5.2.0",
"@aws-crypto/crc32c": "5.2.0",
"@aws-crypto/util": "5.2.0",
"@aws-sdk/core": "^3.973.22",
"@aws-sdk/crc64-nvme": "^3.972.5",
"@aws-sdk/types": "^3.973.6",
"@smithy/is-array-buffer": "^4.2.2",
"@smithy/node-config-provider": "^4.3.12",
"@smithy/protocol-http": "^5.3.12",
"@smithy/types": "^4.13.1",
"@smithy/util-middleware": "^4.2.12",
"@smithy/util-stream": "^4.5.20",
"@smithy/util-utf8": "^4.2.2",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-host-header": {
"version": "3.972.8",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.972.8.tgz",
@@ -455,6 +656,20 @@
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-location-constraint": {
"version": "3.972.8",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.972.8.tgz",
"integrity": "sha512-KaUoFuoFPziIa98DSQsTPeke1gvGXlc5ZGMhy+b+nLxZ4A7jmJgLzjEF95l8aOQN2T/qlPP3MrAyELm8ExXucw==",
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/types": "^3.973.6",
"@smithy/types": "^4.13.1",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-logger": {
"version": "3.972.8",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.972.8.tgz",
@@ -485,6 +700,45 @@
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-sdk-s3": {
"version": "3.972.22",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.972.22.tgz",
"integrity": "sha512-dkUcRxF4rVpPbyHpxjCApGK6b7JpnSeo7tDoNakpRKmiLMCqgy4tlGBgeEYJnZgLrA4xc5jVKuXgvgqKqU18Kw==",
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/core": "^3.973.22",
"@aws-sdk/types": "^3.973.6",
"@aws-sdk/util-arn-parser": "^3.972.3",
"@smithy/core": "^3.23.12",
"@smithy/node-config-provider": "^4.3.12",
"@smithy/protocol-http": "^5.3.12",
"@smithy/signature-v4": "^5.3.12",
"@smithy/smithy-client": "^4.12.6",
"@smithy/types": "^4.13.1",
"@smithy/util-config-provider": "^4.2.2",
"@smithy/util-middleware": "^4.2.12",
"@smithy/util-stream": "^4.5.20",
"@smithy/util-utf8": "^4.2.2",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-ssec": {
"version": "3.972.8",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.972.8.tgz",
"integrity": "sha512-wqlK0yO/TxEC2UsY9wIlqeeutF6jjLe0f96Pbm40XscTo57nImUk9lBcw0dPgsm0sppFtAkSlDrfpK+pC30Wqw==",
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/types": "^3.973.6",
"@smithy/types": "^4.13.1",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/middleware-user-agent": {
"version": "3.972.23",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.972.23.tgz",
@@ -569,6 +823,23 @@
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/signature-v4-multi-region": {
"version": "3.996.10",
"resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.10.tgz",
"integrity": "sha512-yJSbFTedh1McfqXa9wZzjchqQ2puq5PI/qRz5kUjg2UXS5mO4MBYBbeXaZ2rp/h+ZbkcYEdo4Qsiah9psyoxrA==",
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/middleware-sdk-s3": "^3.972.22",
"@aws-sdk/types": "^3.973.6",
"@smithy/protocol-http": "^5.3.12",
"@smithy/signature-v4": "^5.3.12",
"@smithy/types": "^4.13.1",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/token-providers": {
"version": "3.1013.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1013.0.tgz",
@@ -600,6 +871,18 @@
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/util-arn-parser": {
"version": "3.972.3",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.972.3.tgz",
"integrity": "sha512-HzSD8PMFrvgi2Kserxuff5VitNq2sgf3w9qxmskKDiDTThWfVteJxuCS9JXiPIPtmCrp+7N9asfIaVhBFORllA==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.6.2"
},
"engines": {
"node": ">=20.0.0"
}
},
"node_modules/@aws-sdk/util-endpoints": {
"version": "3.996.5",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.996.5.tgz",
@@ -714,6 +997,31 @@
"node": ">=18.0.0"
}
},
"node_modules/@smithy/chunked-blob-reader": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-5.2.2.tgz",
"integrity": "sha512-St+kVicSyayWQca+I1rGitaOEH6uKgE8IUWoYnnEX26SWdWQcL6LvMSD19Lg+vYHKdT9B2Zuu7rd3i6Wnyb/iw==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.6.2"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/chunked-blob-reader-native": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-4.2.3.tgz",
"integrity": "sha512-jA5k5Udn7Y5717L86h4EIv06wIr3xn8GM1qHRi/Nf31annXcXHJjBKvgztnbn2TxH3xWrPBfgwHsOwZf0UmQWw==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/util-base64": "^4.3.2",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/config-resolver": {
"version": "4.4.13",
"resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.13.tgz",
@@ -854,6 +1162,21 @@
"node": ">=18.0.0"
}
},
"node_modules/@smithy/hash-blob-browser": {
"version": "4.2.13",
"resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.2.13.tgz",
"integrity": "sha512-YrF4zWKh+ghLuquldj6e/RzE3xZYL8wIPfkt0MqCRphVICjyyjH8OwKD7LLlKpVEbk4FLizFfC1+gwK6XQdR3g==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/chunked-blob-reader": "^5.2.2",
"@smithy/chunked-blob-reader-native": "^4.2.3",
"@smithy/types": "^4.13.1",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/hash-node": {
"version": "4.2.12",
"resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.12.tgz",
@@ -869,6 +1192,20 @@
"node": ">=18.0.0"
}
},
"node_modules/@smithy/hash-stream-node": {
"version": "4.2.12",
"resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.2.12.tgz",
"integrity": "sha512-O3YbmGExeafuM/kP7Y8r6+1y0hIh3/zn6GROx0uNlB54K9oihAL75Qtc+jFfLNliTi6pxOAYZrRKD9A7iA6UFw==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/types": "^4.13.1",
"@smithy/util-utf8": "^4.2.2",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/invalid-dependency": {
"version": "4.2.12",
"resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.12.tgz",
@@ -894,6 +1231,20 @@
"node": ">=18.0.0"
}
},
"node_modules/@smithy/md5-js": {
"version": "4.2.12",
"resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.2.12.tgz",
"integrity": "sha512-W/oIpHCpWU2+iAkfZYyGWE+qkpuf3vEXHLxQQDx9FPNZTTdnul0dZ2d/gUFrtQ5je1G2kp4cjG0/24YueG2LbQ==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/types": "^4.13.1",
"@smithy/util-utf8": "^4.2.2",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/middleware-content-length": {
"version": "4.2.12",
"resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.12.tgz",
@@ -1340,6 +1691,20 @@
"node": ">=18.0.0"
}
},
"node_modules/@smithy/util-waiter": {
"version": "4.2.13",
"resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.2.13.tgz",
"integrity": "sha512-2zdZ9DTHngRtcYxJK1GUDxruNr53kv5W2Lupe0LMU+Imr6ohQg8M2T14MNkj1Y0wS3FFwpgpGQyvuaMF7CiTmQ==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/abort-controller": "^4.2.12",
"@smithy/types": "^4.13.1",
"tslib": "^2.6.2"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/uuid": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/@smithy/uuid/-/uuid-1.1.2.tgz",

View File

@@ -10,9 +10,10 @@
"keywords": [],
"author": "",
"license": "ISC",
"description": "LocalStack inspector for SES emails, CloudWatch logs, and Secrets Manager",
"description": "LocalStack inspector for SES emails, CloudWatch logs, Secrets Manager, and S3",
"dependencies": {
"@aws-sdk/client-cloudwatch-logs": "^3.1012.0",
"@aws-sdk/client-s3": "^3.1013.0",
"@aws-sdk/client-secrets-manager": "^3.1013.0",
"express": "^5.1.0",
"mailparser": "^3.7.4",