index.vue 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308
  1. <template>
  2. <div class="app-container">
  3. <div class="app-container-head">
  4. <div class="app-container-head-left">
  5. <div class="app-container-head-left-item">
  6. <div class="app-container-head-left-item-count">
  7. {{ head.all }}
  8. </div>
  9. <div class="app-container-head-left-item-name">
  10. 所有
  11. </div>
  12. </div>
  13. <div class="app-container-head-left-divider"/>
  14. <div class="app-container-head-left-item">
  15. <div class="app-container-head-left-item-count">
  16. {{ head.bulk }}
  17. </div>
  18. <div class="app-container-head-left-item-name">
  19. 批处理账户
  20. </div>
  21. </div>
  22. <div class="app-container-head-left-divider"/>
  23. <div class="app-container-head-left-item">
  24. <div class="app-container-head-left-item-count">
  25. {{ head.boutique }}
  26. </div>
  27. <div class="app-container-head-left-item-name">
  28. 精品账户
  29. </div>
  30. </div>
  31. </div>
  32. <div class="app-container-head-right">
  33. <div class="app-container-head-right-button1">
  34. 导出地址
  35. </div>
  36. <div class="app-container-head-right-button1">
  37. 下载 KeyStore
  38. </div>
  39. <div class="app-container-head-right-button1" @click="drawerImport = true">
  40. <img src="../../assets/address/upload.svg" alt="upload">
  41. 导入
  42. </div>
  43. <div class="app-container-head-right-button2" @click="drawerAddress = true">
  44. <img src="../../assets/address/eyeglasses.svg" alt="eyeglasses">
  45. 观察地址
  46. </div>
  47. </div>
  48. </div>
  49. <div class="app-container-table">
  50. <div class="app-container-table-title">
  51. <div class="app-container-table-title-left">
  52. 地址列表
  53. </div>
  54. <div class="app-container-table-title-right">
  55. 总计数量: {{table.totalNumber}}
  56. </div>
  57. </div>
  58. <div class="app-container-table-select">
  59. <div @click="table.walletNameGroupIndex = index" v-for="(item,index) in table.walletNameGroup" :class="index === table.walletNameGroupIndex ? 'app-container-table-select-item-active' : 'app-container-table-select-item'">
  60. {{item}}
  61. </div>
  62. </div>
  63. <div class="app-container-table-screening">
  64. <div class="app-container-table-screening-item">
  65. 时间
  66. <img src="../../assets/address/unfold_more.svg" alt="unfold_more">
  67. </div>
  68. <div class="app-container-table-screening-item">
  69. Gas消耗
  70. <img src="../../assets/address/unfold_more.svg" alt="unfold_more">
  71. </div>
  72. </div>
  73. <div class="app-container-table-main">
  74. <el-table
  75. :data="tableData"
  76. style="width: 100%">
  77. <el-table-column
  78. label="账户地址"
  79. width="490">
  80. <template v-slot="scope">
  81. <div class="accountAddress">
  82. <div class="img">
  83. </div>
  84. <div class="walletName">
  85. 钱包名称
  86. </div>
  87. <div class="walletAddress">
  88. 0x00581a605...ca48ddebe60b2a4ca4da
  89. </div>
  90. </div>
  91. </template>
  92. </el-table-column>
  93. <el-table-column
  94. label="Gas消耗/USDT"
  95. width="410">
  96. <template v-slot="scope">
  97. <div class="gas">
  98. 783239.22
  99. </div>
  100. </template>
  101. </el-table-column>
  102. <el-table-column
  103. label="type"
  104. width="255">
  105. <template v-slot="scope">
  106. <div class="type">
  107. <div class="bulk" v-if="table.walletNameGroupIndex !== 0">
  108. <img src="../../assets/address/precision_manufacturing.svg" alt="precision_manufacturing">
  109. 批量3
  110. </div>
  111. <div class="boutique" v-if="table.walletNameGroupIndex === 0">
  112. <img src="../../assets/address/award_star.svg" alt="award_star">
  113. 精品号
  114. </div>
  115. </div>
  116. </template>
  117. </el-table-column>
  118. <el-table-column
  119. label="最后操作时间"
  120. width="180">
  121. <template v-slot="scope">
  122. <div class="lastTime">
  123. 19点20分
  124. </div>
  125. </template>
  126. </el-table-column>
  127. <el-table-column align="right">
  128. <template v-slot="scope">
  129. <div class="view" @click="drawerView = true">
  130. 查看
  131. </div>
  132. </template>
  133. </el-table-column>
  134. </el-table>
  135. </div>
  136. </div>
  137. <el-drawer
  138. :visible.sync="drawerView"
  139. :with-header="false">
  140. <div class="drawerView-container">
  141. <div class="drawerView-container-head">
  142. <div class="drawerView-container-title">
  143. 钱包名称
  144. </div>
  145. <div class="drawerView-container-walletAddress">
  146. 0x00581a605...ca48ddebe60b2a4ca4da
  147. </div>
  148. <div class="drawerView-container-statistics">
  149. <div class="drawerView-container-statistics-item">
  150. <div class="drawerView-container-statistics-item-title">
  151. 累计花费
  152. </div>
  153. <div class="drawerView-container-statistics-item-amounts">
  154. <span class="number">89.11</span>
  155. <span class="currency">USDT</span>
  156. </div>
  157. </div>
  158. <div class="drawerView-container-statistics-item">
  159. <div class="drawerView-container-statistics-item-title">
  160. 剩余本金
  161. </div>
  162. <div class="drawerView-container-statistics-item-amounts">
  163. <span class="number">700.00</span>
  164. <span class="currency">USDT</span>
  165. </div>
  166. </div>
  167. </div>
  168. </div>
  169. <div class="drawerView-container-main">
  170. <div class="drawerView-container-title">
  171. 钱包活动
  172. </div>
  173. <div class="drawerView-container-total">
  174. 总计钱包: 222
  175. </div>
  176. <div class="drawerView-container-table-screening">
  177. <div class="drawerView-container-table-screening-item">
  178. 钱包活动
  179. <img src="../../assets/address/filter_list.svg" alt="filter_list">
  180. </div>
  181. <div class="drawerView-container-table-screening-item">
  182. 时间
  183. <img src="../../assets/address/filter_list.svg" alt="filter_list">
  184. </div>
  185. <div class="drawerView-container-table-screening-item">
  186. 余额
  187. <img src="../../assets/address/unfold_more.svg" alt="unfold_more">
  188. </div>
  189. </div>
  190. <div class="drawerView-container-table-main">
  191. <div v-for="item in drawerViewTableData" class="drawerView-container-table-main-item">
  192. <div class="activity">
  193. <div class="activity-item" v-if="item.activity === 'Mint'" style="background: #F2C94C;">
  194. {{item.activity}}
  195. </div>
  196. <div class="activity-item" v-if="item.activity === 'Swap'" style="background: #6FCF97;">
  197. {{item.activity}}
  198. </div>
  199. </div>
  200. <div class="time">
  201. {{item.time}}
  202. </div>
  203. <div class="balance">
  204. {{item.balance}}
  205. </div>
  206. <div class="link">
  207. 详情
  208. </div>
  209. </div>
  210. </div>
  211. </div>
  212. <div class="drawerView-container-footer">
  213. <div class="pagination">
  214. <el-pagination
  215. small
  216. layout="prev, pager, next"
  217. :total="1000">
  218. </el-pagination>
  219. </div>
  220. <div class="manageAccount">
  221. <img src="../../assets/address/page_info.svg" alt="page_info">
  222. 管理账号
  223. </div>
  224. <div class="disassociation">
  225. <img src="../../assets/address/link_off.svg" alt="link_off">
  226. 取消关联
  227. </div>
  228. </div>
  229. </div>
  230. </el-drawer>
  231. <el-drawer
  232. :visible.sync="drawerAddress"
  233. :with-header="false">
  234. <div class="drawerAddress-container">
  235. <div class="drawerAddress-container-head">
  236. <div class="drawerAddress-container-head-left">
  237. <div class="drawerAddress-container-title">
  238. 添加地址
  239. </div>
  240. <div class="drawerAddress-container-tip">
  241. 添加观察地址
  242. </div>
  243. </div>
  244. <div class="drawerAddress-container-head-right">
  245. <div class="cancellation">
  246. <img src="../../assets/address/close.svg" alt="close">
  247. 取消
  248. </div>
  249. <div class="complete">
  250. <img src="../../assets/address/done_all.svg" alt="done_all">
  251. 完成
  252. </div>
  253. </div>
  254. </div>
  255. <div class="drawerAddress-container-main">
  256. <div class="item" v-for="(item,index) in addressArr">
  257. <div class="title">
  258. <div class="name">
  259. 钱包地址
  260. </div>
  261. <div class="delete">
  262. <img src="../../assets/address/delete.svg" alt="delete">
  263. 删除
  264. </div>
  265. </div>
  266. <div class="input">
  267. <el-select v-model="value" placeholder="选择公链">
  268. <el-option
  269. v-for="item in options"
  270. :key="item.value"
  271. :label="item.label"
  272. :value="item.value">
  273. </el-option>
  274. </el-select>
  275. <el-input v-model="input" placeholder="输入钱包名称"></el-input>
  276. </div>
  277. <div class="input">
  278. <el-select v-model="value" placeholder="选择类型">
  279. <el-option
  280. v-for="item in options"
  281. :key="item.value"
  282. :label="item.label"
  283. :value="item.value">
  284. </el-option>
  285. </el-select>
  286. <el-input v-model="input" placeholder="输入钱包地址"></el-input>
  287. </div>
  288. </div>
  289. <div class="addAddress" @click="addressArr.push({})">
  290. <img src="../../assets/address/add_circle.svg" alt="add_circle">
  291. 新增观察地址
  292. </div>
  293. </div>
  294. </div>
  295. </el-drawer>
  296. <el-drawer
  297. :visible.sync="drawerImport"
  298. :with-header="false">
  299. <div class="drawerImport-container">
  300. <div class="drawerImport-container-head">
  301. <div class="drawerImport-container-head-left">
  302. <div class="drawerImport-container-title">
  303. 导入钱包地址
  304. </div>
  305. <div class="drawerImport-container-tip">
  306. 仅支持Keystore导入
  307. </div>
  308. </div>
  309. </div>
  310. <div class="drawerImport-container-main" v-if="!completeGeneration">
  311. <div class="select">
  312. <div :class="drawerImportSelect === 0 ? 'select-item-active' : 'select-item'" @click="drawerImportSelect = 0">
  313. 导入钱包
  314. </div>
  315. <div :class="drawerImportSelect === 1 ? 'select-item-active' : 'select-item'" @click="drawerImportSelect = 1">
  316. 创建钱包
  317. </div>
  318. </div>
  319. <div class="importWallet" v-if="drawerImportSelect === 0">
  320. <div class="upload">
  321. <el-upload
  322. class="upload-demo"
  323. drag
  324. action="https://jsonplaceholder.typicode.com/posts/"
  325. multiple>
  326. <i class="el-icon-upload"></i>
  327. <div class="el-upload__text">将Keystore文件拖到此处,或<em>上传文件</em></div>
  328. </el-upload>
  329. </div>
  330. <div class="inputTitle">
  331. 批量钱包名称
  332. </div>
  333. <div class="batchWalletName">
  334. <el-input v-model="input" placeholder="选择/输入批量钱包名称"></el-input>
  335. <el-select v-model="value" placeholder="选择类型">
  336. <el-option
  337. v-for="item in options"
  338. :key="item.value"
  339. :label="item.label"
  340. :value="item.value">
  341. </el-option>
  342. </el-select>
  343. </div>
  344. <div class="inputTitle">
  345. 钱包密码
  346. </div>
  347. <el-input v-model="input" placeholder="设置钱包密码"></el-input>
  348. <div class="confirm">
  349. <img src="../../assets/address/file_download_done.svg" alt="file_download_done">
  350. 确认导入
  351. </div>
  352. </div>
  353. <div class="createWallet" v-if="drawerImportSelect === 1">
  354. <div class="inputTitle">
  355. 批量钱包名称
  356. </div>
  357. <el-input v-model="input" placeholder="输入批量钱包名称"></el-input>
  358. <div class="inputBox">
  359. <div>
  360. <div class="inputTitle">
  361. 选择公链
  362. </div>
  363. <el-select style="width: 280px" v-model="value" placeholder="选择类型">
  364. <el-option
  365. v-for="item in options"
  366. :key="item.value"
  367. :label="item.label"
  368. :value="item.value">
  369. </el-option>
  370. </el-select>
  371. </div>
  372. <div>
  373. <div class="inputTitle">
  374. 生成数量
  375. </div>
  376. <el-input style="width: 230px" v-model="input" placeholder="输入生成数量"></el-input>
  377. </div>
  378. </div>
  379. <div class="inputBox">
  380. <div>
  381. <div class="inputTitle">
  382. 钱包密码
  383. </div>
  384. <el-input style="width: 280px" v-model="input" placeholder="设置钱包密码"></el-input>
  385. </div>
  386. <div>
  387. <div class="inputTitle">
  388. 确认钱包密码
  389. </div>
  390. <el-input style="width: 230px" v-model="input" placeholder="设置钱包密码"></el-input>
  391. </div>
  392. </div>
  393. <div class="confirm" @click="completeGeneration = true">
  394. <img src="../../assets/address/Stroke-2.svg" alt="Stroke">
  395. 开始生成
  396. </div>
  397. <div class="tip">
  398. <div class="title">
  399. <img src="../../assets/address/tips_and_updates.svg" alt="tips_and_updates">
  400. 提示
  401. </div>
  402. <div class="description">
  403. 此密码为您账户钱包的 Keystore 密码,请妥善保管,
  404. 系统无法为您找回。
  405. </div>
  406. </div>
  407. </div>
  408. </div>
  409. <div class="drawerImport-container-main" v-if="completeGeneration">
  410. <div class="completeTip">
  411. <img src="../../assets/address/Rectangle.png" alt="Rectangle">
  412. <div class="description">
  413. <div class="address">
  414. 成功生成 100 个钱包地址
  415. </div>
  416. <div class="tip">
  417. 请牢记您的 Keystore 文件及密码,系统无法帮你找回
  418. </div>
  419. </div>
  420. </div>
  421. <div class="addressListBox">
  422. <div class="addressList">
  423. <div class="addressList-item" v-for="(item,index) in addressList">
  424. <div class="name">
  425. Address-{{index+1}}
  426. </div>
  427. <div class="address">
  428. {{item}}
  429. <img src="../../assets/address/content_copy.svg" alt="content_copy">
  430. </div>
  431. </div>
  432. <div class="pagination">
  433. <el-pagination
  434. small
  435. layout="prev, pager, next"
  436. :total="1000">
  437. </el-pagination>
  438. </div>
  439. </div>
  440. </div>
  441. </div>
  442. <div class="drawerImport-container-footer" v-if="completeGeneration">
  443. <div class="exportAddress">
  444. <img src="../../assets/address/upload.svg" alt="upload">
  445. 导出地址
  446. </div>
  447. <div class="download">
  448. <img src="../../assets/address/download.svg" alt="download">
  449. 下载Keystore
  450. </div>
  451. </div>
  452. </div>
  453. </el-drawer>
  454. </div>
  455. </template>
  456. <script>
  457. export default {
  458. data() {
  459. return {
  460. head: {
  461. all:85,
  462. bulk:85,
  463. boutique:85
  464. },
  465. table:{
  466. totalNumber:22222,
  467. walletNameGroup:['精品号','钱包组名称','钱包组名称'],
  468. walletNameGroupIndex:0,
  469. },
  470. tableData: [
  471. {
  472. projectName:'Zk',
  473. totalNumber:5,
  474. completedNumber:2,
  475. status:0,
  476. gas:1,
  477. officialWebsite:"https://nytimes.com",
  478. startTime:'16/08/2013',
  479. endTime:'16/08/2013'
  480. }, {
  481. projectName:'LayerZero',
  482. totalNumber:4,
  483. completedNumber:1,
  484. status:1,
  485. gas:23,
  486. officialWebsite:"https://nytimes.com",
  487. startTime:'16/08/2013',
  488. endTime:'16/08/2013'
  489. }, {
  490. projectName:'StarkNet',
  491. totalNumber:1,
  492. completedNumber:0,
  493. status:2,
  494. gas:23,
  495. officialWebsite:"https://nytimes.com",
  496. startTime:'16/08/2013',
  497. endTime:'16/08/2013'
  498. }, {
  499. projectName:'Sei',
  500. totalNumber:3,
  501. completedNumber:2,
  502. status:3,
  503. gas:23,
  504. officialWebsite:"https://nytimes.com",
  505. startTime:'16/08/2013',
  506. endTime:'16/08/2013'
  507. }
  508. ],
  509. drawerView:false,
  510. drawerViewTableData:[
  511. {
  512. activity:'Mint',
  513. time:'06:42',
  514. txId:'',
  515. balance:89.23
  516. },
  517. {
  518. activity:'Swap',
  519. time:'06:42',
  520. txId:'',
  521. balance:89.23
  522. },
  523. {
  524. activity:'Mint',
  525. time:'06:42',
  526. txId:'',
  527. balance:89.23
  528. },
  529. {
  530. activity:'Swap',
  531. time:'06:42',
  532. txId:'',
  533. balance:89.23
  534. },
  535. {
  536. activity:'Swap',
  537. time:'06:42',
  538. txId:'',
  539. balance:89.23
  540. },
  541. ],
  542. drawerAddress:false,
  543. addressArr:[
  544. {},
  545. {}
  546. ],
  547. options: [{
  548. value: '选项1',
  549. label: 'ETH'
  550. }],
  551. value: '',
  552. input: '',
  553. drawerImport:false,
  554. drawerImportSelect:0,
  555. completeGeneration:false,
  556. addressList:[
  557. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  558. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  559. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  560. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  561. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  562. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  563. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  564. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  565. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  566. '0xc63988ae669C41125ecB4e8113f4D0eF21874637',
  567. ]
  568. }
  569. },
  570. methods: {
  571. }
  572. }
  573. </script>
  574. <style lang="scss" scoped>
  575. .app-container{
  576. .app-container-head{
  577. display: flex;
  578. justify-content: space-between;
  579. align-items: center;
  580. .app-container-head-left{
  581. display: flex;
  582. justify-content: space-between;
  583. align-items: center;
  584. gap:60px;
  585. .app-container-head-left-item{
  586. display: flex;
  587. flex-direction: column;
  588. gap:8px;
  589. .app-container-head-left-item-count{
  590. font-weight: 700;
  591. font-size: 21px;
  592. line-height: 28px;
  593. color: #181818;
  594. }
  595. .app-container-head-left-item-name{
  596. font-weight: 700;
  597. font-size: 12px;
  598. line-height: 16px;
  599. color: #8e8f91;
  600. }
  601. }
  602. .app-container-head-left-divider{
  603. width: 1px;
  604. height: 50px;
  605. border-right:1px solid #e4e6ea;
  606. }
  607. }
  608. .app-container-head-right{
  609. display: flex;
  610. align-items: center;
  611. gap:24px;
  612. .app-container-head-right-button1{
  613. width: 148px;
  614. height: 52px;
  615. display: flex;
  616. flex-direction: row;
  617. justify-content: center;
  618. align-items: center;
  619. gap: 4px;
  620. background: #f9fbff;
  621. border-radius: 10px;
  622. font-weight: 700;
  623. font-size: 15px;
  624. line-height: 20px;
  625. color: #2980ff;
  626. border: 1px solid #2980FF;
  627. cursor: pointer;
  628. }
  629. .app-container-head-right-button2{
  630. width: 148px;
  631. height: 52px;
  632. display: flex;
  633. flex-direction: row;
  634. justify-content: center;
  635. align-items: center;
  636. gap: 4px;
  637. background: #4A76FF;
  638. border-radius: 10px;
  639. font-weight: 700;
  640. font-size: 15px;
  641. line-height: 20px;
  642. color: #FFFFFF;
  643. cursor: pointer;
  644. }
  645. }
  646. }
  647. .app-container-table{
  648. margin-top: 80px;
  649. .app-container-table-title{
  650. display: flex;
  651. align-items: center;
  652. justify-content: space-between;
  653. .app-container-table-title-left{
  654. font-weight: 700;
  655. font-size: 21px;
  656. line-height: 28px;
  657. color: #181818;
  658. }
  659. .app-container-table-title-right{
  660. font-weight: 400;
  661. font-size: 21px;
  662. line-height: 28px;
  663. color: #898a8c;
  664. }
  665. }
  666. .app-container-table-select{
  667. display: flex;
  668. align-items: center;
  669. gap:56px;
  670. border-bottom: 4px solid #f2f4f7;
  671. width: 100%;
  672. margin-top: 28px;
  673. .app-container-table-select-item{
  674. font-weight: 400;
  675. font-size: 17px;
  676. line-height: 22px;
  677. color: #ABABAB;
  678. padding-bottom: 16px;
  679. margin-bottom: -4px;
  680. border-bottom: 4px solid #f2f4f7;
  681. cursor: pointer;
  682. }
  683. .app-container-table-select-item-active{
  684. font-weight: 700;
  685. font-size: 17px;
  686. line-height: 22px;
  687. color: #2980FF;
  688. padding-bottom: 16px;
  689. margin-bottom: -4px;
  690. border-bottom: 4px solid #2980FF;
  691. cursor: pointer;
  692. }
  693. }
  694. .app-container-table-screening{
  695. display: flex;
  696. align-items: center;
  697. gap:100px;
  698. padding: 20px 0;
  699. margin: 40px 0;
  700. border-top: 1px solid #f5f5f5;
  701. border-bottom: 1px solid #f5f5f5;
  702. .app-container-table-screening-item{
  703. display: flex;
  704. align-items: center;
  705. gap:6px;
  706. font-weight: 400;
  707. font-size: 15px;
  708. line-height: 20px;
  709. color: #4d4d4e;
  710. }
  711. }
  712. .app-container-table-main {
  713. .accountAddress{
  714. display: flex;
  715. align-items: center;
  716. gap:12px;
  717. margin-left: 14px;
  718. .img{
  719. width: 26px;
  720. height: 26px;
  721. background: black;
  722. border-radius: 50%;
  723. }
  724. .walletName{
  725. font-weight: 700;
  726. font-size: 15px;
  727. line-height: 20px;
  728. color: #181818;
  729. }
  730. .walletAddress{
  731. font-weight: 400;
  732. font-size: 15px;
  733. line-height: 20px;
  734. color: #181818;
  735. }
  736. }
  737. .gas{
  738. font-weight: 700;
  739. font-size: 17px;
  740. line-height: 22px;
  741. color: #2980FF;
  742. }
  743. .type{
  744. .bulk{
  745. width: fit-content;
  746. display: flex;
  747. align-items: center;
  748. justify-content: center;
  749. gap:4px;
  750. padding: 5px 10px;
  751. border: 1px solid #E0E0E0;
  752. border-radius: 30px;
  753. background: #edf2ff;
  754. font-weight: 400;
  755. font-size: 12px;
  756. line-height: 16px;
  757. color: #222222;
  758. }
  759. .boutique {
  760. width: fit-content;
  761. display: flex;
  762. align-items: center;
  763. justify-content: center;
  764. gap:4px;
  765. padding: 5px 10px;
  766. border-radius: 30px;
  767. background: #222222;
  768. font-weight: 700;
  769. font-size: 12px;
  770. line-height: 16px;
  771. color: #F2C94C;
  772. }
  773. }
  774. .lastTime{
  775. font-weight: 400;
  776. font-size: 14px;
  777. line-height: 18px;
  778. color: #898a8c;
  779. }
  780. .view{
  781. font-weight: 700;
  782. font-size: 14px;
  783. line-height: 18px;
  784. color: #2980FF;
  785. margin-right: 14px;
  786. cursor: pointer;
  787. }
  788. }
  789. }
  790. .drawerView-container{
  791. display: flex;
  792. flex-direction: column;
  793. height: 100vh;
  794. .drawerView-container-head{
  795. padding: 56px 40px;
  796. background: #FFFFFF;
  797. .drawerView-container-title{
  798. font-weight: 700;
  799. font-size: 21px;
  800. line-height: 28px;
  801. color: #181818;
  802. margin-bottom: 8px;
  803. }
  804. .drawerView-container-walletAddress{
  805. font-weight: 400;
  806. font-size: 12px;
  807. line-height: 16px;
  808. color: #94c0ff;
  809. margin-bottom: 24px;
  810. }
  811. .drawerView-container-statistics{
  812. display: flex;
  813. align-items: center;
  814. gap:80px;
  815. .drawerView-container-statistics-item{
  816. display: flex;
  817. flex-direction: column;
  818. gap: 4px;
  819. .drawerView-container-statistics-item-title{
  820. font-weight: 400;
  821. font-size: 15px;
  822. line-height: 20px;
  823. color: #8c8c8c;
  824. }
  825. .drawerView-container-statistics-item-amounts{
  826. font-weight: 700;
  827. color: #222222;
  828. .number{
  829. font-size: 17px;
  830. line-height: 22px;
  831. }
  832. .currency{
  833. font-size: 12px;
  834. line-height: 16px;
  835. }
  836. }
  837. }
  838. }
  839. }
  840. .drawerView-container-main{
  841. padding: 36px 40px;
  842. background: #f9fbff;
  843. flex-grow: 1;
  844. .drawerView-container-title{
  845. font-weight: 700;
  846. font-size: 21px;
  847. line-height: 28px;
  848. color: #181818;
  849. margin-bottom: 8px;
  850. }
  851. .drawerView-container-total{
  852. font-weight: 700;
  853. font-size: 12px;
  854. line-height: 16px;
  855. color: #8e8f91;
  856. }
  857. .drawerView-container-table-screening{
  858. margin-top: 28px;
  859. margin-bottom: 24px;
  860. height: 52px;
  861. display: flex;
  862. align-items: center;
  863. gap:120px;
  864. border-bottom: 1px solid #f5f5f5;
  865. border-top: 1px solid #f5f5f5;
  866. .drawerView-container-table-screening-item{
  867. display: flex;
  868. align-items: center;
  869. gap:6px;
  870. font-weight: 400;
  871. font-size: 15px;
  872. line-height: 20px;
  873. color: #4d4d4e;
  874. }
  875. }
  876. .drawerView-container-table-main{
  877. display: flex;
  878. flex-direction: column;
  879. gap:16px;
  880. .drawerView-container-table-main-item{
  881. display: flex;
  882. align-items: center;
  883. height: 30px;
  884. .activity{
  885. width: 210px;
  886. .activity-item{
  887. width: 72px;
  888. height: 30px;
  889. border-radius: 30px;
  890. font-weight: 700;
  891. font-size: 14px;
  892. line-height: 18px;
  893. color: #222222;
  894. display: flex;
  895. justify-content: center;
  896. align-items: center;
  897. }
  898. }
  899. .time{
  900. font-weight: 400;
  901. font-size: 15px;
  902. line-height: 20px;
  903. color: #ABABAB;
  904. width: 200px;
  905. }
  906. .link{
  907. font-weight: 400;
  908. font-size: 15px;
  909. line-height: 20px;
  910. color: #2980FF;
  911. white-space: nowrap;
  912. }
  913. .balance{
  914. font-weight: 700;
  915. font-size: 15px;
  916. line-height: 20px;
  917. color: #222222;
  918. width: 120px;
  919. }
  920. }
  921. }
  922. }
  923. .drawerView-container-footer {
  924. height: 84px;
  925. padding: 30px 10px;
  926. display: flex;
  927. align-items: center;
  928. justify-content: space-around;
  929. .pagination{
  930. width: 250px;
  931. }
  932. .manageAccount{
  933. display: flex;
  934. align-items: center;
  935. gap:12px;
  936. font-weight: 700;
  937. font-size: 17px;
  938. line-height: 22px;
  939. color: #222222;
  940. }
  941. .disassociation{
  942. display: flex;
  943. align-items: center;
  944. gap:12px;
  945. font-weight: 700;
  946. font-size: 17px;
  947. line-height: 22px;
  948. color: #EB5757;
  949. }
  950. }
  951. }
  952. .drawerAddress-container{
  953. display: flex;
  954. flex-direction: column;
  955. height: 100vh;
  956. .drawerAddress-container-head{
  957. padding: 56px 40px;
  958. background: #FFFFFF;
  959. display: flex;
  960. align-items: center;
  961. justify-content: space-between;
  962. .drawerAddress-container-head-left{
  963. .drawerAddress-container-title{
  964. font-weight: 700;
  965. font-size: 21px;
  966. line-height: 28px;
  967. color: #181818;
  968. margin-bottom: 8px;
  969. }
  970. .drawerAddress-container-tip{
  971. font-weight: 700;
  972. font-size: 12px;
  973. line-height: 16px;
  974. color: #919191;
  975. }
  976. }
  977. .drawerAddress-container-head-right{
  978. display: flex;
  979. align-items: center;
  980. gap:48px;
  981. .cancellation{
  982. width: 118px;
  983. height: 52px;
  984. background: #E0E0E0;
  985. border-radius: 10px;
  986. gap: 4px;
  987. display: flex;
  988. align-items: center;
  989. justify-content: center;
  990. font-weight: 700;
  991. font-size: 15px;
  992. line-height: 20px;
  993. color: #828282;
  994. }
  995. .complete{
  996. width: 118px;
  997. height: 52px;
  998. border: 2px solid #4A76FF;
  999. border-radius: 10px;
  1000. gap:4px;
  1001. display: flex;
  1002. align-items: center;
  1003. justify-content: center;
  1004. font-weight: 700;
  1005. font-size: 15px;
  1006. line-height: 20px;
  1007. color: #2980FF;
  1008. }
  1009. }
  1010. }
  1011. .drawerAddress-container-main{
  1012. padding: 36px 40px;
  1013. background: #f9fbff;
  1014. flex-grow: 1;
  1015. display: flex;
  1016. flex-direction: column;
  1017. gap:20px;
  1018. .item{
  1019. display: flex;
  1020. flex-direction: column;
  1021. gap:12px;
  1022. .title{
  1023. display: flex;
  1024. align-items: center;
  1025. justify-content: space-between;
  1026. .name{
  1027. font-weight: 400;
  1028. font-size: 17px;
  1029. line-height: 22px;
  1030. color: #181818;
  1031. }
  1032. .delete{
  1033. display: flex;
  1034. align-items: center;
  1035. gap:4px;
  1036. font-weight: 700;
  1037. font-size: 15px;
  1038. line-height: 20px;
  1039. color: #EB5757;
  1040. }
  1041. }
  1042. .input{
  1043. display: flex;
  1044. align-items: center;
  1045. gap:24px;
  1046. }
  1047. }
  1048. .addAddress{
  1049. display: flex;
  1050. align-items: center;
  1051. gap:12px;
  1052. font-weight: 700;
  1053. font-size: 17px;
  1054. line-height: 22px;
  1055. color: #2980FF;
  1056. }
  1057. }
  1058. }
  1059. .drawerImport-container{
  1060. display: flex;
  1061. flex-direction: column;
  1062. height: 100vh;
  1063. .drawerImport-container-head{
  1064. padding: 56px 40px;
  1065. background: #FFFFFF;
  1066. display: flex;
  1067. align-items: center;
  1068. justify-content: space-between;
  1069. .drawerImport-container-head-left{
  1070. .drawerImport-container-title{
  1071. font-weight: 700;
  1072. font-size: 21px;
  1073. line-height: 28px;
  1074. color: #181818;
  1075. margin-bottom: 8px;
  1076. }
  1077. .drawerImport-container-tip{
  1078. font-weight: 400;
  1079. font-size: 12px;
  1080. line-height: 16px;
  1081. color: #919191;
  1082. }
  1083. }
  1084. }
  1085. .drawerImport-container-main{
  1086. padding: 36px 40px;
  1087. background: #f9fbff;
  1088. flex-grow: 1;
  1089. .select{
  1090. display: flex;
  1091. align-items: center;
  1092. gap:56px;
  1093. border-bottom: 4px solid #f2f4f7;
  1094. margin-bottom: 40px;
  1095. .select-item{
  1096. font-weight: 400;
  1097. font-size: 17px;
  1098. line-height: 22px;
  1099. color: #ABABAB;
  1100. padding-bottom: 16px;
  1101. margin-bottom: -4px;
  1102. border-bottom: 4px solid #f2f4f7;
  1103. cursor: pointer;
  1104. }
  1105. .select-item-active{
  1106. font-weight: 700;
  1107. font-size: 17px;
  1108. line-height: 22px;
  1109. color: #2980FF;
  1110. padding-bottom: 16px;
  1111. margin-bottom: -4px;
  1112. border-bottom: 4px solid #2980FF;
  1113. cursor: pointer;
  1114. }
  1115. }
  1116. .inputTitle{
  1117. font-weight: 500;
  1118. font-size: 14px;
  1119. line-height: 18px;
  1120. color: #383838;
  1121. margin-bottom: 12px;
  1122. }
  1123. .confirm{
  1124. width: 100%;
  1125. height: 53px;
  1126. background: #2980FF;
  1127. display: flex;
  1128. align-items: center;
  1129. justify-content: center;
  1130. gap:8px;
  1131. margin-top: 28px;
  1132. font-weight: 700;
  1133. font-size: 16px;
  1134. line-height: 21px;
  1135. color: #FFFFFF;
  1136. }
  1137. .importWallet{
  1138. .upload{
  1139. display: flex;
  1140. justify-content: center;
  1141. margin-bottom: 40px;
  1142. }
  1143. .batchWalletName{
  1144. display: flex;
  1145. align-items: center;
  1146. gap:20px;
  1147. margin-bottom: 28px;
  1148. }
  1149. }
  1150. .createWallet{
  1151. .inputBox{
  1152. display: flex;
  1153. gap:20px;
  1154. margin-top: 28px;
  1155. width: 100%;
  1156. }
  1157. .tip{
  1158. display: flex;
  1159. flex-direction: column;
  1160. gap:9px;
  1161. margin-top: 36px;
  1162. .title{
  1163. display: flex;
  1164. align-items: center;
  1165. gap:4px;
  1166. font-weight: 700;
  1167. font-size: 17px;
  1168. line-height: 22px;
  1169. color: #EB5757;
  1170. }
  1171. .description{
  1172. font-weight: 400;
  1173. font-size: 14px;
  1174. line-height: 18px;
  1175. color: #EB5757;
  1176. }
  1177. }
  1178. }
  1179. .completeTip{
  1180. display: flex;
  1181. align-items: center;
  1182. justify-content: center;
  1183. gap:8px;
  1184. .description{
  1185. display: flex;
  1186. flex-direction: column;
  1187. gap:8px;
  1188. .address{
  1189. font-weight: 700;
  1190. font-size: 21px;
  1191. line-height: 28px;
  1192. color: #181818;
  1193. }
  1194. .tip{
  1195. font-weight: 400;
  1196. font-size: 14px;
  1197. line-height: 18px;
  1198. color: #8e8f91;
  1199. }
  1200. }
  1201. }
  1202. .addressListBox{
  1203. display: flex;
  1204. flex-direction: column;
  1205. align-items: center;
  1206. justify-content: center;
  1207. margin-top: 20px;
  1208. .addressList{
  1209. width: 402px;
  1210. background: #FFFFFF;
  1211. border: 1px solid #F5F5F5;
  1212. border-radius: 6px;
  1213. padding: 20px 34px;
  1214. display: flex;
  1215. flex-direction: column;
  1216. gap:8px;
  1217. .addressList-item{
  1218. display: flex;
  1219. flex-direction: column;
  1220. gap:4px;
  1221. .name{
  1222. font-weight: 400;
  1223. font-size: 12px;
  1224. line-height: 16px;
  1225. color: #9c9c9c;
  1226. }
  1227. .address{
  1228. display: flex;
  1229. align-items: center;
  1230. justify-content: space-between;
  1231. font-weight: 500;
  1232. font-size: 12px;
  1233. line-height: 16px;
  1234. color: #212121;
  1235. }
  1236. }
  1237. .pagination{
  1238. display: flex;
  1239. justify-content: center;
  1240. margin-top: 20px;
  1241. }
  1242. }
  1243. }
  1244. }
  1245. .drawerImport-container-footer{
  1246. width: 100%;
  1247. height: 84px;
  1248. display: flex;
  1249. align-items: center;
  1250. justify-content: flex-end;
  1251. padding: 0 40px;
  1252. gap:60px;
  1253. .exportAddress{
  1254. display: flex;
  1255. align-items: center;
  1256. gap:12px;
  1257. font-weight: 700;
  1258. font-size: 17px;
  1259. line-height: 22px;
  1260. color: #2980FF;
  1261. }
  1262. .download{
  1263. display: flex;
  1264. align-items: center;
  1265. gap:12px;
  1266. font-weight: 700;
  1267. font-size: 17px;
  1268. line-height: 22px;
  1269. color: #222222;
  1270. }
  1271. }
  1272. }
  1273. }
  1274. ::v-deep .el-table__body{
  1275. -webkit-border-vertical-spacing: 20px;
  1276. background: #f9fbff;
  1277. }
  1278. ::v-deep .el-table__row{
  1279. border-radius: 10px;
  1280. background: white;
  1281. height: 58px;
  1282. }
  1283. ::v-deep .el-table__row>td{
  1284. border: none;
  1285. }
  1286. ::v-deep .el-table th.is-leaf{
  1287. border: none;
  1288. font-weight: 400;
  1289. font-size: 14px;
  1290. line-height: 18px;
  1291. color: #4d4d4e ;
  1292. }
  1293. ::v-deep .el-table::before{
  1294. height: 0;
  1295. }
  1296. </style>