@taskon/widget-react 0.0.1-beta.5 → 0.0.1-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +61 -47
- package/dist/CommunityTaskList.css +9 -1
- package/dist/EligibilityInfo.css +48 -75
- package/dist/LeaderboardWidget.css +73 -71
- package/dist/PageBuilder.css +5 -0
- package/dist/Quest.css +18 -14
- package/dist/TaskOnProvider.css +289 -0
- package/dist/ThemeProvider.css +227 -0
- package/dist/UserCenterWidget.css +6 -6
- package/dist/UserCenterWidget2.css +1388 -1621
- package/dist/{dynamic-import-helper.css → WidgetShell.css} +0 -227
- package/dist/chunks/{CommunityTaskList-CrMvOB8w.js → CommunityTaskList-D0uVD8wD.js} +393 -208
- package/dist/chunks/{EligibilityInfo-Beww12QX.js → EligibilityInfo-Cf6hx9-a.js} +459 -679
- package/dist/chunks/{LeaderboardWidget-DwuSpVl0.js → LeaderboardWidget-DyoiiNS6.js} +274 -252
- package/dist/chunks/{PageBuilder-DsX6Tv0N.js → PageBuilder-DoAFPm6-.js} +5 -5
- package/dist/chunks/{Quest-CuD2LElS.js → Quest-ySZlYd4u.js} +74 -57
- package/dist/chunks/TaskOnProvider-CxtFIs3n.js +2072 -0
- package/dist/chunks/{dynamic-import-helper-WmIF58Sb.js → ThemeProvider-CulHkqqY.js} +1282 -555
- package/dist/chunks/UserCenterWidget-BJsc_GSZ.js +3246 -0
- package/dist/chunks/{UserCenterWidget-CvU6K4AC.js → UserCenterWidget-STq8kpV4.js} +1174 -1386
- package/dist/chunks/WidgetShell-8xn-Jivw.js +659 -0
- package/dist/chunks/communitytask-es-CBNnS4o2.js +521 -0
- package/dist/chunks/communitytask-ja-GRf9cbdx.js +521 -0
- package/dist/chunks/communitytask-ko-Bf24PQKI.js +521 -0
- package/dist/chunks/{communitytask-ru-DhySaZL8.js → communitytask-ru-CZm2CPoV.js} +211 -1
- package/dist/chunks/leaderboardwidget-es-vKjrjQaz.js +146 -0
- package/dist/chunks/leaderboardwidget-ja-Q6u0HxKG.js +146 -0
- package/dist/chunks/leaderboardwidget-ko-CG6SWgxf.js +146 -0
- package/dist/chunks/leaderboardwidget-ru-DCcHcJGz.js +146 -0
- package/dist/chunks/{quest-es-D-b5xcme.js → quest-es-Dyyy0zaw.js} +8 -93
- package/dist/chunks/{quest-ja-Dxd2vqBF.js → quest-ja-Depog33y.js} +8 -93
- package/dist/chunks/{quest-ko-CSmRWgK_.js → quest-ko-BMu3uRQJ.js} +8 -93
- package/dist/chunks/{quest-ru-CkEKv1_F.js → quest-ru-xne814Rw.js} +8 -93
- package/dist/chunks/useIsMobile-D6Ybur-6.js +30 -0
- package/dist/chunks/useToast-BGJhd3BX.js +93 -0
- package/dist/chunks/usercenter-es-Dz3Wp2vV.js +512 -0
- package/dist/chunks/usercenter-ja-CKE4DJC6.js +512 -0
- package/dist/chunks/usercenter-ko-Dtpkn2qb.js +512 -0
- package/dist/chunks/usercenter-ru-DnBGee45.js +512 -0
- package/dist/community-task.d.ts +0 -390
- package/dist/community-task.js +2 -7
- package/dist/core.d.ts +38 -20
- package/dist/core.js +9 -10
- package/dist/index.d.ts +86 -709
- package/dist/index.js +22 -28
- package/dist/leaderboard.d.ts +0 -498
- package/dist/leaderboard.js +2 -16
- package/dist/page-builder.js +1 -1
- package/dist/quest.d.ts +0 -971
- package/dist/quest.js +2 -7
- package/dist/user-center.d.ts +0 -1610
- package/dist/user-center.js +2 -494
- package/package.json +2 -2
- package/dist/chunks/TaskOnProvider-xUeP2Nro.js +0 -1243
- package/dist/chunks/ThemeProvider-Bt4UZ33y.js +0 -1334
- package/dist/chunks/UserCenterWidget-CB0hnj-L.js +0 -3230
- package/dist/chunks/communitytask-es-1zawvXEX.js +0 -311
- package/dist/chunks/communitytask-ja-CmW6nP-L.js +0 -311
- package/dist/chunks/communitytask-ko-BD0hzQSi.js +0 -311
- package/dist/chunks/createLocaleLoader-BameiEhU.js +0 -65
- package/dist/chunks/leaderboardwidget-ja-Bj6gz6y1.js +0 -119
- package/dist/chunks/leaderboardwidget-ko-f1cLO9ic.js +0 -119
- package/dist/chunks/useToast-CaRkylKe.js +0 -304
- package/dist/chunks/usercenter-ja-B2465c1O.js +0 -326
- package/dist/chunks/usercenter-ko-xAEYxqLg.js +0 -326
|
@@ -1,304 +0,0 @@
|
|
|
1
|
-
import { useContext, createContext, useMemo, useState, useCallback } from "react";
|
|
2
|
-
const defaultWalletContext = {
|
|
3
|
-
// EVM state
|
|
4
|
-
evmAdapter: null,
|
|
5
|
-
evmAddress: null,
|
|
6
|
-
evmChainId: null,
|
|
7
|
-
isEvmConnected: false,
|
|
8
|
-
// Detection status
|
|
9
|
-
isDetecting: true,
|
|
10
|
-
// Actions (no-op by default)
|
|
11
|
-
connectEvm: async () => null,
|
|
12
|
-
disconnectEvm: async () => {
|
|
13
|
-
},
|
|
14
|
-
signEvmMessage: async () => null
|
|
15
|
-
};
|
|
16
|
-
const WalletContext = createContext(defaultWalletContext);
|
|
17
|
-
function useWallet() {
|
|
18
|
-
const context = useContext(WalletContext);
|
|
19
|
-
return context;
|
|
20
|
-
}
|
|
21
|
-
function useEvmWallet() {
|
|
22
|
-
const context = useWallet();
|
|
23
|
-
return useMemo(
|
|
24
|
-
() => ({
|
|
25
|
-
adapter: context.evmAdapter,
|
|
26
|
-
address: context.evmAddress,
|
|
27
|
-
chainId: context.evmChainId,
|
|
28
|
-
isConnected: context.isEvmConnected,
|
|
29
|
-
connect: context.connectEvm,
|
|
30
|
-
disconnect: context.disconnectEvm,
|
|
31
|
-
signMessage: context.signEvmMessage
|
|
32
|
-
}),
|
|
33
|
-
[
|
|
34
|
-
context.evmAdapter,
|
|
35
|
-
context.evmAddress,
|
|
36
|
-
context.evmChainId,
|
|
37
|
-
context.isEvmConnected,
|
|
38
|
-
context.connectEvm,
|
|
39
|
-
context.disconnectEvm,
|
|
40
|
-
context.signEvmMessage
|
|
41
|
-
]
|
|
42
|
-
);
|
|
43
|
-
}
|
|
44
|
-
let ethersModule = null;
|
|
45
|
-
const interfaceCache = /* @__PURE__ */ new Map();
|
|
46
|
-
async function loadEthers() {
|
|
47
|
-
if (ethersModule) {
|
|
48
|
-
return ethersModule;
|
|
49
|
-
}
|
|
50
|
-
try {
|
|
51
|
-
ethersModule = await import("ethers");
|
|
52
|
-
return ethersModule;
|
|
53
|
-
} catch {
|
|
54
|
-
throw new Error(
|
|
55
|
-
"ethers.js is required for contract invocation. Please install ethers@^6.0.0"
|
|
56
|
-
);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
async function getInterface(abi) {
|
|
60
|
-
const { ethers } = await loadEthers();
|
|
61
|
-
const cacheKey = JSON.stringify(abi);
|
|
62
|
-
let iface = interfaceCache.get(cacheKey);
|
|
63
|
-
if (!iface) {
|
|
64
|
-
iface = new ethers.Interface(abi);
|
|
65
|
-
interfaceCache.set(cacheKey, iface);
|
|
66
|
-
}
|
|
67
|
-
return iface;
|
|
68
|
-
}
|
|
69
|
-
function getEthereumProvider() {
|
|
70
|
-
if (typeof window === "undefined") return null;
|
|
71
|
-
return window.ethereum ?? null;
|
|
72
|
-
}
|
|
73
|
-
function buildEthereumAdapter(provider, initialAddress = null, initialChainId = null) {
|
|
74
|
-
let currentAddress = initialAddress;
|
|
75
|
-
let currentChainId = initialChainId;
|
|
76
|
-
const adapter = {
|
|
77
|
-
/**
|
|
78
|
-
* Connect wallet
|
|
79
|
-
*/
|
|
80
|
-
connect: async () => {
|
|
81
|
-
const accounts = await provider.request({
|
|
82
|
-
method: "eth_requestAccounts"
|
|
83
|
-
});
|
|
84
|
-
if (!accounts || accounts.length === 0) {
|
|
85
|
-
throw new Error("No accounts found");
|
|
86
|
-
}
|
|
87
|
-
const address = accounts[0];
|
|
88
|
-
if (!address) {
|
|
89
|
-
throw new Error("No accounts found");
|
|
90
|
-
}
|
|
91
|
-
currentAddress = address;
|
|
92
|
-
const chainIdHex = await provider.request({
|
|
93
|
-
method: "eth_chainId"
|
|
94
|
-
});
|
|
95
|
-
currentChainId = parseInt(chainIdHex, 16);
|
|
96
|
-
return address;
|
|
97
|
-
},
|
|
98
|
-
/**
|
|
99
|
-
* Disconnect from wallet
|
|
100
|
-
* Note: Most wallets don't support programmatic disconnect, can only clear local state
|
|
101
|
-
*/
|
|
102
|
-
disconnect: async () => {
|
|
103
|
-
currentAddress = null;
|
|
104
|
-
currentChainId = null;
|
|
105
|
-
},
|
|
106
|
-
/**
|
|
107
|
-
* Sign message (personal_sign)
|
|
108
|
-
*/
|
|
109
|
-
signMessage: async (message) => {
|
|
110
|
-
if (!currentAddress) {
|
|
111
|
-
throw new Error("Wallet not connected");
|
|
112
|
-
}
|
|
113
|
-
const signature = await provider.request({
|
|
114
|
-
method: "personal_sign",
|
|
115
|
-
params: [message, currentAddress]
|
|
116
|
-
});
|
|
117
|
-
return signature;
|
|
118
|
-
},
|
|
119
|
-
/**
|
|
120
|
-
* Get current address
|
|
121
|
-
*/
|
|
122
|
-
getAddress: () => currentAddress,
|
|
123
|
-
/**
|
|
124
|
-
* Get current chain ID
|
|
125
|
-
*/
|
|
126
|
-
getChainId: () => currentChainId,
|
|
127
|
-
/**
|
|
128
|
-
* Switch network
|
|
129
|
-
*/
|
|
130
|
-
switchNetwork: async (chainId) => {
|
|
131
|
-
const chainIdHex = `0x${chainId.toString(16)}`;
|
|
132
|
-
try {
|
|
133
|
-
await provider.request({
|
|
134
|
-
method: "wallet_switchEthereumChain",
|
|
135
|
-
params: [{ chainId: chainIdHex }]
|
|
136
|
-
});
|
|
137
|
-
currentChainId = chainId;
|
|
138
|
-
} catch (error) {
|
|
139
|
-
const err = error;
|
|
140
|
-
if (err.code === 4902) {
|
|
141
|
-
throw new Error("Chain not found in wallet. Please add the network manually.");
|
|
142
|
-
}
|
|
143
|
-
throw error;
|
|
144
|
-
}
|
|
145
|
-
},
|
|
146
|
-
/**
|
|
147
|
-
* Get wallet's native token balance (for gas estimation)
|
|
148
|
-
* @returns Balance in ETH (string, formatted)
|
|
149
|
-
*/
|
|
150
|
-
getBalance: async () => {
|
|
151
|
-
if (!currentAddress) {
|
|
152
|
-
throw new Error("Wallet not connected");
|
|
153
|
-
}
|
|
154
|
-
const balanceHex = await provider.request({
|
|
155
|
-
method: "eth_getBalance",
|
|
156
|
-
params: [currentAddress, "latest"]
|
|
157
|
-
});
|
|
158
|
-
const balanceWei = BigInt(balanceHex);
|
|
159
|
-
const balanceEth = Number(balanceWei) / 1e18;
|
|
160
|
-
return balanceEth.toString();
|
|
161
|
-
},
|
|
162
|
-
/**
|
|
163
|
-
* Invoke a smart contract method
|
|
164
|
-
*
|
|
165
|
-
* 使用 ethers.js 编码合约调用,支持缓存优化:
|
|
166
|
-
* - ethers 模块只加载一次
|
|
167
|
-
* - 相同 ABI 的 Interface 实例会被缓存复用
|
|
168
|
-
*
|
|
169
|
-
* @param params - Contract invocation parameters
|
|
170
|
-
* @returns Transaction hash
|
|
171
|
-
*/
|
|
172
|
-
invokeContract: async (params) => {
|
|
173
|
-
var _a;
|
|
174
|
-
if (!currentAddress) {
|
|
175
|
-
throw new Error("Wallet not connected");
|
|
176
|
-
}
|
|
177
|
-
const { contract, abi, method, params: methodParams, chainId, value } = params;
|
|
178
|
-
if (chainId && currentChainId !== chainId) {
|
|
179
|
-
await ((_a = adapter.switchNetwork) == null ? void 0 : _a.call(adapter, chainId));
|
|
180
|
-
}
|
|
181
|
-
let encodedData;
|
|
182
|
-
try {
|
|
183
|
-
const iface = await getInterface(abi);
|
|
184
|
-
encodedData = iface.encodeFunctionData(method, methodParams);
|
|
185
|
-
} catch (error) {
|
|
186
|
-
if (error instanceof Error && error.message.includes("ethers.js is required")) {
|
|
187
|
-
throw error;
|
|
188
|
-
}
|
|
189
|
-
throw new Error(
|
|
190
|
-
`Failed to encode contract call "${method}": ${error instanceof Error ? error.message : String(error)}`
|
|
191
|
-
);
|
|
192
|
-
}
|
|
193
|
-
const txParams = {
|
|
194
|
-
from: currentAddress,
|
|
195
|
-
to: contract,
|
|
196
|
-
data: encodedData
|
|
197
|
-
};
|
|
198
|
-
if (value) {
|
|
199
|
-
txParams.value = `0x${BigInt(value).toString(16)}`;
|
|
200
|
-
}
|
|
201
|
-
const txHash = await provider.request({
|
|
202
|
-
method: "eth_sendTransaction",
|
|
203
|
-
params: [txParams]
|
|
204
|
-
});
|
|
205
|
-
return txHash;
|
|
206
|
-
},
|
|
207
|
-
/**
|
|
208
|
-
* Listen to account changes
|
|
209
|
-
*/
|
|
210
|
-
onAccountChange: (callback) => {
|
|
211
|
-
var _a;
|
|
212
|
-
const handler = (accounts) => {
|
|
213
|
-
const accountList = accounts;
|
|
214
|
-
currentAddress = accountList[0] ?? null;
|
|
215
|
-
callback(currentAddress);
|
|
216
|
-
};
|
|
217
|
-
(_a = provider.on) == null ? void 0 : _a.call(provider, "accountsChanged", handler);
|
|
218
|
-
return () => {
|
|
219
|
-
var _a2;
|
|
220
|
-
return (_a2 = provider.removeListener) == null ? void 0 : _a2.call(provider, "accountsChanged", handler);
|
|
221
|
-
};
|
|
222
|
-
},
|
|
223
|
-
/**
|
|
224
|
-
* Listen to chain changes
|
|
225
|
-
*/
|
|
226
|
-
onChainChange: (callback) => {
|
|
227
|
-
var _a;
|
|
228
|
-
const handler = (chainIdHex) => {
|
|
229
|
-
currentChainId = parseInt(chainIdHex, 16);
|
|
230
|
-
callback(currentChainId);
|
|
231
|
-
};
|
|
232
|
-
(_a = provider.on) == null ? void 0 : _a.call(provider, "chainChanged", handler);
|
|
233
|
-
return () => {
|
|
234
|
-
var _a2;
|
|
235
|
-
return (_a2 = provider.removeListener) == null ? void 0 : _a2.call(provider, "chainChanged", handler);
|
|
236
|
-
};
|
|
237
|
-
}
|
|
238
|
-
};
|
|
239
|
-
return adapter;
|
|
240
|
-
}
|
|
241
|
-
function createEthereumAdapter() {
|
|
242
|
-
const provider = getEthereumProvider();
|
|
243
|
-
if (!provider) return null;
|
|
244
|
-
return buildEthereumAdapter(provider);
|
|
245
|
-
}
|
|
246
|
-
function createEthereumAdapterFromProvider(provider, options = {}) {
|
|
247
|
-
return buildEthereumAdapter(
|
|
248
|
-
provider,
|
|
249
|
-
options.address ?? null,
|
|
250
|
-
options.chainId ?? null
|
|
251
|
-
);
|
|
252
|
-
}
|
|
253
|
-
const ToastContext = createContext(null);
|
|
254
|
-
function useToast() {
|
|
255
|
-
const context = useContext(ToastContext);
|
|
256
|
-
if (!context) {
|
|
257
|
-
throw new Error("useToast must be used within TaskOnProvider");
|
|
258
|
-
}
|
|
259
|
-
return context;
|
|
260
|
-
}
|
|
261
|
-
let toastId = 0;
|
|
262
|
-
function generateId() {
|
|
263
|
-
return `toast-${++toastId}-${Date.now()}`;
|
|
264
|
-
}
|
|
265
|
-
function useToastState() {
|
|
266
|
-
const [toasts, setToasts] = useState([]);
|
|
267
|
-
const showToast = useCallback(
|
|
268
|
-
(message, type = "info", duration) => {
|
|
269
|
-
const newToast = {
|
|
270
|
-
id: generateId(),
|
|
271
|
-
message,
|
|
272
|
-
type,
|
|
273
|
-
duration
|
|
274
|
-
};
|
|
275
|
-
setToasts((prev) => [...prev, newToast]);
|
|
276
|
-
},
|
|
277
|
-
[]
|
|
278
|
-
);
|
|
279
|
-
const removeToast = useCallback((id) => {
|
|
280
|
-
setToasts((prev) => prev.filter((t) => t.id !== id));
|
|
281
|
-
}, []);
|
|
282
|
-
const toast = {
|
|
283
|
-
success: (message, duration) => showToast(message, "success", duration),
|
|
284
|
-
error: (message, duration) => showToast(message, "error", duration),
|
|
285
|
-
warning: (message, duration) => showToast(message, "warning", duration),
|
|
286
|
-
info: (message, duration) => showToast(message, "info", duration)
|
|
287
|
-
};
|
|
288
|
-
return {
|
|
289
|
-
toasts,
|
|
290
|
-
showToast,
|
|
291
|
-
removeToast,
|
|
292
|
-
toast
|
|
293
|
-
};
|
|
294
|
-
}
|
|
295
|
-
export {
|
|
296
|
-
ToastContext as T,
|
|
297
|
-
WalletContext as W,
|
|
298
|
-
useEvmWallet as a,
|
|
299
|
-
useToastState as b,
|
|
300
|
-
createEthereumAdapter as c,
|
|
301
|
-
useToast as d,
|
|
302
|
-
createEthereumAdapterFromProvider as e,
|
|
303
|
-
useWallet as u
|
|
304
|
-
};
|
|
@@ -1,326 +0,0 @@
|
|
|
1
|
-
const tabMyRewards = "マイリワード";
|
|
2
|
-
const tabIdentity = "アイデンティティ";
|
|
3
|
-
const tabActivityHistory = "アクティビティ履歴";
|
|
4
|
-
const rewardToken = "トークン";
|
|
5
|
-
const rewardXpLevel = "XP & レベル";
|
|
6
|
-
const rewardNft = "NFT";
|
|
7
|
-
const rewardWhitelist = "ホワイトリスト";
|
|
8
|
-
const rewardDiscordRole = "Discord ロール";
|
|
9
|
-
const rewardPoints = "ポイント";
|
|
10
|
-
const withdrawableAssets = "引き出し可能な資産";
|
|
11
|
-
const tokenHistory = "トークン履歴";
|
|
12
|
-
const withdraw = "引き出し";
|
|
13
|
-
const batchWithdraw = "一括引き出し";
|
|
14
|
-
const frozenAssets = "凍結資産";
|
|
15
|
-
const resend = "再送信";
|
|
16
|
-
const pendingWithdrawals = "{count}件の保留中の引き出しがあります";
|
|
17
|
-
const withdrawConfirm = "引き出しの確認";
|
|
18
|
-
const withdrawSuccess = "引き出し成功";
|
|
19
|
-
const withdrawCanceled = "引き出しキャンセル";
|
|
20
|
-
const gasNotEnough = "ガス不足";
|
|
21
|
-
const retry = "再試行";
|
|
22
|
-
const confirmWithdraw = "引き出しを確認";
|
|
23
|
-
const withdrawing = "引き出し処理中...";
|
|
24
|
-
const confirm = "確認";
|
|
25
|
-
const cancel = "キャンセル";
|
|
26
|
-
const close = "閉じる";
|
|
27
|
-
const columnDetail = "詳細";
|
|
28
|
-
const columnDuration = "期間";
|
|
29
|
-
const activityName = "アクティビティ名";
|
|
30
|
-
const activityTime = "アクティビティ時間";
|
|
31
|
-
const level = "レベル";
|
|
32
|
-
const totalXp = "合計XP";
|
|
33
|
-
const xpToNextLevel = "次のレベルまで";
|
|
34
|
-
const xpHistory = "XP履歴";
|
|
35
|
-
const totalPoints = "合計";
|
|
36
|
-
const emptyPoints = "ポイント履歴はまだありません";
|
|
37
|
-
const pointsHistory = "ポイント履歴";
|
|
38
|
-
const page = "ページ";
|
|
39
|
-
const of = "/";
|
|
40
|
-
const previous = "前へ";
|
|
41
|
-
const next = "次へ";
|
|
42
|
-
const loadMore = "もっと読み込む";
|
|
43
|
-
const showing = "{start}-{end} / {total}件を表示";
|
|
44
|
-
const socialAccounts = "ソーシャルアカウント";
|
|
45
|
-
const walletAddresses = "ネットワークリスト";
|
|
46
|
-
const emailAddress = "メールアドレス";
|
|
47
|
-
const bind = "連携";
|
|
48
|
-
const unbind = "解除";
|
|
49
|
-
const connectWallet = "ウォレット接続";
|
|
50
|
-
const binding = "連携中...";
|
|
51
|
-
const unbinding = "解除中...";
|
|
52
|
-
const bindSocialTodo = "OAuth連携は近日公開予定です";
|
|
53
|
-
const confirmUnbind = "連携解除の確認";
|
|
54
|
-
const unbindWarning = "このアカウントの連携を解除しますか?";
|
|
55
|
-
const kycWarning = "このアドレスはKYC認証済みです。連携解除後、再度連携する場合はKYC再認証が必要になります。";
|
|
56
|
-
const unbindCooldown = "連携から24時間以内は解除できません";
|
|
57
|
-
const lastLoginMethod = "最後のログイン方法は解除できません";
|
|
58
|
-
const unbindSuccess = "連携解除成功";
|
|
59
|
-
const unbindFailed = "連携解除失敗";
|
|
60
|
-
const bindSuccess = "連携成功";
|
|
61
|
-
const bindFailed = "連携失敗";
|
|
62
|
-
const connectingWallet = "ウォレット接続中...";
|
|
63
|
-
const signingMessage = "署名中...";
|
|
64
|
-
const emptyIdentity = "設定された認証オプションがありません";
|
|
65
|
-
const linkEmailAccount = "メールアドレスを連携";
|
|
66
|
-
const pleaseEnterEmail = "メールアドレスを入力してください";
|
|
67
|
-
const pleaseEnterValidEmail = "有効なメールアドレスを入力してください";
|
|
68
|
-
const verificationCode = "認証コード";
|
|
69
|
-
const pleaseEnterCode = "認証コードを入力してください";
|
|
70
|
-
const pleaseEnterValidCode = "有効な認証コードを入力してください";
|
|
71
|
-
const sendVerificationCode = "認証コードを送信";
|
|
72
|
-
const resendCode = "再送信";
|
|
73
|
-
const emailAlreadyLinked = "このメールアドレスは既に他のアカウントに連携されています";
|
|
74
|
-
const sendCodeSuccess = "認証コードを送信しました";
|
|
75
|
-
const sendCodeFailed = "認証コードの送信に失敗しました";
|
|
76
|
-
const columnTokenSymbol = "トークンシンボル";
|
|
77
|
-
const columnNetwork = "ネットワーク";
|
|
78
|
-
const columnWithdrawable = "引き出し可能";
|
|
79
|
-
const columnAction = "アクション";
|
|
80
|
-
const ok = "OK";
|
|
81
|
-
const claimNft = "NFTを請求";
|
|
82
|
-
const linked = "連携済み";
|
|
83
|
-
const linkPlatformAccount = "{platform}アカウントを連携";
|
|
84
|
-
const withdrawCanceledMessage = "引き出しがキャンセルされました。再試行できます。";
|
|
85
|
-
const frozenTypeCampaign = "キャンペーン凍結";
|
|
86
|
-
const frozenTypeWithdraw = "引き出し保留中";
|
|
87
|
-
const frozenTypeReferral = "紹介報酬凍結";
|
|
88
|
-
const frozenTypeBenefit = "特典凍結";
|
|
89
|
-
const frozenTypeTgMiniApp = "TG Mini App";
|
|
90
|
-
const frozenTypeMilestone = "マイルストーン凍結";
|
|
91
|
-
const loading = "読み込み中...";
|
|
92
|
-
const error = "エラーが発生しました";
|
|
93
|
-
const emptyRewards = "リワードはまだありません";
|
|
94
|
-
const emptyActivityHistory = "アクティビティ履歴はありません";
|
|
95
|
-
const emptyToken = "トークンはまだありません";
|
|
96
|
-
const emptyNft = "NFTはまだありません";
|
|
97
|
-
const noData = "データがありません";
|
|
98
|
-
const claim = "請求";
|
|
99
|
-
const claimedTxn = "請求済み (Txn)";
|
|
100
|
-
const manualDrop = "手動配布";
|
|
101
|
-
const columnNft = "NFT";
|
|
102
|
-
const columnWhitelist = "ホワイトリスト";
|
|
103
|
-
const columnDiscordRole = "Discord ロール";
|
|
104
|
-
const columnTime = "時間";
|
|
105
|
-
const columnStatus = "ステータス";
|
|
106
|
-
const columnAmount = "数量";
|
|
107
|
-
const walletNotBind = "引き出す前にウォレットを連携してください";
|
|
108
|
-
const ja = {
|
|
109
|
-
tabMyRewards,
|
|
110
|
-
tabIdentity,
|
|
111
|
-
tabActivityHistory,
|
|
112
|
-
rewardToken,
|
|
113
|
-
rewardXpLevel,
|
|
114
|
-
rewardNft,
|
|
115
|
-
rewardWhitelist,
|
|
116
|
-
rewardDiscordRole,
|
|
117
|
-
rewardPoints,
|
|
118
|
-
withdrawableAssets,
|
|
119
|
-
tokenHistory,
|
|
120
|
-
withdraw,
|
|
121
|
-
batchWithdraw,
|
|
122
|
-
frozenAssets,
|
|
123
|
-
resend,
|
|
124
|
-
pendingWithdrawals,
|
|
125
|
-
withdrawConfirm,
|
|
126
|
-
withdrawSuccess,
|
|
127
|
-
withdrawCanceled,
|
|
128
|
-
gasNotEnough,
|
|
129
|
-
retry,
|
|
130
|
-
confirmWithdraw,
|
|
131
|
-
withdrawing,
|
|
132
|
-
confirm,
|
|
133
|
-
cancel,
|
|
134
|
-
close,
|
|
135
|
-
columnDetail,
|
|
136
|
-
columnDuration,
|
|
137
|
-
activityName,
|
|
138
|
-
activityTime,
|
|
139
|
-
level,
|
|
140
|
-
totalXp,
|
|
141
|
-
xpToNextLevel,
|
|
142
|
-
xpHistory,
|
|
143
|
-
totalPoints,
|
|
144
|
-
emptyPoints,
|
|
145
|
-
pointsHistory,
|
|
146
|
-
page,
|
|
147
|
-
of,
|
|
148
|
-
previous,
|
|
149
|
-
next,
|
|
150
|
-
loadMore,
|
|
151
|
-
showing,
|
|
152
|
-
socialAccounts,
|
|
153
|
-
walletAddresses,
|
|
154
|
-
emailAddress,
|
|
155
|
-
bind,
|
|
156
|
-
unbind,
|
|
157
|
-
connectWallet,
|
|
158
|
-
binding,
|
|
159
|
-
unbinding,
|
|
160
|
-
bindSocialTodo,
|
|
161
|
-
confirmUnbind,
|
|
162
|
-
unbindWarning,
|
|
163
|
-
kycWarning,
|
|
164
|
-
unbindCooldown,
|
|
165
|
-
lastLoginMethod,
|
|
166
|
-
unbindSuccess,
|
|
167
|
-
unbindFailed,
|
|
168
|
-
bindSuccess,
|
|
169
|
-
bindFailed,
|
|
170
|
-
connectingWallet,
|
|
171
|
-
signingMessage,
|
|
172
|
-
emptyIdentity,
|
|
173
|
-
linkEmailAccount,
|
|
174
|
-
pleaseEnterEmail,
|
|
175
|
-
pleaseEnterValidEmail,
|
|
176
|
-
verificationCode,
|
|
177
|
-
pleaseEnterCode,
|
|
178
|
-
pleaseEnterValidCode,
|
|
179
|
-
sendVerificationCode,
|
|
180
|
-
resendCode,
|
|
181
|
-
emailAlreadyLinked,
|
|
182
|
-
sendCodeSuccess,
|
|
183
|
-
sendCodeFailed,
|
|
184
|
-
columnTokenSymbol,
|
|
185
|
-
columnNetwork,
|
|
186
|
-
columnWithdrawable,
|
|
187
|
-
columnAction,
|
|
188
|
-
ok,
|
|
189
|
-
claimNft,
|
|
190
|
-
linked,
|
|
191
|
-
linkPlatformAccount,
|
|
192
|
-
withdrawCanceledMessage,
|
|
193
|
-
frozenTypeCampaign,
|
|
194
|
-
frozenTypeWithdraw,
|
|
195
|
-
frozenTypeReferral,
|
|
196
|
-
frozenTypeBenefit,
|
|
197
|
-
frozenTypeTgMiniApp,
|
|
198
|
-
frozenTypeMilestone,
|
|
199
|
-
loading,
|
|
200
|
-
error,
|
|
201
|
-
emptyRewards,
|
|
202
|
-
emptyActivityHistory,
|
|
203
|
-
emptyToken,
|
|
204
|
-
emptyNft,
|
|
205
|
-
noData,
|
|
206
|
-
claim,
|
|
207
|
-
claimedTxn,
|
|
208
|
-
manualDrop,
|
|
209
|
-
columnNft,
|
|
210
|
-
columnWhitelist,
|
|
211
|
-
columnDiscordRole,
|
|
212
|
-
columnTime,
|
|
213
|
-
columnStatus,
|
|
214
|
-
columnAmount,
|
|
215
|
-
walletNotBind
|
|
216
|
-
};
|
|
217
|
-
export {
|
|
218
|
-
activityName,
|
|
219
|
-
activityTime,
|
|
220
|
-
batchWithdraw,
|
|
221
|
-
bind,
|
|
222
|
-
bindFailed,
|
|
223
|
-
bindSocialTodo,
|
|
224
|
-
bindSuccess,
|
|
225
|
-
binding,
|
|
226
|
-
cancel,
|
|
227
|
-
claim,
|
|
228
|
-
claimNft,
|
|
229
|
-
claimedTxn,
|
|
230
|
-
close,
|
|
231
|
-
columnAction,
|
|
232
|
-
columnAmount,
|
|
233
|
-
columnDetail,
|
|
234
|
-
columnDiscordRole,
|
|
235
|
-
columnDuration,
|
|
236
|
-
columnNetwork,
|
|
237
|
-
columnNft,
|
|
238
|
-
columnStatus,
|
|
239
|
-
columnTime,
|
|
240
|
-
columnTokenSymbol,
|
|
241
|
-
columnWhitelist,
|
|
242
|
-
columnWithdrawable,
|
|
243
|
-
confirm,
|
|
244
|
-
confirmUnbind,
|
|
245
|
-
confirmWithdraw,
|
|
246
|
-
connectWallet,
|
|
247
|
-
connectingWallet,
|
|
248
|
-
ja as default,
|
|
249
|
-
emailAddress,
|
|
250
|
-
emailAlreadyLinked,
|
|
251
|
-
emptyActivityHistory,
|
|
252
|
-
emptyIdentity,
|
|
253
|
-
emptyNft,
|
|
254
|
-
emptyPoints,
|
|
255
|
-
emptyRewards,
|
|
256
|
-
emptyToken,
|
|
257
|
-
error,
|
|
258
|
-
frozenAssets,
|
|
259
|
-
frozenTypeBenefit,
|
|
260
|
-
frozenTypeCampaign,
|
|
261
|
-
frozenTypeMilestone,
|
|
262
|
-
frozenTypeReferral,
|
|
263
|
-
frozenTypeTgMiniApp,
|
|
264
|
-
frozenTypeWithdraw,
|
|
265
|
-
gasNotEnough,
|
|
266
|
-
kycWarning,
|
|
267
|
-
lastLoginMethod,
|
|
268
|
-
level,
|
|
269
|
-
linkEmailAccount,
|
|
270
|
-
linkPlatformAccount,
|
|
271
|
-
linked,
|
|
272
|
-
loadMore,
|
|
273
|
-
loading,
|
|
274
|
-
manualDrop,
|
|
275
|
-
next,
|
|
276
|
-
noData,
|
|
277
|
-
of,
|
|
278
|
-
ok,
|
|
279
|
-
page,
|
|
280
|
-
pendingWithdrawals,
|
|
281
|
-
pleaseEnterCode,
|
|
282
|
-
pleaseEnterEmail,
|
|
283
|
-
pleaseEnterValidCode,
|
|
284
|
-
pleaseEnterValidEmail,
|
|
285
|
-
pointsHistory,
|
|
286
|
-
previous,
|
|
287
|
-
resend,
|
|
288
|
-
resendCode,
|
|
289
|
-
retry,
|
|
290
|
-
rewardDiscordRole,
|
|
291
|
-
rewardNft,
|
|
292
|
-
rewardPoints,
|
|
293
|
-
rewardToken,
|
|
294
|
-
rewardWhitelist,
|
|
295
|
-
rewardXpLevel,
|
|
296
|
-
sendCodeFailed,
|
|
297
|
-
sendCodeSuccess,
|
|
298
|
-
sendVerificationCode,
|
|
299
|
-
showing,
|
|
300
|
-
signingMessage,
|
|
301
|
-
socialAccounts,
|
|
302
|
-
tabActivityHistory,
|
|
303
|
-
tabIdentity,
|
|
304
|
-
tabMyRewards,
|
|
305
|
-
tokenHistory,
|
|
306
|
-
totalPoints,
|
|
307
|
-
totalXp,
|
|
308
|
-
unbind,
|
|
309
|
-
unbindCooldown,
|
|
310
|
-
unbindFailed,
|
|
311
|
-
unbindSuccess,
|
|
312
|
-
unbindWarning,
|
|
313
|
-
unbinding,
|
|
314
|
-
verificationCode,
|
|
315
|
-
walletAddresses,
|
|
316
|
-
walletNotBind,
|
|
317
|
-
withdraw,
|
|
318
|
-
withdrawCanceled,
|
|
319
|
-
withdrawCanceledMessage,
|
|
320
|
-
withdrawConfirm,
|
|
321
|
-
withdrawSuccess,
|
|
322
|
-
withdrawableAssets,
|
|
323
|
-
withdrawing,
|
|
324
|
-
xpHistory,
|
|
325
|
-
xpToNextLevel
|
|
326
|
-
};
|