This is an automated email from the ASF dual-hosted git repository.

mintsweet pushed a commit to branch feat-6247
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git

commit db86ae0ff9d2b9cb5898ffd1459fee7c88bd40a5
Author: mintsweet <[email protected]>
AuthorDate: Tue Nov 21 16:22:09 2023 +1300

    refactor(config-ui): adjust the plugin config
---
 config-ui/src/plugins/register/azure/assets/icon.svg     | 10 +++++-----
 config-ui/src/plugins/register/azure/config.tsx          |  9 +++++----
 config-ui/src/plugins/register/bamboo/assets/icon.svg    | 16 ++++++++--------
 .../plugins/register/bamboo/{config.ts => config.tsx}    |  9 +++++----
 config-ui/src/plugins/register/bitbucket/assets/icon.svg |  4 ++--
 config-ui/src/plugins/register/bitbucket/config.tsx      |  9 +++++----
 config-ui/src/plugins/register/github/assets/icon.svg    |  4 ++--
 config-ui/src/plugins/register/github/config.tsx         |  9 +++++----
 config-ui/src/plugins/register/gitlab/assets/icon.svg    |  4 ++--
 config-ui/src/plugins/register/gitlab/config.tsx         |  9 +++++----
 config-ui/src/plugins/register/jenkins/assets/icon.svg   | 10 +++++-----
 .../plugins/register/jenkins/{config.ts => config.tsx}   |  9 +++++----
 config-ui/src/plugins/register/jira/assets/icon.svg      |  8 +++++---
 config-ui/src/plugins/register/jira/config.tsx           |  9 +++++----
 config-ui/src/plugins/register/pagerduty/assets/icon.svg |  6 +++---
 config-ui/src/plugins/register/pagerduty/config.tsx      |  7 ++++---
 config-ui/src/plugins/register/sonarqube/assets/icon.svg |  8 ++++----
 .../plugins/register/sonarqube/{config.ts => config.tsx} |  9 +++++----
 config-ui/src/plugins/register/tapd/assets/icon.svg      | 10 +++++-----
 config-ui/src/plugins/register/tapd/config.tsx           |  9 +++++----
 config-ui/src/plugins/register/webhook/assets/icon.svg   |  8 ++++----
 .../plugins/register/webhook/{config.ts => config.tsx}   |  8 +++++---
 config-ui/src/plugins/register/zentao/assets/icon.svg    |  4 ++--
 config-ui/src/plugins/register/zentao/config.tsx         |  9 +++++----
 config-ui/src/types/plugin.ts                            |  2 +-
 25 files changed, 107 insertions(+), 92 deletions(-)

diff --git a/config-ui/src/plugins/register/azure/assets/icon.svg 
b/config-ui/src/plugins/register/azure/assets/icon.svg
index 3b1da0945..b447bd17c 100644
--- a/config-ui/src/plugins/register/azure/assets/icon.svg
+++ b/config-ui/src/plugins/register/azure/assets/icon.svg
@@ -14,17 +14,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="100" height="100" viewBox="0 0 60 60" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="100" height="100" viewBox="0 0 60 60" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
     <path
         d="M41.6217 5.85234C41.4483 5.33862 41.1182 4.89221 40.6778 
4.57602C40.2374 4.25982 39.7088 4.08978 39.1667 4.08984H21.0298C21.5719 4.08987 
22.1004 4.25995 22.5408 4.57613C22.9812 4.89231 23.3114 5.33867 23.4848 
5.85234L39.2248 52.4898C39.3564 52.8796 39.3932 53.2952 39.3324 53.702C39.2715 
54.1089 39.1146 54.4955 38.8747 54.8297C38.6348 55.1639 38.3187 55.4362 37.9527 
55.624C37.5867 55.8118 37.1812 55.9098 36.7698 55.9098H54.9073C55.3186 55.9097 
55.7241 55.8117 56.09 55.6238C56.4 [...]
-        fill="#7497F7" />
+    />
     <path fill-rule="evenodd" clip-rule="evenodd"
         d="M31.191 37.6631L36.195 52.49C36.3266 52.8798 36.3635 53.2953 
36.3026 53.7022C36.2417 54.109 36.0848 54.4956 35.8449 54.8298C35.6176 55.1465 
35.3219 55.4076 34.9801 55.5939C34.7877 55.4895 34.6076 55.3604 34.445 
55.2087L17.8625 39.7312C17.687 39.5676 17.5648 39.355 17.5119 39.121C17.4589 
38.887 17.4777 38.6425 17.5657 38.4193C17.6537 38.1961 17.8069 38.0046 18.0053 
37.8697C18.2038 37.7348 18.4382 37.6628 18.6781 37.6631H31.191Z"
-        fill="#7497F7" />
+    />
     <path fill-rule="evenodd" clip-rule="evenodd"
         d="M26.4536 35.6629L28.4847 29.645L20.4548 5.85233C20.2814 5.33865 
19.9512 4.8923 19.5108 4.57612C19.4799 4.55394 19.4486 4.53248 19.4169 
4.51175C19.385 4.53256 19.3535 4.55411 19.3225 4.57639C18.8814 4.89314 18.5508 
5.34028 18.3773 5.85484L2.63788 52.4905C2.5064 52.8802 2.46961 53.2956 2.53054 
53.7024C2.59148 54.1092 2.74839 54.4956 2.9883 54.8297C3.22821 55.1638 3.54422 
55.4359 3.91019 55.6237C4.27616 55.8114 4.68157 55.9093 5.09288 
55.9092H17.7579C18.3007 55.9091 18.8299 55.73 [...]
-        fill="#7497F7" />
+    />
     <path fill-rule="evenodd" clip-rule="evenodd"
         d="M31.191 37.6631L36.195 52.49C36.3266 52.8798 36.3635 53.2953 
36.3026 53.7022C36.2417 54.109 36.0848 54.4956 35.8449 54.8298C35.6176 55.1465 
35.3219 55.4076 34.9801 55.5939C34.7877 55.4895 34.6076 55.3604 34.445 
55.2087L17.8625 39.7312C17.687 39.5676 17.5648 39.355 17.5119 39.121C17.4589 
38.887 17.4777 38.6425 17.5657 38.4193C17.6537 38.1961 17.8069 38.0046 18.0053 
37.8697C18.2038 37.7348 18.4382 37.6628 18.6781 37.6631H31.191Z"
-        fill="#7497F7" />
+    />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/azure/config.tsx 
b/config-ui/src/plugins/register/azure/config.tsx
index 35af2ad77..a5b4769f0 100644
--- a/config-ui/src/plugins/register/azure/config.tsx
+++ b/config-ui/src/plugins/register/azure/config.tsx
@@ -18,15 +18,16 @@
 
 import { ExternalLink } from '@/components';
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 import { BaseURL } from './connection-fields';
 
-export const AzureConfig = {
+export const AzureConfig: IPluginConfig = {
   plugin: 'azuredevops',
   name: 'Azure DevOps',
-  icon: Icon,
-  sort: 6,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 1,
   connection: {
     docLink: DOC_URL.PLUGIN.AZUREDEVOPS.BASIS,
     fields: [
diff --git a/config-ui/src/plugins/register/bamboo/assets/icon.svg 
b/config-ui/src/plugins/register/bamboo/assets/icon.svg
index 012dc1bc2..9be82e6c5 100644
--- a/config-ui/src/plugins/register/bamboo/assets/icon.svg
+++ b/config-ui/src/plugins/register/bamboo/assets/icon.svg
@@ -14,26 +14,26 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="60" height="60" viewBox="0 0 60 60" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="60" height="60" viewBox="0 0 60 60" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
   <path
     d="M49.5895 15.9673C50.3704 16.6327 50.3704 17.839 49.5894 18.5045L33.2772 
32.4034C32.1951 33.3254 30.5296 32.5565 30.5296 31.1348L30.5296 3.33687C30.5296 
1.91525 32.1951 1.14626 33.2772 2.06826L49.5895 15.9673Z"
-    fill="#7497F7" />
+  />
   <path
     d="M27.3929 9.15651C22.2218 9.84207 17.3852 12.2096 13.6558 
15.9389C9.18064 20.4141 6.6665 26.4837 6.6665 32.8126L21.0005 32.8126C21.0005 
30.2853 22.0044 27.8616 23.7915 26.0746C25.5657 24.3003 27.9676 23.298 30.4752 
23.2837L27.3929 9.15651Z"
-    fill="#7497F7" />
+  />
   <path
     d="M30.5295 23.2836V8.94956C30.5295 8.94956 30.5295 8.94956 30.5295 
8.94956V23.2836C30.5295 23.2836 30.5295 23.2836 30.5295 23.2836Z"
-    fill="#7497F7" />
+  />
   <path
     d="M33.6295 56.4743C38.8017 55.7967 43.6419 53.4367 47.377 49.7131C51.4643 
45.6384 53.9228 40.2353 54.3317 34.5156C54.3973 33.5974 53.6462 32.8491 52.7257 
32.8476L41.7251 32.8306C40.8046 32.8292 40.0721 33.5799 39.9105 34.4861C39.5697 
36.397 38.6504 38.1727 37.257 39.5618C35.48 41.3333 33.0767 42.3319 30.5691 
42.3423L33.6295 56.4743Z"
-    fill="#7497F7" />
+  />
   <path
     d="M30.5147 42.3424L30.4926 56.6764C30.4926 56.6764 30.4926 56.6764 
30.4926 56.6764L30.5147 42.3424C30.5148 42.3424 30.5147 42.3424 30.5147 
42.3424Z"
-    fill="#7497F7" />
+  />
   <path
     d="M6.86094 35.853C7.5254 41.0266 9.873 45.8727 13.5869 49.6171C18.0437 
54.1106 24.103 56.6496 30.4318 56.6756L30.4906 42.3417C27.9633 42.3313 25.5437 
41.3174 23.764 39.5231C21.9972 37.7417 21.0047 35.3361 21.0006 32.8286L6.86094 
35.853Z"
-    fill="#7497F7" />
+  />
   <path
     d="M21.0006 32.7743L6.66676 32.7156C6.66676 32.7158 6.66677 32.7153 
6.66676 32.7156L21.0006 32.7743C21.0006 32.7741 21.0006 32.7746 21.0006 
32.7743Z"
-    fill="#7497F7" />
+  />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/bamboo/config.ts 
b/config-ui/src/plugins/register/bamboo/config.tsx
similarity index 90%
rename from config-ui/src/plugins/register/bamboo/config.ts
rename to config-ui/src/plugins/register/bamboo/config.tsx
index c3fe1fe8f..cd7f8f775 100644
--- a/config-ui/src/plugins/register/bamboo/config.ts
+++ b/config-ui/src/plugins/register/bamboo/config.tsx
@@ -17,14 +17,15 @@
  */
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const BambooConfig = {
+export const BambooConfig: IPluginConfig = {
   plugin: 'bamboo',
   name: 'Bamboo',
-  icon: Icon,
-  sort: 11,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 2,
   connection: {
     docLink: DOC_URL.PLUGIN.BAMBOO.BASIS,
     fields: [
diff --git a/config-ui/src/plugins/register/bitbucket/assets/icon.svg 
b/config-ui/src/plugins/register/bitbucket/assets/icon.svg
index d8d975703..41a34d554 100644
--- a/config-ui/src/plugins/register/bitbucket/assets/icon.svg
+++ b/config-ui/src/plugins/register/bitbucket/assets/icon.svg
@@ -14,8 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 
or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="100" height="100" viewBox="0 0 52 48" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="100" height="100" viewBox="0 0 52 48" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
     <path
         d="M1.68758 0.51967C1.44443 0.516534 1.20354 0.566658 0.98183 
0.666529C0.760116 0.766397 0.562951 0.913588 0.404177 1.09776C0.245403 1.28194 
0.128869 1.49864 0.0627574 1.73265C-0.00335344 1.96666 -0.0174403 2.2123 
0.0214867 2.45233L7.09404 45.3875C7.18216 45.9129 7.45259 46.3904 7.85783 
46.7363C8.26307 47.0821 8.77721 47.2741 9.30994 47.2785H43.2399C43.6392 47.2836 
44.0271 47.1451 44.3329 46.8883C44.6387 46.6314 44.8421 46.2732 44.906 
45.879L49.1639 19.7392H33.4921L31.4689 31.550 [...]
-        fill="#7497F7" />
+    />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/bitbucket/config.tsx 
b/config-ui/src/plugins/register/bitbucket/config.tsx
index 31bf6b086..3716d6e91 100644
--- a/config-ui/src/plugins/register/bitbucket/config.tsx
+++ b/config-ui/src/plugins/register/bitbucket/config.tsx
@@ -17,14 +17,15 @@
  */
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const BitBucketConfig = {
+export const BitBucketConfig: IPluginConfig = {
   plugin: 'bitbucket',
   name: 'BitBucket',
-  icon: Icon,
-  sort: 5,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 3,
   connection: {
     docLink: DOC_URL.PLUGIN.BITBUCKET.BASIS,
     initialValues: {
diff --git a/config-ui/src/plugins/register/github/assets/icon.svg 
b/config-ui/src/plugins/register/github/assets/icon.svg
index ec7bb7704..6dec84baa 100644
--- a/config-ui/src/plugins/register/github/assets/icon.svg
+++ b/config-ui/src/plugins/register/github/assets/icon.svg
@@ -14,8 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 
or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="100" height="100" viewBox="0 0 36 36" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="100" height="100" viewBox="0 0 36 36" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
     <path
         d="M18 3C9.7125 3 3 9.7125 3 18C2.9983 21.1489 3.98822 24.2184 5.82933 
26.773C7.67043 29.3276 10.2692 31.2376 13.257 32.232C14.007 32.3625 14.2875 
31.9125 14.2875 31.518C14.2875 31.1625 14.268 29.982 14.268 28.725C10.5 29.4195 
9.525 27.807 9.225 26.9625C9.0555 26.5305 8.325 25.2 7.6875 24.843C7.1625 
24.5625 6.4125 23.868 7.668 23.85C8.85 23.8305 9.693 24.9375 9.975 
25.3875C11.325 27.6555 13.482 27.018 14.343 26.625C14.475 25.65 14.868 24.9945 
15.3 24.6195C11.9625 24.2445 8.475 22 [...]
-        fill="#7497F7" />
+    />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/github/config.tsx 
b/config-ui/src/plugins/register/github/config.tsx
index 1d67c9d74..1bf47b436 100644
--- a/config-ui/src/plugins/register/github/config.tsx
+++ b/config-ui/src/plugins/register/github/config.tsx
@@ -19,15 +19,16 @@
 import { pick } from 'lodash';
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 import { Token, Graphql, GithubApp, Authentication } from 
'./connection-fields';
 
-export const GitHubConfig = {
+export const GitHubConfig: IPluginConfig = {
   plugin: 'github',
   name: 'GitHub',
-  icon: Icon,
-  sort: 1,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 4,
   connection: {
     docLink: DOC_URL.PLUGIN.GITHUB.BASIS,
     initialValues: {
diff --git a/config-ui/src/plugins/register/gitlab/assets/icon.svg 
b/config-ui/src/plugins/register/gitlab/assets/icon.svg
index 82e5209c2..46bfa1b39 100644
--- a/config-ui/src/plugins/register/gitlab/assets/icon.svg
+++ b/config-ui/src/plugins/register/gitlab/assets/icon.svg
@@ -14,8 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 
or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="100" height="100" viewBox="0 0 36 36" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="100" height="100" viewBox="0 0 36 36" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
     <path
         d="M8.80197 4.12524L12 15.0002H24L27.198 4.12524C27.2339 4.00187 
27.3085 3.8933 27.4108 3.81551C27.5131 3.73772 27.6377 3.69483 27.7662 
3.69315C27.8947 3.69147 28.0203 3.73109 28.1246 3.80618C28.2289 3.88126 28.3063 
3.98785 28.3455 4.11024L33.588 20.4962C33.6352 20.6437 33.6356 20.8022 33.5891 
20.9499C33.5426 21.0976 33.4516 21.2273 33.3285 21.3212L18 33.0002L2.66997 
21.3212C2.5471 21.2272 2.45635 21.0974 2.41016 20.9497C2.36397 20.8019 2.3646 
20.6436 2.41197 20.4962L7.65447 4.11 [...]
-        fill="#7497F7" />
+    />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/gitlab/config.tsx 
b/config-ui/src/plugins/register/gitlab/config.tsx
index 7a398b46a..451f93167 100644
--- a/config-ui/src/plugins/register/gitlab/config.tsx
+++ b/config-ui/src/plugins/register/gitlab/config.tsx
@@ -18,14 +18,15 @@
 
 import { ExternalLink } from '@/components';
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const GitLabConfig = {
+export const GitLabConfig: IPluginConfig = {
   plugin: 'gitlab',
   name: 'GitLab',
-  icon: Icon,
-  sort: 2,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 5,
   connection: {
     docLink: DOC_URL.PLUGIN.GITLAB.BASIS,
     initialValues: {
diff --git a/config-ui/src/plugins/register/jenkins/assets/icon.svg 
b/config-ui/src/plugins/register/jenkins/assets/icon.svg
index d41a69da4..05cdbc329 100644
--- a/config-ui/src/plugins/register/jenkins/assets/icon.svg
+++ b/config-ui/src/plugins/register/jenkins/assets/icon.svg
@@ -14,17 +14,17 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="100" height="100" viewBox="0 0 36 36" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="100" height="100" viewBox="0 0 36 36" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
     <path
         d="M25.2912 2.67189C23.4918 1.74972 21.1902 1 18.4387 1C5.88829 1 
5.42346 9.33694 5.42346 9.33694C5.42346 9.33694 3.3992 10.0417 2.79942 
13.2055C2.43206 15.1248 2.91188 16.4968 3.34672 17.284C2.92688 17.7338 2.57451 
18.2662 2.30461 18.8659C1.66734 20.2829 1.5174 21.9548 1.89226 23.5817C2.26712 
25.2086 3.11431 26.6256 4.28388 27.5702C5.54341 28.5899 7.08785 28.9572 8.51232 
28.5899C8.5873 28.5749 8.65477 28.5524 8.72974 28.5299C11.4288 32.6159 15.5372 
35 20.0131 35C27.8927 35 34.31 [...]
-        fill="#7497F7" />
+    />
     <path
         d="M22.0673 25.2461C23.7317 25.6809 24.9313 25.591 24.9313 
25.591L24.9613 23.8666C24.9613 23.8666 24.0691 23.8891 22.4047 23.6942C20.7403 
23.4992 19.1359 22.9744 19.1359 22.9744C19.1359 22.9744 19.8557 24.6763 22.0598 
25.2536L22.0673 25.2461Z"
-        fill="#7497F7" />
+    />
     <path
         d="M21.4376 27.0079C18.5961 26.3557 16.4369 22.9669 16.4369 
22.9669C16.4369 22.9669 15.7322 27.4203 20.7478 29.0172C24.4215 30.1868 26.1758 
26.8805 26.1758 26.8805C26.1758 26.8805 24.279 27.6602 21.4376 27.0079Z"
-        fill="#7497F7" />
+    />
     <path
         d="M19.3308 10.2816C19.3308 10.2816 19.4433 11.6386 20.8153 
13.183C22.1873 14.7275 22.9295 14.7499 22.5022 15.6646C22.0748 16.5793 20.1705 
17.0966 18.5811 16.9466C15.7547 16.6842 15.6422 15.2373 15.6422 15.2373C15.6422 
15.2373 17.8014 15.4847 18.6261 15.2373C19.4508 14.9899 19.6907 14.2926 19.4508 
13.7078C18.6861 11.871 19.3233 10.2816 19.3233 10.2816H19.3308Z"
-        fill="#7497F7" />
+    />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/jenkins/config.ts 
b/config-ui/src/plugins/register/jenkins/config.tsx
similarity index 90%
rename from config-ui/src/plugins/register/jenkins/config.ts
rename to config-ui/src/plugins/register/jenkins/config.tsx
index 400bbeb7c..04cdd70db 100644
--- a/config-ui/src/plugins/register/jenkins/config.ts
+++ b/config-ui/src/plugins/register/jenkins/config.tsx
@@ -17,14 +17,15 @@
  */
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const JenkinsConfig = {
+export const JenkinsConfig: IPluginConfig = {
   plugin: 'jenkins',
   name: 'Jenkins',
-  icon: Icon,
-  sort: 4,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 6,
   connection: {
     docLink: DOC_URL.PLUGIN.JENKINS.BASIS,
     fields: [
diff --git a/config-ui/src/plugins/register/jira/assets/icon.svg 
b/config-ui/src/plugins/register/jira/assets/icon.svg
index a3e68b3fd..b597e69c7 100644
--- a/config-ui/src/plugins/register/jira/assets/icon.svg
+++ b/config-ui/src/plugins/register/jira/assets/icon.svg
@@ -14,7 +14,9 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 
or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="100" height="100" viewBox="0 0 36 36" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
-    <path d="M16.5952 12.2857L10.881 18L18.0873 25.2064C21.0714 28.1905 
21.0714 33.0238 18.0873 36L3.35714 21.2698C1.54762 19.4603 1.54762 16.5317 
3.35714 14.7302L13.8095 4.26984C13.4762 7.11905 14.4048 10.0952 16.5952 
12.2778V12.2857Z" fill="#7497F7" />
-    <path d="M19.5714 23.7143L25.2857 18L18.0794 10.7937C15.0952 7.80952 
15.0952 2.97619 18.0794 0L32.8095 14.7302C34.6191 16.5397 34.6191 19.4683 
32.8095 21.2698L22.3571 31.7222C22.6905 28.873 21.7619 25.8968 19.5714 
23.7143Z" fill="#7497F7" />
+<svg width="100" height="100" viewBox="0 0 36 36" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
+    <path
+        d="M16.5952 12.2857L10.881 18L18.0873 25.2064C21.0714 28.1905 21.0714 
33.0238 18.0873 36L3.35714 21.2698C1.54762 19.4603 1.54762 16.5317 3.35714 
14.7302L13.8095 4.26984C13.4762 7.11905 14.4048 10.0952 16.5952 
12.2778V12.2857Z" />
+    <path
+        d="M19.5714 23.7143L25.2857 18L18.0794 10.7937C15.0952 7.80952 15.0952 
2.97619 18.0794 0L32.8095 14.7302C34.6191 16.5397 34.6191 19.4683 32.8095 
21.2698L22.3571 31.7222C22.6905 28.873 21.7619 25.8968 19.5714 23.7143Z" />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/jira/config.tsx 
b/config-ui/src/plugins/register/jira/config.tsx
index a49d7f4fd..a845b7dc5 100644
--- a/config-ui/src/plugins/register/jira/config.tsx
+++ b/config-ui/src/plugins/register/jira/config.tsx
@@ -17,15 +17,16 @@
  */
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 import { Auth } from './connection-fields';
 
-export const JiraConfig = {
+export const JiraConfig: IPluginConfig = {
   plugin: 'jira',
   name: 'Jira',
-  icon: Icon,
-  sort: 3,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 7,
   connection: {
     docLink: DOC_URL.PLUGIN.JIRA.BASIS,
     fields: [
diff --git a/config-ui/src/plugins/register/pagerduty/assets/icon.svg 
b/config-ui/src/plugins/register/pagerduty/assets/icon.svg
index 029a71372..ac490e6c6 100644
--- a/config-ui/src/plugins/register/pagerduty/assets/icon.svg
+++ b/config-ui/src/plugins/register/pagerduty/assets/icon.svg
@@ -15,12 +15,12 @@ See the License for the specific language governing 
permissions and
 limitations under the License.
 -->
 
-<svg width="54" height="54" viewBox="0 0 54 54" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="54" height="54" viewBox="0 0 54 54" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
   <path
     d="M21.2345 26.4141H26.3121C29.8682 26.4141 32.5628 24.9843 32.5628 
21.2449C32.5628 17.7621 30.3814 16.2223 26.0188 16.2773L21.2345 16.314V26.4141Z"
-    fill="#7497F7" />
+  />
   <path fill-rule="evenodd" clip-rule="evenodd"
     d="M2.55572 0.333984C1.32842 0.333984 0.333496 1.32891 0.333496 
2.55621V51.4451C0.333496 52.6724 1.32842 53.6673 2.55572 
53.6673H51.4446C52.6719 53.6673 53.6668 52.6724 53.6668 51.4451V2.55621C53.6668 
1.32891 52.6719 0.333984 51.4446 0.333984H2.55572ZM25.3772 12.5562C29.0983 
12.5562 30.6747 12.7578 32.9477 13.9677C35.404 15.3058 36.9254 17.9271 36.9254 
21.2082C36.9254 24.2328 35.6973 26.854 33.3143 28.4304C31.133 29.8786 28.6584 
30.0802 25.3406 30.0802H17.0002V12.5562H25.3772ZM17.000 [...]
-    fill="#7497F7" />
+  />
 </svg>
   
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/pagerduty/config.tsx 
b/config-ui/src/plugins/register/pagerduty/config.tsx
index c246bdcaf..e4a44b3bf 100644
--- a/config-ui/src/plugins/register/pagerduty/config.tsx
+++ b/config-ui/src/plugins/register/pagerduty/config.tsx
@@ -17,13 +17,14 @@
  */
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const PagerDutyConfig = {
+export const PagerDutyConfig: IPluginConfig = {
   plugin: 'pagerduty',
   name: 'PagerDuty',
-  icon: Icon,
+  icon: ({ color }) => <Icon fill={color} />,
   sort: 8,
   connection: {
     docLink: DOC_URL.PLUGIN.PAGERDUTY.BASIS,
diff --git a/config-ui/src/plugins/register/sonarqube/assets/icon.svg 
b/config-ui/src/plugins/register/sonarqube/assets/icon.svg
index 55fb5ee6c..54b86f5c5 100644
--- a/config-ui/src/plugins/register/sonarqube/assets/icon.svg
+++ b/config-ui/src/plugins/register/sonarqube/assets/icon.svg
@@ -14,15 +14,15 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="60" height="60" viewBox="0 0 60 60" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="60" height="60" viewBox="0 0 60 60" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
   <path
     d="M49.0136 55.091C49.0534 49.1121 47.8941 43.186 45.6042 37.6628C43.3143 
32.1397 39.9403 27.1318 35.6816 22.9352C31.4228 18.7385 26.3659 15.4383 20.8098 
13.2298C15.2537 11.0212 9.31113 9.94899 3.3335 10.0766L3.39567 12.9883C8.98408 
12.8689 14.5397 13.8713 19.734 15.9361C24.9284 18.0009 29.656 21.0862 33.6374 
25.0095C37.6188 28.9329 40.7732 33.6148 42.914 38.7782C45.0548 43.9417 46.1386 
49.482 46.1013 55.0716L49.0136 55.091Z"
-    fill="#7497F7" />
+  />
   <path
     d="M53.5855 38.8361C51.4412 31.1064 47.3893 24.0392 41.8019 
18.2836C36.2145 12.5279 29.2706 8.26816 21.6079 5.89551L20.9153 8.13223C28.2034 
10.3889 34.8077 14.4403 40.1219 19.9145C45.4361 25.3887 49.2898 32.1103 51.3293 
39.4621L53.5855 38.8361Z"
-    fill="#7497F7" />
+  />
   <path
     d="M56.316 24.8632C52.1338 16.738 45.8537 9.87982 38.1273 5L37.1394 
6.56421C44.5867 11.2678 50.6399 17.8782 54.6711 25.7099L56.316 24.8632Z"
-    fill="#7497F7" />
+  />
 </svg>
   
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/sonarqube/config.ts 
b/config-ui/src/plugins/register/sonarqube/config.tsx
similarity index 89%
rename from config-ui/src/plugins/register/sonarqube/config.ts
rename to config-ui/src/plugins/register/sonarqube/config.tsx
index 25ce9f11a..2fe23d049 100644
--- a/config-ui/src/plugins/register/sonarqube/config.ts
+++ b/config-ui/src/plugins/register/sonarqube/config.tsx
@@ -17,14 +17,15 @@
  */
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const SonarQubeConfig = {
+export const SonarQubeConfig: IPluginConfig = {
   plugin: 'sonarqube',
   name: 'SonarQube',
-  icon: Icon,
-  sort: 7,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 9,
   connection: {
     docLink: DOC_URL.PLUGIN.SONARQUBE.BASIS,
     fields: [
diff --git a/config-ui/src/plugins/register/tapd/assets/icon.svg 
b/config-ui/src/plugins/register/tapd/assets/icon.svg
index 8c9acf01e..19eb2b156 100644
--- a/config-ui/src/plugins/register/tapd/assets/icon.svg
+++ b/config-ui/src/plugins/register/tapd/assets/icon.svg
@@ -14,11 +14,11 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 
express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="100" height="100" viewBox="0 0 36 36" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="100" height="100" viewBox="0 0 36 36" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
     <path
         d="M30.1151 10.3491L27.9087 3.35706L4.95635 10.3491L6.96429 
17.3253L15.0198 15.0396L19.4008 29.492L26.5992 27.246L22.1389 12.8491L30.1151 
10.3491Z"
-        fill="#7497F7" />
-    <path d="M2.25 33.6666H15.2659L2.25 12.0317V33.6666Z" fill="#7497F7" />
-    <path d="M33.0119 2.33325L27.2103 33.6666H33.75V2.33325H33.0119Z" 
fill="#7497F7" />
-    <path d="M2.25 2.33325V8.6904L23.6944 2.33325H2.25Z" fill="#7497F7" />
+    />
+    <path d="M2.25 33.6666H15.2659L2.25 12.0317V33.6666Z" />
+    <path d="M33.0119 2.33325L27.2103 33.6666H33.75V2.33325H33.0119Z" />
+    <path d="M2.25 2.33325V8.6904L23.6944 2.33325H2.25Z" />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/tapd/config.tsx 
b/config-ui/src/plugins/register/tapd/config.tsx
index 4d63fd734..291b8ad17 100644
--- a/config-ui/src/plugins/register/tapd/config.tsx
+++ b/config-ui/src/plugins/register/tapd/config.tsx
@@ -18,15 +18,16 @@
 
 import { ExternalLink } from '@/components';
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
 import { DataScope } from './data-scope';
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const TAPDConfig = {
+export const TAPDConfig: IPluginConfig = {
   plugin: 'tapd',
   name: 'TAPD',
-  icon: Icon,
-  sort: 9,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 10,
   connection: {
     docLink: DOC_URL.PLUGIN.TAPD.BASIS,
     initialValues: {
diff --git a/config-ui/src/plugins/register/webhook/assets/icon.svg 
b/config-ui/src/plugins/register/webhook/assets/icon.svg
index 975d101df..5e85c9e06 100644
--- a/config-ui/src/plugins/register/webhook/assets/icon.svg
+++ b/config-ui/src/plugins/register/webhook/assets/icon.svg
@@ -15,14 +15,14 @@ See the License for the specific language governing 
permissions and
 limitations under the License.
 -->
 
-<svg width="100" height="100" viewBox="0 0 58 52" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="100" height="100" viewBox="0 0 58 52" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
   <path
     d="M27.2239 21.9899C24.8672 25.8703 22.6083 29.6289 20.3028 
33.3587C19.7113 34.3151 19.4179 35.0951 19.8914 36.3131C21.1971 39.6749 19.3543 
42.947 15.8922 43.8365C12.6319 44.6743 9.44613 42.5714 8.79873 39.1488C8.2243 
36.1184 10.626 33.1474 14.0369 32.6745C14.3226 32.6334 14.6144 32.6289 15.0942 
32.5939L20.2842 24.0791C17.0239 20.9013 15.0771 17.1851 15.5071 12.5811C15.8176 
9.32719 17.1186 6.51426 19.5064 4.20918C21.7027 2.06888 24.5804 0.728584 
27.6616 0.410795C30.7429 0.0930059 33. [...]
-    fill="#7497F7" />
+  />
   <path
     d="M33.9556 17.3995C35.6153 20.2687 37.3028 23.1774 38.9733 
26.0664C47.4206 23.5074 53.789 28.0856 56.0727 32.9892C58.8331 38.9116 56.9468 
45.9257 51.527 49.5794C45.9643 53.3305 38.9283 52.6889 33.9991 47.8719L37.8664 
44.7017C42.7351 47.7898 46.9921 47.6438 50.153 43.9886C51.4577 42.4671 52.1615 
40.5375 52.1365 38.5507C52.1114 36.564 51.3591 34.652 50.0164 33.1626C46.8166 
29.6396 42.5286 29.5316 37.3463 32.9147C35.1961 29.1789 33.0086 25.4734 30.9267 
21.7117C30.2249 20.4436 29.4502 1 [...]
-    fill="#7497F7" />
+  />
   <path
     d="M37.9269 40.8548H27.7564C26.7815 44.7807 24.6763 47.951 21.0496 
49.9672C18.3007 51.5212 15.0826 52.0823 11.955 51.5531C5.99955 50.6119 1.13243 
45.3616 0.700828 39.4483C0.216445 32.7505 4.9159 26.7978 11.1818 25.4597C11.615 
26.9985 12.0512 28.5524 12.4844 30.0866C6.7401 32.9588 4.74667 36.5776 6.35507 
41.1042C7.77096 45.0864 11.7889 47.2698 16.1623 46.4259C20.6242 45.5638 22.8722 
41.9328 22.599 36.1048C26.828 36.1048 31.0602 36.0622 35.2892 36.126C36.9411 
36.1519 38.2157 35.9846 39 [...]
-    fill="#7497F7" />
+  />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/webhook/config.ts 
b/config-ui/src/plugins/register/webhook/config.tsx
similarity index 84%
rename from config-ui/src/plugins/register/webhook/config.ts
rename to config-ui/src/plugins/register/webhook/config.tsx
index fc37c52df..f66553f18 100644
--- a/config-ui/src/plugins/register/webhook/config.ts
+++ b/config-ui/src/plugins/register/webhook/config.tsx
@@ -16,12 +16,14 @@
  *
  */
 
-import Icon from './assets/icon.svg';
+import { IPluginConfig } from '@/types';
 
-export const WebhookConfig = {
+import Icon from './assets/icon.svg?react';
+
+export const WebhookConfig: IPluginConfig = {
   plugin: 'webhook',
   name: 'Webhook',
-  icon: Icon,
+  icon: ({ color }) => <Icon fill={color} />,
   sort: 100,
   connection: {
     docLink: '',
diff --git a/config-ui/src/plugins/register/zentao/assets/icon.svg 
b/config-ui/src/plugins/register/zentao/assets/icon.svg
index 68e242b91..948c5a251 100644
--- a/config-ui/src/plugins/register/zentao/assets/icon.svg
+++ b/config-ui/src/plugins/register/zentao/assets/icon.svg
@@ -14,8 +14,8 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 
or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
 -->
-<svg width="36" height="36" viewBox="0 0 36 36" fill="none" 
xmlns="http://www.w3.org/2000/svg";>
+<svg width="36" height="36" viewBox="0 0 36 36" fill="#7497F7" 
xmlns="http://www.w3.org/2000/svg";>
   <path
     d="M18 2.5C14.8355 2.5 11.7421 3.43838 9.11088 5.19649C6.4797 6.95459 
4.42894 9.45345 3.21793 12.3771C2.00693 15.3007 1.69008 18.5177 2.30744 
21.6214C2.92481 24.7251 4.44866 27.5761 6.6863 29.8137C8.92394 32.0513 11.7749 
33.5752 14.8786 34.1926C17.9823 34.8099 21.1993 34.4931 24.1229 33.2821C27.0466 
32.0711 29.5454 30.0203 31.3035 27.3891C33.0616 24.7579 34 21.6645 34 18.5C34 
14.2565 32.3143 10.1869 29.3137 7.18629C26.3131 4.18571 22.2435 2.5 18 
2.5V2.5ZM27.3675 19.085C26.4589 19.133 [...]
-    fill="#7497F7" />
+  />
 </svg>
\ No newline at end of file
diff --git a/config-ui/src/plugins/register/zentao/config.tsx 
b/config-ui/src/plugins/register/zentao/config.tsx
index dbbf1fd82..1d75a6a80 100644
--- a/config-ui/src/plugins/register/zentao/config.tsx
+++ b/config-ui/src/plugins/register/zentao/config.tsx
@@ -17,15 +17,16 @@
  */
 
 import { DOC_URL } from '@/release';
+import { IPluginConfig } from '@/types';
 
 import { DBUrl } from './connection-fields';
-import Icon from './assets/icon.svg';
+import Icon from './assets/icon.svg?react';
 
-export const ZenTaoConfig = {
+export const ZenTaoConfig: IPluginConfig = {
   plugin: 'zentao',
   name: 'ZenTao',
-  icon: Icon,
-  sort: 10,
+  icon: ({ color }) => <Icon fill={color} />,
+  sort: 11,
   connection: {
     docLink: DOC_URL.PLUGIN.ZENTAO.BASIS,
     fields: [
diff --git a/config-ui/src/types/plugin.ts b/config-ui/src/types/plugin.ts
index 141781e2f..3639fc960 100644
--- a/config-ui/src/types/plugin.ts
+++ b/config-ui/src/types/plugin.ts
@@ -19,7 +19,7 @@
 export interface IPluginConfig {
   plugin: string;
   name: string;
-  icon: string;
+  icon: ({ color }: { color: string }) => React.ReactNode;
   sort: number;
   isBeta?: boolean;
   connection: {

Reply via email to