forked from TomKaminski/Fantom-PWA-Wallet
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapp.config.js
More file actions
180 lines (173 loc) · 5.96 KB
/
app.config.js
File metadata and controls
180 lines (173 loc) · 5.96 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
//
const appConfig = {
// app title
name: 'Fantom fWallet',
// app description
description: 'Fantom fWallet',
// app keywords
keywords: 'fantom, opera, wallet',
// apollo client settings
apollo: {
// list of providers. if one of them is unavailable, another is randomly picked
providers: [
{
http: 'https://xapi-nodea.fantom.network/',
// for subscriptions
ws: '',
},
{
http: 'https://xapi-nodeb.fantom.network/',
// for subscriptions
ws: '',
},
{
http: 'https://xapi-nodec.fantom.network/',
// for subscriptions
ws: '',
},
{
http: 'https://xapi-noded.fantom.network/',
// for subscriptions
ws: '',
},
{
http: 'https://xapi-nodee.fantom.network/',
// for subscriptions
ws: '',
},
{
http: 'https://xapi-nodef.fantom.network/',
// for subscriptions
ws: '',
},
],
// index into providers array of default provider or 'random' - takes index randomly
defaultProviderIndex: 'random',
},
// Opera chain id
chainId: '0xfa',
// JSON-RPC endpoint
rpc: 'https://rpcapi.fantom.network/',
// used in links pointing to fantom explorer
explorerUrl: 'https://ftmscan.com/',
// used in links pointing to validators
explorerUrl2: 'https://explorer.fantom.network/',
// used in links pointing to fantom explorer's transaction detail
explorerTransactionPath: 'tx',
// used in links pointing to ethereum explorer
ethereumExplorerUrl: 'https://etherscan.io/',
// used in links pointing to binance explorer
binanceExplorerUrl: 'https://explorer.binance.org/',
// BNBridge api config
bnbridgeApi: {
// url of api point
url: 'https://api.bnbridge.exchange/api/v1',
// auth token
token: '',
// use Ethereum chain
useETH: false,
// use Binance chain
useBNB: false,
// minimal amount of FTM to ETH transfer
minFTMToTransfer: 50,
},
disableFLend: true,
//
useTestnet: false,
// testnet config
testnet: {
// list of providers. if one of them is unavailable, another is randomly picked
providers: [
{
http: 'https://xapi.testnet.fantom.network/api',
// for subscriptions
ws: '',
},
],
// JSON-RPC endpoint
rpc: 'https://xapi.testnet.fantom.network/lachesis',
// used in links pointing to fantom explorer
explorerUrl: 'https://explorer.testnet.fantom.network/',
// used in links pointing to validators
explorerUrl2: 'https://explorer.testnet.fantom.network/',
// used in links pointing to fantom explorer's transaction detail
explorerTransactionPath: 'transactions',
// chain id for testnet
chainId: '0xfa2',
},
// progressive web application
usePWA: true,
// pwa settings
pwa: {
// name used in pwa manifest
name: 'Fantom fWallet',
categories: ['finance'],
},
// determines if app is chrome extension
isChromeExtension: !!process.env.VUE_APP_IS_CHROME_EXTENSION,
// chrome extension settings
chromeExtension: {
// chrome extension version - increase version number, if you want to publish in the chrome web store
version: '0.0.1',
// chrome extension name
name: 'Fantom fWallet',
// chrome extension description
description: 'Fantom fWallet',
// output directory for application
outputDir: 'chrome-extension/dist',
// output directory for application (relative to outputDir)
outputDirApp: 'app',
// output directory for background js bundle script (relative to outputDir)
outputDirBackgroundJs: 'background-js',
// show extension prompts in new tab, instead of popup window
tabNotPopup: false,
},
// default options for production build
build: {
// output dir for production build
outputDir: 'dist',
},
// app settings
settings: {
// list of available currencies displayed in settings view ( https://en.wikipedia.org/wiki/ISO_4217 )
currencies: ['USD', 'EUR'],
// defi slippage reserve in percentage
defaultDefiSlippageReserve: 0.3,
// default funiswap slippage tolerance in percentage
defaultFUniswapSlippageTolerance: 0.5,
// funiswap provider fee (0.3%)
fUniswapLiquidityProviderFee: 0.003,
// success transaction message will automatically continue to the next step after this number of ms
autoContinueToAfter: 2000,
},
};
appConfig.mainnet = {
chainId: appConfig.chainId,
rpc: appConfig.rpc,
explorerUrl: appConfig.explorerUrl,
explorerUrl2: appConfig.explorerUrl2,
};
if (appConfig.useTestnet) {
appConfig.apollo.providers = appConfig.testnet.providers;
appConfig.explorerUrl = appConfig.testnet.explorerUrl;
appConfig.explorerUrl2 = appConfig.testnet.explorerUrl2;
appConfig.explorerTransactionPath = appConfig.testnet.explorerTransactionPath;
appConfig.rpc = appConfig.testnet.rpc;
appConfig.chainId = appConfig.testnet.chainId;
}
//
if (appConfig.isChromeExtension) {
appConfig.usePWA = false;
appConfig.build = {
...{
// output dir for production build
outputDir: `${appConfig.chromeExtension.outputDir}/${appConfig.chromeExtension.outputDirApp}`,
},
};
}
// scss variables prepended to every scss file
appConfig.scssData = `
// @import "src/assets/scss/vars";
$IS_CHROME_EXTENSION: ${appConfig.isChromeExtension ? 'true' : 'false'};
`;
module.exports = appConfig;