From 223fdde658a2d53d3d9060a7e25e246fe39fa069 Mon Sep 17 00:00:00 2001 From: dtfiedler Date: Thu, 23 May 2024 09:44:35 -0600 Subject: [PATCH 1/7] chore(cleanup): with litestream we can remove any communication with S3 from the service Also updates docker-compose so one can easily spin up the service and litestream if they wish --- .env.litestream.sample | 6 + .env.test | 1 - README.md | 21 +- docker-compose.yaml | 21 +- litestream/.env.sample | 6 + litestream/Dockerfile | 15 +- litestream/docker-entrypoint.sh | 20 +- litestream/install-ytt.sh | 18 + litestream/litestream.template.yaml | 5 + package.json | 7 +- src/api/warp.ts | 4 +- src/constants.ts | 2 - src/system.ts | 250 ----- yarn.lock | 1310 +-------------------------- 14 files changed, 98 insertions(+), 1588 deletions(-) create mode 100644 .env.litestream.sample create mode 100644 litestream/.env.sample create mode 100755 litestream/install-ytt.sh diff --git a/.env.litestream.sample b/.env.litestream.sample new file mode 100644 index 0000000..fb7dc95 --- /dev/null +++ b/.env.litestream.sample @@ -0,0 +1,6 @@ +TVAL_LOCAL_DB_PATH=/cache/warp/sqlite +TVAL_AWS_ACCESS_KEY_ID= +TVAL_AWS_SECRET_ACCESS_KEY= +TVAL_S3_BUCKET_PATH=s3://// +WAIT_TIME_SECONDS=0 +RESTORE_FROM_BACKUP=false diff --git a/.env.test b/.env.test index 3adfddc..ffc460c 100644 --- a/.env.test +++ b/.env.test @@ -6,4 +6,3 @@ LOG_FORMAT=simple NODE_VERSION=18.17.0 BLOCKLIST_CONTRACT_IDS='' PREFETCH_CONTRACTS=false -BOOTSTRAP_CONTRACTS=false diff --git a/README.md b/README.md index 2d670bc..68d059d 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,19 @@ docker run -e GATEWAY_HOST=arweave.net -p 3000:3000 ghcr.io/ar-io/arns-service:l You can run on a different port by changing the `-e PORT=3000 -p 3000:3000` to `-e PORT=4000 -p 4000:4000`, for example, or specify a `.env` file with `--env-file` flag. +#### Profiles + +The service can be run with different profiles to facilitate different environments. The following profiles are supported: + +- `test`: runs the service and other containers for executing integration tests +- `litestream`: runs the service with [Litestream] for syncing SQLite data to S3 + +To run the service with a profile, you can use the `--profile` flag: + +```shell +docker compose --env-file .env --profile litestream up --build +``` + ## Warp The service leverages [Warp SDK] to retrieve, evaluate and cache contract state. To request a contract state, run: @@ -92,7 +105,6 @@ The service can be configured using environment variables. The following environ - `PREFETCH_CONTRACTS`: boolean to enable/disable prefetching of contracts on startup. Defaults to `true`. - `PREFETCH_CONTRACT_IDS`: comma separated list of contract IDs to prefetch on startup - `ARNS_CONTRACT_TX_ID`: the ArNS contract transaction ID. Defaults to `bLAgYxAdX2Ry-nt6aH2ixgvJXbpsEYm28NgJgyqfs-U` and when `PREFETCH_CONTRACTS` is `true`, will be prefetched on startup. -- `BOOTSTRAP_CACHE`: loads warp cache from S3 on startup. Defaults to `false`. - `BLOCKLISTED_CONTRACT_IDS`: comma separated list of contract IDs to block evaluation. These contracts will return `403` when requested. You can `cp .env.sample .env` and modify them locally. @@ -127,11 +139,7 @@ yarn test:docker http://localhost:3000/api-docs ``` -For production, the Swagger UI is available at: - -```shell -https://api.arns.app/api-docs -``` +For production, the Swagger UI is available at [https://api.arns.app/api-docs](https://api.arns.app/api-docs) ## Contributions @@ -150,3 +158,4 @@ https://api.arns.app/api-docs [Warp SDK]: https://github.com/warp-contracts/warp [warp-contracts-sqlite]: https://github.com/warp-contracts/warp-contracts-sqlite [D.R.E nodes]: https://academy.warp.cc/docs/dre/overview +[Litestream]: https://litestream.io/ diff --git a/docker-compose.yaml b/docker-compose.yaml index be9fd57..65a9f65 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -1,12 +1,12 @@ -version: '3' - services: arlocal: + profiles: ['test'] image: textury/arlocal:v1.1.35 ports: - '1984:1984' arns-service: + profiles: ['test', '', 'litestream'] build: context: . args: @@ -22,8 +22,25 @@ services: WAIT_TIME_SECONDS: ${WAIT_TIME_SECONDS:-} ports: - '3000:3000' + volumes: + - ${WARP_SQLITE_CACHE_PATH:-./cache/warp/sqlite}:/usr/src/app/cache/sqlite + + litestream: + profiles: ['litestream'] + build: + context: litestream + environment: + TVAL_LOCAL_DB_PATH: ${LOCAL_DB_PATH:-/app/data/sqlite} + TVAL_S3_BUCKET_PATH: ${S3_BUCKET_PATH:-} + TVAL_AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID:-} + TVAL_AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY:-} + WAIT_TIME_SECONDS: ${WAIT_TIME_SECONDS:-} + RESTORE_FROM_BACKUP: ${RESTORE_FROM_BACKUP:-false} + volumes: + - ${WARP_SQLITE_CACHE_PATH:-./cache/warp/sqlite}:/app/data/sqlite test-runner: + profiles: ['test'] build: context: . dockerfile: tests/integration/Dockerfile.integration diff --git a/litestream/.env.sample b/litestream/.env.sample new file mode 100644 index 0000000..fb7dc95 --- /dev/null +++ b/litestream/.env.sample @@ -0,0 +1,6 @@ +TVAL_LOCAL_DB_PATH=/cache/warp/sqlite +TVAL_AWS_ACCESS_KEY_ID= +TVAL_AWS_SECRET_ACCESS_KEY= +TVAL_S3_BUCKET_PATH=s3://// +WAIT_TIME_SECONDS=0 +RESTORE_FROM_BACKUP=false diff --git a/litestream/Dockerfile b/litestream/Dockerfile index 2a1c912..5f62bbe 100644 --- a/litestream/Dockerfile +++ b/litestream/Dockerfile @@ -1,16 +1,9 @@ -# Start with a standard Ubuntu base image -FROM ubuntu:20.04 as builder +FROM litestream/litestream:0.3.13 -# Install curl and other necessary tools -RUN apt-get update && apt-get install -y curl +RUN apk update && apk add --no-cache curl -# Download and install ytt -RUN curl -L https://github.com/vmware-tanzu/carvel-ytt/releases/download/v0.44.1/ytt-linux-amd64 > /usr/local/bin/ytt \ - && chmod 755 /usr/local/bin/ytt - -FROM litestream/litestream:latest - -COPY --from=builder /usr/local/bin/ytt /usr/local/bin/ytt +COPY install-ytt.sh /install-ytt.sh +RUN /install-ytt.sh && rm /install-ytt.sh COPY litestream.template.yaml . COPY docker-entrypoint.sh . diff --git a/litestream/docker-entrypoint.sh b/litestream/docker-entrypoint.sh index ba9dccd..57c748d 100644 --- a/litestream/docker-entrypoint.sh +++ b/litestream/docker-entrypoint.sh @@ -4,17 +4,21 @@ set -e # Update env vars ytt --data-values-env TVAL -f /litestream.template.yaml > /litestream.yml -# restore if needed -echo "Restoring database from backup..." -if ! /usr/local/bin/litestream restore -if-db-not-exists -if-replica-exists -parallelism 10 -config /litestream.yml $TVAL_LOCAL_DB_PATH/state.db; then - echo "Failed to restore state.db" -fi -if ! /usr/local/bin/litestream restore -if-db-not-exists -if-replica-exists -parallelism 10 -config /litestream.yml $TVAL_LOCAL_DB_PATH/contract.db; then - echo "Failed to restore contract.db" +# only restore if environment variable is set +if [[ "$RESTORE_FROM_BACKUP" = "true" ]]; then + echo "Restoring from backup..." + if ! /usr/local/bin/litestream restore -if-db-not-exists -if-replica-exists -parallelism 10 -config /litestream.yml $TVAL_LOCAL_DB_PATH/state.db; then + echo "Failed to restore state.db" + fi + if ! /usr/local/bin/litestream restore -if-db-not-exists -if-replica-exists -parallelism 10 -config /litestream.yml $TVAL_LOCAL_DB_PATH/contract.db; then + echo "Failed to restore contract.db" + fi +else + echo "No RESTORE_FROM_BACKUP environment variable set, skipping restore..." fi if [[ -n "$WAIT_TIME_SECONDS" ]]; then - # Sleep for the number of seconds specified in WAIT_TIME_SECONDS + # Sleep for the number of seconds specified in WAIT_TIME_SECONDS, this is useful if we are prefetching contracts echo "Waiting for $WAIT_TIME_SECONDS seconds before starting replication..." sleep $WAIT_TIME_SECONDS fi diff --git a/litestream/install-ytt.sh b/litestream/install-ytt.sh new file mode 100755 index 0000000..743e548 --- /dev/null +++ b/litestream/install-ytt.sh @@ -0,0 +1,18 @@ +#!/bin/sh + +case $(uname -m) in + "aarch64") + echo "aarch64" + curl -L https://github.com/vmware-tanzu/carvel-ytt/releases/download/v0.49.0/ytt-linux-arm64 > /usr/local/bin/ytt + ;; + "x86_64") + echo "x86_64" + curl -L https://github.com/vmware-tanzu/carvel-ytt/releases/download/v0.49.0/ytt-linux-amd64 > /usr/local/bin/ytt + ;; + *) + echo "Unknown arch" + exit 1 + ;; +esac + +chmod 755 /usr/local/bin/ytt diff --git a/litestream/litestream.template.yaml b/litestream/litestream.template.yaml index f34de68..134ebcb 100644 --- a/litestream/litestream.template.yaml +++ b/litestream/litestream.template.yaml @@ -1,5 +1,10 @@ #@ load("@ytt:data", "data") +#@ if data.values.AWS_ACCESS_KEY_ID != "": +access-key-id: #@ data.values.AWS_ACCESS_KEY_ID +secret-access-key: #@ data.values.AWS_SECRET_ACCESS_KEY +#@ end + dbs: - path: #@ data.values.LOCAL_DB_PATH + "/state.db" replicas: diff --git a/package.json b/package.json index ad6528c..7f79b60 100644 --- a/package.json +++ b/package.json @@ -17,10 +17,11 @@ "start:prod": "yarn build && node dist/app.js", "build": "yarn clean && yarn && npx tsc --project ./tsconfig.json", "clean": "rimraf [ node_modules dist cache ]", - "test:docker": "docker compose --env-file=.env.test up --exit-code-from test-runner --build", + "test:docker": "docker compose --env-file=.env.test --profile test up --exit-code-from test-runner --build", "test:integration": "mocha --spec=tests/integration/**.test.ts", "test:integration:local": "docker compose up arlocal -d ; yarn test:integration $*; docker compose down -v", "docker:run": "docker compose up arns-service --build", + "docker:run:litestream": "docker compose --profile litestream up --build", "docker:integration": "docker compose up --exit-code-from test-runner --build", "format:fix": "yarn prettier --write .", "format:check": "yarn prettier . --check", @@ -30,8 +31,6 @@ }, "dependencies": { "@ardrive/ardrive-promise-cache": "^1.1.4", - "@aws-sdk/client-s3": "^3.490.0", - "@aws-sdk/lib-storage": "^3.554.0", "@koa/cors": "^4.0.0", "@koa/router": "^12.0.0", "arweave": "^1.14.4", @@ -42,7 +41,7 @@ "lodash": "^4.17.21", "p-limit": "3.1.0", "prom-client": "^14.2.0", - "warp-contracts": "1.4.43", + "warp-contracts": "1.4.39", "warp-contracts-lmdb": "^1.1.10", "warp-contracts-sqlite": "^1.0.2", "winston": "^3.8.2", diff --git a/src/api/warp.ts b/src/api/warp.ts index aecd8e6..7728fef 100644 --- a/src/api/warp.ts +++ b/src/api/warp.ts @@ -86,7 +86,7 @@ const contractStateCache: ReadThroughPromiseCache< > = new ReadThroughPromiseCache({ cacheParams: { cacheCapacity: 10_000, - cacheTTL: 1000 * 30, // 30 seconds + cacheTTL: 1000 * 60, // 60 seconds }, readThroughFunction: readThroughToContractState, }); @@ -141,7 +141,7 @@ const contractReadInteractionCache: ReadThroughPromiseCache< > = new ReadThroughPromiseCache({ cacheParams: { cacheCapacity: 1_000, - cacheTTL: 1000 * 30, // 30 seconds + cacheTTL: 1000 * 60, // 60 seconds }, readThroughFunction: readThroughToContractReadInteraction, }); diff --git a/src/constants.ts b/src/constants.ts index 6a5b40d..e8336c5 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -17,8 +17,6 @@ import { EvaluationOptions } from 'warp-contracts'; export const PREFETCH_CONTRACTS = process.env.PREFETCH_CONTRACTS === 'true'; -export const BOOTSTRAP_CACHE = process.env.BOOTSTRAP_CACHE === 'true'; -export const SAVE_CACHE_TO_S3 = process.env.SAVE_CACHE_TO_S3 === 'true'; export const BLOCKLISTED_CONTRACT_IDS = new Set( process.env.BLOCKLISTED_CONTRACT_IDS ? process.env.BLOCKLISTED_CONTRACT_IDS.split(',') diff --git a/src/system.ts b/src/system.ts index ae1f550..e6a214b 100644 --- a/src/system.ts +++ b/src/system.ts @@ -20,49 +20,14 @@ import { prefetchContractTxIds } from './config'; import logger from './logger'; import { warp } from './middleware'; import { - S3Client, - ListObjectsV2Command, - GetObjectCommand, -} from '@aws-sdk/client-s3'; -import { Upload } from '@aws-sdk/lib-storage'; -import fs from 'node:fs'; -import { Readable } from 'stream'; -import path from 'node:path'; -import { - BOOTSTRAP_CACHE, PREFETCH_CONTRACTS, - SAVE_CACHE_TO_S3, } from './constants'; -import pLimit from 'p-limit'; -const bucket = process.env.WARP_CACHE_BUCKET || 'arns-warp-cache'; -const cacheDirectory = process.env.WARP_CACHE_KEY || 'cache'; -const region = process.env.AWS_REGION || 'us-west-2'; -const s3CacheIntervalMs = +( - process.env.S3_CACHE_INTERVAL_MS || 3 * 60 * 60 * 1000 -); // default to 3 hours -const s3 = new S3Client({ - region, -}); export const bootstrapCache = async () => { - if (BOOTSTRAP_CACHE) { - await fetchCacheFromS3(); - } - if (PREFETCH_CONTRACTS) { await prefetchContracts(); } - - if (SAVE_CACHE_TO_S3) { - // save cache to S3 every s3CacheIntervalMs - logger.info('Cache will be saved to S3 on an interval', { - intervalMs: s3CacheIntervalMs, - }); - setInterval(async () => { - await saveCacheToS3(); - }, s3CacheIntervalMs); - } }; let successfullyPrefetchedContracts = false; @@ -131,218 +96,3 @@ export const prefetchContracts = async () => { durationMs: Date.now() - startTimeMs, }); }; - -export const fetchCacheFromS3 = async () => { - const startTimeMs = Date.now(); - const params = { - Bucket: bucket, - Key: cacheDirectory, - }; - - logger.info('Bootstrapping warp cache from S3', { - params, - }); - - try { - const data = await s3.send(new ListObjectsV2Command(params)); - const parallelLimit = pLimit(10); - const files = data.Contents || []; - - const fetchFileFromS3 = async ({ - fileKey, - params, - }: { - fileKey: string; - params: { Bucket: string; Key: string }; - }) => { - const fileStartTime = Date.now(); - logger.debug('Fetching file from S3', { - fileKey, - }); - - const tempFilePath = path.join( - process.cwd(), - fileKey.replace(params.Key, 'tmp'), - ); - - const tmpFileDir = path.dirname(tempFilePath); - const finalFilePath = path.join(process.cwd(), fileKey); - const warpCacheDir = path.dirname(finalFilePath); - - try { - if (!fs.existsSync(tmpFileDir)) { - await fs.promises.mkdir(tmpFileDir, { recursive: true }); - } - - if (!fs.existsSync(warpCacheDir)) { - await fs.promises.mkdir(warpCacheDir, { recursive: true }); - } - - const data = await s3.send( - new GetObjectCommand({ ...params, Key: fileKey }), - ); - - if (data.Body) { - const readableStream = data.Body as Readable; - logger.debug('Writing file to temporary location', { - fileKey, - tempFilePath, - }); - await fs.promises.writeFile(tempFilePath, readableStream); - if (fs.existsSync(finalFilePath)) { - await fs.promises.unlink(finalFilePath); - } - logger.debug('Moving file to final location', { - fileKey, - finalFilePath, - tempFilePath, - }); - // moves the file from the temp location to the final location - await fs.promises.rename(tempFilePath, finalFilePath); - - logger.debug('Successfully fetched file from S3', { - fileKey, - finalFilePath, - durationMs: Date.now() - fileStartTime, - }); - } - } catch (error: unknown) { - const message = - error instanceof Error ? error : new Error('Unknown error'); - logger.error('Failed to fetch file from S3', { - error: message, - fileKey, - }); - } - }; - - logger.debug('Found files to fetch from S3', { - fileCount: files.length, - }); - - await Promise.all( - files.map(async (obj) => { - const fileKey = obj.Key; - if (!fileKey) { - return; - } - return parallelLimit(() => { - return fetchFileFromS3({ fileKey, params }); - }); - }), - ); - logger.info('Successfully bootstrapped warp cache from S3', { - durationMs: Date.now() - startTimeMs, - }); - } catch (error: unknown) { - const message = error instanceof Error ? error : new Error('Unknown error'); - logger.error('Failed to bootstrap cache from S3', { - error: message, - }); - } -}; - -export const saveCacheToS3 = async () => { - const startTimeMs = Date.now(); - - logger.info('Saving warp cache to S3', { - bucket, - }); - - try { - // read files from local file system - const parallelLimit = pLimit(10); - const uploadFolder = async ({ - folderPath, - bucket, - keyPrefix, - }: { - folderPath: string; - bucket: string; - keyPrefix: string; - }) => { - const files = fs.readdirSync(folderPath); - logger.debug('Uploading folder to S3', { - folderPath, - bucket, - keyPrefix, - files: files.length, - }); - await Promise.all( - files.map(async (file) => { - // wrap in a pLimit to avoid resource exhaustion - return parallelLimit(() => { - const filePath = path.join(folderPath, file); - if (fs.statSync(filePath).isFile()) { - logger.debug('Uploading file to S3', { - filePath, - bucket, - keyPrefix, - }); - const fileStream = fs.createReadStream(filePath); - const upload = new Upload({ - client: s3, - params: { - Bucket: bucket, - Key: filePath, - Body: fileStream, - }, - }); - - const fileStartTime = Date.now(); - - // catch errors for a single file - return upload - .done() - .then(() => { - logger.debug('Successfully uploaded file to S3', { - filePath, - bucket, - keyPrefix, - durationMs: Date.now() - fileStartTime, - }); - }) - .catch((error: unknown) => { - const message = - error instanceof Error ? error : new Error('Unknown error'); - logger.error('Failed to upload file to S3', { - error: message, - file, - }); - }); - } else { - logger.debug('Recursively uploading folder to S3', { - filePath, - bucket, - keyPrefix, - }); - // recursively upload folders - return uploadFolder({ - folderPath: filePath, - bucket, - keyPrefix: keyPrefix + file + '/', - }); - } - }); - }), - ); - }; - - // upload files to S3 recursively and in a pLimit to avoid resource exhaustion - await uploadFolder({ - folderPath: cacheDirectory, - bucket, - keyPrefix: '', - }); - - logger.info('Successfully saved warp cache to S3', { - durationMs: Date.now() - startTimeMs, - bucket, - }); - } catch (error: unknown) { - const message = error instanceof Error ? error : new Error('Unknown error'); - logger.error('Failed to save cache to S3', { - error: message, - }); - } -}; diff --git a/yarn.lock b/yarn.lock index f7577a5..9b20cf2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -124,595 +124,6 @@ dependencies: "@alexsasharegan/simple-cache" "^3.3.3" -"@aws-crypto/crc32@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/crc32/-/crc32-3.0.0.tgz#07300eca214409c33e3ff769cd5697b57fdd38fa" - integrity sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA== - dependencies: - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - tslib "^1.11.1" - -"@aws-crypto/crc32c@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/crc32c/-/crc32c-3.0.0.tgz#016c92da559ef638a84a245eecb75c3e97cb664f" - integrity sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w== - dependencies: - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - tslib "^1.11.1" - -"@aws-crypto/ie11-detection@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz#640ae66b4ec3395cee6a8e94ebcd9f80c24cd688" - integrity sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q== - dependencies: - tslib "^1.11.1" - -"@aws-crypto/sha1-browser@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha1-browser/-/sha1-browser-3.0.0.tgz#f9083c00782b24714f528b1a1fef2174002266a3" - integrity sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw== - dependencies: - "@aws-crypto/ie11-detection" "^3.0.0" - "@aws-crypto/supports-web-crypto" "^3.0.0" - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - "@aws-sdk/util-locate-window" "^3.0.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-crypto/sha256-browser@3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz#05f160138ab893f1c6ba5be57cfd108f05827766" - integrity sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ== - dependencies: - "@aws-crypto/ie11-detection" "^3.0.0" - "@aws-crypto/sha256-js" "^3.0.0" - "@aws-crypto/supports-web-crypto" "^3.0.0" - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - "@aws-sdk/util-locate-window" "^3.0.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-crypto/sha256-js@3.0.0", "@aws-crypto/sha256-js@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz#f06b84d550d25521e60d2a0e2a90139341e007c2" - integrity sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ== - dependencies: - "@aws-crypto/util" "^3.0.0" - "@aws-sdk/types" "^3.222.0" - tslib "^1.11.1" - -"@aws-crypto/supports-web-crypto@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz#5d1bf825afa8072af2717c3e455f35cda0103ec2" - integrity sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg== - dependencies: - tslib "^1.11.1" - -"@aws-crypto/util@^3.0.0": - version "3.0.0" - resolved "https://registry.yarnpkg.com/@aws-crypto/util/-/util-3.0.0.tgz#1c7ca90c29293f0883468ad48117937f0fe5bfb0" - integrity sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w== - dependencies: - "@aws-sdk/types" "^3.222.0" - "@aws-sdk/util-utf8-browser" "^3.0.0" - tslib "^1.11.1" - -"@aws-sdk/client-s3@^3.490.0": - version "3.490.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-s3/-/client-s3-3.490.0.tgz#30fe38d6b8b3509aa91a5154318c849ec974c2fc" - integrity sha512-fBj3CJ3+5R+l/sc93Z9mKw8gM2b9K6vEhC9qSCG2XNymLd9YqlRft1peQ7VymrWywAHX3Koz1GCUrFEVNONiMw== - dependencies: - "@aws-crypto/sha1-browser" "3.0.0" - "@aws-crypto/sha256-browser" "3.0.0" - "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/client-sts" "3.490.0" - "@aws-sdk/core" "3.490.0" - "@aws-sdk/credential-provider-node" "3.490.0" - "@aws-sdk/middleware-bucket-endpoint" "3.489.0" - "@aws-sdk/middleware-expect-continue" "3.489.0" - "@aws-sdk/middleware-flexible-checksums" "3.489.0" - "@aws-sdk/middleware-host-header" "3.489.0" - "@aws-sdk/middleware-location-constraint" "3.489.0" - "@aws-sdk/middleware-logger" "3.489.0" - "@aws-sdk/middleware-recursion-detection" "3.489.0" - "@aws-sdk/middleware-sdk-s3" "3.489.0" - "@aws-sdk/middleware-signing" "3.489.0" - "@aws-sdk/middleware-ssec" "3.489.0" - "@aws-sdk/middleware-user-agent" "3.489.0" - "@aws-sdk/region-config-resolver" "3.489.0" - "@aws-sdk/signature-v4-multi-region" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@aws-sdk/util-endpoints" "3.489.0" - "@aws-sdk/util-user-agent-browser" "3.489.0" - "@aws-sdk/util-user-agent-node" "3.489.0" - "@aws-sdk/xml-builder" "3.485.0" - "@smithy/config-resolver" "^2.0.23" - "@smithy/core" "^1.2.2" - "@smithy/eventstream-serde-browser" "^2.0.16" - "@smithy/eventstream-serde-config-resolver" "^2.0.16" - "@smithy/eventstream-serde-node" "^2.0.16" - "@smithy/fetch-http-handler" "^2.3.2" - "@smithy/hash-blob-browser" "^2.0.17" - "@smithy/hash-node" "^2.0.18" - "@smithy/hash-stream-node" "^2.0.18" - "@smithy/invalid-dependency" "^2.0.16" - "@smithy/md5-js" "^2.0.18" - "@smithy/middleware-content-length" "^2.0.18" - "@smithy/middleware-endpoint" "^2.3.0" - "@smithy/middleware-retry" "^2.0.26" - "@smithy/middleware-serde" "^2.0.16" - "@smithy/middleware-stack" "^2.0.10" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/node-http-handler" "^2.2.2" - "@smithy/protocol-http" "^3.0.12" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - "@smithy/url-parser" "^2.0.16" - "@smithy/util-base64" "^2.0.1" - "@smithy/util-body-length-browser" "^2.0.1" - "@smithy/util-body-length-node" "^2.1.0" - "@smithy/util-defaults-mode-browser" "^2.0.24" - "@smithy/util-defaults-mode-node" "^2.0.32" - "@smithy/util-endpoints" "^1.0.8" - "@smithy/util-retry" "^2.0.9" - "@smithy/util-stream" "^2.0.24" - "@smithy/util-utf8" "^2.0.2" - "@smithy/util-waiter" "^2.0.16" - fast-xml-parser "4.2.5" - tslib "^2.5.0" - -"@aws-sdk/client-sso@3.490.0": - version "3.490.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.490.0.tgz#f18720d6301b83de858afd9b7dd4a2452b18e8ad" - integrity sha512-yfxoHmCL1w/IKmFRfzCxdVCQrGlSQf4eei9iVEm5oi3iE8REFyPj3o/BmKQEHG3h2ITK5UbdYDb5TY4xoYHsyA== - dependencies: - "@aws-crypto/sha256-browser" "3.0.0" - "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/core" "3.490.0" - "@aws-sdk/middleware-host-header" "3.489.0" - "@aws-sdk/middleware-logger" "3.489.0" - "@aws-sdk/middleware-recursion-detection" "3.489.0" - "@aws-sdk/middleware-user-agent" "3.489.0" - "@aws-sdk/region-config-resolver" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@aws-sdk/util-endpoints" "3.489.0" - "@aws-sdk/util-user-agent-browser" "3.489.0" - "@aws-sdk/util-user-agent-node" "3.489.0" - "@smithy/config-resolver" "^2.0.23" - "@smithy/core" "^1.2.2" - "@smithy/fetch-http-handler" "^2.3.2" - "@smithy/hash-node" "^2.0.18" - "@smithy/invalid-dependency" "^2.0.16" - "@smithy/middleware-content-length" "^2.0.18" - "@smithy/middleware-endpoint" "^2.3.0" - "@smithy/middleware-retry" "^2.0.26" - "@smithy/middleware-serde" "^2.0.16" - "@smithy/middleware-stack" "^2.0.10" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/node-http-handler" "^2.2.2" - "@smithy/protocol-http" "^3.0.12" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - "@smithy/url-parser" "^2.0.16" - "@smithy/util-base64" "^2.0.1" - "@smithy/util-body-length-browser" "^2.0.1" - "@smithy/util-body-length-node" "^2.1.0" - "@smithy/util-defaults-mode-browser" "^2.0.24" - "@smithy/util-defaults-mode-node" "^2.0.32" - "@smithy/util-endpoints" "^1.0.8" - "@smithy/util-retry" "^2.0.9" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/client-sts@3.490.0": - version "3.490.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.490.0.tgz#17bf245705790fd632e4fa5d0cf0f312069f8a4d" - integrity sha512-n2vQ5Qu2qi2I0XMI+IH99ElpIRHOJTa1+sqNC4juMYxKQBMvw+EnsqUtaL3QvTHoyxNB/R7mpkeBB6SzPQ1TtA== - dependencies: - "@aws-crypto/sha256-browser" "3.0.0" - "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/core" "3.490.0" - "@aws-sdk/credential-provider-node" "3.490.0" - "@aws-sdk/middleware-host-header" "3.489.0" - "@aws-sdk/middleware-logger" "3.489.0" - "@aws-sdk/middleware-recursion-detection" "3.489.0" - "@aws-sdk/middleware-user-agent" "3.489.0" - "@aws-sdk/region-config-resolver" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@aws-sdk/util-endpoints" "3.489.0" - "@aws-sdk/util-user-agent-browser" "3.489.0" - "@aws-sdk/util-user-agent-node" "3.489.0" - "@smithy/config-resolver" "^2.0.23" - "@smithy/core" "^1.2.2" - "@smithy/fetch-http-handler" "^2.3.2" - "@smithy/hash-node" "^2.0.18" - "@smithy/invalid-dependency" "^2.0.16" - "@smithy/middleware-content-length" "^2.0.18" - "@smithy/middleware-endpoint" "^2.3.0" - "@smithy/middleware-retry" "^2.0.26" - "@smithy/middleware-serde" "^2.0.16" - "@smithy/middleware-stack" "^2.0.10" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/node-http-handler" "^2.2.2" - "@smithy/protocol-http" "^3.0.12" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - "@smithy/url-parser" "^2.0.16" - "@smithy/util-base64" "^2.0.1" - "@smithy/util-body-length-browser" "^2.0.1" - "@smithy/util-body-length-node" "^2.1.0" - "@smithy/util-defaults-mode-browser" "^2.0.24" - "@smithy/util-defaults-mode-node" "^2.0.32" - "@smithy/util-endpoints" "^1.0.8" - "@smithy/util-middleware" "^2.0.9" - "@smithy/util-retry" "^2.0.9" - "@smithy/util-utf8" "^2.0.2" - fast-xml-parser "4.2.5" - tslib "^2.5.0" - -"@aws-sdk/core@3.490.0": - version "3.490.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/core/-/core-3.490.0.tgz#387013cb6e4060b421c6b45bd33f419c5c8e4a76" - integrity sha512-TSBWkXtxMU7q1Zo6w3v5wIOr/sj7P5Jw3OyO7lJrFGsPsDC2xwpxkVqTesDxkzgMRypO52xjYEmveagn1xxBHg== - dependencies: - "@smithy/core" "^1.2.2" - "@smithy/protocol-http" "^3.0.12" - "@smithy/signature-v4" "^2.0.0" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-env@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.489.0.tgz#69aeee7251047dbf3b1533514cb87c5fae333a47" - integrity sha512-5PqYsx9G5SB2tqPT9/z/u0EkF6D4wP6HTMWQs+DfMdmwXihrqQAgeYaTtV3KbXqb88p6sfacwxhUvE6+Rm494w== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-ini@3.490.0": - version "3.490.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.490.0.tgz#8a907f85a5d88614bc63eac15d0f86a6074fb9fe" - integrity sha512-7m63zyCpVqj9FsoDxWMWWRvL6c7zZzOcXYkHZmHujVVlmAXH0RT/vkXFkYgt+Ku+ov+v5NQrzwO5TmVoRt6O8g== - dependencies: - "@aws-sdk/credential-provider-env" "3.489.0" - "@aws-sdk/credential-provider-process" "3.489.0" - "@aws-sdk/credential-provider-sso" "3.490.0" - "@aws-sdk/credential-provider-web-identity" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@smithy/credential-provider-imds" "^2.0.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.6" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-node@3.490.0": - version "3.490.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.490.0.tgz#fc1051f30e25eb00d63e40be79f5fd4b66d3bdfb" - integrity sha512-Gh33u2O5Xbout8G3z/Z5H/CZzdG1ophxf/XS3iMFxA1cazQ7swY1UMmGvB7Lm7upvax5anXouItD1Ph3gzKc4w== - dependencies: - "@aws-sdk/credential-provider-env" "3.489.0" - "@aws-sdk/credential-provider-ini" "3.490.0" - "@aws-sdk/credential-provider-process" "3.489.0" - "@aws-sdk/credential-provider-sso" "3.490.0" - "@aws-sdk/credential-provider-web-identity" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@smithy/credential-provider-imds" "^2.0.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.6" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-process@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.489.0.tgz#f0c2b5b22a1ca364ec89cd7e469673824606dec4" - integrity sha512-3vKQYJZ5cZYjy0870CPmbmKRBgATw2xCygxhn4m4UDCjOXVXcGUtYD51DMWsvBo3S0W8kH+FIJV4yuEDMFqLFQ== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.6" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-sso@3.490.0": - version "3.490.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.490.0.tgz#0cb15aebf72bc7d253aa51dee6a888a2af38acda" - integrity sha512-3UUBUoPbFvT58IhS4Vb23omYj/QPNkjgxu9p9ruQ3KSjLkanI4w8t/l/jljA65q83P7CoLnM5UKG9L7RA8/V1Q== - dependencies: - "@aws-sdk/client-sso" "3.490.0" - "@aws-sdk/token-providers" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/shared-ini-file-loader" "^2.0.6" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/credential-provider-web-identity@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.489.0.tgz#28e2ba4d1ee4de4d055875028ed205a2264611c1" - integrity sha512-mjIuE2Wg1H/ds0nXQ/7vfusEDudmdd8YzKZI1y5O4n60iZZtyB2RNIECtvLMx1EQAKclidY7/06qQkArrGau5Q== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/lib-storage@^3.554.0": - version "3.554.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/lib-storage/-/lib-storage-3.554.0.tgz#23bd5b867e610369c6983ae687f1ab7fb1fbd5ac" - integrity sha512-WMn2EObllRKI0ELi31SoUGPowQ23/LCAXkG1o1VEas5kqobwgVgp9D8zqs9A/MEaZYl0yDqd94uKQJd7rUM/yg== - dependencies: - "@smithy/abort-controller" "^2.2.0" - "@smithy/middleware-endpoint" "^2.5.1" - "@smithy/smithy-client" "^2.5.1" - buffer "5.6.0" - events "3.3.0" - stream-browserify "3.0.0" - tslib "^2.6.2" - -"@aws-sdk/middleware-bucket-endpoint@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.489.0.tgz#80a06f1c229fae364b5916e47178d118340e0f51" - integrity sha512-6rJ5bpNMKo7sEKQ6p2DMbQwM+ahMYASRxfdyH7hs18blvlcS20H1RYpNmJMqPPjxMwUWruty2JPMIRl4DFcv8w== - dependencies: - "@aws-sdk/types" "3.489.0" - "@aws-sdk/util-arn-parser" "3.465.0" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - "@smithy/util-config-provider" "^2.1.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-expect-continue@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.489.0.tgz#c03f1a867e836c8ca844fcb8c527d2d782d1b659" - integrity sha512-2RZfnVZFaGHwzPDQJsyf9SXufu1gUd4VsMhm7dC7SWF85XmpDrozbFznS/tD22QdtyWjerLoydZJMq229hpPqg== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-flexible-checksums@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.489.0.tgz#50413d053e7b62bef81772d6b0c00d5521cf4e30" - integrity sha512-Cy3rBUMr4P7raxzrJFWNRshfKrKV2EojawaC9Bfk/T8aFlV+FmVrRg4ISAXMOfS5pfy3xfAbvkzjOaeqCsGfrA== - dependencies: - "@aws-crypto/crc32" "3.0.0" - "@aws-crypto/crc32c" "3.0.0" - "@aws-sdk/types" "3.489.0" - "@smithy/is-array-buffer" "^2.0.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/middleware-host-header@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.489.0.tgz#7c00fa49c6d359bdc9b4d27be09af29ac6700968" - integrity sha512-Cl7HJ1jhOfllwf0CRx1eB4ypRGMqdGKWpc0eSTXty7wWSvCdMZUhwfjQqu2bIOIlgYxg/gFu6TVmVZ6g4O8PlA== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-location-constraint@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.489.0.tgz#aa00bc9b2d7ab857b1b8405b1a688684f2c44ae7" - integrity sha512-NIVr+kHR2N6gxFeE3TNw2mEBxgj0N9xXBLy3dNYMMlAUvQlT/0z9HlC9+3XqcTS/Z5ElF/+pei6nqXTVt0He9A== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-logger@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.489.0.tgz#36855ec7ac8af4604f2a0b739358f0411878abea" - integrity sha512-+EVDnWese61MdImcBNAgz/AhTcIZJaska/xsU3GWU9CP905x4a4qZdB7fExFMDu1Jlz5pJqNteFYYHCFMJhHfg== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-recursion-detection@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.489.0.tgz#bdcbfcebd3d27aad2e0b2808af7c1d3d380c52a2" - integrity sha512-m4rU+fTzziQcu9DKjRNZ4nQlXENEd2ZnJblJV4ONdWqqEjbmOgOj3P6aCCQlJdIbzuNvX1FBOZ5tY59ZpERo7Q== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-sdk-s3@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.489.0.tgz#45c57501427f789cf8701b282e5e5136eb320c8b" - integrity sha512-/GGASx7mK9qEgy1znvleYMZKVqm3sOdGghqKdy2zgoGcH2jH+fZrLM0lDMT9bvdITmOCbJJs2rVHP3xm/ZWcXg== - dependencies: - "@aws-sdk/types" "3.489.0" - "@aws-sdk/util-arn-parser" "3.465.0" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/protocol-http" "^3.0.12" - "@smithy/signature-v4" "^2.0.0" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - "@smithy/util-config-provider" "^2.1.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-signing@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.489.0.tgz#ad92c3a4fb3afc2798b4f99a7ca6abaaf75461b8" - integrity sha512-rlHcWYZn6Ym3v/u0DvKNDiD7ogIzEsHlerm0lowTiQbszkFobOiUClRTALwvsUZdAAztl706qO1OKbnGnD6Ubw== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/property-provider" "^2.0.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/signature-v4" "^2.0.0" - "@smithy/types" "^2.8.0" - "@smithy/util-middleware" "^2.0.9" - tslib "^2.5.0" - -"@aws-sdk/middleware-ssec@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-ssec/-/middleware-ssec-3.489.0.tgz#9991f6189fa1d3bf360e24f8d958f5456e4da7ce" - integrity sha512-5RQg8dqERAmi1OfVEV9fbTA5NKmcvKDYP79YtH08IEFIsHWU1Y5NoqL7mXkkNyBrJNBVyasYijAbTzOuM707eg== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/middleware-user-agent@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.489.0.tgz#84b2f7e3038b631ecd9e3cddd0205d9b6a266444" - integrity sha512-M54Cv2fAN3GGgdfUjLtZ4wFUIrfM/ivbXv4DgpcNsacEQ2g4H+weQgKp41X7XZW8MWAzl+k1zJaryK69RYNQkQ== - dependencies: - "@aws-sdk/types" "3.489.0" - "@aws-sdk/util-endpoints" "3.489.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/region-config-resolver@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/region-config-resolver/-/region-config-resolver-3.489.0.tgz#58bd9dfbe148e2de8bfd0e5e4a3719d56b594c85" - integrity sha512-UvrnB78XTz9ddby7mr0vuUHn2MO3VTjzaIu+GQhyedMGQU0QlIQrYOlzbbu4LC5rL1O8FxFLUxRe/AAjgwyuGw== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/types" "^2.8.0" - "@smithy/util-config-provider" "^2.1.0" - "@smithy/util-middleware" "^2.0.9" - tslib "^2.5.0" - -"@aws-sdk/signature-v4-multi-region@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.489.0.tgz#d36574d34bc084f29c19d3bc51acbd821767dda0" - integrity sha512-kYFM7Opu36EkFlzXdVNOBFpQApgnuaTu/U/qYhGyuzeD+HNnYgZEsd/tDro1DQ074jVy3GN9ttJSYxq5I4oTkA== - dependencies: - "@aws-sdk/middleware-sdk-s3" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/signature-v4" "^2.0.0" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/token-providers@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.489.0.tgz#69897270f71595449f665b9f40754dfa21ea7be1" - integrity sha512-hSgjB8CMQoA8EIQ0ripDjDtbBcWDSa+7vSBYPIzksyknaGERR/GUfGXLV2dpm5t17FgFG6irT5f3ZlBzarL8Dw== - dependencies: - "@aws-crypto/sha256-browser" "3.0.0" - "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/middleware-host-header" "3.489.0" - "@aws-sdk/middleware-logger" "3.489.0" - "@aws-sdk/middleware-recursion-detection" "3.489.0" - "@aws-sdk/middleware-user-agent" "3.489.0" - "@aws-sdk/region-config-resolver" "3.489.0" - "@aws-sdk/types" "3.489.0" - "@aws-sdk/util-endpoints" "3.489.0" - "@aws-sdk/util-user-agent-browser" "3.489.0" - "@aws-sdk/util-user-agent-node" "3.489.0" - "@smithy/config-resolver" "^2.0.23" - "@smithy/fetch-http-handler" "^2.3.2" - "@smithy/hash-node" "^2.0.18" - "@smithy/invalid-dependency" "^2.0.16" - "@smithy/middleware-content-length" "^2.0.18" - "@smithy/middleware-endpoint" "^2.3.0" - "@smithy/middleware-retry" "^2.0.26" - "@smithy/middleware-serde" "^2.0.16" - "@smithy/middleware-stack" "^2.0.10" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/node-http-handler" "^2.2.2" - "@smithy/property-provider" "^2.0.0" - "@smithy/protocol-http" "^3.0.12" - "@smithy/shared-ini-file-loader" "^2.0.6" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - "@smithy/url-parser" "^2.0.16" - "@smithy/util-base64" "^2.0.1" - "@smithy/util-body-length-browser" "^2.0.1" - "@smithy/util-body-length-node" "^2.1.0" - "@smithy/util-defaults-mode-browser" "^2.0.24" - "@smithy/util-defaults-mode-node" "^2.0.32" - "@smithy/util-endpoints" "^1.0.8" - "@smithy/util-retry" "^2.0.9" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@aws-sdk/types@3.489.0", "@aws-sdk/types@^3.222.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.489.0.tgz#0fa29adaace3e407ac15428524aa67e9bd229f65" - integrity sha512-kcDtLfKog/p0tC4gAeqJqWxAiEzfe2LRPnKamvSG2Mjbthx4R/alE2dxyIq/wW+nvRv0fqR3OD5kD1+eVfdr/w== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/util-arn-parser@3.465.0": - version "3.465.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-arn-parser/-/util-arn-parser-3.465.0.tgz#2896f6b06f69770378586853c97a0f283cbb2e20" - integrity sha512-zOJ82vzDJFqBX9yZBlNeHHrul/kpx/DCoxzW5UBbZeb26kfV53QhMSoEmY8/lEbBqlqargJ/sgRC845GFhHNQw== - dependencies: - tslib "^2.5.0" - -"@aws-sdk/util-endpoints@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.489.0.tgz#8adfa6da0cac973a8ca0f2c4aa66f7d587310acb" - integrity sha512-uGyG1u84ATX03mf7bT4xD9XD/vlYJGD5+RxMN/UpzeTfzXfh+jvCQWbOQ44z8ttFJWYQQqrLxkfpF/JgvALzLA== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/types" "^2.8.0" - "@smithy/util-endpoints" "^1.0.8" - tslib "^2.5.0" - -"@aws-sdk/util-locate-window@^3.0.0": - version "3.465.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-locate-window/-/util-locate-window-3.465.0.tgz#0471428fb5eb749d4b72c427f5726f7b61fb90eb" - integrity sha512-f+QNcWGswredzC1ExNAB/QzODlxwaTdXkNT5cvke2RLX8SFU5pYk6h4uCtWC0vWPELzOfMfloBrJefBzlarhsw== - dependencies: - tslib "^2.5.0" - -"@aws-sdk/util-user-agent-browser@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.489.0.tgz#d59c3386c71ac08d658c123a1487cd6473c65627" - integrity sha512-85B9KMsuMpAZauzWQ16r52ZBAHYnznW6BVitnBglsibN7oJKn10Hggt4QGuRhvQFCxQ8YhvBl7r+vQGFO4hxIw== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/types" "^2.8.0" - bowser "^2.11.0" - tslib "^2.5.0" - -"@aws-sdk/util-user-agent-node@3.489.0": - version "3.489.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.489.0.tgz#bc8f96710aadec4f5e327817cf5945c473150621" - integrity sha512-CYdkBHig8sFNc0dv11Ni9WXvZQHeI5+z77OrDHKkbidFx/V4BDTuwZw4K1vWg62pzFOEfzunJFiULRcDZWJR3w== - dependencies: - "@aws-sdk/types" "3.489.0" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@aws-sdk/util-utf8-browser@^3.0.0": - version "3.259.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz#3275a6f5eb334f96ca76635b961d3c50259fd9ff" - integrity sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/xml-builder@3.485.0": - version "3.485.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/xml-builder/-/xml-builder-3.485.0.tgz#e1fc573d6cb6b76e0ba6a2b63bc67bc65e52c3e0" - integrity sha512-xQexPM6LINOIkf3NLFywplcbApifZRMWFN41TDWYSNgCUa5uC9fntfenw8N/HTx1n+McRCWSAFBTjDqY/2OLCQ== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - "@babel/code-frame@^7.0.0": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.10.tgz#1c20e612b768fefa75f6e90d6ecb86329247f0a3" @@ -1702,676 +1113,6 @@ resolved "https://registry.yarnpkg.com/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz#5981a8db18b56ba38ef0efb7d995b12aa7b51918" integrity sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ== -"@smithy/abort-controller@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/abort-controller/-/abort-controller-2.0.16.tgz#31a86748e0c55a97ead1d179040160c6fc55ba1b" - integrity sha512-4foO7738k8kM9flMHu3VLabqu7nPgvIj8TB909S0CnKx0YZz/dcDH3pZ/4JHdatfxlZdKF1JWOYCw9+v3HVVsw== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/abort-controller@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/abort-controller/-/abort-controller-2.2.0.tgz#18983401a5e2154b5c94057730024a7d14cbcd35" - integrity sha512-wRlta7GuLWpTqtFfGo+nZyOO1vEvewdNR1R4rTxpC8XU6vG/NDyrFBhwLZsqg1NUoR1noVaXJPC/7ZK47QCySw== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/chunked-blob-reader-native@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-2.0.1.tgz#0599eaed8c2cd15c7ab43a1838cef1258ff27133" - integrity sha512-N2oCZRglhWKm7iMBu7S6wDzXirjAofi7tAd26cxmgibRYOBS4D3hGfmkwCpHdASZzwZDD8rluh0Rcqw1JeZDRw== - dependencies: - "@smithy/util-base64" "^2.0.1" - tslib "^2.5.0" - -"@smithy/chunked-blob-reader@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/chunked-blob-reader/-/chunked-blob-reader-2.0.0.tgz#c44fe2c780eaf77f9e5381d982ac99a880cce51b" - integrity sha512-k+J4GHJsMSAIQPChGBrjEmGS+WbPonCXesoqP9fynIqjn7rdOThdH8FAeCmokP9mxTYKQAKoHCLPzNlm6gh7Wg== - dependencies: - tslib "^2.5.0" - -"@smithy/config-resolver@^2.0.23": - version "2.0.23" - resolved "https://registry.yarnpkg.com/@smithy/config-resolver/-/config-resolver-2.0.23.tgz#45496bea277c00d52efcdf88a5f483b3d6a7e62d" - integrity sha512-XakUqgtP2YY8Mi+Nlif5BiqJgWdvfxJafSpOSQeCOMizu+PUhE4fBQSy6xFcR+eInrwVadaABNxoJyGUMn15ew== - dependencies: - "@smithy/node-config-provider" "^2.1.9" - "@smithy/types" "^2.8.0" - "@smithy/util-config-provider" "^2.1.0" - "@smithy/util-middleware" "^2.0.9" - tslib "^2.5.0" - -"@smithy/core@^1.2.2": - version "1.2.2" - resolved "https://registry.yarnpkg.com/@smithy/core/-/core-1.2.2.tgz#9e10d6055f2a05c2c677737b9b0c4f7507a80c75" - integrity sha512-uLjrskLT+mWb0emTR5QaiAIxVEU7ndpptDaVDrTwwhD+RjvHhjIiGQ3YL5jKk1a5VSDQUA2RGkXvJ6XKRcz6Dg== - dependencies: - "@smithy/middleware-endpoint" "^2.3.0" - "@smithy/middleware-retry" "^2.0.26" - "@smithy/middleware-serde" "^2.0.16" - "@smithy/protocol-http" "^3.0.12" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - "@smithy/util-middleware" "^2.0.9" - tslib "^2.5.0" - -"@smithy/credential-provider-imds@^2.0.0", "@smithy/credential-provider-imds@^2.1.5": - version "2.1.5" - resolved "https://registry.yarnpkg.com/@smithy/credential-provider-imds/-/credential-provider-imds-2.1.5.tgz#18e238067c0d9c5598a12fabb13ce1545554e691" - integrity sha512-VfvE6Wg1MUWwpTZFBnUD7zxvPhLY8jlHCzu6bCjlIYoWgXCDzZAML76IlZUEf45nib3rjehnFgg0s1rgsuN/bg== - dependencies: - "@smithy/node-config-provider" "^2.1.9" - "@smithy/property-provider" "^2.0.17" - "@smithy/types" "^2.8.0" - "@smithy/url-parser" "^2.0.16" - tslib "^2.5.0" - -"@smithy/eventstream-codec@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-codec/-/eventstream-codec-2.0.16.tgz#c213e25d7f05f1e6b40675835a141d23d3f3b6ca" - integrity sha512-umYh5pdCE9GHgiMAH49zu9wXWZKNHHdKPm/lK22WYISTjqu29SepmpWNmPiBLy/yUu4HFEGJHIFrDWhbDlApaw== - dependencies: - "@aws-crypto/crc32" "3.0.0" - "@smithy/types" "^2.8.0" - "@smithy/util-hex-encoding" "^2.0.0" - tslib "^2.5.0" - -"@smithy/eventstream-serde-browser@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-2.0.16.tgz#f265c3605a861d7f4feaa8657f475c8da7c9f45e" - integrity sha512-W+BdiN728R57KuZOcG0GczpIOEFf8S5RP/OdVH7T3FMCy8HU2bBU0vB5xZZR5c00VRdoeWrohNv3XlHoZuGRoA== - dependencies: - "@smithy/eventstream-serde-universal" "^2.0.16" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/eventstream-serde-config-resolver@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-2.0.16.tgz#0a6fd6312605de6f0505d3fdec4235f7c4388413" - integrity sha512-8qrE4nh+Tg6m1SMFK8vlzoK+8bUFTlIhXidmmQfASMninXW3Iu0T0bI4YcIk4nLznHZdybQ0qGydIanvVZxzVg== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/eventstream-serde-node@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-node/-/eventstream-serde-node-2.0.16.tgz#24bca6ab0dbf7d81b42bc3435db42e36385c7480" - integrity sha512-NRNQuOa6mQdFSkqzY0IV37swHWx0SEoKxFtUfdZvfv0AVQPlSw4N7E3kcRSCpnHBr1kCuWWirdDlWcjWuD81MA== - dependencies: - "@smithy/eventstream-serde-universal" "^2.0.16" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/eventstream-serde-universal@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-2.0.16.tgz#e554aa59d0c3bdd6f8b9eae9b2e3d6c6ae702611" - integrity sha512-ZyLnGaYQMLc75j9kKEVMJ3X6bdBE9qWxhZdTXM5RIltuytxJC3FaOhawBxjE+IL1enmWSIohHGZCm/pLwEliQA== - dependencies: - "@smithy/eventstream-codec" "^2.0.16" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/fetch-http-handler@^2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@smithy/fetch-http-handler/-/fetch-http-handler-2.3.2.tgz#930ee473b2a43d0bcf62c3b659f38122442ad514" - integrity sha512-O9R/OlnAOTsnysuSDjt0v2q6DcSvCz5cCFC/CFAWWcLyBwJDeFyGTCTszgpQTb19+Fi8uRwZE5/3ziAQBFeDMQ== - dependencies: - "@smithy/protocol-http" "^3.0.12" - "@smithy/querystring-builder" "^2.0.16" - "@smithy/types" "^2.8.0" - "@smithy/util-base64" "^2.0.1" - tslib "^2.5.0" - -"@smithy/fetch-http-handler@^2.5.0": - version "2.5.0" - resolved "https://registry.yarnpkg.com/@smithy/fetch-http-handler/-/fetch-http-handler-2.5.0.tgz#0b8e1562807fdf91fe7dd5cde620d7a03ddc10ac" - integrity sha512-BOWEBeppWhLn/no/JxUL/ghTfANTjT7kg3Ww2rPqTUY9R4yHPXxJ9JhMe3Z03LN3aPwiwlpDIUcVw1xDyHqEhw== - dependencies: - "@smithy/protocol-http" "^3.3.0" - "@smithy/querystring-builder" "^2.2.0" - "@smithy/types" "^2.12.0" - "@smithy/util-base64" "^2.3.0" - tslib "^2.6.2" - -"@smithy/hash-blob-browser@^2.0.17": - version "2.0.17" - resolved "https://registry.yarnpkg.com/@smithy/hash-blob-browser/-/hash-blob-browser-2.0.17.tgz#4249f1fba27cb7c40dbf1fa38a31e61dbf9149b9" - integrity sha512-/mPpv1sRiRDdjO4zZuO8be6eeabmg5AVgKDfnmmqkpBtRyMGSJb968fjRuHt+FRAsIGywgIKJFmUUAYjhsi1oQ== - dependencies: - "@smithy/chunked-blob-reader" "^2.0.0" - "@smithy/chunked-blob-reader-native" "^2.0.1" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/hash-node@^2.0.18": - version "2.0.18" - resolved "https://registry.yarnpkg.com/@smithy/hash-node/-/hash-node-2.0.18.tgz#4bf4ec392b5d6715426338b6828e6b25cd939bd5" - integrity sha512-gN2JFvAgnZCyDN9rJgcejfpK0uPPJrSortVVVVWsru9whS7eQey6+gj2eM5ln2i6rHNntIXzal1Fm9XOPuoaKA== - dependencies: - "@smithy/types" "^2.8.0" - "@smithy/util-buffer-from" "^2.0.0" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@smithy/hash-stream-node@^2.0.18": - version "2.0.18" - resolved "https://registry.yarnpkg.com/@smithy/hash-stream-node/-/hash-stream-node-2.0.18.tgz#6f7b214e785b8cf445e5095f9a9b9b38e689e7ce" - integrity sha512-OuFk+ITpv8CtxGjQcS8GA04faNycu9UMm6YobvQzjeEoXZ0dLF6sRfuzD+3S8RHPKpTyLuXtKG1+GiJycZ5TcA== - dependencies: - "@smithy/types" "^2.8.0" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@smithy/invalid-dependency@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/invalid-dependency/-/invalid-dependency-2.0.16.tgz#b32a6284ef4ce48129d00a6d63f977ec3e05befb" - integrity sha512-apEHakT/kmpNo1VFHP4W/cjfeP9U0x5qvfsLJubgp7UM/gq4qYp0GbqdE7QhsjUaYvEnrftRqs7+YrtWreV0wA== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/is-array-buffer@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/is-array-buffer/-/is-array-buffer-2.0.0.tgz#8fa9b8040651e7ba0b2f6106e636a91354ff7d34" - integrity sha512-z3PjFjMyZNI98JFRJi/U0nGoLWMSJlDjAW4QUX2WNZLas5C0CmVV6LJ01JI0k90l7FvpmixjWxPFmENSClQ7ug== - dependencies: - tslib "^2.5.0" - -"@smithy/is-array-buffer@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz#f84f0d9f9a36601a9ca9381688bd1b726fd39111" - integrity sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA== - dependencies: - tslib "^2.6.2" - -"@smithy/md5-js@^2.0.18": - version "2.0.18" - resolved "https://registry.yarnpkg.com/@smithy/md5-js/-/md5-js-2.0.18.tgz#85f26fc83e75b440144341292cbb75ddf69dd0de" - integrity sha512-bHwZ8/m6RbERQdVW5rJ2LzeW8qxfXv6Q/S7Fiudhso4pWRrksqLx3nsGZw7bmqqfN4zLqkxydxSa9+4c7s5zxg== - dependencies: - "@smithy/types" "^2.8.0" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@smithy/middleware-content-length@^2.0.18": - version "2.0.18" - resolved "https://registry.yarnpkg.com/@smithy/middleware-content-length/-/middleware-content-length-2.0.18.tgz#a3b13beb300290f5d0d48ace0f818e44261356fa" - integrity sha512-ZJ9uKPTfxYheTKSKYB+GCvcj+izw9WGzRLhjn8n254q0jWLojUzn7Vw0l4R/Gq7Wdpf/qmk/ptD+6CCXHNVCaw== - dependencies: - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/middleware-endpoint@^2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@smithy/middleware-endpoint/-/middleware-endpoint-2.3.0.tgz#135c30f38087ba52e692a73212854d0809ce1168" - integrity sha512-VsOAG2YQ8ykjSmKO+CIXdJBIWFo6AAvG6Iw95BakBTqk66/4BI7XyqLevoNSq/lZ6NgZv24sLmrcIN+fLDWBCg== - dependencies: - "@smithy/middleware-serde" "^2.0.16" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/shared-ini-file-loader" "^2.2.8" - "@smithy/types" "^2.8.0" - "@smithy/url-parser" "^2.0.16" - "@smithy/util-middleware" "^2.0.9" - tslib "^2.5.0" - -"@smithy/middleware-endpoint@^2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@smithy/middleware-endpoint/-/middleware-endpoint-2.5.1.tgz#1333c58304aff4d843e8ef4b85c8cb88975dd5ad" - integrity sha512-1/8kFp6Fl4OsSIVTWHnNjLnTL8IqpIb/D3sTSczrKFnrE9VMNWxnrRKNvpUHOJ6zpGD5f62TPm7+17ilTJpiCQ== - dependencies: - "@smithy/middleware-serde" "^2.3.0" - "@smithy/node-config-provider" "^2.3.0" - "@smithy/shared-ini-file-loader" "^2.4.0" - "@smithy/types" "^2.12.0" - "@smithy/url-parser" "^2.2.0" - "@smithy/util-middleware" "^2.2.0" - tslib "^2.6.2" - -"@smithy/middleware-retry@^2.0.26": - version "2.0.26" - resolved "https://registry.yarnpkg.com/@smithy/middleware-retry/-/middleware-retry-2.0.26.tgz#894cf86b0f5bc742e09c52df8df4c2941fbd9883" - integrity sha512-Qzpxo0U5jfNiq9iD38U3e2bheXwvTEX4eue9xruIvEgh+UKq6dKuGqcB66oBDV7TD/mfoJi9Q/VmaiqwWbEp7A== - dependencies: - "@smithy/node-config-provider" "^2.1.9" - "@smithy/protocol-http" "^3.0.12" - "@smithy/service-error-classification" "^2.0.9" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - "@smithy/util-middleware" "^2.0.9" - "@smithy/util-retry" "^2.0.9" - tslib "^2.5.0" - uuid "^8.3.2" - -"@smithy/middleware-serde@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/middleware-serde/-/middleware-serde-2.0.16.tgz#a127e7fa48c0106bd7a81e1ea27e7193cb08e701" - integrity sha512-5EAd4t30pcc4M8TSSGq7q/x5IKrxfXR5+SrU4bgxNy7RPHQo2PSWBUco9C+D9Tfqp/JZvprRpK42dnupZafk2g== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/middleware-serde@^2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@smithy/middleware-serde/-/middleware-serde-2.3.0.tgz#a7615ba646a88b6f695f2d55de13d8158181dd13" - integrity sha512-sIADe7ojwqTyvEQBe1nc/GXB9wdHhi9UwyX0lTyttmUWDJLP655ZYE1WngnNyXREme8I27KCaUhyhZWRXL0q7Q== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/middleware-stack@^2.0.10": - version "2.0.10" - resolved "https://registry.yarnpkg.com/@smithy/middleware-stack/-/middleware-stack-2.0.10.tgz#fb7c660dcc921b61a77e6cb39ed3eada9ed38585" - integrity sha512-I2rbxctNq9FAPPEcuA1ntZxkTKOPQFy7YBPOaD/MLg1zCvzv21CoNxR0py6J8ZVC35l4qE4nhxB0f7TF5/+Ldw== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/middleware-stack@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/middleware-stack/-/middleware-stack-2.2.0.tgz#3fb49eae6313f16f6f30fdaf28e11a7321f34d9f" - integrity sha512-Qntc3jrtwwrsAC+X8wms8zhrTr0sFXnyEGhZd9sLtsJ/6gGQKFzNB+wWbOcpJd7BR8ThNCoKt76BuQahfMvpeA== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/node-config-provider@^2.1.9": - version "2.1.9" - resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-2.1.9.tgz#2e9e5ee7c4412be6696a74b26f9ed2a66e2a5fb4" - integrity sha512-tUyW/9xrRy+s7RXkmQhgYkAPMpTIF8izK4orhHjNFEKR3QZiOCbWB546Y8iB/Fpbm3O9+q0Af9rpywLKJOwtaQ== - dependencies: - "@smithy/property-provider" "^2.0.17" - "@smithy/shared-ini-file-loader" "^2.2.8" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/node-config-provider@^2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@smithy/node-config-provider/-/node-config-provider-2.3.0.tgz#9fac0c94a14c5b5b8b8fa37f20c310a844ab9922" - integrity sha512-0elK5/03a1JPWMDPaS726Iw6LpQg80gFut1tNpPfxFuChEEklo2yL823V94SpTZTxmKlXFtFgsP55uh3dErnIg== - dependencies: - "@smithy/property-provider" "^2.2.0" - "@smithy/shared-ini-file-loader" "^2.4.0" - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/node-http-handler@^2.2.2": - version "2.2.2" - resolved "https://registry.yarnpkg.com/@smithy/node-http-handler/-/node-http-handler-2.2.2.tgz#f9f8cd49f270bc50a0de8a4587bbdaae1c7c4e80" - integrity sha512-XO58TO/Eul/IBQKFKaaBtXJi0ItEQQCT+NI4IiKHCY/4KtqaUT6y/wC1EvDqlA9cP7Dyjdj7FdPs4DyynH3u7g== - dependencies: - "@smithy/abort-controller" "^2.0.16" - "@smithy/protocol-http" "^3.0.12" - "@smithy/querystring-builder" "^2.0.16" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/node-http-handler@^2.5.0": - version "2.5.0" - resolved "https://registry.yarnpkg.com/@smithy/node-http-handler/-/node-http-handler-2.5.0.tgz#7b5e0565dd23d340380489bd5fe4316d2bed32de" - integrity sha512-mVGyPBzkkGQsPoxQUbxlEfRjrj6FPyA3u3u2VXGr9hT8wilsoQdZdvKpMBFMB8Crfhv5dNkKHIW0Yyuc7eABqA== - dependencies: - "@smithy/abort-controller" "^2.2.0" - "@smithy/protocol-http" "^3.3.0" - "@smithy/querystring-builder" "^2.2.0" - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/property-provider@^2.0.0", "@smithy/property-provider@^2.0.17": - version "2.0.17" - resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-2.0.17.tgz#288475021613649811dc79a9fab4894be01cd069" - integrity sha512-+VkeZbVu7qtQ2DjI48Qwaf9fPOr3gZIwxQpuLJgRRSkWsdSvmaTCxI3gzRFKePB63Ts9r4yjn4HkxSCSkdWmcQ== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/property-provider@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/property-provider/-/property-provider-2.2.0.tgz#37e3525a3fa3e11749f86a4f89f0fd7765a6edb0" - integrity sha512-+xiil2lFhtTRzXkx8F053AV46QnIw6e7MV8od5Mi68E1ICOjCeCHw2XfLnDEUHnT9WGUIkwcqavXjfwuJbGlpg== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/protocol-http@^3.0.12": - version "3.0.12" - resolved "https://registry.yarnpkg.com/@smithy/protocol-http/-/protocol-http-3.0.12.tgz#9f606efd191593f6dbde58fa822465b92b8afbca" - integrity sha512-Xz4iaqLiaBfbQpB9Hgi3VcZYbP7xRDXYhd8XWChh4v94uw7qwmvlxdU5yxzfm6ACJM66phHrTbS5TVvj5uQ72w== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/protocol-http@^3.3.0": - version "3.3.0" - resolved "https://registry.yarnpkg.com/@smithy/protocol-http/-/protocol-http-3.3.0.tgz#a37df7b4bb4960cdda560ce49acfd64c455e4090" - integrity sha512-Xy5XK1AFWW2nlY/biWZXu6/krgbaf2dg0q492D8M5qthsnU2H+UgFeZLbM76FnH7s6RO/xhQRkj+T6KBO3JzgQ== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/querystring-builder@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/querystring-builder/-/querystring-builder-2.0.16.tgz#1a9a02b1fb938688cdab5e585cb7c62c8054bc41" - integrity sha512-Q/GsJT0C0mijXMRs7YhZLLCP5FcuC4797lYjKQkME5CZohnLC4bEhylAd2QcD3gbMKNjCw8+T2I27WKiV/wToA== - dependencies: - "@smithy/types" "^2.8.0" - "@smithy/util-uri-escape" "^2.0.0" - tslib "^2.5.0" - -"@smithy/querystring-builder@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/querystring-builder/-/querystring-builder-2.2.0.tgz#22937e19fcd0aaa1a3e614ef8cb6f8e86756a4ef" - integrity sha512-L1kSeviUWL+emq3CUVSgdogoM/D9QMFaqxL/dd0X7PCNWmPXqt+ExtrBjqT0V7HLN03Vs9SuiLrG3zy3JGnE5A== - dependencies: - "@smithy/types" "^2.12.0" - "@smithy/util-uri-escape" "^2.2.0" - tslib "^2.6.2" - -"@smithy/querystring-parser@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/querystring-parser/-/querystring-parser-2.0.16.tgz#90d9589539ffe8fb4864c8bf6f1f1c9def962a40" - integrity sha512-c4ueAuL6BDYKWpkubjrQthZKoC3L5kql5O++ovekNxiexRXTlLIVlCR4q3KziOktLIw66EU9SQljPXd/oN6Okg== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/querystring-parser@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/querystring-parser/-/querystring-parser-2.2.0.tgz#24a5633f4b3806ff2888d4c2f4169e105fdffd79" - integrity sha512-BvHCDrKfbG5Yhbpj4vsbuPV2GgcpHiAkLeIlcA1LtfpMz3jrqizP1+OguSNSj1MwBHEiN+jwNisXLGdajGDQJA== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/service-error-classification@^2.0.9": - version "2.0.9" - resolved "https://registry.yarnpkg.com/@smithy/service-error-classification/-/service-error-classification-2.0.9.tgz#4459433f6727f1b7e953a9bab189672b3b157224" - integrity sha512-0K+8GvtwI7VkGmmInPydM2XZyBfIqLIbfR7mDQ+oPiz8mIinuHbV6sxOLdvX1Jv/myk7XTK9orgt3tuEpBu/zg== - dependencies: - "@smithy/types" "^2.8.0" - -"@smithy/shared-ini-file-loader@^2.0.6", "@smithy/shared-ini-file-loader@^2.2.8": - version "2.2.8" - resolved "https://registry.yarnpkg.com/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.2.8.tgz#b5fa153d4920a3c740215c60ad1667972d67a164" - integrity sha512-E62byatbwSWrtq9RJ7xN40tqrRKDGrEL4EluyNpaIDvfvet06a/QC58oHw2FgVaEgkj0tXZPjZaKrhPfpoU0qw== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/shared-ini-file-loader@^2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.4.0.tgz#1636d6eb9bff41e36ac9c60364a37fd2ffcb9947" - integrity sha512-WyujUJL8e1B6Z4PBfAqC/aGY1+C7T0w20Gih3yrvJSk97gpiVfB+y7c46T4Nunk+ZngLq0rOIdeVeIklk0R3OA== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/signature-v4@^2.0.0": - version "2.0.19" - resolved "https://registry.yarnpkg.com/@smithy/signature-v4/-/signature-v4-2.0.19.tgz#2b926fc00b2e61ec586289fe28927e10766a3afd" - integrity sha512-nwc3JihdM+kcJjtORv/n7qRHN2Kfh7S2RJI2qr8pz9UcY5TD8rSCRGQ0g81HgyS3jZ5X9U/L4p014P3FonBPhg== - dependencies: - "@smithy/eventstream-codec" "^2.0.16" - "@smithy/is-array-buffer" "^2.0.0" - "@smithy/types" "^2.8.0" - "@smithy/util-hex-encoding" "^2.0.0" - "@smithy/util-middleware" "^2.0.9" - "@smithy/util-uri-escape" "^2.0.0" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@smithy/smithy-client@^2.2.1": - version "2.2.1" - resolved "https://registry.yarnpkg.com/@smithy/smithy-client/-/smithy-client-2.2.1.tgz#ed1aa11f36dae2ca9b3eabcbc498bcc96d79fdfd" - integrity sha512-SpD7FLK92XV2fon2hMotaNDa2w5VAy5/uVjP9WFmjGSgWM8pTPVkHcDl1yFs5Z8LYbij0FSz+DbCBK6i+uXXUA== - dependencies: - "@smithy/middleware-endpoint" "^2.3.0" - "@smithy/middleware-stack" "^2.0.10" - "@smithy/protocol-http" "^3.0.12" - "@smithy/types" "^2.8.0" - "@smithy/util-stream" "^2.0.24" - tslib "^2.5.0" - -"@smithy/smithy-client@^2.5.1": - version "2.5.1" - resolved "https://registry.yarnpkg.com/@smithy/smithy-client/-/smithy-client-2.5.1.tgz#0fd2efff09dc65500d260e590f7541f8a387eae3" - integrity sha512-jrbSQrYCho0yDaaf92qWgd+7nAeap5LtHTI51KXqmpIFCceKU3K9+vIVTUH72bOJngBMqa4kyu1VJhRcSrk/CQ== - dependencies: - "@smithy/middleware-endpoint" "^2.5.1" - "@smithy/middleware-stack" "^2.2.0" - "@smithy/protocol-http" "^3.3.0" - "@smithy/types" "^2.12.0" - "@smithy/util-stream" "^2.2.0" - tslib "^2.6.2" - -"@smithy/types@^2.12.0": - version "2.12.0" - resolved "https://registry.yarnpkg.com/@smithy/types/-/types-2.12.0.tgz#c44845f8ba07e5e8c88eda5aed7e6a0c462da041" - integrity sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw== - dependencies: - tslib "^2.6.2" - -"@smithy/types@^2.8.0": - version "2.8.0" - resolved "https://registry.yarnpkg.com/@smithy/types/-/types-2.8.0.tgz#bdbaa0a54c9c3538d6c763c6f32d3e4f76fe0df9" - integrity sha512-h9sz24cFgt/W1Re22OlhQKmUZkNh244ApgRsUDYinqF8R+QgcsBIX344u2j61TPshsTz3CvL6HYU1DnQdsSrHA== - dependencies: - tslib "^2.5.0" - -"@smithy/url-parser@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/url-parser/-/url-parser-2.0.16.tgz#25f860effe465acbbe61beb69b6def052878ee58" - integrity sha512-Wfz5WqAoRT91TjRy1JeLR0fXtkIXHGsMbgzKFTx7E68SrZ55TB8xoG+vm11Ru4gheFTMXjAjwAxv1jQdC+pAQA== - dependencies: - "@smithy/querystring-parser" "^2.0.16" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/url-parser@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/url-parser/-/url-parser-2.2.0.tgz#6fcda6116391a4f61fef5580eb540e128359b3c0" - integrity sha512-hoA4zm61q1mNTpksiSWp2nEl1dt3j726HdRhiNgVJQMj7mLp7dprtF57mOB6JvEk/x9d2bsuL5hlqZbBuHQylQ== - dependencies: - "@smithy/querystring-parser" "^2.2.0" - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/util-base64@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/util-base64/-/util-base64-2.0.1.tgz#57f782dafc187eddea7c8a1ff2a7c188ed1a02c4" - integrity sha512-DlI6XFYDMsIVN+GH9JtcRp3j02JEVuWIn/QOZisVzpIAprdsxGveFed0bjbMRCqmIFe8uetn5rxzNrBtIGrPIQ== - dependencies: - "@smithy/util-buffer-from" "^2.0.0" - tslib "^2.5.0" - -"@smithy/util-base64@^2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@smithy/util-base64/-/util-base64-2.3.0.tgz#312dbb4d73fb94249c7261aee52de4195c2dd8e2" - integrity sha512-s3+eVwNeJuXUwuMbusncZNViuhv2LjVJ1nMwTqSA0XAC7gjKhqqxRdJPhR8+YrkoZ9IiIbFk/yK6ACe/xlF+hw== - dependencies: - "@smithy/util-buffer-from" "^2.2.0" - "@smithy/util-utf8" "^2.3.0" - tslib "^2.6.2" - -"@smithy/util-body-length-browser@^2.0.1": - version "2.0.1" - resolved "https://registry.yarnpkg.com/@smithy/util-body-length-browser/-/util-body-length-browser-2.0.1.tgz#424485cc81c640d18c17c683e0e6edb57e8e2ab9" - integrity sha512-NXYp3ttgUlwkaug4bjBzJ5+yIbUbUx8VsSLuHZROQpoik+gRkIBeEG9MPVYfvPNpuXb/puqodeeUXcKFe7BLOQ== - dependencies: - tslib "^2.5.0" - -"@smithy/util-body-length-node@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@smithy/util-body-length-node/-/util-body-length-node-2.1.0.tgz#313a5f7c5017947baf5fa018bfc22628904bbcfa" - integrity sha512-/li0/kj/y3fQ3vyzn36NTLGmUwAICb7Jbe/CsWCktW363gh1MOcpEcSO3mJ344Gv2dqz8YJCLQpb6hju/0qOWw== - dependencies: - tslib "^2.5.0" - -"@smithy/util-buffer-from@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-buffer-from/-/util-buffer-from-2.0.0.tgz#7eb75d72288b6b3001bc5f75b48b711513091deb" - integrity sha512-/YNnLoHsR+4W4Vf2wL5lGv0ksg8Bmk3GEGxn2vEQt52AQaPSCuaO5PM5VM7lP1K9qHRKHwrPGktqVoAHKWHxzw== - dependencies: - "@smithy/is-array-buffer" "^2.0.0" - tslib "^2.5.0" - -"@smithy/util-buffer-from@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz#6fc88585165ec73f8681d426d96de5d402021e4b" - integrity sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA== - dependencies: - "@smithy/is-array-buffer" "^2.2.0" - tslib "^2.6.2" - -"@smithy/util-config-provider@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@smithy/util-config-provider/-/util-config-provider-2.1.0.tgz#c733a862892772aaeb373a3e8af5182556da0ef9" - integrity sha512-S6V0JvvhQgFSGLcJeT1CBsaTR03MM8qTuxMH9WPCCddlSo2W0V5jIHimHtIQALMLEDPGQ0ROSRr/dU0O+mxiQg== - dependencies: - tslib "^2.5.0" - -"@smithy/util-defaults-mode-browser@^2.0.24": - version "2.0.24" - resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.0.24.tgz#bfa8fa441db0d0d309c11d091ca9746f2b8e4797" - integrity sha512-TsP5mBuLgO2C21+laNG2nHYZEyUdkbGURv2tHvSuQQxLz952MegX95uwdxOY2jR2H4GoKuVRfdJq7w4eIjGYeg== - dependencies: - "@smithy/property-provider" "^2.0.17" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - bowser "^2.11.0" - tslib "^2.5.0" - -"@smithy/util-defaults-mode-node@^2.0.32": - version "2.0.32" - resolved "https://registry.yarnpkg.com/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.0.32.tgz#a0665ef2feed845de7825059072e312e22393698" - integrity sha512-d0S33dXA2cq1NyorVMroMrEtqKMr3MlyLITcfTBf9pXiigYiPMOtbSI7czHIfDbuVuM89Cg0urAgpt73QV9mPQ== - dependencies: - "@smithy/config-resolver" "^2.0.23" - "@smithy/credential-provider-imds" "^2.1.5" - "@smithy/node-config-provider" "^2.1.9" - "@smithy/property-provider" "^2.0.17" - "@smithy/smithy-client" "^2.2.1" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/util-endpoints@^1.0.8": - version "1.0.8" - resolved "https://registry.yarnpkg.com/@smithy/util-endpoints/-/util-endpoints-1.0.8.tgz#10ec9b228e96fc67b42ed06dabdab118a5869532" - integrity sha512-l8zVuyZZ61IzZBYp5NWvsAhbaAjYkt0xg9R4xUASkg5SEeTT2meHOJwJHctKMFUXe4QZbn9fR2MaBYjP2119+w== - dependencies: - "@smithy/node-config-provider" "^2.1.9" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/util-hex-encoding@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-hex-encoding/-/util-hex-encoding-2.0.0.tgz#0aa3515acd2b005c6d55675e377080a7c513b59e" - integrity sha512-c5xY+NUnFqG6d7HFh1IFfrm3mGl29lC+vF+geHv4ToiuJCBmIfzx6IeHLg+OgRdPFKDXIw6pvi+p3CsscaMcMA== - dependencies: - tslib "^2.5.0" - -"@smithy/util-hex-encoding@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/util-hex-encoding/-/util-hex-encoding-2.2.0.tgz#87edb7c88c2f422cfca4bb21f1394ae9602c5085" - integrity sha512-7iKXR+/4TpLK194pVjKiasIyqMtTYJsgKgM242Y9uzt5dhHnUDvMNb+3xIhRJ9QhvqGii/5cRUt4fJn3dtXNHQ== - dependencies: - tslib "^2.6.2" - -"@smithy/util-middleware@^2.0.9": - version "2.0.9" - resolved "https://registry.yarnpkg.com/@smithy/util-middleware/-/util-middleware-2.0.9.tgz#54a372fa723ace66046cdf91439fb1648a246d5c" - integrity sha512-PnCnBJ07noMX1lMDTEefmxSlusWJUiLfrme++MfK5TD0xz8NYmakgoXy5zkF/16zKGmiwOeKAztWT/Vjk1KRIQ== - dependencies: - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/util-middleware@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/util-middleware/-/util-middleware-2.2.0.tgz#80cfad40f6cca9ffe42a5899b5cb6abd53a50006" - integrity sha512-L1qpleXf9QD6LwLCJ5jddGkgWyuSvWBkJwWAZ6kFkdifdso+sk3L3O1HdmPvCdnCK3IS4qWyPxev01QMnfHSBw== - dependencies: - "@smithy/types" "^2.12.0" - tslib "^2.6.2" - -"@smithy/util-retry@^2.0.9": - version "2.0.9" - resolved "https://registry.yarnpkg.com/@smithy/util-retry/-/util-retry-2.0.9.tgz#ef6d6e41bcc5df330b76cca913d5e637c70497fc" - integrity sha512-46BFWe9RqB6g7f4mxm3W3HlqknqQQmWHKlhoqSFZuGNuiDU5KqmpebMbvC3tjTlUkqn4xa2Z7s3Hwb0HNs5scw== - dependencies: - "@smithy/service-error-classification" "^2.0.9" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - -"@smithy/util-stream@^2.0.24": - version "2.0.24" - resolved "https://registry.yarnpkg.com/@smithy/util-stream/-/util-stream-2.0.24.tgz#fa896c8df828ce7758963b758c1f374407d812be" - integrity sha512-hRpbcRrOxDriMVmbya+Mv77VZVupxRAsfxVDKS54XuiURhdiwCUXJP0X1iJhHinuUf6n8pBF0MkG9C8VooMnWw== - dependencies: - "@smithy/fetch-http-handler" "^2.3.2" - "@smithy/node-http-handler" "^2.2.2" - "@smithy/types" "^2.8.0" - "@smithy/util-base64" "^2.0.1" - "@smithy/util-buffer-from" "^2.0.0" - "@smithy/util-hex-encoding" "^2.0.0" - "@smithy/util-utf8" "^2.0.2" - tslib "^2.5.0" - -"@smithy/util-stream@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/util-stream/-/util-stream-2.2.0.tgz#b1279e417992a0f74afa78d7501658f174ed7370" - integrity sha512-17faEXbYWIRst1aU9SvPZyMdWmqIrduZjVOqCPMIsWFNxs5yQQgFrJL6b2SdiCzyW9mJoDjFtgi53xx7EH+BXA== - dependencies: - "@smithy/fetch-http-handler" "^2.5.0" - "@smithy/node-http-handler" "^2.5.0" - "@smithy/types" "^2.12.0" - "@smithy/util-base64" "^2.3.0" - "@smithy/util-buffer-from" "^2.2.0" - "@smithy/util-hex-encoding" "^2.2.0" - "@smithy/util-utf8" "^2.3.0" - tslib "^2.6.2" - -"@smithy/util-uri-escape@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@smithy/util-uri-escape/-/util-uri-escape-2.0.0.tgz#19955b1a0f517a87ae77ac729e0e411963dfda95" - integrity sha512-ebkxsqinSdEooQduuk9CbKcI+wheijxEb3utGXkCoYQkJnwTnLbH1JXGimJtUkQwNQbsbuYwG2+aFVyZf5TLaw== - dependencies: - tslib "^2.5.0" - -"@smithy/util-uri-escape@^2.2.0": - version "2.2.0" - resolved "https://registry.yarnpkg.com/@smithy/util-uri-escape/-/util-uri-escape-2.2.0.tgz#56f5764051a33b67bc93fdd2a869f971b0635406" - integrity sha512-jtmJMyt1xMD/d8OtbVJ2gFZOSKc+ueYJZPW20ULW1GOp/q/YIM0wNh+u8ZFao9UaIGz4WoPW8hC64qlWLIfoDA== - dependencies: - tslib "^2.6.2" - -"@smithy/util-utf8@^2.0.2": - version "2.0.2" - resolved "https://registry.yarnpkg.com/@smithy/util-utf8/-/util-utf8-2.0.2.tgz#626b3e173ad137208e27ed329d6bea70f4a1a7f7" - integrity sha512-qOiVORSPm6Ce4/Yu6hbSgNHABLP2VMv8QOC3tTDNHHlWY19pPyc++fBTbZPtx6egPXi4HQxKDnMxVxpbtX2GoA== - dependencies: - "@smithy/util-buffer-from" "^2.0.0" - tslib "^2.5.0" - -"@smithy/util-utf8@^2.3.0": - version "2.3.0" - resolved "https://registry.yarnpkg.com/@smithy/util-utf8/-/util-utf8-2.3.0.tgz#dd96d7640363259924a214313c3cf16e7dd329c5" - integrity sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A== - dependencies: - "@smithy/util-buffer-from" "^2.2.0" - tslib "^2.6.2" - -"@smithy/util-waiter@^2.0.16": - version "2.0.16" - resolved "https://registry.yarnpkg.com/@smithy/util-waiter/-/util-waiter-2.0.16.tgz#3065566dd81951e24d843979ed1e6278794a955c" - integrity sha512-5i4YONHQ6HoUWDd+X0frpxTXxSXgJhUFl+z0iMy/zpUmVeCQY2or3Vss6DzHKKMMQL4pmVHpQm9WayHDorFdZg== - dependencies: - "@smithy/abort-controller" "^2.0.16" - "@smithy/types" "^2.8.0" - tslib "^2.5.0" - "@solana/wallet-adapter-base@^0.9.2": version "0.9.22" resolved "https://registry.yarnpkg.com/@solana/wallet-adapter-base/-/wallet-adapter-base-0.9.22.tgz#97812eaf6aebe01e5fe714326b3c9a0614ae6112" @@ -3378,7 +2119,7 @@ base-x@^3.0.2: dependencies: safe-buffer "^5.0.1" -base64-js@^1.0.2, base64-js@^1.3.1, base64-js@^1.5.1: +base64-js@^1.3.1, base64-js@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== @@ -3447,11 +2188,6 @@ bn.js@^5.0.0, bn.js@^5.1.1, bn.js@^5.2.1: resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== -bowser@^2.11.0: - version "2.11.0" - resolved "https://registry.yarnpkg.com/bowser/-/bowser-2.11.0.tgz#5ca3c35757a7aa5771500c70a73a9f91ef420a8f" - integrity sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA== - bplist-parser@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/bplist-parser/-/bplist-parser-0.2.0.tgz#43a9d183e5bf9d545200ceac3e712f79ebbe8d0e" @@ -3600,14 +2336,6 @@ buffer-xor@^1.0.3: resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" integrity sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ== -buffer@5.6.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz#a31749dc7d81d84db08abf937b6b8c4033f62786" - integrity sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw== - dependencies: - base64-js "^1.0.2" - ieee754 "^1.1.4" - buffer@^5.5.0, buffer@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" @@ -4854,13 +3582,6 @@ fast-levenshtein@^2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== -fast-xml-parser@4.2.5: - version "4.2.5" - resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz#a6747a09296a6cb34f2ae634019bf1738f3b421f" - integrity sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g== - dependencies: - strnum "^1.0.5" - fastq@^1.6.0: version "1.15.0" resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a" @@ -5421,7 +4142,7 @@ iconv-lite@^0.6.2: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -ieee754@^1.1.13, ieee754@^1.1.4, ieee754@^1.2.1: +ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -7823,7 +6544,7 @@ statuses@2.0.1: resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== -stream-browserify@3.0.0, stream-browserify@^3.0.0: +stream-browserify@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-3.0.0.tgz#22b0a2850cdf6503e73085da1fc7b7d0c2122f2f" integrity sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA== @@ -7939,11 +6660,6 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== -strnum@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db" - integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA== - supports-color@8.1.1: version "8.1.1" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" @@ -8165,7 +6881,7 @@ tsc-watch@^4.6.0: string-argv "^0.1.1" strip-ansi "^6.0.0" -tslib@^1.11.1, tslib@^1.8.1: +tslib@^1.8.1: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== @@ -8175,11 +6891,6 @@ tslib@^2.1.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.2.tgz#1b6f07185c881557b0ffa84b111a0106989e8338" integrity sha512-5svOrSA2w3iGFDs1HibEVBGbDrAY82bFQ3HZ3ixB+88nsbsWQoKqDRb5UBYAUPEzbBn6dAp5gRNXglySbx1MlA== -tslib@^2.3.1, tslib@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" - integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== - tslib@^2.4.0: version "2.5.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.3.tgz#24944ba2d990940e6e982c4bea147aba80209913" @@ -8373,11 +7084,6 @@ util@^0.12.0, util@^0.12.4: is-typed-array "^1.1.3" which-typed-array "^1.1.2" -uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - uuid@^9.0.0: version "9.0.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5" @@ -8460,10 +7166,10 @@ warp-contracts-sqlite@^1.0.2: better-sqlite3 "^8.3.0" safe-stable-stringify "^2.4.3" -warp-contracts@1.4.43: - version "1.4.43" - resolved "https://registry.yarnpkg.com/warp-contracts/-/warp-contracts-1.4.43.tgz#070023842f11501aa9e4787a267db213505ef3e1" - integrity sha512-72mbYH7opfPoreTOLIWqOqOw8chhvd3iR4cAztaz+JawV7enY3SnpVyAW+erlu+/OoEb2TX2Ap4xNeShdp/paw== +warp-contracts@1.4.39: + version "1.4.39" + resolved "https://registry.yarnpkg.com/warp-contracts/-/warp-contracts-1.4.39.tgz#b56f4baa61b633c04d8abba65ee5dfca333ffea5" + integrity sha512-Dyk9wjhYceLRSq+U5Ba8h2mTbMPeB1hjdnDhYJP825E7gcc3jGc12GTLynSBqx5eJscOtpGG5Z5SQNxcTOP7/A== dependencies: archiver "^5.3.0" arweave "1.14.4" From 82c22df2a0b813c9b09943305227dc7d1ff3416b Mon Sep 17 00:00:00 2001 From: dtfiedler Date: Thu, 23 May 2024 09:52:14 -0600 Subject: [PATCH 2/7] fix(docker): fix docker compose file for litestream --- .env.litestream.sample | 6 ------ docker-compose.yaml | 15 ++++++++------- litestream/.env.sample | 3 ++- litestream/litestream.template.yaml | 8 ++++++-- src/system.ts | 5 +---- 5 files changed, 17 insertions(+), 20 deletions(-) delete mode 100644 .env.litestream.sample diff --git a/.env.litestream.sample b/.env.litestream.sample deleted file mode 100644 index fb7dc95..0000000 --- a/.env.litestream.sample +++ /dev/null @@ -1,6 +0,0 @@ -TVAL_LOCAL_DB_PATH=/cache/warp/sqlite -TVAL_AWS_ACCESS_KEY_ID= -TVAL_AWS_SECRET_ACCESS_KEY= -TVAL_S3_BUCKET_PATH=s3://// -WAIT_TIME_SECONDS=0 -RESTORE_FROM_BACKUP=false diff --git a/docker-compose.yaml b/docker-compose.yaml index 65a9f65..a71a8b1 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -27,15 +27,16 @@ services: litestream: profiles: ['litestream'] - build: + build: context: litestream environment: - TVAL_LOCAL_DB_PATH: ${LOCAL_DB_PATH:-/app/data/sqlite} - TVAL_S3_BUCKET_PATH: ${S3_BUCKET_PATH:-} - TVAL_AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID:-} - TVAL_AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY:-} - WAIT_TIME_SECONDS: ${WAIT_TIME_SECONDS:-} - RESTORE_FROM_BACKUP: ${RESTORE_FROM_BACKUP:-false} + TVAL_LOCAL_DB_PATH: ${LITESTREAM_LOCAL_DB_PATH:-/app/data/sqlite} + TVAL_S3_BUCKET_PATH: ${LITESTREAM_S3_BUCKET_PATH:-} + TVAL_S3_BUCKET: ${LITESTREAM_S3_BUCKET:-} + TVAL_AWS_ACCESS_KEY_ID: ${LITESTREAM_AWS_ACCESS_KEY_ID:-} + TVAL_AWS_SECRET_ACCESS_KEY: ${LITESTREAM_AWS_SECRET_ACCESS_KEY:-} + WAIT_TIME_SECONDS: ${LITESTREAM_WAIT_TIME_SECONDS:-} + RESTORE_FROM_BACKUP: ${LITESTREAM_RESTORE_FROM_BACKUP:-false} volumes: - ${WARP_SQLITE_CACHE_PATH:-./cache/warp/sqlite}:/app/data/sqlite diff --git a/litestream/.env.sample b/litestream/.env.sample index fb7dc95..5b67a0f 100644 --- a/litestream/.env.sample +++ b/litestream/.env.sample @@ -1,6 +1,7 @@ TVAL_LOCAL_DB_PATH=/cache/warp/sqlite TVAL_AWS_ACCESS_KEY_ID= TVAL_AWS_SECRET_ACCESS_KEY= -TVAL_S3_BUCKET_PATH=s3://// +TVAL_S3_BUCKET_PATH=/ { if (PREFETCH_CONTRACTS) { From d3b586fdcef1abcb92d668ba094cbd820d2da84d Mon Sep 17 00:00:00 2001 From: dtfiedler Date: Thu, 23 May 2024 10:04:42 -0600 Subject: [PATCH 3/7] chore(package.json): update command in package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 7f79b60..b9a66a3 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "test:integration:local": "docker compose up arlocal -d ; yarn test:integration $*; docker compose down -v", "docker:run": "docker compose up arns-service --build", "docker:run:litestream": "docker compose --profile litestream up --build", - "docker:integration": "docker compose up --exit-code-from test-runner --build", + "docker:integration": "docker compose up --profile test --exit-code-from test-runner --build", "format:fix": "yarn prettier --write .", "format:check": "yarn prettier . --check", "lint:fix": "yarn eslint . --fix", From 33da48e8f2e0711291f2a2662adcfc7a353a33fc Mon Sep 17 00:00:00 2001 From: dtfiedler Date: Thu, 23 May 2024 10:07:53 -0600 Subject: [PATCH 4/7] chore(fix): update profile to be before up command --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b9a66a3..bc02167 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "test:integration:local": "docker compose up arlocal -d ; yarn test:integration $*; docker compose down -v", "docker:run": "docker compose up arns-service --build", "docker:run:litestream": "docker compose --profile litestream up --build", - "docker:integration": "docker compose up --profile test --exit-code-from test-runner --build", + "docker:integration": "docker compose --profile test up --exit-code-from test-runner --build", "format:fix": "yarn prettier --write .", "format:check": "yarn prettier . --check", "lint:fix": "yarn eslint . --fix", From c8d2714145a7340da0dd671a81a1dc90ade43d44 Mon Sep 17 00:00:00 2001 From: dtfiedler Date: Thu, 23 May 2024 11:20:09 -0600 Subject: [PATCH 5/7] chore(docker): remove profiles from arns-service in docker-compose Core services should not use profiles per the docs --- docker-compose.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index a71a8b1..5e571b1 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -6,7 +6,6 @@ services: - '1984:1984' arns-service: - profiles: ['test', '', 'litestream'] build: context: . args: From 988061915df66ddd69640a200167b43de6fda7b5 Mon Sep 17 00:00:00 2001 From: dtfiedler Date: Tue, 28 May 2024 15:37:35 -0600 Subject: [PATCH 6/7] chore(warp): ower max entries per contract in db --- src/middleware/warp.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/middleware/warp.ts b/src/middleware/warp.ts index 7ef27d3..9fec9a7 100644 --- a/src/middleware/warp.ts +++ b/src/middleware/warp.ts @@ -47,7 +47,7 @@ export const warp = WarpFactory.forMainnet( dbLocation: `./cache/warp/sqlite/state`, }, { - maxEntriesPerContract: 1_000_000, + maxEntriesPerContract: 100_000, }, ), ) From 51391efa7599782d01b58a428eddf257dff72ca8 Mon Sep 17 00:00:00 2001 From: dtfiedler Date: Tue, 28 May 2024 16:49:10 -0600 Subject: [PATCH 7/7] chore(docker): update docker env vars and add names to replicas --- docker-compose.yaml | 1 + litestream/litestream.template.yaml | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/docker-compose.yaml b/docker-compose.yaml index 5e571b1..5a6bb50 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -34,6 +34,7 @@ services: TVAL_S3_BUCKET: ${LITESTREAM_S3_BUCKET:-} TVAL_AWS_ACCESS_KEY_ID: ${LITESTREAM_AWS_ACCESS_KEY_ID:-} TVAL_AWS_SECRET_ACCESS_KEY: ${LITESTREAM_AWS_SECRET_ACCESS_KEY:-} + TVAL_S3_BUCKET_REGION: ${LITESTREAM_S3_BUCKET_REGION:-} WAIT_TIME_SECONDS: ${LITESTREAM_WAIT_TIME_SECONDS:-} RESTORE_FROM_BACKUP: ${LITESTREAM_RESTORE_FROM_BACKUP:-false} volumes: diff --git a/litestream/litestream.template.yaml b/litestream/litestream.template.yaml index a390de9..98a7048 100644 --- a/litestream/litestream.template.yaml +++ b/litestream/litestream.template.yaml @@ -8,11 +8,19 @@ secret-access-key: #@ data.values.AWS_SECRET_ACCESS_KEY dbs: - path: #@ data.values.LOCAL_DB_PATH + "/state.db" replicas: - - type: s3 + - name: warp.state.db + type: s3 bucket: #@ data.values.S3_BUCKET path: #@ data.values.S3_BUCKET_PATH + region: #@ data.values.S3_BUCKET_REGION + sync-interval: 1m + snapshot-interval: 6h - path: #@ data.values.LOCAL_DB_PATH + "/contract.db" replicas: - - type: s3 + - name: warp.contracts.db + type: s3 bucket: #@ data.values.S3_BUCKET path: #@ data.values.S3_BUCKET_PATH + region: #@ data.values.S3_BUCKET_REGION + sync-interval: 1m + snapshot-interval: 6h