一、概述
本文档详细记录了如何在本地环境搭建完整的 dYdX V4 网络,包括协议层(Protocol)和索引器(Indexer)服务。
二、系统要求
- 操作系统: ubuntu22.04
- Docker: 最新版本
- Node.js: v16+
- Go: v1.23+
- Python: v3.8+
三、部署
3.1 chain部署
构建好二进制dydxprotocold,然后使用以下脚本初始化网络
#!/bin/bash
set -e
# Single Node dYdX V4 Setup Script
echo "Setting up single dYdX V4 node..."
# Configuration
CHAIN_ID="dydxprotocol-single"
MONIKER="validator-single"
HOME_DIR="$HOME/single-node-deployment/.dydxprotocol"
CONFIG_DIR="$HOME_DIR/config"
BINARY_PATH="/root/src/trade/v4-chain/protocol/build/dydxprotocold"
# Validator details (using alice from local testnet)
MNEMONIC="merge panther lobster crazy road hollow amused security before critic about cliff exhibit cause coyote talent happy where lion river tobacco option coconut small"
NODE_KEY="8EGQBxfGMcRfH0C45UTedEG5Xi3XAcukuInLUqFPpskjp1Ny0c5XvwlKevAwtVvkwoeYYQSe0geQG/cF3GAcUA=="
# Test accounts
TEST_ACCOUNTS=(
"dydx199tqg4wdlnu4qjlxchpd7seg454937hjrknju4" # alice
"dydx10fx7sy6ywd5senxae9dwytf8jxek3t2gcen2vs" # bob
"dydx1fjg6zp6vv8t9wvy4lps03r5l4g7tkjw9wvmh70" # carl
"dydx1wau5mja7j7zdavtfq9lu7ejef05hm6ffenlcsn" # dave
)
FAUCET_ACCOUNTS=(
"dydx1nzuttarf5k2j0nug5yzhr6p74t9avehn9hlh8m" # main faucet
)
# Token denominations
USDC_DENOM="ibc/8E27BA2D5493AF5636760E354E46004562C46AB7EC0CC4C1CA14E9E20E2545B5"
NATIVE_TOKEN="adv4tnt"
TESTNET_VALIDATOR_NATIVE_TOKEN_BALANCE="10000000000000000000000000000"
TESTNET_VALIDATOR_SELF_DELEGATE_AMOUNT="1000000000000000000000"
# Clean up any existing setup
echo "Cleaning up existing setup..."
rm -rf "$HOME_DIR"
# Install prerequisites if needed
echo "Installing prerequisites..."
which jq > /dev/null || (echo "Installing jq..." && apt-get update && apt-get install -y jq)
which dasel > /dev/null || (echo "Installing dasel..." && curl -sSL https://github.com/TomWright/dasel/releases/latest/download/dasel_linux_amd64 -o /usr/local/bin/dasel && chmod +x /usr/local/bin/dasel)
# Initialize the chain
echo "Initializing chain..."
$BINARY_PATH init "$MONIKER" --chain-id="$CHAIN_ID" --home "$HOME_DIR"
# Set up validator key from mnemonic
echo "Setting up validator key..."
echo "$MNEMONIC" | $BINARY_PATH keys add "$MONIKER" --recover --keyring-backend=test --home "$HOME_DIR"
# Generate deterministic priv_validator_key from mnemonic
echo "Generating validator keys..."
$BINARY_PATH tendermint gen-priv-key --home "$HOME_DIR" --mnemonic "$MNEMONIC"
# Set deterministic node key
echo "Setting node key..."
jq ".priv_key.value = \"$NODE_KEY\"" "$CONFIG_DIR/node_key.json" > "$CONFIG_DIR/node_key.json.tmp"
mv "$CONFIG_DIR/node_key.json.tmp" "$CONFIG_DIR/node_key.json"
# Configure the node
echo "Configuring node..."
# Disable pex and set consensus timeout
dasel put -t bool -f "$CONFIG_DIR/config.toml" '.p2p.pex' -v 'false'
dasel put -t string -f "$CONFIG_DIR/config.toml" '.consensus.timeout_commit' -v '3s'
# Configure app settings (disable oracle/slinky for single node)
dasel put -t bool -f "$CONFIG_DIR/app.toml" 'oracle.enabled' -v false
dasel put -t string -f "$CONFIG_DIR/app.toml" 'oracle.oracle_address' -v 'localhost:8080'
dasel put -t bool -f "$CONFIG_DIR/app.toml" 'oracle.metrics_enabled' -v false
dasel put -t string -f "$CONFIG_DIR/app.toml" 'oracle.prometheus_server_address' -v 'localhost:8001'
# Add genesis accounts
echo "Adding genesis accounts..."
for acct in "${TEST_ACCOUNTS[@]}"; do
$BINARY_PATH add-genesis-account "$acct" "100000000000000000$USDC_DENOM,$TESTNET_VALIDATOR_NATIVE_TOKEN_BALANCE$NATIVE_TOKEN" --home "$HOME_DIR"
done
for acct in "${FAUCET_ACCOUNTS[@]}"; do
$BINARY_PATH add-genesis-account "$acct" "900000000000000000$USDC_DENOM,$TESTNET_VALIDATOR_NATIVE_TOKEN_BALANCE$NATIVE_TOKEN" --home "$HOME_DIR"
done
# Generate genesis transaction for validator
echo "Generating genesis transaction..."
$BINARY_PATH gentx "$MONIKER" "$TESTNET_VALIDATOR_SELF_DELEGATE_AMOUNT$NATIVE_TOKEN" \
--moniker="$MONIKER" \
--keyring-backend=test \
--chain-id="$CHAIN_ID" \
--home "$HOME_DIR"
# Collect genesis transactions
echo "Collecting genesis transactions..."
$BINARY_PATH collect-gentxs --home "$HOME_DIR"
# Configure genesis parameters (fix bond denomination)
echo "Configuring genesis parameters..."
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.staking.params.bond_denom' -v "$NATIVE_TOKEN"
# Configure rewards module to use existing BTC-USD market (market_id=0)
echo "Configuring rewards module..."
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.rewards' -v "{}"
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.rewards.params' -v "{}"
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.rewards.params.treasury_account' -v 'rewards_treasury'
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.rewards.params.denom' -v "$NATIVE_TOKEN"
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.rewards.params.denom_exponent' -v '-18'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.rewards.params.market_id' -v '0'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.rewards.params.fee_multiplier_ppm' -v '990000'
# Configure market map (required for prices module)
echo "Configuring market map..."
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map' -v "{}"
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets' -v "{}"
# Marketmap: USDT/USD (MUST BE FIRST - other markets reference this for normalization)
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD' -v "{}"
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.ticker' -v "{}"
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.ticker.currency_pair' -v "{}"
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.ticker.currency_pair.Base' -v 'USDT'
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.ticker.currency_pair.Quote' -v 'USD'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.ticker.decimals' -v '9'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.ticker.min_provider_count' -v '3'
dasel put -t bool -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.ticker.enabled' -v 'true'
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.provider_configs.[]' -v '{"name": "binance_ws", "off_chain_ticker": "USDCUSDT", "invert": true}'
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.provider_configs.[]' -v '{"name": "bybit_ws", "off_chain_ticker": "USDCUSDT", "invert": true}'
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.USDT/USD.provider_configs.[]' -v '{"name": "coinbase_ws", "off_chain_ticker": "USDT-USD"}'
# Marketmap: BTC/USD
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD' -v "{}"
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.ticker' -v "{}"
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.ticker.currency_pair' -v "{}"
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.ticker.currency_pair.Base' -v 'BTC'
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.ticker.currency_pair.Quote' -v 'USD'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.ticker.decimals' -v '5'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.ticker.min_provider_count' -v '3'
dasel put -t bool -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.ticker.enabled' -v 'true'
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.provider_configs.[]' -v '{"name": "binance_ws", "off_chain_ticker": "BTCUSDT", "normalize_by_pair": {"Base": "USDT", "Quote": "USD"}}'
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.provider_configs.[]' -v '{"name": "bybit_ws", "off_chain_ticker": "BTCUSDT", "normalize_by_pair": {"Base": "USDT", "Quote": "USD"}}'
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.marketmap.market_map.markets.BTC/USD.provider_configs.[]' -v '{"name": "coinbase_ws", "off_chain_ticker": "BTC-USD"}'
# Configure prices module with BTC/USD market
echo "Configuring prices module..."
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params' -v "[]"
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_prices' -v "[]"
# Market: BTC-USD
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params.[]' -v "{}"
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params.[0].pair' -v 'BTC-USD'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params.[0].id' -v '0'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params.[0].exponent' -v '-5'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params.[0].min_price_change_ppm' -v '1000'
dasel put -t string -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params.[0].exchange_config_json' -v '{"exchanges": [{"exchangeName": "TestExchange", "ticker": "BTC-USD"}]}'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_params.[0].min_exchanges' -v '1'
dasel put -t json -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_prices.[]' -v "{}"
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_prices.[0].id' -v '0'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_prices.[0].exponent' -v '-5'
dasel put -t int -f "$CONFIG_DIR/genesis.json" '.app_state.prices.market_prices.[0].price' -v '2868819524'
echo "✅ Single node validator setup complete!"
echo ""
echo "Configuration details:"
echo " Chain ID: $CHAIN_ID"
echo " Moniker: $MONIKER"
echo " Home directory: $HOME_DIR"
echo " Binary: $BINARY_PATH"
echo ""
echo "To start the validator, run:"
echo " $BINARY_PATH start --home $HOME_DIR \\"
echo " --bridge-daemon-enabled=false \\"
echo " --liquidation-daemon-enabled=false \\"
echo " --price-daemon-enabled=false \\"
echo " --oracle.enabled=false"
echo ""
echo "Note: Daemons are disabled for single-node development setup"
echo ""
echo "RPC endpoint will be available at: http://localhost:26657"
echo "gRPC endpoint will be available at: localhost:9090"
echo "REST API endpoint will be available at: http://localhost:1317"
启动命令
cd /root/single-node-deployment
./setup-single-node.sh
/root/src/trade/v4-chain/protocol/build/dydxprotocold start --home /root/single-node-deployment/.dydxprotocol \
--bridge-daemon-enabled=false \
--liquidation-daemon-enabled=false \
--price-daemon-enabled=false \
--bridge-daemon-eth-rpc-endpoint "https://eth-sepolia.g.alchemy.com/v2/demo" \
--oracle.enabled=false
3.2 indexer部署
首先项目中有些模块缺一些库,尼玛坑爹,这些是pnmp本身的问题,这一点bazel就做的非常赞,保证代码和构建行为保持一模一样,使用下面的patch才能构建成功
diff --git a/indexer/packages/dev/package.json b/indexer/packages/dev/package.json
index f66b90196..cbb501efc 100644
--- a/indexer/packages/dev/package.json
+++ b/indexer/packages/dev/package.json
@@ -16,7 +16,7 @@
},
"devDependencies": {
"@types/jest": "^28.1.4",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@typescript-eslint/eslint-plugin": "^5.30.5",
"@typescript-eslint/parser": "^5.30.5",
"coveralls": "^3.1.1",
@@ -40,4 +40,4 @@
"url": "https://github.com/dydxprotocol/indexer/issues"
},
"homepage": "https://github.com/dydxprotocol/indexer#readme"
-}
+}
\ No newline at end of file
diff --git a/indexer/packages/kafka/package.json b/indexer/packages/kafka/package.json
index 021b10879..125b5378f 100644
--- a/indexer/packages/kafka/package.json
+++ b/indexer/packages/kafka/package.json
@@ -36,7 +36,7 @@
"@dydxprotocol-indexer/dev": "workspace:^0.0.1",
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/uuid": "^8.3.4",
"jest": "^28.1.2",
"typescript": "^4.7.4"
diff --git a/indexer/packages/postgres/package.json b/indexer/packages/postgres/package.json
index 7b3e8df21..6845868db 100644
--- a/indexer/packages/postgres/package.json
+++ b/indexer/packages/postgres/package.json
@@ -9,7 +9,7 @@
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
"@types/luxon": "^3.0.0",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/pg": "^8.6.5",
"@types/uuid": "^8.3.4",
"jest": "^28.1.2",
diff --git a/indexer/packages/redis/package.json b/indexer/packages/redis/package.json
index 57d32606e..12745b720 100644
--- a/indexer/packages/redis/package.json
+++ b/indexer/packages/redis/package.json
@@ -10,7 +10,7 @@
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
"@types/luxon": "^3.0.0",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/redis": "2.8.27",
"jest": "^28.1.2",
"typescript": "^4.7.4"
diff --git a/indexer/packages/v4-proto-parser/package.json b/indexer/packages/v4-proto-parser/package.json
index 4df032996..927722bd0 100644
--- a/indexer/packages/v4-proto-parser/package.json
+++ b/indexer/packages/v4-proto-parser/package.json
@@ -7,7 +7,7 @@
"@dydxprotocol-indexer/dev": "workspace:^0.0.1",
"@types/jest": "^28.1.4",
"@types/luxon": "^3.0.0",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"jest": "^28.1.2",
"typescript": "^4.7.4"
},
diff --git a/indexer/pnpm-lock.yaml b/indexer/pnpm-lock.yaml
index a1fb6fb57..7e7fc53e9 100644
--- a/indexer/pnpm-lock.yaml
+++ b/indexer/pnpm-lock.yaml
@@ -90,7 +90,7 @@ importers:
packages/dev:
specifiers:
'@types/jest': ^28.1.4
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@typescript-eslint/eslint-plugin': ^5.30.5
'@typescript-eslint/parser': ^5.30.5
coveralls: ^3.1.1
@@ -108,7 +108,7 @@ importers:
dotenv-flow: 3.2.0
devDependencies:
'@types/jest': 28.1.4
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@typescript-eslint/eslint-plugin': 5.30.5_f646e16e2de31e818e163bded4698d6b
'@typescript-eslint/parser': 5.30.5_eslint@8.19.0+typescript@4.7.4
coveralls: 3.1.1
@@ -119,7 +119,7 @@ importers:
eslint-plugin-no-only-tests: 2.6.0
eslint-plugin-react: 7.30.1_eslint@8.19.0
eslint-plugin-react-hooks: 4.6.0_eslint@8.19.0
- jest: 28.1.2_@types+node@18.0.3
+ jest: 28.1.2_@types+node@16.18.126
typescript: 4.7.4
packages/example-package:
@@ -142,7 +142,7 @@ importers:
'@milahu/patch-package': 6.4.14
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/uuid': ^8.3.4
dotenv-flow: ^3.2.0
jest: ^28.1.2
@@ -163,9 +163,9 @@ importers:
'@dydxprotocol-indexer/dev': link:../dev
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/uuid': 8.3.4
- jest: 28.1.2_@types+node@18.0.3
+ jest: 28.1.2_@types+node@16.18.126
typescript: 4.7.4
packages/notifications:
@@ -201,7 +201,7 @@ importers:
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
'@types/luxon': ^3.0.0
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/pg': ^8.6.5
'@types/uuid': ^8.3.4
big.js: ^6.2.1
@@ -230,7 +230,7 @@ importers:
objection: 2.2.18_knex@0.21.21
objection-unique: 1.2.2_objection@2.2.18
pg: 8.7.3
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
uuid: 8.3.2
devDependencies:
'@dydxprotocol-indexer/dev': link:../dev
@@ -238,10 +238,10 @@ importers:
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
'@types/luxon': 3.0.0
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/pg': 8.6.5
'@types/uuid': 8.3.4
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
typescript: 4.7.4
packages/redis:
@@ -256,7 +256,7 @@ importers:
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
'@types/luxon': ^3.0.0
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/redis': 2.8.27
big.js: ^6.2.1
bluebird: ^3.7.2
@@ -286,9 +286,9 @@ importers:
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
'@types/luxon': 3.0.0
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/redis': 2.8.27
- jest: 28.1.2_@types+node@18.0.3
+ jest: 28.1.2_@types+node@16.18.126
typescript: 4.7.4
packages/v4-proto-parser:
@@ -297,7 +297,7 @@ importers:
'@dydxprotocol-indexer/v4-protos': workspace:^0.0.1
'@types/jest': ^28.1.4
'@types/luxon': ^3.0.0
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
dotenv-flow: ^3.2.0
jest: ^28.1.2
long: ^5.2.1
@@ -310,8 +310,8 @@ importers:
'@dydxprotocol-indexer/dev': link:../dev
'@types/jest': 28.1.4
'@types/luxon': 3.0.0
- '@types/node': 18.0.3
- jest: 28.1.2_@types+node@18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
+ jest: 28.1.2_@types+node@16.18.126
typescript: 4.7.4
packages/v4-protos:
@@ -362,7 +362,7 @@ importers:
'@types/aws-lambda': ^8.10.108
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/redis': 2.8.27
dotenv-flow: ^3.2.0
esbuild: ^0.15.11
@@ -388,11 +388,11 @@ importers:
'@types/aws-lambda': 8.10.108
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/redis': 2.8.27
esbuild: 0.15.11
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2ee97d30e4a239eb38d57e3751ee8d16
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_c1fa8f46d69d2806146bcf2350c141a0
tsconfig-paths: 4.0.0
typescript: 4.9.5
@@ -409,7 +409,7 @@ importers:
'@types/aws-lambda': ^8.10.108
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/redis': 2.8.27
big.js: ^6.0.2
dotenv-flow: ^3.2.0
@@ -441,11 +441,11 @@ importers:
'@types/aws-lambda': 8.10.108
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/redis': 2.8.27
esbuild: 0.15.11
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -475,7 +475,7 @@ importers:
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
'@types/luxon': ^3.0.0
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/redis': 2.8.27
'@types/response-time': ^2.3.5
'@types/supertest': ^2.0.12
@@ -549,14 +549,14 @@ importers:
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
'@types/luxon': 3.0.0
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/redis': 2.8.27
'@types/response-time': 2.3.5
'@types/supertest': 2.0.12
'@types/swagger-ui-express': 4.1.3
concurrently: 7.6.0
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -575,7 +575,7 @@ importers:
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
'@types/luxon': ^3.0.0
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/pg': ^8.6.5
big.js: ^6.0.2
dd-trace: ^3.32.1
@@ -614,10 +614,10 @@ importers:
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
'@types/luxon': 3.0.0
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/pg': 8.6.5
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -625,7 +625,7 @@ importers:
specifiers:
'@dydxprotocol-indexer/dev': workspace:^0.0.1
'@types/jest': ^28.1.4
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
dotenv-flow: ^3.2.0
jest: ^28.1.2
ts-node: ^10.8.2
@@ -636,9 +636,9 @@ importers:
devDependencies:
'@dydxprotocol-indexer/dev': link:../../packages/dev
'@types/jest': 28.1.4
- '@types/node': 18.0.3
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -657,7 +657,7 @@ importers:
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
'@types/luxon': ^3.0.0
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/redis': 2.8.27
'@types/seedrandom': ^3.0.8
'@types/uuid': ^8.3.4
@@ -700,12 +700,12 @@ importers:
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
'@types/luxon': 3.0.0
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/redis': 2.8.27
'@types/seedrandom': 3.0.8
'@types/uuid': 8.3.4
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -719,7 +719,7 @@ importers:
'@dydxprotocol-indexer/v4-protos': workspace:^0.0.1
'@milahu/patch-package': 6.4.14
'@types/jest': ^28.1.4
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/yargs': ^16.0.0
big.js: ^6.0.2
dotenv-flow: ^3.2.0
@@ -747,10 +747,10 @@ importers:
devDependencies:
'@dydxprotocol-indexer/dev': link:../../packages/dev
'@types/jest': 28.1.4
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/yargs': 16.0.5
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -769,7 +769,7 @@ importers:
'@types/express-request-id': ^1.4.3
'@types/jest': ^28.1.4
'@types/lodash': ^4.14.182
- '@types/node': ^18.19.31
+ '@types/node': ^16.18.0
'@types/response-time': ^2.3.5
'@types/ws': ^8.5.10
axios: ^1.2.1
@@ -819,11 +819,11 @@ importers:
'@types/express-request-id': 1.4.3
'@types/jest': 28.1.4
'@types/lodash': 4.14.182
- '@types/node': 18.19.31
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/response-time': 2.3.5
'@types/ws': 8.5.10
- jest: 28.1.2_e1489a60da1bfeaddb37cf23d6a3b371
- ts-node: 10.8.2_4ea55324100c26d4019c6e6bcc89fac6
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -840,7 +840,7 @@ importers:
'@types/big.js': ^6.1.5
'@types/jest': ^28.1.4
'@types/luxon': 3.0.0
- '@types/node': ^18.0.3
+ '@types/node': ^16.18.0
'@types/redis': 2.8.27
big.js: ^6.2.1
dd-trace: ^3.32.1
@@ -873,10 +873,10 @@ importers:
'@types/big.js': 6.1.5
'@types/jest': 28.1.4
'@types/luxon': 3.0.0
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
'@types/redis': 2.8.27
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
tsconfig-paths: 4.0.0
typescript: 4.7.4
@@ -5107,33 +5107,6 @@ packages:
/@bcoe/v8-coverage/0.2.3:
resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
- /@bufbuild/buf-darwin-arm64/1.19.0-1:
- resolution: {integrity: sha512-HsWPii21wm3QSyuxrNq9+Yf8iAgpnC4rNCy4x3d6P1fd/LmgE1NPzQW0ghEZvl9dgAQKkL/4S5bKhlm7kbUdmQ==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [darwin]
- requiresBuild: true
- dev: false
- optional: true
-
- /@bufbuild/buf-darwin-x64/1.19.0-1:
- resolution: {integrity: sha512-2+Ig7ylYpVh4kms/OeJJVY+X0KX4awPA6hYr7L7aZOIcHwZEM8lWtSTO/se5pQc7dc8FXNiC4YUqHC8yfxxX6Q==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [darwin]
- requiresBuild: true
- dev: false
- optional: true
-
- /@bufbuild/buf-linux-aarch64/1.19.0-1:
- resolution: {integrity: sha512-g/Vxg3WiBr3nhsxsRr2Q81xXJD+0ktHIO3ZJggTG2Sbbl3dh8kyg1iKM6MjJiMP7su5RKCylLigzoEJzVTShyA==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [linux]
- requiresBuild: true
- dev: false
- optional: true
-
/@bufbuild/buf-linux-x64/1.19.0-1:
resolution: {integrity: sha512-anYuGx8k/2kp8GPX3eHNUf3IY/01Zpnyw0HaLPXK1Btqyy6XkapVywrDqg7YUzMd1ySFEp1wD9UqRNdEFNCQ4A==}
engines: {node: '>=12'}
@@ -5143,36 +5116,18 @@ packages:
dev: false
optional: true
- /@bufbuild/buf-win32-arm64/1.19.0-1:
- resolution: {integrity: sha512-xXgF1qYnCfRKbGx1FqvPbpZ6ajh4ddxpXhSxI3VCeb3MsMBuIbiLqX4fQAL3ls/Zwz8tVIITuSwOhYmSEGcpBA==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [win32]
- requiresBuild: true
- dev: false
- optional: true
-
- /@bufbuild/buf-win32-x64/1.19.0-1:
- resolution: {integrity: sha512-futmqgpMQCR1lcAzZJEGjPr7ECw1gYTPIV8crm5SY+iCJ7sOeStOBNt7q5hV4LKmmeWmvm03XIMZPjhQzjH5NQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [win32]
- requiresBuild: true
- dev: false
- optional: true
-
/@bufbuild/buf/1.19.0-1:
resolution: {integrity: sha512-TIsLTTQUntr/Xq/IMSULv3dlC3/ZsVwQtWgxmJ++IzSuOW79TFQfq59vFeTWrPa6+QXFMz5t6jkMyD4ghzO5nw==}
engines: {node: '>=12'}
hasBin: true
requiresBuild: true
optionalDependencies:
- '@bufbuild/buf-darwin-arm64': 1.19.0-1
- '@bufbuild/buf-darwin-x64': 1.19.0-1
- '@bufbuild/buf-linux-aarch64': 1.19.0-1
+ '@bufbuild/buf-darwin-arm64': registry.npmmirror.com/@bufbuild/buf-darwin-arm64/1.19.0-1
+ '@bufbuild/buf-darwin-x64': registry.npmmirror.com/@bufbuild/buf-darwin-x64/1.19.0-1
+ '@bufbuild/buf-linux-aarch64': registry.npmmirror.com/@bufbuild/buf-linux-aarch64/1.19.0-1
'@bufbuild/buf-linux-x64': 1.19.0-1
- '@bufbuild/buf-win32-arm64': 1.19.0-1
- '@bufbuild/buf-win32-x64': 1.19.0-1
+ '@bufbuild/buf-win32-arm64': registry.npmmirror.com/@bufbuild/buf-win32-arm64/1.19.0-1
+ '@bufbuild/buf-win32-x64': registry.npmmirror.com/@bufbuild/buf-win32-x64/1.19.0-1
dev: false
/@bugsnag/browser/7.18.0:
@@ -5454,24 +5409,6 @@ packages:
resolution: {integrity: sha512-smLocSfrt3s53H/XSVP3/1kP42oqvrkjUPtyaFd1F79ux24oE31BKt+q0c6lsa6hOYrFzsIwyc5GXAI5JmfOew==}
dev: false
- /@esbuild/android-arm/0.15.11:
- resolution: {integrity: sha512-PzMcQLazLBkwDEkrNPi9AbjFt6+3I7HKbiYF2XtWQ7wItrHvEOeO3T8Am434zAozWtVP7lrTue1bEfc2nYWeCA==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [android]
- requiresBuild: true
- dev: true
- optional: true
-
- /@esbuild/linux-loong64/0.15.11:
- resolution: {integrity: sha512-geWp637tUhNmhL3Xgy4Bj703yXB9dqiLJe05lCUfjSFDrQf9C/8pArusyPUbUbPwlC/EAUjBw32sxuIl/11dZw==}
- engines: {node: '>=12'}
- cpu: [loong64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
/@eslint/eslintrc/1.3.0:
resolution: {integrity: sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -5483,7 +5420,7 @@ packages:
ignore: 5.2.0
import-fresh: 3.3.0
js-yaml: 4.1.0
- minimatch: 3.1.2
+ minimatch: registry.npmmirror.com/minimatch/3.1.2
strip-json-comments: 3.1.1
transitivePeerDependencies:
- supports-color
@@ -5600,21 +5537,6 @@ packages:
tslib: 2.5.0
dev: false
- /@google-cloud/firestore/7.9.0:
- resolution: {integrity: sha512-c4ALHT3G08rV7Zwv8Z2KG63gZh66iKdhCBeDfCpIkLrjX6EAjTD/szMdj14M+FnQuClZLFfW5bAgoOjfNmLtJg==}
- engines: {node: '>=14.0.0'}
- requiresBuild: true
- dependencies:
- fast-deep-equal: 3.1.3
- functional-red-black-tree: 1.0.1
- google-gax: 4.4.1
- protobufjs: 7.3.2
- transitivePeerDependencies:
- - encoding
- - supports-color
- dev: false
- optional: true
-
/@google-cloud/paginator/5.0.2:
resolution: {integrity: sha512-DJS3s0OVH4zFDB1PzjxAsHqJT6sKVbRwwML0ZBP9PbU7Yebtu/7SWMRzvO2J3nUi9pRNITCfu4LJeooM2w4pjg==}
engines: {node: '>=14.0.0'}
@@ -5636,32 +5558,6 @@ packages:
dev: false
optional: true
- /@google-cloud/storage/7.12.1:
- resolution: {integrity: sha512-Z3ZzOnF3YKLuvpkvF+TjQ6lztxcAyTILp+FjKonmVpEwPa9vFvxpZjubLR4sB6bf19i/8HL2AXRjA0YFgHFRmQ==}
- engines: {node: '>=14'}
- requiresBuild: true
- dependencies:
- '@google-cloud/paginator': 5.0.2
- '@google-cloud/projectify': 4.0.0
- '@google-cloud/promisify': 4.0.0
- abort-controller: 3.0.0
- async-retry: 1.3.3
- duplexify: 4.1.3
- fast-xml-parser: 4.5.0
- gaxios: 6.7.1
- google-auth-library: 9.14.1
- html-entities: 2.5.2
- mime: 3.0.0
- p-limit: 3.1.0
- retry-request: 7.0.2
- teeny-request: 9.0.0
- uuid: 8.3.2
- transitivePeerDependencies:
- - encoding
- - supports-color
- dev: false
- optional: true
-
/@grpc/grpc-js/1.11.1:
resolution: {integrity: sha512-gyt/WayZrVPH2w/UTLansS7F9Nwld472JxxaETamrM8HNlsa+jSLNyKAZmhxI2Me4c3mQHFiS1wWHDY1g1Kthw==}
engines: {node: '>=12.10.0'}
@@ -5689,7 +5585,7 @@ packages:
dependencies:
'@humanwhocodes/object-schema': 1.2.1
debug: 4.3.4
- minimatch: 3.1.2
+ minimatch: registry.npmmirror.com/minimatch/3.1.2
transitivePeerDependencies:
- supports-color
dev: true
@@ -5717,7 +5613,7 @@ packages:
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
dependencies:
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
chalk: 4.1.2
jest-message-util: 28.1.1
jest-util: 28.1.1
@@ -5737,14 +5633,14 @@ packages:
'@jest/test-result': 28.1.1
'@jest/transform': 28.1.2
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.3.2
exit: 0.1.2
graceful-fs: 4.2.10
jest-changed-files: 28.0.2
- jest-config: 28.1.2_@types+node@18.0.3
+ jest-config: 28.1.2_@types+node@22.5.4
jest-haste-map: 28.1.1
jest-message-util: 28.1.1
jest-regex-util: 28.0.2
@@ -5780,14 +5676,14 @@ packages:
'@jest/test-result': 28.1.1
'@jest/transform': 28.1.2
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.3.2
exit: 0.1.2
graceful-fs: 4.2.10
jest-changed-files: 28.0.2
- jest-config: 28.1.2_250642e41d506bccecc9f35ad915bcb5
+ jest-config: 28.1.2_64ffb24aadbc9b76404532eae276b1cd
jest-haste-map: 28.1.1
jest-message-util: 28.1.1
jest-regex-util: 28.0.2
@@ -5814,7 +5710,7 @@ packages:
dependencies:
'@jest/fake-timers': 28.1.2
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
jest-mock: 28.1.1
/@jest/expect-utils/28.1.1:
@@ -5838,7 +5734,7 @@ packages:
dependencies:
'@jest/types': 28.1.1
'@sinonjs/fake-timers': 9.1.2
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
jest-message-util: 28.1.1
jest-mock: 28.1.1
jest-util: 28.1.1
@@ -5868,7 +5764,7 @@ packages:
'@jest/transform': 28.1.2
'@jest/types': 28.1.1
'@jridgewell/trace-mapping': 0.3.14
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
chalk: 4.1.2
collect-v8-coverage: 1.0.1
exit: 0.1.2
@@ -5980,7 +5876,7 @@ packages:
'@jest/schemas': 28.0.2
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
'@types/yargs': 17.0.10
chalk: 4.1.2
@@ -6915,7 +6811,7 @@ packages:
resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==}
dependencies:
'@types/connect': 3.4.35
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
/@types/caseless/0.12.5:
resolution: {integrity: sha512-hWtVTC2q7hc7xZ/RLbxapMvDMgUnDvKvMOpKal4DrMyfGBUfB1oKaZlIRr6mJL+If3bAP6sV/QneGzF6tJjZDg==}
@@ -6925,7 +6821,7 @@ packages:
/@types/connect/3.4.35:
resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==}
dependencies:
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
/@types/cookiejar/2.1.2:
resolution: {integrity: sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==}
@@ -6952,7 +6848,7 @@ packages:
/@types/express-serve-static-core/4.17.30:
resolution: {integrity: sha512-gstzbTWro2/nFed1WXtf+TtrpwxH7Ggs4RLYTLbeVgIkUQOI3WG/JKjgeOU1zXDvezllupjrf8OPIdvTbIaVOQ==}
dependencies:
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
'@types/qs': 6.9.7
'@types/range-parser': 1.2.4
@@ -6992,7 +6888,7 @@ packages:
/@types/graceful-fs/4.1.5:
resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==}
dependencies:
- '@types/node': 22.5.4
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
/@types/istanbul-lib-coverage/2.0.4:
resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==}
@@ -7055,13 +6951,6 @@ packages:
'@types/express': 4.17.13
dev: false
- /@types/node/10.12.18:
- resolution: {integrity: sha512-fh+pAqt4xRzPfqA6eh3Z2y6fyZavRIumvjhaCL753+TVkGKGhpPeyrJG2JftD0T9q4GF00KjefsQ+PQNDdWQaQ==}
- dev: false
-
- /@types/node/18.0.3:
- resolution: {integrity: sha512-HzNRZtp4eepNitP+BD6k2L6DROIDG4Q0fm4x+dwfsr6LGmROENnok75VGw40628xf+iR24WeMFcHuuBDUAzzsQ==}
-
/@types/node/18.19.31:
resolution: {integrity: sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==}
dependencies:
@@ -7080,7 +6969,7 @@ packages:
/@types/pg/8.6.5:
resolution: {integrity: sha512-tOkGtAqRVkHa/PVZicq67zuujI4Oorfglsr2IbKofDwBSysnaqSx7W1mDqFqdkGE6Fbgh+PZAl0r/BWON/mozw==}
dependencies:
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
pg-protocol: 1.5.0
pg-types: 2.2.0
dev: true
@@ -7097,7 +6986,7 @@ packages:
/@types/redis/2.8.27:
resolution: {integrity: sha512-RRHarqPp3mgqHz+qzLVuQCJAIVaB3JBaczoj24QVVYu08wiCmB8vbOeNeK9lIH+pyT7+R/bbEPghAZZuhbZm0g==}
dependencies:
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
dev: true
/@types/request/2.48.12:
@@ -7114,7 +7003,7 @@ packages:
resolution: {integrity: sha512-4ANzp+I3K7sztFFAGPALWBvSl4ayaDSKzI2Bok+WNz+en2eB2Pvk6VCjR47PBXBWOkEg2r4uWpZOlXA5DNINOQ==}
dependencies:
'@types/express': 4.17.13
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
dev: true
/@types/seedrandom/3.0.8:
@@ -7132,7 +7021,7 @@ packages:
resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==}
dependencies:
'@types/mime': 3.0.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
/@types/stack-utils/2.0.1:
resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==}
@@ -7141,7 +7030,7 @@ packages:
resolution: {integrity: sha512-mu/N4uvfDN2zVQQ5AYJI/g4qxn2bHB6521t1UuH09ShNWjebTqN0ZFuYK9uYjcgmI0dTQEs+Owi1EO6U0OkOZQ==}
dependencies:
'@types/cookiejar': 2.1.2
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
dev: true
/@types/supertest/2.0.12:
@@ -7981,7 +7870,7 @@ packages:
resolution: {integrity: sha512-HpV5OMLLGTjSVblmrtYRfFFKuQB+GArM0+XP8HGWfJ5vxYBqo+DesvJwOdC2WJ3bCkZShGf0QIfoIpeomVzVdA==}
engines: {node: '>=6.0.0'}
dependencies:
- '@types/node': 10.12.18
+ '@types/node': registry.npmmirror.com/@types/node/10.12.18
bs58check: 2.1.2
create-hash: 1.2.0
create-hmac: 1.1.7
@@ -9150,214 +9039,34 @@ packages:
es6-symbol: 3.1.3
dev: true
- /esbuild-android-64/0.15.11:
- resolution: {integrity: sha512-rrwoXEiuI1kaw4k475NJpexs8GfJqQUKcD08VR8sKHmuW9RUuTR2VxcupVvHdiGh9ihxL9m3lpqB1kju92Ialw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [android]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-android-arm64/0.15.11:
- resolution: {integrity: sha512-/hDubOg7BHOhUUsT8KUIU7GfZm5bihqssvqK5PfO4apag7YuObZRZSzViyEKcFn2tPeHx7RKbSBXvAopSHDZJQ==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [android]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-darwin-64/0.15.11:
- resolution: {integrity: sha512-1DqHD0ms3AhiwkKnjRUzmiW7JnaJJr5FKrPiR7xuyMwnjDqvNWDdMq4rKSD9OC0piFNK6n0LghsglNMe2MwJtA==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [darwin]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-darwin-arm64/0.15.11:
- resolution: {integrity: sha512-OMzhxSbS0lwwrW40HHjRCeVIJTURdXFA8c3GU30MlHKuPCcvWNUIKVucVBtNpJySXmbkQMDJdJNrXzNDyvoqvQ==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [darwin]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-freebsd-64/0.15.11:
- resolution: {integrity: sha512-8dKP26r0/Qyez8nTCwpq60QbuYKOeBygdgOAWGCRalunyeqWRoSZj9TQjPDnTTI9joxd3QYw3UhVZTKxO9QdRg==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [freebsd]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-freebsd-arm64/0.15.11:
- resolution: {integrity: sha512-aSGiODiukLGGnSg/O9+cGO2QxEacrdCtCawehkWYTt5VX1ni2b9KoxpHCT9h9Y6wGqNHmXFnB47RRJ8BIqZgmQ==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [freebsd]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-32/0.15.11:
- resolution: {integrity: sha512-lsrAfdyJBGx+6aHIQmgqUonEzKYeBnyfJPkT6N2dOf1RoXYYV1BkWB6G02tjsrz1d5wZzaTc3cF+TKmuTo/ZwA==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-64/0.15.11:
- resolution: {integrity: sha512-Y2Rh+PcyVhQqXKBTacPCltINN3uIw2xC+dsvLANJ1SpK5NJUtxv8+rqWpjmBgaNWKQT1/uGpMmA9olALy9PLVA==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-arm/0.15.11:
- resolution: {integrity: sha512-TJllTVk5aSyqPFvvcHTvf6Wu1ZKhWpJ/qNmZO8LL/XeB+LXCclm7HQHNEIz6MT7IX8PmlC1BZYrOiw2sXSB95A==}
- engines: {node: '>=12'}
- cpu: [arm]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-arm64/0.15.11:
- resolution: {integrity: sha512-uhcXiTwTmD4OpxJu3xC5TzAAw6Wzf9O1XGWL448EE9bqGjgV1j+oK3lIHAfsHnuIn8K4nDW8yjX0Sv5S++oRuw==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-mips64le/0.15.11:
- resolution: {integrity: sha512-WD61y/R1M4BLe4gxXRypoQ0Ci+Vjf714QYzcPNkiYv5I8K8WDz2ZR8Bm6cqKxd6rD+e/rZgPDbhQ9PCf7TMHmA==}
- engines: {node: '>=12'}
- cpu: [mips64el]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-ppc64le/0.15.11:
- resolution: {integrity: sha512-JVleZS9oPVLTlBhPTWgOwxFWU/wMUdlBwTbGA4GF8c38sLbS13cupj+C8bLq929jU7EMWry4SaL+tKGIaTlqKg==}
- engines: {node: '>=12'}
- cpu: [ppc64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-riscv64/0.15.11:
- resolution: {integrity: sha512-9aLIalZ2HFHIOZpmVU11sEAS9F8TnHw49daEjcgMpBXHFF57VuT9f9/9LKJhw781Gda0P9jDkuCWJ0tFbErvJw==}
- engines: {node: '>=12'}
- cpu: [riscv64]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-linux-s390x/0.15.11:
- resolution: {integrity: sha512-sZHtiXXOKsLI3XGBGoYO4qKBzJlb8xNsWmvFiwFMHFzA4AXgDP1KDp7Dawe9C2pavTRBDvl+Ok4n/DHQ59oaTg==}
- engines: {node: '>=12'}
- cpu: [s390x]
- os: [linux]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-netbsd-64/0.15.11:
- resolution: {integrity: sha512-hUC9yN06K9sg7ju4Vgu9ChAPdsEgtcrcLfyNT5IKwKyfpLvKUwCMZSdF+gRD3WpyZelgTQfJ+pDx5XFbXTlB0A==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [netbsd]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-openbsd-64/0.15.11:
- resolution: {integrity: sha512-0bBo9SQR4t66Wd91LGMAqmWorzO0TTzVjYiifwoFtel8luFeXuPThQnEm5ztN4g0fnvcp7AnUPPzS/Depf17wQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [openbsd]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-sunos-64/0.15.11:
- resolution: {integrity: sha512-EuBdTGlsMTjEl1sQnBX2jfygy7iR6CKfvOzi+gEOfhDqbHXsmY1dcpbVtcwHAg9/2yUZSfMJHMAgf1z8M4yyyw==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [sunos]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-windows-32/0.15.11:
- resolution: {integrity: sha512-O0/Wo1Wk6dc0rZSxkvGpmTNIycEznHmkObTFz2VHBhjPsO4ZpCgfGxNkCpz4AdAIeMczpTXt/8d5vdJNKEGC+Q==}
- engines: {node: '>=12'}
- cpu: [ia32]
- os: [win32]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-windows-64/0.15.11:
- resolution: {integrity: sha512-x977Q4HhNjnHx00b4XLAnTtj5vfbdEvkxaQwC1Zh5AN8g5EX+izgZ6e5QgqJgpzyRNJqh4hkgIJF1pyy1be0mQ==}
- engines: {node: '>=12'}
- cpu: [x64]
- os: [win32]
- requiresBuild: true
- dev: true
- optional: true
-
- /esbuild-windows-arm64/0.15.11:
- resolution: {integrity: sha512-VwUHFACuBahrvntdcMKZteUZ9HaYrBRODoKe4tIWxguQRvvYoYb7iu5LrcRS/FQx8KPZNaa72zuqwVtHeXsITw==}
- engines: {node: '>=12'}
- cpu: [arm64]
- os: [win32]
- requiresBuild: true
- dev: true
- optional: true
-
/esbuild/0.15.11:
resolution: {integrity: sha512-OgHGuhlfZ//mToxjte1D5iiiQgWfJ2GByVMwEC/IuoXsBGkuyK1+KrjYu0laSpnN/L1UmLUCv0s25vObdc1bVg==}
engines: {node: '>=12'}
hasBin: true
requiresBuild: true
optionalDependencies:
- '@esbuild/android-arm': 0.15.11
- '@esbuild/linux-loong64': 0.15.11
- esbuild-android-64: 0.15.11
- esbuild-android-arm64: 0.15.11
- esbuild-darwin-64: 0.15.11
- esbuild-darwin-arm64: 0.15.11
- esbuild-freebsd-64: 0.15.11
- esbuild-freebsd-arm64: 0.15.11
- esbuild-linux-32: 0.15.11
- esbuild-linux-64: 0.15.11
- esbuild-linux-arm: 0.15.11
- esbuild-linux-arm64: 0.15.11
- esbuild-linux-mips64le: 0.15.11
- esbuild-linux-ppc64le: 0.15.11
- esbuild-linux-riscv64: 0.15.11
- esbuild-linux-s390x: 0.15.11
- esbuild-netbsd-64: 0.15.11
- esbuild-openbsd-64: 0.15.11
- esbuild-sunos-64: 0.15.11
- esbuild-windows-32: 0.15.11
- esbuild-windows-64: 0.15.11
- esbuild-windows-arm64: 0.15.11
+ '@esbuild/android-arm': registry.npmmirror.com/@esbuild/android-arm/0.15.11
+ '@esbuild/linux-loong64': registry.npmmirror.com/@esbuild/linux-loong64/0.15.11
+ esbuild-android-64: registry.npmmirror.com/esbuild-android-64/0.15.11
+ esbuild-android-arm64: registry.npmmirror.com/esbuild-android-arm64/0.15.11
+ esbuild-darwin-64: registry.npmmirror.com/esbuild-darwin-64/0.15.11
+ esbuild-darwin-arm64: registry.npmmirror.com/esbuild-darwin-arm64/0.15.11
+ esbuild-freebsd-64: registry.npmmirror.com/esbuild-freebsd-64/0.15.11
+ esbuild-freebsd-arm64: registry.npmmirror.com/esbuild-freebsd-arm64/0.15.11
+ esbuild-linux-32: registry.npmmirror.com/esbuild-linux-32/0.15.11
+ esbuild-linux-64: registry.npmmirror.com/esbuild-linux-64/0.15.11
+ esbuild-linux-arm: registry.npmmirror.com/esbuild-linux-arm/0.15.11
+ esbuild-linux-arm64: registry.npmmirror.com/esbuild-linux-arm64/0.15.11
+ esbuild-linux-mips64le: registry.npmmirror.com/esbuild-linux-mips64le/0.15.11
+ esbuild-linux-ppc64le: registry.npmmirror.com/esbuild-linux-ppc64le/0.15.11
+ esbuild-linux-riscv64: registry.npmmirror.com/esbuild-linux-riscv64/0.15.11
+ esbuild-linux-s390x: registry.npmmirror.com/esbuild-linux-s390x/0.15.11
+ esbuild-netbsd-64: registry.npmmirror.com/esbuild-netbsd-64/0.15.11
+ esbuild-openbsd-64: registry.npmmirror.com/esbuild-openbsd-64/0.15.11
+ esbuild-sunos-64: registry.npmmirror.com/esbuild-sunos-64/0.15.11
+ esbuild-windows-32: registry.npmmirror.com/esbuild-windows-32/0.15.11
+ esbuild-windows-64: registry.npmmirror.com/esbuild-windows-64/0.15.11
+ esbuild-windows-arm64: registry.npmmirror.com/esbuild-windows-arm64/0.15.11
dev: true
/escalade/3.1.1:
@@ -10100,8 +9809,8 @@ packages:
node-forge: 1.3.1
uuid: 10.0.0
optionalDependencies:
- '@google-cloud/firestore': 7.9.0
- '@google-cloud/storage': 7.12.1
+ '@google-cloud/firestore': registry.npmmirror.com/@google-cloud/firestore/7.9.0
+ '@google-cloud/storage': registry.npmmirror.com/@google-cloud/storage/7.12.1
transitivePeerDependencies:
- encoding
- supports-color
@@ -10264,13 +9973,6 @@ packages:
/fs.realpath/1.0.0:
resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
- /fsevents/2.3.2:
- resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
- engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
- os: [darwin]
- requiresBuild: true
- optional: true
-
/function-bind/1.1.1:
resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
@@ -10597,7 +10299,7 @@ packages:
source-map: 0.6.1
wordwrap: 1.0.0
optionalDependencies:
- uglify-js: 3.17.4
+ uglify-js: registry.npmmirror.com/uglify-js/3.17.4
dev: false
/har-schema/2.0.0:
@@ -11418,7 +11120,7 @@ packages:
'@jest/expect': 28.1.2
'@jest/test-result': 28.1.1
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
chalk: 4.1.2
co: 4.6.0
dedent: 0.7.0
@@ -11464,7 +11166,7 @@ packages:
- ts-node
dev: true
- /jest-cli/28.1.2_250642e41d506bccecc9f35ad915bcb5:
+ /jest-cli/28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862:
resolution: {integrity: sha512-l6eoi5Do/IJUXAFL9qRmDiFpBeEJAnjJb1dcd9i/VWfVWbp3mJhuH50dNtX67Ali4Ecvt4eBkWb4hXhPHkAZTw==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
hasBin: true
@@ -11481,7 +11183,7 @@ packages:
exit: 0.1.2
graceful-fs: 4.2.10
import-local: 3.1.0
- jest-config: 28.1.2_250642e41d506bccecc9f35ad915bcb5
+ jest-config: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
jest-util: 28.1.1
jest-validate: 28.1.1
prompts: 2.4.2
@@ -11491,7 +11193,7 @@ packages:
- supports-color
- ts-node
- /jest-cli/28.1.2_@types+node@18.0.3:
+ /jest-cli/28.1.2_@types+node@16.18.126:
resolution: {integrity: sha512-l6eoi5Do/IJUXAFL9qRmDiFpBeEJAnjJb1dcd9i/VWfVWbp3mJhuH50dNtX67Ali4Ecvt4eBkWb4hXhPHkAZTw==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
hasBin: true
@@ -11508,7 +11210,7 @@ packages:
exit: 0.1.2
graceful-fs: 4.2.10
import-local: 3.1.0
- jest-config: 28.1.2_@types+node@18.0.3
+ jest-config: 28.1.2_@types+node@16.18.126
jest-util: 28.1.1
jest-validate: 28.1.1
prompts: 2.4.2
@@ -11519,7 +11221,7 @@ packages:
- ts-node
dev: true
- /jest-cli/28.1.2_e1489a60da1bfeaddb37cf23d6a3b371:
+ /jest-cli/28.1.2_ts-node@10.8.2:
resolution: {integrity: sha512-l6eoi5Do/IJUXAFL9qRmDiFpBeEJAnjJb1dcd9i/VWfVWbp3mJhuH50dNtX67Ali4Ecvt4eBkWb4hXhPHkAZTw==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
hasBin: true
@@ -11536,7 +11238,7 @@ packages:
exit: 0.1.2
graceful-fs: 4.2.10
import-local: 3.1.0
- jest-config: 28.1.2_e1489a60da1bfeaddb37cf23d6a3b371
+ jest-config: 28.1.2_ts-node@10.8.2
jest-util: 28.1.1
jest-validate: 28.1.1
prompts: 2.4.2
@@ -11547,35 +11249,45 @@ packages:
- ts-node
dev: true
- /jest-cli/28.1.2_ts-node@10.8.2:
- resolution: {integrity: sha512-l6eoi5Do/IJUXAFL9qRmDiFpBeEJAnjJb1dcd9i/VWfVWbp3mJhuH50dNtX67Ali4Ecvt4eBkWb4hXhPHkAZTw==}
+ /jest-config/28.1.2:
+ resolution: {integrity: sha512-g6EfeRqddVbjPVBVY4JWpUY4IvQoFRIZcv4V36QkqzE0IGhEC/VkugFeBMAeUE7PRgC8KJF0yvJNDeQRbamEVA==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
- hasBin: true
peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ '@types/node': '*'
+ ts-node: '>=9.0.0'
peerDependenciesMeta:
- node-notifier:
+ '@types/node':
+ optional: true
+ ts-node:
optional: true
dependencies:
- '@jest/core': 28.1.2_ts-node@10.8.2
- '@jest/test-result': 28.1.1
+ '@babel/core': 7.18.6
+ '@jest/test-sequencer': 28.1.1
'@jest/types': 28.1.1
+ babel-jest: 28.1.2_@babel+core@7.18.6
chalk: 4.1.2
- exit: 0.1.2
+ ci-info: 3.3.2
+ deepmerge: 4.2.2
+ glob: 7.2.3
graceful-fs: 4.2.10
- import-local: 3.1.0
- jest-config: 28.1.2_ts-node@10.8.2
+ jest-circus: 28.1.2
+ jest-environment-node: 28.1.2
+ jest-get-type: 28.0.2
+ jest-regex-util: 28.0.2
+ jest-resolve: 28.1.1
+ jest-runner: 28.1.2
jest-util: 28.1.1
jest-validate: 28.1.1
- prompts: 2.4.2
- yargs: 17.5.1
+ micromatch: 4.0.5
+ parse-json: 5.2.0
+ pretty-format: 28.1.1
+ slash: 3.0.0
+ strip-json-comments: 3.1.1
transitivePeerDependencies:
- - '@types/node'
- supports-color
- - ts-node
dev: true
- /jest-config/28.1.2:
+ /jest-config/28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862:
resolution: {integrity: sha512-g6EfeRqddVbjPVBVY4JWpUY4IvQoFRIZcv4V36QkqzE0IGhEC/VkugFeBMAeUE7PRgC8KJF0yvJNDeQRbamEVA==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
peerDependencies:
@@ -11590,6 +11302,7 @@ packages:
'@babel/core': 7.18.6
'@jest/test-sequencer': 28.1.1
'@jest/types': 28.1.1
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
babel-jest: 28.1.2_@babel+core@7.18.6
chalk: 4.1.2
ci-info: 3.3.2
@@ -11609,11 +11322,11 @@ packages:
pretty-format: 28.1.1
slash: 3.0.0
strip-json-comments: 3.1.1
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
transitivePeerDependencies:
- supports-color
- dev: true
- /jest-config/28.1.2_250642e41d506bccecc9f35ad915bcb5:
+ /jest-config/28.1.2_64ffb24aadbc9b76404532eae276b1cd:
resolution: {integrity: sha512-g6EfeRqddVbjPVBVY4JWpUY4IvQoFRIZcv4V36QkqzE0IGhEC/VkugFeBMAeUE7PRgC8KJF0yvJNDeQRbamEVA==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
peerDependencies:
@@ -11628,7 +11341,7 @@ packages:
'@babel/core': 7.18.6
'@jest/test-sequencer': 28.1.1
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
babel-jest: 28.1.2_@babel+core@7.18.6
chalk: 4.1.2
ci-info: 3.3.2
@@ -11648,11 +11361,11 @@ packages:
pretty-format: 28.1.1
slash: 3.0.0
strip-json-comments: 3.1.1
- ts-node: 10.8.2_2dd5d46eecda2aef953638919121af58
+ ts-node: 10.8.2_211a6a430b29f376d4b1cf9b4d9caf36
transitivePeerDependencies:
- supports-color
- /jest-config/28.1.2_@types+node@18.0.3:
+ /jest-config/28.1.2_@types+node@16.18.126:
resolution: {integrity: sha512-g6EfeRqddVbjPVBVY4JWpUY4IvQoFRIZcv4V36QkqzE0IGhEC/VkugFeBMAeUE7PRgC8KJF0yvJNDeQRbamEVA==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
peerDependencies:
@@ -11667,7 +11380,7 @@ packages:
'@babel/core': 7.18.6
'@jest/test-sequencer': 28.1.1
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
babel-jest: 28.1.2_@babel+core@7.18.6
chalk: 4.1.2
ci-info: 3.3.2
@@ -11691,7 +11404,7 @@ packages:
- supports-color
dev: true
- /jest-config/28.1.2_e1489a60da1bfeaddb37cf23d6a3b371:
+ /jest-config/28.1.2_@types+node@22.5.4:
resolution: {integrity: sha512-g6EfeRqddVbjPVBVY4JWpUY4IvQoFRIZcv4V36QkqzE0IGhEC/VkugFeBMAeUE7PRgC8KJF0yvJNDeQRbamEVA==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
peerDependencies:
@@ -11706,7 +11419,7 @@ packages:
'@babel/core': 7.18.6
'@jest/test-sequencer': 28.1.1
'@jest/types': 28.1.1
- '@types/node': 18.19.31
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
babel-jest: 28.1.2_@babel+core@7.18.6
chalk: 4.1.2
ci-info: 3.3.2
@@ -11726,7 +11439,6 @@ packages:
pretty-format: 28.1.1
slash: 3.0.0
strip-json-comments: 3.1.1
- ts-node: 10.8.2_4ea55324100c26d4019c6e6bcc89fac6
transitivePeerDependencies:
- supports-color
dev: true
@@ -11802,7 +11514,7 @@ packages:
'@jest/environment': 28.1.2
'@jest/fake-timers': 28.1.2
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
jest-mock: 28.1.1
jest-util: 28.1.1
@@ -11816,7 +11528,7 @@ packages:
dependencies:
'@jest/types': 28.1.1
'@types/graceful-fs': 4.1.5
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
anymatch: 3.1.2
fb-watchman: 2.0.1
graceful-fs: 4.2.10
@@ -11826,7 +11538,7 @@ packages:
micromatch: 4.0.5
walker: 1.0.8
optionalDependencies:
- fsevents: 2.3.2
+ fsevents: registry.npmmirror.com/fsevents/2.3.2
/jest-haste-map/28.1.3:
resolution: {integrity: sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==}
@@ -11844,7 +11556,7 @@ packages:
micromatch: 4.0.5
walker: 1.0.8
optionalDependencies:
- fsevents: 2.3.2
+ fsevents: registry.npmmirror.com/fsevents/2.3.2
dev: true
/jest-leak-detector/28.1.1:
@@ -11883,7 +11595,7 @@ packages:
jest: ^24.0.0 || ^25.0.0 || ^26.0.0 || ^27.0.0 || ^28.0.0 || ^29.0.0
typescript: ^3.0.0 || ^4.0.0 || ^5.0.0
dependencies:
- jest: 28.1.2_250642e41d506bccecc9f35ad915bcb5
+ jest: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
ts-essentials: 7.0.3_typescript@4.7.4
typescript: 4.7.4
dev: false
@@ -11893,7 +11605,7 @@ packages:
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
dependencies:
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
/jest-pnp-resolver/1.2.2_jest-resolve@28.1.1:
resolution: {integrity: sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==}
@@ -11942,7 +11654,7 @@ packages:
'@jest/test-result': 28.1.1
'@jest/transform': 28.1.2
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
chalk: 4.1.2
emittery: 0.10.2
graceful-fs: 4.2.10
@@ -12025,7 +11737,7 @@ packages:
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
dependencies:
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
chalk: 4.1.2
ci-info: 3.3.2
graceful-fs: 4.2.10
@@ -12060,7 +11772,7 @@ packages:
dependencies:
'@jest/test-result': 28.1.1
'@jest/types': 28.1.1
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.10.2
@@ -12071,7 +11783,7 @@ packages:
resolution: {integrity: sha512-Au7slXB08C6h+xbJPp7VIb6U0XX5Kc9uel/WFc6/rcTzGiaVCBRngBExSYuXSLFPULPSYU3cJ3ybS988lNFQhQ==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
dependencies:
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -12104,7 +11816,7 @@ packages:
- ts-node
dev: true
- /jest/28.1.2_250642e41d506bccecc9f35ad915bcb5:
+ /jest/28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862:
resolution: {integrity: sha512-Tuf05DwLeCh2cfWCQbcz9UxldoDyiR1E9Igaei5khjonKncYdc6LDfynKCEWozK0oLE3GD+xKAo2u8x/0s6GOg==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
hasBin: true
@@ -12117,13 +11829,13 @@ packages:
'@jest/core': 28.1.2_ts-node@10.8.2
'@jest/types': 28.1.1
import-local: 3.1.0
- jest-cli: 28.1.2_250642e41d506bccecc9f35ad915bcb5
+ jest-cli: 28.1.2_0c67f65b9315dd5e6f8dc2c52ac76862
transitivePeerDependencies:
- '@types/node'
- supports-color
- ts-node
- /jest/28.1.2_@types+node@18.0.3:
+ /jest/28.1.2_@types+node@16.18.126:
resolution: {integrity: sha512-Tuf05DwLeCh2cfWCQbcz9UxldoDyiR1E9Igaei5khjonKncYdc6LDfynKCEWozK0oLE3GD+xKAo2u8x/0s6GOg==}
engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
hasBin: true
@@ -12136,27 +11848,7 @@ packages:
'@jest/core': 28.1.2
'@jest/types': 28.1.1
import-local: 3.1.0
- jest-cli: 28.1.2_@types+node@18.0.3
- transitivePeerDependencies:
- - '@types/node'
- - supports-color
- - ts-node
- dev: true
-
- /jest/28.1.2_e1489a60da1bfeaddb37cf23d6a3b371:
- resolution: {integrity: sha512-Tuf05DwLeCh2cfWCQbcz9UxldoDyiR1E9Igaei5khjonKncYdc6LDfynKCEWozK0oLE3GD+xKAo2u8x/0s6GOg==}
- engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
- hasBin: true
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
- dependencies:
- '@jest/core': 28.1.2_ts-node@10.8.2
- '@jest/types': 28.1.1
- import-local: 3.1.0
- jest-cli: 28.1.2_e1489a60da1bfeaddb37cf23d6a3b371
+ jest-cli: 28.1.2_@types+node@16.18.126
transitivePeerDependencies:
- '@types/node'
- supports-color
@@ -12280,7 +11972,7 @@ packages:
dependencies:
universalify: 2.0.0
optionalDependencies:
- graceful-fs: 4.2.10
+ graceful-fs: registry.npmmirror.com/graceful-fs/4.2.10
dev: false
/jsonwebtoken/9.0.2:
@@ -13087,19 +12779,6 @@ packages:
/node-releases/2.0.5:
resolution: {integrity: sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==}
- /nodejieba/2.5.2:
- resolution: {integrity: sha512-ByskJvaBrQ2eV+5M0OeD80S5NKoGaHc9zi3Z/PTKl/95eac2YF8RmWduq9AknLpkQLrLAIcqurrtC6BzjpKwwg==}
- engines: {node: '>= 10.20.0'}
- requiresBuild: true
- dependencies:
- '@mapbox/node-pre-gyp': 1.0.11
- node-addon-api: 3.2.1
- transitivePeerDependencies:
- - encoding
- - supports-color
- dev: false
- optional: true
-
/nopt/5.0.0:
resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==}
engines: {node: '>=6'}
@@ -13667,7 +13346,7 @@ packages:
commander: 1.1.1
object-assign: 4.1.1
optionalDependencies:
- nodejieba: 2.5.2
+ nodejieba: registry.npmmirror.com/nodejieba/2.5.2
transitivePeerDependencies:
- encoding
- supports-color
@@ -13782,7 +13461,7 @@ packages:
'@protobufjs/pool': 1.1.0
'@protobufjs/utf8': 1.1.0
'@types/long': 4.0.2
- '@types/node': 22.5.4
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
long: 4.0.0
dev: false
@@ -13801,7 +13480,7 @@ packages:
'@protobufjs/path': 1.1.2
'@protobufjs/pool': 1.1.0
'@protobufjs/utf8': 1.1.0
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/22.5.4
long: 5.2.1
dev: false
@@ -14917,7 +14596,7 @@ packages:
dependencies:
'@istanbuljs/schema': 0.1.3
glob: 7.2.3
- minimatch: 3.1.2
+ minimatch: registry.npmmirror.com/minimatch/3.1.2
/text-hex/1.0.0:
resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==}
@@ -15057,7 +14736,7 @@ packages:
typescript: 4.7.4
dev: false
- /ts-node/10.8.2_2dd5d46eecda2aef953638919121af58:
+ /ts-node/10.8.2_211a6a430b29f376d4b1cf9b4d9caf36:
resolution: {integrity: sha512-LYdGnoGddf1D6v8REPtIH+5iq/gTDuZqv2/UJUU7tKjuEU8xVZorBM+buCGNjj+pGEud+sOoM4CX3/YzINpENA==}
hasBin: true
peerDependencies:
@@ -15076,7 +14755,7 @@ packages:
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
'@tsconfig/node16': 1.0.3
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
acorn: 8.7.1
acorn-walk: 8.2.0
arg: 4.1.3
@@ -15087,7 +14766,7 @@ packages:
v8-compile-cache-lib: 3.0.1
yn: 3.1.1
- /ts-node/10.8.2_2ee97d30e4a239eb38d57e3751ee8d16:
+ /ts-node/10.8.2_c1fa8f46d69d2806146bcf2350c141a0:
resolution: {integrity: sha512-LYdGnoGddf1D6v8REPtIH+5iq/gTDuZqv2/UJUU7tKjuEU8xVZorBM+buCGNjj+pGEud+sOoM4CX3/YzINpENA==}
hasBin: true
peerDependencies:
@@ -15106,7 +14785,7 @@ packages:
'@tsconfig/node12': 1.0.11
'@tsconfig/node14': 1.0.3
'@tsconfig/node16': 1.0.3
- '@types/node': 18.0.3
+ '@types/node': registry.npmmirror.com/@types/node/16.18.126
acorn: 8.7.1
acorn-walk: 8.2.0
arg: 4.1.3
@@ -15118,37 +14797,6 @@ packages:
yn: 3.1.1
dev: true
- /ts-node/10.8.2_4ea55324100c26d4019c6e6bcc89fac6:
- resolution: {integrity: sha512-LYdGnoGddf1D6v8REPtIH+5iq/gTDuZqv2/UJUU7tKjuEU8xVZorBM+buCGNjj+pGEud+sOoM4CX3/YzINpENA==}
- hasBin: true
- peerDependencies:
- '@swc/core': '>=1.2.50'
- '@swc/wasm': '>=1.2.50'
- '@types/node': '*'
- typescript: '>=2.7'
- peerDependenciesMeta:
- '@swc/core':
- optional: true
- '@swc/wasm':
- optional: true
- dependencies:
- '@cspotcode/source-map-support': 0.8.1
- '@tsconfig/node10': 1.0.9
- '@tsconfig/node12': 1.0.11
- '@tsconfig/node14': 1.0.3
- '@tsconfig/node16': 1.0.3
- '@types/node': 18.19.31
- acorn: 8.7.1
- acorn-walk: 8.2.0
- arg: 4.1.3
- create-require: 1.1.1
- diff: 4.0.2
- make-error: 1.3.6
- typescript: 4.7.4
- v8-compile-cache-lib: 3.0.1
- yn: 3.1.1
- dev: true
-
/ts-node/10.8.2_typescript@4.7.4:
resolution: {integrity: sha512-LYdGnoGddf1D6v8REPtIH+5iq/gTDuZqv2/UJUU7tKjuEU8xVZorBM+buCGNjj+pGEud+sOoM4CX3/YzINpENA==}
hasBin: true
@@ -15295,14 +14943,6 @@ packages:
resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==}
dev: false
- /uglify-js/3.17.4:
- resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==}
- engines: {node: '>=0.8.0'}
- hasBin: true
- requiresBuild: true
- dev: false
- optional: true
-
/unbox-primitive/1.0.2:
resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
dependencies:
@@ -15859,3 +15499,417 @@ packages:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
dev: false
+
+ registry.npmmirror.com/@bufbuild/buf-darwin-arm64/1.19.0-1:
+ resolution: {integrity: sha512-HsWPii21wm3QSyuxrNq9+Yf8iAgpnC4rNCy4x3d6P1fd/LmgE1NPzQW0ghEZvl9dgAQKkL/4S5bKhlm7kbUdmQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@bufbuild/buf-darwin-arm64/-/buf-darwin-arm64-1.19.0-1.tgz}
+ name: '@bufbuild/buf-darwin-arm64'
+ version: 1.19.0-1
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/@bufbuild/buf-darwin-x64/1.19.0-1:
+ resolution: {integrity: sha512-2+Ig7ylYpVh4kms/OeJJVY+X0KX4awPA6hYr7L7aZOIcHwZEM8lWtSTO/se5pQc7dc8FXNiC4YUqHC8yfxxX6Q==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@bufbuild/buf-darwin-x64/-/buf-darwin-x64-1.19.0-1.tgz}
+ name: '@bufbuild/buf-darwin-x64'
+ version: 1.19.0-1
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/@bufbuild/buf-linux-aarch64/1.19.0-1:
+ resolution: {integrity: sha512-g/Vxg3WiBr3nhsxsRr2Q81xXJD+0ktHIO3ZJggTG2Sbbl3dh8kyg1iKM6MjJiMP7su5RKCylLigzoEJzVTShyA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@bufbuild/buf-linux-aarch64/-/buf-linux-aarch64-1.19.0-1.tgz}
+ name: '@bufbuild/buf-linux-aarch64'
+ version: 1.19.0-1
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/@bufbuild/buf-win32-arm64/1.19.0-1:
+ resolution: {integrity: sha512-xXgF1qYnCfRKbGx1FqvPbpZ6ajh4ddxpXhSxI3VCeb3MsMBuIbiLqX4fQAL3ls/Zwz8tVIITuSwOhYmSEGcpBA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@bufbuild/buf-win32-arm64/-/buf-win32-arm64-1.19.0-1.tgz}
+ name: '@bufbuild/buf-win32-arm64'
+ version: 1.19.0-1
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/@bufbuild/buf-win32-x64/1.19.0-1:
+ resolution: {integrity: sha512-futmqgpMQCR1lcAzZJEGjPr7ECw1gYTPIV8crm5SY+iCJ7sOeStOBNt7q5hV4LKmmeWmvm03XIMZPjhQzjH5NQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@bufbuild/buf-win32-x64/-/buf-win32-x64-1.19.0-1.tgz}
+ name: '@bufbuild/buf-win32-x64'
+ version: 1.19.0-1
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/@esbuild/android-arm/0.15.11:
+ resolution: {integrity: sha512-PzMcQLazLBkwDEkrNPi9AbjFt6+3I7HKbiYF2XtWQ7wItrHvEOeO3T8Am434zAozWtVP7lrTue1bEfc2nYWeCA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.15.11.tgz}
+ name: '@esbuild/android-arm'
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/@esbuild/linux-loong64/0.15.11:
+ resolution: {integrity: sha512-geWp637tUhNmhL3Xgy4Bj703yXB9dqiLJe05lCUfjSFDrQf9C/8pArusyPUbUbPwlC/EAUjBw32sxuIl/11dZw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.15.11.tgz}
+ name: '@esbuild/linux-loong64'
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [loong64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/@google-cloud/firestore/7.9.0:
+ resolution: {integrity: sha512-c4ALHT3G08rV7Zwv8Z2KG63gZh66iKdhCBeDfCpIkLrjX6EAjTD/szMdj14M+FnQuClZLFfW5bAgoOjfNmLtJg==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@google-cloud/firestore/-/firestore-7.9.0.tgz}
+ name: '@google-cloud/firestore'
+ version: 7.9.0
+ engines: {node: '>=14.0.0'}
+ requiresBuild: true
+ dependencies:
+ fast-deep-equal: 3.1.3
+ functional-red-black-tree: 1.0.1
+ google-gax: 4.4.1
+ protobufjs: 7.3.2
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/@google-cloud/storage/7.12.1:
+ resolution: {integrity: sha512-Z3ZzOnF3YKLuvpkvF+TjQ6lztxcAyTILp+FjKonmVpEwPa9vFvxpZjubLR4sB6bf19i/8HL2AXRjA0YFgHFRmQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@google-cloud/storage/-/storage-7.12.1.tgz}
+ name: '@google-cloud/storage'
+ version: 7.12.1
+ engines: {node: '>=14'}
+ requiresBuild: true
+ dependencies:
+ '@google-cloud/paginator': 5.0.2
+ '@google-cloud/projectify': 4.0.0
+ '@google-cloud/promisify': 4.0.0
+ abort-controller: 3.0.0
+ async-retry: 1.3.3
+ duplexify: 4.1.3
+ fast-xml-parser: 4.5.0
+ gaxios: 6.7.1
+ google-auth-library: 9.14.1
+ html-entities: 2.5.2
+ mime: 3.0.0
+ p-limit: 3.1.0
+ retry-request: 7.0.2
+ teeny-request: 9.0.0
+ uuid: 8.3.2
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/@types/node/10.12.18:
+ resolution: {integrity: sha512-fh+pAqt4xRzPfqA6eh3Z2y6fyZavRIumvjhaCL753+TVkGKGhpPeyrJG2JftD0T9q4GF00KjefsQ+PQNDdWQaQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/node/-/node-10.12.18.tgz}
+ name: '@types/node'
+ version: 10.12.18
+ dev: false
+
+ registry.npmmirror.com/@types/node/16.18.126:
+ resolution: {integrity: sha512-OTcgaiwfGFBKacvfwuHzzn1KLxH/er8mluiy8/uM3sGXHaRe73RrSIj01jow9t4kJEW633Ov+cOexXeiApTyAw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/node/-/node-16.18.126.tgz}
+ name: '@types/node'
+ version: 16.18.126
+
+ registry.npmmirror.com/@types/node/22.5.4:
+ resolution: {integrity: sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/@types/node/-/node-22.5.4.tgz}
+ name: '@types/node'
+ version: 22.5.4
+ dependencies:
+ undici-types: registry.npmmirror.com/undici-types/6.19.8
+
+ registry.npmmirror.com/esbuild-android-64/0.15.11:
+ resolution: {integrity: sha512-rrwoXEiuI1kaw4k475NJpexs8GfJqQUKcD08VR8sKHmuW9RUuTR2VxcupVvHdiGh9ihxL9m3lpqB1kju92Ialw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-android-64/-/esbuild-android-64-0.15.11.tgz}
+ name: esbuild-android-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-android-arm64/0.15.11:
+ resolution: {integrity: sha512-/hDubOg7BHOhUUsT8KUIU7GfZm5bihqssvqK5PfO4apag7YuObZRZSzViyEKcFn2tPeHx7RKbSBXvAopSHDZJQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-android-arm64/-/esbuild-android-arm64-0.15.11.tgz}
+ name: esbuild-android-arm64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-darwin-64/0.15.11:
+ resolution: {integrity: sha512-1DqHD0ms3AhiwkKnjRUzmiW7JnaJJr5FKrPiR7xuyMwnjDqvNWDdMq4rKSD9OC0piFNK6n0LghsglNMe2MwJtA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-64/-/esbuild-darwin-64-0.15.11.tgz}
+ name: esbuild-darwin-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-darwin-arm64/0.15.11:
+ resolution: {integrity: sha512-OMzhxSbS0lwwrW40HHjRCeVIJTURdXFA8c3GU30MlHKuPCcvWNUIKVucVBtNpJySXmbkQMDJdJNrXzNDyvoqvQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.11.tgz}
+ name: esbuild-darwin-arm64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-freebsd-64/0.15.11:
+ resolution: {integrity: sha512-8dKP26r0/Qyez8nTCwpq60QbuYKOeBygdgOAWGCRalunyeqWRoSZj9TQjPDnTTI9joxd3QYw3UhVZTKxO9QdRg==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.11.tgz}
+ name: esbuild-freebsd-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-freebsd-arm64/0.15.11:
+ resolution: {integrity: sha512-aSGiODiukLGGnSg/O9+cGO2QxEacrdCtCawehkWYTt5VX1ni2b9KoxpHCT9h9Y6wGqNHmXFnB47RRJ8BIqZgmQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.11.tgz}
+ name: esbuild-freebsd-arm64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [freebsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-32/0.15.11:
+ resolution: {integrity: sha512-lsrAfdyJBGx+6aHIQmgqUonEzKYeBnyfJPkT6N2dOf1RoXYYV1BkWB6G02tjsrz1d5wZzaTc3cF+TKmuTo/ZwA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-32/-/esbuild-linux-32-0.15.11.tgz}
+ name: esbuild-linux-32
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-64/0.15.11:
+ resolution: {integrity: sha512-Y2Rh+PcyVhQqXKBTacPCltINN3uIw2xC+dsvLANJ1SpK5NJUtxv8+rqWpjmBgaNWKQT1/uGpMmA9olALy9PLVA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-64/-/esbuild-linux-64-0.15.11.tgz}
+ name: esbuild-linux-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-arm/0.15.11:
+ resolution: {integrity: sha512-TJllTVk5aSyqPFvvcHTvf6Wu1ZKhWpJ/qNmZO8LL/XeB+LXCclm7HQHNEIz6MT7IX8PmlC1BZYrOiw2sXSB95A==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm/-/esbuild-linux-arm-0.15.11.tgz}
+ name: esbuild-linux-arm
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-arm64/0.15.11:
+ resolution: {integrity: sha512-uhcXiTwTmD4OpxJu3xC5TzAAw6Wzf9O1XGWL448EE9bqGjgV1j+oK3lIHAfsHnuIn8K4nDW8yjX0Sv5S++oRuw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.11.tgz}
+ name: esbuild-linux-arm64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-mips64le/0.15.11:
+ resolution: {integrity: sha512-WD61y/R1M4BLe4gxXRypoQ0Ci+Vjf714QYzcPNkiYv5I8K8WDz2ZR8Bm6cqKxd6rD+e/rZgPDbhQ9PCf7TMHmA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.11.tgz}
+ name: esbuild-linux-mips64le
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [mips64el]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-ppc64le/0.15.11:
+ resolution: {integrity: sha512-JVleZS9oPVLTlBhPTWgOwxFWU/wMUdlBwTbGA4GF8c38sLbS13cupj+C8bLq929jU7EMWry4SaL+tKGIaTlqKg==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.11.tgz}
+ name: esbuild-linux-ppc64le
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [ppc64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-riscv64/0.15.11:
+ resolution: {integrity: sha512-9aLIalZ2HFHIOZpmVU11sEAS9F8TnHw49daEjcgMpBXHFF57VuT9f9/9LKJhw781Gda0P9jDkuCWJ0tFbErvJw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.11.tgz}
+ name: esbuild-linux-riscv64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [riscv64]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-linux-s390x/0.15.11:
+ resolution: {integrity: sha512-sZHtiXXOKsLI3XGBGoYO4qKBzJlb8xNsWmvFiwFMHFzA4AXgDP1KDp7Dawe9C2pavTRBDvl+Ok4n/DHQ59oaTg==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.11.tgz}
+ name: esbuild-linux-s390x
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [s390x]
+ os: [linux]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-netbsd-64/0.15.11:
+ resolution: {integrity: sha512-hUC9yN06K9sg7ju4Vgu9ChAPdsEgtcrcLfyNT5IKwKyfpLvKUwCMZSdF+gRD3WpyZelgTQfJ+pDx5XFbXTlB0A==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.11.tgz}
+ name: esbuild-netbsd-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [netbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-openbsd-64/0.15.11:
+ resolution: {integrity: sha512-0bBo9SQR4t66Wd91LGMAqmWorzO0TTzVjYiifwoFtel8luFeXuPThQnEm5ztN4g0fnvcp7AnUPPzS/Depf17wQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.11.tgz}
+ name: esbuild-openbsd-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [openbsd]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-sunos-64/0.15.11:
+ resolution: {integrity: sha512-EuBdTGlsMTjEl1sQnBX2jfygy7iR6CKfvOzi+gEOfhDqbHXsmY1dcpbVtcwHAg9/2yUZSfMJHMAgf1z8M4yyyw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-sunos-64/-/esbuild-sunos-64-0.15.11.tgz}
+ name: esbuild-sunos-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [sunos]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-32/0.15.11:
+ resolution: {integrity: sha512-O0/Wo1Wk6dc0rZSxkvGpmTNIycEznHmkObTFz2VHBhjPsO4ZpCgfGxNkCpz4AdAIeMczpTXt/8d5vdJNKEGC+Q==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-32/-/esbuild-windows-32-0.15.11.tgz}
+ name: esbuild-windows-32
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-64/0.15.11:
+ resolution: {integrity: sha512-x977Q4HhNjnHx00b4XLAnTtj5vfbdEvkxaQwC1Zh5AN8g5EX+izgZ6e5QgqJgpzyRNJqh4hkgIJF1pyy1be0mQ==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-64/-/esbuild-windows-64-0.15.11.tgz}
+ name: esbuild-windows-64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/esbuild-windows-arm64/0.15.11:
+ resolution: {integrity: sha512-VwUHFACuBahrvntdcMKZteUZ9HaYrBRODoKe4tIWxguQRvvYoYb7iu5LrcRS/FQx8KPZNaa72zuqwVtHeXsITw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.11.tgz}
+ name: esbuild-windows-arm64
+ version: 0.15.11
+ engines: {node: '>=12'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ registry.npmmirror.com/fsevents/2.3.2:
+ resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/fsevents/-/fsevents-2.3.2.tgz}
+ name: fsevents
+ version: 2.3.2
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+ requiresBuild: true
+ optional: true
+
+ registry.npmmirror.com/graceful-fs/4.2.10:
+ resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz}
+ name: graceful-fs
+ version: 4.2.10
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/minimatch/3.1.2:
+ resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/minimatch/-/minimatch-3.1.2.tgz}
+ name: minimatch
+ version: 3.1.2
+ dependencies:
+ brace-expansion: 1.1.11
+
+ registry.npmmirror.com/nodejieba/2.5.2:
+ resolution: {integrity: sha512-ByskJvaBrQ2eV+5M0OeD80S5NKoGaHc9zi3Z/PTKl/95eac2YF8RmWduq9AknLpkQLrLAIcqurrtC6BzjpKwwg==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/nodejieba/-/nodejieba-2.5.2.tgz}
+ name: nodejieba
+ version: 2.5.2
+ engines: {node: '>= 10.20.0'}
+ requiresBuild: true
+ dependencies:
+ '@mapbox/node-pre-gyp': 1.0.11
+ node-addon-api: 3.2.1
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/uglify-js/3.17.4:
+ resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/uglify-js/-/uglify-js-3.17.4.tgz}
+ name: uglify-js
+ version: 3.17.4
+ engines: {node: '>=0.8.0'}
+ hasBin: true
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ registry.npmmirror.com/undici-types/6.19.8:
+ resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==, registry: http://registry.npm.taobao.org/, tarball: https://registry.npmmirror.com/undici-types/-/undici-types-6.19.8.tgz}
+ name: undici-types
+ version: 6.19.8
diff --git a/indexer/services/auxo/package.json b/indexer/services/auxo/package.json
index e01ed6869..eeb06318e 100644
--- a/indexer/services/auxo/package.json
+++ b/indexer/services/auxo/package.json
@@ -33,7 +33,7 @@
"@types/aws-lambda": "^8.10.108",
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/redis": "2.8.27",
"esbuild": "^0.15.11",
"jest": "^28.1.2",
diff --git a/indexer/services/bazooka/package.json b/indexer/services/bazooka/package.json
index d0ba6ce6d..5310ac2c3 100644
--- a/indexer/services/bazooka/package.json
+++ b/indexer/services/bazooka/package.json
@@ -37,7 +37,7 @@
"@types/aws-lambda": "^8.10.108",
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/redis": "2.8.27",
"esbuild": "^0.15.11",
"jest": "^28.1.2",
diff --git a/indexer/services/comlink/package.json b/indexer/services/comlink/package.json
index 388297ddc..5e7db5cd5 100644
--- a/indexer/services/comlink/package.json
+++ b/indexer/services/comlink/package.json
@@ -66,7 +66,7 @@
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
"@types/luxon": "^3.0.0",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/redis": "2.8.27",
"@types/response-time": "^2.3.5",
"@types/supertest": "^2.0.12",
diff --git a/indexer/services/ender/package.json b/indexer/services/ender/package.json
index 198bb11c7..f4ac57696 100644
--- a/indexer/services/ender/package.json
+++ b/indexer/services/ender/package.json
@@ -42,7 +42,7 @@
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
"@types/luxon": "^3.0.0",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/pg": "^8.6.5",
"jest": "^28.1.2",
"ts-node": "^10.8.2",
diff --git a/indexer/services/example-service/package.json b/indexer/services/example-service/package.json
index 4f352c49e..830360e5c 100644
--- a/indexer/services/example-service/package.json
+++ b/indexer/services/example-service/package.json
@@ -22,7 +22,7 @@
"devDependencies": {
"@dydxprotocol-indexer/dev": "workspace:^0.0.1",
"@types/jest": "^28.1.4",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"jest": "^28.1.2",
"ts-node": "^10.8.2",
"tsconfig-paths": "^4.0.0",
diff --git a/indexer/services/roundtable/package.json b/indexer/services/roundtable/package.json
index bd4783fba..bfcdc22a3 100644
--- a/indexer/services/roundtable/package.json
+++ b/indexer/services/roundtable/package.json
@@ -43,7 +43,7 @@
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
"@types/luxon": "^3.0.0",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/redis": "2.8.27",
"@types/seedrandom": "^3.0.8",
"@types/uuid": "^8.3.4",
diff --git a/indexer/services/scripts/package.json b/indexer/services/scripts/package.json
index b491e2142..8ef4b3b76 100644
--- a/indexer/services/scripts/package.json
+++ b/indexer/services/scripts/package.json
@@ -36,7 +36,7 @@
"devDependencies": {
"@dydxprotocol-indexer/dev": "workspace:^0.0.1",
"@types/jest": "^28.1.4",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"jest": "^28.1.2",
"ts-node": "^10.8.2",
"tsconfig-paths": "^4.0.0",
diff --git a/indexer/services/socks/package.json b/indexer/services/socks/package.json
index 28791125e..baa689ee4 100644
--- a/indexer/services/socks/package.json
+++ b/indexer/services/socks/package.json
@@ -47,7 +47,7 @@
"@types/express-request-id": "^1.4.3",
"@types/jest": "^28.1.4",
"@types/lodash": "^4.14.182",
- "@types/node": "^18.19.31",
+ "@types/node": "^16.18.0",
"@types/response-time": "^2.3.5",
"@types/ws": "^8.5.10",
"jest": "^28.1.2",
@@ -63,4 +63,4 @@
"url": "https://github.com/dydxprotocol/indexer/issues"
},
"homepage": "https://github.com/dydxprotocol/indexer#readme"
-}
+}
\ No newline at end of file
diff --git a/indexer/services/socks/src/helpers/wss.ts b/indexer/services/socks/src/helpers/wss.ts
index 1f316af17..dbab254c9 100644
--- a/indexer/services/socks/src/helpers/wss.ts
+++ b/indexer/services/socks/src/helpers/wss.ts
@@ -54,8 +54,6 @@ export class Wss {
const serverOptions: WebSocket.ServerOptions = {
port: config.WS_PORT,
- allowSynchronousEvents: true,
- autoPong: true,
};
this.wss = new WebSocket.Server(serverOptions);
}
diff --git a/indexer/services/vulcan/package.json b/indexer/services/vulcan/package.json
index 0d365ea8c..54dd38b1c 100644
--- a/indexer/services/vulcan/package.json
+++ b/indexer/services/vulcan/package.json
@@ -38,7 +38,7 @@
"@types/big.js": "^6.1.5",
"@types/jest": "^28.1.4",
"@types/luxon": "3.0.0",
- "@types/node": "^18.0.3",
+ "@types/node": "^16.18.0",
"@types/redis": "2.8.27",
"jest": "^28.1.2",
"ts-node": "^10.8.2",
需要修改docker-compose-local-deployment.yml,否则会出现无法启动indexer-vulcan和indexer-roundtable
version: '3'
services:
kafka:
image: blacktop/kafka:2.6
ports:
- 9092:9092
environment:
KAFKA_ADVERTISED_HOST_NAME: kafka
KAFKA_CREATE_TOPICS: "to-ender:1:1,to-vulcan:1:1,to-websockets-orderbooks:1:1,to-websockets-subaccounts:1:1,to-websockets-trades:1:1,to-websockets-markets:1:1,to-websockets-candles:1:1,to-websockets-block-height:1:1"
KAFKA_LISTENERS: INTERNAL://:9092,EXTERNAL_SAME_HOST://:29092
KAFKA_ADVERTISED_LISTENERS: INTERNAL://kafka:9092,EXTERNAL_SAME_HOST://localhost:29092
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL:PLAINTEXT,EXTERNAL_SAME_HOST:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL
DD_AGENT_HOST: datadog-agent
healthcheck:
test: [ "CMD-SHELL", "kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --topic to-websockets-candles --describe" ]
interval: 5s
timeout: 20s
retries: 50
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "kafka"}]'
postgres:
build:
context: .
dockerfile: Dockerfile.postgres.local
ports:
- 5435:5432
environment:
POSTGRES_PASSWORD: dydxserver123
POSTGRES_USER: dydx_dev
DATADOG_POSTGRES_PASSWORD: dydxserver123
healthcheck:
test: [ "CMD-SHELL", "pg_isready -U dydx_dev" ]
interval: 5s
timeout: 20s
retries: 10
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "postgres"}]'
com.datadoghq.ad.check_names: '["postgres"]'
com.datadoghq.ad.init_configs: '[{}]'
com.datadoghq.ad.instances: '[{"host":"%%host%%", "port":5432,"username":"datadog","password":"dydxserver123"}]'
redis:
image: redis:5.0.6-alpine
ports:
- 6382:6379
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "redis"}]'
com.datadoghq.ad.check_names: '["redisdb"]'
com.datadoghq.ad.init_configs: '[{}]'
com.datadoghq.ad.instances: '[{"host": "%%host%%","port":"6379","password":"%%env_REDIS_PASSWORD%%"}]'
datadog-agent:
build: datadog
links:
- redis
- vulcan
- comlink
- ender
environment:
- DD_API_KEY=${DD_API_KEY}
- DD_LOGS_ENABLED=true
- DD_TAGS="service:local-indexer dev:${USER}"
- DD_APM_ENABLED=true
- DD_APM_NON_LOCAL_TRAFFIC=true
- DD_DOGSTATSD_NON_LOCAL_TRAFFIC=true
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /proc/:/host/proc/:ro
- /sys/fs/cgroup:/host/sys/fs/cgroup:ro
- /var/lib/docker/containers:/var/lib/docker/containers:ro
profiles: [ "export-to-datadog" ]
postgres-package:
build:
context: .
dockerfile: Dockerfile.postgres-package.local
links:
- postgres
depends_on:
postgres:
condition: service_healthy
ender:
build:
context: .
dockerfile: Dockerfile.service.local
args:
service: ender
ports:
- 3001:3001
links:
- postgres
environment:
# See https://docs.datadoghq.com/profiler/enabling/nodejs/ for DD_ specific environment variables.
# Note that DD_SERVICE and DD_VERSION are read by default from package.json
- DD_PROFILING_ENABLED=true
- DD_ENV=localnet_${USER}
- DD_AGENT_HOST=datadog-agent
- REDIS_URL=redis://redis:6379
- DB_HOSTNAME=postgres
- DB_PORT=5432
- DB_NAME=dydx_dev
- DB_USERNAME=dydx_dev
- DB_PASSWORD=dydxserver123
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "ender"}]'
depends_on:
kafka:
condition: service_healthy
postgres-package:
condition: service_completed_successfully
comlink:
build:
context: .
dockerfile: Dockerfile.service.local
args:
service: comlink
environment:
# See https://docs.datadoghq.com/profiler/enabling/nodejs/ for DD_ specific environment variables.
# Note that DD_SERVICE and DD_VERSION are read by default from package.json
- DD_PROFILING_ENABLED=true
- DD_ENV=localnet_${USER}
- DD_AGENT_HOST=datadog-agent
- REDIS_URL=redis://redis:6379
- RATE_LIMIT_REDIS_URL=redis://redis:6379
- PORT=3002
- RATE_LIMIT_ENABLED=false
- INDEXER_LEVEL_GEOBLOCKING_ENABLED=false
- COMPLIANCE_DATA_CLIENT=PLACEHOLDER
- DB_HOSTNAME=postgres
- DB_PORT=5432
- DB_NAME=dydx_dev
- DB_USERNAME=dydx_dev
- DB_PASSWORD=dydxserver123
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "comlink"}]'
ports:
- 3002:3002
links:
- postgres
depends_on:
postgres-package:
condition: service_completed_successfully
socks:
build:
context: .
dockerfile: Dockerfile.service.local
args:
service: socks
ports:
- 3003:3003
links:
- postgres
environment:
- WS_PORT=3003
# See https://docs.datadoghq.com/profiler/enabling/nodejs/ for DD_ specific environment variables.
# Note that DD_SERVICE and DD_VERSION are read by default from package.json
- DD_PROFILING_ENABLED=true
- DD_ENV=localnet_${USER}
- DD_AGENT_HOST=datadog-agent
- COMLINK_URL=host.docker.internal:3002
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "socks"}]'
depends_on:
kafka:
condition: service_healthy
postgres-package:
condition: service_completed_successfully
roundtable:
build:
context: .
dockerfile: Dockerfile.service.local
args:
service: roundtable
ports:
- 3004:3004
links:
- postgres
environment:
# See https://docs.datadoghq.com/profiler/enabling/nodejs/ for DD_ specific environment variables.
# Note that DD_SERVICE and DD_VERSION are read by default from package.json
- DD_PROFILING_ENABLED=true
- DD_ENV=localnet_${USER}
- DD_AGENT_HOST=datadog-agent
- KAFKA_BROKER_URLS=kafka:9092
- AWS_REGION=us-east-1
- AWS_ACCOUNT_ID=123456789012
- S3_BUCKET_ARN=arn:aws:s3:::local-dev-bucket
- ECS_TASK_ROLE_ARN=arn:aws:iam::123456789012:role/local-dev-role
- KMS_KEY_ARN=arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
- RDS_INSTANCE_NAME=local-dev-rds
- DB_HOSTNAME=postgres
- DB_PORT=5432
- DB_NAME=dydx_dev
- DB_USERNAME=dydx_dev
- DB_PASSWORD=dydxserver123
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "roundtable"}]'
depends_on:
kafka:
condition: service_healthy
postgres-package:
condition: service_completed_successfully
vulcan:
build:
context: .
dockerfile: Dockerfile.service.local
args:
service: vulcan
environment:
# See https://docs.datadoghq.com/profiler/enabling/nodejs/ for DD_ specific environment variables.
# Note that DD_SERVICE and DD_VERSION are read by default from package.json
- DD_PROFILING_ENABLED=true
- DD_ENV=localnet_${USER}
- DD_AGENT_HOST=datadog-agent
- KAFKA_BROKER_URLS=kafka:9092
- REDIS_URL=redis://redis:6379
- DB_HOSTNAME=postgres
- DB_READONLY_HOSTNAME=postgres
- IS_USING_DB_READONLY=true
- DB_PORT=5432
- DB_NAME=dydx_dev
- DB_USERNAME=dydx_dev
- DB_PASSWORD=dydxserver123
labels:
com.datadoghq.ad.logs: '[{"source": "indexer", "service": "vulcan"}]'
ports:
- 3005:3005
links:
- postgres
- redis
depends_on:
kafka:
condition: service_healthy
postgres-package:
condition: service_completed_successfully
四、使用go进行一笔交易
https://github.com/xiedeacc/dydx_v4_client.git