You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@devlake.apache.org by mi...@apache.org on 2024/05/08 07:33:48 UTC
(incubator-devlake) 01/01: fix: some bugs for scope config
This is an automated email from the ASF dual-hosted git repository.
mintsweet pushed a commit to branch fix-scope-config
in repository https://gitbox.apache.org/repos/asf/incubator-devlake.git
commit 7e1d296586a72f31fce54086fc1969b4d656c96b
Author: mintsweet <0x...@gmail.com>
AuthorDate: Wed May 8 19:33:30 2024 +1200
fix: some bugs for scope config
---
config-ui/src/plugins/components/scope-config-select/index.tsx | 3 +++
config-ui/src/routes/connection/connection.tsx | 8 +++++++-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/config-ui/src/plugins/components/scope-config-select/index.tsx b/config-ui/src/plugins/components/scope-config-select/index.tsx
index dfc37a163..a56a96b89 100644
--- a/config-ui/src/plugins/components/scope-config-select/index.tsx
+++ b/config-ui/src/plugins/components/scope-config-select/index.tsx
@@ -45,6 +45,8 @@ export const ScopeConfigSelect = ({ plugin, connectionId, scopeConfigId, onCance
[data, scopeConfigId],
);
+ const defaultName = useMemo(() => `shared-config-<${(data ?? []).length}>`, [data]);
+
useEffect(() => {
setTrId(scopeConfigId);
}, [scopeConfigId]);
@@ -103,6 +105,7 @@ export const ScopeConfigSelect = ({ plugin, connectionId, scopeConfigId, onCance
<ScopeConfigForm
plugin={plugin}
connectionId={connectionId}
+ defaultName={defaultName}
onCancel={handleHideDialog}
onSubmit={handleSubmit}
/>
diff --git a/config-ui/src/routes/connection/connection.tsx b/config-ui/src/routes/connection/connection.tsx
index ba6d5d66a..fab7ff6a4 100644
--- a/config-ui/src/routes/connection/connection.tsx
+++ b/config-ui/src/routes/connection/connection.tsx
@@ -232,12 +232,18 @@ export const Connection = () => {
const handleScopeConfigChange = async (scopeConfigId?: ID) => {
if (!scopeConfigId) {
+ setVersion(version + 1);
return;
}
const [success, res] = await operator(() => API.scopeConfig.check(plugin, scopeConfigId), { hideToast: true });
if (success) {
+ if (!res.projects) {
+ setVersion(version + 1);
+ return;
+ }
+
modal.success({
closable: true,
centered: true,
@@ -250,7 +256,7 @@ export const Connection = () => {
</div>
<ul>
{res.projects.map((it: any) => (
- <li style={{ marginBottom: 10 }}>
+ <li key={it.name} style={{ marginBottom: 10 }}>
<Space>
<span>{it.name}</span>
<Button