From 6c393f8977ebb20529498f4a6865e305558ff647 Mon Sep 17 00:00:00 2001 From: lijianli Date: Mon, 17 Nov 2025 19:09:30 +0800 Subject: [PATCH 01/10] feat: add jovay circle colorful icon --- .../__snapshots__/index.test.tsx.snap | 645 ++++++++++-------- .../src/components/jovay-circle-colorful.tsx | 27 + .../icons/src/components/jovay-colorful.tsx | 2 +- packages/icons/src/index.ts | 1 + .../icons/src/svgs/jovay-circle-colorful.svg | 27 + packages/icons/src/svgs/jovay-colorful.svg | 4 +- 6 files changed, 412 insertions(+), 294 deletions(-) create mode 100644 packages/icons/src/components/jovay-circle-colorful.tsx create mode 100644 packages/icons/src/svgs/jovay-circle-colorful.svg diff --git a/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap b/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap index 9cbb03bd4..1d33e528a 100644 --- a/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap +++ b/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap @@ -24248,11 +24248,9 @@ exports[`Test Icons > should render all icons 391`] = ` + + +`; + +exports[`Test Icons > should render all icons 393`] = ` should render all icons 392`] = ` `; -exports[`Test Icons > should render all icons 393`] = ` +exports[`Test Icons > should render all icons 394`] = ` should render all icons 393`] = ` `; -exports[`Test Icons > should render all icons 394`] = ` +exports[`Test Icons > should render all icons 395`] = ` should render all icons 394`] = ` `; -exports[`Test Icons > should render all icons 395`] = ` +exports[`Test Icons > should render all icons 396`] = ` should render all icons 395`] = ` `; -exports[`Test Icons > should render all icons 396`] = ` +exports[`Test Icons > should render all icons 397`] = ` should render all icons 396`] = ` `; -exports[`Test Icons > should render all icons 397`] = ` +exports[`Test Icons > should render all icons 398`] = ` should render all icons 397`] = ` `; -exports[`Test Icons > should render all icons 398`] = ` +exports[`Test Icons > should render all icons 399`] = ` should render all icons 398`] = ` `; -exports[`Test Icons > should render all icons 399`] = ` +exports[`Test Icons > should render all icons 400`] = ` should render all icons 399`] = ` `; -exports[`Test Icons > should render all icons 400`] = ` +exports[`Test Icons > should render all icons 401`] = ` should render all icons 400`] = ` `; -exports[`Test Icons > should render all icons 401`] = ` +exports[`Test Icons > should render all icons 402`] = ` should render all icons 401`] = ` `; -exports[`Test Icons > should render all icons 402`] = ` +exports[`Test Icons > should render all icons 403`] = ` should render all icons 402`] = ` `; -exports[`Test Icons > should render all icons 403`] = ` +exports[`Test Icons > should render all icons 404`] = ` should render all icons 403`] = ` `; -exports[`Test Icons > should render all icons 404`] = ` +exports[`Test Icons > should render all icons 405`] = ` should render all icons 404`] = ` `; -exports[`Test Icons > should render all icons 405`] = ` +exports[`Test Icons > should render all icons 406`] = ` should render all icons 405`] = ` `; -exports[`Test Icons > should render all icons 406`] = ` +exports[`Test Icons > should render all icons 407`] = ` should render all icons 406`] = ` `; -exports[`Test Icons > should render all icons 407`] = ` +exports[`Test Icons > should render all icons 408`] = ` should render all icons 407`] = ` `; -exports[`Test Icons > should render all icons 408`] = ` +exports[`Test Icons > should render all icons 409`] = ` should render all icons 408`] = ` `; -exports[`Test Icons > should render all icons 409`] = ` +exports[`Test Icons > should render all icons 410`] = ` should render all icons 409`] = ` `; -exports[`Test Icons > should render all icons 410`] = ` +exports[`Test Icons > should render all icons 411`] = ` should render all icons 410`] = ` `; -exports[`Test Icons > should render all icons 411`] = ` +exports[`Test Icons > should render all icons 412`] = ` should render all icons 411`] = ` `; -exports[`Test Icons > should render all icons 412`] = ` +exports[`Test Icons > should render all icons 413`] = ` should render all icons 412`] = ` `; -exports[`Test Icons > should render all icons 413`] = ` +exports[`Test Icons > should render all icons 414`] = ` should render all icons 413`] = ` `; -exports[`Test Icons > should render all icons 414`] = ` +exports[`Test Icons > should render all icons 415`] = ` should render all icons 414`] = ` `; -exports[`Test Icons > should render all icons 415`] = ` +exports[`Test Icons > should render all icons 416`] = ` should render all icons 415`] = ` `; -exports[`Test Icons > should render all icons 416`] = ` +exports[`Test Icons > should render all icons 417`] = ` should render all icons 416`] = ` `; -exports[`Test Icons > should render all icons 417`] = ` +exports[`Test Icons > should render all icons 418`] = ` should render all icons 417`] = ` `; -exports[`Test Icons > should render all icons 418`] = ` +exports[`Test Icons > should render all icons 419`] = ` should render all icons 418`] = ` `; -exports[`Test Icons > should render all icons 419`] = ` +exports[`Test Icons > should render all icons 420`] = ` should render all icons 419`] = ` `; -exports[`Test Icons > should render all icons 420`] = ` +exports[`Test Icons > should render all icons 421`] = ` should render all icons 420`] = ` `; -exports[`Test Icons > should render all icons 421`] = ` +exports[`Test Icons > should render all icons 422`] = ` should render all icons 421`] = ` `; -exports[`Test Icons > should render all icons 422`] = ` +exports[`Test Icons > should render all icons 423`] = ` should render all icons 422`] = ` `; -exports[`Test Icons > should render all icons 423`] = ` +exports[`Test Icons > should render all icons 424`] = ` should render all icons 423`] = ` `; -exports[`Test Icons > should render all icons 424`] = ` +exports[`Test Icons > should render all icons 425`] = ` should render all icons 424`] = ` `; -exports[`Test Icons > should render all icons 425`] = ` +exports[`Test Icons > should render all icons 426`] = ` should render all icons 425`] = ` `; -exports[`Test Icons > should render all icons 426`] = ` +exports[`Test Icons > should render all icons 427`] = ` should render all icons 426`] = ` `; -exports[`Test Icons > should render all icons 427`] = ` +exports[`Test Icons > should render all icons 428`] = ` should render all icons 427`] = ` `; -exports[`Test Icons > should render all icons 428`] = ` +exports[`Test Icons > should render all icons 429`] = ` should render all icons 428`] = ` `; -exports[`Test Icons > should render all icons 429`] = ` +exports[`Test Icons > should render all icons 430`] = ` should render all icons 429`] = ` `; -exports[`Test Icons > should render all icons 430`] = ` +exports[`Test Icons > should render all icons 431`] = ` should render all icons 430`] = ` `; -exports[`Test Icons > should render all icons 431`] = ` +exports[`Test Icons > should render all icons 432`] = ` should render all icons 431`] = ` `; -exports[`Test Icons > should render all icons 432`] = ` +exports[`Test Icons > should render all icons 433`] = ` should render all icons 432`] = ` `; -exports[`Test Icons > should render all icons 433`] = ` +exports[`Test Icons > should render all icons 434`] = ` should render all icons 433`] = ` `; -exports[`Test Icons > should render all icons 434`] = ` +exports[`Test Icons > should render all icons 435`] = ` should render all icons 434`] = ` `; -exports[`Test Icons > should render all icons 435`] = ` +exports[`Test Icons > should render all icons 436`] = ` should render all icons 435`] = ` `; -exports[`Test Icons > should render all icons 436`] = ` +exports[`Test Icons > should render all icons 437`] = ` should render all icons 436`] = ` `; -exports[`Test Icons > should render all icons 437`] = ` +exports[`Test Icons > should render all icons 438`] = ` should render all icons 437`] = ` `; -exports[`Test Icons > should render all icons 438`] = ` +exports[`Test Icons > should render all icons 439`] = ` should render all icons 438`] = ` `; -exports[`Test Icons > should render all icons 439`] = ` +exports[`Test Icons > should render all icons 440`] = ` should render all icons 439`] = ` `; -exports[`Test Icons > should render all icons 440`] = ` +exports[`Test Icons > should render all icons 441`] = ` should render all icons 440`] = ` `; -exports[`Test Icons > should render all icons 441`] = ` +exports[`Test Icons > should render all icons 442`] = ` should render all icons 441`] = ` `; -exports[`Test Icons > should render all icons 442`] = ` +exports[`Test Icons > should render all icons 443`] = ` should render all icons 442`] = ` `; -exports[`Test Icons > should render all icons 443`] = ` +exports[`Test Icons > should render all icons 444`] = ` should render all icons 443`] = ` `; -exports[`Test Icons > should render all icons 444`] = ` +exports[`Test Icons > should render all icons 445`] = ` should render all icons 444`] = ` `; -exports[`Test Icons > should render all icons 445`] = ` +exports[`Test Icons > should render all icons 446`] = ` should render all icons 445`] = ` `; -exports[`Test Icons > should render all icons 446`] = ` +exports[`Test Icons > should render all icons 447`] = ` should render all icons 446`] = ` `; -exports[`Test Icons > should render all icons 447`] = ` +exports[`Test Icons > should render all icons 448`] = ` should render all icons 447`] = ` `; -exports[`Test Icons > should render all icons 448`] = ` +exports[`Test Icons > should render all icons 449`] = ` should render all icons 448`] = ` `; -exports[`Test Icons > should render all icons 449`] = ` +exports[`Test Icons > should render all icons 450`] = ` should render all icons 449`] = ` `; -exports[`Test Icons > should render all icons 450`] = ` +exports[`Test Icons > should render all icons 451`] = ` should render all icons 450`] = ` `; -exports[`Test Icons > should render all icons 451`] = ` +exports[`Test Icons > should render all icons 452`] = ` should render all icons 451`] = ` `; -exports[`Test Icons > should render all icons 452`] = ` +exports[`Test Icons > should render all icons 453`] = ` should render all icons 452`] = ` `; -exports[`Test Icons > should render all icons 453`] = ` +exports[`Test Icons > should render all icons 454`] = ` should render all icons 453`] = ` `; -exports[`Test Icons > should render all icons 454`] = ` +exports[`Test Icons > should render all icons 455`] = ` should render all icons 454`] = ` `; -exports[`Test Icons > should render all icons 455`] = ` +exports[`Test Icons > should render all icons 456`] = ` should render all icons 455`] = ` `; -exports[`Test Icons > should render all icons 456`] = ` +exports[`Test Icons > should render all icons 457`] = ` should render all icons 456`] = ` `; -exports[`Test Icons > should render all icons 457`] = ` +exports[`Test Icons > should render all icons 458`] = ` should render all icons 457`] = ` `; -exports[`Test Icons > should render all icons 458`] = ` +exports[`Test Icons > should render all icons 459`] = ` should render all icons 458`] = ` `; -exports[`Test Icons > should render all icons 459`] = ` +exports[`Test Icons > should render all icons 460`] = ` should render all icons 459`] = ` `; -exports[`Test Icons > should render all icons 460`] = ` +exports[`Test Icons > should render all icons 461`] = ` should render all icons 460`] = ` `; -exports[`Test Icons > should render all icons 461`] = ` +exports[`Test Icons > should render all icons 462`] = ` should render all icons 461`] = ` `; -exports[`Test Icons > should render all icons 462`] = ` +exports[`Test Icons > should render all icons 463`] = ` should render all icons 462`] = ` `; -exports[`Test Icons > should render all icons 463`] = ` +exports[`Test Icons > should render all icons 464`] = ` should render all icons 463`] = ` `; -exports[`Test Icons > should render all icons 464`] = ` +exports[`Test Icons > should render all icons 465`] = ` should render all icons 464`] = ` `; -exports[`Test Icons > should render all icons 465`] = ` +exports[`Test Icons > should render all icons 466`] = ` should render all icons 465`] = ` `; -exports[`Test Icons > should render all icons 466`] = ` +exports[`Test Icons > should render all icons 467`] = ` should render all icons 466`] = ` `; -exports[`Test Icons > should render all icons 467`] = ` +exports[`Test Icons > should render all icons 468`] = ` should render all icons 467`] = ` `; -exports[`Test Icons > should render all icons 468`] = ` +exports[`Test Icons > should render all icons 469`] = ` should render all icons 468`] = ` `; -exports[`Test Icons > should render all icons 469`] = ` +exports[`Test Icons > should render all icons 470`] = ` should render all icons 469`] = ` `; -exports[`Test Icons > should render all icons 470`] = ` +exports[`Test Icons > should render all icons 471`] = ` should render all icons 470`] = ` `; -exports[`Test Icons > should render all icons 471`] = ` +exports[`Test Icons > should render all icons 472`] = ` should render all icons 471`] = ` `; -exports[`Test Icons > should render all icons 472`] = ` +exports[`Test Icons > should render all icons 473`] = ` should render all icons 472`] = ` `; -exports[`Test Icons > should render all icons 473`] = ` +exports[`Test Icons > should render all icons 474`] = ` should render all icons 473`] = ` `; -exports[`Test Icons > should render all icons 474`] = ` +exports[`Test Icons > should render all icons 475`] = ` should render all icons 474`] = ` `; -exports[`Test Icons > should render all icons 475`] = ` +exports[`Test Icons > should render all icons 476`] = ` should render all icons 475`] = ` `; -exports[`Test Icons > should render all icons 476`] = ` +exports[`Test Icons > should render all icons 477`] = ` should render all icons 476`] = ` `; -exports[`Test Icons > should render all icons 477`] = ` +exports[`Test Icons > should render all icons 478`] = ` should render all icons 477`] = ` `; -exports[`Test Icons > should render all icons 478`] = ` +exports[`Test Icons > should render all icons 479`] = ` should render all icons 478`] = ` `; -exports[`Test Icons > should render all icons 479`] = ` +exports[`Test Icons > should render all icons 480`] = ` should render all icons 479`] = ` `; -exports[`Test Icons > should render all icons 480`] = ` +exports[`Test Icons > should render all icons 481`] = ` should render all icons 480`] = ` `; -exports[`Test Icons > should render all icons 481`] = ` +exports[`Test Icons > should render all icons 482`] = ` should render all icons 481`] = ` `; -exports[`Test Icons > should render all icons 482`] = ` +exports[`Test Icons > should render all icons 483`] = ` should render all icons 482`] = ` `; -exports[`Test Icons > should render all icons 483`] = ` +exports[`Test Icons > should render all icons 484`] = ` should render all icons 483`] = ` `; -exports[`Test Icons > should render all icons 484`] = ` +exports[`Test Icons > should render all icons 485`] = ` should render all icons 484`] = ` `; -exports[`Test Icons > should render all icons 485`] = ` +exports[`Test Icons > should render all icons 486`] = ` should render all icons 485`] = ` `; -exports[`Test Icons > should render all icons 486`] = ` +exports[`Test Icons > should render all icons 487`] = ` should render all icons 486`] = ` `; -exports[`Test Icons > should render all icons 487`] = ` +exports[`Test Icons > should render all icons 488`] = ` should render all icons 487`] = ` `; -exports[`Test Icons > should render all icons 488`] = ` +exports[`Test Icons > should render all icons 489`] = ` should render all icons 488`] = ` `; -exports[`Test Icons > should render all icons 489`] = ` +exports[`Test Icons > should render all icons 490`] = ` should render all icons 489`] = ` `; -exports[`Test Icons > should render all icons 490`] = ` +exports[`Test Icons > should render all icons 491`] = ` should render all icons 490`] = ` `; -exports[`Test Icons > should render all icons 491`] = ` +exports[`Test Icons > should render all icons 492`] = ` should render all icons 491`] = ` `; -exports[`Test Icons > should render all icons 492`] = ` +exports[`Test Icons > should render all icons 493`] = ` should render all icons 492`] = ` `; -exports[`Test Icons > should render all icons 493`] = ` +exports[`Test Icons > should render all icons 494`] = ` should render all icons 493`] = ` `; -exports[`Test Icons > should render all icons 494`] = ` +exports[`Test Icons > should render all icons 495`] = ` should render all icons 494`] = ` `; -exports[`Test Icons > should render all icons 495`] = ` +exports[`Test Icons > should render all icons 496`] = ` should render all icons 495`] = ` `; -exports[`Test Icons > should render all icons 496`] = ` +exports[`Test Icons > should render all icons 497`] = ` should render all icons 496`] = ` `; -exports[`Test Icons > should render all icons 497`] = ` +exports[`Test Icons > should render all icons 498`] = ` should render all icons 497`] = ` `; -exports[`Test Icons > should render all icons 498`] = ` +exports[`Test Icons > should render all icons 499`] = ` should render all icons 498`] = ` `; -exports[`Test Icons > should render all icons 499`] = ` +exports[`Test Icons > should render all icons 500`] = ` should render all icons 499`] = ` `; -exports[`Test Icons > should render all icons 500`] = ` +exports[`Test Icons > should render all icons 501`] = ` should render all icons 500`] = ` `; -exports[`Test Icons > should render all icons 501`] = ` +exports[`Test Icons > should render all icons 502`] = ` should render all icons 501`] = ` `; -exports[`Test Icons > should render all icons 502`] = ` +exports[`Test Icons > should render all icons 503`] = ` should render all icons 502`] = ` `; -exports[`Test Icons > should render all icons 503`] = ` +exports[`Test Icons > should render all icons 504`] = ` should render all icons 503`] = ` `; -exports[`Test Icons > should render all icons 504`] = ` +exports[`Test Icons > should render all icons 505`] = ` should render all icons 504`] = ` `; -exports[`Test Icons > should render all icons 505`] = ` +exports[`Test Icons > should render all icons 506`] = ` should render all icons 505`] = ` `; -exports[`Test Icons > should render all icons 506`] = ` +exports[`Test Icons > should render all icons 507`] = ` should render all icons 506`] = ` `; -exports[`Test Icons > should render all icons 507`] = ` +exports[`Test Icons > should render all icons 508`] = ` should render all icons 507`] = ` `; -exports[`Test Icons > should render all icons 508`] = ` +exports[`Test Icons > should render all icons 509`] = ` should render all icons 508`] = ` `; -exports[`Test Icons > should render all icons 509`] = ` +exports[`Test Icons > should render all icons 510`] = ` should render all icons 509`] = ` `; -exports[`Test Icons > should render all icons 510`] = ` +exports[`Test Icons > should render all icons 511`] = ` should render all icons 510`] = ` `; -exports[`Test Icons > should render all icons 511`] = ` +exports[`Test Icons > should render all icons 512`] = ` should render all icons 511`] = ` `; -exports[`Test Icons > should render all icons 512`] = ` +exports[`Test Icons > should render all icons 513`] = ` should render all icons 512`] = ` `; -exports[`Test Icons > should render all icons 513`] = ` +exports[`Test Icons > should render all icons 514`] = ` should render all icons 513`] = ` `; -exports[`Test Icons > should render all icons 514`] = ` +exports[`Test Icons > should render all icons 515`] = ` should render all icons 514`] = ` `; -exports[`Test Icons > should render all icons 515`] = ` +exports[`Test Icons > should render all icons 516`] = ` should render all icons 515`] = ` `; -exports[`Test Icons > should render all icons 516`] = ` +exports[`Test Icons > should render all icons 517`] = ` should render all icons 516`] = ` `; -exports[`Test Icons > should render all icons 517`] = ` +exports[`Test Icons > should render all icons 518`] = ` should render all icons 517`] = ` `; -exports[`Test Icons > should render all icons 518`] = ` +exports[`Test Icons > should render all icons 519`] = ` should render all icons 518`] = ` `; -exports[`Test Icons > should render all icons 519`] = ` +exports[`Test Icons > should render all icons 520`] = ` should render all icons 519`] = ` `; -exports[`Test Icons > should render all icons 520`] = ` +exports[`Test Icons > should render all icons 521`] = ` should render all icons 520`] = ` `; -exports[`Test Icons > should render all icons 521`] = ` +exports[`Test Icons > should render all icons 522`] = ` should render all icons 521`] = ` `; -exports[`Test Icons > should render all icons 522`] = ` +exports[`Test Icons > should render all icons 523`] = ` should render all icons 522`] = ` `; -exports[`Test Icons > should render all icons 523`] = ` +exports[`Test Icons > should render all icons 524`] = ` should render all icons 523`] = ` `; -exports[`Test Icons > should render all icons 524`] = ` +exports[`Test Icons > should render all icons 525`] = ` should render all icons 524`] = ` `; -exports[`Test Icons > should render all icons 525`] = ` +exports[`Test Icons > should render all icons 526`] = ` should render all icons 525`] = ` `; -exports[`Test Icons > should render all icons 526`] = ` +exports[`Test Icons > should render all icons 527`] = ` should render all icons 526`] = ` `; -exports[`Test Icons > should render all icons 527`] = ` +exports[`Test Icons > should render all icons 528`] = ` should render all icons 527`] = ` `; -exports[`Test Icons > should render all icons 528`] = ` +exports[`Test Icons > should render all icons 529`] = ` should render all icons 528`] = ` `; -exports[`Test Icons > should render all icons 529`] = ` +exports[`Test Icons > should render all icons 530`] = ` should render all icons 529`] = ` `; -exports[`Test Icons > should render all icons 530`] = ` +exports[`Test Icons > should render all icons 531`] = ` should render all icons 530`] = ` `; -exports[`Test Icons > should render all icons 531`] = ` +exports[`Test Icons > should render all icons 532`] = ` should render all icons 531`] = ` `; -exports[`Test Icons > should render all icons 532`] = ` +exports[`Test Icons > should render all icons 533`] = ` should render all icons 532`] = ` `; -exports[`Test Icons > should render all icons 533`] = ` +exports[`Test Icons > should render all icons 534`] = ` should render all icons 533`] = ` `; -exports[`Test Icons > should render all icons 534`] = ` +exports[`Test Icons > should render all icons 535`] = ` should render all icons 534`] = ` `; -exports[`Test Icons > should render all icons 535`] = ` +exports[`Test Icons > should render all icons 536`] = ` should render all icons 535`] = ` `; -exports[`Test Icons > should render all icons 536`] = ` +exports[`Test Icons > should render all icons 537`] = ` should render all icons 536`] = ` `; -exports[`Test Icons > should render all icons 537`] = ` +exports[`Test Icons > should render all icons 538`] = ` should render all icons 537`] = ` `; -exports[`Test Icons > should render all icons 538`] = ` +exports[`Test Icons > should render all icons 539`] = ` should render all icons 538`] = ` `; -exports[`Test Icons > should render all icons 539`] = ` +exports[`Test Icons > should render all icons 540`] = ` should render all icons 539`] = ` `; -exports[`Test Icons > should render all icons 540`] = ` +exports[`Test Icons > should render all icons 541`] = ` should render all icons 540`] = ` `; -exports[`Test Icons > should render all icons 541`] = ` +exports[`Test Icons > should render all icons 542`] = ` should render all icons 541`] = ` `; -exports[`Test Icons > should render all icons 542`] = ` +exports[`Test Icons > should render all icons 543`] = ` should render all icons 542`] = ` `; -exports[`Test Icons > should render all icons 543`] = ` +exports[`Test Icons > should render all icons 544`] = ` should render all icons 543`] = ` `; -exports[`Test Icons > should render all icons 544`] = ` +exports[`Test Icons > should render all icons 545`] = ` should render all icons 544`] = ` `; -exports[`Test Icons > should render all icons 545`] = ` +exports[`Test Icons > should render all icons 546`] = ` should render all icons 545`] = ` `; -exports[`Test Icons > should render all icons 546`] = ` +exports[`Test Icons > should render all icons 547`] = ` should render all icons 546`] = ` `; -exports[`Test Icons > should render all icons 547`] = ` +exports[`Test Icons > should render all icons 548`] = ` should render all icons 547`] = ` `; -exports[`Test Icons > should render all icons 548`] = ` +exports[`Test Icons > should render all icons 549`] = ` should render all icons 548`] = ` `; -exports[`Test Icons > should render all icons 549`] = ` +exports[`Test Icons > should render all icons 550`] = ` should render all icons 549`] = ` `; -exports[`Test Icons > should render all icons 550`] = ` +exports[`Test Icons > should render all icons 551`] = ` should render all icons 550`] = ` `; -exports[`Test Icons > should render all icons 551`] = ` +exports[`Test Icons > should render all icons 552`] = ` should render all icons 551`] = ` `; -exports[`Test Icons > should render all icons 552`] = ` +exports[`Test Icons > should render all icons 553`] = ` should render all icons 552`] = ` `; -exports[`Test Icons > should render all icons 553`] = ` +exports[`Test Icons > should render all icons 554`] = ` should render all icons 553`] = ` `; -exports[`Test Icons > should render all icons 554`] = ` +exports[`Test Icons > should render all icons 555`] = ` should render all icons 554`] = ` `; -exports[`Test Icons > should render all icons 555`] = ` +exports[`Test Icons > should render all icons 556`] = ` should render all icons 555`] = ` `; -exports[`Test Icons > should render all icons 556`] = ` +exports[`Test Icons > should render all icons 557`] = ` should render all icons 556`] = ` `; -exports[`Test Icons > should render all icons 557`] = ` +exports[`Test Icons > should render all icons 558`] = ` should render all icons 557`] = ` `; -exports[`Test Icons > should render all icons 558`] = ` +exports[`Test Icons > should render all icons 559`] = ` should render all icons 558`] = ` `; -exports[`Test Icons > should render all icons 559`] = ` +exports[`Test Icons > should render all icons 560`] = ` should render all icons 559`] = ` `; -exports[`Test Icons > should render all icons 560`] = ` +exports[`Test Icons > should render all icons 561`] = ` should render all icons 560`] = ` `; -exports[`Test Icons > should render all icons 561`] = ` +exports[`Test Icons > should render all icons 562`] = ` should render all icons 561`] = ` `; -exports[`Test Icons > should render all icons 562`] = ` +exports[`Test Icons > should render all icons 563`] = ` should render all icons 562`] = ` `; -exports[`Test Icons > should render all icons 563`] = ` +exports[`Test Icons > should render all icons 564`] = ` should render all icons 563`] = ` `; -exports[`Test Icons > should render all icons 564`] = ` +exports[`Test Icons > should render all icons 565`] = ` should render all icons 564`] = ` `; -exports[`Test Icons > should render all icons 565`] = ` +exports[`Test Icons > should render all icons 566`] = ` should render all icons 565`] = ` `; -exports[`Test Icons > should render all icons 566`] = ` +exports[`Test Icons > should render all icons 567`] = ` should render all icons 566`] = ` `; -exports[`Test Icons > should render all icons 567`] = ` +exports[`Test Icons > should render all icons 568`] = ` should render all icons 567`] = ` `; -exports[`Test Icons > should render all icons 568`] = ` +exports[`Test Icons > should render all icons 569`] = ` should render all icons 568`] = ` `; -exports[`Test Icons > should render all icons 569`] = ` +exports[`Test Icons > should render all icons 570`] = ` should render all icons 569`] = ` `; -exports[`Test Icons > should render all icons 570`] = ` +exports[`Test Icons > should render all icons 571`] = ` should render all icons 570`] = ` `; -exports[`Test Icons > should render all icons 571`] = ` +exports[`Test Icons > should render all icons 572`] = ` should render all icons 571`] = ` `; -exports[`Test Icons > should render all icons 572`] = ` +exports[`Test Icons > should render all icons 573`] = ` should render all icons 572`] = ` `; -exports[`Test Icons > should render all icons 573`] = ` +exports[`Test Icons > should render all icons 574`] = ` should render all icons 573`] = ` `; -exports[`Test Icons > should render all icons 574`] = ` +exports[`Test Icons > should render all icons 575`] = ` should render all icons 574`] = ` `; -exports[`Test Icons > should render all icons 575`] = ` +exports[`Test Icons > should render all icons 576`] = ` should render all icons 575`] = ` `; -exports[`Test Icons > should render all icons 576`] = ` +exports[`Test Icons > should render all icons 577`] = ` should render all icons 576`] = ` `; -exports[`Test Icons > should render all icons 577`] = ` +exports[`Test Icons > should render all icons 578`] = ` should render all icons 577`] = ` `; -exports[`Test Icons > should render all icons 578`] = ` +exports[`Test Icons > should render all icons 579`] = ` should render all icons 578`] = ` `; -exports[`Test Icons > should render all icons 579`] = ` +exports[`Test Icons > should render all icons 580`] = ` should render all icons 579`] = ` `; -exports[`Test Icons > should render all icons 580`] = ` +exports[`Test Icons > should render all icons 581`] = ` should render all icons 580`] = ` `; -exports[`Test Icons > should render all icons 581`] = ` +exports[`Test Icons > should render all icons 582`] = ` should render all icons 581`] = ` `; -exports[`Test Icons > should render all icons 582`] = ` +exports[`Test Icons > should render all icons 583`] = ` should render all icons 582`] = ` `; -exports[`Test Icons > should render all icons 583`] = ` +exports[`Test Icons > should render all icons 584`] = ` should render all icons 583`] = ` `; -exports[`Test Icons > should render all icons 584`] = ` +exports[`Test Icons > should render all icons 585`] = ` should render all icons 584`] = ` `; -exports[`Test Icons > should render all icons 585`] = ` +exports[`Test Icons > should render all icons 586`] = ` should render all icons 585`] = ` `; -exports[`Test Icons > should render all icons 586`] = ` +exports[`Test Icons > should render all icons 587`] = ` should render all icons 586`] = ` `; -exports[`Test Icons > should render all icons 587`] = ` +exports[`Test Icons > should render all icons 588`] = ` should render all icons 587`] = ` `; -exports[`Test Icons > should render all icons 588`] = ` +exports[`Test Icons > should render all icons 589`] = ` should render all icons 588`] = ` `; -exports[`Test Icons > should render all icons 589`] = ` +exports[`Test Icons > should render all icons 590`] = ` should render all icons 589`] = ` `; -exports[`Test Icons > should render all icons 590`] = ` +exports[`Test Icons > should render all icons 591`] = ` should render all icons 590`] = ` `; -exports[`Test Icons > should render all icons 591`] = ` +exports[`Test Icons > should render all icons 592`] = ` should render all icons 591`] = ` `; -exports[`Test Icons > should render all icons 592`] = ` +exports[`Test Icons > should render all icons 593`] = ` should render all icons 592`] = ` `; -exports[`Test Icons > should render all icons 593`] = ` +exports[`Test Icons > should render all icons 594`] = ` should render all icons 593`] = ` `; -exports[`Test Icons > should render all icons 594`] = ` +exports[`Test Icons > should render all icons 595`] = ` should render all icons 594`] = ` `; -exports[`Test Icons > should render all icons 595`] = ` +exports[`Test Icons > should render all icons 596`] = ` should render all icons 595`] = ` `; -exports[`Test Icons > should render all icons 596`] = ` +exports[`Test Icons > should render all icons 597`] = ` should render all icons 596`] = ` `; -exports[`Test Icons > should render all icons 597`] = ` +exports[`Test Icons > should render all icons 598`] = ` should render all icons 597`] = ` `; -exports[`Test Icons > should render all icons 598`] = ` +exports[`Test Icons > should render all icons 599`] = ` should render all icons 598`] = ` `; -exports[`Test Icons > should render all icons 599`] = ` +exports[`Test Icons > should render all icons 600`] = ` should render all icons 599`] = ` `; -exports[`Test Icons > should render all icons 600`] = ` +exports[`Test Icons > should render all icons 601`] = ` should render all icons 600`] = ` `; -exports[`Test Icons > should render all icons 601`] = ` +exports[`Test Icons > should render all icons 602`] = ` should render all icons 601`] = ` `; -exports[`Test Icons > should render all icons 602`] = ` +exports[`Test Icons > should render all icons 603`] = ` should render all icons 602`] = ` `; -exports[`Test Icons > should render all icons 603`] = ` +exports[`Test Icons > should render all icons 604`] = ` should render all icons 603`] = ` `; -exports[`Test Icons > should render all icons 604`] = ` +exports[`Test Icons > should render all icons 605`] = ` should render all icons 604`] = ` `; -exports[`Test Icons > should render all icons 605`] = ` +exports[`Test Icons > should render all icons 606`] = ` should render all icons 605`] = ` `; -exports[`Test Icons > should render all icons 606`] = ` +exports[`Test Icons > should render all icons 607`] = ` should render all icons 606`] = ` `; -exports[`Test Icons > should render all icons 607`] = ` +exports[`Test Icons > should render all icons 608`] = ` should render all icons 607`] = ` `; -exports[`Test Icons > should render all icons 608`] = ` +exports[`Test Icons > should render all icons 609`] = ` should render all icons 608`] = ` `; -exports[`Test Icons > should render all icons 609`] = ` +exports[`Test Icons > should render all icons 610`] = ` should render all icons 609`] = ` `; -exports[`Test Icons > should render all icons 610`] = ` +exports[`Test Icons > should render all icons 611`] = ` should render all icons 610`] = ` `; -exports[`Test Icons > should render all icons 611`] = ` +exports[`Test Icons > should render all icons 612`] = ` should render all icons 611`] = ` `; -exports[`Test Icons > should render all icons 612`] = ` +exports[`Test Icons > should render all icons 613`] = ` should render all icons 612`] = ` `; -exports[`Test Icons > should render all icons 613`] = ` +exports[`Test Icons > should render all icons 614`] = ` should render all icons 613`] = ` `; -exports[`Test Icons > should render all icons 614`] = ` +exports[`Test Icons > should render all icons 615`] = ` should render all icons 614`] = ` `; -exports[`Test Icons > should render all icons 615`] = ` +exports[`Test Icons > should render all icons 616`] = ` should render all icons 615`] = ` `; -exports[`Test Icons > should render all icons 616`] = ` +exports[`Test Icons > should render all icons 617`] = ` should render all icons 616`] = ` `; -exports[`Test Icons > should render all icons 617`] = ` +exports[`Test Icons > should render all icons 618`] = ` should render all icons 617`] = ` `; -exports[`Test Icons > should render all icons 618`] = ` +exports[`Test Icons > should render all icons 619`] = ` should render all icons 618`] = ` `; -exports[`Test Icons > should render all icons 619`] = ` +exports[`Test Icons > should render all icons 620`] = ` should render all icons 619`] = ` `; -exports[`Test Icons > should render all icons 620`] = ` +exports[`Test Icons > should render all icons 621`] = ` should render all icons 620`] = ` `; -exports[`Test Icons > should render all icons 621`] = ` +exports[`Test Icons > should render all icons 622`] = ` should render all icons 621`] = ` `; -exports[`Test Icons > should render all icons 622`] = ` +exports[`Test Icons > should render all icons 623`] = ` should render all icons 622`] = ` `; -exports[`Test Icons > should render all icons 623`] = ` +exports[`Test Icons > should render all icons 624`] = ` should render all icons 623`] = ` `; -exports[`Test Icons > should render all icons 624`] = ` +exports[`Test Icons > should render all icons 625`] = ` should render all icons 624`] = ` `; -exports[`Test Icons > should render all icons 625`] = ` +exports[`Test Icons > should render all icons 626`] = ` should render all icons 625`] = ` `; -exports[`Test Icons > should render all icons 626`] = ` +exports[`Test Icons > should render all icons 627`] = ` should render all icons 626`] = ` `; -exports[`Test Icons > should render all icons 627`] = ` +exports[`Test Icons > should render all icons 628`] = ` should render all icons 627`] = ` `; -exports[`Test Icons > should render all icons 628`] = ` +exports[`Test Icons > should render all icons 629`] = ` should render all icons 628`] = ` `; -exports[`Test Icons > should render all icons 629`] = ` +exports[`Test Icons > should render all icons 630`] = ` should render all icons 629`] = ` `; -exports[`Test Icons > should render all icons 630`] = ` +exports[`Test Icons > should render all icons 631`] = ` should render all icons 630`] = ` `; -exports[`Test Icons > should render all icons 631`] = ` +exports[`Test Icons > should render all icons 632`] = ` should render all icons 631`] = ` `; -exports[`Test Icons > should render all icons 632`] = ` +exports[`Test Icons > should render all icons 633`] = ` should render all icons 632`] = ` `; -exports[`Test Icons > should render all icons 633`] = ` +exports[`Test Icons > should render all icons 634`] = ` should render all icons 633`] = ` `; -exports[`Test Icons > should render all icons 634`] = ` +exports[`Test Icons > should render all icons 635`] = ` should render all icons 634`] = ` `; -exports[`Test Icons > should render all icons 635`] = ` +exports[`Test Icons > should render all icons 636`] = ` should render all icons 635`] = ` `; -exports[`Test Icons > should render all icons 636`] = ` +exports[`Test Icons > should render all icons 637`] = ` should render all icons 636`] = ` `; -exports[`Test Icons > should render all icons 637`] = ` +exports[`Test Icons > should render all icons 638`] = ` should render all icons 637`] = ` `; -exports[`Test Icons > should render all icons 638`] = ` +exports[`Test Icons > should render all icons 639`] = ` should render all icons 638`] = ` `; -exports[`Test Icons > should render all icons 639`] = ` +exports[`Test Icons > should render all icons 640`] = ` should render all icons 639`] = ` `; -exports[`Test Icons > should render all icons 640`] = ` +exports[`Test Icons > should render all icons 641`] = ` should render all icons 640`] = ` `; -exports[`Test Icons > should render all icons 641`] = ` +exports[`Test Icons > should render all icons 642`] = ` should render all icons 641`] = ` `; -exports[`Test Icons > should render all icons 642`] = ` +exports[`Test Icons > should render all icons 643`] = ` should render all icons 642`] = ` `; -exports[`Test Icons > should render all icons 643`] = ` +exports[`Test Icons > should render all icons 644`] = ` should render all icons 643`] = ` `; -exports[`Test Icons > should render all icons 644`] = ` +exports[`Test Icons > should render all icons 645`] = ` should render all icons 644`] = ` `; -exports[`Test Icons > should render all icons 645`] = ` +exports[`Test Icons > should render all icons 646`] = ` should render all icons 645`] = ` `; -exports[`Test Icons > should render all icons 646`] = ` +exports[`Test Icons > should render all icons 647`] = ` should render all icons 646`] = ` `; -exports[`Test Icons > should render all icons 647`] = ` +exports[`Test Icons > should render all icons 648`] = ` should render all icons 647`] = ` `; -exports[`Test Icons > should render all icons 648`] = ` +exports[`Test Icons > should render all icons 649`] = ` should render all icons 648`] = ` `; -exports[`Test Icons > should render all icons 649`] = ` +exports[`Test Icons > should render all icons 650`] = ` should render all icons 649`] = ` `; -exports[`Test Icons > should render all icons 650`] = ` +exports[`Test Icons > should render all icons 651`] = ` should render all icons 650`] = ` `; -exports[`Test Icons > should render all icons 651`] = ` +exports[`Test Icons > should render all icons 652`] = ` should render all icons 651`] = ` `; -exports[`Test Icons > should render all icons 652`] = ` +exports[`Test Icons > should render all icons 653`] = ` should render all icons 652`] = ` `; -exports[`Test Icons > should render all icons 653`] = ` +exports[`Test Icons > should render all icons 654`] = ` should render all icons 653`] = ` `; -exports[`Test Icons > should render all icons 654`] = ` +exports[`Test Icons > should render all icons 655`] = ` should render all icons 654`] = ` `; -exports[`Test Icons > should render all icons 655`] = ` +exports[`Test Icons > should render all icons 656`] = ` should render all icons 655`] = ` `; -exports[`Test Icons > should render all icons 656`] = ` +exports[`Test Icons > should render all icons 657`] = ` should render all icons 656`] = ` `; -exports[`Test Icons > should render all icons 657`] = ` +exports[`Test Icons > should render all icons 658`] = ` should render all icons 657`] = ` `; -exports[`Test Icons > should render all icons 658`] = ` +exports[`Test Icons > should render all icons 659`] = ` should render all icons 658`] = ` `; -exports[`Test Icons > should render all icons 659`] = ` +exports[`Test Icons > should render all icons 660`] = ` should render all icons 659`] = ` `; -exports[`Test Icons > should render all icons 660`] = ` +exports[`Test Icons > should render all icons 661`] = ` should render all icons 660`] = ` `; -exports[`Test Icons > should render all icons 661`] = ` +exports[`Test Icons > should render all icons 662`] = ` should render all icons 661`] = ` `; -exports[`Test Icons > should render all icons 662`] = ` +exports[`Test Icons > should render all icons 663`] = ` should render all icons 662`] = ` `; -exports[`Test Icons > should render all icons 663`] = ` +exports[`Test Icons > should render all icons 664`] = ` should render all icons 663`] = ` `; -exports[`Test Icons > should render all icons 664`] = ` +exports[`Test Icons > should render all icons 665`] = ` should render all icons 664`] = ` `; -exports[`Test Icons > should render all icons 665`] = ` +exports[`Test Icons > should render all icons 666`] = ` should render all icons 665`] = ` `; -exports[`Test Icons > should render all icons 666`] = ` +exports[`Test Icons > should render all icons 667`] = ` should render all icons 666`] = ` `; -exports[`Test Icons > should render all icons 667`] = ` +exports[`Test Icons > should render all icons 668`] = ` should render all icons 667`] = ` `; -exports[`Test Icons > should render all icons 668`] = ` +exports[`Test Icons > should render all icons 669`] = ` should render all icons 668`] = ` `; -exports[`Test Icons > should render all icons 669`] = ` +exports[`Test Icons > should render all icons 670`] = ` should render all icons 669`] = ` `; -exports[`Test Icons > should render all icons 670`] = ` +exports[`Test Icons > should render all icons 671`] = ` should render all icons 670`] = ` `; -exports[`Test Icons > should render all icons 671`] = ` +exports[`Test Icons > should render all icons 672`] = ` should render all icons 671`] = ` `; -exports[`Test Icons > should render all icons 672`] = ` +exports[`Test Icons > should render all icons 673`] = ` should render all icons 672`] = ` `; -exports[`Test Icons > should render all icons 673`] = ` +exports[`Test Icons > should render all icons 674`] = ` should render all icons 673`] = ` `; -exports[`Test Icons > should render all icons 674`] = ` +exports[`Test Icons > should render all icons 675`] = ` should render all icons 674`] = ` `; -exports[`Test Icons > should render all icons 675`] = ` +exports[`Test Icons > should render all icons 676`] = ` should render all icons 675`] = ` `; -exports[`Test Icons > should render all icons 676`] = ` +exports[`Test Icons > should render all icons 677`] = ` should render all icons 676`] = ` `; -exports[`Test Icons > should render all icons 677`] = ` +exports[`Test Icons > should render all icons 678`] = ` ((props, ref) => { + const { getPrefixCls } = React.useContext(ConfigProvider.ConfigContext); + const prefixCls = getPrefixCls('web3-icon-jovay-circle-colorful'); + + return ( + + ); +}); + +JovayCircleColorful.displayName = 'JovayCircleColorful'; diff --git a/packages/icons/src/components/jovay-colorful.tsx b/packages/icons/src/components/jovay-colorful.tsx index cccc00bab..29579147d 100644 --- a/packages/icons/src/components/jovay-colorful.tsx +++ b/packages/icons/src/components/jovay-colorful.tsx @@ -9,7 +9,7 @@ import classnames from 'classnames'; import { eraseDefaultProps } from '../utils'; import SVGComponent from '../svgs/jovay-colorful.svg'; -/**![JovayColorful](data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIGlkPSJf5Zu+5bGCXzIiIGRhdGEtbmFtZT0i5Zu+5bGCXzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIzOS4yNyAyMTEuMTUiPgogIDxkZWZzPgogICAgPHN0eWxlPgogICAgICAuY2xzLTEgewogICAgICAgIGZpbGw6ICMzMjZjZmY7CiAgICAgIH0KICAgIDwvc3R5bGU+CiAgPC9kZWZzPgogIDxnIGlkPSJf5Zu+5bGCXzEtMiIgZGF0YS1uYW1lPSJf5Zu+5bGCXzEiPgogICAgPGc+CiAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE3NS4yMSwyMTAuMDJjLTEuNjMsMC0zLjI5LS4zOC00Ljg0LTEuMTktNS4xMi0yLjY4LTcuMS05LTQuNDItMTQuMTJsMjcuNDItNTIuNDMtMjcuMjItNDcuNDdjLTIuODctNS4wMS0xLjE0LTExLjQxLDMuODctMTQuMjgsNS4wMS0yLjg4LDExLjQxLTEuMTQsMTQuMjgsMy44N2wyOS4zLDUxLjA5YzIuMjcsMy45NiwyLjM3LDguNzQuMjUsMTIuNzlsLTI5LjM2LDU2LjEzYy0xLjg3LDMuNTctNS41MSw1LjYyLTkuMjgsNS42MmgwWiIvPgogICAgICA8cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik02Ni4wMywyMTEuMTVjLTUuNTgsMC0xMC4yMS00LjQtMTAuNDUtMTAuMDMtLjI0LTUuNzcsNC4yNC0xMC42NSwxMC4wMi0xMC44OWw1OS4xMi0yLjQ3LDI3LjUtNDcuMzFjMi45LTUsOS4zMS02LjY5LDE0LjMxLTMuNzlzNi42OSw5LjMxLDMuNzksMTQuM2wtMjkuNiw1MC45MmMtMi4zLDMuOTUtNi40LDYuNDItMTAuOTYsNi42MWwtNjMuMjgsMi42NGgtLjQ0di4wMloiLz4KICAgICAgPHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTA1LjY5LDE3Mi4xNWgtLjAzbC01OC44OS0uMTdjLTQuNTctLjAxLTguNzYtMi4zMy0xMS4yMS02LjE4TDEuNjMsMTEyLjMyYy0zLjEtNC44OC0xLjY1LTExLjM1LDMuMjMtMTQuNDQsNC44OC0zLjEsMTEuMzUtMS42NSwxNC40NCwzLjIzbDMxLjcsNDkuOTYsNTQuNzMuMTZjNS43OC4wMiwxMC40NSw0LjcyLDEwLjQzLDEwLjUtLjAyLDUuNzctNC43LDEwLjQzLTEwLjQ2LDEwLjQzaC0uMDFaIi8+CiAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTY0LjA3LDEzMi4wMmMtMy42MywwLTcuMTUtMS44OS05LjA5LTUuMjZsLTI5LjMtNTEuMDljLTIuMjctMy45Ni0yLjM3LTguNzQtLjI1LTEyLjc5TDU0Ljc5LDYuNzVjMi42OC01LjEyLDktNy4xLDE0LjEyLTQuNDJzNy4xLDksNC40MiwxNC4xMmwtMjcuNDIsNTIuNDMsMjcuMjIsNDcuNDdjMi44Nyw1LjAxLDEuMTQsMTEuNDEtMy44NywxNC4yOC0xLjY0Ljk0LTMuNDMsMS4zOS01LjIsMS4zOWgwWiIvPgogICAgICA8cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik03OCw3NS45Yy0xLjc5LDAtMy41OS0uNDYtNS4yNS0xLjQyLTUtMi45LTYuNjktOS4zMS0zLjc5LTE0LjNsMjkuNi01MC45MmMyLjMtMy45NSw2LjM5LTYuNDIsMTAuOTYtNi42MUwxNzIuOCwwYzUuNzYtLjI1LDEwLjY1LDQuMjQsMTAuODksMTAuMDIuMjQsNS43Ny00LjI0LDEwLjY1LTEwLjAyLDEwLjg5bC01OS4xMSwyLjQ3LTI3LjUsNDcuMzFjLTEuOTQsMy4zNC01LjQ1LDUuMjEtOS4wNiw1LjIxaDBaIi8+CiAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTIyOC44MywxMTQuOWMtMy40NiwwLTYuODUtMS43Mi04Ljg1LTQuODZsLTMxLjctNDkuOTYtNTQuNzMtLjE2Yy01Ljc4LS4wMi0xMC40NS00LjcyLTEwLjQzLTEwLjUuMDItNS43Nyw0LjctMTAuNDMsMTAuNDYtMTAuNDNoLjAzbDU4Ljg5LjE3YzQuNTcuMDEsOC43NiwyLjMzLDExLjIxLDYuMThsMzMuOTMsNTMuNDhjMy4xLDQuODgsMS42NSwxMS4zNS0zLjIzLDE0LjQ0LTEuNzQsMS4xLTMuNjgsMS42My01LjYsMS42M2guMDJaIi8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4=) */ +/**![JovayColorful](data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIzOS4yNyAyMTEuMTUiPgogIDxkZWZzPgogICAgPHN0eWxlPgogICAgICAuY2xzLTEgewogICAgICAgIGZpbGw6ICMzMjZjZmY7CiAgICAgIH0KICAgIDwvc3R5bGU+CiAgPC9kZWZzPgogIDxnPgogICAgPGc+CiAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTE3NS4yMSwyMTAuMDJjLTEuNjMsMC0zLjI5LS4zOC00Ljg0LTEuMTktNS4xMi0yLjY4LTcuMS05LTQuNDItMTQuMTJsMjcuNDItNTIuNDMtMjcuMjItNDcuNDdjLTIuODctNS4wMS0xLjE0LTExLjQxLDMuODctMTQuMjgsNS4wMS0yLjg4LDExLjQxLTEuMTQsMTQuMjgsMy44N2wyOS4zLDUxLjA5YzIuMjcsMy45NiwyLjM3LDguNzQuMjUsMTIuNzlsLTI5LjM2LDU2LjEzYy0xLjg3LDMuNTctNS41MSw1LjYyLTkuMjgsNS42MmgwWiIvPgogICAgICA8cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik02Ni4wMywyMTEuMTVjLTUuNTgsMC0xMC4yMS00LjQtMTAuNDUtMTAuMDMtLjI0LTUuNzcsNC4yNC0xMC42NSwxMC4wMi0xMC44OWw1OS4xMi0yLjQ3LDI3LjUtNDcuMzFjMi45LTUsOS4zMS02LjY5LDE0LjMxLTMuNzlzNi42OSw5LjMxLDMuNzksMTQuM2wtMjkuNiw1MC45MmMtMi4zLDMuOTUtNi40LDYuNDItMTAuOTYsNi42MWwtNjMuMjgsMi42NGgtLjQ0di4wMloiLz4KICAgICAgPHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTA1LjY5LDE3Mi4xNWgtLjAzbC01OC44OS0uMTdjLTQuNTctLjAxLTguNzYtMi4zMy0xMS4yMS02LjE4TDEuNjMsMTEyLjMyYy0zLjEtNC44OC0xLjY1LTExLjM1LDMuMjMtMTQuNDQsNC44OC0zLjEsMTEuMzUtMS42NSwxNC40NCwzLjIzbDMxLjcsNDkuOTYsNTQuNzMuMTZjNS43OC4wMiwxMC40NSw0LjcyLDEwLjQzLDEwLjUtLjAyLDUuNzctNC43LDEwLjQzLTEwLjQ2LDEwLjQzaC0uMDFaIi8+CiAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTY0LjA3LDEzMi4wMmMtMy42MywwLTcuMTUtMS44OS05LjA5LTUuMjZsLTI5LjMtNTEuMDljLTIuMjctMy45Ni0yLjM3LTguNzQtLjI1LTEyLjc5TDU0Ljc5LDYuNzVjMi42OC01LjEyLDktNy4xLDE0LjEyLTQuNDJzNy4xLDksNC40MiwxNC4xMmwtMjcuNDIsNTIuNDMsMjcuMjIsNDcuNDdjMi44Nyw1LjAxLDEuMTQsMTEuNDEtMy44NywxNC4yOC0xLjY0Ljk0LTMuNDMsMS4zOS01LjIsMS4zOWgwWiIvPgogICAgICA8cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik03OCw3NS45Yy0xLjc5LDAtMy41OS0uNDYtNS4yNS0xLjQyLTUtMi45LTYuNjktOS4zMS0zLjc5LTE0LjNsMjkuNi01MC45MmMyLjMtMy45NSw2LjM5LTYuNDIsMTAuOTYtNi42MUwxNzIuOCwwYzUuNzYtLjI1LDEwLjY1LDQuMjQsMTAuODksMTAuMDIuMjQsNS43Ny00LjI0LDEwLjY1LTEwLjAyLDEwLjg5bC01OS4xMSwyLjQ3LTI3LjUsNDcuMzFjLTEuOTQsMy4zNC01LjQ1LDUuMjEtOS4wNiw1LjIxaDBaIi8+CiAgICAgIDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTIyOC44MywxMTQuOWMtMy40NiwwLTYuODUtMS43Mi04Ljg1LTQuODZsLTMxLjctNDkuOTYtNTQuNzMtLjE2Yy01Ljc4LS4wMi0xMC40NS00LjcyLTEwLjQzLTEwLjUuMDItNS43Nyw0LjctMTAuNDMsMTAuNDYtMTAuNDNoLjAzbDU4Ljg5LjE3YzQuNTcuMDEsOC43NiwyLjMzLDExLjIxLDYuMThsMzMuOTMsNTMuNDhjMy4xLDQuODgsMS42NSwxMS4zNS0zLjIzLDE0LjQ0LTEuNzQsMS4xLTMuNjgsMS42My01LjYsMS42M2guMDJaIi8+CiAgICA8L2c+CiAgPC9nPgo8L3N2Zz4=) */ export const JovayColorful = React.forwardRef((props, ref) => { const { getPrefixCls } = React.useContext(ConfigProvider.ConfigContext); const prefixCls = getPrefixCls('web3-icon-jovay-colorful'); diff --git a/packages/icons/src/index.ts b/packages/icons/src/index.ts index 3741e49c7..874ca36fe 100644 --- a/packages/icons/src/index.ts +++ b/packages/icons/src/index.ts @@ -287,6 +287,7 @@ export * from './components/iotx-circle-colorful'; export * from './components/iov-circle-colorful'; export * from './components/iqn-colorful'; export * from './components/iris-circle-colorful'; +export * from './components/jovay-circle-colorful'; export * from './components/jovay-colorful'; export * from './components/jst-circle-colorful'; export * from './components/karma-colorful'; diff --git a/packages/icons/src/svgs/jovay-circle-colorful.svg b/packages/icons/src/svgs/jovay-circle-colorful.svg new file mode 100644 index 000000000..76d289093 --- /dev/null +++ b/packages/icons/src/svgs/jovay-circle-colorful.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/packages/icons/src/svgs/jovay-colorful.svg b/packages/icons/src/svgs/jovay-colorful.svg index 689abb007..737937c4a 100644 --- a/packages/icons/src/svgs/jovay-colorful.svg +++ b/packages/icons/src/svgs/jovay-colorful.svg @@ -1,5 +1,5 @@ - + - + From 114456f463be405040a37749c08e1e9968bcd4da Mon Sep 17 00:00:00 2001 From: lijianli Date: Tue, 18 Nov 2025 15:23:44 +0800 Subject: [PATCH 02/10] feat: Use the fill attribute instead of class. --- .../__snapshots__/index.test.tsx.snap | 140 +++++++----------- .../icons/src/svgs/jovay-circle-colorful.svg | 31 +--- packages/icons/src/svgs/jovay-colorful.svg | 23 +-- 3 files changed, 67 insertions(+), 127 deletions(-) diff --git a/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap b/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap index 1d33e528a..c21c4ae13 100644 --- a/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap +++ b/packages/icons/src/__tests__/__snapshots__/index.test.tsx.snap @@ -24255,43 +24255,30 @@ exports[`Test Icons > should render all icons 391`] = ` width="1em" xmlns="http://www.w3.org/2000/svg" > - - - - - - - - - - - - - + + + + + + `; @@ -24311,55 +24298,36 @@ exports[`Test Icons > should render all icons 392`] = ` width="1em" xmlns="http://www.w3.org/2000/svg" > - - - - - - - - - - - - - - - - + + + + + + + `; diff --git a/packages/icons/src/svgs/jovay-circle-colorful.svg b/packages/icons/src/svgs/jovay-circle-colorful.svg index 76d289093..195e5cc04 100644 --- a/packages/icons/src/svgs/jovay-circle-colorful.svg +++ b/packages/icons/src/svgs/jovay-circle-colorful.svg @@ -1,27 +1,10 @@ - - - - - - - - - - - - - - - - + + + + + + + \ No newline at end of file diff --git a/packages/icons/src/svgs/jovay-colorful.svg b/packages/icons/src/svgs/jovay-colorful.svg index 737937c4a..c16ab74cd 100644 --- a/packages/icons/src/svgs/jovay-colorful.svg +++ b/packages/icons/src/svgs/jovay-colorful.svg @@ -1,20 +1,9 @@ - - - - - - - - - - - - - + + + + + + \ No newline at end of file From f5322960661ea310c1c9a8392247aa9aa87d3e1d Mon Sep 17 00:00:00 2001 From: lijianli Date: Wed, 10 Dec 2025 18:16:09 +0800 Subject: [PATCH 03/10] feat: add swap token component --- packages/web3/global.d.ts | 5 + packages/web3/src/index.ts | 8 + packages/web3/src/swap-token/CryptoInput.tsx | 422 +++++++++++++++++ .../src/swap-token/PrimaryButton/index.tsx | 16 + .../swap-token/PrimaryButton/style/index.tsx | 60 +++ .../web3/src/swap-token/TokenSelector.tsx | 91 ++++ .../src/swap-token/__tests__/basic.test.tsx | 103 ++++ packages/web3/src/swap-token/constant.ts | 7 + packages/web3/src/swap-token/demos/basic.tsx | 56 +++ .../web3/src/swap-token/demos/fee-control.tsx | 83 ++++ .../web3/src/swap-token/demos/mockData.tsx | 77 +++ packages/web3/src/swap-token/demos/quota.tsx | 63 +++ packages/web3/src/swap-token/icons/swapBg.png | Bin 0 -> 9314 bytes .../src/swap-token/icons/swapBgNoAccount.png | Bin 0 -> 29062 bytes packages/web3/src/swap-token/index.md | 90 ++++ packages/web3/src/swap-token/index.tsx | 439 ++++++++++++++++++ packages/web3/src/swap-token/index.zh-CN.md | 89 ++++ packages/web3/src/swap-token/style/index.tsx | 199 ++++++++ packages/web3/src/swap-token/type.ts | 47 ++ packages/web3/src/swap-token/utils/format.ts | 96 ++++ 20 files changed, 1951 insertions(+) create mode 100644 packages/web3/src/swap-token/CryptoInput.tsx create mode 100644 packages/web3/src/swap-token/PrimaryButton/index.tsx create mode 100644 packages/web3/src/swap-token/PrimaryButton/style/index.tsx create mode 100644 packages/web3/src/swap-token/TokenSelector.tsx create mode 100644 packages/web3/src/swap-token/__tests__/basic.test.tsx create mode 100644 packages/web3/src/swap-token/constant.ts create mode 100644 packages/web3/src/swap-token/demos/basic.tsx create mode 100644 packages/web3/src/swap-token/demos/fee-control.tsx create mode 100644 packages/web3/src/swap-token/demos/mockData.tsx create mode 100644 packages/web3/src/swap-token/demos/quota.tsx create mode 100644 packages/web3/src/swap-token/icons/swapBg.png create mode 100644 packages/web3/src/swap-token/icons/swapBgNoAccount.png create mode 100644 packages/web3/src/swap-token/index.md create mode 100644 packages/web3/src/swap-token/index.tsx create mode 100644 packages/web3/src/swap-token/index.zh-CN.md create mode 100644 packages/web3/src/swap-token/style/index.tsx create mode 100644 packages/web3/src/swap-token/type.ts create mode 100644 packages/web3/src/swap-token/utils/format.ts diff --git a/packages/web3/global.d.ts b/packages/web3/global.d.ts index 730b1c3da..549955d6f 100644 --- a/packages/web3/global.d.ts +++ b/packages/web3/global.d.ts @@ -10,3 +10,8 @@ declare module '*.svg' { export default ReactComponent; } + +declare module '*.png' { + const url: string; + export default url; +} diff --git a/packages/web3/src/index.ts b/packages/web3/src/index.ts index a92b4e49b..a2f1e5ef5 100644 --- a/packages/web3/src/index.ts +++ b/packages/web3/src/index.ts @@ -8,6 +8,14 @@ export * from './nft-card'; export * from './crypto-price'; export * from './crypto-input'; export * from './token-select'; +export { + default as SwapToken, + type SwapInputProps, + type SwapInputRef, + type SwapTokenConfig, + type SwapTokenToken, +} from './swap-token'; +export { FundFlowDirection } from './swap-token/type'; export * from './hooks'; export * from '@ant-design/web3-common'; // export Web3ConfigProvider in ./web3-config-provider for replace the one in @ant-design/web3-common diff --git a/packages/web3/src/swap-token/CryptoInput.tsx b/packages/web3/src/swap-token/CryptoInput.tsx new file mode 100644 index 000000000..c767c30a1 --- /dev/null +++ b/packages/web3/src/swap-token/CryptoInput.tsx @@ -0,0 +1,422 @@ +import React, { useRef, useState } from 'react'; +import { ConfigProvider, Flex, Input, InputRef } from 'antd'; +import classNames from 'classnames'; +import Decimal from 'decimal.js'; + +import { AMOUNT_IN_DECIMALS, CUSTOMIZE_PREFIX_CLS, TOKEN_DECIMALS_DEFAULT } from './constant'; +import TokenSelector, { TokenSelectorProps } from './TokenSelector'; +import { FundFlowDirection, Token, TokenConfig } from './type'; +import { formatAmount, formatBalance, formatValue } from './utils/format'; + +interface InputProps extends Omit, 'hashId' | 'customizePrefixCls'> { + inputValue: string; + setInputValue: (value: string) => void; + hashId: string; + customizePrefixCls?: string; + disabledInNoAccount?: boolean; + edit?: boolean; + title: string; + /** 是否显示余额及选择最大值按钮 */ + max?: boolean; + /** 最大可输入金额。 + * 该字段存在的意义:输入的金额是否包含网络费用/跨链桥费用。 + * 如果包含, 最大输入值为余额大小; + * 如果不包含, 最大输入值为余额大小减去网络费用/跨链桥费用。 + */ + maxInputAmount?: { + /** 代币符号 */ + symbol: T; + /** 最大输入金额,单位必须是token的精度 */ + amount: bigint; + }; + /** 是否校验最大可输入值 */ + isValidMaxInputAmount?: boolean; + onStatusChange?: (status: 'error' | 'success') => void; + swapTextColor?: string; + extraRender?: (balance?: Token, token?: TokenConfig>) => React.ReactNode; + onChangeValue?: (value?: string) => void; + quota?: { + /** 是否显示全局限额 */ + show?: boolean; + /** 当前周期全局最大限额, 单位必须是token的精度 */ + maxLimit?: bigint; + /** 当前周期全局剩余限额, 单位必须是token的精度 */ + remainQuota?: bigint; + }; + /** 当前容器的高度 */ + height?: number; +} + +const CryptoInput = ({ + inputValue, + setInputValue, + hashId, + customizePrefixCls = CUSTOMIZE_PREFIX_CLS, + disabledInNoAccount = false, + title, + max = false, + edit = true, + onStatusChange, + swapTextColor = 'black', + extraRender, + maxInputAmount, + isValidMaxInputAmount = true, + onChangeValue, + quota = { + show: false, + maxLimit: BigInt(0), + remainQuota: BigInt(0), + }, + height = 150, + fundFlowDirection, + tokens, + token, + switchToken, +}: InputProps) => { + const { getPrefixCls } = React.useContext(ConfigProvider.ConfigContext); + const prefixCls = getPrefixCls('swap-token', customizePrefixCls); + + /** 全局限额配置 */ + const { maxLimit, remainQuota } = quota; + + const balance = React.useMemo(() => { + return fundFlowDirection === FundFlowDirection.IN ? token?.fromToken : token?.toToken; + }, [fundFlowDirection, token]); + + const maxInputAmountValue = + maxInputAmount?.symbol === token?.symbol + ? (balance?.amount ?? 0n) > BigInt(maxInputAmount?.amount || 0n) + ? maxInputAmount?.amount || 0n + : balance?.amount + : balance?.amount; + + // 判断输入的数据是否大于最大值 + const isGreaterThanGlobalRemainQuota = (value: string) => { + if (!isValidMaxInputAmount) return false; + try { + if (!value?.length) return false; + if (!quota?.show) return false; + // 验证是否是合法的 Decimal:允许整数、小数和千位分隔符,小数位中不能有千位分隔符 + const regex = /^(\d{1,3}(,\d{3})*|\d+)(.\d+)?$/; + if (!regex.test(value?.replace(/,/g, ''))) { + return false; + } + if (!remainQuota || remainQuota === 0n) return true; + const result = Decimal(value?.replace(/,/g, '') ?? '0').mul( + Decimal.pow(10, token?.decimals ?? TOKEN_DECIMALS_DEFAULT), + ); + return result.gt(remainQuota); + } catch (error) { + return false; + } + }; + + const status = React.useMemo(() => { + if (!isValidMaxInputAmount) return undefined; + const amount = formatAmount({ + amount: inputValue, + decimals: token?.decimals, + }); + if (!token || !balance || inputValue === '' || Decimal(amount).eq(0)) return undefined; + try { + // 判断输入的数据是否大于当前周期全局剩余限额,如果大于则显示错误状态 + if (isGreaterThanGlobalRemainQuota(inputValue)) { + return 'error'; + } + + const balanceAmount = maxInputAmountValue ?? balance?.amount ?? '0'; + if (amount.gt(balanceAmount)) { + return 'error'; + } else { + return undefined; + } + } catch (error) { + return 'error'; + } + }, [inputValue, token, balance, maxInputAmountValue, remainQuota]); + + React.useEffect(() => { + if (status === 'error') { + onStatusChange?.('error'); + } else { + onStatusChange?.('success'); + } + }, [status]); + + // 判断输入的数据是否大于最大值 + const isGreaterThanMaxAmount = (value: string) => { + if (!isValidMaxInputAmount) return false; + try { + if (!value?.length) return false; + + // 验证是否是合法的 Decimal:允许整数、小数和千位分隔符,小数位中不能有千位分隔符 + const regex = /^(\d{1,3}(,\d{3})*|\d+)(.\d+)?$/; + if (!regex.test(value?.replace(/,/g, ''))) { + return false; + } + if (!maxInputAmountValue) return false; + const result = Decimal(value?.replace(/,/g, '') ?? '0').mul( + Decimal.pow(10, token?.decimals ?? TOKEN_DECIMALS_DEFAULT), + ); + return result.gt(maxInputAmountValue); + } catch (error) { + return false; + } + }; + + const inputRef = useRef(null); + + // 可编辑自动focus输入框 + React.useEffect(() => { + if (edit) { + setTimeout(() => { + inputRef.current?.focus(); + }, 100); + } + }, [edit]); + + const formatInputValue = (value: string) => { + if (typeof value === 'string' && value?.length === 0) { + return ''; + } + return formatValue(value); + }; + + React.useEffect(() => { + if (!!status) return; + onChangeValue?.(inputValue); + }, [inputValue, status]); + + const [isFocus, setIsFocus] = useState(false); + const inputTextColor = React.useMemo(() => { + if (status === 'error') { + return '#FF4D4F'; + } + if (isFocus) { + return '#326CFF'; + } + return swapTextColor ?? '#000'; + }, [isFocus, status, swapTextColor]); + + /** 未登录状态下渲染资金来源的余额 */ + const renderBalanceIfNoLogin = () => { + return ( + + Balance: + - + + ); + }; + + const renderBalance = () => { + if (extraRender) { + return extraRender(balance, token); + } else if (max) { + if (disabledInNoAccount) { + return renderBalanceIfNoLogin(); + } else { + return ( + + Balance: {formatValue(balance?.balance?.toString()) ?? '-'} + { + if (disabledInNoAccount) return; + const currentInputValue = + formatValue( + formatBalance({ + value: maxInputAmountValue, + decimals: token?.decimals, + }), + ) ?? ''; + console.log( + 'currentInputValue', + currentInputValue, + maxInputAmountValue, + token?.decimals, + ); + setInputValue(currentInputValue); + onChangeValue?.(currentInputValue); + }} + > + Max + + + ); + } + } + return null; + }; + + return ( + +
+
{title}
+ {edit ? ( + { + // 如果只有小数点. 自动在小数点前补0 + if (e.target.value === '.') { + setInputValue('0.'); + return; + } + + // 只能输入一个小数点 + if (e.target.value.split('.').length > 2) { + setInputValue(inputValue ?? ''); + return; + } + // 只能输入千分位,小数点.数字 + const newValue = e.target.value.replace(/[^\d,.]/g, ''); + if (newValue?.length !== e.target.value.length) { + setInputValue(inputValue ?? ''); + return; + } + + // 匹配小数点后面的值 + const [integerPart, decimalPart] = e.target.value.split('.'); + // 限制最大输入长度, 如果输入的值只有0,则设置为0.00 + if (integerPart?.replace(/[0,.]/g, '') === '' && integerPart?.length > 1) { + // 如果输入的值只有0,则设置为0.00 + const dp = !decimalPart?.length + ? '' + : '.' + decimalPart?.slice(0, AMOUNT_IN_DECIMALS); + setInputValue('0' + dp); + return; + } + + if (decimalPart && decimalPart?.length > AMOUNT_IN_DECIMALS) { + // 截取小数点后面的值 + const newInputValue = integerPart + '.' + decimalPart?.slice(0, AMOUNT_IN_DECIMALS); + setInputValue(newInputValue); + return; + } + + // 检测开头是否时无效的0,012/0012/00012/00000.12无效,0.1/0.01/0.001/0.0001有效 + const hasInvalidLeadingZero = + integerPart?.length > 1 && + integerPart?.startsWith('0') && + !integerPart?.includes(','); + if (hasInvalidLeadingZero) { + // 去除前导 0,若全为 0 则保留一个 0 + const normalizedInteger = integerPart?.replace(/^0+/, '') || '0'; + const normalizedValue = decimalPart + ? `${normalizedInteger}.${decimalPart}` + : normalizedInteger; + setInputValue(normalizedValue); + return; + } + + // 大于最大值时,设置为最大值 + if (isGreaterThanMaxAmount(e.target.value)) { + setInputValue( + formatBalance({ + value: maxInputAmountValue ?? '0', + decimals: token?.decimals ?? TOKEN_DECIMALS_DEFAULT, + }), + ); + return; + } + + setInputValue(e.target.value); + }} + onFocus={() => { + setIsFocus(true); + if (inputValue === '0.00') { + setInputValue(''); + } + }} + onBlur={() => { + setIsFocus(false); + if (inputValue === '') { + setInputValue('0.00'); + } + // onBlur?.(inputValue); + }} + style={{ + color: inputTextColor, + }} + /> + ) : ( +
+ {inputValue} +
+ )} + {/* 全局限额提示 */} + {!!quota?.show && ( + + {/* 如果输入的值大于当前周期全局剩余限额,则显示提示 */} + {formatAmount({ amount: inputValue, decimals: token?.decimals }).gt( + Decimal(remainQuota || 0n), + ) && ( +
Amount exceeds the current remaining daily limit.
+ )} + + Today's remaining quota: + + {formatBalance( + { + value: remainQuota?.toString() || '0', + decimals: token?.decimals, + }, + 2, + ).toString()} + + / + + {formatBalance( + { + value: maxLimit?.toString() || '0', + decimals: token?.decimals, + }, + 2, + ).toString()} + + {token?.symbol} + +
+ )} +
+
+ + tokens={tokens} + token={token} + switchToken={switchToken} + fundFlowDirection={fundFlowDirection} + disabled={disabledInNoAccount} + customizePrefixCls={customizePrefixCls} + hashId={hashId} + /> + + {renderBalance()} + +
+
+ ); +}; + +export default CryptoInput; diff --git a/packages/web3/src/swap-token/PrimaryButton/index.tsx b/packages/web3/src/swap-token/PrimaryButton/index.tsx new file mode 100644 index 000000000..6e9008f88 --- /dev/null +++ b/packages/web3/src/swap-token/PrimaryButton/index.tsx @@ -0,0 +1,16 @@ +import React from 'react'; +import { Button, ConfigProvider, type ButtonProps } from 'antd'; +import classNames from 'classnames'; + +import { useStyle } from './style'; + +const PrimaryButton: React.FC = ({ className, ...restProps }) => { + const { getPrefixCls } = React.useContext(ConfigProvider.ConfigContext); + const prefixCls = getPrefixCls('swap-token-primary-btn', 'ant-web3'); + const { wrapSSR, hashId } = useStyle(prefixCls); + const mergedCls = classNames(prefixCls, hashId, className); + + return wrapSSR(