Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
frontend
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
vicotor
frontend
Commits
2f9a27ad
Unverified
Commit
2f9a27ad
authored
Sep 14, 2023
by
Igor Stuev
Committed by
GitHub
Sep 14, 2023
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1166 from blockscout/swagger-default
default spec url
parents
be950a9f
2b0bf072
Changes
14
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
4 additions
and
25 deletions
+4
-25
restApiDocs.ts
configs/app/features/restApiDocs.ts
+3
-10
.env.eth
configs/envs/.env.eth
+0
-1
.env.eth_goerli
configs/envs/.env.eth_goerli
+0
-1
.env.localhost
configs/envs/.env.localhost
+0
-1
.env.main
configs/envs/.env.main
+0
-1
.env.main.L2
configs/envs/.env.main.L2
+0
-1
.env.poa_core
configs/envs/.env.poa_core
+0
-1
.env.polygon
configs/envs/.env.polygon
+0
-1
.env.rootstock
configs/envs/.env.rootstock
+0
-1
values.yaml
deploy/values/l2-optimism-goerli/values.yaml
+0
-1
values.yaml
deploy/values/main/values.yaml
+0
-1
values.yaml.gotmpl
deploy/values/review-l2/values.yaml.gotmpl
+0
-2
values.yaml.gotmpl
deploy/values/review/values.yaml.gotmpl
+0
-2
ENVS.md
docs/ENVS.md
+1
-1
No files found.
configs/app/features/restApiDocs.ts
View file @
2f9a27ad
...
@@ -2,22 +2,15 @@ import type { Feature } from './types';
...
@@ -2,22 +2,15 @@ import type { Feature } from './types';
import
{
getEnvValue
}
from
'
../utils
'
;
import
{
getEnvValue
}
from
'
../utils
'
;
const
specUrl
=
getEnvValue
(
process
.
env
.
NEXT_PUBLIC_API_SPEC_URL
);
const
specUrl
=
getEnvValue
(
process
.
env
.
NEXT_PUBLIC_API_SPEC_URL
)
||
`https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml`
;
const
title
=
'
REST API documentation
'
;
const
title
=
'
REST API documentation
'
;
const
config
:
Feature
<
{
specUrl
:
string
}
>
=
(()
=>
{
const
config
:
Feature
<
{
specUrl
:
string
}
>
=
(()
=>
{
if
(
specUrl
)
{
return
Object
.
freeze
({
title
,
isEnabled
:
true
,
specUrl
,
});
}
return
Object
.
freeze
({
return
Object
.
freeze
({
title
,
title
,
isEnabled
:
false
,
isEnabled
:
true
,
specUrl
,
});
});
})();
})();
...
...
configs/envs/.env.eth
View file @
2f9a27ad
...
@@ -33,7 +33,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Etherscan','baseUrl':'https://etherscan
...
@@ -33,7 +33,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Etherscan','baseUrl':'https://etherscan
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_HAS_BEACON_CHAIN=true
NEXT_PUBLIC_HAS_BEACON_CHAIN=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
...
...
configs/envs/.env.eth_goerli
View file @
2f9a27ad
...
@@ -36,7 +36,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Bitquery','baseUrl':'https://explorer.b
...
@@ -36,7 +36,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Bitquery','baseUrl':'https://explorer.b
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
...
...
configs/envs/.env.localhost
View file @
2f9a27ad
...
@@ -35,7 +35,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Anyblock','baseUrl':'https://explorer.a
...
@@ -35,7 +35,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Anyblock','baseUrl':'https://explorer.a
# app features
# app features
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
configs/envs/.env.main
View file @
2f9a27ad
...
@@ -36,7 +36,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Bitquery','baseUrl':'https://explorer.b
...
@@ -36,7 +36,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Bitquery','baseUrl':'https://explorer.b
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
...
...
configs/envs/.env.main.L2
View file @
2f9a27ad
...
@@ -36,7 +36,6 @@ NEXT_PUBLIC_NETWORK_ICON=https://raw.githubusercontent.com/blockscout/frontend-c
...
@@ -36,7 +36,6 @@ NEXT_PUBLIC_NETWORK_ICON=https://raw.githubusercontent.com/blockscout/frontend-c
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x4a0ed8ddf751a7cb5297f827699117b0f6d21a0b2907594d300dc9fed75c7e62
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x4a0ed8ddf751a7cb5297f827699117b0f6d21a0b2907594d300dc9fed75c7e62
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_WEB3_WALLETS=['coinbase']
NEXT_PUBLIC_WEB3_WALLETS=['coinbase']
NEXT_PUBLIC_WEB3_DISABLE_ADD_TOKEN_TO_WALLET=true
NEXT_PUBLIC_WEB3_DISABLE_ADD_TOKEN_TO_WALLET=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
...
...
configs/envs/.env.poa_core
View file @
2f9a27ad
...
@@ -34,7 +34,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Anyblock','baseUrl':'https://explorer.a
...
@@ -34,7 +34,6 @@ NEXT_PUBLIC_NETWORK_EXPLORERS=[{'title':'Anyblock','baseUrl':'https://explorer.a
# app features
# app features
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_IS_ACCOUNT_SUPPORTED=true
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_AUTH_URL=http://localhost:3000
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_LOGOUT_URL=https://blockscoutcom.us.auth0.com/v2/logout
...
...
configs/envs/.env.polygon
View file @
2f9a27ad
...
@@ -37,7 +37,6 @@ NEXT_PUBLIC_NETWORK_ICON=https://raw.githubusercontent.com/blockscout/frontend-c
...
@@ -37,7 +37,6 @@ NEXT_PUBLIC_NETWORK_ICON=https://raw.githubusercontent.com/blockscout/frontend-c
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
# NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x97fa753626b8d44011d0b9f9a947c735f20b6e895efdee49d7cda76a50001017
# NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x97fa753626b8d44011d0b9f9a947c735f20b6e895efdee49d7cda76a50001017
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_HAS_BEACON_CHAIN=false
NEXT_PUBLIC_HAS_BEACON_CHAIN=false
# NEXT_PUBLIC_STATS_API_HOST=https://stats-rsk-testnet.k8s.blockscout.com
# NEXT_PUBLIC_STATS_API_HOST=https://stats-rsk-testnet.k8s.blockscout.com
NEXT_PUBLIC_VISUALIZE_API_HOST=https://visualizer.services.blockscout.com
NEXT_PUBLIC_VISUALIZE_API_HOST=https://visualizer.services.blockscout.com
...
...
configs/envs/.env.rootstock
View file @
2f9a27ad
...
@@ -38,7 +38,6 @@ NEXT_PUBLIC_VIEWS_BLOCK_HIDDEN_FIELDS=['burnt_fees','total_reward','nonce']
...
@@ -38,7 +38,6 @@ NEXT_PUBLIC_VIEWS_BLOCK_HIDDEN_FIELDS=['burnt_fees','total_reward','nonce']
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_INSTANCE=local
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_APP_ENV=development
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x97fa753626b8d44011d0b9f9a947c735f20b6e895efdee49d7cda76a50001017
NEXT_PUBLIC_GRAPHIQL_TRANSACTION=0x97fa753626b8d44011d0b9f9a947c735f20b6e895efdee49d7cda76a50001017
NEXT_PUBLIC_API_SPEC_URL=https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_HAS_BEACON_CHAIN=false
NEXT_PUBLIC_HAS_BEACON_CHAIN=false
NEXT_PUBLIC_STATS_API_HOST=https://stats-rsk-testnet.k8s.blockscout.com
NEXT_PUBLIC_STATS_API_HOST=https://stats-rsk-testnet.k8s.blockscout.com
NEXT_PUBLIC_VISUALIZE_API_HOST=https://visualizer.services.blockscout.com
NEXT_PUBLIC_VISUALIZE_API_HOST=https://visualizer.services.blockscout.com
deploy/values/l2-optimism-goerli/values.yaml
View file @
2f9a27ad
...
@@ -182,7 +182,6 @@ frontend:
...
@@ -182,7 +182,6 @@ frontend:
NEXT_PUBLIC_FEATURED_NETWORKS
:
https://raw.githubusercontent.com/blockscout/frontend-configs/main/configs/featured-networks/base-goerli.json
NEXT_PUBLIC_FEATURED_NETWORKS
:
https://raw.githubusercontent.com/blockscout/frontend-configs/main/configs/featured-networks/base-goerli.json
NEXT_PUBLIC_MARKETPLACE_SUBMIT_FORM
:
https://airtable.com/shrqUAcjgGJ4jU88C
NEXT_PUBLIC_MARKETPLACE_SUBMIT_FORM
:
https://airtable.com/shrqUAcjgGJ4jU88C
NEXT_PUBLIC_LOGOUT_URL
:
https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_LOGOUT_URL
:
https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_API_SPEC_URL
:
https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL
:
https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/base-goerli.json
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL
:
https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/base-goerli.json
NEXT_PUBLIC_NETWORK_EXPLORERS
:
'
'
NEXT_PUBLIC_NETWORK_EXPLORERS
:
'
'
NEXT_PUBLIC_HOMEPAGE_PLATE_BACKGROUND
:
"
linear-gradient(136.9deg,rgb(107
94
236)
1.5%,rgb(0
82
255)
56.84%,rgb(82
62
231)
98.54%)"
NEXT_PUBLIC_HOMEPAGE_PLATE_BACKGROUND
:
"
linear-gradient(136.9deg,rgb(107
94
236)
1.5%,rgb(0
82
255)
56.84%,rgb(82
62
231)
98.54%)"
...
...
deploy/values/main/values.yaml
View file @
2f9a27ad
...
@@ -155,7 +155,6 @@ frontend:
...
@@ -155,7 +155,6 @@ frontend:
NEXT_PUBLIC_LOGOUT_URL
:
https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_LOGOUT_URL
:
https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_NETWORK_RPC_URL
:
https://rpc.ankr.com/eth_goerli
NEXT_PUBLIC_NETWORK_RPC_URL
:
https://rpc.ankr.com/eth_goerli
NEXT_PUBLIC_HOMEPAGE_CHARTS
:
"
['daily_txs','coin_price','market_cap']"
NEXT_PUBLIC_HOMEPAGE_CHARTS
:
"
['daily_txs','coin_price','market_cap']"
NEXT_PUBLIC_API_SPEC_URL
:
https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL
:
https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/eth-goerli.json
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL
:
https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/eth-goerli.json
NEXT_PUBLIC_GRAPHIQL_TRANSACTION
:
0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_GRAPHIQL_TRANSACTION
:
0xf7d4972356e6ae44ae948d0cf19ef2beaf0e574c180997e969a2837da15e349d
NEXT_PUBLIC_WEB3_WALLETS
:
"
['token_pocket','coinbase','metamask']"
NEXT_PUBLIC_WEB3_WALLETS
:
"
['token_pocket','coinbase','metamask']"
...
...
deploy/values/review-l2/values.yaml.gotmpl
View file @
2f9a27ad
...
@@ -100,8 +100,6 @@ frontend:
...
@@ -100,8 +100,6 @@ frontend:
_default: https://blockscoutcom.us.auth0.com/v2/logout
_default: https://blockscoutcom.us.auth0.com/v2/logout
NEXT_PUBLIC_STATS_API_HOST:
NEXT_PUBLIC_STATS_API_HOST:
_default: https://stats-optimism-goerli.k8s-dev.blockscout.com
_default: https://stats-optimism-goerli.k8s-dev.blockscout.com
NEXT_PUBLIC_API_SPEC_URL:
_default: https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL:
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL:
_default: https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/base-goerli.json
_default: https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/base-goerli.json
NEXT_PUBLIC_NETWORK_EXPLORERS:
NEXT_PUBLIC_NETWORK_EXPLORERS:
...
...
deploy/values/review/values.yaml.gotmpl
View file @
2f9a27ad
...
@@ -108,8 +108,6 @@ frontend:
...
@@ -108,8 +108,6 @@ frontend:
_default: https://rpc.ankr.com/eth_goerli
_default: https://rpc.ankr.com/eth_goerli
NEXT_PUBLIC_NETWORK_EXPLORERS:
NEXT_PUBLIC_NETWORK_EXPLORERS:
_default: "[{'title':'Bitquery','baseUrl':'https://explorer.bitquery.io/','paths':{'tx':'/goerli/tx','address':'/goerli/address','token':'/goerli/token','block':'/goerli/block'}},{'title':'Etherscan','baseUrl':'https://goerli.etherscan.io/','paths':{'tx':'/tx','address':'/address','token':'/token','block':'/block'}}]"
_default: "[{'title':'Bitquery','baseUrl':'https://explorer.bitquery.io/','paths':{'tx':'/goerli/tx','address':'/goerli/address','token':'/goerli/token','block':'/goerli/block'}},{'title':'Etherscan','baseUrl':'https://goerli.etherscan.io/','paths':{'tx':'/tx','address':'/address','token':'/token','block':'/block'}}]"
NEXT_PUBLIC_API_SPEC_URL:
_default: https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL:
NEXT_PUBLIC_MARKETPLACE_CONFIG_URL:
_default: https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/eth-goerli.json
_default: https://raw.githubusercontent.com/blockscout/frontend-configs/dev/configs/marketplace/eth-goerli.json
NEXT_PUBLIC_IS_TESTNET:
NEXT_PUBLIC_IS_TESTNET:
...
...
docs/ENVS.md
View file @
2f9a27ad
...
@@ -300,7 +300,7 @@ This feature is **always enabled**, but you can configure its behavior by passin
...
@@ -300,7 +300,7 @@ This feature is **always enabled**, but you can configure its behavior by passin
| Variable | Type| Description | Compulsoriness | Default value | Example value |
| Variable | Type| Description | Compulsoriness | Default value | Example value |
| --- | --- | --- | --- | --- | --- |
| --- | --- | --- | --- | --- | --- |
| NEXT_PUBLIC_API_SPEC_URL |
`string`
| Spec to be displayed on
`/api-docs`
page | Required |
-
|
`https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml`
|
| NEXT_PUBLIC_API_SPEC_URL |
`string`
| Spec to be displayed on
`/api-docs`
page | Required |
`https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml`
|
`https://raw.githubusercontent.com/blockscout/blockscout-api-v2-swagger/main/swagger.yaml`
|
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment