Files
explore/tools/scripts/dev.preset.sh
T
zeekay 7049344343 Switch from yarn to pnpm, clean up dependency tree
- Replace yarn v1 with pnpm 10.11.0 across all build configs
- Move misplaced deps to devDependencies (cspell, esbuild, @openzeppelin/contracts, @next/bundle-analyzer, @types/papaparse, @types/react-scroll)
- Remove stale @types/[email protected] override — use correct React 19 types (fixes 22 type errors)
- Convert yarn resolutions to pnpm.overrides
- Update Dockerfile, Dockerfile.lux, CI workflows, and all shell scripts
- Add .npmrc with shamefully-hoist for Next.js compatibility
- Add outputFileTracingRoot to next.config.js
2026-02-24 17:35:30 -08:00

52 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
if [ "$#" -ne 1 ]; then
echo "Usage: pnpm dev:preset <preset_name>"
exit 1
fi
preset_name="$1"
config_file="./configs/envs/.env.${preset_name}"
secrets_file="./configs/envs/.env.secrets"
if [ ! -f "$config_file" ]; then
echo "Error: File '$config_file' not found."
exit 1
fi
# remove previous assets
rm -rf ./public/assets/configs
rm -rf ./public/assets/multichain
rm -rf ./public/assets/essential-dapps
rm -rf ./public/assets/envs.js
# download assets for the running instance
dotenv \
-e $config_file \
-- bash -c './deploy/scripts/download_assets.sh ./public/assets/configs'
# generate multichain config (adjust condition accordingly)
if [[ "$preset_name" == "optimism_superchain" ]]; then
dotenv \
-e $config_file \
-- bash -c 'cd deploy/tools/multichain-config-generator && pnpm install --silent && pnpm build && pnpm generate' || exit 1
fi
# generate essential dapps chains config if marketplace essential dapps enabled
dotenv \
-e $config_file \
-- bash -c 'cd deploy/tools/essential-dapps-chains-config-generator && pnpm install --silent && pnpm build && pnpm generate' || exit 1
source ./deploy/scripts/build_sprite.sh
echo ""
# generate envs.js file and run the app
dotenv \
-v NEXT_PUBLIC_GIT_COMMIT_SHA=$(git rev-parse --short HEAD) \
-v NEXT_PUBLIC_GIT_TAG=$(git describe --tags --abbrev=0) \
-v NEXT_PUBLIC_ICON_SPRITE_HASH="${NEXT_PUBLIC_ICON_SPRITE_HASH}" \
-e $config_file \
-e $secrets_file \
-- bash -c './deploy/scripts/make_envs_script.sh && next dev -p $NEXT_PUBLIC_APP_PORT' |
pino-pretty